WordPress.org

Make WordPress Core

Changeset 50635 for branches/4.8


Ignore:
Timestamp:
04/02/2021 03:24:27 PM (3 months ago)
Author:
desrosj
Message:

Build/Test Tools: Backport GitHub Action and build improvements to the 4.8 branch.

This backports several build and test tool improvements to the 4.8 branch. Most notably, this includes:

  • The changes required to allow each workflow to be triggered by the workflow_dispatch event so that tests can be run on a schedule [50590].
  • Splitting single site and multisite tests into parallel jobs [50379].
  • Split slow tests into separate, parallel jobs for PHP <= 5.6 [50444].
  • Better branch and path scoping for GitHub Action workflows when running on pull_request [50432,50479].
  • Several devDependency updates.

Merges [50379,50387,50413,50416,50432,50435,50436,50444,50446,50473,50474,50476,50479,50485,50486,50487,50545,50579,50590] to the 4.8 branch.
See #50401, #51801, #51802, #52548, #52608, #52612, #52624, #52625, #52645, #52653, #52658, #52660, #52667.

Location:
branches/4.8
Files:
1 added
1 deleted
9 edited

Legend:

Unmodified
Added
Removed
  • branches/4.8

  • branches/4.8/.github/workflows/coding-standards.yml

    r50309 r50635  
    22
    33on:
     4  # JSHint was introduced in WordPress 3.8.
     5  # PHPCS checking was introduced in WordPress 5.1.
    46  push:
    57    branches:
    68      - master
    7       # JSHint was introduced in WordPress 3.8.
    8       # PHPCS checking was introduced in WordPress 5.1.
     9      - trunk
    910      - '3.[89]'
    1011      - '[4-9].[0-9]'
     
    1314      - '[4-9].[0-9]*'
    1415  pull_request:
     16    branches:
     17      - master
     18      - trunk
     19      - '3.[89]'
     20      - '[4-9].[0-9]'
     21    paths:
     22      # Any change to a PHP or JavaScript file should run checks.
     23      - '**.js'
     24      - '**.php'
     25      # These files configure NPM. Changes could affect the outcome.
     26      - 'package*.json'
     27      # These files configure Composer. Changes could affect the outcome.
     28      - 'composer.*'
     29      # This file configures JSHint. Changes could affect the outcome.
     30      - '.jshintrc'
     31      # This file configures PHPCS. Changes could affect the outcome.
     32      - 'phpcs.xml.dist'
     33      # Changes to workflow files should always verify all workflows are successful.
     34      - '.github/workflows/*.yml'
     35  workflow_dispatch:
    1536
    1637jobs:
     
    3758    steps:
    3859      - name: Checkout repository
    39         uses: actions/checkout@v2
     60        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
    4061
    4162      - name: Log debug information
     
    4768
    4869      - name: Install NodeJS
    49         uses: actions/setup-node@v1
     70        uses: actions/setup-node@46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea # v2.1.5
    5071        with:
    5172          node-version: 14
    5273
    5374      - name: Cache NodeJS modules
    54         uses: actions/cache@v2
     75        uses: actions/cache@26968a09c0ea4f3e233fdddbafd1166051a095f6 # v2.1.4
    5576        env:
    5677          cache-name: cache-node-modules
     
    5980          path: ~/.npm
    6081          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
    61           restore-keys: |
    62             ${{ runner.os }}-npm-
    6382
    6483      - name: Log debug information
     
    6887
    6988      - name: Install Dependencies
    70         run: npx install-changed --install-command="npm ci"
     89        run: npm ci
    7190
    7291      - name: Run JSHint
  • branches/4.8/.github/workflows/end-to-end-tests.yml

    r50309 r50635  
    22
    33on:
     4  # The end to end test suite was introduced in WordPress 5.3.
    45  push:
    56    branches:
    67      - master
    7       # The end to end test suite was introduced in WordPress 5.3.
     8      - trunk
    89      - '5.[3-9]'
    910      - '[6-9].[0-9]'
     
    1213      - '[6-9].[0-9]*'
    1314  pull_request:
     15    branches:
     16      - master
     17      - trunk
     18      - '5.[3-9]'
     19      - '[6-9].[0-9]'
     20  workflow_dispatch:
    1421
    1522env:
     
    4350      - name: Cancel previous runs of this workflow (pull requests only)
    4451        if: ${{ github.event_name == 'pull_request' }}
    45         uses: styfle/cancel-workflow-action@0.5.0
    46         with:
    47           access_token: ${{ github.token }}
     52        uses: styfle/cancel-workflow-action@3d86a7cc43670094ac248017207be0295edbc31d # v0.8.0
    4853
    4954      - name: Configure environment variables
     
    5358
    5459      - name: Checkout repository
    55         uses: actions/checkout@v2
     60        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
    5661
    5762      - name: Log debug information
     
    6772
    6873      - name: Install NodeJS
    69         uses: actions/setup-node@v1
     74        uses: actions/setup-node@46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea # v2.1.5
    7075        with:
    7176          node-version: 14
    7277
    7378      - name: Cache NodeJS modules
    74         uses: actions/cache@v2
     79        uses: actions/cache@26968a09c0ea4f3e233fdddbafd1166051a095f6 # v2.1.4
    7580        env:
    7681          cache-name: cache-node-modules
     
    7984          path: ~/.npm
    8085          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
    81           restore-keys: |
    82             ${{ runner.os }}-npm-
    8386
    8487      - name: Install Dependencies
    85         run: npx install-changed --install-command="npm ci"
     88        run: npm ci
    8689
    8790      - name: Build WordPress
  • branches/4.8/.github/workflows/javascript-tests.yml

    r50309 r50635  
    22
    33on:
     4  # JavaScript testing was introduced in WordPress 3.8.
    45  push:
    56    branches:
    67      - master
    7       # JavaScript testing was introduced in WordPress 3.8.
     8      - trunk
    89      - '3.[89]'
    910      - '[4-9].[0-9]'
     
    1213      - '[4-9].[0-9]*'
    1314  pull_request:
     15    branches:
     16      - master
     17      - trunk
     18      - '3.[89]'
     19      - '[4-9].[0-9]'
     20    paths:
     21      # Any change to a JavaScript file should run tests.
     22      - '**.js'
     23      # These files configure NPM. Changes could affect the outcome.
     24      - 'package*.json'
     25      # This file configures ESLint. Changes could affect the outcome.
     26      - '.eslintignore'
     27      # This file configures JSHint. Changes could affect the outcome.
     28      - '.jshintrc'
     29      # Any change to the QUnit directory should run tests.
     30      - 'tests/qunit/**'
     31      # Changes to workflow files should always verify all workflows are successful.
     32      - '.github/workflows/*.yml'
     33  workflow_dispatch:
    1434
    1535jobs:
     
    3454      - name: Cancel previous runs of this workflow (pull requests only)
    3555        if: ${{ github.event_name == 'pull_request' }}
    36         uses: styfle/cancel-workflow-action@0.5.0
    37         with:
    38           access_token: ${{ github.token }}
     56        uses: styfle/cancel-workflow-action@3d86a7cc43670094ac248017207be0295edbc31d # v0.8.0
    3957
    4058      - name: Checkout repository
    41         uses: actions/checkout@v2
     59        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
    4260
    4361      - name: Log debug information
     
    4967
    5068      - name: Install NodeJS
    51         uses: actions/setup-node@v1
     69        uses: actions/setup-node@46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea # v2.1.5
    5270        with:
    5371          node-version: 14
    5472
    5573      - name: Cache NodeJS modules
    56         uses: actions/cache@v2
     74        uses: actions/cache@26968a09c0ea4f3e233fdddbafd1166051a095f6 # v2.1.4
    5775        env:
    5876          cache-name: cache-node-modules
     
    6179          path: ~/.npm
    6280          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
    63           restore-keys: |
    64             ${{ runner.os }}-npm-
    6581
    6682      - name: Log debug information
     
    7086
    7187      - name: Install Dependencies
    72         run: npx install-changed --install-command="npm ci"
     88        run: npm ci
    7389
    7490      - name: Run QUnit tests
  • branches/4.8/.github/workflows/php-compatibility.yml

    r50309 r50635  
    22
    33on:
     4  # PHP compatibility testing was introduced in WordPress 5.5.
    45  push:
    56    branches:
    67      - master
    7       # The PHP compatibility testing was introduced in WordPress 5.5.
     8      - trunk
    89      - '5.[5-9]'
    910      - '[6-9].[0-9]'
     
    1213      - '[6-9].[0-9]*'
    1314  pull_request:
     15    branches:
     16      - master
     17      - trunk
     18      - '5.[5-9]'
     19      - '[6-9].[0-9]'
     20    paths:
     21      # This workflow only scans PHP files.
     22      - '**.php'
     23      # These files configure Composer. Changes could affect the outcome.
     24      - 'composer.*'
     25      # This file configures PHP Compatibility scanning. Changes could affect the outcome.
     26      - 'phpcompat.xml.dist'
     27      # Changes to workflow files should always verify all workflows are successful.
     28      - '.github/workflows/*.yml'
     29  workflow_dispatch:
    1430
    1531jobs:
     
    3551    steps:
    3652      - name: Checkout repository
    37         uses: actions/checkout@v2
     53        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
    3854
    3955      - name: Set up PHP
    40         uses: shivammathur/setup-php@v2
     56        uses: shivammathur/setup-php@afefcaf556d98dc7896cca380e181decb609ca44 # v2.10.0
    4157        with:
    4258          php-version: '7.4'
     
    5066
    5167      - name: Install Composer dependencies
    52         uses: ramsey/composer-install@v1
     68        uses: ramsey/composer-install@92a7904348d4ad30236f3611e33b7f0c6f9edd70 # v1.1.0
    5369        with:
    5470          composer-options: "--no-progress --no-ansi --no-interaction"
  • branches/4.8/.github/workflows/phpunit-tests.yml

    r50332 r50635  
    55    branches:
    66      - master
     7      - trunk
    78      - '3.[7-9]'
    89      - '[4-9].[0-9]'
     
    1112      - '[4-9].[0-9]*'
    1213  pull_request:
     14    branches:
     15      - master
     16      - trunk
     17      - '3.[7-9]'
     18      - '[4-9].[0-9]'
     19  workflow_dispatch:
    1320  # Once weekly On Sundays at 00:00 UTC.
    1421  schedule:
     
    2229  PHPUNIT_SCRIPT: php
    2330  LOCAL_PHP_MEMCACHED: ${{ false }}
     31  SLOW_TESTS: 'external-http,media,restapi'
    2432
    2533jobs:
     
    4452      - name: Cancel previous runs of this workflow (pull requests only)
    4553        if: ${{ github.event_name == 'pull_request' }}
    46         uses: styfle/cancel-workflow-action@0.5.0
    47         with:
    48           access_token: ${{ github.token }}
     54        uses: styfle/cancel-workflow-action@3d86a7cc43670094ac248017207be0295edbc31d # v0.8.0
    4955
    5056      - name: Checkout repository
    51         uses: actions/checkout@v2
     57        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
    5258
    5359      - name: Log debug information
     
    6571
    6672      - name: Install NodeJS
    67         uses: actions/setup-node@v1
     73        uses: actions/setup-node@46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea # v2.1.5
    6874        with:
    6975          node-version: 14
    7076
    7177      - name: Cache NodeJS modules
    72         uses: actions/cache@v2
     78        uses: actions/cache@26968a09c0ea4f3e233fdddbafd1166051a095f6 # v2.1.4
    7379        env:
    7480          cache-name: cache-node-modules
     
    7783          path: ~/.npm
    7884          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
    79           restore-keys: |
    80             ${{ runner.os }}-npm-
    8185
    8286      - name: Install Dependencies
    83         run: npx install-changed --install-command="npm ci"
     87        run: npm ci
    8488
    8589      - name: Build WordPress
     
    8791
    8892      - name: Create ZIP artifact
    89         uses: thedoctor0/zip-release@0.4.1
     93        uses: thedoctor0/zip-release@a1afcab9c664c9976ac398fa831eac67bed1eb0e # v0.4.1
    9094        with:
    9195          filename: built-wp-${{ github.sha }}.zip
     
    9397
    9498      - name: Upload build artifact
    95         uses: actions/upload-artifact@v2
     99        uses: actions/upload-artifact@e448a9b857ee2131e752b06002bf0e093c65e571 # v2.2.2
    96100        with:
    97101          name: built-wp-${{ github.sha }}
     
    125129  # - todo: Configure Slack notifications for failing tests.
    126130  test-php:
    127     name: ${{ matrix.php }}${{ matrix.memcached && ' with memcached' || '' }} on ${{ matrix.os }}
     131    name: ${{ matrix.php }}${{ matrix.multisite && ' multisite' || '' }}${{ matrix.split_slow && ' slow tests' || '' }} ${{ matrix.memcached && ' with memcached' || '' }} on ${{ matrix.os }}
    128132    needs: setup-wordpress
    129133    runs-on: ${{ matrix.os }}
    130134    strategy:
     135      fail-fast: false
    131136      matrix:
    132         php: [ '7.1' ]
    133         phpunit: [ '6-php-7.1' ]
     137        php: [ '5.3', '5.4', '5.5' ]
    134138        os: [ ubuntu-latest ]
    135139        memcached: [ false ]
     140        split_slow: [ false, true ]
     141        multisite: [ false, true ]
    136142        include:
     143          # Additional "slow" jobs for PHP 5.6.
     144          - php: '5.6'
     145            phpunit: '4-php-5.6'
     146            os: ubuntu-latest
     147            memcached: false
     148            multisite: false
     149            split_slow: true
     150          - php: '5.6'
     151            phpunit: '4-php-5.6'
     152            os: ubuntu-latest
     153            memcached: false
     154            multisite: true
     155            split_slow: true
     156          # Include job for specific PHPUnit versions.
     157          - php: '7.1'
     158            phpunit: '6-php-7.1'
     159            os: ubuntu-latest
     160            memcached: false
     161            multisite: false
     162            split_slow: false
     163          - php: '7.1'
     164            phpunit: '6-php-7.1'
     165            os: ubuntu-latest
     166            memcached: false
     167            multisite: true
     168            split_slow: false
     169          - php: '7.0'
     170            phpunit: '6-php-7.0'
     171            os: ubuntu-latest
     172            memcached: false
     173            multisite: false
     174            split_slow: false
     175          - php: '7.0'
     176            phpunit: '6-php-7.0'
     177            os: ubuntu-latest
     178            memcached: false
     179            multisite: true
     180            split_slow: false
     181          - php: '5.6'
     182            phpunit: '4-php-5.6'
     183            os: ubuntu-latest
     184            memcached: false
     185            multisite: false
     186            split_slow: false
     187          - php: '5.6'
     188            phpunit: '4-php-5.6'
     189            os: ubuntu-latest
     190            memcached: false
     191            multisite: true
     192            split_slow: false
    137193          # Include job for PHP 7.1 with memcached.
    138194          - php: '7.1'
     
    140196            os: ubuntu-latest
    141197            memcached: true
    142           - php: '7.0'
    143             phpunit: '6-php-7.0'
    144             os: ubuntu-latest
    145             memcached: false
    146           - php: '5.6'
    147             phpunit: '4-php-5.6'
    148             os: ubuntu-latest
    149             memcached: false
    150           - php: '5.5'
    151             phpunit: '5.5'
    152             os: ubuntu-latest
    153             memcached: false
    154           - php: '5.4'
    155             phpunit: '5.4'
    156             os: ubuntu-latest
    157             memcached: false
    158           - php: '5.3'
    159             phpunit: '5.3'
    160             os: ubuntu-latest
    161             memcached: false
     198            multisite: false
     199            split_slow: false
     200
    162201    env:
    163202      LOCAL_PHP: ${{ matrix.php }}-fpm
    164       LOCAL_PHPUNIT: ${{ matrix.phpunit }}-fpm
     203      LOCAL_PHPUNIT: ${{ matrix.phpunit && matrix.phpunit || matrix.php }}-fpm
    165204      LOCAL_PHP_MEMCACHED: ${{ matrix.memcached }}
     205      PHPUNIT_CONFIG: ${{ matrix.multisite && 'tests/phpunit/multisite.xml' || 'phpunit.xml.dist' }}
    166206
    167207    steps:
     
    172212
    173213      - name: Download the built WordPress artifact
    174         uses: actions/download-artifact@v2
     214        uses: actions/download-artifact@4a7a711286f30c025902c28b541c10e147a9b843 # v2.0.8
    175215        with:
    176216          name: built-wp-${{ github.sha }}
     
    180220
    181221      - name: Install NodeJS
    182         uses: actions/setup-node@v1
     222        uses: actions/setup-node@46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea # v2.1.5
    183223        with:
    184224          node-version: 14
    185225
    186226      - name: Use cached Node modules
    187         uses: actions/cache@v2
     227        uses: actions/cache@26968a09c0ea4f3e233fdddbafd1166051a095f6 # v2.1.4
    188228        env:
    189229          cache-name: cache-node-modules
     
    192232          path: ~/.npm
    193233          key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
    194           restore-keys: |
    195             ${{ runner.os }}-npm-
    196234
    197235      - name: Install Dependencies
    198         run: npx install-changed --install-command="npm ci"
     236        run: npm ci
    199237
    200238      - name: Cache Composer dependencies
    201239        if: ${{ env.COMPOSER_INSTALL == true }}
    202         uses: actions/cache@v2
     240        uses: actions/cache@26968a09c0ea4f3e233fdddbafd1166051a095f6 # v2.1.4
    203241        env:
    204242          cache-name: cache-composer-dependencies
     
    206244          path: ${{ steps.composer-cache.outputs.dir }}
    207245          key: ${{ runner.os }}-php-${{ matrix.php }}-composer-${{ hashFiles('**/composer.lock') }}
    208           restore-keys: |
    209             ${{ runner.os }}-php-${{ matrix.php }}-composer-
    210246
    211247      - name: Install Composer dependencies
     
    253289        run: npm run env:install
    254290
     291      - name: Run slow PHPUnit tests
     292        if: ${{ matrix.split_slow }}
     293        run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --group ${{ env.SLOW_TESTS }}
     294
     295      - name: Run PHPUnit tests for single site excluding slow tests
     296        if: ${{ matrix.php < '7.0' && ! matrix.split_slow && ! matrix.multisite }}
     297        run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --exclude-group ${{ env.SLOW_TESTS }},ajax,ms-files,ms-required
     298
     299      - name: Run PHPUnit tests for Multisite excluding slow tests
     300        if: ${{ matrix.php < '7.0' && ! matrix.split_slow && matrix.multisite }}
     301        run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --exclude-group ${{ env.SLOW_TESTS }},ajax,ms-files,ms-excluded,oembed-headers
     302
    255303      - name: Run PHPUnit tests
    256         run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c phpunit.xml.dist
     304        if: ${{ matrix.php >= '7.0' }}
     305        run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }}
    257306
    258307      - name: Run AJAX tests
    259         run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c phpunit.xml.dist --group ajax
    260 
    261       - name: Run tests as a multisite install
    262         run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c tests/phpunit/multisite.xml
     308        if: ${{ ! matrix.multisite && ! matrix.split_slow }}
     309        run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --group ajax
    263310
    264311      - name: Run ms-files tests as a multisite install
     312        if: ${{ matrix.multisite && ! matrix.split_slow }}
    265313        run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c tests/phpunit/multisite.xml --group ms-files
    266314
    267315      - name: Run external HTTP tests
     316        if: ${{ ! matrix.multisite && ! matrix.split_slow }}
    268317        run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c phpunit.xml.dist --group external-http
    269 
    270       - name: Run REST API tests
    271         run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c phpunit.xml.dist --group restapi-jsclient
    272318
    273319      - name: Checkout the WordPress Test Reporter
    274320        if: ${{ github.repository == 'WordPress/wordpress-develop' && github.ref == 'refs/heads/master' && matrix.report }}
    275         uses: actions/checkout@v2
     321        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
    276322        with:
    277323          repository: 'WordPress/phpunit-test-runner'
  • branches/4.8/.github/workflows/welcome-new-contributors.yml

    r50309 r50635  
    1212
    1313    steps:
    14       - uses: bubkoo/welcome-action@v1
     14      - uses: bubkoo/welcome-action@8dbbac2540d155744c90e4e37da6b05ffc9c5e2c # v1.0.3
    1515        with:
    1616          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  • branches/4.8/package-lock.json

    r50203 r50635  
    4646        },
    4747        "@sideway/address": {
    48             "version": "4.1.0",
    49             "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.0.tgz",
    50             "integrity": "sha512-wAH/JYRXeIFQRsxerIuLjgUu2Xszam+O5xKeatJ4oudShOOirfmsQ1D6LL54XOU2tizpCYku+s1wmU0SYdpoSA==",
     48            "version": "4.1.1",
     49            "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.1.tgz",
     50            "integrity": "sha512-+I5aaQr3m0OAmMr7RQ3fR9zx55sejEYR2BFJaxL+zT3VM2611X0SHvPWIbAUBZVTn/YzYKbV8gJ2oT/QELknfQ==",
    5151            "dev": true,
    5252            "requires": {
     
    182182        },
    183183        "anymatch": {
    184             "version": "2.0.0",
    185             "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
    186             "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
    187             "dev": true,
    188             "requires": {
    189                 "micromatch": "^3.1.4",
    190                 "normalize-path": "^2.1.1"
     184            "version": "3.1.1",
     185            "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
     186            "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
     187            "dev": true,
     188            "requires": {
     189                "normalize-path": "^3.0.0",
     190                "picomatch": "^2.0.4"
    191191            }
    192192        },
     
    318318            "dev": true
    319319        },
     320        "array-filter": {
     321            "version": "1.0.0",
     322            "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz",
     323            "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=",
     324            "dev": true
     325        },
    320326        "array-find-index": {
    321327            "version": "1.0.2",
     
    380386            "dependencies": {
    381387                "bn.js": {
    382                     "version": "4.11.9",
    383                     "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
    384                     "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
     388                    "version": "4.12.0",
     389                    "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
     390                    "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
    385391                    "dev": true
    386392                }
     
    430436            "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
    431437            "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
    432             "dev": true
    433         },
    434         "async-each": {
    435             "version": "1.0.3",
    436             "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
    437             "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==",
    438438            "dev": true
    439439        },
     
    463463                "postcss": "^7.0.32",
    464464                "postcss-value-parser": "^4.1.0"
     465            }
     466        },
     467        "available-typed-arrays": {
     468            "version": "1.0.2",
     469            "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz",
     470            "integrity": "sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==",
     471            "dev": true,
     472            "requires": {
     473                "array-filter": "^1.0.0"
    465474            }
    466475        },
     
    786795        },
    787796        "binary-extensions": {
    788             "version": "1.13.1",
    789             "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
    790             "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
    791             "dev": true
    792         },
    793         "bindings": {
    794             "version": "1.5.0",
    795             "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
    796             "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
    797             "dev": true,
    798             "optional": true,
    799             "requires": {
    800                 "file-uri-to-path": "1.0.0"
    801             }
     797            "version": "2.2.0",
     798            "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
     799            "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
     800            "dev": true
    802801        },
    803802        "bl": {
     
    836835        },
    837836        "bn.js": {
    838             "version": "5.1.3",
    839             "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz",
    840             "integrity": "sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==",
     837            "version": "5.2.0",
     838            "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz",
     839            "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==",
    841840            "dev": true
    842841        },
     
    929928        },
    930929        "browserify": {
    931             "version": "16.5.2",
    932             "resolved": "https://registry.npmjs.org/browserify/-/browserify-16.5.2.tgz",
    933             "integrity": "sha512-TkOR1cQGdmXU9zW4YukWzWVSJwrxmNdADFbqbE3HFgQWe5wqZmOawqZ7J/8MPCwk/W8yY7Y0h+7mOtcZxLP23g==",
     930            "version": "17.0.0",
     931            "resolved": "https://registry.npmjs.org/browserify/-/browserify-17.0.0.tgz",
     932            "integrity": "sha512-SaHqzhku9v/j6XsQMRxPyBrSP3gnwmE27gLJYZgMT2GeK3J0+0toN+MnuNYDfHwVGQfLiMZ7KSNSIXHemy905w==",
    934933            "dev": true,
    935934            "requires": {
     
    946945                "crypto-browserify": "^3.0.0",
    947946                "defined": "^1.0.0",
    948                 "deps-sort": "^2.0.0",
     947                "deps-sort": "^2.0.1",
    949948                "domain-browser": "^1.2.0",
    950949                "duplexer2": "~0.1.2",
    951                 "events": "^2.0.0",
     950                "events": "^3.0.0",
    952951                "glob": "^7.1.0",
    953952                "has": "^1.0.0",
     
    955954                "https-browserify": "^1.0.0",
    956955                "inherits": "~2.0.1",
    957                 "insert-module-globals": "^7.0.0",
     956                "insert-module-globals": "^7.2.1",
    958957                "labeled-stream-splicer": "^2.0.0",
    959958                "mkdirp-classic": "^0.5.2",
     
    961960                "os-browserify": "~0.3.0",
    962961                "parents": "^1.0.1",
    963                 "path-browserify": "~0.0.0",
     962                "path-browserify": "^1.0.0",
    964963                "process": "~0.11.0",
    965964                "punycode": "^1.3.2",
     
    968967                "readable-stream": "^2.0.2",
    969968                "resolve": "^1.1.4",
    970                 "shasum": "^1.0.0",
     969                "shasum-object": "^1.0.0",
    971970                "shell-quote": "^1.6.1",
    972                 "stream-browserify": "^2.0.0",
     971                "stream-browserify": "^3.0.0",
    973972                "stream-http": "^3.0.0",
    974973                "string_decoder": "^1.1.1",
     
    979978                "tty-browserify": "0.0.1",
    980979                "url": "~0.11.0",
    981                 "util": "~0.10.1",
     980                "util": "~0.12.0",
    982981                "vm-browserify": "^1.0.0",
    983982                "xtend": "^4.0.0"
     
    12421241            "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
    12431242            "dev": true,
    1244             "optional": true,
    12451243            "requires": {
    12461244                "function-bind": "^1.1.1",
     
    13261324        },
    13271325        "chokidar": {
    1328             "version": "2.1.8",
    1329             "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
    1330             "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
    1331             "dev": true,
    1332             "requires": {
    1333                 "anymatch": "^2.0.0",
    1334                 "async-each": "^1.0.1",
    1335                 "braces": "^2.3.2",
    1336                 "fsevents": "^1.2.7",
    1337                 "glob-parent": "^3.1.0",
    1338                 "inherits": "^2.0.3",
    1339                 "is-binary-path": "^1.0.0",
    1340                 "is-glob": "^4.0.0",
    1341                 "normalize-path": "^3.0.0",
    1342                 "path-is-absolute": "^1.0.0",
    1343                 "readdirp": "^2.2.1",
    1344                 "upath": "^1.1.1"
    1345             },
    1346             "dependencies": {
     1326            "version": "3.5.1",
     1327            "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz",
     1328            "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==",
     1329            "dev": true,
     1330            "requires": {
     1331                "anymatch": "~3.1.1",
     1332                "braces": "~3.0.2",
     1333                "fsevents": "~2.3.1",
     1334                "glob-parent": "~5.1.0",
     1335                "is-binary-path": "~2.1.0",
     1336                "is-glob": "~4.0.1",
     1337                "normalize-path": "~3.0.0",
     1338                "readdirp": "~3.5.0"
     1339            },
     1340            "dependencies": {
     1341                "braces": {
     1342                    "version": "3.0.2",
     1343                    "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
     1344                    "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
     1345                    "dev": true,
     1346                    "requires": {
     1347                        "fill-range": "^7.0.1"
     1348                    }
     1349                },
     1350                "fill-range": {
     1351                    "version": "7.0.1",
     1352                    "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
     1353                    "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
     1354                    "dev": true,
     1355                    "requires": {
     1356                        "to-regex-range": "^5.0.1"
     1357                    }
     1358                },
     1359                "glob-parent": {
     1360                    "version": "5.1.2",
     1361                    "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
     1362                    "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
     1363                    "dev": true,
     1364                    "requires": {
     1365                        "is-glob": "^4.0.1"
     1366                    }
     1367                },
    13471368                "is-glob": {
    13481369                    "version": "4.0.1",
     
    13541375                    }
    13551376                },
     1377                "is-number": {
     1378                    "version": "7.0.0",
     1379                    "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
     1380                    "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
     1381                    "dev": true
     1382                },
     1383                "to-regex-range": {
     1384                    "version": "5.0.1",
     1385                    "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
     1386                    "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
     1387                    "dev": true,
     1388                    "requires": {
     1389                        "is-number": "^7.0.0"
     1390                    }
     1391                }
     1392            }
     1393        },
     1394        "chownr": {
     1395            "version": "1.1.4",
     1396            "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
     1397            "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
     1398            "dev": true
     1399        },
     1400        "cipher-base": {
     1401            "version": "1.0.4",
     1402            "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
     1403            "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
     1404            "dev": true,
     1405            "requires": {
     1406                "inherits": "^2.0.1",
     1407                "safe-buffer": "^5.0.1"
     1408            }
     1409        },
     1410        "class-utils": {
     1411            "version": "0.3.6",
     1412            "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
     1413            "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
     1414            "dev": true,
     1415            "requires": {
     1416                "arr-union": "^3.1.0",
     1417                "define-property": "^0.2.5",
     1418                "isobject": "^3.0.0",
     1419                "static-extend": "^0.1.1"
     1420            },
     1421            "dependencies": {
     1422                "define-property": {
     1423                    "version": "0.2.5",
     1424                    "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
     1425                    "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
     1426                    "dev": true,
     1427                    "requires": {
     1428                        "is-descriptor": "^0.1.0"
     1429                    }
     1430                }
     1431            }
     1432        },
     1433        "clean-css": {
     1434            "version": "5.1.2",
     1435            "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.1.2.tgz",
     1436            "integrity": "sha512-QcaGg9OuMo+0Ds933yLOY+gHPWbxhxqF0HDexmToPf8pczvmvZGYzd+QqWp9/mkucAOKViI+dSFOqoZIvXbeBw==",
     1437            "dev": true,
     1438            "requires": {
     1439                "source-map": "~0.6.0"
     1440            }
     1441        },
     1442        "cli": {
     1443            "version": "1.0.1",
     1444            "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz",
     1445            "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=",
     1446            "dev": true,
     1447            "requires": {
     1448                "exit": "0.1.2",
     1449                "glob": "^7.1.1"
     1450            }
     1451        },
     1452        "cli-cursor": {
     1453            "version": "2.1.0",
     1454            "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
     1455            "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
     1456            "dev": true,
     1457            "requires": {
     1458                "restore-cursor": "^2.0.0"
     1459            }
     1460        },
     1461        "cli-width": {
     1462            "version": "2.2.1",
     1463            "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz",
     1464            "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==",
     1465            "dev": true
     1466        },
     1467        "clone-response": {
     1468            "version": "1.0.2",
     1469            "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
     1470            "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
     1471            "dev": true,
     1472            "optional": true,
     1473            "requires": {
     1474                "mimic-response": "^1.0.0"
     1475            }
     1476        },
     1477        "coa": {
     1478            "version": "2.0.2",
     1479            "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz",
     1480            "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==",
     1481            "dev": true,
     1482            "optional": true,
     1483            "requires": {
     1484                "@types/q": "^1.5.1",
     1485                "chalk": "^2.4.1",
     1486                "q": "^1.1.2"
     1487            }
     1488        },
     1489        "collection-visit": {
     1490            "version": "1.0.0",
     1491            "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
     1492            "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
     1493            "dev": true,
     1494            "requires": {
     1495                "map-visit": "^1.0.0",
     1496                "object-visit": "^1.0.0"
     1497            }
     1498        },
     1499        "color-convert": {
     1500            "version": "1.9.3",
     1501            "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
     1502            "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
     1503            "dev": true,
     1504            "requires": {
     1505                "color-name": "1.1.3"
     1506            }
     1507        },
     1508        "color-name": {
     1509            "version": "1.1.3",
     1510            "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
     1511            "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
     1512            "dev": true
     1513        },
     1514        "colorette": {
     1515            "version": "1.2.1",
     1516            "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz",
     1517            "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==",
     1518            "dev": true
     1519        },
     1520        "colors": {
     1521            "version": "1.1.2",
     1522            "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
     1523            "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
     1524            "dev": true
     1525        },
     1526        "combine-source-map": {
     1527            "version": "0.8.0",
     1528            "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz",
     1529            "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=",
     1530            "dev": true,
     1531            "requires": {
     1532                "convert-source-map": "~1.1.0",
     1533                "inline-source-map": "~0.6.0",
     1534                "lodash.memoize": "~3.0.3",
     1535                "source-map": "~0.5.3"
     1536            },
     1537            "dependencies": {
     1538                "source-map": {
     1539                    "version": "0.5.7",
     1540                    "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
     1541                    "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
     1542                    "dev": true
     1543                }
     1544            }
     1545        },
     1546        "combined-stream": {
     1547            "version": "1.0.8",
     1548            "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
     1549            "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
     1550            "dev": true,
     1551            "requires": {
     1552                "delayed-stream": "~1.0.0"
     1553            }
     1554        },
     1555        "commander": {
     1556            "version": "2.20.3",
     1557            "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
     1558            "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
     1559            "dev": true
     1560        },
     1561        "component-emitter": {
     1562            "version": "1.3.0",
     1563            "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
     1564            "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
     1565            "dev": true
     1566        },
     1567        "compress-commons": {
     1568            "version": "4.0.2",
     1569            "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.0.2.tgz",
     1570            "integrity": "sha512-qhd32a9xgzmpfoga1VQEiLEwdKZ6Plnpx5UCgIsf89FSolyJ7WnifY4Gtjgv5WR6hWAyRaHxC5MiEhU/38U70A==",
     1571            "dev": true,
     1572            "requires": {
     1573                "buffer-crc32": "^0.2.13",
     1574                "crc32-stream": "^4.0.1",
     1575                "normalize-path": "^3.0.0",
     1576                "readable-stream": "^3.6.0"
     1577            },
     1578            "dependencies": {
    13561579                "normalize-path": {
    13571580                    "version": "3.0.0",
     
    13591582                    "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
    13601583                    "dev": true
    1361                 }
    1362             }
    1363         },
    1364         "chownr": {
    1365             "version": "1.1.4",
    1366             "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
    1367             "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
    1368             "dev": true
    1369         },
    1370         "cipher-base": {
    1371             "version": "1.0.4",
    1372             "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
    1373             "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
    1374             "dev": true,
    1375             "requires": {
    1376                 "inherits": "^2.0.1",
    1377                 "safe-buffer": "^5.0.1"
    1378             }
    1379         },
    1380         "class-utils": {
    1381             "version": "0.3.6",
    1382             "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
    1383             "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
    1384             "dev": true,
    1385             "requires": {
    1386                 "arr-union": "^3.1.0",
    1387                 "define-property": "^0.2.5",
    1388                 "isobject": "^3.0.0",
    1389                 "static-extend": "^0.1.1"
    1390             },
    1391             "dependencies": {
    1392                 "define-property": {
    1393                     "version": "0.2.5",
    1394                     "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
    1395                     "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
    1396                     "dev": true,
    1397                     "requires": {
    1398                         "is-descriptor": "^0.1.0"
    1399                     }
    1400                 }
    1401             }
    1402         },
    1403         "clean-css": {
    1404             "version": "4.2.3",
    1405             "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz",
    1406             "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==",
    1407             "dev": true,
    1408             "requires": {
    1409                 "source-map": "~0.6.0"
    1410             }
    1411         },
    1412         "cli": {
    1413             "version": "1.0.1",
    1414             "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz",
    1415             "integrity": "sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ=",
    1416             "dev": true,
    1417             "requires": {
    1418                 "exit": "0.1.2",
    1419                 "glob": "^7.1.1"
    1420             }
    1421         },
    1422         "cli-cursor": {
    1423             "version": "2.1.0",
    1424             "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
    1425             "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
    1426             "dev": true,
    1427             "requires": {
    1428                 "restore-cursor": "^2.0.0"
    1429             }
    1430         },
    1431         "cli-width": {
    1432             "version": "2.2.1",
    1433             "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz",
    1434             "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==",
    1435             "dev": true
    1436         },
    1437         "clone-response": {
    1438             "version": "1.0.2",
    1439             "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
    1440             "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
    1441             "dev": true,
    1442             "optional": true,
    1443             "requires": {
    1444                 "mimic-response": "^1.0.0"
    1445             }
    1446         },
    1447         "coa": {
    1448             "version": "2.0.2",
    1449             "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz",
    1450             "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==",
    1451             "dev": true,
    1452             "optional": true,
    1453             "requires": {
    1454                 "@types/q": "^1.5.1",
    1455                 "chalk": "^2.4.1",
    1456                 "q": "^1.1.2"
    1457             }
    1458         },
    1459         "collection-visit": {
    1460             "version": "1.0.0",
    1461             "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
    1462             "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
    1463             "dev": true,
    1464             "requires": {
    1465                 "map-visit": "^1.0.0",
    1466                 "object-visit": "^1.0.0"
    1467             }
    1468         },
    1469         "color-convert": {
    1470             "version": "1.9.3",
    1471             "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
    1472             "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
    1473             "dev": true,
    1474             "requires": {
    1475                 "color-name": "1.1.3"
    1476             }
    1477         },
    1478         "color-name": {
    1479             "version": "1.1.3",
    1480             "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
    1481             "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
    1482             "dev": true
    1483         },
    1484         "colorette": {
    1485             "version": "1.2.1",
    1486             "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz",
    1487             "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==",
    1488             "dev": true
    1489         },
    1490         "colors": {
    1491             "version": "1.1.2",
    1492             "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
    1493             "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
    1494             "dev": true
    1495         },
    1496         "combine-source-map": {
    1497             "version": "0.8.0",
    1498             "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz",
    1499             "integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=",
    1500             "dev": true,
    1501             "requires": {
    1502                 "convert-source-map": "~1.1.0",
    1503                 "inline-source-map": "~0.6.0",
    1504                 "lodash.memoize": "~3.0.3",
    1505                 "source-map": "~0.5.3"
    1506             },
    1507             "dependencies": {
    1508                 "source-map": {
    1509                     "version": "0.5.7",
    1510                     "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
    1511                     "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
    1512                     "dev": true
    1513                 }
    1514             }
    1515         },
    1516         "combined-stream": {
    1517             "version": "1.0.8",
    1518             "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
    1519             "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
    1520             "dev": true,
    1521             "requires": {
    1522                 "delayed-stream": "~1.0.0"
    1523             }
    1524         },
    1525         "commander": {
    1526             "version": "2.20.3",
    1527             "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
    1528             "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
    1529             "dev": true
    1530         },
    1531         "component-emitter": {
    1532             "version": "1.3.0",
    1533             "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
    1534             "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
    1535             "dev": true
    1536         },
    1537         "compress-commons": {
    1538             "version": "4.0.2",
    1539             "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.0.2.tgz",
    1540             "integrity": "sha512-qhd32a9xgzmpfoga1VQEiLEwdKZ6Plnpx5UCgIsf89FSolyJ7WnifY4Gtjgv5WR6hWAyRaHxC5MiEhU/38U70A==",
    1541             "dev": true,
    1542             "requires": {
    1543                 "buffer-crc32": "^0.2.13",
    1544                 "crc32-stream": "^4.0.1",
    1545                 "normalize-path": "^3.0.0",
    1546                 "readable-stream": "^3.6.0"
    1547             },
    1548             "dependencies": {
    1549                 "normalize-path": {
    1550                     "version": "3.0.0",
    1551                     "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
    1552                     "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
    1553                     "dev": true
    15541584                },
    15551585                "readable-stream": {
     
    17011731            "dependencies": {
    17021732                "bn.js": {
    1703                     "version": "4.11.9",
    1704                     "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
    1705                     "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
     1733                    "version": "4.12.0",
     1734                    "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
     1735                    "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
    17061736                    "dev": true
    17071737                }
     
    20662096            "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
    20672097            "dev": true,
    2068             "optional": true,
    20692098            "requires": {
    20702099                "object-keys": "^1.0.12"
     
    21812210            "dependencies": {
    21822211                "bn.js": {
    2183                     "version": "4.11.9",
    2184                     "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
    2185                     "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
     2212                    "version": "4.12.0",
     2213                    "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
     2214                    "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
    21862215                    "dev": true
    21872216                }
     
    23502379            "dependencies": {
    23512380                "bn.js": {
    2352                     "version": "4.11.9",
    2353                     "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
    2354                     "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
     2381                    "version": "4.12.0",
     2382                    "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
     2383                    "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
    23552384                    "dev": true
    23562385                }
     
    23962425            "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==",
    23972426            "dev": true,
    2398             "optional": true,
    23992427            "requires": {
    24002428                "call-bind": "^1.0.2",
     
    24192447            "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
    24202448            "dev": true,
    2421             "optional": true,
    24222449            "requires": {
    24232450                "is-callable": "^1.1.4",
     
    24512478        },
    24522479        "events": {
    2453             "version": "2.1.0",
    2454             "resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz",
    2455             "integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==",
     2480            "version": "3.3.0",
     2481            "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
     2482            "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
    24562483            "dev": true
    24572484        },
     
    28412868            "dev": true
    28422869        },
    2843         "file-uri-to-path": {
    2844             "version": "1.0.0",
    2845             "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
    2846             "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
    2847             "dev": true,
    2848             "optional": true
    2849         },
    28502870        "filename-reserved-regex": {
    28512871            "version": "2.0.0",
     
    29552975        },
    29562976        "follow-redirects": {
    2957             "version": "1.13.2",
    2958             "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz",
    2959             "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA==",
     2977            "version": "1.13.3",
     2978            "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.3.tgz",
     2979            "integrity": "sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA==",
    29602980            "dev": true
    29612981        },
     
    29752995            }
    29762996        },
     2997        "foreach": {
     2998            "version": "2.0.5",
     2999            "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz",
     3000            "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=",
     3001            "dev": true
     3002        },
    29773003        "forever-agent": {
    29783004            "version": "0.6.1",
     
    30253051        },
    30263052        "fsevents": {
    3027             "version": "1.2.13",
    3028             "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
    3029             "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
    3030             "dev": true,
    3031             "optional": true,
    3032             "requires": {
    3033                 "bindings": "^1.5.0",
    3034                 "nan": "^2.12.1"
    3035             }
     3053            "version": "2.3.2",
     3054            "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
     3055            "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
     3056            "dev": true,
     3057            "optional": true
    30363058        },
    30373059        "function-bind": {
     
    30613083            "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
    30623084            "dev": true,
    3063             "optional": true,
    30643085            "requires": {
    30653086                "function-bind": "^1.1.1",
     
    33363357        },
    33373358        "grunt-browserify": {
    3338             "version": "5.3.0",
    3339             "resolved": "https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-5.3.0.tgz",
    3340             "integrity": "sha1-R/2M+LrFj+LeaDr9xX9/OoDKeS0=",
     3359            "version": "6.0.0",
     3360            "resolved": "https://registry.npmjs.org/grunt-browserify/-/grunt-browserify-6.0.0.tgz",
     3361            "integrity": "sha512-m130pTVFEsxQZ+dJQd287TrnUI5VvEKJ+MmPjMF/7bVJBTBRWhJlYVFgBOYLZMUykfk1RWXfQ2sAQu5NuXumvg==",
    33413362            "dev": true,
    33423363            "requires": {
    33433364                "async": "^2.5.0",
    3344                 "browserify": "^16.0.0",
     3365                "browserify": "^17.0.0",
    33453366                "browserify-incremental": "^3.1.1",
    33463367                "glob": "^7.1.2",
    33473368                "lodash": "^4.17.4",
    33483369                "resolve": "^1.1.6",
    3349                 "watchify": "^3.6.1"
     3370                "watchify": "^4.0.0"
    33503371            },
    33513372            "dependencies": {
     
    35373558        },
    35383559        "grunt-contrib-cssmin": {
    3539             "version": "3.0.0",
    3540             "resolved": "https://registry.npmjs.org/grunt-contrib-cssmin/-/grunt-contrib-cssmin-3.0.0.tgz",
    3541             "integrity": "sha512-eXpooYmVGKMs/xV7DzTLgJFPVOfMuawPD3x0JwhlH0mumq2NtH3xsxaHxp1Y3NKxp0j0tRhFS6kSBRsz6TuTGg==",
    3542             "dev": true,
    3543             "requires": {
    3544                 "chalk": "^2.4.1",
    3545                 "clean-css": "~4.2.1",
    3546                 "maxmin": "^2.1.0"
     3560            "version": "4.0.0",
     3561            "resolved": "https://registry.npmjs.org/grunt-contrib-cssmin/-/grunt-contrib-cssmin-4.0.0.tgz",
     3562            "integrity": "sha512-jXU+Zlk8Q8XztOGNGpjYlD/BDQ0n95IHKrQKtFR7Gd8hZrzgqiG1Ra7cGYc8h2DD9vkSFGNlweb9Q00rBxOK2w==",
     3563            "dev": true,
     3564            "requires": {
     3565                "chalk": "^4.1.0",
     3566                "clean-css": "^5.0.1",
     3567                "maxmin": "^3.0.0"
     3568            },
     3569            "dependencies": {
     3570                "ansi-styles": {
     3571                    "version": "4.3.0",
     3572                    "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
     3573                    "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
     3574                    "dev": true,
     3575                    "requires": {
     3576                        "color-convert": "^2.0.1"
     3577                    }
     3578                },
     3579                "chalk": {
     3580                    "version": "4.1.0",
     3581                    "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
     3582                    "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
     3583                    "dev": true,
     3584                    "requires": {
     3585                        "ansi-styles": "^4.1.0",
     3586                        "supports-color": "^7.1.0"
     3587                    }
     3588                },
     3589                "color-convert": {
     3590                    "version": "2.0.1",
     3591                    "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
     3592                    "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
     3593                    "dev": true,
     3594                    "requires": {
     3595                        "color-name": "~1.1.4"
     3596                    }
     3597                },
     3598                "color-name": {
     3599                    "version": "1.1.4",
     3600                    "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
     3601                    "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
     3602                    "dev": true
     3603                },
     3604                "figures": {
     3605                    "version": "3.2.0",
     3606                    "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
     3607                    "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
     3608                    "dev": true,
     3609                    "requires": {
     3610                        "escape-string-regexp": "^1.0.5"
     3611                    }
     3612                },
     3613                "gzip-size": {
     3614                    "version": "5.1.1",
     3615                    "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz",
     3616                    "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==",
     3617                    "dev": true,
     3618                    "requires": {
     3619                        "duplexer": "^0.1.1",
     3620                        "pify": "^4.0.1"
     3621                    }
     3622                },
     3623                "has-flag": {
     3624                    "version": "4.0.0",
     3625                    "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
     3626                    "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
     3627                    "dev": true
     3628                },
     3629                "maxmin": {
     3630                    "version": "3.0.0",
     3631                    "resolved": "https://registry.npmjs.org/maxmin/-/maxmin-3.0.0.tgz",
     3632                    "integrity": "sha512-wcahMInmGtg/7c6a75fr21Ch/Ks1Tb+Jtoan5Ft4bAI0ZvJqyOw8kkM7e7p8hDSzY805vmxwHT50KcjGwKyJ0g==",
     3633                    "dev": true,
     3634                    "requires": {
     3635                        "chalk": "^4.1.0",
     3636                        "figures": "^3.2.0",
     3637                        "gzip-size": "^5.1.1",
     3638                        "pretty-bytes": "^5.3.0"
     3639                    }
     3640                },
     3641                "supports-color": {
     3642                    "version": "7.2.0",
     3643                    "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
     3644                    "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
     3645                    "dev": true,
     3646                    "requires": {
     3647                        "has-flag": "^4.0.0"
     3648                    }
     3649                }
    35473650            }
    35483651        },
     
    39454048            "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
    39464049            "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
    3947             "dev": true,
    3948             "optional": true
     4050            "dev": true
    39494051        },
    39504052        "has-to-string-tag-x": {
     
    44384540            }
    44394541        },
     4542        "is-arguments": {
     4543            "version": "1.1.0",
     4544            "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz",
     4545            "integrity": "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==",
     4546            "dev": true,
     4547            "requires": {
     4548                "call-bind": "^1.0.0"
     4549            }
     4550        },
    44404551        "is-arrayish": {
    44414552            "version": "0.2.1",
     
    44464557        },
    44474558        "is-binary-path": {
    4448             "version": "1.0.1",
    4449             "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
    4450             "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
    4451             "dev": true,
    4452             "requires": {
    4453                 "binary-extensions": "^1.0.0"
     4559            "version": "2.1.0",
     4560            "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
     4561            "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
     4562            "dev": true,
     4563            "requires": {
     4564                "binary-extensions": "^2.0.0"
    44544565            }
    44554566        },
     
    44644575            "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz",
    44654576            "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==",
    4466             "dev": true,
    4467             "optional": true
     4577            "dev": true
    44684578        },
    44694579        "is-core-module": {
     
    45004610            "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz",
    45014611            "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==",
    4502             "dev": true,
    4503             "optional": true
     4612            "dev": true
    45044613        },
    45054614        "is-descriptor": {
     
    45474656            "dev": true
    45484657        },
     4658        "is-generator-function": {
     4659            "version": "1.0.8",
     4660            "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.8.tgz",
     4661            "integrity": "sha512-2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ==",
     4662            "dev": true
     4663        },
    45494664        "is-gif": {
    45504665            "version": "3.0.0",
     
    45844699            "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz",
    45854700            "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==",
    4586             "dev": true,
    4587             "optional": true
     4701            "dev": true
    45884702        },
    45894703        "is-number": {
     
    46424756            "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==",
    46434757            "dev": true,
    4644             "optional": true,
    46454758            "requires": {
    46464759                "call-bind": "^1.0.2",
     
    46864799            "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==",
    46874800            "dev": true,
    4688             "optional": true,
    4689             "requires": {
     4801            "requires": {
     4802                "has-symbols": "^1.0.1"
     4803            }
     4804        },
     4805        "is-typed-array": {
     4806            "version": "1.1.5",
     4807            "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz",
     4808            "integrity": "sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug==",
     4809            "dev": true,
     4810            "requires": {
     4811                "available-typed-arrays": "^1.0.2",
     4812                "call-bind": "^1.0.2",
     4813                "es-abstract": "^1.18.0-next.2",
     4814                "foreach": "^2.0.5",
    46904815                "has-symbols": "^1.0.1"
    46914816            }
     
    47554880        },
    47564881        "joi": {
    4757             "version": "17.3.0",
    4758             "resolved": "https://registry.npmjs.org/joi/-/joi-17.3.0.tgz",
    4759             "integrity": "sha512-Qh5gdU6niuYbUIUV5ejbsMiiFmBdw8Kcp8Buj2JntszCkCfxJ9Cz76OtHxOZMPXrt5810iDIXs+n1nNVoquHgg==",
     4882            "version": "17.4.0",
     4883            "resolved": "https://registry.npmjs.org/joi/-/joi-17.4.0.tgz",
     4884            "integrity": "sha512-F4WiW2xaV6wc1jxete70Rw4V/VuMd6IN+a5ilZsxG4uYtUXWu2kq9W5P2dz30e7Gmw8RCbY/u/uk+dMPma9tAg==",
    47604885            "dev": true,
    47614886            "requires": {
     
    48414966            "dev": true
    48424967        },
    4843         "json-stable-stringify": {
    4844             "version": "0.0.1",
    4845             "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz",
    4846             "integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=",
    4847             "dev": true,
    4848             "requires": {
    4849                 "jsonify": "~0.0.0"
    4850             }
    4851         },
    48524968        "json-stringify-safe": {
    48534969            "version": "5.0.1",
    48544970            "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
    48554971            "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
    4856             "dev": true
    4857         },
    4858         "jsonify": {
    4859             "version": "0.0.0",
    4860             "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
    4861             "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
    48624972            "dev": true
    48634973        },
     
    52735383            "dependencies": {
    52745384                "bn.js": {
    5275                     "version": "4.11.9",
    5276                     "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
    5277                     "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
     5385                    "version": "4.12.0",
     5386                    "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
     5387                    "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
    52785388                    "dev": true
    52795389                }
     
    54155525            "dev": true
    54165526        },
    5417         "nan": {
    5418             "version": "2.14.2",
    5419             "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz",
    5420             "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==",
    5421             "dev": true,
    5422             "optional": true
    5423         },
    54245527        "nanomatch": {
    54255528            "version": "1.2.13",
     
    54775580        },
    54785581        "normalize-path": {
    5479             "version": "2.1.1",
    5480             "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
    5481             "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
    5482             "dev": true,
    5483             "requires": {
    5484                 "remove-trailing-separator": "^1.0.1"
    5485             }
     5582            "version": "3.0.0",
     5583            "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
     5584            "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
     5585            "dev": true
    54865586        },
    54875587        "normalize-range": {
     
    56215721            "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz",
    56225722            "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==",
    5623             "dev": true,
    5624             "optional": true
     5723            "dev": true
    56255724        },
    56265725        "object-keys": {
     
    56285727            "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
    56295728            "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
    5630             "dev": true,
    5631             "optional": true
     5729            "dev": true
    56325730        },
    56335731        "object-visit": {
     
    56455743            "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
    56465744            "dev": true,
    5647             "optional": true,
    56485745            "requires": {
    56495746                "call-bind": "^1.0.0",
     
    59246021        },
    59256022        "path-browserify": {
    5926             "version": "0.0.1",
    5927             "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
    5928             "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==",
     6023            "version": "1.0.1",
     6024            "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz",
     6025            "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==",
    59296026            "dev": true
    59306027        },
     
    60256122            "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
    60266123            "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
     6124            "dev": true
     6125        },
     6126        "picomatch": {
     6127            "version": "2.2.2",
     6128            "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
     6129            "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==",
    60276130            "dev": true
    60286131        },
     
    61606263            "dependencies": {
    61616264                "bn.js": {
    6162                     "version": "4.11.9",
    6163                     "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz",
    6164                     "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==",
     6265                    "version": "4.12.0",
     6266                    "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
     6267                    "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
    61656268                    "dev": true
    61666269                }
     
    63886491        },
    63896492        "readdirp": {
    6390             "version": "2.2.1",
    6391             "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
    6392             "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
    6393             "dev": true,
    6394             "requires": {
    6395                 "graceful-fs": "^4.1.11",
    6396                 "micromatch": "^3.1.10",
    6397                 "readable-stream": "^2.0.2"
     6493            "version": "3.5.0",
     6494            "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz",
     6495            "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==",
     6496            "dev": true,
     6497            "requires": {
     6498                "picomatch": "^2.2.1"
    63986499            }
    63996500        },
     
    64276528                "safe-regex": "^1.1.0"
    64286529            }
    6429         },
    6430         "remove-trailing-separator": {
    6431             "version": "1.1.0",
    6432             "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
    6433             "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
    6434             "dev": true
    64356530        },
    64366531        "repeat-element": {
     
    66626757        },
    66636758        "sass": {
    6664             "version": "1.32.6",
    6665             "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.6.tgz",
    6666             "integrity": "sha512-1bcDHDcSqeFtMr0JXI3xc/CXX6c4p0wHHivJdru8W7waM7a1WjKMm4m/Z5sY7CbVw4Whi2Chpcw6DFfSWwGLzQ==",
     6759            "version": "1.32.8",
     6760            "resolved": "https://registry.npmjs.org/sass/-/sass-1.32.8.tgz",
     6761            "integrity": "sha512-Sl6mIeGpzjIUZqvKnKETfMf0iDAswD9TNlv13A7aAF3XZlRPMq4VvJWBC2N2DXbp94MQVdNSFG6LfF/iOXrPHQ==",
    66676762            "dev": true,
    66686763            "requires": {
     
    67416836                "inherits": "^2.0.1",
    67426837                "safe-buffer": "^5.0.1"
    6743             }
    6744         },
    6745         "shasum": {
    6746             "version": "1.0.2",
    6747             "resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz",
    6748             "integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=",
    6749             "dev": true,
    6750             "requires": {
    6751                 "json-stable-stringify": "~0.0.0",
    6752                 "sha.js": "~2.4.4"
    67536838            }
    67546839        },
     
    71127197        },
    71137198        "stream-browserify": {
    7114             "version": "2.0.2",
    7115             "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
    7116             "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
    7117             "dev": true,
    7118             "requires": {
    7119                 "inherits": "~2.0.1",
    7120                 "readable-stream": "^2.0.2"
     7199            "version": "3.0.0",
     7200            "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
     7201            "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==",
     7202            "dev": true,
     7203            "requires": {
     7204                "inherits": "~2.0.4",
     7205                "readable-stream": "^3.5.0"
     7206            },
     7207            "dependencies": {
     7208                "readable-stream": {
     7209                    "version": "3.6.0",
     7210                    "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
     7211                    "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
     7212                    "dev": true,
     7213                    "requires": {
     7214                        "inherits": "^2.0.3",
     7215                        "string_decoder": "^1.1.1",
     7216                        "util-deprecate": "^1.0.1"
     7217                    }
     7218                }
    71217219            }
    71227220        },
     
    72177315            "integrity": "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==",
    72187316            "dev": true,
    7219             "optional": true,
    72207317            "requires": {
    72217318                "call-bind": "^1.0.0",
     
    72287325            "integrity": "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==",
    72297326            "dev": true,
    7230             "optional": true,
    72317327            "requires": {
    72327328                "call-bind": "^1.0.0",
     
    77277823            }
    77287824        },
    7729         "upath": {
    7730             "version": "1.2.0",
    7731             "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
    7732             "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
    7733             "dev": true
    7734         },
    77357825        "uri-js": {
    77367826            "version": "4.4.1",
     
    78047894        },
    78057895        "util": {
    7806             "version": "0.10.4",
    7807             "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
    7808             "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
    7809             "dev": true,
    7810             "requires": {
    7811                 "inherits": "2.0.3"
    7812             },
    7813             "dependencies": {
    7814                 "inherits": {
    7815                     "version": "2.0.3",
    7816                     "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
    7817                     "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
    7818                     "dev": true
    7819                 }
     7896            "version": "0.12.3",
     7897            "resolved": "https://registry.npmjs.org/util/-/util-0.12.3.tgz",
     7898            "integrity": "sha512-I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog==",
     7899            "dev": true,
     7900            "requires": {
     7901                "inherits": "^2.0.3",
     7902                "is-arguments": "^1.0.4",
     7903                "is-generator-function": "^1.0.7",
     7904                "is-typed-array": "^1.1.3",
     7905                "safe-buffer": "^5.1.2",
     7906                "which-typed-array": "^1.1.2"
    78207907            }
    78217908        },
     
    79057992        },
    79067993        "wait-on": {
    7907             "version": "5.2.1",
    7908             "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-5.2.1.tgz",
    7909             "integrity": "sha512-H2F986kNWMU9hKlI9l/ppO6tN8ZSJd35yBljMLa1/vjzWP++Qh6aXyt77/u7ySJFZQqBtQxnvm/xgG48AObXcw==",
     7994            "version": "5.3.0",
     7995            "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-5.3.0.tgz",
     7996            "integrity": "sha512-DwrHrnTK+/0QFaB9a8Ol5Lna3k7WvUR4jzSKmz0YaPBpuN2sACyiPVKVfj6ejnjcajAcvn3wlbTyMIn9AZouOg==",
    79107997            "dev": true,
    79117998            "requires": {
    79127999                "axios": "^0.21.1",
    79138000                "joi": "^17.3.0",
    7914                 "lodash": "^4.17.20",
     8001                "lodash": "^4.17.21",
    79158002                "minimist": "^1.2.5",
    79168003                "rxjs": "^6.6.3"
    79178004            },
    79188005            "dependencies": {
     8006                "lodash": {
     8007                    "version": "4.17.21",
     8008                    "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
     8009                    "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
     8010                    "dev": true
     8011                },
    79198012                "rxjs": {
    7920                     "version": "6.6.3",
    7921                     "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz",
    7922                     "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==",
     8013                    "version": "6.6.7",
     8014                    "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
     8015                    "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
    79238016                    "dev": true,
    79248017                    "requires": {
     
    79298022        },
    79308023        "watchify": {
    7931             "version": "3.11.1",
    7932             "resolved": "https://registry.npmjs.org/watchify/-/watchify-3.11.1.tgz",
    7933             "integrity": "sha512-WwnUClyFNRMB2NIiHgJU9RQPQNqVeFk7OmZaWf5dC5EnNa0Mgr7imBydbaJ7tGTuPM2hz1Cb4uiBvK9NVxMfog==",
    7934             "dev": true,
    7935             "requires": {
    7936                 "anymatch": "^2.0.0",
    7937                 "browserify": "^16.1.0",
    7938                 "chokidar": "^2.1.1",
     8024            "version": "4.0.0",
     8025            "resolved": "https://registry.npmjs.org/watchify/-/watchify-4.0.0.tgz",
     8026            "integrity": "sha512-2Z04dxwoOeNxa11qzWumBTgSAohTC0+ScuY7XMenPnH+W2lhTcpEOJP4g2EIG/SWeLadPk47x++Yh+8BqPM/lA==",
     8027            "dev": true,
     8028            "requires": {
     8029                "anymatch": "^3.1.0",
     8030                "browserify": "^17.0.0",
     8031                "chokidar": "^3.4.0",
    79398032                "defined": "^1.0.0",
    79408033                "outpipe": "^1.1.0",
    7941                 "through2": "^2.0.0",
    7942                 "xtend": "^4.0.0"
     8034                "through2": "^4.0.2",
     8035                "xtend": "^4.0.2"
     8036            },
     8037            "dependencies": {
     8038                "readable-stream": {
     8039                    "version": "3.6.0",
     8040                    "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
     8041                    "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
     8042                    "dev": true,
     8043                    "requires": {
     8044                        "inherits": "^2.0.3",
     8045                        "string_decoder": "^1.1.1",
     8046                        "util-deprecate": "^1.0.1"
     8047                    }
     8048                },
     8049                "through2": {
     8050                    "version": "4.0.2",
     8051                    "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
     8052                    "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
     8053                    "dev": true,
     8054                    "requires": {
     8055                        "readable-stream": "3"
     8056                    }
     8057                }
    79438058            }
    79448059        },
     
    79698084            }
    79708085        },
     8086        "which-typed-array": {
     8087            "version": "1.1.4",
     8088            "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz",
     8089            "integrity": "sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==",
     8090            "dev": true,
     8091            "requires": {
     8092                "available-typed-arrays": "^1.0.2",
     8093                "call-bind": "^1.0.0",
     8094                "es-abstract": "^1.18.0-next.1",
     8095                "foreach": "^2.0.5",
     8096                "function-bind": "^1.1.1",
     8097                "has-symbols": "^1.0.1",
     8098                "is-typed-array": "^1.1.3"
     8099            }
     8100        },
    79718101        "wrappy": {
    79728102            "version": "1.0.2",
  • branches/4.8/package.json

    r50203 r50635  
    2727        "dotenv-expand": "^5.1.0",
    2828        "grunt": "~1.3.0",
    29         "grunt-browserify": "~5.3.0",
     29        "grunt-browserify": "~6.0.0",
    3030        "grunt-contrib-clean": "~2.0.0",
    3131        "grunt-contrib-compress": "~2.0.0",
    3232        "grunt-contrib-concat": "~1.0.1",
    3333        "grunt-contrib-copy": "~1.0.0",
    34         "grunt-contrib-cssmin": "~3.0.0",
     34        "grunt-contrib-cssmin": "~4.0.0",
    3535        "grunt-contrib-imagemin": "~4.0.0",
    3636        "grunt-contrib-jshint": "3.0.0",
     
    4646        "grunt-sass": "~3.1.0",
    4747        "matchdep": "~2.0.0",
    48         "sass": "^1.32.6",
    49         "wait-on": "~5.2.1"
     48        "sass": "^1.32.8",
     49        "wait-on": "^5.3.0"
    5050    },
    5151    "scripts": {
Note: See TracChangeset for help on using the changeset viewer.