From b5c18075fe473af12a28268b689dad547f1edf3b Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Tue, 21 Jul 2020 09:57:24 -0500 Subject: [PATCH 01/66] Added basic assets --- src/assets/bomb.png | Bin 0 -> 495 bytes src/assets/dude.png | Bin 0 -> 3226 bytes src/assets/platform.png | Bin 0 -> 14973 bytes src/assets/sky.png | Bin 0 -> 4757 bytes src/assets/star.png | Bin 0 -> 443 bytes 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/assets/bomb.png create mode 100644 src/assets/dude.png create mode 100644 src/assets/platform.png create mode 100644 src/assets/sky.png create mode 100644 src/assets/star.png diff --git a/src/assets/bomb.png b/src/assets/bomb.png new file mode 100644 index 0000000000000000000000000000000000000000..28a0fbbddc37fd0a6872bbd170cbebdc81e7f597 GIT binary patch literal 495 zcmVD9zu&P4K|6B zy7WV^1|cFcwUDgo`40q5)!rZ!88jJG&>Yy7O9dHWfrAKYlfEe&qJ}`MAqe92ozK39 zS_dxgd-vXR&i(Ftnq^t&M>3hT+O;=%9-bIMHk;M@do)E{^oM&C)=pCLdAgpm1t@k^ z&r6X3MPj2!!s{M{XCa99#+?kFnRB&TFg9jv16`>Rxk3?>iIDADs(<1rvnS76(J0O{ z4|cC4a)kT+9ejBMnD!6B>6=4hHUy^-Qee%C3e4ZT>s*8?kVKHAo}40oaVcvh1b}8) zE^mNtY7q*#E+;~g#Mt4LCAkN3w3u(+;sP9IrN^}&ydV3Br<*c#UiSDfjm=0zDsnt7 zf+7kOV_$ZQdrc~pF>+2ToQvR#`0N42G7i^ lJ{9OsC=n&_ABpiJzyJ*&>ep5+m(>6O002ovPDHLkV1k0g(4+tW literal 0 HcmV?d00001 diff --git a/src/assets/dude.png b/src/assets/dude.png new file mode 100644 index 0000000000000000000000000000000000000000..6b35f4b4b1b00e757700e0852b8527200e82c538 GIT binary patch literal 3226 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 literal 0 HcmV?d00001 diff --git a/src/assets/sky.png b/src/assets/sky.png new file mode 100644 index 0000000000000000000000000000000000000000..5972639f229c7362edac856b42b86b93811ef3f2 GIT binary patch literal 4757 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 literal 0 HcmV?d00001 From 5d4629c0c4b182dbbbceb8192c0cfdf4ec980e49 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Tue, 21 Jul 2020 14:06:38 -0500 Subject: [PATCH 02/66] Added resources, player movement & basic platforms --- src/index.js | 100 +++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 89 insertions(+), 11 deletions(-) diff --git a/src/index.js b/src/index.js index 4d9a7d847..f3efbf24f 100644 --- a/src/index.js +++ b/src/index.js @@ -1,21 +1,91 @@ import Phaser from 'phaser'; -import logoImg from './assets/logo.png'; function preload() { - this.load.image('logo', logoImg); + this.load.baseURL = './src/assets/'; + this.load.image('logo', 'logo.png'); + this.load.image('sky', 'sky.png'); + this.load.image('platform', 'platform.png'); + this.load.image('star', 'star.png'); + this.load.image('bomb', 'bomb.png'); + this.load.spritesheet('dude', + 'dude.png', + { frameWidth: 32, frameHeight: 48 }); } +let platforms; +let player; + function create() { - const logo = this.add.image(400, 150, 'logo'); - - this.tweens.add({ - targets: logo, - y: 450, - duration: 2000, - ease: 'Power2', - yoyo: true, - loop: -1, + // Adding Background + this.add.image(400, 300, 'sky'); + + // Adding Platforms + platforms = this.physics.add.staticGroup(); + platforms.create(400, 568, 'platform').setScale(2).refreshBody(); + platforms.create(600, 400, 'platform'); + + // Adding Player + player = this.physics.add.sprite(100, 450, 'dude'); + player.setBounce(0.01); + player.setCollideWorldBounds(true); + + // Player animation + this.anims.create({ + key: 'turn', + frames: [{ key: 'dude', frame: 4 }], + frameRate: 20, + }); + + this.anims.create({ + key: 'right', + frames: this.anims.generateFrameNumbers('dude', { start: 5, end: 8 }), + frameRate: 10, + repeat: -1, + }); + + this.anims.create({ + key: 'left', + frames: this.anims.generateFrameNumbers('dude', { start: 0, end: 3 }), + frameRate: 10, + repeat: -1, }); + + // Adding Interaction between platforms & player + this.physics.add.collider(player, platforms); +} + +function update() { + // Control keys + + const cursors = this.input.keyboard.createCursorKeys(); + const touchingDown = player.body.touching.down; + const playerXVelocity = player.body.velocity.x; + const movingRight = cursors.right.isDown; + const movingLeft = cursors.left.isDown; + const movingUp = cursors.up.isDown; + + if (movingRight) { + player.anims.play('right', true); + if (touchingDown) { + player.setVelocityX(160); + } else if (playerXVelocity <= 0) { + player.setVelocityX(85); + } + } else if (movingLeft) { + player.anims.play('left', true); + if (touchingDown) { + player.setVelocityX(-160); + } else if (playerXVelocity >= 0) { + player.setVelocityX(-85); + } + } else { + player.anims.play('turn', true); + player.setVelocityX(0); + } + + if (movingUp && touchingDown) { + player.setVelocityY(-400); + } } const config = { @@ -23,9 +93,17 @@ const config = { parent: 'phaser-example', width: 800, height: 600, + physics: { + default: 'arcade', + arcade: { + gravity: { y: 450 }, + debug: false, + }, + }, scene: { preload, create, + update, }, }; From 78cd1c63c5e0918fb2e58c1850caa049c5b9df65 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Wed, 22 Jul 2020 11:48:16 -0500 Subject: [PATCH 03/66] Platform generation & reuse logic --- src/index.js | 82 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 74 insertions(+), 8 deletions(-) diff --git a/src/index.js b/src/index.js index f3efbf24f..2f3aabc8a 100644 --- a/src/index.js +++ b/src/index.js @@ -13,21 +13,52 @@ function preload() { } let platforms; +let middleColumn = []; +let sideColumn = []; let player; +let camera; +let shouldMoveCamera; function create() { // Adding Background - this.add.image(400, 300, 'sky'); + this.add.image(400, 300, 'sky') + .setScrollFactor(1, 0); // Adding Platforms platforms = this.physics.add.staticGroup(); - platforms.create(400, 568, 'platform').setScale(2).refreshBody(); - platforms.create(600, 400, 'platform'); + + + let floorX; + for (let i = 0; i < 6; i += 1){ + const columnSelector = i % 2; + let x; + let platform; + const y = 600 - (146 * i); // Start generating platforms at bottom + switch (columnSelector) { + case 0: + x = Phaser.Math.Between(350, 450); + if (i === 0) floorX = x; + platform = platforms.create(x, y, 'platform'); + middleColumn.push(platform); + break; + case 1: + const randomBool = Math.random() >= 0.5; + x = randomBool ? + Phaser.Math.Between(550, 650) : + Phaser.Math.Between(150, 250); + platform = platforms.create(x, y, 'platform'); + sideColumn.push(platform); + break; + } + platform.scaleX = 0.5; + platform.refreshBody(); + } // Adding Player - player = this.physics.add.sprite(100, 450, 'dude'); - player.setBounce(0.01); + player = this.physics.add.sprite(floorX, 350, 'dude'); + player.setBounce(0.06); player.setCollideWorldBounds(true); + this.physics.world.checkCollision.up = false; // Player animation this.anims.create({ @@ -52,17 +83,21 @@ function create() { // Adding Interaction between platforms & player this.physics.add.collider(player, platforms); + + // Setting up Camera + camera = this.cameras.main; } function update() { // Control keys - const cursors = this.input.keyboard.createCursorKeys(); const touchingDown = player.body.touching.down; const playerXVelocity = player.body.velocity.x; const movingRight = cursors.right.isDown; const movingLeft = cursors.left.isDown; const movingUp = cursors.up.isDown; + const movingDown = cursors.down.isDown; + if (movingRight) { player.anims.play('right', true); @@ -82,10 +117,41 @@ function update() { player.anims.play('turn', true); player.setVelocityX(0); } - if (movingUp && touchingDown) { - player.setVelocityY(-400); + player.body.velocity.y -= 400; + } + if (movingDown) { + player.body.velocity.y += 20; } + + + if (player.y <= 300) { + shouldMoveCamera = true; + } + + // Camera follow + if (shouldMoveCamera) { + camera.scrollY = player.y - 300; + } + + // Plafrom scrolling logic + platforms.children.iterate( platform => { + const scrollY = this.cameras.main.scrollY; + if (platform.y > scrollY + 700) { + let x; + if (sideColumn.includes(platform)) { + const randomBool = Math.random() >= 0.5; + x = randomBool ? + Phaser.Math.Between(550, 650) : + Phaser.Math.Between(150, 250); + } else { + x = Phaser.Math.Between(350, 400); + } + platform.y = scrollY - 180 + Phaser.Math.Between(-20, 20); + platform.x = x; + platform.body.updateFromGameObject(); + } + }); } const config = { From e0361e31cec11c6a7629e2da580fd54f62220bd0 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 23 Jul 2020 11:59:27 -0500 Subject: [PATCH 04/66] Added moving platforms --- src/MovingPlatform.js | 58 +++++++++++++++++++++++++++++++++++++++ src/index.js | 64 ++++++++++++++++++------------------------- 2 files changed, 84 insertions(+), 38 deletions(-) create mode 100644 src/MovingPlatform.js diff --git a/src/MovingPlatform.js b/src/MovingPlatform.js new file mode 100644 index 000000000..affe0acf8 --- /dev/null +++ b/src/MovingPlatform.js @@ -0,0 +1,58 @@ +import Phaser from 'phaser'; + +class MovingPlatform extends Phaser.Physics.Arcade.Image { + constructor(scene, x, y, texture, smallestX, biggestX, options) { + super(scene, x, y, texture, 0, options); + + scene.add.existing(this); + + this.startY = y; + this.smallestX = smallestX; + this.biggestX = biggestX; + this.isMovingVertically = false; + } + + setupFriction() { + this.body.immovable = true; + this.body.allowGravity = false; + this.body.friction.y = 1; + this.body.bounce.y = 0; + } + + moveVertically() { + if (this.isMovingVertically) return; + + this.isMovingVertically = true; + this.runningTween = this.scene.tweens.addCounter({ + from: 0, + to: 1000, + duration: 9000, + onUpdate: (tween, target) => { + const scrollY = this.scene.cameras.main.scrollY; + const y = this.startY + target.value + scrollY; + const dy = y - this.y; + this.body.velocity.y = dy; + this.refreshBody(); + + if (this.y >= 650) this.respawnPlatform(); + } + }); + } + + respawnPlatform() { + this.startY = -125; + this.y = -125; + this.x = Phaser.Math.Between(this.smallestX, this.biggestX); + this.runningTween.restart(); + } + + respawn(x, y) { + this.startY = y; + this.y = y; + this.x = x; + this.refreshBody(); + if (this.isMovingVertically) this.runningTween.restart(); + } +} + +export default MovingPlatform; diff --git a/src/index.js b/src/index.js index 2f3aabc8a..99d80d985 100644 --- a/src/index.js +++ b/src/index.js @@ -1,4 +1,5 @@ import Phaser from 'phaser'; +import MovingPlatform from './MovingPlatform'; function preload() { this.load.baseURL = './src/assets/'; @@ -17,7 +18,6 @@ let middleColumn = []; let sideColumn = []; let player; let camera; -let shouldMoveCamera; function create() { // Adding Background @@ -25,39 +25,51 @@ function create() { .setScrollFactor(1, 0); // Adding Platforms - platforms = this.physics.add.staticGroup(); + platforms = this.physics.add.group(); let floorX; for (let i = 0; i < 6; i += 1){ const columnSelector = i % 2; let x; + let smallestX; + let biggestX; let platform; const y = 600 - (146 * i); // Start generating platforms at bottom switch (columnSelector) { case 0: - x = Phaser.Math.Between(350, 450); + smallestX = 350; + biggestX = 450; + x = Phaser.Math.Between(smallestX, biggestX); if (i === 0) floorX = x; - platform = platforms.create(x, y, 'platform'); + platform = new MovingPlatform(this, x, y, 'platform', smallestX, biggestX, { + isStatic: true, + }); + platforms.add(platform); middleColumn.push(platform); break; case 1: const randomBool = Math.random() >= 0.5; - x = randomBool ? - Phaser.Math.Between(550, 650) : - Phaser.Math.Between(150, 250); - platform = platforms.create(x, y, 'platform'); + smallestX = randomBool ? 550 : 150; + biggestX = smallestX + 100; + x = Phaser.Math.Between(smallestX, biggestX); + platform = new MovingPlatform(this, x, y, 'platform', smallestX, biggestX, { + isStatic: true + }); + platforms.add(platform); sideColumn.push(platform); break; } platform.scaleX = 0.5; + platform.setupFriction(); platform.refreshBody(); } // Adding Player - player = this.physics.add.sprite(floorX, 350, 'dude'); + player = this.physics.add.sprite(floorX, 500, 'dude'); player.setBounce(0.06); player.setCollideWorldBounds(true); + player.setFrictionX(0); this.physics.world.checkCollision.up = false; // Player animation @@ -124,34 +136,11 @@ function update() { player.body.velocity.y += 20; } - - if (player.y <= 300) { - shouldMoveCamera = true; - } - - // Camera follow - if (shouldMoveCamera) { - camera.scrollY = player.y - 300; + if (player.y <= 300 && touchingDown) { + platforms.children.entries.forEach( platform => { + platform.moveVertically() + }); } - - // Plafrom scrolling logic - platforms.children.iterate( platform => { - const scrollY = this.cameras.main.scrollY; - if (platform.y > scrollY + 700) { - let x; - if (sideColumn.includes(platform)) { - const randomBool = Math.random() >= 0.5; - x = randomBool ? - Phaser.Math.Between(550, 650) : - Phaser.Math.Between(150, 250); - } else { - x = Phaser.Math.Between(350, 400); - } - platform.y = scrollY - 180 + Phaser.Math.Between(-20, 20); - platform.x = x; - platform.body.updateFromGameObject(); - } - }); } const config = { @@ -162,8 +151,7 @@ const config = { physics: { default: 'arcade', arcade: { - gravity: { y: 450 }, - debug: false, + gravity: { y: 450 } }, }, scene: { From 521b56f4a638694b526ba051f062dba9b733049b Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 23 Jul 2020 15:46:25 -0500 Subject: [PATCH 05/66] Moved platform generation logic to its class --- src/MovingPlatform.js | 40 +++++++++++++++++++++--------------- src/index.js | 48 ++++++++++++------------------------------- 2 files changed, 37 insertions(+), 51 deletions(-) diff --git a/src/MovingPlatform.js b/src/MovingPlatform.js index affe0acf8..264306865 100644 --- a/src/MovingPlatform.js +++ b/src/MovingPlatform.js @@ -1,15 +1,31 @@ import Phaser from 'phaser'; class MovingPlatform extends Phaser.Physics.Arcade.Image { - constructor(scene, x, y, texture, smallestX, biggestX, options) { - super(scene, x, y, texture, 0, options); + static setupX(centerPlatform) { + let lowerXBound; - scene.add.existing(this); + if (centerPlatform) { + lowerXBound = 350; + } else { + const randomBool = Math.random() >= 0.5; + lowerXBound = randomBool ? 150 : 450; + } + const upperXBound = lowerXBound + 100; + + return Phaser.Math.Between(lowerXBound, upperXBound); + } + + constructor(scene, centerPlatform, y, texture, options) { + const x = MovingPlatform.setupX(centerPlatform); + + super(scene, x, y, texture, 0, options); + + this.centerPlatform = centerPlatform; this.startY = y; - this.smallestX = smallestX; - this.biggestX = biggestX; this.isMovingVertically = false; + + scene.add.existing(this); } setupFriction() { @@ -28,31 +44,23 @@ class MovingPlatform extends Phaser.Physics.Arcade.Image { to: 1000, duration: 9000, onUpdate: (tween, target) => { - const scrollY = this.scene.cameras.main.scrollY; + const { scrollY } = this.scene.cameras.main; const y = this.startY + target.value + scrollY; const dy = y - this.y; this.body.velocity.y = dy; this.refreshBody(); if (this.y >= 650) this.respawnPlatform(); - } + }, }); } respawnPlatform() { this.startY = -125; this.y = -125; - this.x = Phaser.Math.Between(this.smallestX, this.biggestX); + this.x = MovingPlatform.setupX(this.centerPlatform); this.runningTween.restart(); } - - respawn(x, y) { - this.startY = y; - this.y = y; - this.x = x; - this.refreshBody(); - if (this.isMovingVertically) this.runningTween.restart(); - } } export default MovingPlatform; diff --git a/src/index.js b/src/index.js index 99d80d985..7b9f5f016 100644 --- a/src/index.js +++ b/src/index.js @@ -14,8 +14,6 @@ function preload() { } let platforms; -let middleColumn = []; -let sideColumn = []; let player; let camera; @@ -29,40 +27,20 @@ function create() { platforms = this.physics.add.group(); let floorX; - for (let i = 0; i < 6; i += 1){ - const columnSelector = i % 2; - let x; - let smallestX; - let biggestX; - let platform; + for (let i = 0; i < 6; i += 1) { const y = 600 - (146 * i); // Start generating platforms at bottom - switch (columnSelector) { - case 0: - smallestX = 350; - biggestX = 450; - x = Phaser.Math.Between(smallestX, biggestX); - if (i === 0) floorX = x; - platform = new MovingPlatform(this, x, y, 'platform', smallestX, biggestX, { - isStatic: true, - }); - platforms.add(platform); - middleColumn.push(platform); - break; - case 1: - const randomBool = Math.random() >= 0.5; - smallestX = randomBool ? 550 : 150; - biggestX = smallestX + 100; - x = Phaser.Math.Between(smallestX, biggestX); - platform = new MovingPlatform(this, x, y, 'platform', smallestX, biggestX, { - isStatic: true - }); - platforms.add(platform); - sideColumn.push(platform); - break; - } + const centerPlatform = i % 2 === 0; + + const platform = new MovingPlatform(this, centerPlatform, y, 'platform', { + isStatic: true, + }); + + platforms.add(platform); platform.scaleX = 0.5; platform.setupFriction(); platform.refreshBody(); + + if (i === 0) floorX = platform.x; // Starting platform x } // Adding Player @@ -137,8 +115,8 @@ function update() { } if (player.y <= 300 && touchingDown) { - platforms.children.entries.forEach( platform => { - platform.moveVertically() + platforms.children.entries.forEach(platform => { + platform.moveVertically(); }); } } @@ -151,7 +129,7 @@ const config = { physics: { default: 'arcade', arcade: { - gravity: { y: 450 } + gravity: { y: 450 }, }, }, scene: { From 2ff5af114ff5eb80cad294040a638c959908108d Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 23 Jul 2020 16:47:28 -0500 Subject: [PATCH 06/66] Modified platform generation parameters --- src/MovingPlatform.js | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/MovingPlatform.js b/src/MovingPlatform.js index 264306865..b8a936fee 100644 --- a/src/MovingPlatform.js +++ b/src/MovingPlatform.js @@ -1,6 +1,6 @@ import Phaser from 'phaser'; -class MovingPlatform extends Phaser.Physics.Arcade.Image { +export default class MovingPlatform extends Phaser.Physics.Arcade.Image { static setupX(centerPlatform) { let lowerXBound; @@ -9,7 +9,7 @@ class MovingPlatform extends Phaser.Physics.Arcade.Image { } else { const randomBool = Math.random() >= 0.5; - lowerXBound = randomBool ? 150 : 450; + lowerXBound = randomBool ? 150 : 550; } const upperXBound = lowerXBound + 100; @@ -56,11 +56,9 @@ class MovingPlatform extends Phaser.Physics.Arcade.Image { } respawnPlatform() { - this.startY = -125; - this.y = -125; + this.startY = -130; + this.y = -130; this.x = MovingPlatform.setupX(this.centerPlatform); this.runningTween.restart(); } } - -export default MovingPlatform; From c71faa5bfcbb84fc0f36fd9cb3e0fa41f7e4689d Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 23 Jul 2020 18:47:06 -0500 Subject: [PATCH 07/66] Refactored game to be a scene --- src/index.js | 132 ++------------------------------------ src/scenes/game.js | 154 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 160 insertions(+), 126 deletions(-) create mode 100644 src/scenes/game.js diff --git a/src/index.js b/src/index.js index 7b9f5f016..45c14147d 100644 --- a/src/index.js +++ b/src/index.js @@ -1,125 +1,6 @@ import Phaser from 'phaser'; -import MovingPlatform from './MovingPlatform'; - -function preload() { - this.load.baseURL = './src/assets/'; - this.load.image('logo', 'logo.png'); - this.load.image('sky', 'sky.png'); - this.load.image('platform', 'platform.png'); - this.load.image('star', 'star.png'); - this.load.image('bomb', 'bomb.png'); - this.load.spritesheet('dude', - 'dude.png', - { frameWidth: 32, frameHeight: 48 }); -} - -let platforms; -let player; -let camera; - -function create() { - // Adding Background - this.add.image(400, 300, 'sky') - .setScrollFactor(1, 0); - - // Adding Platforms - - platforms = this.physics.add.group(); - - let floorX; - for (let i = 0; i < 6; i += 1) { - const y = 600 - (146 * i); // Start generating platforms at bottom - const centerPlatform = i % 2 === 0; - - const platform = new MovingPlatform(this, centerPlatform, y, 'platform', { - isStatic: true, - }); - - platforms.add(platform); - platform.scaleX = 0.5; - platform.setupFriction(); - platform.refreshBody(); - - if (i === 0) floorX = platform.x; // Starting platform x - } - - // Adding Player - player = this.physics.add.sprite(floorX, 500, 'dude'); - player.setBounce(0.06); - player.setCollideWorldBounds(true); - player.setFrictionX(0); - this.physics.world.checkCollision.up = false; - - // Player animation - this.anims.create({ - key: 'turn', - frames: [{ key: 'dude', frame: 4 }], - frameRate: 20, - }); - - this.anims.create({ - key: 'right', - frames: this.anims.generateFrameNumbers('dude', { start: 5, end: 8 }), - frameRate: 10, - repeat: -1, - }); - - this.anims.create({ - key: 'left', - frames: this.anims.generateFrameNumbers('dude', { start: 0, end: 3 }), - frameRate: 10, - repeat: -1, - }); - - // Adding Interaction between platforms & player - this.physics.add.collider(player, platforms); - - // Setting up Camera - camera = this.cameras.main; -} - -function update() { - // Control keys - const cursors = this.input.keyboard.createCursorKeys(); - const touchingDown = player.body.touching.down; - const playerXVelocity = player.body.velocity.x; - const movingRight = cursors.right.isDown; - const movingLeft = cursors.left.isDown; - const movingUp = cursors.up.isDown; - const movingDown = cursors.down.isDown; - - - if (movingRight) { - player.anims.play('right', true); - if (touchingDown) { - player.setVelocityX(160); - } else if (playerXVelocity <= 0) { - player.setVelocityX(85); - } - } else if (movingLeft) { - player.anims.play('left', true); - if (touchingDown) { - player.setVelocityX(-160); - } else if (playerXVelocity >= 0) { - player.setVelocityX(-85); - } - } else { - player.anims.play('turn', true); - player.setVelocityX(0); - } - if (movingUp && touchingDown) { - player.body.velocity.y -= 400; - } - if (movingDown) { - player.body.velocity.y += 20; - } - - if (player.y <= 300 && touchingDown) { - platforms.children.entries.forEach(platform => { - platform.moveVertically(); - }); - } -} +import GameScene from './scenes/game' +import DeathScene from './scenes/death' const config = { type: Phaser.AUTO, @@ -132,11 +13,10 @@ const config = { gravity: { y: 450 }, }, }, - scene: { - preload, - create, - update, - }, + scene: [ + GameScene, + DeathScene + ], }; const game = new Phaser.Game(config); diff --git a/src/scenes/game.js b/src/scenes/game.js new file mode 100644 index 000000000..7dc174056 --- /dev/null +++ b/src/scenes/game.js @@ -0,0 +1,154 @@ +import Phaser from 'phaser'; +import MovingPlatform from '../MovingPlatform'; + +export default class MainGame extends Phaser.Scene { + constructor() { + super("game"); + } + + preload() { + this.load.baseURL = './src/assets/'; + this.load.image('logo', 'logo.png'); + this.load.image('sky', 'sky.png'); + this.load.image('platform', 'platform.png'); + this.load.image('star', 'star.png'); + this.load.image('bomb', 'bomb.png'); + this.load.spritesheet('dude', + 'dude.png', + { frameWidth: 32, frameHeight: 48 }); + } + + addPlatforms() { + this.platforms = this.physics.add.group(); + + for (let i = 0; i < 6; i += 1) { + const y = 600 - (146 * i); // Start generating platforms at bottom + const centerPlatform = i % 2 === 0; + + const platform = new MovingPlatform(this, centerPlatform, y, 'platform', { + isStatic: true, + }); + + this.platforms.add(platform); + platform.scaleX = 0.5; + platform.setupFriction(); + platform.refreshBody(); + + if (i === 0) this.startX = platform.x; // Starting platform x + } + } + + addPlayer() { + this.player = this.physics.add.sprite(this.startX, 500, 'dude'); + this.player.setBounce(0.06); + this.player.setCollideWorldBounds(true); + this.player.setFrictionX(0); + + // Player animation + this.anims.create({ + key: 'turn', + frames: [{ key: 'dude', frame: 4 }], + frameRate: 20, + }); + + this.anims.create({ + key: 'right', + frames: this.anims.generateFrameNumbers('dude', { start: 5, end: 8 }), + frameRate: 10, + repeat: -1, + }); + + this.anims.create({ + key: 'left', + frames: this.anims.generateFrameNumbers('dude', { start: 0, end: 3 }), + frameRate: 10, + repeat: -1, + }); + } + + create() { + // Adding Background + this.add.image(400, 300, 'sky') + .setScrollFactor(1, 0); + + // Adding Platforms + this.addPlatforms() + + // Adding Player + this.addPlayer(); + + // Adding sprites interaction + this.physics.add.collider(this.player, this.platforms); + this.physics.world.checkCollision.up = false; + + // Setting up Camera + this.camera = this.cameras.main; + } + + handleScrollDeath() { + this.scene.pause(); + this.scene.start('death', { endingX: this.player.x }); + } + + checkScrollDeath() { + if (this.player.body.blocked.down) this.handleScrollDeath(); + } + + updateMovementStatus() { + const cursors = this.input.keyboard.createCursorKeys(); + + this.movingRight = cursors.right.isDown; + this.movingLeft = cursors.left.isDown; + this.movingUp = cursors.up.isDown; + this.movingDown = cursors.down.isDown; + } + + movePlayer() { + if (this.movingRight) { + this.player.anims.play('right', true); + if (this.player.body.touching.down) { + this.player.setVelocityX(160); + } else if (this.player.body.velocity.x <= 0) { + this.player.setVelocityX(85); + } + } else if (this.movingLeft) { + this.player.anims.play('left', true); + if (this.player.body.touching.down) { + this.player.setVelocityX(-160); + } else if (this.player.body.velocity.x >= 0) { + this.player.setVelocityX(-85); + } + } else { + this.player.anims.play('turn', true); + this.player.setVelocityX(0); + } + if (this.movingUp && this.player.body.touching.down) { + this.player.body.velocity.y -= 400; + } + if (this.movingDown) { + this.player.body.velocity.y += 20; + } + } + + movePlatforms() { + if (this.player.y <= 300 && this.player.body.touching.down) { + this.platforms.children.entries.forEach(platform => { + platform.moveVertically(); + }); + } + } + + update() { + // Check death condition + this.checkScrollDeath(); + + // Update movement status + this.updateMovementStatus(); + + // Move player acording to movement status + this.movePlayer(); + + // Move platforms + this.movePlatforms(); + } +} From c69673bd5d7f4ddcf5ea65ccc8b6544926a4f9ec Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 23 Jul 2020 18:47:21 -0500 Subject: [PATCH 08/66] Added death scene --- src/scenes/death.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/scenes/death.js diff --git a/src/scenes/death.js b/src/scenes/death.js new file mode 100644 index 000000000..a214900d7 --- /dev/null +++ b/src/scenes/death.js @@ -0,0 +1,22 @@ +import Phaser from 'phaser'; + +export default class DeathScene extends Phaser.Scene { + init(data) { + this.endingX = data.endingX; + } + + constructor() { + super('death'); + } + + preload() { + } + + create() { + this.add.text(20, 20, `You died at ${this.endingX}`); + this.add.text(20, 60, "I'm ... dissapointed"); + } + + update() { + } +} From b19d940b7228ec5f9fd4b327508ef8637e2a6327 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 24 Jul 2020 08:42:48 -0500 Subject: [PATCH 09/66] Changed moving platform file name --- src/{MovingPlatform.js => movingPlatform.js} | 0 src/scenes/game.js | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename src/{MovingPlatform.js => movingPlatform.js} (100%) diff --git a/src/MovingPlatform.js b/src/movingPlatform.js similarity index 100% rename from src/MovingPlatform.js rename to src/movingPlatform.js diff --git a/src/scenes/game.js b/src/scenes/game.js index 7dc174056..4ca449b4c 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -1,5 +1,5 @@ import Phaser from 'phaser'; -import MovingPlatform from '../MovingPlatform'; +import MovingPlatform from '../movingPlatform'; export default class MainGame extends Phaser.Scene { constructor() { From 0265a20167fbfe6894fafadd5da69e07c8532dd6 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 24 Jul 2020 09:02:38 -0500 Subject: [PATCH 10/66] Changed physics of platforms & modified platform y --- package-lock.json | 885 +++++++++--------------------------------- src/movingPlatform.js | 8 +- 2 files changed, 195 insertions(+), 698 deletions(-) diff --git a/package-lock.json b/package-lock.json index 72a9b71b9..a939e1efc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -981,8 +981,7 @@ "@types/anymatch": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", - "integrity": "sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==", - "dev": true + "integrity": "sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==" }, "@types/color-name": { "version": "1.1.1", @@ -994,7 +993,6 @@ "version": "7.1.3", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", - "dev": true, "requires": { "@types/minimatch": "*", "@types/node": "*" @@ -1008,32 +1006,27 @@ "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, "@types/node": { "version": "14.0.23", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.23.tgz", - "integrity": "sha512-Z4U8yDAl5TFkmYsZdFPdjeMa57NOvnaf1tljHzhouaPEp7LCj2JKkejpI1ODviIAQuW4CcQmxkQ77rnLsOOoKw==", - "dev": true + "integrity": "sha512-Z4U8yDAl5TFkmYsZdFPdjeMa57NOvnaf1tljHzhouaPEp7LCj2JKkejpI1ODviIAQuW4CcQmxkQ77rnLsOOoKw==" }, "@types/source-list-map": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==" }, "@types/tapable": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.6.tgz", - "integrity": "sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA==", - "dev": true + "integrity": "sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA==" }, "@types/uglify-js": { "version": "3.9.3", "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.9.3.tgz", "integrity": "sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w==", - "dev": true, "requires": { "source-map": "^0.6.1" } @@ -1042,7 +1035,6 @@ "version": "4.41.21", "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.21.tgz", "integrity": "sha512-2j9WVnNrr/8PLAB5csW44xzQSJwS26aOnICsP3pSGCEdsu6KYtfQ6QJsVUKHWRnm1bL7HziJsfh5fHqth87yKA==", - "dev": true, "requires": { "@types/anymatch": "*", "@types/node": "*", @@ -1056,7 +1048,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-1.4.0.tgz", "integrity": "sha512-c88dKrpSle9BtTqR6ifdaxu1Lvjsl3C5OsfvuUbUwdXymshv1TkufUAXBajCCUM/f/TmnkZC/Esb03MinzSiXQ==", - "dev": true, "requires": { "@types/node": "*", "@types/source-list-map": "*", @@ -1066,22 +1057,19 @@ "source-map": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" } } }, "@webassemblyjs/helper-buffer": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", - "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==" }, "@webassemblyjs/helper-wasm-section": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -1093,7 +1081,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1103,20 +1090,17 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" }, "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" }, "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -1124,14 +1108,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" }, "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0" } @@ -1139,14 +1121,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" }, "@webassemblyjs/wast-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -1160,7 +1140,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -1173,7 +1152,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", - "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } @@ -1182,7 +1160,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", - "dev": true, "requires": { "@xtuc/long": "4.2.2" } @@ -1190,14 +1167,12 @@ "@webassemblyjs/utf8": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", - "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==" }, "@webassemblyjs/wasm-edit": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -1213,7 +1188,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1223,20 +1197,17 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" }, "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" }, "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -1244,14 +1215,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" }, "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0" } @@ -1259,14 +1228,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" }, "@webassemblyjs/wast-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -1280,7 +1247,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -1293,7 +1259,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1306,7 +1271,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1316,20 +1280,17 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" }, "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" }, "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -1337,14 +1298,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" }, "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0" } @@ -1352,14 +1311,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" }, "@webassemblyjs/wast-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -1373,7 +1330,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -1386,7 +1342,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -1398,7 +1353,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1408,20 +1362,17 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" }, "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" }, "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -1429,14 +1380,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" }, "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0" } @@ -1444,14 +1393,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" }, "@webassemblyjs/wast-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -1465,7 +1412,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -1478,7 +1424,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-api-error": "1.9.0", @@ -1492,7 +1437,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1502,20 +1446,17 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" }, "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" }, "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -1523,14 +1464,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" }, "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0" } @@ -1538,14 +1477,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" }, "@webassemblyjs/wast-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -1559,7 +1496,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -1571,14 +1507,12 @@ "@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, "@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "accepts": { "version": "1.3.7", @@ -1593,8 +1527,7 @@ "acorn": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==" }, "acorn-jsx": { "version": "5.2.0", @@ -1606,7 +1539,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", - "dev": true, "requires": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -1626,8 +1558,7 @@ "ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" }, "ajv-keywords": { "version": "3.5.1", @@ -1666,8 +1597,7 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" }, "ansi-styles": { "version": "3.2.1", @@ -1682,7 +1612,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, "optional": true, "requires": { "normalize-path": "^3.0.0", @@ -1692,8 +1621,7 @@ "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "argparse": { "version": "1.0.10", @@ -1707,20 +1635,17 @@ "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" }, "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, "array-flatten": { "version": "2.1.2", @@ -1743,7 +1668,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, "requires": { "array-uniq": "^1.0.1" } @@ -1751,14 +1675,12 @@ "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, "array.prototype.flat": { "version": "1.2.3", @@ -1774,7 +1696,6 @@ "version": "4.10.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", @@ -1784,8 +1705,7 @@ "bn.js": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" } } }, @@ -1793,7 +1713,6 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, "requires": { "object-assign": "^4.1.1", "util": "0.10.3" @@ -1802,14 +1721,12 @@ "inherits": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" }, "util": { "version": "0.10.3", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, "requires": { "inherits": "2.0.1" } @@ -1819,8 +1736,7 @@ "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, "astral-regex": { "version": "1.0.0", @@ -1840,8 +1756,7 @@ "async-each": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" }, "async-limiter": { "version": "1.0.1", @@ -1852,8 +1767,7 @@ "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, "babel-loader": { "version": "8.1.0", @@ -1902,14 +1816,12 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, "requires": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", @@ -1924,7 +1836,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -1933,7 +1844,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -1942,7 +1852,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -1951,7 +1860,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -1963,8 +1871,7 @@ "base64-js": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" }, "batch": { "version": "0.6.1", @@ -1981,20 +1888,17 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", - "dev": true, "optional": true }, "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "bn.js": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", - "dev": true + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==" }, "body-parser": { "version": "1.19.0", @@ -2054,14 +1958,12 @@ "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -2071,7 +1973,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, "requires": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -2089,7 +1990,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -2099,14 +1999,12 @@ "brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, "browserify-aes": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, "requires": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -2120,7 +2018,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, "requires": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", @@ -2131,7 +2028,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, "requires": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", @@ -2143,7 +2039,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, "requires": { "bn.js": "^4.1.0", "randombytes": "^2.0.1" @@ -2152,8 +2047,7 @@ "bn.js": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" } } }, @@ -2161,7 +2055,6 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.0.tgz", "integrity": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==", - "dev": true, "requires": { "bn.js": "^5.1.1", "browserify-rsa": "^4.0.1", @@ -2177,14 +2070,12 @@ "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" } } }, @@ -2192,7 +2083,6 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, "requires": { "pako": "~1.0.5" } @@ -2213,7 +2103,6 @@ "version": "4.9.2", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, "requires": { "base64-js": "^1.0.2", "ieee754": "^1.1.4", @@ -2223,8 +2112,7 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "buffer-indexof": { "version": "1.1.1", @@ -2235,14 +2123,12 @@ "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" }, "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" }, "bytes": { "version": "3.0.0", @@ -2254,7 +2140,6 @@ "version": "13.0.1", "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", - "dev": true, "requires": { "chownr": "^1.1.2", "figgy-pudding": "^3.5.1", @@ -2280,7 +2165,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, "requires": { "aggregate-error": "^3.0.0" } @@ -2291,7 +2175,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, "requires": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", @@ -2314,7 +2197,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", - "dev": true, "requires": { "no-case": "^2.2.0", "upper-case": "^1.1.1" @@ -2353,7 +2235,6 @@ "version": "3.4.1", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", - "dev": true, "optional": true, "requires": { "anymatch": "~3.1.1", @@ -2370,7 +2251,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "optional": true, "requires": { "fill-range": "^7.0.1" @@ -2380,7 +2260,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "optional": true, "requires": { "to-regex-range": "^5.0.1" @@ -2390,14 +2269,12 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, "optional": true }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "optional": true, "requires": { "is-number": "^7.0.0" @@ -2408,14 +2285,12 @@ "chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, "chrome-trace-event": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, "requires": { "tslib": "^1.9.0" } @@ -2424,7 +2299,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -2434,7 +2308,6 @@ "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, "requires": { "arr-union": "^3.1.0", "define-property": "^0.2.5", @@ -2446,7 +2319,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -2457,7 +2329,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, "requires": { "source-map": "~0.6.0" } @@ -2465,14 +2336,12 @@ "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" }, "clean-webpack-plugin": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz", "integrity": "sha512-MciirUH5r+cYLGCOL5JX/ZLzOZbVr1ot3Fw+KcvbhUb6PM+yycqd9ZhIlcigQ5gl+XhppNmw3bEFuaaMNyLj3A==", - "dev": true, "requires": { "@types/webpack": "^4.4.31", "del": "^4.1.1" @@ -2525,7 +2394,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, "requires": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" @@ -2549,20 +2417,17 @@ "commander": { "version": "2.17.1", "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", - "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", - "dev": true + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==" }, "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" }, "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" }, "compressible": { "version": "2.0.18", @@ -2608,14 +2473,12 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "concat-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, "requires": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -2627,7 +2490,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -2642,7 +2504,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -2664,14 +2525,12 @@ "console-browserify": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" }, "constants-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" }, "contains-path": { "version": "0.1.0", @@ -2719,7 +2578,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, "requires": { "aproba": "^1.1.1", "fs-write-stream-atomic": "^1.0.8", @@ -2732,8 +2590,7 @@ "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" }, "core-js-compat": { "version": "3.6.5", @@ -2756,14 +2613,12 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "create-ecdh": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "dev": true, "requires": { "bn.js": "^4.1.0", "elliptic": "^6.0.0" @@ -2772,8 +2627,7 @@ "bn.js": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" } } }, @@ -2781,7 +2635,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, "requires": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -2794,7 +2647,6 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, "requires": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -2821,7 +2673,6 @@ "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, "requires": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", @@ -2840,7 +2691,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, "requires": { "boolbase": "~1.0.0", "css-what": "2.1", @@ -2851,14 +2701,12 @@ "css-what": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", - "dev": true + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" }, "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" }, "debug": { "version": "4.1.1", @@ -2878,8 +2726,7 @@ "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, "deep-equal": { "version": "1.1.1", @@ -2915,7 +2762,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, "requires": { "object-keys": "^1.0.12" } @@ -2924,7 +2770,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -2934,7 +2779,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -2943,7 +2787,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -2952,7 +2795,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -2965,7 +2807,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "dev": true, "requires": { "@types/glob": "^7.1.1", "globby": "^6.1.0", @@ -2986,7 +2827,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, "requires": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" @@ -3014,7 +2854,6 @@ "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, "requires": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", @@ -3024,8 +2863,7 @@ "bn.js": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" } } }, @@ -3067,7 +2905,6 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dev": true, "requires": { "utila": "~0.4" } @@ -3076,7 +2913,6 @@ "version": "0.2.2", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "dev": true, "requires": { "domelementtype": "^2.0.1", "entities": "^2.0.0" @@ -3085,28 +2921,24 @@ "domelementtype": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", - "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==", - "dev": true + "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==" } } }, "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" }, "domelementtype": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" }, "domhandler": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dev": true, "requires": { "domelementtype": "1" } @@ -3115,7 +2947,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "dev": true, "requires": { "dom-serializer": "0", "domelementtype": "1" @@ -3125,7 +2956,6 @@ "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, "requires": { "end-of-stream": "^1.0.0", "inherits": "^2.0.1", @@ -3137,7 +2967,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -3152,7 +2981,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -3175,7 +3003,6 @@ "version": "6.5.3", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", - "dev": true, "requires": { "bn.js": "^4.4.0", "brorand": "^1.0.1", @@ -3189,8 +3016,7 @@ "bn.js": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" } } }, @@ -3215,7 +3041,6 @@ "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, "requires": { "once": "^1.4.0" } @@ -3224,7 +3049,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", - "dev": true, "requires": { "graceful-fs": "^4.1.2", "memory-fs": "^0.5.0", @@ -3235,7 +3059,6 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" @@ -3245,7 +3068,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -3260,7 +3082,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -3270,14 +3091,12 @@ "entities": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==", - "dev": true + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" }, "errno": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, "requires": { "prr": "~1.0.1" } @@ -3295,7 +3114,6 @@ "version": "1.17.6", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", - "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -3314,7 +3132,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -3594,7 +3411,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" @@ -3661,7 +3477,6 @@ "version": "4.2.1", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, "requires": { "estraverse": "^4.1.0" } @@ -3669,8 +3484,7 @@ "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, "esutils": { "version": "2.0.3", @@ -3692,8 +3506,7 @@ "events": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", - "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", - "dev": true + "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==" }, "eventsource": { "version": "1.0.7", @@ -3708,7 +3521,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, "requires": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -3733,7 +3545,6 @@ "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, "requires": { "debug": "^2.3.3", "define-property": "^0.2.5", @@ -3748,7 +3559,6 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "requires": { "ms": "2.0.0" } @@ -3757,7 +3567,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -3766,7 +3575,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -3774,8 +3582,7 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -3863,7 +3670,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -3873,7 +3679,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, "requires": { "is-plain-object": "^2.0.4" } @@ -3895,7 +3700,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, "requires": { "array-unique": "^0.3.2", "define-property": "^1.0.0", @@ -3911,7 +3715,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -3920,7 +3723,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -3929,7 +3731,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -3938,7 +3739,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -3947,7 +3747,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -3984,8 +3783,7 @@ "figgy-pudding": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "figures": { "version": "3.2.0", @@ -4041,7 +3839,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -4053,7 +3850,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -4096,7 +3892,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, "requires": { "commondir": "^1.0.1", "make-dir": "^2.0.0", @@ -4107,7 +3902,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, "requires": { "locate-path": "^3.0.0" } @@ -4156,7 +3950,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, "requires": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" @@ -4166,7 +3959,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -4181,7 +3973,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -4197,8 +3988,7 @@ "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" }, "forwarded": { "version": "0.1.2", @@ -4210,7 +4000,6 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, "requires": { "map-cache": "^0.2.2" } @@ -4225,7 +4014,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" @@ -4235,7 +4023,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -4250,7 +4037,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -4261,7 +4047,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, "requires": { "minipass": "^3.0.0" } @@ -4270,7 +4055,6 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, "requires": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", @@ -4282,7 +4066,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -4297,7 +4080,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -4307,21 +4089,18 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, "optional": true }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "functional-red-black-tree": { "version": "1.0.1", @@ -4353,14 +4132,12 @@ "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" }, "glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4374,7 +4151,6 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, "requires": { "is-glob": "^4.0.1" } @@ -4424,7 +4200,6 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, "requires": { "array-union": "^1.0.1", "glob": "^7.0.3", @@ -4436,16 +4211,14 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, "graceful-fs": { "version": "4.2.4", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "dev": true + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" }, "handle-thing": { "version": "2.0.1", @@ -4457,7 +4230,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -4471,14 +4243,12 @@ "has-symbols": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, "requires": { "get-value": "^2.0.6", "has-values": "^1.0.0", @@ -4489,7 +4259,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, "requires": { "is-number": "^3.0.0", "kind-of": "^4.0.0" @@ -4499,7 +4268,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -4510,7 +4278,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dev": true, "requires": { "inherits": "^2.0.4", "readable-stream": "^3.6.0", @@ -4520,14 +4287,12 @@ "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" } } }, @@ -4535,7 +4300,6 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, "requires": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" @@ -4544,14 +4308,12 @@ "he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" }, "hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, "requires": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -4621,7 +4383,6 @@ "version": "3.5.21", "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", - "dev": true, "requires": { "camel-case": "3.0.x", "clean-css": "4.2.x", @@ -4636,7 +4397,6 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", - "dev": true, "requires": { "html-minifier": "^3.2.3", "loader-utils": "^0.2.16", @@ -4650,26 +4410,22 @@ "big.js": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", - "dev": true + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==" }, "emojis-list": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" }, "json5": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" }, "loader-utils": { "version": "0.2.17", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, "requires": { "big.js": "^3.1.3", "emojis-list": "^2.0.0", @@ -4683,7 +4439,6 @@ "version": "3.10.1", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "dev": true, "requires": { "domelementtype": "^1.3.1", "domhandler": "^2.3.0", @@ -4696,8 +4451,7 @@ "entities": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" } } }, @@ -4746,8 +4500,7 @@ "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, "iconv-lite": { "version": "0.4.24", @@ -4761,14 +4514,12 @@ "ieee754": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" }, "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { "version": "4.0.6", @@ -4818,26 +4569,22 @@ "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, "infer-owner": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -5018,7 +4765,6 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -5027,7 +4773,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -5050,7 +4795,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, "optional": true, "requires": { "binary-extensions": "^2.0.0" @@ -5059,20 +4803,17 @@ "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "is-callable": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", - "dev": true + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==" }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -5081,7 +4822,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -5091,14 +4831,12 @@ "is-date-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, "requires": { "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", @@ -5108,22 +4846,19 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" } } }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-fullwidth-code-point": { "version": "2.0.0", @@ -5135,7 +4870,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, "requires": { "is-extglob": "^2.1.1" } @@ -5144,7 +4878,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -5153,7 +4886,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -5163,14 +4895,12 @@ "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==" }, "is-path-in-cwd": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", - "dev": true, "requires": { "is-path-inside": "^2.1.0" } @@ -5179,7 +4909,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", - "dev": true, "requires": { "path-is-inside": "^1.0.2" } @@ -5188,7 +4917,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, "requires": { "isobject": "^3.0.1" } @@ -5197,7 +4925,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", - "dev": true, "requires": { "has-symbols": "^1.0.1" } @@ -5218,7 +4945,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, "requires": { "has-symbols": "^1.0.1" } @@ -5226,20 +4952,17 @@ "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isexe": { "version": "2.0.0", @@ -5250,14 +4973,12 @@ "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" }, "jest-worker": { "version": "25.5.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", - "dev": true, "requires": { "merge-stream": "^2.0.0", "supports-color": "^7.0.0" @@ -5266,14 +4987,12 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "supports-color": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -5305,8 +5024,7 @@ "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, "json-schema-traverse": { "version": "0.4.1", @@ -5342,8 +5060,7 @@ "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" }, "leven": { "version": "3.1.0", @@ -5393,8 +5110,7 @@ "loader-runner": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==" }, "loader-utils": { "version": "2.0.0", @@ -5410,7 +5126,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, "requires": { "p-locate": "^3.0.0", "path-exists": "^3.0.0" @@ -5419,8 +5134,7 @@ "lodash": { "version": "4.17.19", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", - "dev": true + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" }, "loglevel": { "version": "1.6.8", @@ -5440,14 +5154,12 @@ "lower-case": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", - "dev": true + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=" }, "lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, "requires": { "yallist": "^3.0.2" }, @@ -5455,8 +5167,7 @@ "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -5464,7 +5175,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, "requires": { "pify": "^4.0.1", "semver": "^5.6.0" @@ -5473,14 +5183,12 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, "requires": { "object-visit": "^1.0.0" } @@ -5489,7 +5197,6 @@ "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1", @@ -5506,7 +5213,6 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" @@ -5516,7 +5222,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5531,7 +5236,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -5547,8 +5251,7 @@ "merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, "methods": { "version": "1.1.2", @@ -5560,7 +5263,6 @@ "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -5581,7 +5283,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" @@ -5590,8 +5291,7 @@ "bn.js": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" } } }, @@ -5625,20 +5325,17 @@ "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, "minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, "requires": { "brace-expansion": "^1.1.7" } @@ -5652,7 +5349,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", - "dev": true, "requires": { "yallist": "^4.0.0" } @@ -5661,7 +5357,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, "requires": { "minipass": "^3.0.0" } @@ -5670,7 +5365,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, "requires": { "minipass": "^3.0.0" } @@ -5679,7 +5373,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.3.tgz", "integrity": "sha512-cFOknTvng5vqnwOpDsZTWhNll6Jf8o2x+/diplafmxpuIymAjzoOolZG0VvQf3V2HgqzJNhnuKHYp2BqDgz8IQ==", - "dev": true, "requires": { "minipass": "^3.0.0" } @@ -5688,7 +5381,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, "requires": { "concat-stream": "^1.5.0", "duplexify": "^3.4.2", @@ -5706,7 +5398,6 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" @@ -5716,7 +5407,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, "requires": { "is-plain-object": "^2.0.4" } @@ -5727,7 +5417,6 @@ "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, "requires": { "minimist": "^1.2.5" } @@ -5736,7 +5425,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, "requires": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", @@ -5778,7 +5466,6 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -5808,8 +5495,7 @@ "neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" }, "nice-try": { "version": "1.0.5", @@ -5821,7 +5507,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", - "dev": true, "requires": { "lower-case": "^1.1.1" } @@ -5836,7 +5521,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, "requires": { "assert": "^1.1.1", "browserify-zlib": "^0.2.0", @@ -5866,14 +5550,12 @@ "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5888,7 +5570,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -5899,7 +5580,6 @@ "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, "requires": { "inherits": "2.0.3" } @@ -5927,8 +5607,7 @@ "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, "npm-run-path": { "version": "2.0.2", @@ -5943,7 +5622,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "dev": true, "requires": { "boolbase": "~1.0.0" } @@ -5951,14 +5629,12 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" }, "object-copy": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, "requires": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", @@ -5969,7 +5645,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -5978,7 +5653,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -5988,8 +5662,7 @@ "object-inspect": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", - "dev": true + "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==" }, "object-is": { "version": "1.1.2", @@ -6004,14 +5677,12 @@ "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, "requires": { "isobject": "^3.0.0" } @@ -6020,7 +5691,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -6043,7 +5713,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" @@ -6053,7 +5722,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, "requires": { "isobject": "^3.0.1" } @@ -6095,7 +5763,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "requires": { "wrappy": "1" } @@ -6144,8 +5811,7 @@ "os-browserify": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" }, "os-tmpdir": { "version": "1.0.2", @@ -6163,7 +5829,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, "requires": { "p-try": "^2.0.0" } @@ -6172,7 +5837,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, "requires": { "p-limit": "^2.0.0" } @@ -6180,8 +5844,7 @@ "p-map": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==" }, "p-retry": { "version": "3.0.1", @@ -6195,20 +5858,17 @@ "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "parallel-transform": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, "requires": { "cyclist": "^1.0.1", "inherits": "^2.0.3", @@ -6219,7 +5879,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -6234,7 +5893,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -6245,7 +5903,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", - "dev": true, "requires": { "no-case": "^2.2.0" } @@ -6263,7 +5920,6 @@ "version": "5.1.5", "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", - "dev": true, "requires": { "asn1.js": "^4.0.0", "browserify-aes": "^1.0.0", @@ -6297,8 +5953,7 @@ "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" }, "path": { "version": "0.12.7", @@ -6312,32 +5967,27 @@ "path-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" }, "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" }, "path-key": { "version": "2.0.1", @@ -6378,7 +6028,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", - "dev": true, "requires": { "create-hash": "^1.1.2", "create-hmac": "^1.1.4", @@ -6402,26 +6051,22 @@ "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true, "optional": true }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, "requires": { "pinkie": "^2.0.0" } @@ -6430,7 +6075,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, "requires": { "find-up": "^3.0.0" } @@ -6460,8 +6104,7 @@ "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" }, "prelude-ls": { "version": "1.1.2", @@ -6473,7 +6116,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", - "dev": true, "requires": { "renderkid": "^2.0.1", "utila": "~0.4" @@ -6487,8 +6129,7 @@ "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "progress": { "version": "2.0.3", @@ -6499,8 +6140,7 @@ "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" }, "proxy-addr": { "version": "2.0.6", @@ -6515,14 +6155,12 @@ "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" }, "public-encrypt": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, "requires": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", @@ -6535,8 +6173,7 @@ "bn.js": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" } } }, @@ -6544,7 +6181,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -6554,7 +6190,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, "requires": { "duplexify": "^3.6.0", "inherits": "^2.0.3", @@ -6565,7 +6200,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -6587,14 +6221,12 @@ "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" }, "querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" }, "querystringify": { "version": "2.1.1", @@ -6606,7 +6238,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, "requires": { "safe-buffer": "^5.1.0" } @@ -6615,7 +6246,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, "requires": { "randombytes": "^2.0.5", "safe-buffer": "^5.1.0" @@ -6749,7 +6379,6 @@ "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -6760,7 +6389,6 @@ "version": "3.4.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", - "dev": true, "optional": true, "requires": { "picomatch": "^2.2.1" @@ -6800,7 +6428,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" @@ -6862,20 +6489,17 @@ "relateurl": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", - "dev": true + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=" }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, "renderkid": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.3.tgz", "integrity": "sha512-z8CLQp7EZBPCwCnncgf9C4XAi3WR0dv+uWu/PjIyhhAb5d6IJ/QZqlHFprHeKT+59//V6BNUsLbvN8+2LarxGA==", - "dev": true, "requires": { "css-select": "^1.1.0", "dom-converter": "^0.2", @@ -6887,14 +6511,12 @@ "repeat-element": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" }, "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, "require-directory": { "version": "2.1.1", @@ -6964,8 +6586,7 @@ "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" }, "restore-cursor": { "version": "3.1.0", @@ -6980,8 +6601,7 @@ "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" }, "retry": { "version": "0.12.0", @@ -6993,7 +6613,6 @@ "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, "requires": { "glob": "^7.1.3" } @@ -7002,7 +6621,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1" @@ -7018,7 +6636,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, "requires": { "aproba": "^1.1.1" } @@ -7035,14 +6652,12 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safe-regex": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, "requires": { "ret": "~0.1.10" } @@ -7081,8 +6696,7 @@ "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" }, "send": { "version": "0.17.1", @@ -7134,7 +6748,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", - "dev": true, "requires": { "randombytes": "^2.1.0" } @@ -7211,7 +6824,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -7223,7 +6835,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -7233,8 +6844,7 @@ "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "setprototypeof": { "version": "1.1.1", @@ -7246,7 +6856,6 @@ "version": "2.4.11", "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -7288,7 +6897,6 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, "requires": { "base": "^0.11.1", "debug": "^2.2.0", @@ -7304,7 +6912,6 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "requires": { "ms": "2.0.0" } @@ -7313,7 +6920,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -7322,7 +6928,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -7330,14 +6935,12 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, @@ -7345,7 +6948,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, "requires": { "define-property": "^1.0.0", "isobject": "^3.0.0", @@ -7356,7 +6958,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -7365,7 +6966,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -7374,7 +6974,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, "requires": { "kind-of": "^6.0.0" } @@ -7383,7 +6982,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -7396,7 +6994,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, "requires": { "kind-of": "^3.2.0" }, @@ -7405,7 +7002,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -7460,8 +7056,7 @@ "source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" }, "source-map": { "version": "0.6.1", @@ -7472,7 +7067,6 @@ "version": "0.5.3", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, "requires": { "atob": "^2.1.2", "decode-uri-component": "^0.2.0", @@ -7485,7 +7079,6 @@ "version": "0.5.19", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -7494,8 +7087,7 @@ "source-map-url": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" }, "spdx-correct": { "version": "3.1.1", @@ -7560,7 +7152,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, "requires": { "extend-shallow": "^3.0.0" } @@ -7575,7 +7166,6 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.0.tgz", "integrity": "sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g==", - "dev": true, "requires": { "figgy-pudding": "^3.5.1", "minipass": "^3.1.1" @@ -7585,7 +7175,6 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, "requires": { "define-property": "^0.2.5", "object-copy": "^0.1.0" @@ -7595,7 +7184,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -7612,7 +7200,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, "requires": { "inherits": "~2.0.1", "readable-stream": "^2.0.2" @@ -7622,7 +7209,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -7637,7 +7223,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -7648,7 +7233,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "stream-shift": "^1.0.0" @@ -7658,7 +7242,6 @@ "version": "2.8.3", "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, "requires": { "builtin-status-codes": "^3.0.0", "inherits": "^2.0.1", @@ -7671,7 +7254,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -7686,7 +7268,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -7696,8 +7277,7 @@ "stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, "string-width": { "version": "3.1.0", @@ -7731,7 +7311,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" @@ -7741,7 +7320,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" @@ -7751,7 +7329,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, "requires": { "safe-buffer": "~5.2.0" }, @@ -7759,8 +7336,7 @@ "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" } } }, @@ -7768,7 +7344,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -7820,14 +7395,12 @@ "tapable": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" }, "terser": { "version": "4.8.0", "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", - "dev": true, "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -7837,8 +7410,7 @@ "commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" } } }, @@ -7846,7 +7418,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.7.tgz", "integrity": "sha512-xzYyaHUNhzgaAdBsXxk2Yvo/x1NJdslUaussK3fdpBbvttm1iIwU+c26dj9UxJcwk2c5UWt5F55MUTIA8BE7Dg==", - "dev": true, "requires": { "cacache": "^13.0.1", "find-cache-dir": "^3.3.1", @@ -7863,7 +7434,6 @@ "version": "3.3.1", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, "requires": { "commondir": "^1.0.1", "make-dir": "^3.0.2", @@ -7874,7 +7444,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, "requires": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -7884,7 +7453,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, "requires": { "p-locate": "^4.1.0" } @@ -7893,7 +7461,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, "requires": { "semver": "^6.0.0" } @@ -7902,7 +7469,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, "requires": { "p-limit": "^2.2.0" } @@ -7910,14 +7476,12 @@ "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" }, "pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, "requires": { "find-up": "^4.0.0" } @@ -7925,8 +7489,7 @@ "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" } } }, @@ -7946,7 +7509,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -7956,7 +7518,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -7971,7 +7532,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -7988,7 +7548,6 @@ "version": "2.0.11", "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", - "dev": true, "requires": { "setimmediate": "^1.0.4" } @@ -8005,8 +7564,7 @@ "to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" }, "to-fast-properties": { "version": "2.0.0", @@ -8018,7 +7576,6 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -8027,7 +7584,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -8038,7 +7594,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, "requires": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", @@ -8050,7 +7605,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" @@ -8065,20 +7619,17 @@ "toposort": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", - "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", - "dev": true + "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=" }, "tslib": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", - "dev": true + "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" }, "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" }, "type-check": { "version": "0.3.2", @@ -8108,14 +7659,12 @@ "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, "uglify-js": { "version": "3.4.10", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==", - "dev": true, "requires": { "commander": "~2.19.0", "source-map": "~0.6.1" @@ -8124,8 +7673,7 @@ "commander": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", - "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", - "dev": true + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==" } } }, @@ -8161,7 +7709,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", @@ -8173,7 +7720,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, "requires": { "unique-slug": "^2.0.0" } @@ -8182,7 +7728,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, "requires": { "imurmurhash": "^0.1.4" } @@ -8197,7 +7742,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, "requires": { "has-value": "^0.3.1", "isobject": "^3.0.0" @@ -8207,7 +7751,6 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, "requires": { "get-value": "^2.0.3", "has-values": "^0.1.4", @@ -8218,7 +7761,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, "requires": { "isarray": "1.0.0" } @@ -8228,22 +7770,19 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" } } }, "upath": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==" }, "upper-case": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", - "dev": true + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=" }, "uri-js": { "version": "4.2.2", @@ -8256,14 +7795,12 @@ "urix": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" }, "url": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, "requires": { "punycode": "1.3.2", "querystring": "0.2.0" @@ -8272,8 +7809,7 @@ "punycode": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" } } }, @@ -8290,8 +7826,7 @@ "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, "util": { "version": "0.10.4", @@ -8304,14 +7839,12 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "util.promisify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, "requires": { "define-properties": "^1.1.2", "object.getownpropertydescriptors": "^2.0.3" @@ -8320,8 +7853,7 @@ "utila": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=" }, "utils-merge": { "version": "1.0.1", @@ -8360,14 +7892,12 @@ "vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" }, "watchpack": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.2.tgz", "integrity": "sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g==", - "dev": true, "requires": { "chokidar": "^3.4.0", "graceful-fs": "^4.1.2", @@ -8379,7 +7909,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", - "dev": true, "optional": true, "requires": { "chokidar": "^2.1.8" @@ -8389,7 +7918,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, "optional": true, "requires": { "micromatch": "^3.1.4", @@ -8400,7 +7928,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, "optional": true, "requires": { "remove-trailing-separator": "^1.0.1" @@ -8412,14 +7939,12 @@ "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true, "optional": true }, "chokidar": { "version": "2.1.8", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, "optional": true, "requires": { "anymatch": "^2.0.0", @@ -8440,14 +7965,12 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, "optional": true }, "glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, "optional": true, "requires": { "is-glob": "^3.1.0", @@ -8458,7 +7981,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, "optional": true, "requires": { "is-extglob": "^2.1.0" @@ -8470,7 +7992,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, "optional": true, "requires": { "binary-extensions": "^1.0.0" @@ -8480,7 +8001,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "optional": true, "requires": { "core-util-is": "~1.0.0", @@ -8496,7 +8016,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, "optional": true, "requires": { "graceful-fs": "^4.1.11", @@ -8508,7 +8027,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "optional": true, "requires": { "safe-buffer": "~5.1.0" @@ -8529,7 +8047,6 @@ "version": "4.43.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.43.0.tgz", "integrity": "sha512-GW1LjnPipFW2Y78OOab8NJlCflB7EFskMih2AHdvjbpKMeDJqEgSx24cXXXiPS65+WSwVyxtDsJH6jGX2czy+g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-module-context": "1.9.0", @@ -8560,7 +8077,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -8570,20 +8086,17 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" }, "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" }, "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -8591,14 +8104,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" }, "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0" } @@ -8606,14 +8117,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" }, "@webassemblyjs/wast-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -8627,7 +8136,6 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -8638,7 +8146,6 @@ "version": "12.0.4", "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, "requires": { "bluebird": "^3.5.5", "chownr": "^1.1.1", @@ -8661,7 +8168,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, "requires": { "minimist": "^1.2.0" } @@ -8670,7 +8176,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, "requires": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", @@ -8681,7 +8186,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, "requires": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -8692,7 +8196,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, "requires": { "figgy-pudding": "^3.5.1" } @@ -8701,7 +8204,6 @@ "version": "1.4.4", "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", - "dev": true, "requires": { "cacache": "^12.0.2", "find-cache-dir": "^2.1.0", @@ -8989,7 +8491,6 @@ "version": "4.2.2", "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", - "dev": true, "requires": { "lodash": "^4.17.15" } @@ -8998,7 +8499,6 @@ "version": "1.4.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, "requires": { "source-list-map": "^2.0.0", "source-map": "~0.6.1" @@ -9044,7 +8544,6 @@ "version": "1.7.0", "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, "requires": { "errno": "~0.1.7" } @@ -9080,8 +8579,7 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "write": { "version": "1.0.3", @@ -9104,20 +8602,17 @@ "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, "y18n": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yargs": { "version": "13.3.2", diff --git a/src/movingPlatform.js b/src/movingPlatform.js index b8a936fee..548303bee 100644 --- a/src/movingPlatform.js +++ b/src/movingPlatform.js @@ -9,7 +9,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { } else { const randomBool = Math.random() >= 0.5; - lowerXBound = randomBool ? 150 : 550; + lowerXBound = randomBool ? 120 : 570; } const upperXBound = lowerXBound + 100; @@ -31,6 +31,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { setupFriction() { this.body.immovable = true; this.body.allowGravity = false; + this.body.friction.x = 0; this.body.friction.y = 1; this.body.bounce.y = 0; } @@ -56,8 +57,9 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { } respawnPlatform() { - this.startY = -130; - this.y = -130; + const dy = Phaser.Math.Between(0, 5); + this.startY = -130 + dy; + this.y = -130 + dy; this.x = MovingPlatform.setupX(this.centerPlatform); this.runningTween.restart(); } From 4220893b4555f37e3ca3bccb90ffaa9e2898212d Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 24 Jul 2020 10:29:40 -0500 Subject: [PATCH 11/66] Added item logic --- src/movingPlatform.js | 33 +++++++++++++++++++++++++++---- src/scenes/game.js | 45 +++++++++++++++++++++++++++++++++++++------ 2 files changed, 68 insertions(+), 10 deletions(-) diff --git a/src/movingPlatform.js b/src/movingPlatform.js index 548303bee..4352a0c1d 100644 --- a/src/movingPlatform.js +++ b/src/movingPlatform.js @@ -16,7 +16,26 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { return Phaser.Math.Between(lowerXBound, upperXBound); } - constructor(scene, centerPlatform, y, texture, options) { + static shouldAddItem(probability) { + return Math.random() >= 1.0 - probability; + } + + addItemStartingParameters() { + return { + x: this.x + Phaser.Math.Between(-60, 60), + y: this.startY - 120, + } + } + + handleItemAdd(probability) { + if (MovingPlatform.shouldAddItem(probability)) { + const itemInfo = this.addItemStartingParameters(); + + this.addItem(itemInfo.x, itemInfo.y); + } + } + + constructor(scene, centerPlatform, y, addItem, texture, options) { const x = MovingPlatform.setupX(centerPlatform); super(scene, x, y, texture, 0, options); @@ -24,7 +43,12 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.centerPlatform = centerPlatform; this.startY = y; this.isMovingVertically = false; + this.addItem = addItem; + this.START_ITEM_PROBABILIY = 0.3; + this.RESPAWN_ITEM_PROBABILIY = 0.4; + + this.handleItemAdd(this.START_ITEM_PROBABILIY); scene.add.existing(this); } @@ -57,10 +81,11 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { } respawnPlatform() { - const dy = Phaser.Math.Between(0, 5); - this.startY = -130 + dy; - this.y = -130 + dy; + this.startY = -125; + this.y = -125; this.x = MovingPlatform.setupX(this.centerPlatform); this.runningTween.restart(); + + this.handleItemAdd(this.RESPAWN_ITEM_PROBABILIY); } } diff --git a/src/scenes/game.js b/src/scenes/game.js index 4ca449b4c..db0e52c3a 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -18,6 +18,25 @@ export default class MainGame extends Phaser.Scene { { frameWidth: 32, frameHeight: 48 }); } + addItems() { + this.score = 0; + this.items = this.physics.add.group(); + + console.log(this.items); + // Add animation + } + + addItem(x, y) { + const item = this.physics.add.sprite(x, y, 'star'); + this.items.add(item); + item.setBounce(0.3); + } + + collectItem(sprite, item) { + this.score += 1; + item.disableBody(true, true); + } + addPlatforms() { this.platforms = this.physics.add.group(); @@ -25,9 +44,14 @@ export default class MainGame extends Phaser.Scene { const y = 600 - (146 * i); // Start generating platforms at bottom const centerPlatform = i % 2 === 0; - const platform = new MovingPlatform(this, centerPlatform, y, 'platform', { - isStatic: true, - }); + const platform = new MovingPlatform(this, + centerPlatform, + y, + this.addItem.bind(this), + 'platform', + { + isStatic: true, + }); this.platforms.add(platform); platform.scaleX = 0.5; @@ -71,15 +95,21 @@ export default class MainGame extends Phaser.Scene { this.add.image(400, 300, 'sky') .setScrollFactor(1, 0); + // Collectibles logic + this.addItems(); + + // Adding Platforms this.addPlatforms() // Adding Player this.addPlayer(); - + // Adding sprites interaction - this.physics.add.collider(this.player, this.platforms); this.physics.world.checkCollision.up = false; + this.physics.add.collider(this.player, this.platforms); + this.physics.add.collider(this.items, this.platforms); + this.physics.add.overlap(this.player, this.items, this.collectItem, null, this); // Setting up Camera this.camera = this.cameras.main; @@ -87,7 +117,10 @@ export default class MainGame extends Phaser.Scene { handleScrollDeath() { this.scene.pause(); - this.scene.start('death', { endingX: this.player.x }); + this.scene.start('death', + { endingX: this.player.x, + score: this.score, + }); } checkScrollDeath() { From 9868d115f52abbad9e8e6c631bf9f5c73a12c68f Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 24 Jul 2020 10:29:56 -0500 Subject: [PATCH 12/66] Passed score to death scene --- src/scenes/death.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/scenes/death.js b/src/scenes/death.js index a214900d7..c5be78f22 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -3,6 +3,7 @@ import Phaser from 'phaser'; export default class DeathScene extends Phaser.Scene { init(data) { this.endingX = data.endingX; + this.score = data.score; } constructor() { @@ -13,7 +14,7 @@ export default class DeathScene extends Phaser.Scene { } create() { - this.add.text(20, 20, `You died at ${this.endingX}`); + this.add.text(20, 20, `You died with ${this.score} items`); this.add.text(20, 60, "I'm ... dissapointed"); } From 604f657387310748265528db0402a325169744f8 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 24 Jul 2020 12:04:27 -0500 Subject: [PATCH 13/66] Added item recollection display --- src/scenes/game.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/scenes/game.js b/src/scenes/game.js index db0e52c3a..73ca2eae1 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -22,7 +22,12 @@ export default class MainGame extends Phaser.Scene { this.score = 0; this.items = this.physics.add.group(); - console.log(this.items); + // 15 585 + const img = this.add.image(20, 20, 'star'); + img.setScale(0.95, 0.95); + + // 30 578 + this.scoreText = this.add.text(40, 12, this.score, { fill: '#000', fontSize: '18px' }); // Add animation } @@ -35,6 +40,7 @@ export default class MainGame extends Phaser.Scene { collectItem(sprite, item) { this.score += 1; item.disableBody(true, true); + this.scoreText.text = this.score; } addPlatforms() { From 84d182bf2d71f470211734122ecac7e737a593d2 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 24 Jul 2020 12:30:14 -0500 Subject: [PATCH 14/66] Added resources to webpack & changed preload method --- package.json | 2 +- src/index.js | 7 +++++-- src/scenes/game.js | 19 ++++++++++++------- webpack/base.js | 7 ++++++- 4 files changed, 24 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index e234a1ba8..0ec6f76f9 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "eslint": "^6.8.0", "eslint-config-airbnb-base": "^14.1.0", "eslint-plugin-import": "^2.20.2", - "file-loader": "^4.2.0", + "file-loader": "^4.3.0", "raw-loader": "^3.1.0", "webpack-cli": "^3.3.10", "webpack-dev-server": "^3.11.0" diff --git a/src/index.js b/src/index.js index 45c14147d..d44accd88 100644 --- a/src/index.js +++ b/src/index.js @@ -1,6 +1,9 @@ import Phaser from 'phaser'; -import GameScene from './scenes/game' -import DeathScene from './scenes/death' + +// Scenes + +import GameScene from './scenes/game'; +import DeathScene from './scenes/death'; const config = { type: Phaser.AUTO, diff --git a/src/scenes/game.js b/src/scenes/game.js index 73ca2eae1..0baf3be42 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -1,4 +1,12 @@ import Phaser from 'phaser'; + +// Assets +import dudeAsset from '../assets/dude.png'; +import platformAsset from '../assets/platform.png'; +import skyAsset from '../assets/sky.png'; +import starAsset from '../assets/star.png'; + +// Auxiliary classes import MovingPlatform from '../movingPlatform'; export default class MainGame extends Phaser.Scene { @@ -7,14 +15,11 @@ export default class MainGame extends Phaser.Scene { } preload() { - this.load.baseURL = './src/assets/'; - this.load.image('logo', 'logo.png'); - this.load.image('sky', 'sky.png'); - this.load.image('platform', 'platform.png'); - this.load.image('star', 'star.png'); - this.load.image('bomb', 'bomb.png'); + this.load.image('sky', skyAsset); + this.load.image('platform', platformAsset); + this.load.image('star', starAsset); this.load.spritesheet('dude', - 'dude.png', + dudeAsset, { frameWidth: 32, frameHeight: 48 }); } diff --git a/webpack/base.js b/webpack/base.js index cf6a9aa3d..28225dd19 100644 --- a/webpack/base.js +++ b/webpack/base.js @@ -21,7 +21,12 @@ module.exports = { }, { test: /\.(gif|png|jpe?g|svg|xml)$/i, - use: 'file-loader', + use: { + loader: 'file-loader', + options: { + outputPath: 'assets', + }, + }, }, ], }, From 7684dd95e75f1618b41c0860986435f06a782623 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 11:04:16 -0500 Subject: [PATCH 15/66] Changed locations & scale method --- index.html => dev/index.html | 1 + dev/stylesheet.css | 7 ++++ dev/stylesheet.css.map | 1 + package-lock.json | 71 ++++++++++++++++++++++++++++-------- package.json | 6 ++- src/index.js | 8 ++-- src/style/main.scss | 6 +++ webpack/base.js | 2 +- 8 files changed, 81 insertions(+), 21 deletions(-) rename index.html => dev/index.html (59%) create mode 100644 dev/stylesheet.css create mode 100644 dev/stylesheet.css.map create mode 100644 src/style/main.scss diff --git a/index.html b/dev/index.html similarity index 59% rename from index.html rename to dev/index.html index 81ddc2235..e5eef9265 100644 --- a/index.html +++ b/dev/index.html @@ -2,6 +2,7 @@ + diff --git a/dev/stylesheet.css b/dev/stylesheet.css new file mode 100644 index 000000000..147726e04 --- /dev/null +++ b/dev/stylesheet.css @@ -0,0 +1,7 @@ +html, body { + width: 100vw; + height: 100vh; + margin: 0; +} + +/*# sourceMappingURL=stylesheet.css.map */ diff --git a/dev/stylesheet.css.map b/dev/stylesheet.css.map new file mode 100644 index 000000000..faa148b7e --- /dev/null +++ b/dev/stylesheet.css.map @@ -0,0 +1 @@ +{"version":3,"sourceRoot":"","sources":["../src/style/main.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA","file":"stylesheet.css"} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index a939e1efc..770e4e93d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1612,7 +1612,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "optional": true, "requires": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -1887,8 +1886,15 @@ "binary-extensions": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", - "optional": true + "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==" + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "requires": { + "file-uri-to-path": "1.0.0" + } }, "bluebird": { "version": "3.7.2", @@ -2235,7 +2241,6 @@ "version": "3.4.1", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", - "optional": true, "requires": { "anymatch": "~3.1.1", "braces": "~3.0.2", @@ -2251,7 +2256,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "optional": true, "requires": { "fill-range": "^7.0.1" } @@ -2260,7 +2264,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "optional": true, "requires": { "to-regex-range": "^5.0.1" } @@ -2268,14 +2271,12 @@ "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "optional": true + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "optional": true, "requires": { "is-number": "^7.0.0" } @@ -2850,6 +2851,14 @@ "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "dev": true }, + "dev": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/dev/-/dev-0.1.3.tgz", + "integrity": "sha1-if3AhwXg5+rvktAS4mdR5NdEMio=", + "requires": { + "inotify": ">= 0.1.6" + } + }, "diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", @@ -3835,6 +3844,11 @@ } } }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", @@ -4601,6 +4615,15 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true }, + "inotify": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/inotify/-/inotify-1.4.6.tgz", + "integrity": "sha512-WW8/uqIA04O3AePQVe/Ms3ZLR0yGamaz8YOEpaXc4WBAGOPZfzu58wWErEPSUYaPyDrJRIeCn6PEIQgC1ZyQ5w==", + "requires": { + "bindings": "^1.3.1", + "nan": "^2.12.1" + } + }, "inquirer": { "version": "7.3.2", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.2.tgz", @@ -4795,7 +4818,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "optional": true, "requires": { "binary-extensions": "^2.0.0" } @@ -5462,6 +5484,11 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, + "nan": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==" + }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", @@ -6050,8 +6077,7 @@ "picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "optional": true + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" }, "pify": { "version": "4.0.1", @@ -6389,7 +6415,6 @@ "version": "3.4.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", - "optional": true, "requires": { "picomatch": "^2.2.1" } @@ -6668,6 +6693,14 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "sass": { + "version": "1.26.10", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.10.tgz", + "integrity": "sha512-bzN0uvmzfsTvjz0qwccN1sPm2HxxpNI/Xa+7PlUEMS+nQvbyuEK7Y0qFqxlPHhiNHb1Ze8WQJtU31olMObkAMw==", + "requires": { + "chokidar": ">=2.0.0 <4.0.0" + } + }, "schema-utils": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", @@ -7965,7 +7998,11 @@ "version": "1.2.13", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "optional": true + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } }, "glob-parent": { "version": "3.1.0", @@ -8382,7 +8419,11 @@ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", "dev": true, - "optional": true + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } }, "glob-parent": { "version": "3.1.0", diff --git a/package.json b/package.json index 0ec6f76f9..ef4fa6532 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,8 @@ "description": "Simple open source platformer game", "main": "src/index.js", "scripts": { - "build": "webpack --config webpack/prod.js ", - "start": "webpack-dev-server --config webpack/base.js --open" + "build": "webpack --config webpack/prod.js && sass ./src/style/main.scss:dist/stylesheet.css --style compressed", + "start": "sass ./src/style/main.scss:./stylesheet.css && webpack-dev-server --config webpack/base.js --open" }, "repository": { "type": "git", @@ -28,8 +28,10 @@ }, "dependencies": { "clean-webpack-plugin": "^3.0.0", + "dev": "^0.1.3", "html-webpack-plugin": "^3.2.0", "phaser": "^3.20.1", + "sass": "^1.26.10", "terser-webpack-plugin": "^2.2.1", "webpack": "^4.41.2", "webpack-merge": "^4.2.2" diff --git a/src/index.js b/src/index.js index d44accd88..9d1ff2ed2 100644 --- a/src/index.js +++ b/src/index.js @@ -7,9 +7,11 @@ import DeathScene from './scenes/death'; const config = { type: Phaser.AUTO, - parent: 'phaser-example', - width: 800, - height: 600, + scale: { + width: 800, + height: 600, + autoCenter: Phaser.Scale.CENTER_BOTH + }, physics: { default: 'arcade', arcade: { diff --git a/src/style/main.scss b/src/style/main.scss new file mode 100644 index 000000000..88bba6dea --- /dev/null +++ b/src/style/main.scss @@ -0,0 +1,6 @@ +html, body { + width: 100vw; + height: 100vh; + margin: 0; + background-color: #000; +} diff --git a/webpack/base.js b/webpack/base.js index 28225dd19..2c01ea5e0 100644 --- a/webpack/base.js +++ b/webpack/base.js @@ -39,7 +39,7 @@ module.exports = { WEBGL_RENDERER: JSON.stringify(true), }), new HtmlWebpackPlugin({ - template: './index.html', + template: path.resolve(__dirname, '../dev/index.html'), }), ], }; From 5638800b3e98e6f1c71c645aabeabf923c99afd4 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 11:42:59 -0500 Subject: [PATCH 16/66] Fixed game jump --- src/index.js | 2 +- src/movingPlatform.js | 2 +- src/scenes/game.js | 10 ++++++---- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/index.js b/src/index.js index 9d1ff2ed2..6e61cc19e 100644 --- a/src/index.js +++ b/src/index.js @@ -15,7 +15,7 @@ const config = { physics: { default: 'arcade', arcade: { - gravity: { y: 450 }, + gravity: { y: 450 } }, }, scene: [ diff --git a/src/movingPlatform.js b/src/movingPlatform.js index 4352a0c1d..e72776668 100644 --- a/src/movingPlatform.js +++ b/src/movingPlatform.js @@ -67,7 +67,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.runningTween = this.scene.tweens.addCounter({ from: 0, to: 1000, - duration: 9000, + duration: 14000, onUpdate: (tween, target) => { const { scrollY } = this.scene.cameras.main; const y = this.startY + target.value + scrollY; diff --git a/src/scenes/game.js b/src/scenes/game.js index 0baf3be42..a4fa7da1f 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -77,7 +77,7 @@ export default class MainGame extends Phaser.Scene { this.player = this.physics.add.sprite(this.startX, 500, 'dude'); this.player.setBounce(0.06); this.player.setCollideWorldBounds(true); - this.player.setFrictionX(0); + this.player.body.friction.x = 0; // Player animation this.anims.create({ @@ -148,25 +148,27 @@ export default class MainGame extends Phaser.Scene { } movePlayer() { + if (this.player.body.touching.down) this.player.jumpsAvailable = 1; if (this.movingRight) { this.player.anims.play('right', true); if (this.player.body.touching.down) { this.player.setVelocityX(160); - } else if (this.player.body.velocity.x <= 0) { + } else { this.player.setVelocityX(85); } } else if (this.movingLeft) { this.player.anims.play('left', true); if (this.player.body.touching.down) { this.player.setVelocityX(-160); - } else if (this.player.body.velocity.x >= 0) { + } else { this.player.setVelocityX(-85); } } else { this.player.anims.play('turn', true); this.player.setVelocityX(0); } - if (this.movingUp && this.player.body.touching.down) { + if (this.movingUp && this.player.jumpsAvailable > 0) { + this.player.jumpsAvailable -= 1; this.player.body.velocity.y -= 400; } if (this.movingDown) { From 601aa54a40470de69b07d03a17bda0cd938f5d6c Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 12:14:37 -0500 Subject: [PATCH 17/66] Added increased difficulty & fixed movement --- src/movingPlatform.js | 11 +++++++++-- src/scenes/game.js | 5 +++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/movingPlatform.js b/src/movingPlatform.js index e72776668..2a6f29667 100644 --- a/src/movingPlatform.js +++ b/src/movingPlatform.js @@ -46,7 +46,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.addItem = addItem; this.START_ITEM_PROBABILIY = 0.3; - this.RESPAWN_ITEM_PROBABILIY = 0.4; + this.RESPAWN_ITEM_PROBABILIY = 0.9; this.handleItemAdd(this.START_ITEM_PROBABILIY); scene.add.existing(this); @@ -67,7 +67,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.runningTween = this.scene.tweens.addCounter({ from: 0, to: 1000, - duration: 14000, + duration: 13000, onUpdate: (tween, target) => { const { scrollY } = this.scene.cameras.main; const y = this.startY + target.value + scrollY; @@ -80,6 +80,13 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { }); } + increaseDifficulty(step) { + if (!this.runningTween) return + + const newTimeScale = this.runningTween.timeScale + step; + this.runningTween.setTimeScale(newTimeScale); + } + respawnPlatform() { this.startY = -125; this.y = -125; diff --git a/src/scenes/game.js b/src/scenes/game.js index a4fa7da1f..96a577840 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -46,6 +46,7 @@ export default class MainGame extends Phaser.Scene { this.score += 1; item.disableBody(true, true); this.scoreText.text = this.score; + this.platforms.children.entries.forEach( platform => platform.increaseDifficulty(0.10) ); } addPlatforms() { @@ -153,14 +154,14 @@ export default class MainGame extends Phaser.Scene { this.player.anims.play('right', true); if (this.player.body.touching.down) { this.player.setVelocityX(160); - } else { + } else if(this.player.body.velocity.x < 85) { this.player.setVelocityX(85); } } else if (this.movingLeft) { this.player.anims.play('left', true); if (this.player.body.touching.down) { this.player.setVelocityX(-160); - } else { + } else if(this.player.body.velocity.x > -85) { this.player.setVelocityX(-85); } } else { From 9c4f3c6e7e527ea101b5347a5266ddada130ac22 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 12:47:22 -0500 Subject: [PATCH 18/66] Added platfrom manager & simplified platform manipulation logic --- src/{ => classes}/movingPlatform.js | 0 src/classes/platformManager.js | 24 ++++++++++++++++++++++++ src/scenes/game.js | 13 +++++-------- 3 files changed, 29 insertions(+), 8 deletions(-) rename src/{ => classes}/movingPlatform.js (100%) create mode 100644 src/classes/platformManager.js diff --git a/src/movingPlatform.js b/src/classes/movingPlatform.js similarity index 100% rename from src/movingPlatform.js rename to src/classes/movingPlatform.js diff --git a/src/classes/platformManager.js b/src/classes/platformManager.js new file mode 100644 index 000000000..8adf3b0f5 --- /dev/null +++ b/src/classes/platformManager.js @@ -0,0 +1,24 @@ +import Phaser from 'phaser'; +import MovingPlatform from './movingPlatform'; + +export default class platformManager extends Phaser.Physics.Arcade.Group { + constructor(world, scene) { + super(world, scene); + return this; + } + + newPlatform(scene, centerPlatform, y, addItem, texture, options) { + const movingPlatform = new MovingPlatform(scene, centerPlatform, y, addItem, texture, options); + + this.add(movingPlatform); + return movingPlatform + } + + moveVertically() { + this.children.entries.forEach( platform => platform.moveVertically() ); + } + + increaseDifficulty(step) { + this.children.entries.forEach( platform => platform.increaseDifficulty(step) ); + } +} diff --git a/src/scenes/game.js b/src/scenes/game.js index 96a577840..ed1565fc6 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -7,7 +7,7 @@ import skyAsset from '../assets/sky.png'; import starAsset from '../assets/star.png'; // Auxiliary classes -import MovingPlatform from '../movingPlatform'; +import PlatformManager from '../classes/platformManager'; export default class MainGame extends Phaser.Scene { constructor() { @@ -46,17 +46,17 @@ export default class MainGame extends Phaser.Scene { this.score += 1; item.disableBody(true, true); this.scoreText.text = this.score; - this.platforms.children.entries.forEach( platform => platform.increaseDifficulty(0.10) ); + this.platforms.increaseDifficulty(0.10); } addPlatforms() { - this.platforms = this.physics.add.group(); + this.platforms = new PlatformManager(this.physics.world, this.scene); for (let i = 0; i < 6; i += 1) { const y = 600 - (146 * i); // Start generating platforms at bottom const centerPlatform = i % 2 === 0; - const platform = new MovingPlatform(this, + const platform = this.platforms.newPlatform(this, centerPlatform, y, this.addItem.bind(this), @@ -65,7 +65,6 @@ export default class MainGame extends Phaser.Scene { isStatic: true, }); - this.platforms.add(platform); platform.scaleX = 0.5; platform.setupFriction(); platform.refreshBody(); @@ -179,9 +178,7 @@ export default class MainGame extends Phaser.Scene { movePlatforms() { if (this.player.y <= 300 && this.player.body.touching.down) { - this.platforms.children.entries.forEach(platform => { - platform.moveVertically(); - }); + this.platforms.moveVertically(); } } From c551f01105564935ad577cb94b80818687df3928 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 12:49:35 -0500 Subject: [PATCH 19/66] Reduced difficulty --- src/scenes/game.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scenes/game.js b/src/scenes/game.js index ed1565fc6..61f52d5cc 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -46,7 +46,7 @@ export default class MainGame extends Phaser.Scene { this.score += 1; item.disableBody(true, true); this.scoreText.text = this.score; - this.platforms.increaseDifficulty(0.10); + this.platforms.increaseDifficulty(0.07); } addPlatforms() { From 2fcc69a652f41e5b7a2474df3f6cc303d004ce3e Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 14:58:32 -0500 Subject: [PATCH 20/66] Removed unused package --- package-lock.json | 24 +++++------------------- package.json | 1 - 2 files changed, 5 insertions(+), 20 deletions(-) diff --git a/package-lock.json b/package-lock.json index 770e4e93d..5a6339480 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1892,6 +1892,7 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, "requires": { "file-uri-to-path": "1.0.0" } @@ -2851,14 +2852,6 @@ "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "dev": true }, - "dev": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/dev/-/dev-0.1.3.tgz", - "integrity": "sha1-if3AhwXg5+rvktAS4mdR5NdEMio=", - "requires": { - "inotify": ">= 0.1.6" - } - }, "diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", @@ -3847,7 +3840,8 @@ "file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true }, "fill-range": { "version": "4.0.0", @@ -4615,15 +4609,6 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "dev": true }, - "inotify": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/inotify/-/inotify-1.4.6.tgz", - "integrity": "sha512-WW8/uqIA04O3AePQVe/Ms3ZLR0yGamaz8YOEpaXc4WBAGOPZfzu58wWErEPSUYaPyDrJRIeCn6PEIQgC1ZyQ5w==", - "requires": { - "bindings": "^1.3.1", - "nan": "^2.12.1" - } - }, "inquirer": { "version": "7.3.2", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.2.tgz", @@ -5487,7 +5472,8 @@ "nan": { "version": "2.14.1", "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==" + "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "optional": true }, "nanomatch": { "version": "1.2.13", diff --git a/package.json b/package.json index ef4fa6532..e56e34fba 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,6 @@ }, "dependencies": { "clean-webpack-plugin": "^3.0.0", - "dev": "^0.1.3", "html-webpack-plugin": "^3.2.0", "phaser": "^3.20.1", "sass": "^1.26.10", From b80e11fd7628abc336433df1d9afbb4167c7acff Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 15:04:04 -0500 Subject: [PATCH 21/66] Reduced difficulty again & ignored dev file --- .gitignore | 4 ++++ src/scenes/game.js | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 2ec41903e..815caa053 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,7 @@ dist/ # Swap files *.swp + +# Dev build stylesheets +stylesheet.css +stylesheet.css.map diff --git a/src/scenes/game.js b/src/scenes/game.js index 61f52d5cc..29dca4288 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -46,7 +46,7 @@ export default class MainGame extends Phaser.Scene { this.score += 1; item.disableBody(true, true); this.scoreText.text = this.score; - this.platforms.increaseDifficulty(0.07); + this.platforms.increaseDifficulty(0.04); } addPlatforms() { From c370b01ac023283621e6a6331efde1a5be97f370 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 15:07:33 -0500 Subject: [PATCH 22/66] Changed resize method --- src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 6e61cc19e..5cd461887 100644 --- a/src/index.js +++ b/src/index.js @@ -10,7 +10,7 @@ const config = { scale: { width: 800, height: 600, - autoCenter: Phaser.Scale.CENTER_BOTH + autoCenter: Phaser.Scale.FIT; }, physics: { default: 'arcade', From 3b74556602c967642d44e8ec14aeeb85fce3199f Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 15:07:33 -0500 Subject: [PATCH 23/66] Changed resize method --- src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 6e61cc19e..ac9a73737 100644 --- a/src/index.js +++ b/src/index.js @@ -10,7 +10,7 @@ const config = { scale: { width: 800, height: 600, - autoCenter: Phaser.Scale.CENTER_BOTH + autoCenter: Phaser.Scale.FIT }, physics: { default: 'arcade', From bd6d20289804eac873a16d39a034c2608e1212ec Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 27 Jul 2020 15:16:44 -0500 Subject: [PATCH 24/66] Changed star spawn probability & resize --- src/classes/movingPlatform.js | 2 +- src/index.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/classes/movingPlatform.js b/src/classes/movingPlatform.js index 2a6f29667..55f3f9022 100644 --- a/src/classes/movingPlatform.js +++ b/src/classes/movingPlatform.js @@ -46,7 +46,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.addItem = addItem; this.START_ITEM_PROBABILIY = 0.3; - this.RESPAWN_ITEM_PROBABILIY = 0.9; + this.RESPAWN_ITEM_PROBABILIY = 0.6; this.handleItemAdd(this.START_ITEM_PROBABILIY); scene.add.existing(this); diff --git a/src/index.js b/src/index.js index ac9a73737..6e61cc19e 100644 --- a/src/index.js +++ b/src/index.js @@ -10,7 +10,7 @@ const config = { scale: { width: 800, height: 600, - autoCenter: Phaser.Scale.FIT + autoCenter: Phaser.Scale.CENTER_BOTH }, physics: { default: 'arcade', From f83f5236503c1fdcd1c26a7cf1617d4e52e9121c Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Wed, 29 Jul 2020 18:44:26 -0500 Subject: [PATCH 25/66] Changed webpack to handle sass files --- package-lock.json | 142 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 5 +- webpack/base.js | 24 ++++++++ 3 files changed, 169 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5a6339480..eb75a3707 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2689,6 +2689,41 @@ "randomfill": "^1.0.3" } }, + "css-loader": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-4.1.0.tgz", + "integrity": "sha512-oa8XGmieQF+dfTOpv89LQ2DxkBA+HABE2I8yq5xzf1ikKv6mcwkncFWCqVrgNc4rVsTBPrt5or1pW7u5WaNiKA==", + "dev": true, + "requires": { + "camelcase": "^6.0.0", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^2.0.0", + "normalize-path": "^3.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.3", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.0", + "semver": "^7.3.2" + }, + "dependencies": { + "camelcase": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz", + "integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==", + "dev": true + }, + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true + } + } + }, "css-select": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", @@ -2705,6 +2740,12 @@ "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", @@ -4519,6 +4560,15 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + } + }, "ieee754": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", @@ -4584,6 +4634,12 @@ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, "infer-owner": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", @@ -6118,6 +6174,86 @@ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" }, + "postcss": { + "version": "7.0.32", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", + "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "postcss-selector-parser": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", + "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", @@ -7735,6 +7871,12 @@ "set-value": "^2.0.1" } }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, "unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", diff --git a/package.json b/package.json index e56e34fba..a417e2d9b 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,8 @@ "description": "Simple open source platformer game", "main": "src/index.js", "scripts": { - "build": "webpack --config webpack/prod.js && sass ./src/style/main.scss:dist/stylesheet.css --style compressed", - "start": "sass ./src/style/main.scss:./stylesheet.css && webpack-dev-server --config webpack/base.js --open" + "build": "webpack --config webpack/prod.js", + "start": "webpack-dev-server --config webpack/base.js --open" }, "repository": { "type": "git", @@ -18,6 +18,7 @@ "@babel/core": "^7.7.2", "@babel/preset-env": "^7.7.1", "babel-loader": "^8.0.6", + "css-loader": "^4.1.0", "eslint": "^6.8.0", "eslint-config-airbnb-base": "^14.1.0", "eslint-plugin-import": "^2.20.2", diff --git a/webpack/base.js b/webpack/base.js index 2c01ea5e0..a8f256b96 100644 --- a/webpack/base.js +++ b/webpack/base.js @@ -8,6 +8,30 @@ module.exports = { devtool: 'eval-source-map', module: { rules: [ + { + test: /\.ttf$/, + use: { + loader: 'file-loader', + options: { + name: '[name].[ext]', + ouputPath: 'fonts/', + esModule: false, + }, + }, + }, + { + test: /\.s[ac]ss$/i, + use: [ + // Adds `style` nodes from JS strings + 'style-loader', + // Translates CSS into CommonJS + 'css-loader', + // Solves url loading issues with Sass + 'resolve-url-loader', + // Compiles Sass to CSS + 'sass-loader', + ], + }, { test: /\.js$/, exclude: /node_modules/, From 4e000447b003032c4f873d1d0d11aac4cc6a19af Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 30 Jul 2020 16:23:22 -0500 Subject: [PATCH 26/66] Added background scenes --- src/assets/Background/Back/front.png | Bin 0 -> 4623 bytes src/assets/Background/Back/front02.png | Bin 0 -> 2790 bytes .../Background/Clouds/Piskels/cloud_01.piskel | 1 + .../Background/Clouds/Piskels/cloud_02.piskel | 1 + .../Background/Clouds/Piskels/cloud_03.piskel | 1 + .../Background/Clouds/Piskels/cloud_04.piskel | 1 + .../Background/Clouds/Piskels/cloud_05.piskel | 1 + .../Background/Clouds/Piskels/cloud_06.piskel | 1 + .../Background/Clouds/Piskels/cloud_07.piskel | 1 + src/assets/Background/Clouds/cloud_01.png | Bin 0 -> 366 bytes src/assets/Background/Clouds/cloud_02.png | Bin 0 -> 435 bytes src/assets/Background/Clouds/cloud_03.png | Bin 0 -> 315 bytes src/assets/Background/Clouds/cloud_04.png | Bin 0 -> 306 bytes src/assets/Background/Clouds/cloud_05.png | Bin 0 -> 240 bytes src/assets/Background/Clouds/cloud_06.png | Bin 0 -> 204 bytes src/assets/Background/Clouds/cloud_07.png | Bin 0 -> 189 bytes .../Cowboy/Piskels/platform_01.piskel | 1 + .../Cowboy/Piskels/platform_02.piskel | 1 + .../Cowboy/Piskels/platform_03.piskel | 1 + .../Cowboy/Piskels/platform_04.piskel | 1 + .../Platforms/Cowboy/platform_01.png | Bin 0 -> 1197 bytes .../Platforms/Cowboy/platform_02.png | Bin 0 -> 1578 bytes .../Platforms/Cowboy/platform_03.png | Bin 0 -> 918 bytes .../Platforms/Cowboy/platform_04.png | Bin 0 -> 756 bytes .../Background/Sky/Piskels/sky_01.piskel | 1 + .../Background/Sky/Piskels/sky_02.piskel | 1 + .../Background/Sky/Piskels/sky_03.piskel | 1 + .../Background/Sky/Piskels/sky_04.piskel | 1 + src/assets/Background/Sky/bg_01.png | Bin 0 -> 10020 bytes src/assets/Background/Sky/bg_02.png | Bin 0 -> 9972 bytes src/assets/Background/Sky/bg_03.png | Bin 0 -> 9963 bytes src/assets/Background/Sky/bg_04.png | Bin 0 -> 9705 bytes src/assets/Background/Sky/sky.jpeg | Bin 0 -> 20976 bytes src/index.js | 6 +++ src/scenes/background.js | 42 ++++++++++++++++++ src/style/main.scss | 9 +++- 36 files changed, 71 insertions(+), 1 deletion(-) create mode 100755 src/assets/Background/Back/front.png create mode 100755 src/assets/Background/Back/front02.png create mode 100644 src/assets/Background/Clouds/Piskels/cloud_01.piskel create mode 100644 src/assets/Background/Clouds/Piskels/cloud_02.piskel create mode 100644 src/assets/Background/Clouds/Piskels/cloud_03.piskel create mode 100644 src/assets/Background/Clouds/Piskels/cloud_04.piskel create mode 100644 src/assets/Background/Clouds/Piskels/cloud_05.piskel create mode 100644 src/assets/Background/Clouds/Piskels/cloud_06.piskel create mode 100644 src/assets/Background/Clouds/Piskels/cloud_07.piskel create mode 100644 src/assets/Background/Clouds/cloud_01.png create mode 100644 src/assets/Background/Clouds/cloud_02.png create mode 100644 src/assets/Background/Clouds/cloud_03.png create mode 100644 src/assets/Background/Clouds/cloud_04.png create mode 100644 src/assets/Background/Clouds/cloud_05.png create mode 100644 src/assets/Background/Clouds/cloud_06.png create mode 100644 src/assets/Background/Clouds/cloud_07.png create mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_01.piskel create mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_02.piskel create mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_03.piskel create mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_04.piskel create mode 100644 src/assets/Background/Platforms/Cowboy/platform_01.png create mode 100644 src/assets/Background/Platforms/Cowboy/platform_02.png create mode 100644 src/assets/Background/Platforms/Cowboy/platform_03.png create mode 100644 src/assets/Background/Platforms/Cowboy/platform_04.png create mode 100644 src/assets/Background/Sky/Piskels/sky_01.piskel create mode 100644 src/assets/Background/Sky/Piskels/sky_02.piskel create mode 100644 src/assets/Background/Sky/Piskels/sky_03.piskel create mode 100644 src/assets/Background/Sky/Piskels/sky_04.piskel create mode 100644 src/assets/Background/Sky/bg_01.png create mode 100644 src/assets/Background/Sky/bg_02.png create mode 100644 src/assets/Background/Sky/bg_03.png create mode 100644 src/assets/Background/Sky/bg_04.png create mode 100644 src/assets/Background/Sky/sky.jpeg create mode 100644 src/scenes/background.js diff --git a/src/assets/Background/Back/front.png b/src/assets/Background/Back/front.png new file mode 100755 index 0000000000000000000000000000000000000000..fc8302a16d1e333db5b4a93814ac5228ef5e76f1 GIT binary patch literal 4623 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 mx5IFN#L|WB(|@0sj;qID$?|4n6>z#`)3 z5Vqh0!wF>#Z3XQBi$>?L0}{y%o3H(vP#2vxD?~tQdD9L@52gcYHFi_4e+b;}z4zAt zjwddxAKq9M=S!_;VPdc_-`aQ&Cf%E?-mfea0W0k5;=<}$Vv{#oUI`(LTU+*MX9 zcUJD1&*UV+u&wjwkp`xMne(rAvnHE2=x$uDR=}#jSdj3kVA`_%EG7CK3JelI11@IV zOUu$`*yZ=*_SYSL|EAU~>T3I_C&fQ=hX4Kv);s*ZMAt-Ldu1u?a5ng{qEc{eb9Tz= z_e~F2CU}`l-^J8$TBYda1ePaC=a;Tm!Q}j4+%P|0vC(S(17IjJc)I$ztaD0eVqgFO Do0pna literal 0 HcmV?d00001 diff --git a/src/assets/Background/Clouds/cloud_02.png b/src/assets/Background/Clouds/cloud_02.png new file mode 100644 index 0000000000000000000000000000000000000000..78e731c266149aa81a655a7c88fc49fad67d1b11 GIT binary patch literal 435 zcmV;k0ZjghP)D07As0O>%({ z4Z!E-X^a#AN~wO*oC3<|4tTV$>hpPbW;iy@PvRUKLNoxXfC~o@4+8+0#7~hQq5x3w z=j&CkR%>T9_*(!V9$*XwV9Zh(?En;y09-u*#=pz{u%0@F=86>gAsB$^*74vr2tEL8 zd17b?!2oRSuM2`S2e?2@4ghbSv$5!5(3@nle#!<)>;RuwPbD7qz1(ib9wO8k*#MA0 z<8lam-*0QNrmosZehhO=4)A>iO8?cLCkYL#9?1Yu2vF~FaNS?1=#X^?$_E1L0DAMZ z*88-;A!2;i(8|+a$HA}yuvy;cV5#Tgql){_>2R>>WF5e5KKJhhz}#;z_WZ>Gu>|M7 de(?_Y0)D2zAzgnZasU7T07*qoM6N<$f&hpbxefpT literal 0 HcmV?d00001 diff --git a/src/assets/Background/Clouds/cloud_03.png b/src/assets/Background/Clouds/cloud_03.png new file mode 100644 index 0000000000000000000000000000000000000000..a5af22ee44f27dd1b91b1c1cb191d45112eb9c4c GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^4nVBH!3HE3&8=%;U|?kMba4#Ha86Eek0S^Agi#i5}gb!pWTFhc~+YA?A$jxrNygl!KJL`s(v$PIgDf@Hk>VKV_9G)X9 zmWCY>ED>2L<~!3~{!M0aw)Bo`_WSD$=h)VAojdR8x5*p zO>(PP4s1F*`(fqWAa=pk_NT5-*UDSorFg`u%3zf=Z^J<1OrqV;5^C7#!oWy=yXy>4oI2=8NkD=QA-Z?lV!GaJOO&Fi03YUHx3v KIVChPFaQ9h8-9ua literal 0 HcmV?d00001 diff --git a/src/assets/Background/Clouds/cloud_04.png b/src/assets/Background/Clouds/cloud_04.png new file mode 100644 index 0000000000000000000000000000000000000000..dab2e1bc8635ccad3c414e56e28610f6361c52b9 GIT binary patch literal 306 zcmeAS@N?(olHy`uVBq!ia0vp^4nVBH!3HE3&8=$zQa?Ri978gklT#!fHWaq}o}XyK z;1+y?}0~v}Ivsm3WLj?jj6Hfj4`QNeZxr$no^1~lfS10US+GiH4+`4XB zqYcMr3!Mk8E-nXrTwPVC>{t-)aKV(Ji_VSH8XYz>G>B#`5!>|r{r%?b%J0v3=kRLlc$)T4 zsG7xcVAI*z2UV@MI!;-yfAy|+Df7y=nNhRNr5LvGJv^BAFM~_sjiF2S_ugd;QSBcR z%<3+WOlqm|?AR#fI7TvzXYbc`n|nWnkE?qc~TZ&kYy|44$rjF6*2UngBwB Bd&2+# literal 0 HcmV?d00001 diff --git a/src/assets/Background/Clouds/cloud_05.png b/src/assets/Background/Clouds/cloud_05.png new file mode 100644 index 0000000000000000000000000000000000000000..9f66f68e2dfada89ed8e4af0b79ac39c357684bb GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^4nVBH!3HE3&8=$zQrkRT978gk-%j1g+n^xglE`{E zN+%)xy~Vc@y#rClL`_6gBsy6?#@Bs1A9mty{eQo`#{ViFf3{{yVCoT0VC`XVkarAg z5H;`vVmXF?tRbNZ=YLxDA6|Q!=`*XKR`bjkQs zx3gDo_}8YuwSdPyX$PwsucOF;6CYk!voxr!^X=!nuuX7_yc&aV%xpQ~1-Z%@_C5@= nc9_|!Iox);PNBn_BM^oVGJ^?a@CgpMBS7IKWWM6mlSj!LBK!foq2F0;Xq7AH)|h zg*Z$&aQC-yQtaB+D5+gP^=|)s^m+G0fj&lwhsuZFF~vsKvm7Wds&6V_Ilz^9)s!J% zu1}aA&k3cqReWqK{M59?*-|Ek*|IZ-s861H`d))L!vq0EMV5t6fzD&_boFyt=akR{ E06&~aNdN!< literal 0 HcmV?d00001 diff --git a/src/assets/Background/Clouds/cloud_07.png b/src/assets/Background/Clouds/cloud_07.png new file mode 100644 index 0000000000000000000000000000000000000000..7fdbe3507773f570dcf40c757ea0d6d13f6714b1 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^4nVBH!3HE3&8=$zQca#Njv*P&Z>JvQJ)j_PI3b?x z1&3@yZS>c`mHq!@HPaep?AV`a*l+&x&zV6g!0!Op6z&Jg8LVp@EE%-}^cwazh%V47 zcvowC^LW$?p$Q+pe~SMh!ok9jdN+O@!=!DFXBIKCd|l$h>v4@qEXftveCNt14n?!ZUp_$BFnGH9xvXPInzHSEPo&Vv#vlp zldXJTcBJzQw!1$MgxSKm8S$z9+jI?mtA0)KO-ae|bg^w@*z8TXd}6rvLdB-$?t{;k zr_C?MP}k#r%GY(aIy+*?Mw|6yf&4u@5)M!Ir?rle1WdwZXDU#}EuH4{0wHQsD=y3WxBq+8qyz8F)P)i~EVSAua@-T6&+hh5`ZWA`d ztq6nyB$bWNMp2GjbqL#q$#p+xfnzLFfts*TikX^cOuoJ`sCDS_>#C(J0&#()CL8eoBr_*r>A)o~nB9pWP-8>7l?=5**{3^7IVN zIn_ElLg`LEn3~wHi57^@=CG}s z0ZIW=Y)p}2*1FN_EwUW3Lcw)?UCf5YtZkCFT)1<^i4sUIkWFrQOzaSTOv7Rf4%^xg zj5+-^-A#-F+4*r;EY9_<`%*W#sfwUWesgo0J6@Oe0iV+<1hnF zFi;T)005DoKx9CsBN)#jO>7&-%*8-uNS8Z>t84JEo@;Ng&6jF>wCIgVON(r&qK^EwB;-QN;nc;2Merabj0-4fQR^iy^dx z0a+L_q*NlQ`^AkA$cv9(i-)(CDwLW8A`kB^*#m~rQU*{Q+h0BxmshR}l=%DEgKx$5 z=0@$vlM4j9iHsaN33d$@NbP$%whmDs8z0^kYj@T~p78tn+LfVL5(uPjGRqkRy9fwm zW_qfeKTt4B^Rs1ae&t*DHjJk~)A0(rN2dj%&K~Oa$=#%FUmk{(THS3~hapFdkla(R zQAN@vaR4`!4uWK<^N5Z_c~Hk!zF-&fy-3r=lOukP7^#ar#6JiG=MMN>y?UV&M=Q*= z_w?RH?f*%i8}vusVucVySu?4{L*b_DHXsn3LE!V!^si2(WPOVz&mxeOI>5V*Vx3}w z!7>9H21Ultx59aom2D0HuZnPFyN+!z>{K}_=p3u4^1p7WtFQ0XABz%+a4 zzHO%jU>jzj%M6UnAT}Xz7wPg=GxiV$v_rZ{BrK2+ig`_!8TbzdYP^3Y;phSY0000< LMNUMnLSTXb3`95+ literal 0 HcmV?d00001 diff --git a/src/assets/Background/Platforms/Cowboy/platform_02.png b/src/assets/Background/Platforms/Cowboy/platform_02.png new file mode 100644 index 0000000000000000000000000000000000000000..02727b702315fb93923ca616d6c62c36ef5d9b97 GIT binary patch literal 1578 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 literal 0 HcmV?d00001 diff --git a/src/assets/Background/Sky/Piskels/sky_01.piskel b/src/assets/Background/Sky/Piskels/sky_01.piskel new file mode 100644 index 000000000..d41675926 --- /dev/null +++ b/src/assets/Background/Sky/Piskels/sky_01.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"cloud_07","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XMVEEURREUb5JLOAAEbgAA1SREpCvAhCwOoaqFXGTPmOg6595yT3PH1/Xk48AAQIECBAgQIAAAQKBwBEggbIJAgQIECBAgAABAgQeAgLEIRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAEC5+Xz58JAgAABAgQIECBAgACBQkCAFMo2CBAgQIAAAQIECBB4CAgQh0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCZwXr9vV7ZmiAABAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFjhvt99rWsDjCRAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBM773/3K1gwRIECAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIECEwLCJDp3+/xBAgQIECAAAECBFoBAdJ6WyNAgAABAgQIECAwLSBApn+/xxMgQIAAAQIECBBoBQRI622NAAECBAgQIECAwLSAAJn+/R5PgAABAgQIECBAoBUQIK23NQIECBAgQIAAAQLTAgJk+vd7PAECBAgQIECAAIFWQIC03tYIECBAgAABAgQITAsIkOnf7/EECBAgQIAAAQIEWgEB0npbI0CAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIE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\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/Piskels/sky_02.piskel b/src/assets/Background/Sky/Piskels/sky_02.piskel new file mode 100644 index 000000000..efd52e749 --- /dev/null +++ b/src/assets/Background/Sky/Piskels/sky_02.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"cloud_07","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XoU0oURRFUV4R0AElYCiAfE1CA2g6QCGRBPU1hQ4JRWxz1jRw8tZcs8/tv+frxkeAAAECBAgQIECAAIFA4AiQQNkEAQIECBAgQIAAAQJ/AgLEIRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAEC5+7l9cJAgAABAgQIECBAgACBQkCAFMo2CBAgQIAAAQIECBD4ExAgDoEAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTODcv71f2ZohAgQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBY4Dx9f17SAxxMgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJnMfP/1e2ZogAAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv5hTVjAAAAatSURBVN/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBc7T9881LeDxBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAwC8K0PElCgBVDAAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/Piskels/sky_03.piskel b/src/assets/Background/Sky/Piskels/sky_03.piskel new file mode 100644 index 000000000..00fbfcc74 --- /dev/null +++ b/src/assets/Background/Sky/Piskels/sky_03.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"sky_02","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XIU4EURRE0fmCSQCDQWBReCQaz/430ySziGvq9AYq//Qz99ye7tfNR4AAAQIECBAgQIAAgUDgCJBA2QQBAgQIECBAgAABAg8BAeIQCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAIFze369MBAgQIAAAQIECBAgQKAQECCFsg0CBAgQIECAAAECBB4CAsQhECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJnPP+cWVrhggQIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBa4Nw/v65pAY8nQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgEzgv3z9XtmaIAAECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAACTI6sIAAAalSURBVAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgXO2+/fNS3g8QQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgMA/qkwE94dCPGAAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/Piskels/sky_04.piskel b/src/assets/Background/Sky/Piskels/sky_04.piskel new file mode 100644 index 000000000..67dd3ea76 --- /dev/null +++ b/src/assets/Background/Sky/Piskels/sky_04.piskel @@ -0,0 +1 @@ +{"modelVersion":2,"piskel":{"name":"sky_03","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XsQ0AIAwEMVLA/huDxBBXOQu8ZKW5Wfvc5QgQIECAAAECBAgQIBAIjAAJlE0QIECAAAECBAgQIPAFBIhHIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHx+yDBoAAAWiSURBVCBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBB5lAXHnM/rNegAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/bg_01.png b/src/assets/Background/Sky/bg_01.png new file mode 100644 index 0000000000000000000000000000000000000000..90518ad6a455de912d3208aeafee7544df464e05 GIT binary patch literal 10020 zcmeAS@N?(olHy`uVBq!ia0y~yU{+vYV2a>i1B%QlYbs!1P+;(MaSW-5dwbn5kR?#W zC2*go&I1O)9SqDN6NM(MXA;<8)wW8saI#(Ug4gpaPuiZBkH0>-pMjByg+oBWp#jKf zJRqphxQP=Xz#_-QbVLy<3sN?LlVd{9EdeAwOhEw^mJcJVe0=`& z^YcUS@(;*pbaH4AIb{Z`Q-Gyn1qX*fJCYIyH3bKwEN6JN!vd5yAC-sK#G~Oenm$JJ z$7uP0C_;x@`B)IQKRa z;+SylwiLWaGwP7h5E)G)qq%0Z92qTH@z*sL`P=VjM;$<_Z3IrRuz0xTB2{aQjE~q5 z)%d9VX!wk#kJ0=AYmEY%rK9D;X!!{5t&G+WqxHjR{eZWAIQRSh-&5Ck5Pg0H16>7& zW%c`y3&V#2GFVwWUg!40OW6Zk8W?8&`zz-U9|l+;Dxk1-yD4HM;W86b%CGO$Hi%(> zFo%XM_pTw@Za&-`6JFkb{}C}B5yi-OsVZ6-K9Vr%kkJqs_%!k~{Am#b1KWMjS^#hk u7)`jNS$VW@8!hffE5Okv!LVs0{okakTK=VM?ndD1HwI5vKbLh*2~7YxGCL>$ literal 0 HcmV?d00001 diff --git a/src/assets/Background/Sky/bg_02.png b/src/assets/Background/Sky/bg_02.png new file mode 100644 index 0000000000000000000000000000000000000000..a4bedc1ebead4d7a8de5275f8674b54c096cbc03 GIT binary patch literal 9972 zcmeAS@N?(olHy`uVBq!ia0y~yU{+vYV2a>i1B%QlYbs!1P+;(MaSW-5dwYGMuSTGV zYhaw<1xD2bjfNUuC*}+*2gQjjUrk&2I9+p!ubC8lx)!tf{M-G{UmtUCU|?io;Sf-8 zXkch`c)&5i;U)`QfRU-5iRp+USP~*QfsmR5Y4CM)SvL z`7n~o$LH^!emw*)|3I~flS6~ZDKkiw0xlJQ2n#6iH6qnBJ`N2jSK5$N2q@&iN>Gpq zqw=HSGnzg|^9QI=3NArL%ZHIwK0dg!e{cNFS&Fcp2`~{XV`Vw<<^A^xgwWashRnTd z1>uQghM0iD<^A^`bHe*0TbP)ZeBI^-uUZnK92$K7*Y&Hz(v`vmE{+M;ZcBj^8Mq6S z$;fE*_qXjlcx~mNt>6%qpAGFIjXK1kVKhWW)5vJ987)UfcFAhNFCTw>OT%$tc>Oav z_%S*-I662wIyek(Ofmuo&qoKxN6SZ8|AX-0_?+YC|A%i&>wxz@7#c@AB%@ul(N61V zH-2i1B%QlYbs!1P+;(MaSW-5dwX5ck0nsV z<>JpKPljg4gun_Fsq_ELFRN_s$bR*OP3!*`RjRgV%3ay)XVU-F{RE~-1h$51b37i}gdTt3o)q_e-rX#$g@~}EYVKjV3 z)5mE37%d+VMd(N?ALo4jSD2dJhSaf`Ats=3dH?;#obY;L3lr0luiM<<{g;F&hX$Yj zb^Yq_a`XZh$AoLQrQr2UV#{-{GnLu53KjOLora%4o8tPk$k?_Zb6h*aA+CJS41+fvY40MO_cjfTq3-F|=HRQJJ0#PAtM3KNscVlx-`pj<-(Lm~61Jbch{ sG<-(W$7uc-Eg#@B5F@>OJYc`dhvj>_lT89}4I6`}tDnm{r-UX30Pe}d^#A|> literal 0 HcmV?d00001 diff --git a/src/assets/Background/Sky/bg_04.png b/src/assets/Background/Sky/bg_04.png new file mode 100644 index 0000000000000000000000000000000000000000..2282c871fec42b5fe36d2afe39811d0d91446dda GIT binary patch literal 9705 zcmeAS@N?(olHy`uVBq!ia0y~yU{+vYV2a>i1B%QlYbs!1P+;(MaSW-5dwYE&FM|RP zi($}#f6~oI1i~%3_oOV{8TtFpQw{+IhXw{lCKez=fTM?jbBZsL$Ol%I4tInC2L)jP z1<9?7VAT+9EFJQr@~{9L4WH5UF`7R{%ZJhO5nio~)(@lgBfNnzT0f4~kE8YDX#F@^ zKaSRq&|c$c`(U(vFxozV4#14Ik4D=^qwS;7_R(njXtaGa+CBo0s*ko0N85*^?ZeUb zA*4zioqrsie;u8FCUO2$-5YA2Uh~z8mOZ*=>6_sCN`h>K3Rw&q1MQA;=@b~-iWWz>68LnC z#Ks9Wt~-Ho(U1hLA9r+-DO7?)Los(2+9oJZQ0_$uM-5K4Ut3CY2#-kkK<4yXe#xh8 zD0K>Iaeo)|&^Q@Icx)Uap*xJWM_}woZ2J`sx*suX0tMLw8(WACuOl`s7?T8-KmZ5; z0U!VbfB+Bx0zd!=0D*}hK$LT8ZzzAy@Q+Mwz3vyEUZ3rq))wh$lW=F>Q3l(<wI`o=ENA$&eh@#v6P>C$AuTN{nYN&)VQ!6c_8_l$s6VPNN^9c4?^` zMnZ$i;7?WY;pPVTfPJC_hfOoz(SlAU6CmGQvnDhIS@=o0t>D+7-M#GhtNmt&AUo?8So7vVr_>G2yJW~d%>UBm3(CH|b4tsQ9hlLR zRdGD&nICS*^%ml%xm7hV4roC{_$nE>t=t!@`0 zi)c#;R$W-Q{J?h`=eZ#Zr7wbSK*F+B5X4<-veF^Zd<5{yi=vo)w(qO998KLE=+CQI z9iPYjtD&n=@kcM8S1^;%R>{>?b@n%*IwlFdWu0t`xk*nbv`MIMRCKNRV$%F6OGWb&)(JhzOD zd3p;YmfF?Veyyci{W)*_GCX( zmic^sqH{&DGbQD>w|D&{jzWL*F`-vxQ!7U!^C198?#kq0#o&rJWSS^WNCN`nAiz1p+i%BDU-+)H v`$W#=7A;>oe68exO^w(W_JBbP=-~2W%it@VQ#_8J1xN(~kDkDjy7T`4L6|YC literal 0 HcmV?d00001 diff --git a/src/index.js b/src/index.js index 6e61cc19e..f52d7969c 100644 --- a/src/index.js +++ b/src/index.js @@ -1,12 +1,17 @@ import Phaser from 'phaser'; +// Sass loading +import './style/main.scss'; + // Scenes +import BackgroundScene from './scenes/background'; import GameScene from './scenes/game'; import DeathScene from './scenes/death'; const config = { type: Phaser.AUTO, + antialias: false, scale: { width: 800, height: 600, @@ -19,6 +24,7 @@ const config = { }, }, scene: [ + BackgroundScene, GameScene, DeathScene ], diff --git a/src/scenes/background.js b/src/scenes/background.js new file mode 100644 index 000000000..ec84b9025 --- /dev/null +++ b/src/scenes/background.js @@ -0,0 +1,42 @@ +import Phaser from 'phaser'; + +// Importing assets +import skyAsset from '../assets/Background/Sky/sky.jpeg'; + +export default class Background extends Phaser.Scene { + constructor() { + super('background'); + } + + preload() { + this.load.image('sky', skyAsset); + + } + + scrollTo(targetPosition, onEnd = () => {}) { + const currentCameraPosition = this.cameras.main.scrollY; + this.tweens.addCounter({ + from: currentCameraPosition, + to: targetPosition, + duration: 2000, + ease: 'Power1', + onUpdate: (tween, target) => { + this.cameras.main.scrollY = target.value; + }, + onComplete: () => { onEnd() } + }); + } + + snapTo(targetPosition) { + this.cameras.main.scrollY = targetPosition; + } + + create() { + this.add.image(0, -2700, 'sky') + .setScale(1.5) + .setOrigin(0); + + this.snapTo(-2700); + this.scrollTo(0); + } +} diff --git a/src/style/main.scss b/src/style/main.scss index 88bba6dea..7b150d1d5 100644 --- a/src/style/main.scss +++ b/src/style/main.scss @@ -2,5 +2,12 @@ html, body { width: 100vw; height: 100vh; margin: 0; - background-color: #000; + font-family: "Alagard"; +} + +@font-face { + font-family: "Alagard"; + src: url("../assets/Fonts/alagard.ttf") format("truetype"); + font-weight: 400; + font-style: normal; } From fb438bde9a950b04e81853989aa37ba9e78787e0 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 30 Jul 2020 16:25:30 -0500 Subject: [PATCH 27/66] Fixed indent --- src/scenes/game.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/scenes/game.js b/src/scenes/game.js index 29dca4288..800975cc7 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -109,10 +109,9 @@ export default class MainGame extends Phaser.Scene { // Collectibles logic this.addItems(); - // Adding Platforms this.addPlatforms() - + // Adding Player this.addPlayer(); From 89131bb878e939005e87b14a9d57027f4feb27e4 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 30 Jul 2020 17:09:55 -0500 Subject: [PATCH 28/66] Added title scene --- src/assets/Fonts/alagard.ttf | Bin 0 -> 13544 bytes src/assets/general/Title.png | Bin 0 -> 43392 bytes src/index.js | 2 + src/scenes/background.js | 3 +- src/scenes/game.js | 2 +- src/scenes/title.js | 103 +++++++++++++++++++++++++++++++++++ 6 files changed, 108 insertions(+), 2 deletions(-) create mode 100644 src/assets/Fonts/alagard.ttf create mode 100644 src/assets/general/Title.png create mode 100644 src/scenes/title.js diff --git a/src/assets/Fonts/alagard.ttf b/src/assets/Fonts/alagard.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c7ed1d91950f994bd6c71efba69332a0459d26e4 GIT binary patch literal 13544 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 literal 0 HcmV?d00001 diff --git a/src/assets/general/Title.png b/src/assets/general/Title.png new file mode 100644 index 0000000000000000000000000000000000000000..6a94d9d5a054ccd998440c86642e80312708d8c1 GIT binary patch literal 43392 zcmeFZXH*k=+ddi#8x@u9M#LV=R%{R(A|i|pu@aT7C@m@~N{fPm)Ul%=Mz;kOBnoO& zgouE2Mx`k&6s1Fy7D9_5z0BNa*zbDRI_J~>JRkmRJs9M9`MqVyHeJz&7cWqdg^W(GTjhFWp`LeYdsY$NdWHZMaGrSoXgL_W#?G|244xEE4@|VEN^F{L6#=hjHa!1N+Yn?ANSP43vE$R3n}-+sMp7&G_rQ9QFPwqyrTR`vvub zzezcm60$=t;0yfb|AcT?Vch`tP96gGT&+_D2G@S+@bsr5k~ZQ?R<04VXXmDS{V4{lKVx$Zm>+ zeifT&hd%iTIqEV{gx1%^5mEtgTXlQrsQ7=sP&?-7i5|zXpr6&9XN{Ff z7c;u<2?*Emsodg>TZgq$-m zUt?rs*LNe&eF#L3gX`D~4=}+wnZJPGL#wNg&+a=!UyowY{zDa#SKIP<9?swI^MuDu zLYwHzGhW8ZV>_{r1pAzHW@u@Xnj@%4S}bteGJ9zQn7wJ!3}n=xrbLXC&a^HXcM7KA z{CYp>SbiPCGVDQyk1L*|kL=%rA~ZCZuDnK^;vFG;YMq}s+rR3XIsk)<*U3fv8U!s{ z?XXD3O!)-PAiVL z`THclw-$$5ouR9v9luN2eFjph$jQA5k=?i#T+T~P0hM)%JMNhuR%zTB_##cd0Xlja zkuqBut(oIK9Z-3sRWrI9EZBQe;eg#mqU0M|X}m>B$DcW0_9gl>EiCtAh{f#nII3oQ67^2-wcenIuds1{4^pS0JokQZlrt)=96fgwgQOfhE%H{Io5;8o zhNLBC!5xCv@o8EKgjiws?Mnp_{jg5XxMkQC@{GEIomjMgfUoA6wIh8{9|zTJLbdJ% zPHl&?b!&}};E>q|ekv-#1_3mOe$7!wF-#X9J>POHkVeSWHAV1|=D4+@YVL z+SeMb13bSRnHaPn_4ZC87S`sMY z=q+A&H^26`FT#=eul4U4$!k%)UQOVMu)}Zsk67Z0gzrA-8xdpy|oiN^O{IfLRi){ z8UMwl5T&1IABuVPm7ur~W7^;zDG4&rk6bS~=OhFKrE$6NBUbKyLgP6?Eqi78KwtHWo-3Vl;}X-h~sgz zS;0!j(TIT>g6BBtmouD-Rg%%rIm$?ghTxuVw!7gqbyv#KIQyqyA>(ym#~}UuihaH8IW8%5pJFP?Wo^=GA*(b!w(JYa@rg zt0>NA%5B~PA>Vö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

G)HE?PpnXJB5#@#H>^6bNG?8J4{ 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 P&(CHD_htO(eD(hTThZKf literal 0 HcmV?d00001 diff --git a/src/index.js b/src/index.js index f52d7969c..159a07403 100644 --- a/src/index.js +++ b/src/index.js @@ -8,6 +8,7 @@ import './style/main.scss'; import BackgroundScene from './scenes/background'; import GameScene from './scenes/game'; import DeathScene from './scenes/death'; +import TitleScene from './scenes/title'; const config = { type: Phaser.AUTO, @@ -25,6 +26,7 @@ const config = { }, scene: [ BackgroundScene, + TitleScene, GameScene, DeathScene ], diff --git a/src/scenes/background.js b/src/scenes/background.js index ec84b9025..c41e663c4 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -37,6 +37,7 @@ export default class Background extends Phaser.Scene { .setOrigin(0); this.snapTo(-2700); - this.scrollTo(0); + const launchScene = () => { this.scene.launch('titleScene') }; + this.scrollTo(0, launchScene); } } diff --git a/src/scenes/game.js b/src/scenes/game.js index 800975cc7..20ca22c8f 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -11,7 +11,7 @@ import PlatformManager from '../classes/platformManager'; export default class MainGame extends Phaser.Scene { constructor() { - super("game"); + super('game'); } preload() { diff --git a/src/scenes/title.js b/src/scenes/title.js new file mode 100644 index 000000000..a1231592b --- /dev/null +++ b/src/scenes/title.js @@ -0,0 +1,103 @@ +import Phaser from 'phaser'; + +// Importing Assets +import titleAsset from '../assets/general/Title.png'; + +export default class Title extends Phaser.Scene { + constructor() { + super('titleScene'); + } + + preload() { + this.load.spritesheet('title', titleAsset, + { frameWidth: 128, frameHeight: 128 } ); + } + + addTitle() { + this.title = this.add.sprite(400, 200, 'title').setScale(4.5); + this.fadeIn(this.title); + + // Title animation + this.anims.create({ + key: 'still', + frames: [{ key: 'title', frame: 0 }], + frameRate: 20, + }); + + this.anims.create({ + key: 'shine', + frames: this.anims.generateFrameNumbers('title', { start: 1, end: 60 }), + frameRate: 60 + }); + + this.tweens.addCounter({ from: 0, to: 1, duration: 3000, + loop: -1, + loopDelay: 4000, + onLoop: () => { + this.title.anims.play('shine', true); + this.title.anims.nextAnim = 'still'; + } + }); + } + + addPlayTitle() { + const stylingOptions = { + fontFamily: 'Alagard', + fontSize: '29px', + color: '#333', + }; + + const enterHover = () => { + this.playTitle.setStyle({ color: '#000' }); + } + + const exitHover = () => { + this.playTitle.setStyle({ color: '#333' }); + } + + this.playTitle = this.add.text(370, 470, `Play`, stylingOptions); + this.fadeIn(this.playTitle); + + this.playTitle.setInteractive({ cursor: 'pointer' }) + .on('pointerover', () => { enterHover() }) + .on('pointerout', () => { exitHover() }); + } + + addCreditsTitle() { + const stylingOptions = { + fontFamily: 'Alagard', + fontSize: '22px', + color: '#333', + }; + + const enterHover = () => { + this.playCredits.setStyle({ color: '#000' }); + } + + const exitHover = () => { + this.playCredits.setStyle({ color: '#333' }); + } + + this.playCredits = this.add.text(365, 502, `Credits`, stylingOptions); + this.fadeIn(this.playCredits); + + this.playCredits.setInteractive({ cursor: 'pointer' }) + .on('pointerover', () => { enterHover() }) + .on('pointerout', () => { exitHover() }); + } + + fadeIn(element) { + element.alpha = 0; + this.tweens.add({ + targets: element, + alpha: 1, + duration: 1500 + }); + } + + create() { + this.addTitle(); + this.addPlayTitle(); + this.addCreditsTitle(); + } +} From 05fe9cbbcfca636ac3009eddf1323324ea1b4c08 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 31 Jul 2020 09:31:28 -0500 Subject: [PATCH 29/66] Added moving clouds --- src/scenes/background.js | 80 ++++++++++++++++++++++++++++++++++++++-- src/scenes/game.js | 1 - 2 files changed, 77 insertions(+), 4 deletions(-) diff --git a/src/scenes/background.js b/src/scenes/background.js index c41e663c4..c293b21f0 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -2,6 +2,13 @@ import Phaser from 'phaser'; // Importing assets import skyAsset from '../assets/Background/Sky/sky.jpeg'; +import cloudAsset01 from '../assets/Background/Clouds/cloud_01.png'; +import cloudAsset02 from '../assets/Background/Clouds/cloud_02.png'; +import cloudAsset03 from '../assets/Background/Clouds/cloud_03.png'; +import cloudAsset04 from '../assets/Background/Clouds/cloud_04.png'; +import cloudAsset05 from '../assets/Background/Clouds/cloud_05.png'; +import cloudAsset06 from '../assets/Background/Clouds/cloud_06.png'; +import cloudAsset07 from '../assets/Background/Clouds/cloud_07.png'; export default class Background extends Phaser.Scene { constructor() { @@ -10,7 +17,13 @@ export default class Background extends Phaser.Scene { preload() { this.load.image('sky', skyAsset); - + this.load.image('cloud01', cloudAsset01); + this.load.image('cloud02', cloudAsset02); + this.load.image('cloud03', cloudAsset03); + this.load.image('cloud04', cloudAsset04); + this.load.image('cloud05', cloudAsset05); + this.load.image('cloud06', cloudAsset06); + this.load.image('cloud07', cloudAsset07); } scrollTo(targetPosition, onEnd = () => {}) { @@ -31,13 +44,74 @@ export default class Background extends Phaser.Scene { this.cameras.main.scrollY = targetPosition; } + spawnClouds() { + const MIN_X = 0; + const MAX_X = 1000; + const MIN_Y = -100; + const MAX_Y = 250; + const MIN_SCALE = 1; + const MAX_SCALE = 3; + const MIN_DX = 12; + const MAX_DX = 20; + + this.frontClouds = this.add.group(); + this.middleClouds = this.add.group(); + this.backClouds = this.add.group(); + + const addCloud = (index, x, y, scale, dx) => { + const cloud = this.add.image(x, y, `cloud0${index}`). + setScale(scale); + cloud.moveX = dx; + + if (index < 4) { + this.frontClouds.add(cloud); + } else if (index < 6) { + this.middleClouds.add(cloud); + } else { + this.backClouds.add(cloud); + } + } + + for (let i = 15; i >= 1; i -= 1) { + const x = Phaser.Math.Between(MIN_X, MAX_X); + const y = Phaser.Math.Between(MIN_Y, MAX_Y); + const scale = Phaser.Math.Between(MIN_SCALE, MAX_SCALE); + const index = Phaser.Math.Between(1, 7); + const dx = Phaser.Math.Between(MIN_DX, MAX_DX) / 100; + + addCloud(index, x, y, scale, dx); + } + } + + moveClouds() { + const getChildren = (group) => group.children.entries; + + const moveCloudGroup = (group, move) => { + getChildren(group).forEach( cloud => { + if (cloud.x < -100) cloud.x = 900 // Re-spawns the cloud + cloud.x -= cloud.moveX + } ); + } + + moveCloudGroup(this.frontClouds, 0.25); + moveCloudGroup(this.middleClouds, 0.05); + moveCloudGroup(this.backClouds, 0.035); + } + create() { this.add.image(0, -2700, 'sky') .setScale(1.5) .setOrigin(0); + + this.spawnClouds(); this.snapTo(-2700); - const launchScene = () => { this.scene.launch('titleScene') }; - this.scrollTo(0, launchScene); + + const launchTitleScene = () => { this.scene.launch('titleScene') }; + this.scrollTo(0, launchTitleScene); + } + + update() { + this.moveClouds(); } } diff --git a/src/scenes/game.js b/src/scenes/game.js index 20ca22c8f..a64ff4c0e 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -15,7 +15,6 @@ export default class MainGame extends Phaser.Scene { } preload() { - this.load.image('sky', skyAsset); this.load.image('platform', platformAsset); this.load.image('star', starAsset); this.load.spritesheet('dude', From 2503e5021c64040119646c350dd9f385df45d9ff Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 31 Jul 2020 10:03:58 -0500 Subject: [PATCH 30/66] Added background mountains & moved title text accordingly --- src/scenes/background.js | 22 ++++++++++++++++++++++ src/scenes/title.js | 4 ++-- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/scenes/background.js b/src/scenes/background.js index c293b21f0..f40b9b136 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -2,6 +2,9 @@ import Phaser from 'phaser'; // Importing assets import skyAsset from '../assets/Background/Sky/sky.jpeg'; +import mountainAsset01 from '../assets/Background/Back/front.png'; +import mountainAsset02 from '../assets/Background/Back/front02.png'; + import cloudAsset01 from '../assets/Background/Clouds/cloud_01.png'; import cloudAsset02 from '../assets/Background/Clouds/cloud_02.png'; import cloudAsset03 from '../assets/Background/Clouds/cloud_03.png'; @@ -17,6 +20,8 @@ export default class Background extends Phaser.Scene { preload() { this.load.image('sky', skyAsset); + this.load.image('mountain01', mountainAsset01); + this.load.image('mountain02', mountainAsset02); this.load.image('cloud01', cloudAsset01); this.load.image('cloud02', cloudAsset02); this.load.image('cloud03', cloudAsset03); @@ -83,6 +88,21 @@ export default class Background extends Phaser.Scene { } } + addMountains() { + this.mountainsBack = this.add.tileSprite(0, 400, 800, 200, 'mountain01') + .setScale(3, 1) + .setOrigin(0); + + this.mountainsFront = this.add.tileSprite(0, 500, 800, 100, 'mountain02') + .setScale(2, 1) + .setOrigin(0); + } + + moveMountains() { + this.mountainsBack.tilePositionX += 0.02; + this.mountainsFront.tilePositionX += 0.15; + } + moveClouds() { const getChildren = (group) => group.children.entries; @@ -103,6 +123,7 @@ export default class Background extends Phaser.Scene { .setScale(1.5) .setOrigin(0); + this.addMountains(); this.spawnClouds(); this.snapTo(-2700); @@ -113,5 +134,6 @@ export default class Background extends Phaser.Scene { update() { this.moveClouds(); + this.moveMountains(); } } diff --git a/src/scenes/title.js b/src/scenes/title.js index a1231592b..28060d9b4 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -55,7 +55,7 @@ export default class Title extends Phaser.Scene { this.playTitle.setStyle({ color: '#333' }); } - this.playTitle = this.add.text(370, 470, `Play`, stylingOptions); + this.playTitle = this.add.text(370, 400, `Play`, stylingOptions); this.fadeIn(this.playTitle); this.playTitle.setInteractive({ cursor: 'pointer' }) @@ -78,7 +78,7 @@ export default class Title extends Phaser.Scene { this.playCredits.setStyle({ color: '#333' }); } - this.playCredits = this.add.text(365, 502, `Credits`, stylingOptions); + this.playCredits = this.add.text(365, 432, `Credits`, stylingOptions); this.fadeIn(this.playCredits); this.playCredits.setInteractive({ cursor: 'pointer' }) From 9a9cd1ec4d0f9b83ee513c00d0871ce1dced4404 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 31 Jul 2020 12:51:44 -0500 Subject: [PATCH 31/66] Added background scrolling & death handle --- src/classes/movingPlatform.js | 7 +------ src/index.js | 2 +- src/scenes/background.js | 39 +++++++++++++++++++++++++++++++---- src/scenes/game.js | 14 +++++++------ src/scenes/title.js | 30 ++++++++++++++++++++------- 5 files changed, 67 insertions(+), 25 deletions(-) diff --git a/src/classes/movingPlatform.js b/src/classes/movingPlatform.js index 55f3f9022..983f47f77 100644 --- a/src/classes/movingPlatform.js +++ b/src/classes/movingPlatform.js @@ -42,7 +42,6 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.centerPlatform = centerPlatform; this.startY = y; - this.isMovingVertically = false; this.addItem = addItem; this.START_ITEM_PROBABILIY = 0.3; @@ -61,16 +60,12 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { } moveVertically() { - if (this.isMovingVertically) return; - - this.isMovingVertically = true; this.runningTween = this.scene.tweens.addCounter({ from: 0, to: 1000, duration: 13000, onUpdate: (tween, target) => { - const { scrollY } = this.scene.cameras.main; - const y = this.startY + target.value + scrollY; + const y = this.startY + target.value; const dy = y - this.y; this.body.velocity.y = dy; this.refreshBody(); diff --git a/src/index.js b/src/index.js index 159a07403..a4897ca92 100644 --- a/src/index.js +++ b/src/index.js @@ -11,7 +11,7 @@ import DeathScene from './scenes/death'; import TitleScene from './scenes/title'; const config = { - type: Phaser.AUTO, + type: Phaser.CANVAS, antialias: false, scale: { width: 800, diff --git a/src/scenes/background.js b/src/scenes/background.js index f40b9b136..343947561 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -16,6 +16,8 @@ import cloudAsset07 from '../assets/Background/Clouds/cloud_07.png'; export default class Background extends Phaser.Scene { constructor() { super('background'); + + this.fakeScroll = 0; } preload() { @@ -31,12 +33,12 @@ export default class Background extends Phaser.Scene { this.load.image('cloud07', cloudAsset07); } - scrollTo(targetPosition, onEnd = () => {}) { + scrollTo(targetPosition, duration, onEnd = () => {}) { const currentCameraPosition = this.cameras.main.scrollY; this.tweens.addCounter({ from: currentCameraPosition, to: targetPosition, - duration: 2000, + duration: duration, ease: 'Power1', onUpdate: (tween, target) => { this.cameras.main.scrollY = target.value; @@ -103,6 +105,30 @@ export default class Background extends Phaser.Scene { this.mountainsFront.tilePositionX += 0.15; } + startBackgroundMove() { + this.runningTween = this.tweens.addCounter({ + from: 0, + to: -2700, + duration: 200000, + onUpdate: (tween, target) => { + this.cameras.main.scrollY = target.value; + } + }); + } + + handleDeath() { + this.runningTween.stop(); + this.scrollTo(0, 3000); + this.cameras.main.fadeOut(3500); + } + + increaseDifficulty(step) { + if (!this.runningTween) return + + const newTimeScale = this.runningTween.timeScale + step; + this.runningTween.setTimeScale(newTimeScale); + } + moveClouds() { const getChildren = (group) => group.children.entries; @@ -118,6 +144,10 @@ export default class Background extends Phaser.Scene { moveCloudGroup(this.backClouds, 0.035); } + scrollCameraTo(scrollPosition) { + this.cameras.main.scrollY = scrollPosition; + } + create() { this.add.image(0, -2700, 'sky') .setScale(1.5) @@ -128,8 +158,9 @@ export default class Background extends Phaser.Scene { this.snapTo(-2700); - const launchTitleScene = () => { this.scene.launch('titleScene') }; - this.scrollTo(0, launchTitleScene); + const launchTitleScene = () => this.scene.launch('titleScene'); + + this.scrollTo(0, 2000, launchTitleScene); } update() { diff --git a/src/scenes/game.js b/src/scenes/game.js index a64ff4c0e..61949a7f9 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -3,13 +3,13 @@ import Phaser from 'phaser'; // Assets import dudeAsset from '../assets/dude.png'; import platformAsset from '../assets/platform.png'; -import skyAsset from '../assets/sky.png'; import starAsset from '../assets/star.png'; // Auxiliary classes import PlatformManager from '../classes/platformManager'; export default class MainGame extends Phaser.Scene { + constructor() { super('game'); } @@ -46,6 +46,7 @@ export default class MainGame extends Phaser.Scene { item.disableBody(true, true); this.scoreText.text = this.score; this.platforms.increaseDifficulty(0.04); + this.backgroundScene.increaseDifficulty(0.04); } addPlatforms() { @@ -101,10 +102,6 @@ export default class MainGame extends Phaser.Scene { } create() { - // Adding Background - this.add.image(400, 300, 'sky') - .setScrollFactor(1, 0); - // Collectibles logic this.addItems(); @@ -122,6 +119,9 @@ export default class MainGame extends Phaser.Scene { // Setting up Camera this.camera = this.cameras.main; + + // Setting up backgroundScene + this.backgroundScene = this.scene.get('background'); } handleScrollDeath() { @@ -175,8 +175,10 @@ export default class MainGame extends Phaser.Scene { } movePlatforms() { - if (this.player.y <= 300 && this.player.body.touching.down) { + if (this.player.y <= 300 && this.player.body.touching.down && !this.isMoving) { + this.isMoving = true; this.platforms.moveVertically(); + this.backgroundScene.startBackgroundMove(); } } diff --git a/src/scenes/title.js b/src/scenes/title.js index 28060d9b4..9b08e70d9 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -4,6 +4,9 @@ import Phaser from 'phaser'; import titleAsset from '../assets/general/Title.png'; export default class Title extends Phaser.Scene { + init(data) { + this.backgroundScene = data.backgroundScene; + } constructor() { super('titleScene'); } @@ -15,7 +18,7 @@ export default class Title extends Phaser.Scene { addTitle() { this.title = this.add.sprite(400, 200, 'title').setScale(4.5); - this.fadeIn(this.title); + this.fade(this.title, 0, 1); // Title animation this.anims.create({ @@ -47,6 +50,11 @@ export default class Title extends Phaser.Scene { color: '#333', }; + const click = () => { + this.scene.launch('game'); + this.scene.remove(this); + } + const enterHover = () => { this.playTitle.setStyle({ color: '#000' }); } @@ -56,9 +64,10 @@ export default class Title extends Phaser.Scene { } this.playTitle = this.add.text(370, 400, `Play`, stylingOptions); - this.fadeIn(this.playTitle); + this.fade(this.playTitle, 0, 1); this.playTitle.setInteractive({ cursor: 'pointer' }) + .on('pointerdown', () => { click() }) .on('pointerover', () => { enterHover() }) .on('pointerout', () => { exitHover() }); } @@ -79,22 +88,27 @@ export default class Title extends Phaser.Scene { } this.playCredits = this.add.text(365, 432, `Credits`, stylingOptions); - this.fadeIn(this.playCredits); + this.fade(this.playCredits, 0, 1); this.playCredits.setInteractive({ cursor: 'pointer' }) .on('pointerover', () => { enterHover() }) .on('pointerout', () => { exitHover() }); } - fadeIn(element) { - element.alpha = 0; - this.tweens.add({ + fade(element, from, to, onEnd = () => {}) { + element.alpha = from, + this.tweens.add({ targets: element, - alpha: 1, - duration: 1500 + alpha: to, + duration: 1500, + onComplete: () => { onEnd() } }); } + fadeIn(element) { + element.alpha = 0; + } + create() { this.addTitle(); this.addPlayTitle(); From 79cf61243cc1d94c5cdca551b75e6b361d9296fd Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 31 Jul 2020 16:09:04 -0500 Subject: [PATCH 32/66] Added transitions for title scene --- src/scenes/background.js | 15 ++++++++++---- src/scenes/death.js | 33 +++++++++++++++++++++++++++-- src/scenes/title.js | 45 +++++++++++++++++++++++++++------------- 3 files changed, 73 insertions(+), 20 deletions(-) diff --git a/src/scenes/background.js b/src/scenes/background.js index 343947561..74a5c57b0 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -54,7 +54,7 @@ export default class Background extends Phaser.Scene { spawnClouds() { const MIN_X = 0; const MAX_X = 1000; - const MIN_Y = -100; + const MIN_Y = -400; const MAX_Y = 250; const MIN_SCALE = 1; const MAX_SCALE = 3; @@ -117,8 +117,11 @@ export default class Background extends Phaser.Scene { } handleDeath() { - this.runningTween.stop(); - this.scrollTo(0, 3000); + if(this.runningTween) { + this.runningTween.stop(); + this.scrollTo(0, 3000); + } + this.cameras.main.fadeOut(3500); } @@ -144,6 +147,10 @@ export default class Background extends Phaser.Scene { moveCloudGroup(this.backClouds, 0.035); } + startGame() { + this.scrollTo(0, 2000); + } + scrollCameraTo(scrollPosition) { this.cameras.main.scrollY = scrollPosition; } @@ -160,7 +167,7 @@ export default class Background extends Phaser.Scene { const launchTitleScene = () => this.scene.launch('titleScene'); - this.scrollTo(0, 2000, launchTitleScene); + this.scrollTo(-300, 2000, launchTitleScene); } update() { diff --git a/src/scenes/death.js b/src/scenes/death.js index c5be78f22..cda8bc7db 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -13,9 +13,38 @@ export default class DeathScene extends Phaser.Scene { preload() { } + addMessage() { + const stylingOptions = { + fontFamily: 'Alagard', + fontSize: '29px', + color: '#fff', + }; + + this.add.text(20, 20, `You died with ${this.score} items`, stylingOptions); + this.add.text(20, 60, "I'm ... dissapointed", stylingOptions); + } + + addReplay() { + const stylingOptions = { + fontFamily: 'Alagard', + fontSize: '32px', + color: '#fff', + }; + + + this.replayText = this.add.text(0, 300, 'Replay', stylingOptions); + this.centerTextHorizontally(this.replayText); + } + + centerTextHorizontally(text) { + text.x = (this.game.config.width / 2) - (text.width / 2); + } + + create() { - this.add.text(20, 20, `You died with ${this.score} items`); - this.add.text(20, 60, "I'm ... dissapointed"); + this.addMessage(); + this.addReplay(); + this.scene.get('background').handleDeath(); } update() { diff --git a/src/scenes/title.js b/src/scenes/title.js index 9b08e70d9..86f991e3c 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -4,9 +4,7 @@ import Phaser from 'phaser'; import titleAsset from '../assets/general/Title.png'; export default class Title extends Phaser.Scene { - init(data) { - this.backgroundScene = data.backgroundScene; - } + constructor() { super('titleScene'); } @@ -18,7 +16,6 @@ export default class Title extends Phaser.Scene { addTitle() { this.title = this.add.sprite(400, 200, 'title').setScale(4.5); - this.fade(this.title, 0, 1); // Title animation this.anims.create({ @@ -43,6 +40,27 @@ export default class Title extends Phaser.Scene { }); } + centerHorizontally(text) { + text.x = (this.game.config.width / 2) - (text.width / 2); + } + + fadeInElements() { + this.fade(this.playTitle, 0, 1); + this.fade(this.playCredits, 0, 1); + this.fade(this.title, 0, 1); + } + + fadeOutElements() { + this.fade(this.playTitle, 1, 0); + this.fade(this.playCredits, 1, 0); + this.fade(this.title, 1, 0); + } + + startGame() { + this.scene.launch('game'); + this.scene.remove(this); + } + addPlayTitle() { const stylingOptions = { fontFamily: 'Alagard', @@ -51,8 +69,8 @@ export default class Title extends Phaser.Scene { }; const click = () => { - this.scene.launch('game'); - this.scene.remove(this); + this.fadeOutElements(); + this.backgroundScene.scrollTo(0, 2000, this.startGame.bind(this)); } const enterHover = () => { @@ -63,8 +81,8 @@ export default class Title extends Phaser.Scene { this.playTitle.setStyle({ color: '#333' }); } - this.playTitle = this.add.text(370, 400, `Play`, stylingOptions); - this.fade(this.playTitle, 0, 1); + this.playTitle = this.add.text(0, 400, `Play`, stylingOptions); + this.centerHorizontally(this.playTitle); this.playTitle.setInteractive({ cursor: 'pointer' }) .on('pointerdown', () => { click() }) @@ -87,8 +105,8 @@ export default class Title extends Phaser.Scene { this.playCredits.setStyle({ color: '#333' }); } - this.playCredits = this.add.text(365, 432, `Credits`, stylingOptions); - this.fade(this.playCredits, 0, 1); + this.playCredits = this.add.text(0, 432, `Credits`, stylingOptions); + this.centerHorizontally(this.playCredits); this.playCredits.setInteractive({ cursor: 'pointer' }) .on('pointerover', () => { enterHover() }) @@ -105,13 +123,12 @@ export default class Title extends Phaser.Scene { }); } - fadeIn(element) { - element.alpha = 0; - } - create() { + this.backgroundScene = this.scene.get('background'); + this.addTitle(); this.addPlayTitle(); this.addCreditsTitle(); + this.fadeInElements(); } } From a0c8b66f2b1e2f3b60e01a1d6c4fe43ba4662d8d Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Fri, 31 Jul 2020 18:21:26 -0500 Subject: [PATCH 33/66] Added character selection and added replay functionality --- src/assets/Characters/Cowboy/selection.png | Bin 0 -> 7239 bytes src/index.js | 2 + src/scenes/background.js | 8 ++- src/scenes/characterSelection.js | 73 +++++++++++++++++++++ src/scenes/death.js | 37 +++++++++-- src/scenes/game.js | 5 +- src/scenes/title.js | 5 +- 7 files changed, 120 insertions(+), 10 deletions(-) create mode 100644 src/assets/Characters/Cowboy/selection.png create mode 100644 src/scenes/characterSelection.js diff --git a/src/assets/Characters/Cowboy/selection.png b/src/assets/Characters/Cowboy/selection.png new file mode 100644 index 0000000000000000000000000000000000000000..c041079d8246df1b7912fd0b40306076c806dbd6 GIT binary patch literal 7239 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 SNva0B%h>3`$wC8a {}) { + element.alpha = from, + this.tweens.add({ + targets: element, + alpha: to, + duration: 1000, + onComplete: () => { onEnd() } + }); + } + + fadeOutElements(onEnd = () => {}) { + this.fade(this.cowboyImage, 1, 0, onEnd); + this.fade(this.selectText, 1, 0); + } + + startGame() { + this.fadeOutElements(() => { + this.backgroundScene.scrollTo(0, 2000, () => { + this.scene.launch('game'); + this.scene.stop(); + }); + }); + } + + addCowboySelection() { + this.cowboyImage = this.add.image(0, 0, 'selection') + .setScale(2); + this.centerAroundVertically(this.cowboyImage); + this.centerAroundHorizontally(this.cowboyImage, 2); + + this.cowboyImage.setInteractive({ cursor: 'pointer' }) + .on('pointerdown', () => { this.startGame() }); + } + + create() { + this.backgroundScene = this.scene.get('background'); + + this.addText(); + this.addCowboySelection(); + } +} diff --git a/src/scenes/death.js b/src/scenes/death.js index cda8bc7db..4e43c5a45 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -24,6 +24,27 @@ export default class DeathScene extends Phaser.Scene { this.add.text(20, 60, "I'm ... dissapointed", stylingOptions); } + replay() { + const backgroundCamera = this.backgroundScene.cameras.main; + + const onFadeInBackgroundEnd = () => { + this.scene.start('characterSelection'); + } + + const fadeInBackground = () => { + this.backgroundScene.titleScreenPosition(); + + this.scene.stop(); + backgroundCamera.fadeIn(2000); + backgroundCamera.on('camerafadeincomplete', () => { onFadeInBackgroundEnd() }); + } + + const camera = this.cameras.main; + + camera.fadeOut(); + camera.on('camerafadeoutcomplete', () => { fadeInBackground() }); + } + addReplay() { const stylingOptions = { fontFamily: 'Alagard', @@ -31,20 +52,26 @@ export default class DeathScene extends Phaser.Scene { color: '#fff', }; - - this.replayText = this.add.text(0, 300, 'Replay', stylingOptions); + this.replayText = this.add.text(0, 550, 'Replay', stylingOptions); + this.replayText.setInteractive({ cursor: 'pointer'}) + .on('pointerdown', () => { this.replay() }); this.centerTextHorizontally(this.replayText); } + handleDeath() { + this.backgroundScene.handleDeath(); + + this.addReplay(); + } + centerTextHorizontally(text) { text.x = (this.game.config.width / 2) - (text.width / 2); } - create() { + this.backgroundScene = this.scene.get('background'); this.addMessage(); - this.addReplay(); - this.scene.get('background').handleDeath(); + this.handleDeath(); } update() { diff --git a/src/scenes/game.js b/src/scenes/game.js index 61949a7f9..ad84b752a 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -122,14 +122,17 @@ export default class MainGame extends Phaser.Scene { // Setting up backgroundScene this.backgroundScene = this.scene.get('background'); + + // Setting up movement + this.isMoving = false; } handleScrollDeath() { - this.scene.pause(); this.scene.start('death', { endingX: this.player.x, score: this.score, }); + this.scene.stop(); } checkScrollDeath() { diff --git a/src/scenes/title.js b/src/scenes/title.js index 86f991e3c..328297f57 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -4,7 +4,6 @@ import Phaser from 'phaser'; import titleAsset from '../assets/general/Title.png'; export default class Title extends Phaser.Scene { - constructor() { super('titleScene'); } @@ -57,7 +56,7 @@ export default class Title extends Phaser.Scene { } startGame() { - this.scene.launch('game'); + this.scene.launch('characterSelection'); this.scene.remove(this); } @@ -70,7 +69,7 @@ export default class Title extends Phaser.Scene { const click = () => { this.fadeOutElements(); - this.backgroundScene.scrollTo(0, 2000, this.startGame.bind(this)); + this.startGame(); } const enterHover = () => { From 96cda3bb3be7c2beef029646ad2466d582e95116 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 17:20:28 -0500 Subject: [PATCH 34/66] Fixed back mountains tiling problem --- src/assets/Background/Back/front.png | Bin 4623 -> 10395 bytes src/assets/Background/Back/front02.png | Bin 2790 -> 4311 bytes src/scenes/background.js | 2 -- 3 files changed, 2 deletions(-) mode change 100755 => 100644 src/assets/Background/Back/front.png mode change 100755 => 100644 src/assets/Background/Back/front02.png diff --git a/src/assets/Background/Back/front.png b/src/assets/Background/Back/front.png old mode 100755 new mode 100644 index fc8302a16d1e333db5b4a93814ac5228ef5e76f1..481662fd5236d5dc2473e303db1fe86860dcad76 GIT binary patch literal 10395 zcmeHNYdBQ-A3t-NsbeG~McajG)z(s@5=~3fNNqJOvKfY1Qrpr-Oewcfov9V+B3+~g zY3UA06egDqq(i0bCdY)-37+8rb_Bwp3+Ol z-H|DryLvqJ&J?jQs4nguH+ z4{u-xcNlc?cQw=XzASk#5V7vdRw~mx zq5{e^E5J?J%?h-pBn<^JQ*yK7Y*dnlk~9=Dpd<~23@AxMAp`#!X^0MiS$!SZ)w54` zzb?!oTzxMK4(m%ieCm%Y6G&jzM@-M(afjbKhn0nz z6BN!7QR0rrc%N@aTDg>vOQ=Q19qhLTs4Ir0fCHKZ8E`*K;v64VSmcW^gQ~ehYVnAc zZ>zIt0)?83gqm6v(+bxZ|m-=aTWUqE3 z)qZUCIhOUwSOG+IkABMbZoJA9hlEC{Z@wL{Wc(yF;_)!w;>!9L^>LK}`R|{43S&4S z@_dxy7|o7xVR7-1P0PAyNh?b0o0;p!x4~V6hi4aA>b8Q{Y*RMsHib$ox5=wWS0%Fd zSN847DGW?B)py+D{?ey)_xR5=kS0!~?-{A?m!k$=eoBmPk1n#{H~UGG^5oGzX1NCgt|j+$ld^E2P9W6fsJ==~b`cXTQJs zN*)1mCZmeC<{8F^*s`uduP)my$85CKMOZF*nZ;yS6aW@5-*wt@W$ljEUZWn& z;<19%s4QM{eqvKNljpupxO|(Wt@cHgq`+#e#W`N5>&Q~BH~};N`YN4KI9Gh5@^vGrNym*R)?;+cTL>Qx%W{A&sSsDE z6!+A4rM54U2cs&G%vs(jGgT$(Ruvy{%VkF8Zx~q^9gNtZT-^;VW=B7D*L_#Tt$cEk z4`%g#kX835NHToAveM?DxLz~;Ve)WyMcu3mz5=bBdc{C z0cBPvT5OQ`qWCNQgZ3sC+J7cI6pD!z9c$K4O*pqtLquu0*QqHWi_B}l$0zMSJoF^D zL-J-8;L6fvq3Rk8&!}5A1rgGYM-&Az!ILFNQNE|T*z7hwoUtn7(SphVX6)jKoep`=@a`-=7JE=3|LVpL@<&|BT<~x`gZ!1*?W1xL@@{EJc)dm(tgpSrApHCS;AM zd$R^3$uErOP@pO>F!ice+o{dC<$E;PY+mBNt2RLVroWBQCbJpDNM75~?RAZ(sT%lJ zM^R9SlQ|4a_cZG;YV(?+FMsAnJQ?pK67CL|me9XNo~nspLg|1e>{P5X33eBVQh7rS=m?yJ*ac$ruma`#xXG|c1mwxYP}x*|C$z1AZ2 z{_=T`rX}-x;=cnogM^KZY9QJb$0&%pp(;&!=zq9R$6=v@MJ878vzXVyd9YKopd9Ip zpXic;qLR2jfYS0F%3*YjR_m1h)een-Zu)MzTMZj4XndK{_T-!7^RRdAhWuqqbISNY zA`YX9X;A&|+)5zu8yF32;v;GS#kYN3K28Ns9(bKRPp~ zuztbx&M~Yg-=-?9Y538~P*scJuOT+uhV&8z<@WU3irqHXF;T4j7zK;2nvC^p>6^L1 zc!<(TepLKC!Ff@i;?CqG5bc{Kg$_SEyM}dQj}ZyZ6Alm9Izly z`$WKk;f7&NLHV-pPaXJ9qa%8usgH9`lmL=`s(iBl-f46oBOSUYH6|?h^zMtb3oJ;< z-Ybk0-GGhK^38_=JWr6s7!A*!0#(Q*dQHbv5d8oz$-cZloFLKL&Yb2%NTK^*kfZ4! zCd$j3>GswgB3@5=x|uqpnx0|AK{tJix>e+V5D^jCBPS17Ste+dz;Y4$%H+G_-`Klk5{^E-h z*vUyc>Bx=LPfE!G6BQiX9$vbW4PRr!!Q0Kc-e!A5u3t53rgry$?LH zFu*{>tW`*as{%AN@r*?hi%UZDSSNBl2N?qc_`}6G&;4tfz3HORnAZg}wawlZ~B?w4)9pC5M>9f?(y|TS0 zzA*?Vv*7b~sPu1D%pl0NY{sA!ayksyA-s7VU|FDauX>!*014fnwbcq9?A@7HdDjGN z0{aNXgOf7_f;{+3{axKqEKYPrlF#6Qw_u<&=7_y93cQH@AfQ&v(OtApmOs#~$WeZ? z7$*01p-in-U#$!|?B1zB2NPZtcZ8yEJu}@a`{d1K#GA{R{sX-*P=TQ?8G?Z}1RZpO z=k#G8-Wd{9I0RpaTC3iG8NGPW=x96J7vo{-NPZf!KF)?$h{%0KzYPooIj(XY1{QK5 z7g?M)`2$*U9AhKTA!j1d2CB}U)at-C@}#*@JTOEXCkpkt0ggOzbSj2UzC9Bs;#^o` zs2Iw`JKI2z*0$VsB4a~P`cw@nvYOgni%7yR*noE?0|pO*u%m1!My7BpmV*3KVHgmT znSYEhR8H!4)C9&xxo3+oEEO49lUW@EwI2fN4_f-8Y)sIPEPZ6PzQ1&)LMRjOR5tgR z&QUh^n9fl)_ZYA#nR^U{E17#V`Lq5-<~~3n=m7v^EB`IP=&_+>aV3k7$$*l@$7Dds z;$t$PWbrW>_%B&p$=steFow63`g;s-{iphybqq*1wYQgq{u74$hX)99~a3so-3_w8X zMt3{$fO?D3x29zjSr`0z_8(9i6q;^)QBLWc*O>1jB?nflj9RjW1I& zW${5kAbzQYLyBM!#g)PxO@?dD>|X$6vhz5B3_SVEI2TIs1p}|8RpIw1?Do*9mkAQf z4g_26=s{>`JlNa#3vvrOC14|<9A!Uf)7AcNacp`O&-s~i@TOzMlxFn_6^Y5@Gp58O zNEr2pEd0E+C19KNSGj#=veR}K(FaglKE2;oL8~)+NN&s5>{)NX(@C=n}!!4Xx>YfWr$Ozy~9+M?? z*XnLGkRt(k@131W$UdxWxrX?-JI}AE$}`5o zt4vUup~tS3qI|YeD%s5G9B%*8b3({jz>NOepd+*M?Y&pK)Ep=$GM8|^7SG(n#Prm{ z5-EKAB&F>q!{}>ajNSBv50IiKzo$7=$2OM4%oG8UhAY1w_f zt#J~?dul{2@@$|#;? zGj%)c{&Ouf&X9b__>r!+YN2(q$+EBYsxH;irJ`z-{nmTed0xF71f;_|LKustxQMml z$!99i^u*fQdql4kbu`C^nmZvkaOf|l1S@I2?3~XJ1!6pNeU5I( zT#f@EMFj-HM9mK-o^@%|T**~0Tetca##8{)h4Hikj=W{-^Y5^-DK%yHPikES_VdL2 zJYc&!PwtN^J3pqtqR5feXgcXJUG;uHR@wTY+aM7NPce8rt9H0aP1#G7@hPsqk!wtw zo4>pg$s}93nQ<7A6KS3)$C`@s%2yj1-cLux{63PPepb&&69QtO5vDEH=DukR0&n2U z;c!o8B@h}8yDG6hFxVEa*b_Vwd~I6<6{hLWTp<*-%Oj|R-^%r; zZim7>McXaUwvI(Lr~Epz5Egwf=GLiUT^-DoW{K!}(>iJ2WY-oX(UrBbRL0>h>EE#s z1;p$lEyE@+BZ@sb&L*Ib?7=SUmbAxR|E{CvyF%j9MQ6LCAk-Un8&7y9y{_;>#JV;y ztmv+Mpkc!Z+7#OX%e(gyS^4Ru?!YCn$?QE12>7>xDYv;S!JYjecphn)G>6Y>xYj{-qoF6GcQ8A{ez;!H-n&mfH zFPHRnIOLBH$bKjqWj8R_p{_eaK9<)!!LjXu zna7NyUg3IZeQb?J5^-X0Ur$`(|9AECwGajrdyda307 zh#yBo^m{~*$0s3QJblWC0GS$})vx=w22D@H)rw&{(eAUhjW+ZC*g0g8%zY*$4!HL^@vX|f5|)ugQhq3`HSpR z+gU!a8NwYEPRuq7ge#{}RE!ie3lcJ3RI`+-dO~BRPr$s1C(oEWzNhX@-DoLD=W|bI zXqpfITvQTUTLHU4%>qx<)+`jQNJr3>K7+O9dP59)>qK!+I?DpA7x8u5$A=EK*}bc8 zX=}84^MJ0c-KmWtcT~ELX3ECf;QdCYjg$^O*K@e(pa4hNT8_vBeq;2#t_Vk6*8lMv zi_IqH8#Xri*{qF?PTA~>P2Jek%>Shxt|21Ek8FuhG!`K-n{kc{qlbB<@~O5?sHxDeP7rA`v1>;qVX0+d^|gN z007`KF*Y~?09zrB?Sb0Lx%R*PTmt}LhKYf$b)d^c&!ISHLvSlYJo+&z+R)r58d=VN zd?@8cti4PCLta`s1CvTr%X&5))H^vgSrp$fKQ~BCYoGt9I?4QOL;_%N1Pa7J8x3QH zGueJRcl9?u|Mq6J5Qzx?u`dR~WRd_mXOokce-<7jjs9ffP3IrhV>4mjr)3jiKWN%b zko-S@M1?nWk)2$YT&Ky1IkwC$d{N9?Sr{s%#T4suJBdvh1@*nu;QsIG@>Z?Tpt-%V~DOf{^2rCR;hD2bl2Rs># z^8Oe#5EWkW&q|361nrta9}UTM+bNJ0_%ZBt>%={cLrTN`h%5vGlX>5b73I?bo0?Bv zIaSnH77_lcM}vED-v*in<;xe@RyU3^gK&LOefLx!)R#ooW;@X3r(-)yf+3bRc#02l zNwUHG?w+@V-QYZBnln~|PqZBkTj}h!0^1xr0>wE~AF?@@5GFA@4A(7gMYJR5O{~d9xV;f?pf5Wa|CDXca!U}TD}F}d6$=xmI?xV?amID zFq?4VJO;Ri^!Y1L74Z0h|DW4Ft@_sb05YhCuAcJ--zoGgclD*TG6manPB|>C?&;K} z&?9@>o^?{X5Efh*{u{n6Hg%ngu-ag7rb6Jel#I>FzQ6A0(nn`!-#&WQ?iKz7`{uXx zn$a`hc@dV)w~pJ`aQ0AUc%R!K_es-y3H`n2|?sYC3v^wXW-Xh5@Qi6R&+TBbEn6IF12i@`)KYYUbD%vA6%Hz!bDs#zjo zBfYPccrBhTre}WrW+?v`X<&kC{T%BB62qGJ2V26gwu;ni)d6yUgcZJVW^(z@K|{9_ zBCmQocIzn!Pd!v~v$ELpVf5hJOVixeQu1G6uuXVsDHKzC>jk$&ShgebX~=+5Vw!Iz zVI&UlD8&{yn|DN2n}RZ+$x`8Q_W{&rR?nlZDyW~mAXNAmUh|SyCr3ylwnXp?F!Yg# zUHYHQEg0rx7p6^Kbxm{ZwPWu6HU7px1#VaJv0)0=X&N--nYW;WOIm5)O(U1k2L*Mf ztcrF`<~H-`P<&a*eP6q|3puBfRvQ0TIs#RRz8s$ILz}!a7#M#@`R?3ES(Xkwfi_;- zJ7%OsqH;+SVr4K6la|B=Bon!lkd6-A<1jfHBN-4U(U&5{Fe(U*`;xR2bH><{Hov8E zNjRsePeeqFIV&^0YA!Ct4U9RVNgqqDw`w3x1OdFbQW}LZl-5%`aBl~`vOk`lMrQv_lud&PWC=Wfv?e1+AOE1 zA=cS-iB===K)$6`Y%m`4Vv8;Q_hLrmHFpam9d$y^?W$AcXITjmOzDK-3~$fDOQFgp zgKNA={)EIit2L>*UqqlXL@3KH!&+nZ&l-a#QBYiGb0L=3Iw*n1v{d~Fjp0FabuTN5 zjMtK0(T;)={YMLEQZv7u%U1sq$RB>kWp8HBMGkBebaTc+I$FCuBL*CYHPIxA3H$7E zB?kFZh8@1GurEA({?Q$>k(2>->n?b#Hru;H9g$(zJg&BQ@E)$qUVg1@4k(mAH*CAz zw;;^9b>R)ncBCp-^sb<4G-oCo zm6$%XJ^P`a=ZG*!Y;+K#%0MJ&KiRgr#3KI%=wjO0?G5L$^lkMPC#IKS3O=j!djn{>MBR8MV1uAZDXhlR`kqD^d z-5}kouL^SZf%5b}EQ?o12}&Gpj}+BgkMJL&2PJS0U#M=iue)Dg)fa}~APvgkjKAzY m{L}GG|IPgUPxzs)xaD5YWUTDH$@yIYm>60ZlIy&ya)II literal 2790 zcmeH}dpuNI8^`xdqxQJ95lUy+nn5nTym6+)Xg4mAICAZVk=zx{NDk2+sl%a0H_|C8 z98IXHY0{LCq|~@1igGWhPA-v=``Je{-ap^}-ap=d_GhhUJ?mM&{j6uL^-Xee+$bll zCJg|9oSm(eGXN}rvG#6oA@+^i;>rO4=|VfJ4X#mMy{)xZf3jY(s3YcqgVn&LKKB9K zLHSoF1v|Vc9aI?&JBY8aLWz`-a=~nP#C3mTx?jC#-dMg%>##2&D{Dd%K>-||075W= zBB^C8Cz9Vxd)7EWK?Cu#!~dAd34~Om;3M-~Amr)e4;w0Zf+HLGXfB^-4o~f*Z|II@jv=!Es!>h zCT!8Sn(HGd3S3?^Pco~(;SNxcPAi(nl^CTw_LD;83T0s&MMnB9G^#3$`Pu>51 zH5BU&Oy%{j7sF!%JsMRH<3@&JdS31>6dK-2WnJeq&+TwIAzJE~Aq{Z^gc_DGF(mo@ z5kl(woQ0Ix5)tV`q}A$n4GF1lZb+TnSU)r|z8aSkY1~LH{WB|%Tb(dddY=uPVzkwK zJYwX{&hh!piDx$F|9Tgwk8x=XMcda;3|}2vTsjfCuKyO5srAYojFR&k7`KhM?zBj|yTOk>>lxwDmZ= z7M@@7!amdQNDQ+kG`Chi@pKjKjlpO*SB|8NOsJhKJxcChJD#cJXcNhKO#nrD;o<}1 z1=j>an`r#TmkL&c1gTW>>%VyPP+1X>Q1txJIX51U6t->hVZ<$+;uJIL=}SatsWxwH z{NU2io^oM8QT@kn;@m1C9ORhg=~iDsrYFMAygO%#CdS@Ad;Av^Rx)kcQSCr0)vZRWeGe;p!Fvli z$zISz=7xmduSuqPh=vJb706udHLcLj-SNe-Gha z9+3Ae5VYw8xpA()9`^J0eeZ?Omj*TRuZ2#rss}H;?q05iz8m=vaKOr>z{$D9wlKbO zQkK9O{5h$~SeO5%TPtfvui%n{XMWYl4iL zY!$dI=i#b@eoJgRnD;0nv@2Vj#aO+Ke6~gfPp?#YRxGkSK4y^%9JlBJVcq=G;ngCC zG^5z`34Nnz%k7C&Jb5IWQSUEzjNajn4Ad>Y2Y#K1tB$BtK-Bg})E*5ov3>|H+c8r1 zfu?shv^7rM!V+nEQpVI}pOOY)In}*iae1BD20u4!PCBI9WUZmi)R56irk;2_b{P%7 zWC}ueKoCAQ4i660M}2xGrxRsRlw+x}a#xrP#WH>C7kNB><04l}#jV(r_>q^Wu;`5Z z3ya>=_{yO4y;Vs?Ez|g_=v7@vN!z*T6?np+6e0B>KgVplI{l>dUginjjVij~*R$E} zQgqQbf5ml`*V)S;*eD$Z>VKu#XjrUU@6|LAzY*hu!-VKkeZq;GN0il{wzOEI0Q(h2 z7UImNy<{e{?B&J55|rTTko4v`UtGDZ-AS}yY72A5@C{$Do) zu0^r?!HH5wt^i5a_MO_;UFC|s;BE)~*7QR*2`M+*!c}KqZ^nKcZg-tDM^>}^!9{D2 zv^j_71$d4Uh2)gAt2P`g#gVZQhDh0BxC{Uz-Yy`dELbDnLRw z$a##K0tyvpe-q1RFSa+mJAfZ^0QOoeZ#CPsB;@r*287=f0f5A^52Ls9f=v<>x~&Q! mx5IFN#L|WB(|@0sj Date: Sat, 1 Aug 2020 17:44:17 -0500 Subject: [PATCH 35/66] Added utils scene and moved repeted logic --- src/classes/sceneUtils.js | 29 +++++++++++++++++++++++++++ src/scenes/characterSelection.js | 34 ++++++++++++-------------------- src/scenes/death.js | 7 ++----- src/scenes/game.js | 1 - src/scenes/title.js | 21 ++++---------------- 5 files changed, 48 insertions(+), 44 deletions(-) create mode 100644 src/classes/sceneUtils.js diff --git a/src/classes/sceneUtils.js b/src/classes/sceneUtils.js new file mode 100644 index 000000000..cda658554 --- /dev/null +++ b/src/classes/sceneUtils.js @@ -0,0 +1,29 @@ +import Phaser from 'phaser'; + +export default class Scene extends Phaser.Scene { + constructor(sceneKey) { + super(sceneKey); + } + + centerTextHorizontally(textElement) { + textElement.x = (this.game.config.width / 2) - (textElement.width / 2); + } + + centerImageHorizontally(image) { + image.x = this.game.config.width / 2; + } + + centerImageVertically(image) { + image.y = this.game.config.height / 2; + } + + fade(element, from, to, duration = 1500, onEnd = () => {}) { + element.alpha = from, + this.tweens.add({ + targets: element, + alpha: to, + duration: 1500, + onComplete: () => { onEnd() } + }); + } +} diff --git a/src/scenes/characterSelection.js b/src/scenes/characterSelection.js index fc3f83967..58267cc60 100644 --- a/src/scenes/characterSelection.js +++ b/src/scenes/characterSelection.js @@ -1,9 +1,10 @@ import Phaser from 'phaser'; +import Scene from '../classes/sceneUtils' // Importing Assets import cowboySelection from '../assets/Characters/Cowboy/selection.png'; -export default class CharacterSelection extends Phaser.Scene { +export default class CharacterSelection extends Scene { constructor() { super('characterSelection'); } @@ -12,14 +13,6 @@ export default class CharacterSelection extends Phaser.Scene { this.load.image('selection', cowboySelection); } - centerAroundHorizontally(element, divider = 2) { - element.x = this.game.config.width / divider; - } - - centerAroundVertically(element, divider = 2) { - element.y = this.game.config.height / divider; - } - addText() { const stylingOptions = { fontFamily: 'Alagard', @@ -27,21 +20,17 @@ export default class CharacterSelection extends Phaser.Scene { color: '#000', }; this.selectText = this.add.text(200, 80, 'Select your character', stylingOptions); - this.selectText.x = (this.game.config.width / 2) - (this.selectText.width / 2); + + this.centerTextHorizontally(this.selectText); } - fade(element, from, to, onEnd = () => {}) { - element.alpha = from, - this.tweens.add({ - targets: element, - alpha: to, - duration: 1000, - onComplete: () => { onEnd() } - }); + fadeInElements() { + this.fade(this.selectText, 0, 1, 100); + this.fade(this.cowboyImage, 0, 1, 100); } fadeOutElements(onEnd = () => {}) { - this.fade(this.cowboyImage, 1, 0, onEnd); + this.fade(this.cowboyImage, 1, 0, 1500, onEnd); this.fade(this.selectText, 1, 0); } @@ -57,8 +46,8 @@ export default class CharacterSelection extends Phaser.Scene { addCowboySelection() { this.cowboyImage = this.add.image(0, 0, 'selection') .setScale(2); - this.centerAroundVertically(this.cowboyImage); - this.centerAroundHorizontally(this.cowboyImage, 2); + this.centerImageVertically(this.cowboyImage); + this.centerImageHorizontally(this.cowboyImage); this.cowboyImage.setInteractive({ cursor: 'pointer' }) .on('pointerdown', () => { this.startGame() }); @@ -69,5 +58,8 @@ export default class CharacterSelection extends Phaser.Scene { this.addText(); this.addCowboySelection(); + + // Adds fade transition + this.fadeInElements(); } } diff --git a/src/scenes/death.js b/src/scenes/death.js index 4e43c5a45..eb95fdf7a 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -1,6 +1,7 @@ import Phaser from 'phaser'; +import Scene from '../classes/sceneUtils'; -export default class DeathScene extends Phaser.Scene { +export default class DeathScene extends Scene { init(data) { this.endingX = data.endingX; this.score = data.score; @@ -64,10 +65,6 @@ export default class DeathScene extends Phaser.Scene { this.addReplay(); } - centerTextHorizontally(text) { - text.x = (this.game.config.width / 2) - (text.width / 2); - } - create() { this.backgroundScene = this.scene.get('background'); this.addMessage(); diff --git a/src/scenes/game.js b/src/scenes/game.js index ad84b752a..6cb85dc9a 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -9,7 +9,6 @@ import starAsset from '../assets/star.png'; import PlatformManager from '../classes/platformManager'; export default class MainGame extends Phaser.Scene { - constructor() { super('game'); } diff --git a/src/scenes/title.js b/src/scenes/title.js index 328297f57..c74ee2b66 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -1,9 +1,10 @@ import Phaser from 'phaser'; +import Scene from '../classes/sceneUtils'; // Importing Assets import titleAsset from '../assets/general/Title.png'; -export default class Title extends Phaser.Scene { +export default class Title extends Scene { constructor() { super('titleScene'); } @@ -39,10 +40,6 @@ export default class Title extends Phaser.Scene { }); } - centerHorizontally(text) { - text.x = (this.game.config.width / 2) - (text.width / 2); - } - fadeInElements() { this.fade(this.playTitle, 0, 1); this.fade(this.playCredits, 0, 1); @@ -81,7 +78,7 @@ export default class Title extends Phaser.Scene { } this.playTitle = this.add.text(0, 400, `Play`, stylingOptions); - this.centerHorizontally(this.playTitle); + this.centerTextHorizontally(this.playTitle); this.playTitle.setInteractive({ cursor: 'pointer' }) .on('pointerdown', () => { click() }) @@ -105,23 +102,13 @@ export default class Title extends Phaser.Scene { } this.playCredits = this.add.text(0, 432, `Credits`, stylingOptions); - this.centerHorizontally(this.playCredits); + this.centerTextHorizontally(this.playCredits); this.playCredits.setInteractive({ cursor: 'pointer' }) .on('pointerover', () => { enterHover() }) .on('pointerout', () => { exitHover() }); } - fade(element, from, to, onEnd = () => {}) { - element.alpha = from, - this.tweens.add({ - targets: element, - alpha: to, - duration: 1500, - onComplete: () => { onEnd() } - }); - } - create() { this.backgroundScene = this.scene.get('background'); From a92090a709c62194fa98373a877d0cdb8cb69ae4 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 18:19:18 -0500 Subject: [PATCH 36/66] Fixed fade duration bug --- src/classes/sceneUtils.js | 2 +- src/scenes/characterSelection.js | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/classes/sceneUtils.js b/src/classes/sceneUtils.js index cda658554..02c3140cd 100644 --- a/src/classes/sceneUtils.js +++ b/src/classes/sceneUtils.js @@ -22,7 +22,7 @@ export default class Scene extends Phaser.Scene { this.tweens.add({ targets: element, alpha: to, - duration: 1500, + duration, onComplete: () => { onEnd() } }); } diff --git a/src/scenes/characterSelection.js b/src/scenes/characterSelection.js index 58267cc60..4de23cfa6 100644 --- a/src/scenes/characterSelection.js +++ b/src/scenes/characterSelection.js @@ -25,13 +25,13 @@ export default class CharacterSelection extends Scene { } fadeInElements() { - this.fade(this.selectText, 0, 1, 100); - this.fade(this.cowboyImage, 0, 1, 100); + this.fade(this.selectText, 0, 1, 700); + this.fade(this.cowboyImage, 0, 1, 700); } fadeOutElements(onEnd = () => {}) { - this.fade(this.cowboyImage, 1, 0, 1500, onEnd); - this.fade(this.selectText, 1, 0); + this.fade(this.cowboyImage, 1, 0, 700, onEnd); + this.fade(this.selectText, 1, 0, 700); } startGame() { From 1b4916b8287ae6405e2faf24f9b450af1fa007bd Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 18:19:44 -0500 Subject: [PATCH 37/66] Added falling animation --- src/assets/Characters/Cowboy/falling.png | Bin 0 -> 1707 bytes src/scenes/death.js | 45 +++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 src/assets/Characters/Cowboy/falling.png diff --git a/src/assets/Characters/Cowboy/falling.png b/src/assets/Characters/Cowboy/falling.png new file mode 100644 index 0000000000000000000000000000000000000000..92ed3967e539e78e8fe43ae6211e6c2ae4a221ac GIT binary patch literal 1707 zcmV;c22}ZpP)>8D5apk7C8yMAG8rW^`L&Bwsd9xBzJ=OUkxvjE!ME@wQl)a?T9qqBZBk|CXF&WF z0dPSqzy&~kJ~sA@Xg=WW+lS?XkPibcFaQR?02t`Pz@ZB&K*0bQ00UrPfB{1Un_%FN zpAIK8kiVW!!_U`~EI)icHP@&aiy4Qx%vf5F!R6x9SLEm>1X^hjs^UI952wTRr3&U~ zGjhBhRe6)ewl}_PlxyyCjjzP~wDcD)2E7c}$G!acFKg#A=fBcOh?K{J5x*g@odF+D zr{~8ecs8+*qdp8~+j$zyzW97%)ZstR{OagWHikO$=eX`4|H=HIe~OS!{EH3P6-9ev zvVv$O25zqH78>7xY2KRnWH=4;2QB?sysvOyLqR@ zcj~RFcmB=Crx*Vs1D>i~TNSnxMUP;F^KDgmPu$Ym#Z-lB88G+SZ*XJg(}Mrhf>2w3 zO9tFx{$axR)E~!nkDRw=udn}<`E#+LacKBnu>re-&=`n>h}deZWk%9UfGY1+6@cY; z-iFY^cdJhG%-F_LOa60A5c-p3Px(Du+}%oe5BV47pw=R!ZNOoai=H2oiogJzjk576 zYWT6LD=@)g{IKc^tI$^XwENHPzW3zc)x^R$pg*4h75!&a!NvMdEf2NzpTZX!aQ6I* z0<_c@I$V2Gq3350j3Xq0J8lHl!>6XZ-*#~gcn$vhTia%EFW&^~;u~Dat3UVVLmaG` zza#;ss$+T^a4V7XINV1;f0m7v`8U^|zaZMp@VfD@um6+=YxqyL0moLub6<3L`^HY= zpZ})nb0ILPIR`)Ih2U()Rm8X0Hp%BEOvzs|f9k`!-@m#OxBb|9_+b#@um3&yKRe0G z*EUlOY;`i4K*jhQl%Df%7yo%u^4Q$sSE7HJ3G|#ljZi=S$_9KK-oCLW>miOVJEkB>(^{mJ6Lcly2MW|HTIERw4HFkFP#%ul)W~xdHnhgLAz|&ithK z>7%gA0x%q`!Ot+5e!c$1Sp#0` zfpPxCB4k1mh1O#0}W(KbPRIO~5_jx6mIS55&J# z{_R=+ss?;}WjElsOWJyfSEKR%BN@>5Kg2`1gzp-#;?_TmkMGf60I~^cRms zJ^dm65(X}lf6suKO3+~@{AD!ZG34XGC4kg;4N$~<&to{U)vx;s&KaN--(WlDJNqVg z80z8&5(NG%CzthSZeJ6B@b57I{W1EBwLhpRDAC_)19p$)x=A24K6jp}1t3L0DSlwS zBcJm%Ic>nD_{{nbe4znr>d%1${{;pF{ZB=J)c>*!ICT(#0w4tsV{A@?(P4xSpTium z2FQJbODoV?d`SWVfByMhOa2X3>>v!{Zw;U{|DgXD2BHhFcK$CK@UM5jk0W|__h7yO zWeqT_K-T54S!T-Dffc`F9f1Ux~+}w=D_uF@Wk4m6T zsioteidE-8_)kwy-nf7tKYk1T)!urbzjOX0|JwNvYrrO{DF|eKVfAa*YTf@EjSLw0 z;2-+4CV>2#HpJ)s*Vpeqv+sbve7t{YK)<_tINZPg#cN1EeEKu<^qlizDflb!!9U3a z`a}L*y8p0d>YAXN334?#jfH7kgaS0v*{Xu`BOls*bD(bKj73fy=7U27p zuqwHNhk<|a-(&G7%)RKZSyds(dE5d9zyKK76$3EfU4Ry-c`6USug+ww!{DocuUd1Sik@n*cAi+13|5usOwIh%>V!Z07*qoM6N<$f&ht+ BV~YR) literal 0 HcmV?d00001 diff --git a/src/scenes/death.js b/src/scenes/death.js index eb95fdf7a..16f551615 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -1,6 +1,9 @@ import Phaser from 'phaser'; import Scene from '../classes/sceneUtils'; +// Importing Assets +import fallingAsset from '../assets/Characters/Cowboy/falling.png'; + export default class DeathScene extends Scene { init(data) { this.endingX = data.endingX; @@ -12,6 +15,46 @@ export default class DeathScene extends Scene { } preload() { + this.load.spritesheet('falling', fallingAsset, + { frameWidth: 32, frameHeight: 32 }); + } + + addFallingCharacter() { + this.falling = this.add.sprite(this.endingX, 560, 'falling').setScale(2); + + // Animation + this.anims.create({ + key: 'drop', + frames: this.anims.generateFrameNumbers('falling', { start: 0, end: 7 }), + frameRate: 10, + }); + + this.anims.create({ + key: 'fall', + frames: this.anims.generateFrameNumbers('falling', { start: 8, end: 10 }), + frameRate: 10, + repeat: -1, + }); + + this.falling.anims.play('drop', true); + this.falling.anims.nextAnim = 'fall'; + + this.moveFallingCharacter(); + this.fadeFallingCharacter(); + } + + moveFallingCharacter() { + this.tweens.addCounter({ + from: this.falling.y, + to: 0, + duration: 2500, + onUpdate: (tween, target) => { this.falling.y = target.value } + }); + } + + fadeFallingCharacter() { + const removeCharacter = () => { this.falling.destroy() }; + this.fade(this.falling, 1, 0, 1500, removeCharacter); } addMessage() { @@ -67,6 +110,8 @@ export default class DeathScene extends Scene { create() { this.backgroundScene = this.scene.get('background'); + + this.addFallingCharacter(); this.addMessage(); this.handleDeath(); } From f044e3045e6a315ab424bb491d44177935050604 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 18:23:19 -0500 Subject: [PATCH 38/66] Modified death fades --- src/scenes/background.js | 2 +- src/scenes/death.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scenes/background.js b/src/scenes/background.js index 59a368e9e..75f5c2cdf 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -120,7 +120,7 @@ export default class Background extends Phaser.Scene { this.scrollTo(0, 3000); } - this.cameras.main.fadeOut(); + this.cameras.main.fadeOut(2000); } increaseDifficulty(step) { diff --git a/src/scenes/death.js b/src/scenes/death.js index 16f551615..d1b4cf18d 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -54,7 +54,7 @@ export default class DeathScene extends Scene { fadeFallingCharacter() { const removeCharacter = () => { this.falling.destroy() }; - this.fade(this.falling, 1, 0, 1500, removeCharacter); + this.fade(this.falling, 1, 0, 2000, removeCharacter); } addMessage() { From cf5bf5e3866d1f7487d05ba9c6f3668074ce271d Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 19:03:50 -0500 Subject: [PATCH 39/66] Added character & collectible custom sprites --- src/assets/Characters/Cowboy/character.png | Bin 0 -> 2022 bytes src/assets/Characters/Cowboy/collectible.png | Bin 0 -> 2817 bytes src/scenes/game.js | 65 +++++++++++++------ 3 files changed, 45 insertions(+), 20 deletions(-) create mode 100644 src/assets/Characters/Cowboy/character.png create mode 100644 src/assets/Characters/Cowboy/collectible.png diff --git a/src/assets/Characters/Cowboy/character.png b/src/assets/Characters/Cowboy/character.png new file mode 100644 index 0000000000000000000000000000000000000000..ff286f52bb60c06a42bddeecbffa9e1925039a0a GIT binary patch literal 2022 zcmVYz=A1L<%cqpKL&}LZmtd zgoIe|^^d_Z?o;qzYVRMvQVf2?kmi4u0YNZV7pL73?C|&uOloRAO9BjLNx~u3tCpFRy2P z?pOyX_<8wn>*Sh%YRwzWO^bQ$Nu|0qX0@-qffxLScsc%Oie^()w|x++eKa1b3r!O$ z`04q_=JUq{#?tFRqxL?&&w&Om=3DUH%1iJ+!+`8U&>-p^+%h8#LG<|Pn~+Z7rX1S& zuh;8t)7Wmet9}a@gI`ap88v3NTlU!Hn~x;sRK6Q*pR=*Mb?AM(=6t!@V!#? zrd;UdKUtj3@rT=Z`exLegf4#Egyf5nI)B8zKX zi2fSR)g4Sg@;ff2JtsA6{Noq5{Yd0L$$+r= z4v)Vx@3%MMKh;kk`Xiad#njNk49$oQ7{`WBk~5&(`J)NB{Bxr0Ih4sCCt*y8*o1P; z?{5IOiC}&ov`=GyHXCzw@k#w_Y5drchr^fKzWV%QF`xm<=8X)8ANW8_OY*b?~n_h4=Mh8A#$b|3LTW%qM@Kd0(=W~kOh^u&8bFTxL-@2|{94EuQ0&-?O{i%=L{FAKoSdArI{Z<^ zfMR*Wcj0p2(=G6`ubccYFE2Y@tBD4ak^-UHfwI@4xtMM0zTq2|f9D z+YuhZmc0Y9=VGq>F$xzSe~(+{Lgb#7v+;5ym z)>4h>ABAxG!WIm#b$bkuYyxUPpsRyj|691aCgkUx(*!y5Y3eRjXIJgI`HLD5kl?SZ zX-vR3ARSyNPsjjL&HK z^N~sX){Z092IfC}kj-DsfPiv2@%shjL_m)psj+bi*%Mo5Dsj1k`M~S$!Nzp{Zf;h+ zaTO0u-+luT`|3seitnZGN3G#;88F(I)(7)23M@xyVC9*N-R=CyeHWaFlF z$9!|?kgJ1h{tNYHX_w<4KA+ZK7(W`mRQ|J?GG_y#0Z?{AD|x$>(6`RYmovcsi}2C- zx#ny)B9Z*tP0Bic05%n(;1KEzXm5w_18g?85d>pM(trVwF8_nwa2W3Jd8rMkZFZ3c zk5%4nw2%<{V}bQ)BJptsoGSlN!$%CL-UM3~7U%EcD;v;iAg?+tr5J)T3>|?54PelK zLW4&zh9vpV5@hHco?`lh49FECF(AYEDnpJPA#DoUa#X68zb^{9C zzb!a|bpwMlJKASM+$@M;v;i&2e~BP#l5j=5x$oj#@|lBtA>nrq^;k5U*rx zS@MVcVq6n`By;WR!r*s2Xbzx(ypqJwl8~bAo>n8ehOjC;swUWgMDv#tDSc|e8pEKo zjDG{Ypp=S#JUai*eGrLWvxeZkgx{g`7bS$ct8=> zQ(}!Re#)3qVsZJ0@N>siA3>Oamufqtfs|M;ybk{ZQlVUIsZww;00000NkvXXu0mjf E0Ht;M9{>OV literal 0 HcmV?d00001 diff --git a/src/assets/Characters/Cowboy/collectible.png b/src/assets/Characters/Cowboy/collectible.png new file mode 100644 index 0000000000000000000000000000000000000000..d7e101c4acc89c976b0bd62baf0a0380c5eed1d2 GIT binary patch literal 2817 zcmZ9Oc{J4PAIHBl#*ncmOSZ9uo4t{`mS!wPxRP5MDKpHq+;Zt=8N$q0gl;s`m5WNY zBC@tzCCo5m$r4I&lcsRd3?|E1hMD=z@AvyBo%24=c|Xtje9rm2&+|Ozysr9qyUEGy zmH_}j?x?$~F91j&#U3dQ7q9GmEgk^KbRTtfIuRc@UpNr0a#*EHGi~d%m4C1^=m9uU zC4B!<<4uj{960vZDUp7iPD{elr|i`GAI+wUvHI3ZvL)?C7*d4myGxHZB6a%v7Un|v zJU@Q#9x2-d$D#zmJU4M1mB?Jw-9ZJmNnPn+uu4XdI|$n*dIJ!o{9S3j5*`wqek)~L zAqc~QR#M*`^-0$Q)-L@RLk#p=nPKuJzTJy`sJK19BowKPgnTPiWFJI%His^SYktG$ zjD!${@0%F|y0op12#fnVw1Ke>N{%=OCIt3?mRmBV>v0Dx_|@Z1^uKxJ)v`;Tnt1DW zg-F}Jg$iACtVHBXbQHwPk;L8zOAzE<(-7ftFy8}oM!aAcXZwkNi@9~-$R|wtTeZty z5I--ho?4S%Ik5TMlC+f%cZh{}Eb_ZJWwj0K!*4C`#PrvcZ*JP(hWgA1*gfaMWQjC? z>w-i(;Zjj=WK3{TYKJ-&Y-y5EOBDL6Vi@5V0**YlS#&OGi1wyp<^v3b8p67B$r0yOQsD4x?3;Pp@47hn&x}$X1b;JD}4xc zhf)=wkq#Rqj7Hi#4g<`Liw%pV6}{?I^-UowU0)|Qu6aqDPkIV}oix{~p7d;f-Xw&1lOKI7`UT+KYxM`c_ZHtw=n7jlh-1I-cQDD8w_ zmiFfa*PFDe&#vlN?+n)RmDZA2tLvNjE$JQAR<064=)C_yEJ= z1(l=D^tqCqdTuON;P#838dn*9m5FxYYez}PC{9@iCIWVU#Uj8nqQs)J=LL_SOavC$ zfA-@#ytUS3rn*bMK#$IMjgblbf(YwV6b75oZpe8F8*hZ*T%v?VF%uL&KS)sQC-Ix5L2JOe! zO%x~z^0ZI+XPoE#ZY*c@&>%dDY{#m~zSF&;cFBMc-@4J>3_OYicYPt7jL%QMND|0B z7vAKt^t|!w4G-VZd_$kkK{LZJTLZexxd~#gIyi{9P$voO)SH^Hgu>pKx;1nfx!FY# z{)DIwQa8OE-ix6cyZ^SHUZb zurzAf1|%^{-j_@_vhZM6r`y7X@wdnX}$m@O%q!s`c7JgzeuyC18*Nk%kJ+#K)PsS551p_4L4v@oa|mJG6x%ur-a!f6SeT&=4wdXdUYJ8UNTZI ziL?+BeLlMP?DJK>8QI!7up4DnvK-j?=PBUjW3{pV!cT{(cQ>uHe8JEED7@_Oxsrdq zhC5{aP=$rx4V7H0YnXYT*k*#qIMaxa)d?hm3P>U zk6)GNP;!OmXjbFw) zu%iBCW=IY*M4pX$VEx~hu~nfP;GH%D(-X5)|``%_-1@ zN%~doNCElBKQ6eILO2T zQ?q9UUYoPGb0JO^pQJs`EiTI-RX&znLo(l`ORQ-}xghq#wa3VCg)1h3J)rf8rwEQ3 z`aQ70XT{7r*R!>$`y|y@8rh=>{l+xl={~xh!dKZ+UO;A3zr;i6z0A~;NdnnYb*{Rc zm0(FhBlWF(GYfE;WV|L8f3D=6+KticDt4rhq;Z`8$HZn-nZX64D8!q>q=99TfY0@n zbieW0>^-!z_@S3HS(ZP0!&ZFvoG{Gbm$#i`7xiaR@s%2bLHj-_>LjalT!eV-7giF_ zn>(b17mAcM(-}>`;fODX0s?8cty!pHl$5JXan)_b5E-jEcR%gTJ@adJAFZ!rzBn8t z5^OyrV1$E*;>&9!I&TRCVx*Eh@C3c2)&F(c!vd6>*5vzICSF(EvjZOL0h8e`ylG3jl9FEHjt2?xhm(&sl0 zrzO-mDu;NE16|D|HdlE5StV_lm1;wWTVR4^Fl@MC zEF>#g(4ylzDazQRxGAjALB|TRlLeJCxH*o(!$^i`gs^gNU3J%B?!^aE828BHL@i2-JHMkR!>@ZGVpNj(7M;W%1vSI; z`JfcHfgTk=C{Ax@KPsppZV!E+k+~iIKuPK7?|Cpw+>RQSb=?MZhIDA!kJ}l~5P#$o ZnP=K}2%=#0UW~TD(Zk-Zwa)m<{{g&5BH91| literal 0 HcmV?d00001 diff --git a/src/scenes/game.js b/src/scenes/game.js index 6cb85dc9a..c0128eb1d 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -1,9 +1,9 @@ import Phaser from 'phaser'; // Assets -import dudeAsset from '../assets/dude.png'; +import dudeAsset from '../assets/Characters/Cowboy/character.png'; import platformAsset from '../assets/platform.png'; -import starAsset from '../assets/star.png'; +import collectibleAsset from '../assets/Characters/Cowboy/collectible.png'; // Auxiliary classes import PlatformManager from '../classes/platformManager'; @@ -15,35 +15,57 @@ export default class MainGame extends Phaser.Scene { preload() { this.load.image('platform', platformAsset); - this.load.image('star', starAsset); - this.load.spritesheet('dude', - dudeAsset, - { frameWidth: 32, frameHeight: 48 }); + this.load.spritesheet('collectible', collectibleAsset, + { frameWidth: 32, frameHeight: 32 }); + this.load.spritesheet('dude', dudeAsset, + { frameWidth: 32, frameHeight: 32 }); + } + + addItemCounter() { + const stylingOptions = { + fontFamily: 'Alagard', + fontSize: '22px', + color: '#000', + }; + + this.scoreImg = this.add.sprite(20, 20, 'collectible').setScale(1.8); + this.scoreText = this.add.text(40, 12, this.score, stylingOptions); + + this.children.bringToTop(this.scoreText); + this.children.bringToTop(this.scoreImg); } addItems() { this.score = 0; this.items = this.physics.add.group(); - - // 15 585 - const img = this.add.image(20, 20, 'star'); - img.setScale(0.95, 0.95); - - // 30 578 - this.scoreText = this.add.text(40, 12, this.score, { fill: '#000', fontSize: '18px' }); - // Add animation } addItem(x, y) { - const item = this.physics.add.sprite(x, y, 'star'); - this.items.add(item); + const item = this.physics.add.sprite(x, y, 'collectible').setScale(2); + + this.anims.create({ + key: 'collectibleTurn', + frames: this.anims.generateFrameNumbers('collectible', { start: 0, end: 25 }), + frameRate: 15, + repeat: -1 + }); + + item.anims.play('collectibleTurn'); item.setBounce(0.3); + + this.items.add(item); } collectItem(sprite, item) { - this.score += 1; + // Destroys the item item.disableBody(true, true); + item.destroy(); + + // Increases counter + this.score += 1; this.scoreText.text = this.score; + + // Increases difficulty this.platforms.increaseDifficulty(0.04); this.backgroundScene.increaseDifficulty(0.04); } @@ -73,7 +95,7 @@ export default class MainGame extends Phaser.Scene { } addPlayer() { - this.player = this.physics.add.sprite(this.startX, 500, 'dude'); + this.player = this.physics.add.sprite(this.startX, 500, 'dude').setScale(2); this.player.setBounce(0.06); this.player.setCollideWorldBounds(true); this.player.body.friction.x = 0; @@ -88,14 +110,14 @@ export default class MainGame extends Phaser.Scene { this.anims.create({ key: 'right', frames: this.anims.generateFrameNumbers('dude', { start: 5, end: 8 }), - frameRate: 10, + frameRate: 8, repeat: -1, }); this.anims.create({ key: 'left', frames: this.anims.generateFrameNumbers('dude', { start: 0, end: 3 }), - frameRate: 10, + frameRate: 8, repeat: -1, }); } @@ -124,6 +146,9 @@ export default class MainGame extends Phaser.Scene { // Setting up movement this.isMoving = false; + + // Adding Collectible Counter + this.addItemCounter(); } handleScrollDeath() { From 1109dd598c8e897e3aa0918ab74c50cc16672390 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 19:22:25 -0500 Subject: [PATCH 40/66] Added random platforms --- src/assets/Characters/Cowboy/platform_01.png | Bin 0 -> 1197 bytes src/assets/Characters/Cowboy/platform_02.png | Bin 0 -> 1578 bytes src/assets/Characters/Cowboy/platform_03.png | Bin 0 -> 918 bytes src/assets/Characters/Cowboy/platform_04.png | Bin 0 -> 756 bytes src/classes/movingPlatform.js | 5 +++- src/scenes/game.js | 23 +++++++++++++++---- 6 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 src/assets/Characters/Cowboy/platform_01.png create mode 100644 src/assets/Characters/Cowboy/platform_02.png create mode 100644 src/assets/Characters/Cowboy/platform_03.png create mode 100644 src/assets/Characters/Cowboy/platform_04.png diff --git a/src/assets/Characters/Cowboy/platform_01.png b/src/assets/Characters/Cowboy/platform_01.png new file mode 100644 index 0000000000000000000000000000000000000000..4f794e3f93aae5c8a17dcad3c29b55f7c71830f1 GIT binary patch literal 1197 zcmV;e1XBBnP)PInzHSEPo&Vv#vlp zldXJTcBJzQw!1$MgxSKm8S$z9+jI?mtA0)KO-ae|bg^w@*z8TXd}6rvLdB-$?t{;k zr_C?MP}k#r%GY(aIy+*?Mw|6yf&4u@5)M!Ir?rle1WdwZXDU#}EuH4{0wHQsD=y3WxBq+8qyz8F)P)i~EVSAua@-T6&+hh5`ZWA`d ztq6nyB$bWNMp2GjbqL#q$#p+xfnzLFfts*TikX^cOuoJ`sCDS_>#C(J0&#()CL8eoBr_*r>A)o~nB9pWP-8>7l?=5**{3^7IVN zIn_ElLg`LEn3~wHi57^@=CG}s z0ZIW=Y)p}2*1FN_EwUW3Lcw)?UCf5YtZkCFT)1<^i4sUIkWFrQOzaSTOv7Rf4%^xg zj5+-^-A#-F+4*r;EY9_<`%*W#sfwUWesgo0J6@Oe0iV+<1hnF zFi;T)005DoKx9CsBN)#jO>7&-%*8-uNS8Z>t84JEo@;Ng&6jF>wCIgVON(r&qK^EwB;-QN;nc;2Merabj0-4fQR^iy^dx z0a+L_q*NlQ`^AkA$cv9(i-)(CDwLW8A`kB^*#m~rQU*{Q+h0BxmshR}l=%DEgKx$5 z=0@$vlM4j9iHsaN33d$@NbP$%whmDs8z0^kYj@T~p78tn+LfVL5(uPjGRqkRy9fwm zW_qfeKTt4B^Rs1ae&t*DHjJk~)A0(rN2dj%&K~Oa$=#%FUmk{(THS3~hapFdkla(R zQAN@vaR4`!4uWK<^N5Z_c~Hk!zF-&fy-3r=lOukP7^#ar#6JiG=MMN>y?UV&M=Q*= z_w?RH?f*%i8}vusVucVySu?4{L*b_DHXsn3LE!V!^si2(WPOVz&mxeOI>5V*Vx3}w z!7>9H21Ultx59aom2D0HuZnPFyN+!z>{K}_=p3u4^1p7WtFQ0XABz%+a4 zzHO%jU>jzj%M6UnAT}Xz7wPg=GxiV$v_rZ{BrK2+ig`_!8TbzdYP^3Y;phSY0000< LMNUMnLSTXb3`95+ literal 0 HcmV?d00001 diff --git a/src/assets/Characters/Cowboy/platform_02.png b/src/assets/Characters/Cowboy/platform_02.png new file mode 100644 index 0000000000000000000000000000000000000000..02727b702315fb93923ca616d6c62c36ef5d9b97 GIT binary patch literal 1578 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 literal 0 HcmV?d00001 diff --git a/src/classes/movingPlatform.js b/src/classes/movingPlatform.js index 983f47f77..5e45c183e 100644 --- a/src/classes/movingPlatform.js +++ b/src/classes/movingPlatform.js @@ -48,7 +48,9 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.RESPAWN_ITEM_PROBABILIY = 0.6; this.handleItemAdd(this.START_ITEM_PROBABILIY); - scene.add.existing(this); + this.scene.add.existing(this); + + this.scene.randomizePlatformTexture(this); } setupFriction() { @@ -89,5 +91,6 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.runningTween.restart(); this.handleItemAdd(this.RESPAWN_ITEM_PROBABILIY); + this.scene.randomizePlatformTexture(this); } } diff --git a/src/scenes/game.js b/src/scenes/game.js index c0128eb1d..7658167ba 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -2,7 +2,10 @@ import Phaser from 'phaser'; // Assets import dudeAsset from '../assets/Characters/Cowboy/character.png'; -import platformAsset from '../assets/platform.png'; +import platformAsset01 from '../assets/Characters/Cowboy/platform_01.png'; +import platformAsset02 from '../assets/Characters/Cowboy/platform_02.png'; +import platformAsset03 from '../assets/Characters/Cowboy/platform_03.png'; +import platformAsset04 from '../assets/Characters/Cowboy/platform_04.png'; import collectibleAsset from '../assets/Characters/Cowboy/collectible.png'; // Auxiliary classes @@ -14,13 +17,26 @@ export default class MainGame extends Phaser.Scene { } preload() { - this.load.image('platform', platformAsset); + this.load.image('platform01', platformAsset01); + this.load.image('platform02', platformAsset02); + this.load.image('platform03', platformAsset03); + this.load.image('platform04', platformAsset04); + this.load.spritesheet('collectible', collectibleAsset, { frameWidth: 32, frameHeight: 32 }); this.load.spritesheet('dude', dudeAsset, { frameWidth: 32, frameHeight: 32 }); } + randomizePlatformTexture(platformObject) { + const rareTexture = Math.random() > 0.9; + const platformIndex = rareTexture ? + Phaser.Math.Between(1, 2) : + Phaser.Math.Between(3, 4); + + platformObject.setTexture(`platform0${platformIndex}`); + } + addItemCounter() { const stylingOptions = { fontFamily: 'Alagard', @@ -81,12 +97,11 @@ export default class MainGame extends Phaser.Scene { centerPlatform, y, this.addItem.bind(this), - 'platform', + 'platform03', { isStatic: true, }); - platform.scaleX = 0.5; platform.setupFriction(); platform.refreshBody(); From 867ad5fb343b0ea8db6c4512b3c0af7e4c71759e Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 19:25:36 -0500 Subject: [PATCH 41/66] Removed unused assets --- .../Background/Clouds/Piskels/cloud_01.piskel | 1 - .../Background/Clouds/Piskels/cloud_02.piskel | 1 - .../Background/Clouds/Piskels/cloud_03.piskel | 1 - .../Background/Clouds/Piskels/cloud_04.piskel | 1 - .../Background/Clouds/Piskels/cloud_05.piskel | 1 - .../Background/Clouds/Piskels/cloud_06.piskel | 1 - .../Background/Clouds/Piskels/cloud_07.piskel | 1 - .../Cowboy/Piskels/platform_01.piskel | 1 - .../Cowboy/Piskels/platform_02.piskel | 1 - .../Cowboy/Piskels/platform_03.piskel | 1 - .../Cowboy/Piskels/platform_04.piskel | 1 - .../Platforms/Cowboy/platform_01.png | Bin 1197 -> 0 bytes .../Platforms/Cowboy/platform_02.png | Bin 1578 -> 0 bytes .../Platforms/Cowboy/platform_03.png | Bin 918 -> 0 bytes .../Platforms/Cowboy/platform_04.png | Bin 756 -> 0 bytes .../Background/Sky/Piskels/sky_01.piskel | 1 - .../Background/Sky/Piskels/sky_02.piskel | 1 - .../Background/Sky/Piskels/sky_03.piskel | 1 - .../Background/Sky/Piskels/sky_04.piskel | 1 - src/assets/Background/Sky/bg_01.png | Bin 10020 -> 0 bytes src/assets/Background/Sky/bg_02.png | Bin 9972 -> 0 bytes src/assets/Background/Sky/bg_03.png | Bin 9963 -> 0 bytes src/assets/Background/Sky/bg_04.png | Bin 9705 -> 0 bytes src/assets/bomb.png | Bin 495 -> 0 bytes src/assets/dude.png | Bin 3226 -> 0 bytes src/assets/logo.png | Bin 180337 -> 0 bytes src/assets/platform.png | Bin 14973 -> 0 bytes src/assets/sky.png | Bin 4757 -> 0 bytes src/assets/star.png | Bin 443 -> 0 bytes 29 files changed, 15 deletions(-) delete mode 100644 src/assets/Background/Clouds/Piskels/cloud_01.piskel delete mode 100644 src/assets/Background/Clouds/Piskels/cloud_02.piskel delete mode 100644 src/assets/Background/Clouds/Piskels/cloud_03.piskel delete mode 100644 src/assets/Background/Clouds/Piskels/cloud_04.piskel delete mode 100644 src/assets/Background/Clouds/Piskels/cloud_05.piskel delete mode 100644 src/assets/Background/Clouds/Piskels/cloud_06.piskel delete mode 100644 src/assets/Background/Clouds/Piskels/cloud_07.piskel delete mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_01.piskel delete mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_02.piskel delete mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_03.piskel delete mode 100644 src/assets/Background/Platforms/Cowboy/Piskels/platform_04.piskel delete mode 100644 src/assets/Background/Platforms/Cowboy/platform_01.png delete mode 100644 src/assets/Background/Platforms/Cowboy/platform_02.png delete mode 100644 src/assets/Background/Platforms/Cowboy/platform_03.png delete mode 100644 src/assets/Background/Platforms/Cowboy/platform_04.png delete mode 100644 src/assets/Background/Sky/Piskels/sky_01.piskel delete mode 100644 src/assets/Background/Sky/Piskels/sky_02.piskel delete mode 100644 src/assets/Background/Sky/Piskels/sky_03.piskel delete mode 100644 src/assets/Background/Sky/Piskels/sky_04.piskel delete mode 100644 src/assets/Background/Sky/bg_01.png delete mode 100644 src/assets/Background/Sky/bg_02.png delete mode 100644 src/assets/Background/Sky/bg_03.png delete mode 100644 src/assets/Background/Sky/bg_04.png delete mode 100644 src/assets/bomb.png delete mode 100644 src/assets/dude.png delete mode 100644 src/assets/logo.png delete mode 100644 src/assets/platform.png delete mode 100644 src/assets/sky.png delete mode 100644 src/assets/star.png diff --git a/src/assets/Background/Clouds/Piskels/cloud_01.piskel b/src/assets/Background/Clouds/Piskels/cloud_01.piskel deleted file mode 100644 index c6ce5e916..000000000 --- a/src/assets/Background/Clouds/Piskels/cloud_01.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"New Piskel","description":"","fps":9,"height":32,"width":64,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAABM0lEQVRoQ+2VwQ3CMAxFk1HKkTIA7NAOAAOyQIcoA1COdJQgI1lyq7RJ06SxFOfEIbX/f/4OWhV+dOH+lQCQBBROQFag8ADIIygrICtQOIFDVsAYY4Cz1vqQfltmmlQQGqeCuEFIAsBmfD6V1/BRt0u92v+I5EQF8Ow6c28arwQCADg2CP17MNf6PKmTKjlRAIBxUOtrHp0BhHH8qkfb/nVAnao6qbl5vJ8CQhQAton5xIACcJmf14sFYzeALbGnJnAFIAFwYPJwlqa/BHQviCAAGPlQ0WjeZmorALpO+Nv1uE7+lXyiiobxLhoPmZhPv5A7uE70W3xb1uo5E0DNU+MhIlN9g2tkq++C4ASQSjSXugKAyyRy6ZAE5CLPpa8kgMskcumQBOQiz6WvJIDLJHLp+AGwn18hgTq/4AAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Clouds/Piskels/cloud_02.piskel b/src/assets/Background/Clouds/Piskels/cloud_02.piskel deleted file mode 100644 index e3e6aaeed..000000000 --- a/src/assets/Background/Clouds/Piskels/cloud_02.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_01","description":"","fps":9,"height":32,"width":64,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAABeUlEQVRoQ+2XzRHCIBCFQyl6NBagPcQCtEAtQHvQAoxHLQVnM7MzOxHYBUJCDFwDhPfx9gdVLXyoheuvCoDigIUTKCEwpAG01tq1n1IqO+CDHOj+bPWu3ohY5gYhGgCIB+VSADA3JwhRAELEo01ygRANwOfmaYwUAEqpftKcAsroDni0r+rzeXdmODbNT+IcG0I0AKqACwcQDwMAmMRPkR+iAFDx5+tVr1ZrZzX4WwAgHmAMBWDMUhntABSPAFw9Aca/y/6wnjqF5ooU+SEYgOnW8eA2CD4AbHliaAjBAGztrwuCNAe4QE0OAG+es7HoYdCbZLN+ygZK7ACfWE8lHva93G7GHiLUGdkAkEDjcgh8329rsaau2kh+DHNMDvB9BUr/1Z8nCQ2sHskAUAhQ73Fw3V+o6JB1CMoHAusAevO01vu0wCFifNbQytNfx8GwArBZ3udgqefio4r7z+lwsOpkHcBtPvfvBcDcbzD2/MUBsQTnvn7xDvgCfqbAIV1/JXIAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Clouds/Piskels/cloud_03.piskel b/src/assets/Background/Clouds/Piskels/cloud_03.piskel deleted file mode 100644 index 5cd674a64..000000000 --- a/src/assets/Background/Clouds/Piskels/cloud_03.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_03","description":"","fps":9,"height":32,"width":64,"layers":["{\"name\":\"Layer 2\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAABAElEQVRoQ2NkGOGAcYT7n2E0AEZTwAgPgdEsMMITwGghOJoFRrPACA+B0SwwwhMAbWuB07du/4cFsKmaKsHUdvzK1f8sbGwMxKilVsQRdBSpFk2ZPx/saXNrG7jWP79+MZw9fQrOz0lMRLEXOaBAikDqLXW0qe42bH6hqiUgzyN7HOYZmMXIgQASMzY1Ixi+tA4IqgUAeizCfAaKTXLA/fv34NrevXmDM/WQYzayHqoEwLLNm+F5nVIHEas/yteXKm6niiHEOnowqhsNgMEYK/R002gKoGdoD0a7RlPAYIwVerppNAXQM7QHo12jKWAwxgo93TSaAugZ2oPRrhGfAgCjjjQhkN14rAAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Clouds/Piskels/cloud_04.piskel b/src/assets/Background/Clouds/Piskels/cloud_04.piskel deleted file mode 100644 index 9e4061e0a..000000000 --- a/src/assets/Background/Clouds/Piskels/cloud_04.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_04","description":"","fps":9,"height":32,"width":64,"layers":["{\"name\":\"Layer 2\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAAA+UlEQVRoQ2NkGOGAcYT7n2E0AEZTwAgPgdEsMMITwGghOJoFRrPACA+B0SwwUAlgyvz5/0F25yQmgiPh+JWrYL6ljjZdI4WuloE8CPM4LOCFRETATEVFJZS4oFdA0DUAiPU8LCToEQh0CwBcnldV14DH/J9fvzByJK0DgeYBAMrbZ0+fgnsMluSRfYqe/NFDgZaBQLMAgBVqpBay9+/fg2t59+YNnA0rLEk1j5B6mgTAss2bwSU6tUGUry/V3Ut1A6ntaVqbNxoAtA7hwW7+aAoY7DFEa/eNpgBah/BgN380BQz2GKK1+0ZTAK1DeLCbP5oCBnsM0dp9AAC7LCGdGw5GAAAAAElFTkSuQmCC\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Clouds/Piskels/cloud_05.piskel b/src/assets/Background/Clouds/Piskels/cloud_05.piskel deleted file mode 100644 index 9bdfc039f..000000000 --- a/src/assets/Background/Clouds/Piskels/cloud_05.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_04","description":"","fps":9,"height":32,"width":64,"layers":["{\"name\":\"Layer 2\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAAAtklEQVRoQ+2VsQ2AIBREYQXDWixgZ+849nQuwFrGFTQUJBiJBfFffvLPVsjdf/9OvTP+eOPzOwJgAowTYAWMB4AfQVaAFTBOgBUwHgD+BVRVYM/5Oo/DrcsC8wURKoPVqs0xvjTb91/nJOoqDmBL6ZpCeHivEHqDtwd7sP6GIAqgDD9iuAUmDUEUwMjw6DsEgCauTY8J0LYRtB8mAE1cmx4ToG0jaD9MAJq4Nj0mQNtG0H7MJ+AGxFgbIaFNAkoAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Clouds/Piskels/cloud_06.piskel b/src/assets/Background/Clouds/Piskels/cloud_06.piskel deleted file mode 100644 index fa07347e1..000000000 --- a/src/assets/Background/Clouds/Piskels/cloud_06.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_05","description":"","fps":9,"height":32,"width":64,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAAAk0lEQVRoQ+2VwQ2AIBAEoV8KsAQLoF99kRBfkHCXNTu+EZa5Wa3F/Knm9y8AwABzAlTAXAA+glSACpgToALmAvAXoAJUQJDA3fszYl2thVoauvku2/ni87uREI4BGOEjw+4CXVl/BMB3cn+CcATACmnVNQBQnUxWLgzIIq16DgaoTiYrFwZkkVY9BwNUJ5OVy96AFwCQECEhBKHlAAAAAElFTkSuQmCC\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Clouds/Piskels/cloud_07.piskel b/src/assets/Background/Clouds/Piskels/cloud_07.piskel deleted file mode 100644 index 567d7370c..000000000 --- a/src/assets/Background/Clouds/Piskels/cloud_07.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_07","description":"","fps":9,"height":32,"width":64,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAYAAACinX6EAAAAgklEQVRoQ+2VwQ3AIBDDYF8G6AgdgH1b9VGpj/4dKWaBHD4H5ig/s/z+QwAaUE7ACpQL4CNoBaxAOQErUC6Av4AVoCpw7n092cda6BKQ8PfyX/gUCAQAZd1frgCStkHMogEE9aRMDUjaBjGLBhDUkzI1IGkbxCwaQFBPytSApG0Qs9zU8gghNoH6TAAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Platforms/Cowboy/Piskels/platform_01.piskel b/src/assets/Background/Platforms/Cowboy/Piskels/platform_01.piskel deleted file mode 100644 index 01cf17d29..000000000 --- a/src/assets/Background/Platforms/Cowboy/Piskels/platform_01.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"New Piskel","description":"","fps":12,"height":32,"width":200,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAAgCAYAAABXTzdxAAAEc0lEQVR4Xu1bTWsUQRCdxYSNWTUEjBDNRcVLAoko6iUIXgR/gEfv3gQP/ht/gTcvgt5EEBHEHMwlh1zEHCIEP6IJiUSqlxp6evujunu6Z2a3ctk4U1316nW9qa7Z2Hvz5OZJQfw50z8lLH8f/rOuQDuTrXxfdqTzC7a7Pw+E2cK5GfGp/tt0DX2rfk3xTUnJ8XSxbWTY7E24fGK49kLFpubug8+Wp80vxlDX437K13W2OjtiyUab9WSB/D08Eg5P96e1jpEETMJlZypQvO5bqD7ZyhtPKURboVALVhfHtwCpDwQXtyaufDj3ER/WDrXo5QeeitUnrk8t2erWxEvv5ePVE9uTWUc0tWB0a+XkZVAxPn07CuKK6Qyu3OA+tRhNnOhw+jwkKLYxvOue/FBLIfthe6BR8jBxrdtj+cFuEzbErQiEAiSVjc9GUY5cdQjbhcl1P2eBYyxTgZqwUIqZmmdMvr4xqHXo8uuqpSwCcYGkJhv75Kfg8OkqFH+AmWpH4UE+o8tiCBUI5UFSJ35Kjk3YqLMPnqp675/dJg/pocBTEhzjm/L0DM051TpVIKniUPzGcE/xr9qkjGfyXRFISgAhhKReM2n51s2n63hC6U4+mJrYr4kWiM/msK2bAUoBU2xMkWLWutHrLbIcsULBdX1dzIbGrG2St1y4c8WJEkgukE1ueEzsEH5Mw2IMDtvaEIw5/TXdTYwC2flxWCzO9a37Uje5qYqgS35zc5o7Xpf2ArBGCaRryU4KXi76+nbaesTSdRG4Bj+u7lIfRPbkywALxJcxs33v+aMV8T3I8uJgxArFsPfnuLxPOXrVB8/uiQshF9OTG0d0kM2dfcGATiRwHe/Pz061qnuwQCa3cHNlXh6xQAQLg+Gfs+/uD/+cHQUD90ziyQWU4zADTTBQEQgAAJGgQGRApiMYzyJNbBvHzMVAZUiXO4Wra/CwnmuLOE6TDJQCeb25K3DcX14Qn2+39oq71+aN2No0rDdJIMemMXD+xoPS8PunV7RFLbASAlHFAbjgGooFcWJXcQ31LciLIbSEAVkYMqRUIqn7xY0QyIuPX4uHt5YqlJoEIg/vLdkDhtFSBlAc218+F5dXrguU+PvZg2/F9uZG7ciTCwS7iYwcOgl2DRZI7Xs6tg5RIBsf3hVrd9ZFnvD7+tqVoVgSCKRuMssZBLsICGRmeqqcP1AwS/OzZWx+5Vv3NoynP9PxCrpHpwWizh7q9sndpG1fHoaUWt1tWYchR4yQ3FOvUUXSJXEAN5UOgmSp84iORHlQx1e+YBfyvUjTxZMjfo4YqYs9xD8IBOcO+Fy9eqETRyvMtff03kXt/0mfG/RH3mKFEERZM6nFQ+Gm6zYgEJxB4PPS9K9OpWR9iyXPIpCVOsC7jmKdYoLBMgMaBkqBwD31aAVfFh4cHVeWoSh0r4GZYWZg3BgYmUFM8wcLYty2nvOhMFDpILDANHvovm2nBGAbZqDLDIzMIDYhcBfp8lYz9hAGtEO6SSQskBCKeU2XGfgPBmq8fybh6AIAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Platforms/Cowboy/Piskels/platform_02.piskel b/src/assets/Background/Platforms/Cowboy/Piskels/platform_02.piskel deleted file mode 100644 index 75a50354e..000000000 --- a/src/assets/Background/Platforms/Cowboy/Piskels/platform_02.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"platform","description":"","fps":12,"height":32,"width":200,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAAgCAYAAABXTzdxAAAC+ElEQVR4Xu2YQU4DMQxFpxJICFGkLhCsWLLgANyJC3A4LsAdWLICsahEEarEoigjBaUhM/72ZNop/mwKxHbsZ/9kprPH+9tN0zTN9eUifDTLr+9mtfpsf5/Pz9rP+LM4Pf612VrY4R+lHLryldKKsV7elsV6c3+pfmseXXmi8VI71KePTawzzoPEMazX2Dfdp1a8PA4SN7WZ5QIJSaIDg4BLhypsnIsujxFsUrEiQ4oUXcq1tkAQHpKNJMKSv1Yg7x/rNszN1bw9ELsYawQi1bWP9cgl7B1nCpntdE5nTw93m/TEsEKJ0C/OT/7cOGjMtHGoT+nUWW+OmpgHKh7LqVlqeqwhrKUsoq10SKQCKTGtMWg1BIIKGeWP1lXih8wNmm+eRyuQ+M++hkiNLQ2GduisA5HfBFaBPL+uWhSlwUYbKAkEjRPsrDw0e/TdrKXbJdqjA6cViKVmSSDap5iUCSwQBHpenFYg0h5jvhuFXGsIRKrhv65LBygqLItAJKaomEtxtgQibbTr9RyW9jSqnS86BOi+teOh++7TrutLFunddF85wwKJzRyiRm2RY5wm2hyG2tfkVeNdcWg93vxFgeSPSUjDkZMRiTOkGZrbpk+ISJ5D/bvq7GIf7fveEUoxp3LgIPPRxaTvyyDtN3JIb7cEUnKo/R6RP4vWeu7PoU9FIENEXpu9ViBd75RaYQ5hkPsehEA0wyfB0TZNivef1rUCkVhK69IwIifu1PjnDLUMxEesUsE1BTI1oIecT9r8IY8xKAPtsKFxx7TT5mwSyJgFILG1RSIxaaMn4KEPFIh+LujhiAAsEA+nhaO+s1SQAAUCgqKZTwKwQHziYdXeCVAg3ieA9fcSoEA4ICTQQ4AC4XiQAAXCGSABGwHeIDZu9HJCgAJx0miWaSNAgdi40csJAQrESaNZpo0ABWLjRi8nBCgQJ41mmTYCFIiNG72cEKBAnDSaZdoIUCA2bvRyQoACcdJolmkjQIHYuNHLCQEKxEmjWaaNwA9XdRF/qeZcqAAAAABJRU5ErkJggg==\"}]}","{\"name\":\"Layer 2\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAAgCAYAAABXTzdxAAAEBElEQVR4Xu2cPW8UQQyGLyWJRIMo+F2IkgqJktRIKSNRQ4lERYn4XRSIBimhDHIUozfGHs/eznjmdn0Nyu3ufNh+5rVnhzs75CctkBYwLXCWtkkLpAVsCyQgGR1pgYIFEpAMj7RAArKvGPh2/fbu1dXnXPwauD2N2MCIo5sgIGgMDMWny5d37z5+v/etvDZ6rKfWfwJyIh6TqsB/078/fv46IBCoHqkm6xycgKyzX7enMbA1CBgKCxxWD4QnFWW5uxKQ5Tbr8oQHhKUKMp2i+zit0gbqAZOK89hqCUiXcPcbxdpA1gmoGJ56aD39vvmjDuDpxZP/vpfpGSpTKXXzZ7iNOxKQQD9KlWBV8IAoDVGD4c2Hr6pfv7x/fV/M80cDBq9j23Qvq9OedshOBpBS2oA7OIHxvqgrTTG01Zrvs1RAdmrBUDM4CYx8BgHC8VCfe0nFpgTEg6HG+bNAo+02ScWgsWpAcICOWLFx3FjXSFBqfXGq900BSCsgNCeMCC4ehwaClsLgSj1yvFYQS8hfPH/2COiRIPcGbyggJTBqUwwykJdLR6sJBpSlDvT9mvSod2Bo7ct5aXM7tTl5dhwGiAbHEii0iZVAiVyZtTpidpXwAgWvW8rI/tvSXMMBWQrGze3tEt8dSP75Q0Xwxfn5P4XpCQnOa4uBIp0gaxR6H8O2lwsd74AtcuQkN4cCIuFAQ5ZA4GMUtTbDFZzaRWhaQ+KpBUFKn6VzqJ3r6PsYFAaE7OvBwmNu7YsetggDxIIDwWgZRFZ9s9YpmlLIOgihwABqOb8ewXBsm5aaeLBwf1pqvNZPx85FPhcOCKsGgdEzYCxAqP+aol4zMKZOMo0qQbGXdwZks1pY0L5e7TlylywEEHxJ1orsJe2U6gMERgOA1UGrK7QDg3w2ag/K4fkAFwYLHLIhpsCyTev9kKUw2svPNTtrIYBohvTe4nrG9657hSHuxFBbHNg0LnpWHrPQziVpBwXlbs8sqYJnr8jrEhZWntLJAh6fpzYy3V1r/xBAer4I9BxrGYgB4QJabl1y/kxpoKYGtd9549v7dU1lMFXT0jYvntZCgT4JAYQnOSoYNIPJANfqBKkQ1ulWTUnwu1Hz3mq/kTVdGCCas7yVoIWDSwqiqYTVZ0kxMEWTq1+LOWQb4ywwFBCZr7c2Q0lqtYA/RglwNZMFeuv5ZHvxFpgGkOip1wKC6iB343LHKtpr8f0lIA+/AKLltVaua6kGua9lgRgfDtmjtMBuAcFaAY9GaP9n2/o5HaxhMrS2aYEE5OHskLWdi26XO1ORuynbDL/5Z7V7QMhFfEyE3+jy33QNwZG7VfO7N0e41gK7BkSmWfLH17AI5/qCvmNw1ho/n5/fAn8Bm/UoXXg20KUAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Platforms/Cowboy/Piskels/platform_03.piskel b/src/assets/Background/Platforms/Cowboy/Piskels/platform_03.piskel deleted file mode 100644 index 69f730020..000000000 --- a/src/assets/Background/Platforms/Cowboy/Piskels/platform_03.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"platform01","description":"","fps":12,"height":32,"width":200,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAAgCAYAAABXTzdxAAADXElEQVR4Xu1aQW4UMRDclUCKEIuUQwQnjhx4AH/iAzyOD/CHHHMCcYjEIhQph0Veyate03ZX257BM1O5RBl3t7urutqeUfZfP3887Xa73eHwOvy6/ByPv/95dvvq5Xn98c/zlW3uj5+/ni5Ld29uIB/LSMsh5KrVgMZ6+PEI+Vv11+aRyxONJ+1QnxI2sU4P1z32TfuvhtO0rjQvJE9ps48Cef/2Fm58q/HiehTIh3eHc2xNdFpBIZccOTmBpAJHcoyxegkE2dOysUSo+XsFkvKSyynkEodh9Ok16CwceqxHXEKs2FMI17JP99++fDrJieGZGrKIAGAKnpfsEgm1pxEyMUIdpanpaQ6ZZ4ibYmINCYmZZ19PQ/UQCMotij+afwk/NCd0r2B3Fkg68bUpYRGrNbA34VqBpCfB0+nFpTFRguS01ADUBkDOTj5vmbhTCcRqEIS3ko1cQ/FPe1AbLrm8peC1AS+5tfo43eNKIBZw1rok1EraimVdJeQ6QmjNfrU+/6uxa/Pt4Scbr5WP3vhZw69Uf1eBpFcuzxQoTeM4hb3TqAfxMgY6fVCCUbvaOnKNOvW+nnxHykXLWxWIpThr3QNQyXZ08JA6W6epdlLGZ9bXxCUJJHzI0a5HCMZT2pgnSA3ByKStiesBwnPalISI5Fl6P0H8S3VJ/9aPKaMMHKQ/rPcN+W5nYWytw1csLVDp646nYVPbGPf++/G81PIyG/xT0D0CQRvUQ1oLNtqpkZ4WNc3u9UntWxqtFx5aDUhe2q0H8bs6QVCB9Gq+AJqXtF5ALyFObjiVPnmXTjMv1iMKpJa32tcC84qlJdRTILUFb9kv1+jyecs1BsXWKzg07hx26Gf7KoHMUUBpjxGIGSEH8lCHgIc7CqQOY14NK3FbmhssEI/qlgYC8yUCOQQoEPYGESggAAuEKE6HAE/n6bBtjUyBtCLYwZ8C6QDiRCEokImAZdh1IECBrINHVjERAhTIRMAy7DoQGFIgtf8WsA5KWMVICAwnEOQfyEYCkLmsG4HhBLJuuFnd0hCgQJbGGPOdFQEKZFa4udmcCPS4rlMgczLGvWZFgAKZFW5utkUEeIJskXXWDCNAgcBQ0XCLCFAgW2SdNcMIUCAwVDTcIgIUyBZZZ80wAn8BSnxIf8OVyooAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Platforms/Cowboy/Piskels/platform_04.piskel b/src/assets/Background/Platforms/Cowboy/Piskels/platform_04.piskel deleted file mode 100644 index 01ea3a1b8..000000000 --- a/src/assets/Background/Platforms/Cowboy/Piskels/platform_04.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"platform","description":"","fps":12,"height":32,"width":200,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAAgCAYAAABXTzdxAAACu0lEQVR4Xu2aPUoEQRCFHZZVMBFMTTyCiV7J2MRTeQVjTyGYGGggyIKgy7LSMwzs9nZPv+q/baaemW51/XxVr6dG7V4e77YnGb/evn57b9eXZ06v799//c+vLk73Pl8sh+836+Fz42e56Jy2GdP1uvpZD1jOl0MO9lfoczTHkB+bC+pXajf2Zb3ZensXylUasxX7qbq6p/ubfhLsgY1NPgQRFQgSHx2ekGilAnCJN7bu0LkxNx83hFOMDZpXjG/kDHJB1mBSXSAIHNSmpECmckgRyNQNPRUTHYZcg53LD9pL2y6nQJAL0se3s1csHxh0GGOBHPscAjElR8Pv9WPVu/Ctn7v+Ywc09lxKbfZZe10rlRPSM2R1NPmLBPK5+jvY/2sJpFYc142FDG9ssyV1jTFMPr53IGSg0acO4mvXJlRLjEBsrrGcfWKNfYU4eIKYAMjjzQc1tSkh+NJm5gI9xs3tT/r+I6k/tRe+WLl7ZOKUEgjKy9fX7vnhtn9JT7mpdpMo1RS0UNuuxkDH5tbCudb6ZTPJIUbkwq8iEBPErGfIqtLCcDAH/+7dChupQFyDjgjEV69zxYqFo+W2Hm9dwyl2t41lnPvc3HqWu56sAsndvFR/uWGN+cxJIKmMS51vZfXbEwjya7NSQHx+Ux6PpQRSm0Fr8WpwbVYgx/z3DtcgpAiktcGaSz6IQFoZ8FTmByvWXApLBcPzaQTQP9ClRSl/etbvIOXxMcIUgRZXdmnHKBApMdqrIkCBqGo3i5USoECkxGivigAFoqrdLFZKgAKREqO9KgIUiKp2s1gpAQpESoz2qghQIKrazWKlBCgQKTHaqyJAgahqN4uVEqBApMRor4oABaKq3SxWSoACkRKjvSoCFIiqdrNYKQEKREqM9qoIUCCq2s1ipQQoECkx2qsiQIGoajeLlRL4B8M+nnDuKgvIAAAAAElFTkSuQmCC\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Platforms/Cowboy/platform_01.png b/src/assets/Background/Platforms/Cowboy/platform_01.png deleted file mode 100644 index 4f794e3f93aae5c8a17dcad3c29b55f7c71830f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1197 zcmV;e1XBBnP)PInzHSEPo&Vv#vlp zldXJTcBJzQw!1$MgxSKm8S$z9+jI?mtA0)KO-ae|bg^w@*z8TXd}6rvLdB-$?t{;k zr_C?MP}k#r%GY(aIy+*?Mw|6yf&4u@5)M!Ir?rle1WdwZXDU#}EuH4{0wHQsD=y3WxBq+8qyz8F)P)i~EVSAua@-T6&+hh5`ZWA`d ztq6nyB$bWNMp2GjbqL#q$#p+xfnzLFfts*TikX^cOuoJ`sCDS_>#C(J0&#()CL8eoBr_*r>A)o~nB9pWP-8>7l?=5**{3^7IVN zIn_ElLg`LEn3~wHi57^@=CG}s z0ZIW=Y)p}2*1FN_EwUW3Lcw)?UCf5YtZkCFT)1<^i4sUIkWFrQOzaSTOv7Rf4%^xg zj5+-^-A#-F+4*r;EY9_<`%*W#sfwUWesgo0J6@Oe0iV+<1hnF zFi;T)005DoKx9CsBN)#jO>7&-%*8-uNS8Z>t84JEo@;Ng&6jF>wCIgVON(r&qK^EwB;-QN;nc;2Merabj0-4fQR^iy^dx z0a+L_q*NlQ`^AkA$cv9(i-)(CDwLW8A`kB^*#m~rQU*{Q+h0BxmshR}l=%DEgKx$5 z=0@$vlM4j9iHsaN33d$@NbP$%whmDs8z0^kYj@T~p78tn+LfVL5(uPjGRqkRy9fwm zW_qfeKTt4B^Rs1ae&t*DHjJk~)A0(rN2dj%&K~Oa$=#%FUmk{(THS3~hapFdkla(R zQAN@vaR4`!4uWK<^N5Z_c~Hk!zF-&fy-3r=lOukP7^#ar#6JiG=MMN>y?UV&M=Q*= z_w?RH?f*%i8}vusVucVySu?4{L*b_DHXsn3LE!V!^si2(WPOVz&mxeOI>5V*Vx3}w z!7>9H21Ultx59aom2D0HuZnPFyN+!z>{K}_=p3u4^1p7WtFQ0XABz%+a4 zzHO%jU>jzj%M6UnAT}Xz7wPg=GxiV$v_rZ{BrK2+ig`_!8TbzdYP^3Y;phSY0000< LMNUMnLSTXb3`95+ diff --git a/src/assets/Background/Platforms/Cowboy/platform_02.png b/src/assets/Background/Platforms/Cowboy/platform_02.png deleted file mode 100644 index 02727b702315fb93923ca616d6c62c36ef5d9b97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1578 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 diff --git a/src/assets/Background/Sky/Piskels/sky_01.piskel b/src/assets/Background/Sky/Piskels/sky_01.piskel deleted file mode 100644 index d41675926..000000000 --- a/src/assets/Background/Sky/Piskels/sky_01.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_07","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XMVEEURREUb5JLOAAEbgAA1SREpCvAhCwOoaqFXGTPmOg6595yT3PH1/Xk48AAQIECBAgQIAAAQKBwBEggbIJAgQIECBAgAABAgQeAgLEIRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAEC5+Xz58JAgAABAgQIECBAgACBQkCAFMo2CBAgQIAAAQIECBB4CAgQh0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCYgQDJqQwQIECBAgAABAgQICBA3QIAAAQIECBAgQIBAJiBAMmpDBAgQIECAAAECBAgIEDdAgAABAgQIECBAgEAmIEAyakMECBAgQIAAAQIECAgQN0CAAAECBAgQIECAQCZwXr9vV7ZmiAABAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFjhvt99rWsDjCRAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBM773/3K1gwRIECAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIECEwLCJDp3+/xBAgQIECAAAECBFoBAdJ6WyNAgAABAgQIECAwLSBApn+/xxMgQIAAAQIECBBoBQRI622NAAECBAgQIECAwLSAAJn+/R5PgAABAgQIECBAoBUQIK23NQIECBAgQIAAAQLTAgJk+vd7PAECBAgQIECAAIFWQIC03tYIECBAgAABAgQITAsIkOnf7/EECBAgQIAAAQIEWgEB0npbI0CAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIECEwLCJDp3+/xBAgQIECAAAECBFoBAdJ6WyNAgAABAgQIECAwLSBApn+/xxMgQIAAAQIECBBoBQRI622NAAECBAgQIECAwLSAAJn+/R5PgAABAgQIECBAoBUQIK23NQIECBAgQIAAAQLTAgJk+vd7PAECBAgQIECAAIFWQIC03tYIECBAgOVX5XIAAAbfSURBVAABAgQITAsIkOnf7/EECBAgQIAAAQIEWgEB0npbI0CAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIECEwLCJDp3+/xBAgQIECAAAECBFoBAdJ6WyNAgAABAgQIECAwLSBApn+/xxMgQIAAAQIECBBoBQRI622NAAECBAgQIECAwLSAAJn+/R5PgAABAgQIECBAoBUQIK23NQIECBAgQIAAAQLTAgJk+vd7PAECBAgQIECAAIFWQIC03tYIECBAgAABAgQITAsIkOnf7/EECBAgQIAAAQIEWgEB0npbI0CAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIECEwLCJDp3+/xBAgQIECAAAECBFoBAdJ6WyNAgAABAgQIECAwLSBApn+/xxMgQIAAAQIECBBoBQRI622NAAECBAgQIECAwLSAAJn+/R5PgAABAgQIECBAoBUQIK23NQIECBAgQIAAAQLTAgJk+vd7PAECBAgQIECAAIFWQIC03tYIECBAgAABAgQITAsIkOnf7/EECBAgQIAAAQIEWgEB0npbI0CAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIECEwLCJDp3+/xBAgQIECAAAECBFoBAdJ6WyNAgAABAgQIECAwLSBApn+/xxMgQIAAAQIECBBoBQRI622NAAECBAgQIECAwLSAAJn+/R5PgAABAgQIECBAoBUQIK23NQIECBAgQIAAAQLTAgJk+vd7PAECBAgQIECAAIFWQIC03tYIECBAgAABAgQITAsIkOnf7/EECBAgQIAAAQIEWgEB0npbI0CAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMCAmT693s8AQIECBAgQIAAgVZAgLTe1ggQIECAAAECBAhMCwiQ6d/v8QQIECBAgAABAgRaAQHSelsjQIAAAQIECBAgMC0gQKZ/v8cTIECAAAECBAgQaAUESOttjQABAgQIECBAgMC0gACZ/v0eT4AAAQIECBAgQKAVECCttzUCBAgQIECAAAEC0wICZPr3ezwBAgQIECBAgACBVkCAtN7WCBAgQIAAAQIECEwLCJDp3+/xBAgQIECAAAECBFoBAdJ6WyNAgAABAgQIECAwLSBApn+/xxMgQIAAAQIECBBoBQRI622NAAECBAgQIECAwLSAAJn+/R5PgAABAgQIECBAoBUQIK23NQIECBAgQIAAAQLTAgJk+vd7PAECBAgQIECAAIFWQIC03tYIECBAgAABAgQITAsIkOnf7/EECBAgQIAAAQIEWgEB0npbI0CAAAECBAgQIDAtIECmf7/HEyBAgAABAgQIEGgFBEjrbY0AAQIECBAgQIDAtIAAmf79Hk+AAAECBAgQIECgFRAgrbc1AgQIECBAgAABAtMC/7ItJXf0dp2xAAAAAElFTkSuQmCC\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/Piskels/sky_02.piskel b/src/assets/Background/Sky/Piskels/sky_02.piskel deleted file mode 100644 index efd52e749..000000000 --- a/src/assets/Background/Sky/Piskels/sky_02.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"cloud_07","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XoU0oURRFUV4R0AElYCiAfE1CA2g6QCGRBPU1hQ4JRWxz1jRw8tZcs8/tv+frxkeAAAECBAgQIECAAIFA4AiQQNkEAQIECBAgQIAAAQJ/AgLEIRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAEC5+7l9cJAgAABAgQIECBAgACBQkCAFMo2CBAgQIAAAQIECBD4ExAgDoEAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTECAZNSGCBAgQIAAAQIECBAQIG6AAAECBAgQIECAAIFMQIBk1IYIECBAgAABAgQIEBAgboAAAQIECBAgQIAAgUxAgGTUhggQIECAAAECBAgQECBugAABAgQIECBAgACBTODcv71f2ZohAgQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBY4Dx9f17SAxxMgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJnMfP/1e2ZogAAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv5hTVjAAAAatSURBVN/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBc7T9881LeDxBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAwC8K0PElCgBVDAAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/Piskels/sky_03.piskel b/src/assets/Background/Sky/Piskels/sky_03.piskel deleted file mode 100644 index 00fbfcc74..000000000 --- a/src/assets/Background/Sky/Piskels/sky_03.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"sky_02","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XIU4EURRE0fmCSQCDQWBReCQaz/430ySziGvq9AYq//Qz99ye7tfNR4AAAQIECBAgQIAAgUDgCJBA2QQBAgQIECBAgAABAg8BAeIQCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAAEB4gYIECBAgAABAgQIEMgEBEhGbYgAAQIECBAgQIAAAQHiBggQIECAAAECBAgQyAQESEZtiAABAgQIECBAgAABAeIGCBAgQIAAAQIECBDIBARIRm2IAAECBAgQIECAAIFze369MBAgQIAAAQIECBAgQKAQECCFsg0CBAgQIECAAAECBB4CAsQhECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJCJCM2hABAgQIECBAgAABAgLEDRAgQIAAAQIECBAgkAkIkIzaEAECBAgQIECAAAECAsQNECBAgAABAgQIECCQCQiQjNoQAQIECBAgQIAAAQICxA0QIECAAAECBAgQIJAJnPP+cWVrhggQIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBa4Nw/v65pAY8nQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiBsgQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIGyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgbIECAAAECBAgQIEAgEzgv3z9XtmaIAAECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAAAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgUEyPTv93gCBAgQIECAAAECrYAAab2tESBAgAABAgQIEJgWECDTv9/jCRAgQIAAAQIECLQCAqT1tkaAAAECBAgQIEBgWkCATP9+jydAgAABAgQIECDQCgiQ1tsaAQIECBAgQIAAgWkBATL9+z2eAAECBAgQIECAQCsgQFpvawQIECBAgAABAgSmBQTI9O/3eAIECBAgQIAAAQKtgABpva0RIECAAAECBAgQmBYQINO/3+MJECBAgAABAgQItAICpPW2RoAAAQIECBAgQGBaQIBM/36PJ0CAAAECBAgQINAKCJDW2xoBAgQIECBAgACBaQEBMv37PZ4AAQIECBAgQIBAKyBAWm9rBAgQIECAAAECBKYFBMj07/d4AgQIECBAgAABAq2AAGm9rREgQIAAAQIECBCYFhAg07/f4wkQIECAACTI6sIAAAalSURBVAECBAi0AgKk9bZGgAABAgQIECBAYFpAgEz/fo8nQIAAAQIECBAg0AoIkNbbGgECBAgQIECAAIFpAQEy/fs9ngABAgQIECBAgEArIEBab2sECBAgQIAAAQIEpgXO2+/fNS3g8QQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgIAAcQMECBAgQIAAAQIECGQCAiSjNkSAAAECBAgQIECAgABxAwQIECBAgAABAgQIZAICJKM2RIAAAQIECBAgQICAAHEDBAgQIECAAAECBAhkAgIkozZEgAABAgQIECBAgMA/qkwE94dCPGAAAAAASUVORK5CYII=\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/Piskels/sky_04.piskel b/src/assets/Background/Sky/Piskels/sky_04.piskel deleted file mode 100644 index 67dd3ea76..000000000 --- a/src/assets/Background/Sky/Piskels/sky_04.piskel +++ /dev/null @@ -1 +0,0 @@ -{"modelVersion":2,"piskel":{"name":"sky_03","description":"","fps":9,"height":600,"width":800,"layers":["{\"name\":\"Layer 1\",\"opacity\":1,\"frameCount\":1,\"chunks\":[{\"layout\":[[0]],\"base64PNG\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQVR4Xu3XsQ0AIAwEMVLA/huDxBBXOQu8ZKW5Wfvc5QgQIECAAAECBAgQIBAIjAAJlE0QIECAAAECBAgQIPAFBIhHIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHx+yDBoAAAWiSURBVCBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBASIHyBAgAABAgQIECBAIBMQIBm1IQIECBAgQIAAAQIEBIgfIECAAAECBAgQIEAgExAgGbUhAgQIECBAgAABAgQEiB8gQIAAAQIECBAgQCATECAZtSECBAgQIECAAAECBB5lAXHnM/rNegAAAABJRU5ErkJggg==\"}]}"]}} \ No newline at end of file diff --git a/src/assets/Background/Sky/bg_01.png b/src/assets/Background/Sky/bg_01.png deleted file mode 100644 index 90518ad6a455de912d3208aeafee7544df464e05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10020 zcmeAS@N?(olHy`uVBq!ia0y~yU{+vYV2a>i1B%QlYbs!1P+;(MaSW-5dwbn5kR?#W zC2*go&I1O)9SqDN6NM(MXA;<8)wW8saI#(Ug4gpaPuiZBkH0>-pMjByg+oBWp#jKf zJRqphxQP=Xz#_-QbVLy<3sN?LlVd{9EdeAwOhEw^mJcJVe0=`& z^YcUS@(;*pbaH4AIb{Z`Q-Gyn1qX*fJCYIyH3bKwEN6JN!vd5yAC-sK#G~Oenm$JJ z$7uP0C_;x@`B)IQKRa z;+SylwiLWaGwP7h5E)G)qq%0Z92qTH@z*sL`P=VjM;$<_Z3IrRuz0xTB2{aQjE~q5 z)%d9VX!wk#kJ0=AYmEY%rK9D;X!!{5t&G+WqxHjR{eZWAIQRSh-&5Ck5Pg0H16>7& zW%c`y3&V#2GFVwWUg!40OW6Zk8W?8&`zz-U9|l+;Dxk1-yD4HM;W86b%CGO$Hi%(> zFo%XM_pTw@Za&-`6JFkb{}C}B5yi-OsVZ6-K9Vr%kkJqs_%!k~{Am#b1KWMjS^#hk u7)`jNS$VW@8!hffE5Okv!LVs0{okakTK=VM?ndD1HwI5vKbLh*2~7YxGCL>$ diff --git a/src/assets/Background/Sky/bg_02.png b/src/assets/Background/Sky/bg_02.png deleted file mode 100644 index a4bedc1ebead4d7a8de5275f8674b54c096cbc03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9972 zcmeAS@N?(olHy`uVBq!ia0y~yU{+vYV2a>i1B%QlYbs!1P+;(MaSW-5dwYGMuSTGV zYhaw<1xD2bjfNUuC*}+*2gQjjUrk&2I9+p!ubC8lx)!tf{M-G{UmtUCU|?io;Sf-8 zXkch`c)&5i;U)`QfRU-5iRp+USP~*QfsmR5Y4CM)SvL z`7n~o$LH^!emw*)|3I~flS6~ZDKkiw0xlJQ2n#6iH6qnBJ`N2jSK5$N2q@&iN>Gpq zqw=HSGnzg|^9QI=3NArL%ZHIwK0dg!e{cNFS&Fcp2`~{XV`Vw<<^A^xgwWashRnTd z1>uQghM0iD<^A^`bHe*0TbP)ZeBI^-uUZnK92$K7*Y&Hz(v`vmE{+M;ZcBj^8Mq6S z$;fE*_qXjlcx~mNt>6%qpAGFIjXK1kVKhWW)5vJ987)UfcFAhNFCTw>OT%$tc>Oav z_%S*-I662wIyek(Ofmuo&qoKxN6SZ8|AX-0_?+YC|A%i&>wxz@7#c@AB%@ul(N61V zH-2i1B%QlYbs!1P+;(MaSW-5dwX5ck0nsV z<>JpKPljg4gun_Fsq_ELFRN_s$bR*OP3!*`RjRgV%3ay)XVU-F{RE~-1h$51b37i}gdTt3o)q_e-rX#$g@~}EYVKjV3 z)5mE37%d+VMd(N?ALo4jSD2dJhSaf`Ats=3dH?;#obY;L3lr0luiM<<{g;F&hX$Yj zb^Yq_a`XZh$AoLQrQr2UV#{-{GnLu53KjOLora%4o8tPk$k?_Zb6h*aA+CJS41+fvY40MO_cjfTq3-F|=HRQJJ0#PAtM3KNscVlx-`pj<-(Lm~61Jbch{ sG<-(W$7uc-Eg#@B5F@>OJYc`dhvj>_lT89}4I6`}tDnm{r-UX30Pe}d^#A|> diff --git a/src/assets/Background/Sky/bg_04.png b/src/assets/Background/Sky/bg_04.png deleted file mode 100644 index 2282c871fec42b5fe36d2afe39811d0d91446dda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9705 zcmeAS@N?(olHy`uVBq!ia0y~yU{+vYV2a>i1B%QlYbs!1P+;(MaSW-5dwYE&FM|RP zi($}#f6~oI1i~%3_oOV{8TtFpQw{+IhXw{lCKez=fTM?jbBZsL$Ol%I4tInC2L)jP z1<9?7VAT+9EFJQr@~{9L4WH5UF`7R{%ZJhO5nio~)(@lgBfNnzT0f4~kE8YDX#F@^ zKaSRq&|c$c`(U(vFxozV4#14Ik4D=^qwS;7_R(njXtaGa+CBo0s*ko0N85*^?ZeUb zA*4zioqrsie;u8FCUO2D9zu&P4K|6B zy7WV^1|cFcwUDgo`40q5)!rZ!88jJG&>Yy7O9dHWfrAKYlfEe&qJ}`MAqe92ozK39 zS_dxgd-vXR&i(Ftnq^t&M>3hT+O;=%9-bIMHk;M@do)E{^oM&C)=pCLdAgpm1t@k^ z&r6X3MPj2!!s{M{XCa99#+?kFnRB&TFg9jv16`>Rxk3?>iIDADs(<1rvnS76(J0O{ z4|cC4a)kT+9ejBMnD!6B>6=4hHUy^-Qee%C3e4ZT>s*8?kVKHAo}40oaVcvh1b}8) zE^mNtY7q*#E+;~g#Mt4LCAkN3w3u(+;sP9IrN^}&ydV3Br<*c#UiSDfjm=0zDsnt7 zf+7kOV_$ZQdrc~pF>+2ToQvR#`0N42G7i^ lJ{9OsC=n&_ABpiJzyJ*&>ep5+m(>6O002ovPDHLkV1k0g(4+tW diff --git a/src/assets/dude.png b/src/assets/dude.png deleted file mode 100644 index 6b35f4b4b1b00e757700e0852b8527200e82c538..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3226 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≪FlD{saED?lL3>dvNW~evUg%I~hyi#*=|w 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∓M+E1WFqlN-7B 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�&`K&)0ST-%5Ck2agELY+pO(jLAI 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 !LcA z)jXh2k(~Xe#6xpSJW;ma+;%O__7ADdv+0O{%ENb4i`-$`^f{&I6K#wtm87#TeKj3_ z&P8vR9`&(H)A@iTv%Lf@hlLgJByH7G8pKrGTlawN-K%O}nsi&8M`H3@SAxtsSa0Wu?rRhl(9E+YDE0zQu+A`n!ux|} zTjHvor6{*+b#o9VT4M^CmA9R13G+{_q4)JtXO4l@C(72Gf1~1BZ;uWz>&)1CcnX5G z2ud@J4{t-i50iM8#bYYGo(dU0gEo$QtRx$~Y_i-0d>GpzLpuYy(m>)g0Y3!x{B%p+ zIVzc)1^VL#^m}BO`cRYYhZ0X%^ViJgSsn>CMSy>r8UI{C-L14Zl6+?B{VQikKiv!@0RPD+HTZXQwDe#x2!N>!shy>` zwG4M4We~A}0X6`zLMbf)mDm7em&b!b(YMOHGJMn*8TsvsG(a#2%0QggMnH)Xz>s%R zm0F$u@sa)sgCK?=8N+aL0lfSFMVz85Ut?3o=yB)FPV>}@wg{#lo)E8j1R{F4t2z=XpF zz+g*COF%X`YGo=OsFcov2^g=7Mhem?nV}TKaG7^xsXTJ}VFX-S))7BXsC8lhc#RYx zxl8ryEF+L+P^ShAfi?yyHUOa^fYx6&y>8|-2E5AbCX`i8C1QvdII_@R4vW|@B-tp0 ztBRa@vncM#>a=}@m2B|qxpOb+PXt55t13$ayY5%y2Kb!P%Aynnd4Rqp%pSp77?3pj zPaCi&-F8_~!Da)g0iW0tSRRWhDh^Sxr~yCAYY2cpr2!uU)CJTT@I%nwV?aN&0Acpd zyrAD4u&b+cqilbakFe!YwjWgo=Nq{4Y=XK=?9Fpfvw1%C{KKRhX(D@g;=E-&YcWje zPAI=JYstUW4bQ>%S+s@2=9bpK=(fl(_UBXbS*Uk^2>zoJb;~W6we-_NGL<8gf1v*Z z{Pm5p%tx8*$Vm*KW7t@LM07xnERsf}i;RMKrB(in#9 z$ZiRmd5%Io#bP3{D)~l=D&PdTzToV0v=3`8>}#R z5e9Yh6g2<^f(I~}adZXnv~K+y=Jmr^Fhf;27=b`nuEG;YD@PSldchk=hu(l6=C12X zUGWO?yrx5sfDJ>V&dfC-o&mgqbeEQhu=qY^-mY9?EwkflnG;tj&qZy4tnhPSq1$M< zgngS;i7Yi^AzKFv!-C{>ijhJwUS(wCBy^Bg@pnikV)B}4^V;(LkR|0;*$b*tnE@Xw zyDS!D1@uiJmXUM{A%kBLo2BIg^e6Kg^j%CegHf0P`o01Eo(>IeLo+}>Wcv=Y{kH1d z8KB?4p(~h|?7S%R{FVa$A;?vl*9sq~-18i43rRjGHt<_{x)UNe-O+XxgSHej_G0+EK2p&>BK7=v=7 zWe~7ZwHhhDEF*4^x0(fI&9)L~fe^IIG2seax49BIy`=KitYpqn%T~mLbUdc8sOacr zK2yo86ms+p;9HQs!0538Hd?$Cf9`z@^hK0B@JjPq!JuC(&pdUG+?rlFND!J66jQ9mB^SlWBFKC=UNYdPm`}ICc4e}ls z>u;BQ7J7WKb`JZm_b(m%XBq(6A_gFg0l)x6OWY=n5ugcU1gPBz$M# zF$Sm_R#8JRpD_p*9!KyP%Wtie%SM4OvC6zk&1K0*VTvvTz&#!DAY8)Sg9y7%wpK|l zD}29R%M*1}HOrC~%4lwl#&o=t0sEq)>9|2Q84oBZv;}Md_5}d`gocYC9H3$V9}Iu8 z8NhWGkai+JmX}gtRc^byLvu3yknIEXk6)Wm&js5*Br?zQoW}X0)bku$go7UB-MsVz z`9K4`i%C8UZhIDPlSFI|B{))CTwtb$f0L@cDX| z0sZi&s)OzK&erpX4d|bCYO4dMfc`)`)1Mdg4*}ahQe_@&|4)Dc02e>2)bf}6o&W#< M07*qoM6N<$f|g~m$p8QV diff --git a/src/assets/platform.png b/src/assets/platform.png deleted file mode 100644 index 1e4a3f86d7311592c4fdd257daaf21db4176dd21..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14973 zcmeI3&2QsG7{;d{q@`$C0aB^BU}c3^Bocq*qqXH^X_J;#BBkmEZMzrh*pt?3VjJ6S z(q32=fy52L1tIts5Qr1n0}>J!&RpPzIG{yHoRHu`nX#StjgxeWw8x3m%Yq`wMNuk>axpI}nxtxSSx8>F+B}JL-|A>PjrC+W z@~xUX3`0*7#eTnE=obsFe;~@Ls)~{#DoUOx^1-PS8iTwOT#u6s^E7Z^`nDI^t|QRA zM%z6OtGOHLJIYGjXP!tD-C&~p$oMCDeBn?ew-oscCZh%S+6?F2jF)Kr!^%HtjT-3YX0inxn=#1aq+^3=6>hi>Qw zhwco3qwbj)L%TDB1?`z>!vlMUjrPR0sHWnr)=432bsrm{>$hCDTZ_wedpLWcUKeiM zwjImu2QTSjR-M*Nng}AzXmu00S%WKN2s;;d|t4pP_ zsw|b1)nQs-olJ{;`vhC-zT1n=vuF4LrpKh38=jNV1(0ldbkH<=a;eFD>a*uFVNK^l zlIwA|HFKp6R%T#LGmkK&OU=|ULI1jMlPlcl0#cZ}@oSfE)(Kg%c+ncg)Ug9vaR8wrb*#*RUaL(M7spU3+}L z;@0tP9G2eXw(FLubzHw^gf+Wo9AMFN4ssGFqk?xadEl z7{)E~0ETOoa=BR6#cXrdv271`UpbR-{gkgn(r3({c592XN26mVRS1~cZkn24Z&{*dafr?2}(j{@VWd7xIfs!Q9wsB6Riw zLU-Rq=$~`)`2e9~38CNj5z;)%|<_0epuk@Bjb+ diff --git a/src/assets/sky.png b/src/assets/sky.png deleted file mode 100644 index 5972639f229c7362edac856b42b86b93811ef3f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4757 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 From d413de21f10950577c092d26f452874421c3249f Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 19:28:27 -0500 Subject: [PATCH 42/66] Added missing package --- package-lock.json | 9 +++++++++ package.json | 1 + 2 files changed, 10 insertions(+) diff --git a/package-lock.json b/package-lock.json index eb75a3707..72840b119 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7526,6 +7526,15 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, + "style-loader": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.2.1.tgz", + "integrity": "sha512-ByHSTQvHLkWE9Ir5+lGbVOXhxX10fbprhLvdg96wedFZb4NDekDPxVKv5Fwmio+QcMlkkNfuK+5W1peQ5CUhZg==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.6.6" + } + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", diff --git a/package.json b/package.json index a417e2d9b..6b4be3eef 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "html-webpack-plugin": "^3.2.0", "phaser": "^3.20.1", "sass": "^1.26.10", + "style-loader": "^1.2.1", "terser-webpack-plugin": "^2.2.1", "webpack": "^4.41.2", "webpack-merge": "^4.2.2" From 59870ccb3c866bc014c7200a777997593cb26b11 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 19:28:27 -0500 Subject: [PATCH 43/66] Added missing package --- package-lock.json | 9 +++++++++ package.json | 1 + 2 files changed, 10 insertions(+) diff --git a/package-lock.json b/package-lock.json index eb75a3707..72840b119 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7526,6 +7526,15 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, + "style-loader": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.2.1.tgz", + "integrity": "sha512-ByHSTQvHLkWE9Ir5+lGbVOXhxX10fbprhLvdg96wedFZb4NDekDPxVKv5Fwmio+QcMlkkNfuK+5W1peQ5CUhZg==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.6.6" + } + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", diff --git a/package.json b/package.json index a417e2d9b..6b4be3eef 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "html-webpack-plugin": "^3.2.0", "phaser": "^3.20.1", "sass": "^1.26.10", + "style-loader": "^1.2.1", "terser-webpack-plugin": "^2.2.1", "webpack": "^4.41.2", "webpack-merge": "^4.2.2" From cb0ebf901f3556c6ed05ccb6a4d878bf497e2d6d Mon Sep 17 00:00:00 2001 From: Coding_Angarita <44899916+codingAngarita@users.noreply.github.com> Date: Sat, 1 Aug 2020 19:53:14 -0500 Subject: [PATCH 44/66] Update game.js --- src/scenes/game.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scenes/game.js b/src/scenes/game.js index 7658167ba..900b235dc 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -209,7 +209,7 @@ export default class MainGame extends Phaser.Scene { } if (this.movingUp && this.player.jumpsAvailable > 0) { this.player.jumpsAvailable -= 1; - this.player.body.velocity.y -= 400; + this.player.setVelocityY(-400); } if (this.movingDown) { this.player.body.velocity.y += 20; From 42ad790aeb818bc17058d17f763f522a17f4f65a Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 2 Aug 2020 14:44:47 -0500 Subject: [PATCH 45/66] Added functionalities & solved duration bug --- src/classes/sceneUtils.js | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/src/classes/sceneUtils.js b/src/classes/sceneUtils.js index 02c3140cd..42d65726e 100644 --- a/src/classes/sceneUtils.js +++ b/src/classes/sceneUtils.js @@ -5,8 +5,9 @@ export default class Scene extends Phaser.Scene { super(sceneKey); } - centerTextHorizontally(textElement) { - textElement.x = (this.game.config.width / 2) - (textElement.width / 2); + centerTextHorizontally(textElement, centerText = true, divider = 2, multiplier = 1) { + const textOff = centerText ? textElement.width / 2 : 0; + textElement.x = (this.game.config.width / divider) * multiplier - textOff; } centerImageHorizontally(image) { @@ -19,11 +20,31 @@ export default class Scene extends Phaser.Scene { fade(element, from, to, duration = 1500, onEnd = () => {}) { element.alpha = from, - this.tweens.add({ - targets: element, - alpha: to, - duration, - onComplete: () => { onEnd() } + this.tweens.add({ + targets: element, + alpha: to, + duration, + onComplete: () => { onEnd() } + }); + } + + fadeInElements(duration = 1500, onEnd = () => {}) { + this.children.list.forEach( (children, index) => { + if (index === 0) { // Only add callback to first element + this.fade(children, 0, 1, duration, onEnd); + } else { + this.fade(children, 0, 1, duration); + } + }); + } + + fadeOutElements(duration = 1500, onEnd = () => {}) { + this.children.list.forEach( (children, index) => { + if (index === 0) { // Only add callback to first element + this.fade(children, 1, 0, duration, onEnd); + } else { + this.fade(children, 1, 0, duration); + } }); } } From 226fc0776223a3039260285b8caba561c2378bc6 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 2 Aug 2020 15:05:35 -0500 Subject: [PATCH 46/66] Added credits scene --- src/index.js | 4 +- src/scenes/background.js | 14 ++--- src/scenes/characterSelection.js | 14 +---- src/scenes/credits.js | 94 ++++++++++++++++++++++++++++++++ src/scenes/title.js | 38 +++++++++---- 5 files changed, 132 insertions(+), 32 deletions(-) create mode 100644 src/scenes/credits.js diff --git a/src/index.js b/src/index.js index b1334e301..58d369611 100644 --- a/src/index.js +++ b/src/index.js @@ -10,6 +10,7 @@ import BackgroundScene from './scenes/background'; import GameScene from './scenes/game'; import DeathScene from './scenes/death'; import TitleScene from './scenes/title'; +import CreditsScene from './scenes/credits'; const config = { type: Phaser.CANVAS, @@ -30,7 +31,8 @@ const config = { TitleScene, SelectionScene, GameScene, - DeathScene + DeathScene, + CreditsScene ], }; diff --git a/src/scenes/background.js b/src/scenes/background.js index 75f5c2cdf..954b1f0b9 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -1,4 +1,5 @@ import Phaser from 'phaser'; +import Scene from '../classes/sceneUtils'; // Importing assets import skyAsset from '../assets/Background/Sky/sky.jpeg'; @@ -13,7 +14,7 @@ import cloudAsset05 from '../assets/Background/Clouds/cloud_05.png'; import cloudAsset06 from '../assets/Background/Clouds/cloud_06.png'; import cloudAsset07 from '../assets/Background/Clouds/cloud_07.png'; -export default class Background extends Phaser.Scene { +export default class Background extends Scene { constructor() { super('background'); @@ -155,8 +156,10 @@ export default class Background extends Phaser.Scene { this.snapTo(-300); } - scrollCameraTo(scrollPosition) { - this.cameras.main.scrollY = scrollPosition; + launchTitle() { + const launchTitleScene = () => this.scene.launch('titleScene'); + + this.scrollTo(-300, 2000, launchTitleScene); } create() { @@ -168,10 +171,7 @@ export default class Background extends Phaser.Scene { this.spawnClouds(); this.snapTo(-2700); - - const launchTitleScene = () => this.scene.launch('titleScene'); - - this.scrollTo(-300, 2000, launchTitleScene); + this.launchTitle(); } update() { diff --git a/src/scenes/characterSelection.js b/src/scenes/characterSelection.js index 4de23cfa6..1c97edc6d 100644 --- a/src/scenes/characterSelection.js +++ b/src/scenes/characterSelection.js @@ -24,18 +24,8 @@ export default class CharacterSelection extends Scene { this.centerTextHorizontally(this.selectText); } - fadeInElements() { - this.fade(this.selectText, 0, 1, 700); - this.fade(this.cowboyImage, 0, 1, 700); - } - - fadeOutElements(onEnd = () => {}) { - this.fade(this.cowboyImage, 1, 0, 700, onEnd); - this.fade(this.selectText, 1, 0, 700); - } - startGame() { - this.fadeOutElements(() => { + this.fadeOutElements(700, () => { this.backgroundScene.scrollTo(0, 2000, () => { this.scene.launch('game'); this.scene.stop(); @@ -60,6 +50,6 @@ export default class CharacterSelection extends Scene { this.addCowboySelection(); // Adds fade transition - this.fadeInElements(); + this.fadeInElements(700); } } diff --git a/src/scenes/credits.js b/src/scenes/credits.js new file mode 100644 index 000000000..589d3aa2f --- /dev/null +++ b/src/scenes/credits.js @@ -0,0 +1,94 @@ +import Phaser from 'phaser'; +import Scene from '../classes/sceneUtils'; + +export default class Credits extends Scene { + constructor() { + super('credits'); + } + + addCreditsText() { + const stylingOptions = { + fontFamily: 'Alagard', + fontSize: '29px', + }; + + let startCoord = 400; + const addText = (text, offAxis = 200, color = '#ddd') => { + const styling = { ...stylingOptions, color }; + + return this.add.text(0, startCoord += offAxis, text, styling); + } + + const leftColumn = []; + const rightColumn = []; + const centerColumn = []; + + // Art & concepts text + leftColumn.push(addText('Art & Concepts')); + rightColumn.push(addText('Jerome of Astora', 0, '#920ec2')); + rightColumn.push(addText('&', 35)); + rightColumn.push(addText('Juan Manuel', 35, '#cc7d23')); + + // Programming text + leftColumn.push(addText('Programming')); + rightColumn.push(addText('Juan Manuel', 0, '#cc7d23')); + + // Special Thanks text + centerColumn.push(addText('Special thanks to:')); + centerColumn.push(addText('Jerome of Astora', 100, '#920ec2')); + centerColumn.push(addText('Slowpoke', 55, '#38abd1')); + centerColumn.push(addText('&', 55)); + centerColumn.push(addText('You for playing <3', 55)); + + leftColumn.forEach(text => { this.centerTextHorizontally(text, false, 8) }); + rightColumn.forEach(text => { this.centerTextHorizontally(text, true, 4, 3) }); + centerColumn.forEach(text => { this.centerTextHorizontally(text) }); + + const textElements = leftColumn.concat(rightColumn).concat(centerColumn); + + this.creditsText = this.add.group(); + this.creditsText.addMultiple(textElements); + } + + moveCreditsText() { + this.tweens.add({ + targets: this.creditsText.getChildren(), + y: '-= 1400', + duration: 15000, + onComplete: () => { + this.returnToMainMenu(); + } + }); + } + + returnToMainMenu() { + const launchTitleScene = () => { + this.scene.launch('background'); + } + + this.fadeOutElements(700, launchTitleScene); + } + + addExitIcon() { + const stylingOptions = { + fontFamily: 'Alagard', + fontSize: '29px', + color: '#fff', + }; + + this.exitIcon = this.add.text(15, 15, 'x', stylingOptions); + this.exitIcon.setInteractive({ cursor: 'pointer' }) + .on('pointerdown', () => { this.returnToMainMenu() }); + } + + create() { + this.backgroundScene = this.scene.get('background'); + + this.addExitIcon(); + this.addCreditsText(); + this.moveCreditsText(); + + this.fadeInElements(); + } + +} diff --git a/src/scenes/title.js b/src/scenes/title.js index c74ee2b66..8dca5204e 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -40,21 +40,27 @@ export default class Title extends Scene { }); } - fadeInElements() { - this.fade(this.playTitle, 0, 1); - this.fade(this.playCredits, 0, 1); - this.fade(this.title, 0, 1); + startGame() { + this.scene.launch('characterSelection'); + this.scene.stop(); } - fadeOutElements() { - this.fade(this.playTitle, 1, 0); - this.fade(this.playCredits, 1, 0); - this.fade(this.title, 1, 0); - } + startCredits() { + const launchCredits = () => { + this.scene.launch('credits'); + } - startGame() { - this.scene.launch('characterSelection'); - this.scene.remove(this); + const stopScenes = () => { + this.backgroundScene.scene.stop(); + this.scene.stop(); + } + + const closeBackground = () => { + this.backgroundScene.fadeOutElements(1500, stopScenes); + } + + this.fadeOutElements(700, launchCredits); + this.backgroundScene.scrollTo(-2700, 2000, closeBackground); } addPlayTitle() { @@ -65,6 +71,8 @@ export default class Title extends Scene { }; const click = () => { + if (this.playTitle.alpha < 0.5) return; + this.fadeOutElements(); this.startGame(); } @@ -93,6 +101,11 @@ export default class Title extends Scene { color: '#333', }; + const click = () => { + if (this.playCredits.alpha < 0.5) return; + this.startCredits(); + } + const enterHover = () => { this.playCredits.setStyle({ color: '#000' }); } @@ -105,6 +118,7 @@ export default class Title extends Scene { this.centerTextHorizontally(this.playCredits); this.playCredits.setInteractive({ cursor: 'pointer' }) + .on('pointerdown', () => { click() }) .on('pointerover', () => { enterHover() }) .on('pointerout', () => { exitHover() }); } From 167243d9bd894905d2a738064a6deda966834b02 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 2 Aug 2020 17:31:48 -0500 Subject: [PATCH 47/66] Added early scoreboard --- .gitignore | 3 ++ dev/index.html | 2 ++ package-lock.json | 39 ++++++++++++++++++++++++ package.json | 2 ++ src/index.js | 19 +++++++++++- src/scenes/scoreboard.js | 65 ++++++++++++++++++++++++++++++++++++++++ src/style/main.scss | 9 ++++++ 7 files changed, 138 insertions(+), 1 deletion(-) create mode 100644 src/scenes/scoreboard.js diff --git a/.gitignore b/.gitignore index 815caa053..a20ad8c27 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,6 @@ dist/ # Dev build stylesheets stylesheet.css stylesheet.css.map + +# Removing .env +.env diff --git a/dev/index.html b/dev/index.html index e5eef9265..aa36bdb53 100644 --- a/dev/index.html +++ b/dev/index.html @@ -5,5 +5,7 @@ +

diff --git a/package-lock.json b/package-lock.json index 23a73db06..765b2c991 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3103,6 +3103,12 @@ "domelementtype": "1" } }, + "dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", + "dev": true + }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", @@ -5368,6 +5374,11 @@ "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==", "dev": true }, + "lokijs": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/lokijs/-/lokijs-1.5.10.tgz", + "integrity": "sha512-XUCpwfR0cL2WJZECy80rGmDve9MCDVYFZqPGATSHCh0L+qocsPww3VB20d3Pvl0QpSBzWConCZyb6Ov8lzXoPA==" + }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -6109,6 +6120,11 @@ "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, + "papaparse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.2.0.tgz", + "integrity": "sha512-ylq1wgUSnagU+MKQtNeVqrPhZuMYBvOSL00DHycFTCxownF95gpLAk1HiHdUW77N8yxRq1qHXLdlIPyBSG9NSA==" + }, "parallel-transform": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", @@ -6291,6 +6307,24 @@ "path": "^0.12.7" } }, + "phaser3-rex-plugins": { + "version": "1.1.21", + "resolved": "https://registry.npmjs.org/phaser3-rex-plugins/-/phaser3-rex-plugins-1.1.21.tgz", + "integrity": "sha512-hZ/iHq2wiOeivjxvC1a3WHoMdzdjLU7AZqau40eRldgYn5v1D0LmZeDVZdAxwLdJeZe2NR8XfxeScYCfPz2FOA==", + "requires": { + "eventemitter3": "^3.1.2", + "lokijs": "^1.5.9", + "papaparse": "^5.2.0", + "webfontloader": "^1.6.28" + }, + "dependencies": { + "eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + } + } + }, "picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", @@ -8515,6 +8549,11 @@ "minimalistic-assert": "^1.0.0" } }, + "webfontloader": { + "version": "1.6.28", + "resolved": "https://registry.npmjs.org/webfontloader/-/webfontloader-1.6.28.tgz", + "integrity": "sha1-23hhKSU8tujq5UwvsF+HCvZnW64=" + }, "webpack": { "version": "4.43.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.43.0.tgz", diff --git a/package.json b/package.json index 1fb930f13..2dc3c6107 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "@babel/preset-env": "^7.7.1", "babel-loader": "^8.0.6", "css-loader": "^4.1.0", + "dotenv": "^8.2.0", "eslint": "^6.8.0", "eslint-config-airbnb-base": "^14.1.0", "eslint-plugin-import": "^2.20.2", @@ -33,6 +34,7 @@ "clean-webpack-plugin": "^3.0.0", "html-webpack-plugin": "^3.2.0", "phaser": "^3.20.1", + "phaser3-rex-plugins": "^1.1.21", "sass": "^1.26.10", "style-loader": "^1.2.1", "terser-webpack-plugin": "^2.2.1", diff --git a/src/index.js b/src/index.js index 58d369611..1ef146ce9 100644 --- a/src/index.js +++ b/src/index.js @@ -1,5 +1,8 @@ import Phaser from 'phaser'; +// Plugins +import InputTextPlugin from 'phaser3-rex-plugins/plugins/inputtext-plugin.js'; + // Sass loading import './style/main.scss'; @@ -11,6 +14,7 @@ import GameScene from './scenes/game'; import DeathScene from './scenes/death'; import TitleScene from './scenes/title'; import CreditsScene from './scenes/credits'; +import ScoreboardScene from './scenes/scoreboard'; const config = { type: Phaser.CANVAS, @@ -32,8 +36,21 @@ const config = { SelectionScene, GameScene, DeathScene, - CreditsScene + ScoreboardScene, + CreditsScene, ], + parent: divId, + dom: { + createContainer: true + }, + plugins: { + global: [{ + key: 'rexInputTextPlugin', + plugin: InputTextPlugin, + start: true + }, + ] + } }; const game = new Phaser.Game(config); diff --git a/src/scenes/scoreboard.js b/src/scenes/scoreboard.js new file mode 100644 index 000000000..1c5b10eaf --- /dev/null +++ b/src/scenes/scoreboard.js @@ -0,0 +1,65 @@ +import Phaser from 'phaser'; +import Scene from '../classes/sceneUtils'; + +export default class Scoreboard extends Scene { + constructor() { + super('scoreboard'); + } + + addLabel() { + const stylingConfig = { + fontFamily: 'Alagard', + fontSize: '32px', + color: '#fff' + }; + + this.label = this.add.text(0, 300, 'Tell me your name: ', stylingConfig).setOrigin(0); + } + + submitInfo() { + this.submitText.destroy(); + console.log(process.env); + } + + addSubmitText() { + const stylingConfig = { + fontFamily: 'Alagard', + fontSize: '32px', + color: '#fff' + }; + + this.submitText = this.add.text(0, 300, 'Submit', stylingConfig).setOrigin(0); + + const calcX = this.textInput.x + this.textInput.width + this.submitText.width; + this.submitText.x = calcX + + this.submitText.setInteractive({ cursor: 'pointer' }) + .on('pointerdown', () => { this.submitInfo() }); + + this.submitText.disableInteractive(); + } + + addNameInput() { + const stylingConfig = { + fontFamily: 'Alagard', + fontSize: '29px', + color: '#fff', + }; + + const calcX = this.label.x + this.label.width; + this.textInput = this.add.rexInputText(calcX, 300, 250, 30, stylingConfig).setOrigin(0); + this.textInput.on('textchange', (inputText, e) => { + if(inputText.text.length === 0 || !inputText.text.trim()) { + this.submitText.disableInteractive(); + } else { + this.submitText.setInteractive(); + } + }); + } + + create() { + this.addLabel(); + this.addNameInput(); + this.addSubmitText(); + } +} diff --git a/src/style/main.scss b/src/style/main.scss index 7b150d1d5..d2948dc31 100644 --- a/src/style/main.scss +++ b/src/style/main.scss @@ -5,6 +5,15 @@ html, body { font-family: "Alagard"; } +body { + display: flex; + justify-content: center; +} + +input { + border-bottom: 1px solid #fff !important; +} + @font-face { font-family: "Alagard"; src: url("../assets/Fonts/alagard.ttf") format("truetype"); From 199b48e57cd52abe376e539c049bead4db7be36a Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 2 Aug 2020 17:35:54 -0500 Subject: [PATCH 48/66] Stoping credits scene --- src/scenes/credits.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/scenes/credits.js b/src/scenes/credits.js index 589d3aa2f..e1e492cd9 100644 --- a/src/scenes/credits.js +++ b/src/scenes/credits.js @@ -63,6 +63,7 @@ export default class Credits extends Scene { returnToMainMenu() { const launchTitleScene = () => { + this.scene.stop(); this.scene.launch('background'); } From 84c1e4c083600c6a82aa599b6e4a01a2003999af Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 2 Aug 2020 20:55:14 -0500 Subject: [PATCH 49/66] Added dotenv to webpack --- package-lock.json | 18 ++++++++++++++++++ package.json | 1 + webpack/base.js | 2 ++ 3 files changed, 21 insertions(+) diff --git a/package-lock.json b/package-lock.json index 765b2c991..e342dc644 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3109,6 +3109,24 @@ "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", "dev": true }, + "dotenv-defaults": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dotenv-defaults/-/dotenv-defaults-2.0.0.tgz", + "integrity": "sha512-8X8gQoM+BH0L/v+GwgpeNwrthbG2uTDVr3vkbedQPLrIalZE0vxB9LbuD+7echbiP7fAY3tE+pZI11R1DtlUNg==", + "dev": true, + "requires": { + "dotenv": "^8.2.0" + } + }, + "dotenv-webpack": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dotenv-webpack/-/dotenv-webpack-2.0.0.tgz", + "integrity": "sha512-Omo5IpVl7XRgWXeZjxdfqOBEApJPxGLMOIx3F/w/W7ppUKgYMOXrk4eczlQrErPD4X0YRESlyGJek3O4uobRnw==", + "dev": true, + "requires": { + "dotenv-defaults": "^2.0.0" + } + }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", diff --git a/package.json b/package.json index 2dc3c6107..6f40b52fb 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "babel-loader": "^8.0.6", "css-loader": "^4.1.0", "dotenv": "^8.2.0", + "dotenv-webpack": "^2.0.0", "eslint": "^6.8.0", "eslint-config-airbnb-base": "^14.1.0", "eslint-plugin-import": "^2.20.2", diff --git a/webpack/base.js b/webpack/base.js index a8f256b96..e742bf8e9 100644 --- a/webpack/base.js +++ b/webpack/base.js @@ -1,4 +1,5 @@ const webpack = require('webpack'); +const Dotenv = require('dotenv-webpack'); const path = require('path'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const { CleanWebpackPlugin } = require('clean-webpack-plugin'); @@ -55,6 +56,7 @@ module.exports = { ], }, plugins: [ + new Dotenv(), new CleanWebpackPlugin({ root: path.resolve(__dirname, '../'), }), From a4308f1599a98ecf7b0654eaaaecab13093c388c Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 2 Aug 2020 22:06:24 -0500 Subject: [PATCH 50/66] Added support for Async JS in Babel --- .babelrc | 1 + package-lock.json | 26 ++++++++++++++++++-------- package.json | 2 ++ 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/.babelrc b/.babelrc index 259572759..68cb945a6 100644 --- a/.babelrc +++ b/.babelrc @@ -11,4 +11,5 @@ "modules": false }] ], + "plugins": ["@babel/plugin-transform-runtime"] } diff --git a/package-lock.json b/package-lock.json index e342dc644..b2998eb95 100644 --- a/package-lock.json +++ b/package-lock.json @@ -779,6 +779,18 @@ "@babel/helper-plugin-utils": "^7.10.4" } }, + "@babel/plugin-transform-runtime": { + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.11.0.tgz", + "integrity": "sha512-LFEsP+t3wkYBlis8w6/kmnd6Kb1dxTd+wGJ8MlxTGzQo//ehtqlVL4S9DNUa53+dtPSQobN2CXx4d81FqC58cw==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.10.4", + "@babel/helper-plugin-utils": "^7.10.4", + "resolve": "^1.8.1", + "semver": "^5.5.1" + } + }, "@babel/plugin-transform-shorthand-properties": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", @@ -931,10 +943,9 @@ } }, "@babel/runtime": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.10.5.tgz", - "integrity": "sha512-otddXKhdNn7d0ptoFRHtMLa8LqDxLYwTjB4nYgM1yy5N6gU/MUf8zqyyLltCH3yAVitBzmwK4us+DD0l/MauAg==", - "dev": true, + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.0.tgz", + "integrity": "sha512-qArkXsjJq7H+T86WrIFV0Fnu/tNOkZ4cgXmjkzAu3b/58D5mFIO8JH/y77t7C9q0OdDRdh9s7Ue5GasYssxtXw==", "requires": { "regenerator-runtime": "^0.13.4" } @@ -6784,10 +6795,9 @@ } }, "regenerator-runtime": { - "version": "0.13.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" }, "regenerator-transform": { "version": "0.14.5", diff --git a/package.json b/package.json index 6f40b52fb..8729c7ea6 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "licenseUrl": "https://codingangarita.mit-license.org/", "devDependencies": { "@babel/core": "^7.7.2", + "@babel/plugin-transform-runtime": "^7.11.0", "@babel/preset-env": "^7.7.1", "babel-loader": "^8.0.6", "css-loader": "^4.1.0", @@ -32,6 +33,7 @@ "webpack-dev-server": "^3.11.0" }, "dependencies": { + "@babel/runtime": "^7.11.0", "clean-webpack-plugin": "^3.0.0", "html-webpack-plugin": "^3.2.0", "phaser": "^3.20.1", From f6ebd2c95c056c479121f6460eb6f426ab26182f Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 3 Aug 2020 17:49:34 -0500 Subject: [PATCH 51/66] Changed assets --- src/assets/Background/Back/front.png | Bin 10395 -> 10386 bytes src/assets/Background/Back/front02.png | Bin 4311 -> 4317 bytes src/assets/Background/Sky/sky.jpeg | Bin 20976 -> 0 bytes src/assets/Background/Sky/sky.png | Bin 0 -> 48417 bytes src/scenes/background.js | 7 +++---- src/scenes/credits.js | 3 +-- src/scenes/title.js | 4 ++-- 7 files changed, 6 insertions(+), 8 deletions(-) mode change 100644 => 100755 src/assets/Background/Back/front.png mode change 100644 => 100755 src/assets/Background/Back/front02.png delete mode 100644 src/assets/Background/Sky/sky.jpeg create mode 100755 src/assets/Background/Sky/sky.png diff --git a/src/assets/Background/Back/front.png b/src/assets/Background/Back/front.png old mode 100644 new mode 100755 index 481662fd5236d5dc2473e303db1fe86860dcad76..71752edd7533110e9115010301d1ed8f851d17c2 GIT binary patch delta 2620 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 S4=BFfJNNC#-R^!80R96Z#WIZm diff --git a/src/assets/Background/Back/front02.png b/src/assets/Background/Back/front02.png old mode 100644 new mode 100755 index 95a5085461ca944fa29c3df1e10268d4476a3c0b..3296304e46a51381d0ed636b5515fe745ab17597 GIT binary patch literal 4317 zcmeHLSyU6*7EOx8B%r2bun`#&abQvqktYIDVURG0qRfb-Ti~HMbt5uJND4veRv;>f zB105g(Et)A1wq488AL{zXF&wQ5LzHnAldv(XXa5WkT~Xp#EBL$yj^q1Kynmlq~21du<>C6%Oeib5IbeiGyp z>8U)a0968FO`3X;l68^NjN-((?RWYXYitK9s7uPPE#Sk8BHr_;6HP@ewyMd>V=4p$ zZuEQ${=p#(Cz=yVfa*ytC&I5rlE5~?3=;&ikBKz3(+Jhi{*shku_hhD? zWBMVoawUq%;icCNf6N@#1xDf49S%wxxVto3_dt@HkIk$?Uz333J&w0&ap7bcx`8*= zxRoDX`=g<8mII@|d!^Pr_PJE>Q$;76vfi~l_y*t!fEWj_w!#E;5mq5=SXJDTA2y@^ zogjCw3Wi6;f$a zuie=;eCuy716p?>Ue}w$51bm*M2j_Lb)eR@^t_)wNEz3DQGDCh1#4=^L=!hZIJ_M2 zk=W5+)!%sjPg|2u2kAyP{Dl!sFsY!>*!po+Hc3TB$>r)47Ou zfeJIpMCZgKNiwJeUn)yu$KcS(GxI0nXaFIPs`sl7$&;9qhORtAoN16FlRpD6S|=5} z{A=;=xp0{Y5v}|@CntQlN_Y4X&g}%Jx?11=;CrP~cUjJ#V?d=_5NIBJKy%Zn3F^_+ zvOH?G-O)6^6N&l&gUz)&v)virV;>5_lVY;y%oO!!<+wsMaPm;Y#kT2#nxFLEcj#Y05q#@^owDZ#jb*HkFgPjwrL=5< zw$ti3MSUy)0)sUgR{FQ}pI55)nT+d@{3`2BX#SS?jOgK;C~S^oSxEBH+|lgbfM|Vn zT|xiDBqM;4KeVfZd)AQdh&RrYGlR4{l51ilIwf@TbT^D$&uV{ranvtLzT>)5xA~vJ zQD2ooc276=Wu5nQrXqk+MDM22{>X?GWP87D{>wGd3SczvTthXX#9%Th?_4g5+hpWN zPNlPuW24#gj3<>s?y#eD9xorDk)4{m?FM8tLlZ{iydcPJPs)EaT4X5^l%9 zI2obsP!#7{IeWo&UUqZl}k-P(YJqyiW&ZJN5q@f5~Cv~_aSPkz)DrbjESVrk72Uho;`P0O=nY#(_`*l-hHD-RNIE_>#F~h~y(v}1?!q9Kd!5y_ zdIcqFbG+wlg`Kxti5e-nCsLuY{haCggKoBcpUn~4j$N^C=@?2&U8@rjR>Qd8y3%Zk zgd3`iU<>$eE_#+;%`%|Ju;i!NYHh)#@jsu&4aRDwha@W_jx<=599h>*Y7DC-pyIJ< zA&@Rf2Mg~8SV_^q)!i#RWM}bM889I1gIt1Wfk7bqDJ{P=u*e=o7^E3*oVmhD!^_%l z(8{8VoqET0S_|g^tmG8nYM#(TM}$q=LTGj>5*tpQ-CPZeh1BfW-HHy+II2$jUB#ur zQ>Y%fcuo&sUwxQV-V=Fz8ikGd2|O61$zCx>X81V(FrM4(YBphVUs~adDR0rmI) zOaxOm?(1t`&9ED?o+d)fcsf1B#cbrl93x)fuu#vj$o75ASK*c>k|r{eptrQz-E@#p zV@IhUcZce7UN2Jy*L8;)gf%edeFz>DeObJTJvM@l4qBCU#(p@&3d+3oFHyNc5fOL* z$@&;=4Rs}wR4VV6W%;#h>5wK8N!AP;*Inf#>`B4hCdK2h2JyCX5u!ZYP+ni$h~QwI zZiS6nfK%RtuFbr1T(^V}+V=SxXRIiE35i&R0}ykoms{E&B2WX$MHuBQY!4de3#qxC z18k+@-FQFW`Nl?JO+`n$?Gf2##%w?v$GyC%V@;WqxTWPJHrG~2KojMK`vs*C|Ftzl zib+8uk!9lcd8PWr1jW6Ms>i56#X9f?llFQH4T-Ff%wLn;y*_dV+Q$i7c E1KdpsDgXcg literal 4311 zcmeHLX*^VI8$UD6WDt(ArNr3Z=%J^F)MPofv4v6gL4=H@?U5e48R{*sEG_mm%VRRO zWa3vZrkx^t$~uLJhp{w>hG!`K-n{kc{qlbB<@~O5?sHxDeP7rA`v1>;qVX0+d^|gN z007`KF*Y~?09zrB?Sb0Lx%R*PTmt}LhKYf$b)d^c&!ISHLvSlYJo+&z+R)r58d=VN zd?@8cti4PCLta`s1CvTr%X&5))H^vgSrp$fKQ~BCYoGt9I?4QOL;_%N1Pa7J8x3QH zGueJRcl9?u|Mq6J5Qzx?u`dR~WRd_mXOokce-<7jjs9ffP3IrhV>4mjr)3jiKWN%b zko-S@M1?nWk)2$YT&Ky1IkwC$d{N9?Sr{s%#T4suJBdvh1@*nu;QsIG@>Z?Tpt-%V~DOf{^2rCR;hD2bl2Rs># z^8Oe#5EWkW&q|361nrta9}UTM+bNJ0_%ZBt>%={cLrTN`h%5vGlX>5b73I?bo0?Bv zIaSnH77_lcM}vED-v*in<;xe@RyU3^gK&LOefLx!)R#ooW;@X3r(-)yf+3bRc#02l zNwUHG?w+@V-QYZBnln~|PqZBkTj}h!0^1xr0>wE~AF?@@5GFA@4A(7gMYJR5O{~d9xV;f?pf5Wa|CDXca!U}TD}F}d6$=xmI?xV?amID zFq?4VJO;Ri^!Y1L74Z0h|DW4Ft@_sb05YhCuAcJ--zoGgclD*TG6manPB|>C?&;K} z&?9@>o^?{X5Efh*{u{n6Hg%ngu-ag7rb6Jel#I>FzQ6A0(nn`!-#&WQ?iKz7`{uXx zn$a`hc@dV)w~pJ`aQ0AUc%R!K_es-y3H`n2|?sYC3v^wXW-Xh5@Qi6R&+TBbEn6IF12i@`)KYYUbD%vA6%Hz!bDs#zjo zBfYPccrBhTre}WrW+?v`X<&kC{T%BB62qGJ2V26gwu;ni)d6yUgcZJVW^(z@K|{9_ zBCmQocIzn!Pd!v~v$ELpVf5hJOVixeQu1G6uuXVsDHKzC>jk$&ShgebX~=+5Vw!Iz zVI&UlD8&{yn|DN2n}RZ+$x`8Q_W{&rR?nlZDyW~mAXNAmUh|SyCr3ylwnXp?F!Yg# zUHYHQEg0rx7p6^Kbxm{ZwPWu6HU7px1#VaJv0)0=X&N--nYW;WOIm5)O(U1k2L*Mf ztcrF`<~H-`P<&a*eP6q|3puBfRvQ0TIs#RRz8s$ILz}!a7#M#@`R?3ES(Xkwfi_;- zJ7%OsqH;+SVr4K6la|B=Bon!lkd6-A<1jfHBN-4U(U&5{Fe(U*`;xR2bH><{Hov8E zNjRsePeeqFIV&^0YA!Ct4U9RVNgqqDw`w3x1OdFbQW}LZl-5%`aBl~`vOk`lMrQv_lud&PWC=Wfv?e1+AOE1 zA=cS-iB===K)$6`Y%m`4Vv8;Q_hLrmHFpam9d$y^?W$AcXITjmOzDK-3~$fDOQFgp zgKNA={)EIit2L>*UqqlXL@3KH!&+nZ&l-a#QBYiGb0L=3Iw*n1v{d~Fjp0FabuTN5 zjMtK0(T;)={YMLEQZv7u%U1sq$RB>kWp8HBMGkBebaTc+I$FCuBL*CYHPIxA3H$7E zB?kFZh8@1GurEA({?Q$>k(2>->n?b#Hru;H9g$(zJg&BQ@E)$qUVg1@4k(mAH*CAz zw;;^9b>R)ncBCp-^sb<4G-oCo zm6$%XJ^P`a=ZG*!Y;+K#%0MJ&KiRgr#3KI%=wjO0?G5L$^lkMPC#IKS3O=j!djn{>MBR8MV1uAZDXhlR`kqD^d z-5}kouL^SZf%5b}EQ?o12}&Gpj}+BgkMJL&2PJS0U#M=iue)Dg)fa}~APvgkjKAzY m{L}GG|IPgUPxzs)xaD5YWUTDH$@yIYm>60ZlIy&ya)II diff --git a/src/assets/Background/Sky/sky.jpeg b/src/assets/Background/Sky/sky.jpeg deleted file mode 100644 index 50fbde271cab7c245565afe8f84a5ad97df17c3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20976 zcmeI3eNfYN9LImZ{kFw61{+V)O^8fVjHk$-5YA2Uh~z8mOZ*=>6_sCN`h>K3Rw&q1MQA;=@b~-iWWz>68LnC z#Ks9Wt~-Ho(U1hLA9r+-DO7?)Los(2+9oJZQ0_$uM-5K4Ut3CY2#-kkK<4yXe#xh8 zD0K>Iaeo)|&^Q@Icx)Uap*xJWM_}woZ2J`sx*suX0tMLw8(WACuOl`s7?T8-KmZ5; z0U!VbfB+Bx0zd!=0D*}hK$LT8ZzzAy@Q+Mwz3vyEUZ3rq))wh$lW=F>Q3l(<wI`o=ENA$&eh@#v6P>C$AuTN{nYN&)VQ!6c_8_l$s6VPNN^9c4?^` zMnZ$i;7?WY;pPVTfPJC_hfOoz(SlAU6CmGQvnDhIS@=o0t>D+7-M#GhtNmt&AUo?8So7vVr_>G2yJW~d%>UBm3(CH|b4tsQ9hlLR zRdGD&nICS*^%ml%xm7hV4roC{_$nE>t=t!@`0 zi)c#;R$W-Q{J?h`=eZ#Zr7wbSK*F+B5X4<-veF^Zd<5{yi=vo)w(qO998KLE=+CQI z9iPYjtD&n=@kcM8S1^;%R>{>?b@n%*IwlFdWu0t`xk*nbv`MIMRCKNRV$%F6OGWb&)(JhzOD zd3p;YmfF?Veyyci{W)*_GCX( zmic^sqH{&DGbQD>w|D&{jzWL*F`-vxQ!7U!^C198?#kq0#o&rJWSS^WNCN`nAiz1p+i%BDU-+)H v`$W#=7A;>oe68exO^w(W_JBbP=-~2W%it@VQ#_8J1xN(~kDkDjy7T`4L6|YC diff --git a/src/assets/Background/Sky/sky.png b/src/assets/Background/Sky/sky.png new file mode 100755 index 0000000000000000000000000000000000000000..bd880f65d52d261bdc089cc18f0fa6ae02f17a09 GIT binary patch literal 48417 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 { this.returnToMainMenu(); } @@ -91,5 +91,4 @@ export default class Credits extends Scene { this.fadeInElements(); } - } diff --git a/src/scenes/title.js b/src/scenes/title.js index 8dca5204e..7fa67f7ef 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -56,11 +56,11 @@ export default class Title extends Scene { } const closeBackground = () => { - this.backgroundScene.fadeOutElements(1500, stopScenes); + this.backgroundScene.fadeOutElements(700, stopScenes); } this.fadeOutElements(700, launchCredits); - this.backgroundScene.scrollTo(-2700, 2000, closeBackground); + this.backgroundScene.scrollTo(-1800, 3500, closeBackground); } addPlayTitle() { From 26a8f0aafb38f866be6bd2e82a873090edc797e3 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 3 Aug 2020 18:06:33 -0500 Subject: [PATCH 52/66] Added change in color of score when sky gets dark --- src/scenes/background.js | 15 +++++++++++++-- src/scenes/game.js | 4 ++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/scenes/background.js b/src/scenes/background.js index 0179cd1f3..a33f89ab3 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -105,10 +105,11 @@ export default class Background extends Scene { } startBackgroundMove() { + this.movingBackground = true; this.runningTween = this.tweens.addCounter({ from: 0, - to: -2700, - duration: 200000, + to: -1800, + duration: 150000, onUpdate: (tween, target) => { this.cameras.main.scrollY = target.value; } @@ -171,10 +172,20 @@ export default class Background extends Scene { this.snapTo(-1800); this.launchTitle(); + + this.camera = this.cameras.main; + this.gameScene = this.scene.get('game'); + this.movingBackground = false; + this.changedCounterColor = false; } update() { this.moveClouds(); this.moveMountains(); + + if (!this.changedCounterColor && this.movingBackground && this.camera.scrollY <= -650) { + this.gameScene.changeCounterColor(); + this.changedCounterColor = true; + } } } diff --git a/src/scenes/game.js b/src/scenes/game.js index 900b235dc..8c63c27b6 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -224,6 +224,10 @@ export default class MainGame extends Phaser.Scene { } } + changeCounterColor() { + this.scoreText.setColor('#fff'); + } + update() { // Check death condition this.checkScrollDeath(); From 250b595d1bf758188b77ff2a50a12fe5f0b2c703 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 3 Aug 2020 22:17:22 -0500 Subject: [PATCH 53/66] Added scoreboard --- src/classes/api.js | 68 ++++++++++++++++ src/scenes/death.js | 18 +++-- src/scenes/scoreboard.js | 169 ++++++++++++++++++++++++++++++++++++--- 3 files changed, 238 insertions(+), 17 deletions(-) create mode 100644 src/classes/api.js diff --git a/src/classes/api.js b/src/classes/api.js new file mode 100644 index 000000000..d88a83932 --- /dev/null +++ b/src/classes/api.js @@ -0,0 +1,68 @@ +export default class Api { + constructor() { + } + + static async getDataRequest() { + const url = process.env.API_URL + process.env.API_KEY + '/scores'; + + const response = await fetch(url); + const data = await response.json(); + + return data; + } + + static async saveScoreRequest(name, score) { + const url = process.env.API_URL + process.env.API_KEY + '/scores'; + + const requestBody = { + user: name, + score + } + + const requestParams = { + method: 'POST', + body: JSON.stringify(requestBody), + headers: { + 'Content-Type': 'application/json' + } + } + + const response = await fetch(url, requestParams); + const data = await response.json(); + + return data; + } + + static orderData(items) { + const compareFunc = (a, b) => { + if(a.score > b.score) { + return -1; + } + if(a.score < b.score) { + return 1; + } + return 0; + } + return items.sort(compareFunc); + } + + static getData() { + const requestPromise = Api.getDataRequest(); + + const sortedData = requestPromise.then( result => { + return Api.orderData(result.result); + }) + + return sortedData; + } + + static saveScore(name, score) { + const requestPromise = Api.saveScoreRequest(name, score); + + const requestSuccess = requestPromise + .then( result => true) + .catch( error => false); + + return requestSuccess; + } +} diff --git a/src/scenes/death.js b/src/scenes/death.js index d1b4cf18d..e9280860e 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -64,8 +64,7 @@ export default class DeathScene extends Scene { color: '#fff', }; - this.add.text(20, 20, `You died with ${this.score} items`, stylingOptions); - this.add.text(20, 60, "I'm ... dissapointed", stylingOptions); + this.add.text(20, 20, `You died with ${this.score} items ... I'm dissapointed`, stylingOptions); } replay() { @@ -79,14 +78,14 @@ export default class DeathScene extends Scene { this.backgroundScene.titleScreenPosition(); this.scene.stop(); + this.scoreboardScene.scene.stop(); + backgroundCamera.fadeIn(2000); backgroundCamera.on('camerafadeincomplete', () => { onFadeInBackgroundEnd() }); } - const camera = this.cameras.main; - - camera.fadeOut(); - camera.on('camerafadeoutcomplete', () => { fadeInBackground() }); + this.fadeOutElements(1500, () => { fadeInBackground() }); + this.scoreboardScene.fadeOutElements(1500); } addReplay() { @@ -108,12 +107,19 @@ export default class DeathScene extends Scene { this.addReplay(); } + addScores() { + this.scene.launch('scoreboard', { currentScore: this.score }); + } + create() { this.backgroundScene = this.scene.get('background'); this.addFallingCharacter(); this.addMessage(); + this.addScores(); this.handleDeath(); + + this.scoreboardScene = this.scene.get('scoreboard'); } update() { diff --git a/src/scenes/scoreboard.js b/src/scenes/scoreboard.js index 1c5b10eaf..2484ba121 100644 --- a/src/scenes/scoreboard.js +++ b/src/scenes/scoreboard.js @@ -1,7 +1,11 @@ -import Phaser from 'phaser'; -import Scene from '../classes/sceneUtils'; +import Phaser from 'phaser'; import Scene from '../classes/sceneUtils'; +// External api connect logic +import Api from '../classes/api'; export default class Scoreboard extends Scene { + init(data) { + this.currentScore = data.currentScore; + } constructor() { super('scoreboard'); } @@ -9,26 +13,154 @@ export default class Scoreboard extends Scene { addLabel() { const stylingConfig = { fontFamily: 'Alagard', - fontSize: '32px', + fontSize: '28px', color: '#fff' }; - this.label = this.add.text(0, 300, 'Tell me your name: ', stylingConfig).setOrigin(0); + this.label = this.add.text(20, 480, 'Tell me your name: ', stylingConfig).setOrigin(0); + } + + removeScores() { + this.scoreboardText.destroy(true); + } + + reDisplayScores() { + this.removeScores(); + this.addScores(); + } + + addLoadingDataText() { + const stylingOptions = { + color: '#eee', + fontFamily: 'Alagard', + fontSize: '28px', + } + + this.loadingDataText = this.add.text(20, 200, 'Loading scoreboard ...', stylingOptions); + } + + removeLoadingDataText() { + this.loadingDataText.destroy(); + } + + addScores() { + const stylingOptions = { + color: '#eee', + fontFamily: 'Alagard', + fontSize: '28px', + } + + let startCoord = 40; + const addText = (text, offAxis = 50) => { + return this.add.text(20, startCoord += offAxis, text, stylingOptions).setOrigin(0); + } + + const scoreColumn = []; + const spaceColumn = []; + const nameColumn = []; + this.scoreboardText = this.add.group(); + + const scoreboardLength = 3; + + this.addLoadingDataText(); + + Api.getData().then( results => { + const scoreCollection = results.map( data => data.score); + const dataCollection = results; + + const getScorePlace = (runScore) => { + let position; + scoreCollection.forEach((score, index) => { + if (runScore >= score && !position) position = index + 1; + }); + if (!position) position = scoreCollection.length + 1; + return position; + }; + + dataCollection.forEach( (data, index, array) => { + const place = index + 1; + const name = data.user.length >= 18 ? + `${data.user.slice(0, 17)}...` : + data.user; + const score = data.score; + + if (place <= scoreboardLength) { // Only display first X scores + nameColumn.push(addText(`${place}. ${name}`)); + scoreColumn.push(addText(score, 0)); + + scoreColumn.forEach( score => score.x = 400 ); + } else if (place === array.length) { + // Adds spacer dots + spaceColumn.push(addText('.', 20)); + spaceColumn.push(addText('.', 15)); + spaceColumn.push(addText('.', 15)); + + spaceColumn.forEach( dot => dot.x = 200); + + nameColumn.push(addText(`${place}. ${name}`)); + scoreColumn.push(addText(score, 0)); + + scoreColumn.forEach( score => score.x = 400 ); + } + }); + + const scorePlace = getScorePlace(this.currentScore); + nameColumn.push(addText(`Your current score is on position ${scorePlace}`, 80)); + + this.displayedScores = true; + this.removeLoadingDataText(); + + const textElements = nameColumn.concat(spaceColumn).concat(scoreColumn).concat(spaceColumn); + this.scoreboardText.addMultiple(textElements); + }); + } + + addSavingScoreText() { + const stylingOptions = { + color: '#eee', + fontFamily: 'Alagard', + fontSize: '28px', + } + + this.savingScoreText = this.add.text(20, 480, 'Saving score ...', stylingOptions); + } + + removeSavingScoreText() { + this.savingScoreText.destroy(); + } + + addErrorSavingScoreText() { + this.savingScoreText.text = 'There has been an error saving the score :c'; } submitInfo() { + const name = this.textInput.text; + + this.addSavingScoreText(); + this.submitText.destroy(); - console.log(process.env); + this.textInput.destroy(); + this.label.destroy(); + + this.removeScores(); + Api.saveScore(name, this.currentScore).then( result => { + this.reDisplayScores(); + if (result) { + this.removeSavingScoreText(); + } else { + this.addErrorSavingScoreText(); + } + }); } addSubmitText() { const stylingConfig = { fontFamily: 'Alagard', - fontSize: '32px', + fontSize: '28px', color: '#fff' }; - this.submitText = this.add.text(0, 300, 'Submit', stylingConfig).setOrigin(0); + this.submitText = this.add.text(0, 480, 'Submit', stylingConfig).setOrigin(0); const calcX = this.textInput.x + this.textInput.width + this.submitText.width; this.submitText.x = calcX @@ -47,7 +179,7 @@ export default class Scoreboard extends Scene { }; const calcX = this.label.x + this.label.width; - this.textInput = this.add.rexInputText(calcX, 300, 250, 30, stylingConfig).setOrigin(0); + this.textInput = this.add.rexInputText(calcX, 480, 250, 30, stylingConfig).setOrigin(0); this.textInput.on('textchange', (inputText, e) => { if(inputText.text.length === 0 || !inputText.text.trim()) { this.submitText.disableInteractive(); @@ -57,9 +189,24 @@ export default class Scoreboard extends Scene { }); } + addSubmit() { + const stylingOptions = { + color: '#eee', + fontFamily: 'Alagard', + fontSize: '28px', + } + + if (this.currentScore > 0) { + this.addLabel(); + this.addNameInput(); + this.addSubmitText(); + } else { + this.add.text(20, 480, 'Come on you can do better than 0 points ...', stylingOptions); + } + } + create() { - this.addLabel(); - this.addNameInput(); - this.addSubmitText(); + this.addScores(); + this.addSubmit(); } } From 1fdbc239a4bd4fe3b48ad17b7475446f57821bd7 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 3 Aug 2020 23:51:19 -0500 Subject: [PATCH 54/66] Modified dotenv-webpack config --- webpack/base.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webpack/base.js b/webpack/base.js index e742bf8e9..27b6c9c18 100644 --- a/webpack/base.js +++ b/webpack/base.js @@ -56,7 +56,10 @@ module.exports = { ], }, plugins: [ - new Dotenv(), + new Dotenv({ + path: path.resolve(__dirname, '../.env'), + systemvars: true + }), new CleanWebpackPlugin({ root: path.resolve(__dirname, '../'), }), From 9bec0e51bd642d6511d8459b8acb690edf64556d Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Tue, 4 Aug 2020 00:02:43 -0500 Subject: [PATCH 55/66] Removed unused stylesheet import --- dev/index.html | 1 - 1 file changed, 1 deletion(-) diff --git a/dev/index.html b/dev/index.html index aa36bdb53..dcb4e68a9 100644 --- a/dev/index.html +++ b/dev/index.html @@ -2,7 +2,6 @@ -
From aaca1c50ca5ac0af204b7f34620dc92c07599372 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Tue, 4 Aug 2020 12:18:24 -0500 Subject: [PATCH 56/66] Fixed bug where counter didnt change color on black sky --- src/scenes/background.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scenes/background.js b/src/scenes/background.js index a33f89ab3..a68b8d3f5 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -123,6 +123,8 @@ export default class Background extends Scene { } this.cameras.main.fadeOut(2000); + this.movingBackground = false; + this.changedCounterColor = false; } increaseDifficulty(step) { @@ -175,8 +177,6 @@ export default class Background extends Scene { this.camera = this.cameras.main; this.gameScene = this.scene.get('game'); - this.movingBackground = false; - this.changedCounterColor = false; } update() { From 69fa80190b4a2443000548359e899de5603facb0 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Tue, 4 Aug 2020 12:59:45 -0500 Subject: [PATCH 57/66] Added config for tests --- .babelrc | 27 +- package-lock.json | 10617 ++++++++++++++++++++++++++++++-------------- package.json | 5 +- 3 files changed, 7336 insertions(+), 3313 deletions(-) diff --git a/.babelrc b/.babelrc index 68cb945a6..af95e73e5 100644 --- a/.babelrc +++ b/.babelrc @@ -1,15 +1,22 @@ { + "env": { + "test": { + "presets": [["@babel/preset-env"]] + } + }, "presets": [ - ["@babel/env", { - "targets": { - "browsers": [ - ">0.25%", - "not ie 11", - "not op_mini all" - ] - }, - "modules": false - }] + [ + "@babel/env", { + "targets": { + "browsers": [ + ">0.25%", + "not ie 11", + "not op_mini all" + ] + }, + "modules": false + } + ] ], "plugins": ["@babel/plugin-transform-runtime"] } diff --git a/package-lock.json b/package-lock.json index b2998eb95..0fd631341 100644 --- a/package-lock.json +++ b/package-lock.json @@ -450,6 +450,15 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, "@babel/plugin-syntax-class-properties": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", @@ -468,6 +477,15 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, "@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", @@ -477,6 +495,15 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, "@babel/plugin-syntax-nullish-coalescing-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", @@ -989,1422 +1016,3962 @@ "to-fast-properties": "^2.0.0" } }, - "@types/anymatch": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", - "integrity": "sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==" - }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, - "@types/glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/json-schema": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", - "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==" - }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" - }, - "@types/node": { - "version": "14.0.23", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.23.tgz", - "integrity": "sha512-Z4U8yDAl5TFkmYsZdFPdjeMa57NOvnaf1tljHzhouaPEp7LCj2JKkejpI1ODviIAQuW4CcQmxkQ77rnLsOOoKw==" - }, - "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==" - }, - "@types/tapable": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.6.tgz", - "integrity": "sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA==" - }, - "@types/uglify-js": { - "version": "3.9.3", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.9.3.tgz", - "integrity": "sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w==", - "requires": { - "source-map": "^0.6.1" - } - }, - "@types/webpack": { - "version": "4.41.21", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.21.tgz", - "integrity": "sha512-2j9WVnNrr/8PLAB5csW44xzQSJwS26aOnICsP3pSGCEdsu6KYtfQ6QJsVUKHWRnm1bL7HziJsfh5fHqth87yKA==", + "@cnakazawa/watch": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", + "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "dev": true, "requires": { - "@types/anymatch": "*", - "@types/node": "*", - "@types/tapable": "*", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "source-map": "^0.6.0" + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" } }, - "@types/webpack-sources": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-1.4.0.tgz", - "integrity": "sha512-c88dKrpSle9BtTqR6ifdaxu1Lvjsl3C5OsfvuUbUwdXymshv1TkufUAXBajCCUM/f/TmnkZC/Esb03MinzSiXQ==", + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" }, "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true } } }, - "@webassemblyjs/helper-buffer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", - "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==" + "@istanbuljs/schema": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", + "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "dev": true }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", - "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "@jest/console": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.2.0.tgz", + "integrity": "sha512-mXQfx3nSLwiHm1i7jbu+uvi+vvpVjNGzIQYLCfsat9rapC+MJkS4zBseNrgJE0vU921b3P67bQzhduphjY3Tig==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0" + "@jest/types": "^26.2.0", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^26.2.0", + "jest-util": "^26.2.0", + "slash": "^3.0.0" }, "dependencies": { - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.9.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0" + "color-name": "~1.1.4" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" - } + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" + "has-flag": "^4.0.0" } } } }, - "@webassemblyjs/ieee754": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", - "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", - "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "@jest/core": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.2.2.tgz", + "integrity": "sha512-UwA8gNI8aeV4FHGfGAUfO/DHjrFVvlBravF1Tm9Kt6qFE+6YHR47kFhgdepOFpADEKstyO+MVdPvkV6/dyt9sA==", + "dev": true, "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", - "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==" - }, - "@webassemblyjs/wasm-edit": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", - "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/helper-wasm-section": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-opt": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "@webassemblyjs/wast-printer": "1.9.0" + "@jest/console": "^26.2.0", + "@jest/reporters": "^26.2.2", + "@jest/test-result": "^26.2.0", + "@jest/transform": "^26.2.2", + "@jest/types": "^26.2.0", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-changed-files": "^26.2.0", + "jest-config": "^26.2.2", + "jest-haste-map": "^26.2.2", + "jest-message-util": "^26.2.0", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.2.2", + "jest-resolve-dependencies": "^26.2.2", + "jest-runner": "^26.2.2", + "jest-runtime": "^26.2.2", + "jest-snapshot": "^26.2.2", + "jest-util": "^26.2.0", + "jest-validate": "^26.2.0", + "jest-watcher": "^26.2.0", + "micromatch": "^4.0.2", + "p-each-series": "^2.1.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" }, "dependencies": { - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.9.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0" + "fill-range": "^7.0.1" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" - }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" + "color-name": "~1.1.4" } - } - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", - "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - }, - "dependencies": { - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" + "to-regex-range": "^5.0.1" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.9.0" + "braces": "^3.0.1", + "picomatch": "^2.0.5" } }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0" + "glob": "^7.1.3" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" + "has-flag": "^4.0.0" } }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" + "is-number": "^7.0.0" } } } }, - "@webassemblyjs/wasm-opt": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", - "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "@jest/environment": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.2.0.tgz", + "integrity": "sha512-oCgp9NmEiJ5rbq9VI/v/yYLDpladAAVvFxZgNsnJxOETuzPZ0ZcKKHYjKYwCtPOP1WCrM5nmyuOhMStXFGHn+g==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0" + "@jest/fake-timers": "^26.2.0", + "@jest/types": "^26.2.0", + "@types/node": "*", + "jest-mock": "^26.2.0" + } + }, + "@jest/fake-timers": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.2.0.tgz", + "integrity": "sha512-45Gfe7YzYTKqTayBrEdAF0qYyAsNRBzfkV0IyVUm3cx7AsCWlnjilBM4T40w7IXT5VspOgMPikQlV0M6gHwy/g==", + "dev": true, + "requires": { + "@jest/types": "^26.2.0", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.2.0", + "jest-mock": "^26.2.0", + "jest-util": "^26.2.0" + } + }, + "@jest/globals": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.2.0.tgz", + "integrity": "sha512-Hoc6ScEIPaym7RNytIL2ILSUWIGKlwEv+JNFof9dGYOdvPjb2evEURSslvCMkNuNg1ECEClTE8PH7ULlMJntYA==", + "dev": true, + "requires": { + "@jest/environment": "^26.2.0", + "@jest/types": "^26.2.0", + "expect": "^26.2.0" + } + }, + "@jest/reporters": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.2.2.tgz", + "integrity": "sha512-7854GPbdFTAorWVh+RNHyPO9waRIN6TcvCezKVxI1khvFq9YjINTW7J3WU+tbR038Ynn6WjYred6vtT0YmIWVQ==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^26.2.0", + "@jest/test-result": "^26.2.0", + "@jest/transform": "^26.2.2", + "@jest/types": "^26.2.0", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.4", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "jest-haste-map": "^26.2.2", + "jest-resolve": "^26.2.2", + "jest-util": "^26.2.0", + "jest-worker": "^26.2.1", + "node-notifier": "^7.0.0", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^4.1.3" }, "dependencies": { - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.9.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0" + "color-name": "~1.1.4" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "jest-worker": { + "version": "26.2.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.2.1.tgz", + "integrity": "sha512-+XcGMMJDTeEGncRb5M5Zq9P7K4sQ1sirhjdOxsN1462h6lFo9w59bl2LVQmdGEEeU3m+maZCkS2Tcc9SfCHO4A==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" } }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" + "has-flag": "^4.0.0" } } } }, - "@webassemblyjs/wasm-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", - "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "@jest/source-map": { + "version": "26.1.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.1.0.tgz", + "integrity": "sha512-XYRPYx4eEVX15cMT9mstnO7hkHP3krNtKfxUYd8L7gbtia8JvZZ6bMzSwa6IQJENbudTwKMw5R1BePRD+bkEmA==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" + "callsites": "^3.0.0", + "graceful-fs": "^4.2.4", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.2.0.tgz", + "integrity": "sha512-kgPlmcVafpmfyQEu36HClK+CWI6wIaAWDHNxfQtGuKsgoa2uQAYdlxjMDBEa3CvI40+2U3v36gQF6oZBkoKatw==", + "dev": true, + "requires": { + "@jest/console": "^26.2.0", + "@jest/types": "^26.2.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + } + }, + "@jest/test-sequencer": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.2.2.tgz", + "integrity": "sha512-SliZWon5LNqV/lVXkeowSU6L8++FGOu3f43T01L1Gv6wnFDP00ER0utV9jyK9dVNdXqfMNCN66sfcyar/o7BNw==", + "dev": true, + "requires": { + "@jest/test-result": "^26.2.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.2.2", + "jest-runner": "^26.2.2", + "jest-runtime": "^26.2.2" + } + }, + "@jest/transform": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.2.2.tgz", + "integrity": "sha512-c1snhvi5wRVre1XyoO3Eef5SEWpuBCH/cEbntBUd9tI5sNYiBDmO0My/lc5IuuGYKp/HFIHV1eZpSx5yjdkhKw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.2.0", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.2.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.2.0", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" }, "dependencies": { - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.9.0" + "color-name": "~1.1.4" } }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0" + "to-regex-range": "^5.0.1" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" + "braces": "^3.0.1", + "picomatch": "^2.0.5" } }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" } } } }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dev": true, - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==" - }, - "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true - }, - "adjust-sourcemap-loader": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-2.0.0.tgz", - "integrity": "sha512-4hFsTsn58+YjrU9qKzML2JSSDqKvN8mUGQ0nNIrfPi8hmIONT4L3uUaT6MKdMsZ9AjsU6D2xDkZxCkbQPxChrA==", + "@jest/types": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.2.0.tgz", + "integrity": "sha512-lvm3rJvctxd7+wxKSxxbzpDbr4FXDLaC57WEKdUIZ2cjTYuxYSc0zlyD7Z4Uqr5VdKxRUrtwIkiqBuvgf8uKJA==", "dev": true, "requires": { - "assert": "1.4.1", - "camelcase": "5.0.0", - "loader-utils": "1.2.3", - "object-path": "0.11.4", - "regex-parser": "2.2.10" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" }, "dependencies": { - "assert": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", - "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", "dev": true, "requires": { - "util": "0.10.3" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "camelcase": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz", - "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==", - "dev": true - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true - }, - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { - "minimist": "^1.2.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" + "color-name": "~1.1.4" } }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "dev": true, "requires": { - "inherits": "2.0.1" + "has-flag": "^4.0.0" } } } }, - "aggregate-error": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", - "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "@sinonjs/commons": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", + "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "dev": true, "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "type-detect": "4.0.8" } }, - "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "dev": true, "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "@sinonjs/commons": "^1.7.0" } }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" - }, - "ajv-keywords": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.1.tgz", - "integrity": "sha512-KWcq3xN8fDjSB+IMoh2VaXVhRI0BBGxoYp3rx7Pkb6z0cFjYR9Q9l4yZqqals0/zsioCmocC5H6UvsGD4MoIBA==" - }, - "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true + "@types/anymatch": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", + "integrity": "sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==" }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "@types/babel__core": { + "version": "7.1.9", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.9.tgz", + "integrity": "sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==", "dev": true, "requires": { - "type-fest": "^0.11.0" - }, - "dependencies": { - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "@types/babel__generator": { + "version": "7.6.1", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz", + "integrity": "sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==", "dev": true, "requires": { - "color-convert": "^1.9.0" + "@babel/types": "^7.0.0" } }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "@types/babel__template": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", + "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", + "dev": true, "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "@types/babel__traverse": { + "version": "7.0.13", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.13.tgz", + "integrity": "sha512-i+zS7t6/s9cdQvbqKDARrcbrPvtJGlbYsMkazo03nTAK3RX9FNrLllXys22uiTGJapPOTZTQ35nHh4ISph4SLQ==", "dev": true, "requires": { - "sprintf-js": "~1.0.2" + "@babel/types": "^7.3.0" } }, - "arity-n": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arity-n/-/arity-n-1.0.4.tgz", - "integrity": "sha1-2edrEXM+CFacCEeuezmyhgswt0U=", + "@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "dev": true }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + "@types/glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + "@types/graceful-fs": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.3.tgz", + "integrity": "sha512-AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ==", + "dev": true, + "requires": { + "@types/node": "*" + } }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", "dev": true }, - "array-includes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", - "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", + "@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0", - "is-string": "^1.0.5" + "@types/istanbul-lib-coverage": "*" } }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "@types/istanbul-reports": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz", + "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==", + "dev": true, "requires": { - "array-uniq": "^1.0.1" + "@types/istanbul-lib-coverage": "*", + "@types/istanbul-lib-report": "*" } }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + "@types/json-schema": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", + "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==" }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, - "array.prototype.flat": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", - "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } + "@types/node": { + "version": "14.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.23.tgz", + "integrity": "sha512-Z4U8yDAl5TFkmYsZdFPdjeMa57NOvnaf1tljHzhouaPEp7LCj2JKkejpI1ODviIAQuW4CcQmxkQ77rnLsOOoKw==" }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" - } - } + "@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "requires": { - "inherits": "2.0.1" - } - } - } + "@types/prettier": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.0.2.tgz", + "integrity": "sha512-IkVfat549ggtkZUthUzEX49562eGikhSYeVGX97SkMFn+sTZrgRewXjQ4tPKFPCykZHkX1Zfd9OoELGqKU2jJA==", + "dev": true }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==" }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "@types/stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", "dev": true }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, + "@types/tapable": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.6.tgz", + "integrity": "sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA==" + }, + "@types/uglify-js": { + "version": "3.9.3", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.9.3.tgz", + "integrity": "sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w==", "requires": { - "lodash": "^4.17.14" + "source-map": "^0.6.1" } }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" - }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + "@types/webpack": { + "version": "4.41.21", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.21.tgz", + "integrity": "sha512-2j9WVnNrr/8PLAB5csW44xzQSJwS26aOnICsP3pSGCEdsu6KYtfQ6QJsVUKHWRnm1bL7HziJsfh5fHqth87yKA==", + "requires": { + "@types/anymatch": "*", + "@types/node": "*", + "@types/tapable": "*", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "source-map": "^0.6.0" + } }, - "babel-loader": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", - "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", - "dev": true, + "@types/webpack-sources": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-1.4.0.tgz", + "integrity": "sha512-c88dKrpSle9BtTqR6ifdaxu1Lvjsl3C5OsfvuUbUwdXymshv1TkufUAXBajCCUM/f/TmnkZC/Esb03MinzSiXQ==", "requires": { - "find-cache-dir": "^2.1.0", - "loader-utils": "^1.4.0", - "mkdirp": "^0.5.3", - "pify": "^4.0.1", - "schema-utils": "^2.6.5" + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" }, "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" } } }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "@types/yargs": { + "version": "15.0.5", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.5.tgz", + "integrity": "sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==", "dev": true, "requires": { - "object.assign": "^4.1.0" + "@types/yargs-parser": "*" } }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "@types/yargs-parser": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", + "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==", + "dev": true }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==" + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" }, "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", "requires": { - "is-descriptor": "^1.0.0" + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" } }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", "requires": { - "kind-of": "^6.0.0" + "@webassemblyjs/wast-printer": "1.9.0" } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", "requires": { - "kind-of": "^6.0.0" + "@webassemblyjs/ast": "1.9.0" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" } } } }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" + "@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "requires": { + "@xtuc/ieee754": "^1.2.0" + } }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true + "@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "requires": { + "@xtuc/long": "4.2.2" + } }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==" + }, + "@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + }, + "dependencies": { + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + } + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + }, + "dependencies": { + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + } + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + }, + "dependencies": { + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + } + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + }, + "dependencies": { + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + } + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "abab": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.4.tgz", + "integrity": "sha512-Eu9ELJWCz/c1e9gTiCY+FceWxcqzjYEbqMgtndnuSqZSUCOL73TWNK2mHfIj4Cw2E/ongOp+JISVNCmovt2KYQ==", + "dev": true + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==" + }, + "acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "requires": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + }, + "dependencies": { + "acorn": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", + "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "dev": true + } + } + }, + "acorn-jsx": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", + "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", + "dev": true + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true + }, + "adjust-sourcemap-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-2.0.0.tgz", + "integrity": "sha512-4hFsTsn58+YjrU9qKzML2JSSDqKvN8mUGQ0nNIrfPi8hmIONT4L3uUaT6MKdMsZ9AjsU6D2xDkZxCkbQPxChrA==", + "dev": true, + "requires": { + "assert": "1.4.1", + "camelcase": "5.0.0", + "loader-utils": "1.2.3", + "object-path": "0.11.4", + "regex-parser": "2.2.10" + }, + "dependencies": { + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "requires": { + "util": "0.10.3" + } + }, + "camelcase": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz", + "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==", + "dev": true + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", + "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", + "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" + }, + "ajv-keywords": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.1.tgz", + "integrity": "sha512-KWcq3xN8fDjSB+IMoh2VaXVhRI0BBGxoYp3rx7Pkb6z0cFjYR9Q9l4yZqqals0/zsioCmocC5H6UvsGD4MoIBA==" + }, + "ansi-colors": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "^0.11.0" + }, + "dependencies": { + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } + } + }, + "ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arity-n": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arity-n/-/arity-n-1.0.4.tgz", + "integrity": "sha1-2edrEXM+CFacCEeuezmyhgswt0U=", + "dev": true + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "dev": true + }, + "array-includes": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", + "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0", + "is-string": "^1.0.5" + } + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "array.prototype.flat": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", + "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", + "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", + "dev": true + }, + "babel-jest": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.2.2.tgz", + "integrity": "sha512-JmLuePHgA+DSOdOL8lPxCgD2LhPPm+rdw1vnxR73PpIrnmKCS2/aBhtkAcxQWuUcW2hBrH8MJ3LKXE7aWpNZyA==", + "dev": true, + "requires": { + "@jest/transform": "^26.2.2", + "@jest/types": "^26.2.0", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.2.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "babel-loader": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", + "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "dev": true, + "requires": { + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-istanbul": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", + "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^4.0.0", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.2.0.tgz", + "integrity": "sha512-B/hVMRv8Nh1sQ1a3EY8I0n4Y1Wty3NrR5ebOyVT302op+DOAau+xNEImGMsUWOC3++ZlMooCytKz+NgN8aKGbA==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-current-node-syntax": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.3.tgz", + "integrity": "sha512-uyexu1sVwcdFnyq9o8UQYsXwXflIh8LvrF5+cKrYam93ned1CStffB3+BEcsxGSgagoA3GEyjDqO4a/58hyPYQ==", + "dev": true, + "requires": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "babel-preset-jest": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.2.0.tgz", + "integrity": "sha512-R1k8kdP3R9phYQugXeNnK/nvCGlBzG4m3EoIIukC80GXb6wCv2XiwPhK6K9MAkQcMszWBYvl2Wm+yigyXFQqXg==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^26.2.0", + "babel-preset-current-node-syntax": "^0.1.2" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" }, - "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==" + "binary-extensions": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", + "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==" + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "bn.js": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", + "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==" + }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "dependencies": { + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } + } + }, + "browserify-sign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.0.tgz", + "integrity": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==", + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.2", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", + "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001093", + "electron-to-chromium": "^1.3.488", + "escalade": "^3.0.1", + "node-releases": "^1.1.58" + } + }, + "bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "cacache": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", + "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", + "requires": { + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.2", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "minipass": "^3.0.0", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "p-map": "^3.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^2.7.1", + "ssri": "^7.0.0", + "unique-filename": "^1.1.1" + }, + "dependencies": { + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + } + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "requires": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001104", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001104.tgz", + "integrity": "sha512-pkpCg7dmI/a7WcqM2yfdOiT4Xx5tzyoHAXWsX5/HxZ3TemwDZs0QXdqbE0UPLPVy/7BeK7693YfzfRYfu1YVpg==", + "dev": true + }, + "capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "dev": true, + "requires": { + "rsvp": "^4.8.4" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "chokidar": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", + "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "requires": { + "tslib": "^1.9.0" + } + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "clean-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-MciirUH5r+cYLGCOL5JX/ZLzOZbVr1ot3Fw+KcvbhUb6PM+yycqd9ZhIlcigQ5gl+XhppNmw3bEFuaaMNyLj3A==", + "requires": { + "@types/webpack": "^4.4.31", + "del": "^4.1.1" + } + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "compose-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/compose-function/-/compose-function-3.0.3.tgz", + "integrity": "sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8=", + "dev": true, + "requires": { + "arity-n": "^1.0.4" + } + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "confusing-browser-globals": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz", + "integrity": "sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==", + "dev": true + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + }, + "contains-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", + "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", + "dev": true + }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "core-js-compat": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", + "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "dev": true, + "requires": { + "browserslist": "^4.8.5", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + } + }, + "css-loader": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-4.1.0.tgz", + "integrity": "sha512-oa8XGmieQF+dfTOpv89LQ2DxkBA+HABE2I8yq5xzf1ikKv6mcwkncFWCqVrgNc4rVsTBPrt5or1pW7u5WaNiKA==", + "dev": true, + "requires": { + "camelcase": "^6.0.0", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^2.0.0", + "normalize-path": "^3.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.3", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.0", + "semver": "^7.3.2" + }, + "dependencies": { + "camelcase": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz", + "integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==", + "dev": true + }, + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true + } + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "requires": { + "cssom": "~0.3.6" + }, + "dependencies": { + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + } + } + }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "requires": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decimal.js": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.0.tgz", + "integrity": "sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw==", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dev": true, + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, + "default-gateway": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", + "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "ip-regex": "^2.1.0" + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "del": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", + "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "requires": { + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true + }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", + "dev": true + }, + "diff-sequences": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.0.0.tgz", + "integrity": "sha512-JC/eHYEC3aSS0vZGjuoc4vHA0yAQTzhQQldXMeMF+JlxLGJlCO38Gma82NV9gk1jGFz8mDzUMeaKXvjRRdJ2dg==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "dns-packet": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", + "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", + "dev": true, + "requires": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "requires": { + "buffer-indexof": "^1.0.0" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "requires": { + "utila": "~0.4" + } + }, + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", + "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==" + } + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dev": true, + "requires": { + "webidl-conversions": "^5.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true + } + } + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", + "dev": true + }, + "dotenv-defaults": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dotenv-defaults/-/dotenv-defaults-2.0.0.tgz", + "integrity": "sha512-8X8gQoM+BH0L/v+GwgpeNwrthbG2uTDVr3vkbedQPLrIalZE0vxB9LbuD+7echbiP7fAY3tE+pZI11R1DtlUNg==", + "dev": true, + "requires": { + "dotenv": "^8.2.0" + } + }, + "dotenv-webpack": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dotenv-webpack/-/dotenv-webpack-2.0.0.tgz", + "integrity": "sha512-Omo5IpVl7XRgWXeZjxdfqOBEApJPxGLMOIx3F/w/W7ppUKgYMOXrk4eczlQrErPD4X0YRESlyGJek3O4uobRnw==", + "dev": true, + "requires": { + "dotenv-defaults": "^2.0.0" + } + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.501", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.501.tgz", + "integrity": "sha512-tyzuKaV2POw2mtqBBzQGNBojMZzH0MRu8bT8T/50x+hWeucyG/9pkgAATy+PcM2ySNM9+8eG2VllY9c6j4i+bg==", + "dev": true + }, + "elliptic": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", + "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.9", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", + "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + } + } + }, + "emittery": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.1.tgz", + "integrity": "sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ==", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", + "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "entities": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "requires": { + "prr": "~1.0.1" + } }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "optional": true, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "requires": { - "file-uri-to-path": "1.0.0" + "is-arrayish": "^0.2.1" } }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + "es-abstract": { + "version": "1.17.6", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", + "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.0", + "is-regex": "^1.1.0", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } }, - "bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==" + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", "dev": true, "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "dependencies": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" } }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", "dev": true, "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" } }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "escalade": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", + "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", + "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", + "dev": true, "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "esprima": "^4.0.1", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" } }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" }, "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "eslint-scope": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", + "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, "requires": { - "is-extendable": "^0.1.0" + "ansi-regex": "^4.1.0" } } } }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "eslint-config-airbnb-base": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.1.0.tgz", + "integrity": "sha512-+XCcfGyCnbzOnktDVhwsCAx+9DmrzEmuwxyHUJpw+kqBVT744OUBrB09khgFKlK1lshVww6qXGsYPZpavoNjJw==", + "dev": true, "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "confusing-browser-globals": "^1.0.9", + "object.assign": "^4.1.0", + "object.entries": "^1.1.1" } }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "eslint-import-resolver-node": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", + "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", + "dev": true, "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" + "debug": "^2.6.9", + "resolve": "^1.13.1" }, "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true } } }, - "browserify-sign": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.0.tgz", - "integrity": "sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA==", + "eslint-module-utils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", + "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", + "dev": true, "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.2", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + "debug": "^2.6.9", + "pkg-dir": "^2.0.0" }, "dependencies": { - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } } } }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", - "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001093", - "electron-to-chromium": "^1.3.488", - "escalade": "^3.0.1", - "node-releases": "^1.1.58" - } - }, - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" - }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true - }, - "cacache": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", - "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", - "requires": { - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" + "eslint-plugin-import": { + "version": "2.20.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz", + "integrity": "sha512-FObidqpXrR8OnCh4iNsxy+WACztJLXAHBO5hK79T1Hc77PgQZkyDGA5Ag9xAvRpglvLNxhH/zSmZ70/pZ31dHg==", + "dev": true, + "requires": { + "array-includes": "^3.0.3", + "array.prototype.flat": "^1.2.1", + "contains-path": "^0.1.0", + "debug": "^2.6.9", + "doctrine": "1.5.0", + "eslint-import-resolver-node": "^0.3.2", + "eslint-module-utils": "^2.4.1", + "has": "^1.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.0", + "read-pkg-up": "^2.0.0", + "resolve": "^1.12.0" }, "dependencies": { - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { - "aggregate-error": "^3.0.0" + "ms": "2.0.0" + } + }, + "doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "isarray": "^1.0.0" } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true } } }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camel-case": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" + "eslint-visitor-keys": "^1.1.0" } }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001104", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001104.tgz", - "integrity": "sha512-pkpCg7dmI/a7WcqM2yfdOiT4Xx5tzyoHAXWsX5/HxZ3TemwDZs0QXdqbE0UPLPVy/7BeK7693YfzfRYfu1YVpg==", + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "acorn": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz", + "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==", + "dev": true + } } }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true }, - "chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "esquery": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "dev": true, "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" + "estraverse": "^5.1.0" }, "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "requires": { - "is-number": "^7.0.0" - } + "estraverse": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", + "dev": true } } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } }, - "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + }, + "events": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", + "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==" + }, + "eventsource": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", + "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "original": "^1.0.0" } }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "exec-sh": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", + "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "requires": { - "arr-union": "^3.1.0", + "debug": "^2.3.3", "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", @@ -2412,146 +4979,126 @@ "requires": { "is-descriptor": "^0.1.0" } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, - "clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "requires": { - "source-map": "~0.6.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" - }, - "clean-webpack-plugin": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz", - "integrity": "sha512-MciirUH5r+cYLGCOL5JX/ZLzOZbVr1ot3Fw+KcvbhUb6PM+yycqd9ZhIlcigQ5gl+XhppNmw3bEFuaaMNyLj3A==", - "requires": { - "@types/webpack": "^4.4.31", - "del": "^4.1.1" - } - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", "dev": true, "requires": { - "restore-cursor": "^3.1.0" + "homedir-polyfill": "^1.0.1" } }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "expect": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.2.0.tgz", + "integrity": "sha512-8AMBQ9UVcoUXt0B7v+5/U5H6yiUR87L6eKCfjE3spx7Ya5lF+ebUo37MCFBML2OiLfkX1sxmQOZhIDonyVTkcw==", "dev": true, "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "@jest/types": "^26.2.0", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.0.0", + "jest-matcher-utils": "^26.2.0", + "jest-message-util": "^26.2.0", + "jest-regex-util": "^26.0.0" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "color-name": "~1.1.4" } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true } } }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "commander": { - "version": "2.17.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", - "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==" - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "compose-function": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/compose-function/-/compose-function-3.0.3.tgz", - "integrity": "sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8=", - "dev": true, - "requires": { - "arity-n": "^1.0.4" - } - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, + "exports-loader": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/exports-loader/-/exports-loader-1.1.0.tgz", + "integrity": "sha512-zGB2SujiAyO0Rwn4GQ17/HlT8cwmT8abcBeZpr2R3sItJ5sI5Y9BzNzus3H9tH1iWLAoJLi9N3TP54D2+j859Q==", "requires": { - "mime-db": ">= 1.43.0 < 2" + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0", + "source-map": "^0.6.1" } }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", "dev": true, "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", "debug": "2.6.9", - "on-headers": "~1.0.2", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", "vary": "~1.1.2" }, "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -2569,691 +5116,791 @@ } } }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "is-descriptor": "^1.0.0" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "requires": { - "safe-buffer": "~5.1.0" + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } } } }, - "confusing-browser-globals": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz", - "integrity": "sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==", - "dev": true - }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", "dev": true }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, - "contains-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, - "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "websocket-driver": ">=0.5.1" } }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "fb-watchman": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", + "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", "dev": true, "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" + "bser": "2.1.1" } }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + "figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, - "core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, "requires": { - "browserslist": "^4.8.5", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "escape-string-regexp": "^1.0.5" } }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "requires": { + "flat-cache": "^2.0.1" } }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "file-loader": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.3.0.tgz", + "integrity": "sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA==", + "dev": true, "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" + "loader-utils": "^1.2.3", + "schema-utils": "^2.5.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } } }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } } }, - "css-loader": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-4.1.0.tgz", - "integrity": "sha512-oa8XGmieQF+dfTOpv89LQ2DxkBA+HABE2I8yq5xzf1ikKv6mcwkncFWCqVrgNc4rVsTBPrt5or1pW7u5WaNiKA==", + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "dev": true, "requires": { - "camelcase": "^6.0.0", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^2.0.0", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.3", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^7.3.2" + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" }, "dependencies": { - "camelcase": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz", - "integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==", - "dev": true + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } }, - "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } } }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" } }, - "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" - }, - "cssesc": { + "find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "findup-sync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", + "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", "dev": true, "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" } }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", "dev": true, "requires": { - "ms": "^2.1.1" + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "deep-equal": { + "flush-write-stream": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "follow-redirects": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.12.1.tgz", + "integrity": "sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg==", + "dev": true + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", "dev": true }, - "default-gateway": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", - "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", "dev": true, "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" } }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "requires": { - "object-keys": "^1.0.12" + "map-cache": "^0.2.2" } }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" }, "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { - "kind-of": "^6.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "kind-of": "^6.0.0" + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "safe-buffer": "~5.1.0" } } } }, - "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - } + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true + "fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "optional": true }, - "des.js": { + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "gensync": { + "version": "1.0.0-beta.1", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", + "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", "dev": true }, - "detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, - "detect-node": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" - } + "pump": "^3.0.0" } }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" }, - "dns-packet": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", - "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "dev": true, "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" + "assert-plus": "^1.0.0" } }, - "dns-txt": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "dev": true, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", "requires": { - "buffer-indexof": "^1.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", "dev": true, "requires": { - "esutils": "^2.0.2" + "global-prefix": "^3.0.0" + }, + "dependencies": { + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } + } } }, - "dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, "requires": { - "utila": "~0.4" + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" } }, - "dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", "requires": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { - "domelementtype": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", - "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==" + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" } } }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true, + "optional": true }, - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, "requires": { - "domelementtype": "1" + "ajv": "^6.12.3", + "har-schema": "^2.0.0" } }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "requires": { - "dom-serializer": "0", - "domelementtype": "1" + "function-bind": "^1.1.1" } }, - "dotenv": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", - "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "dev": true }, - "dotenv-defaults": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dotenv-defaults/-/dotenv-defaults-2.0.0.tgz", - "integrity": "sha512-8X8gQoM+BH0L/v+GwgpeNwrthbG2uTDVr3vkbedQPLrIalZE0vxB9LbuD+7echbiP7fAY3tE+pZI11R1DtlUNg==", - "dev": true, - "requires": { - "dotenv": "^8.2.0" - } + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, - "dotenv-webpack": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dotenv-webpack/-/dotenv-webpack-2.0.0.tgz", - "integrity": "sha512-Omo5IpVl7XRgWXeZjxdfqOBEApJPxGLMOIx3F/w/W7ppUKgYMOXrk4eczlQrErPD4X0YRESlyGJek3O4uobRnw==", - "dev": true, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "requires": { - "dotenv-defaults": "^2.0.0" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" } }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "requires": { - "safe-buffer": "~5.1.0" + "is-buffer": "^1.1.5" } } } }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "electron-to-chromium": { - "version": "1.3.501", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.501.tgz", - "integrity": "sha512-tyzuKaV2POw2mtqBBzQGNBojMZzH0MRu8bT8T/50x+hWeucyG/9pkgAATy+PcM2ySNM9+8eG2VllY9c6j4i+bg==", - "dev": true - }, - "elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" }, "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==" + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" } } }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, "requires": { - "once": "^1.4.0" + "parse-passwd": "^1.0.0" } }, - "enhanced-resolve": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", - "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" }, "dependencies": { - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -3268,1614 +5915,2078 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "requires": { "safe-buffer": "~5.1.0" } } } }, - "entities": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", - "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" + "html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.5" + } }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "html-entities": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz", + "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==", + "dev": true + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "html-minifier": { + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", + "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", "requires": { - "prr": "~1.0.1" + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" } }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, + "html-webpack-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", + "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", "requires": { - "is-arrayish": "^0.2.1" + "html-minifier": "^3.2.3", + "loader-utils": "^0.2.16", + "lodash": "^4.17.3", + "pretty-error": "^2.0.2", + "tapable": "^1.0.0", + "toposort": "^1.0.0", + "util.promisify": "1.0.0" + }, + "dependencies": { + "big.js": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==" + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + }, + "loader-utils": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "requires": { + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0", + "object-assign": "^4.0.1" + } + } } }, - "es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + } } }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" } }, - "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" } }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "http-proxy-middleware": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", + "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", "dev": true, "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" + "http-proxy": "^1.17.0", + "is-glob": "^4.0.0", + "lodash": "^4.17.11", + "micromatch": "^3.1.10" } }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "dev": true, "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, - "escalade": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", - "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", - "dev": true + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", "dev": true }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + } + }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, - "eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", "dev": true, "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "eslint-scope": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", - "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } } } }, - "eslint-config-airbnb-base": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.1.0.tgz", - "integrity": "sha512-+XCcfGyCnbzOnktDVhwsCAx+9DmrzEmuwxyHUJpw+kqBVT744OUBrB09khgFKlK1lshVww6qXGsYPZpavoNjJw==", + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", "dev": true, "requires": { - "confusing-browser-globals": "^1.0.9", - "object.assign": "^4.1.0", - "object.entries": "^1.1.1" + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" } }, - "eslint-import-resolver-node": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", - "dev": true, + "imports-loader": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/imports-loader/-/imports-loader-1.1.0.tgz", + "integrity": "sha512-HcPM6rULdQ6EBLVq+5O+CF9xb7qiUjsRm6V28bTG/c3IU5sQkVZzUDwYY0r4jHvSAmVFdO9WA/vLAURR5WQSeQ==", "requires": { - "debug": "^2.6.9", - "resolve": "^1.13.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0", + "source-map": "^0.6.1", + "strip-comments": "^2.0.1" } }, - "eslint-module-utils": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", - "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "inquirer": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.2.tgz", + "integrity": "sha512-DF4osh1FM6l0RJc5YWYhSDB6TawiBRlbV9Cox8MWlidU218Tb7fm3lQTULyUJDfJ0tjbzl0W4q651mrCCEM55w==", "dev": true, "requires": { - "debug": "^2.6.9", - "pkg-dir": "^2.0.0" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.16", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", "dev": true, "requires": { - "ms": "2.0.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { - "locate-path": "^2.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "color-name": "~1.1.4" } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "p-try": "^1.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "p-limit": "^1.1.0" + "ansi-regex": "^5.0.0" } }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "dev": true, "requires": { - "find-up": "^2.1.0" + "has-flag": "^4.0.0" } } } }, - "eslint-plugin-import": { - "version": "2.20.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz", - "integrity": "sha512-FObidqpXrR8OnCh4iNsxy+WACztJLXAHBO5hK79T1Hc77PgQZkyDGA5Ag9xAvRpglvLNxhH/zSmZ70/pZ31dHg==", + "internal-ip": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", + "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", "dev": true, "requires": { - "array-includes": "^3.0.3", - "array.prototype.flat": "^1.2.1", - "contains-path": "^0.1.0", - "debug": "^2.6.9", - "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.2", - "eslint-module-utils": "^2.4.1", - "has": "^1.0.3", - "minimatch": "^3.0.4", - "object.values": "^1.1.0", - "read-pkg-up": "^2.0.0", - "resolve": "^1.12.0" + "default-gateway": "^4.2.0", + "ipaddr.js": "^1.9.0" + } + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true + }, + "is-absolute-url": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", + "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "dev": true, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" + "is-buffer": "^1.1.5" } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true } } }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "is-arguments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", + "dev": true + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "binary-extensions": "^2.0.0" } }, - "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-callable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", + "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==" + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", "dev": true, "requires": { - "eslint-visitor-keys": "^1.1.0" + "ci-info": "^2.0.0" } }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - }, - "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "dev": true, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" + "kind-of": "^3.0.2" }, "dependencies": { - "acorn": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz", - "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==", - "dev": true + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } } } }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true + "is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, - "esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", - "dev": true, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "requires": { - "estraverse": "^5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { - "estraverse": { + "kind-of": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", - "dev": true + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" } } }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "requires": { - "estraverse": "^4.1.0" - } + "is-docker": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", + "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", + "dev": true, + "optional": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true }, - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" - }, - "events": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", - "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==" - }, - "eventsource": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", - "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", - "dev": true, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", "requires": { - "original": "^1.0.0" + "is-extglob": "^2.1.1" } }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } } }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==" + }, + "is-path-in-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "is-path-inside": "^2.1.0" } }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "is-path-inside": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } + "path-is-inside": "^1.0.2" } }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "dev": true, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "requires": { - "homedir-polyfill": "^1.0.1" + "isobject": "^3.0.1" } }, - "exports-loader": { + "is-potential-custom-element-name": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz", + "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=", + "dev": true + }, + "is-regex": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/exports-loader/-/exports-loader-1.1.0.tgz", - "integrity": "sha512-zGB2SujiAyO0Rwn4GQ17/HlT8cwmT8abcBeZpr2R3sItJ5sI5Y9BzNzus3H9tH1iWLAoJLi9N3TP54D2+j859Q==", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", + "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0", - "source-map": "^0.6.1" + "has-symbols": "^1.0.1" } }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dev": true, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", "requires": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "has-symbols": "^1.0.1" } }, - "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", + "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", "dev": true, "requires": { - "type": "^2.0.0" + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" }, "dependencies": { - "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" }, "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, "requires": { - "is-plain-object": "^2.0.4" + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" } } } }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "istanbul-lib-source-maps": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", + "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", "dev": true, "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "istanbul-reports": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", + "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "dev": true, "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jest": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest/-/jest-26.2.2.tgz", + "integrity": "sha512-EkJNyHiAG1+A8pqSz7cXttoVa34hOEzN/MrnJhYnfp5VHxflVcf2pu3oJSrhiy6LfIutLdWo+n6q63tjcoIeig==", + "dev": true, + "requires": { + "@jest/core": "^26.2.2", + "import-local": "^3.0.2", + "jest-cli": "^26.2.2" }, "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "is-descriptor": "^1.0.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "extend-shallow": { + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { - "is-extendable": "^0.1.0" + "color-name": "~1.1.4" } }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, "requires": { - "kind-of": "^6.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "import-local": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "dev": true, "requires": { - "kind-of": "^6.0.0" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "jest-cli": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.2.2.tgz", + "integrity": "sha512-vVcly0n/ijZvdy6gPQiQt0YANwX2hLTPQZHtW7Vi3gcFdKTtif7YpI85F8R8JYy5DFSWz4x1OW0arnxlziu5Lw==", + "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "@jest/core": "^26.2.2", + "@jest/test-result": "^26.2.0", + "@jest/types": "^26.2.0", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "import-local": "^3.0.2", + "is-ci": "^2.0.0", + "jest-config": "^26.2.2", + "jest-util": "^26.2.0", + "jest-validate": "^26.2.0", + "prompts": "^2.0.1", + "yargs": "^15.3.1" } - } - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-loader": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.3.0.tgz", - "integrity": "sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.5.0" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "minimist": "^1.2.0" + "p-locate": "^4.1.0" } }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "p-limit": "^2.2.0" } - } - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "optional": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, "requires": { - "is-extendable": "^0.1.0" + "find-up": "^4.0.0" } - } - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, "requires": { - "ms": "2.0.0" + "resolve-from": "^5.0.0" } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "findup-sync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", - "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "jest-changed-files": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.2.0.tgz", + "integrity": "sha512-+RyJb+F1K/XBLIYiL449vo5D+CvlHv29QveJUWNPXuUicyZcq+tf1wNxmmFeRvAU1+TzhwqczSjxnCCFt7+8iA==", "dev": true, "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" + "@jest/types": "^26.2.0", + "execa": "^4.0.0", + "throat": "^5.0.0" }, "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { - "glob": "^7.1.3" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" } - } - } - }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + }, + "execa": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.3.tgz", + "integrity": "sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==", + "dev": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "get-stream": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "pump": "^3.0.0" } - } - } - }, - "follow-redirects": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.12.1.tgz", - "integrity": "sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg==", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + }, + "is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "shebang-regex": "^3.0.0" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "isexe": "^2.0.0" } } } }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" + "jest-config": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.2.2.tgz", + "integrity": "sha512-2lhxH0y4YFOijMJ65usuf78m7+9/8+hAb1PZQtdRdgnQpAb4zP6KcVDDktpHEkspBKnc2lmFu+RQdHukUUbiTg==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^26.2.2", + "@jest/types": "^26.2.0", + "babel-jest": "^26.2.2", + "chalk": "^4.0.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^26.2.0", + "jest-environment-node": "^26.2.0", + "jest-get-type": "^26.0.0", + "jest-jasmine2": "^26.2.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.2.2", + "jest-util": "^26.2.0", + "jest-validate": "^26.2.0", + "micromatch": "^4.0.2", + "pretty-format": "^26.2.0" }, "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" } } } }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "jest-diff": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.2.0.tgz", + "integrity": "sha512-Wu4Aopi2nzCsHWLBlD48TgRy3Z7OsxlwvHNd1YSnHc7q1NJfrmyCPoUXrTIrydQOG5ApaYpsAsdfnMbJqV1/wQ==", "dev": true, "requires": { - "global-prefix": "^3.0.0" + "chalk": "^4.0.0", + "diff-sequences": "^26.0.0", + "jest-get-type": "^26.0.0", + "pretty-format": "^26.2.0" }, "dependencies": { - "global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "dev": true, "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" + "has-flag": "^4.0.0" } } } }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "jest-docblock": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz", + "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==", "dev": true, "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" + "detect-newline": "^3.0.0" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "jest-each": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.2.0.tgz", + "integrity": "sha512-gHPCaho1twWHB5bpcfnozlc6mrMi+VAewVPNgmwf81x2Gzr6XO4dl+eOrwPWxbkYlgjgrYjWK2xgKnixbzH3Ew==", + "dev": true, "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "@jest/types": "^26.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.0.0", + "jest-util": "^26.2.0", + "pretty-format": "^26.2.0" }, "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } } } }, - "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "jest-environment-jsdom": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.2.0.tgz", + "integrity": "sha512-sDG24+5M4NuIGzkI3rJW8XUlrpkvIdE9Zz4jhD8OBnVxAw+Y1jUk9X+lAOD48nlfUTlnt3lbAI3k2Ox+WF3S0g==", + "dev": true, "requires": { - "function-bind": "^1.1.1" + "@jest/environment": "^26.2.0", + "@jest/fake-timers": "^26.2.0", + "@jest/types": "^26.2.0", + "@types/node": "*", + "jest-mock": "^26.2.0", + "jest-util": "^26.2.0", + "jsdom": "^16.2.2" } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "jest-environment-node": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.2.0.tgz", + "integrity": "sha512-4M5ExTYkJ19efBzkiXtBi74JqKLDciEk4CEsp5tTjWGYMrlKFQFtwIVG3tW1OGE0AlXhZjuHPwubuRYY4j4uOw==", + "dev": true, "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "@jest/environment": "^26.2.0", + "@jest/fake-timers": "^26.2.0", + "@jest/types": "^26.2.0", + "@types/node": "*", + "jest-mock": "^26.2.0", + "jest-util": "^26.2.0" } }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "jest-get-type": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.0.0.tgz", + "integrity": "sha512-zRc1OAPnnws1EVfykXOj19zo2EMw5Hi6HLbFCSjpuJiXtOWAYIjNsHVSbpQ8bDX7L5BGYGI8m+HmKdjHYFF0kg==", + "dev": true + }, + "jest-haste-map": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.2.2.tgz", + "integrity": "sha512-3sJlMSt+NHnzCB+0KhJ1Ut4zKJBiJOlbrqEYNdRQGlXTv8kqzZWjUKQRY3pkjmlf+7rYjAV++MQ4D6g4DhAyOg==", + "dev": true, "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" + "@jest/types": "^26.2.0", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.1.2", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.2.0", + "jest-util": "^26.2.0", + "jest-worker": "^26.2.1", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" }, "dependencies": { - "kind-of": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "jest-worker": { + "version": "26.2.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.2.1.tgz", + "integrity": "sha512-+XcGMMJDTeEGncRb5M5Zq9P7K4sQ1sirhjdOxsN1462h6lFo9w59bl2LVQmdGEEeU3m+maZCkS2Tcc9SfCHO4A==", + "dev": true, "requires": { - "is-buffer": "^1.1.5" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" } - } - } - }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } } } }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "jest-jasmine2": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.2.2.tgz", + "integrity": "sha512-Q8AAHpbiZMVMy4Hz9j1j1bg2yUmPa1W9StBvcHqRaKa9PHaDUMwds8LwaDyzP/2fkybcTQE4+pTMDOG9826tEw==", "dev": true, "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.2.0", + "@jest/source-map": "^26.1.0", + "@jest/test-result": "^26.2.0", + "@jest/types": "^26.2.0", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^26.2.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.2.0", + "jest-matcher-utils": "^26.2.0", + "jest-message-util": "^26.2.0", + "jest-runtime": "^26.2.2", + "jest-snapshot": "^26.2.2", + "jest-util": "^26.2.0", + "pretty-format": "^26.2.0", + "throat": "^5.0.0" }, "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", "dev": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" } } } }, - "html-entities": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz", - "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==", - "dev": true - }, - "html-minifier": { - "version": "3.5.21", - "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", - "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "jest-leak-detector": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.2.0.tgz", + "integrity": "sha512-aQdzTX1YiufkXA1teXZu5xXOJgy7wZQw6OJ0iH5CtQlOETe6gTSocaYKUNui1SzQ91xmqEUZ/WRavg9FD82rtQ==", + "dev": true, "requires": { - "camel-case": "3.0.x", - "clean-css": "4.2.x", - "commander": "2.17.x", - "he": "1.2.x", - "param-case": "2.1.x", - "relateurl": "0.2.x", - "uglify-js": "3.4.x" + "jest-get-type": "^26.0.0", + "pretty-format": "^26.2.0" } }, - "html-webpack-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", - "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", + "jest-matcher-utils": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.2.0.tgz", + "integrity": "sha512-2cf/LW2VFb3ayPHrH36ZDjp9+CAeAe/pWBAwsV8t3dKcrINzXPVxq8qMWOxwt5BaeBCx4ZupVGH7VIgB8v66vQ==", + "dev": true, "requires": { - "html-minifier": "^3.2.3", - "loader-utils": "^0.2.16", - "lodash": "^4.17.3", - "pretty-error": "^2.0.2", - "tapable": "^1.0.0", - "toposort": "^1.0.0", - "util.promisify": "1.0.0" + "chalk": "^4.0.0", + "jest-diff": "^26.2.0", + "jest-get-type": "^26.0.0", + "pretty-format": "^26.2.0" }, "dependencies": { - "big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==" + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } }, - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" + "has-flag": "^4.0.0" } } } }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "jest-message-util": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.2.0.tgz", + "integrity": "sha512-g362RhZaJuqeqG108n1sthz5vNpzTNy926eNDszo4ncRbmmcMRIUAZibnd6s5v2XSBCChAxQtCoN25gnzp7JbQ==", + "dev": true, "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.2.0", + "@types/stack-utils": "^1.0.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" }, "dependencies": { - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" - } - } - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", - "dev": true - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-middleware": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", - "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", - "dev": true, - "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" - } - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } } }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "jest-mock": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.2.0.tgz", + "integrity": "sha512-XeC7yWtWmWByoyVOHSsE7NYsbXJLtJNgmhD7z4MKumKm6ET0si81bsSLbQ64L5saK3TgsHo2B/UqG5KNZ1Sp/Q==", "dev": true, "requires": { - "postcss": "^7.0.14" + "@jest/types": "^26.2.0", + "@types/node": "*" } }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" + "jest-pnp-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", + "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "dev": true }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "jest-regex-util": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", + "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", "dev": true }, - "import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "jest-resolve": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.2.2.tgz", + "integrity": "sha512-ye9Tj/ILn/0OgFPE/3dGpQPUqt4dHwIocxt5qSBkyzxQD8PbL0bVxBogX2FHxsd3zJA7V2H/cHXnBnNyyT9YoQ==", "dev": true, "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "@jest/types": "^26.2.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.2.0", + "read-pkg-up": "^7.0.1", + "resolve": "^1.17.0", + "slash": "^3.0.0" }, "dependencies": { - "resolve-from": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "parse-json": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.1.tgz", + "integrity": "sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } } } }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "jest-resolve-dependencies": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.2.2.tgz", + "integrity": "sha512-S5vufDmVbQXnpP7435gr710xeBGUFcKNpNswke7RmFvDQtmqPjPVU/rCeMlEU0p6vfpnjhwMYeaVjKZAy5QYJA==", "dev": true, "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imports-loader": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/imports-loader/-/imports-loader-1.1.0.tgz", - "integrity": "sha512-HcPM6rULdQ6EBLVq+5O+CF9xb7qiUjsRm6V28bTG/c3IU5sQkVZzUDwYY0r4jHvSAmVFdO9WA/vLAURR5WQSeQ==", - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0", - "source-map": "^0.6.1", - "strip-comments": "^2.0.1" + "@jest/types": "^26.2.0", + "jest-regex-util": "^26.0.0", + "jest-snapshot": "^26.2.2" } }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "jest-runner": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.2.2.tgz", + "integrity": "sha512-/qb6ptgX+KQ+aNMohJf1We695kaAfuu3u3ouh66TWfhTpLd9WbqcF6163d/tMoEY8GqPztXPLuyG0rHRVDLxCA==", + "dev": true, "requires": { - "once": "^1.3.0", - "wrappy": "1" + "@jest/console": "^26.2.0", + "@jest/environment": "^26.2.0", + "@jest/test-result": "^26.2.0", + "@jest/types": "^26.2.0", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.7.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-config": "^26.2.2", + "jest-docblock": "^26.0.0", + "jest-haste-map": "^26.2.2", + "jest-leak-detector": "^26.2.0", + "jest-message-util": "^26.2.0", + "jest-resolve": "^26.2.2", + "jest-runtime": "^26.2.2", + "jest-util": "^26.2.0", + "jest-worker": "^26.2.1", + "source-map-support": "^0.5.6", + "throat": "^5.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "jest-worker": { + "version": "26.2.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.2.1.tgz", + "integrity": "sha512-+XcGMMJDTeEGncRb5M5Zq9P7K4sQ1sirhjdOxsN1462h6lFo9w59bl2LVQmdGEEeU3m+maZCkS2Tcc9SfCHO4A==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } } }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "inquirer": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.2.tgz", - "integrity": "sha512-DF4osh1FM6l0RJc5YWYhSDB6TawiBRlbV9Cox8MWlidU218Tb7fm3lQTULyUJDfJ0tjbzl0W4q651mrCCEM55w==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.16", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "jest-runtime": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.2.2.tgz", + "integrity": "sha512-a8VXM3DxCDnCIdl9+QucWFfQ28KdqmyVFqeKLigHdErtsx56O2ZIdQkhFSuP1XtVrG9nTNHbKxjh5XL1UaFDVQ==", + "dev": true, + "requires": { + "@jest/console": "^26.2.0", + "@jest/environment": "^26.2.0", + "@jest/fake-timers": "^26.2.0", + "@jest/globals": "^26.2.0", + "@jest/source-map": "^26.1.0", + "@jest/test-result": "^26.2.0", + "@jest/transform": "^26.2.2", + "@jest/types": "^26.2.0", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.4", + "jest-config": "^26.2.2", + "jest-haste-map": "^26.2.2", + "jest-message-util": "^26.2.0", + "jest-mock": "^26.2.0", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.2.2", + "jest-snapshot": "^26.2.2", + "jest-util": "^26.2.0", + "jest-validate": "^26.2.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0", + "yargs": "^15.3.1" }, "dependencies": { "ansi-regex": { @@ -4904,6 +8015,17 @@ "supports-color": "^7.1.0" } }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -4925,6 +8047,16 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -4937,24 +8069,285 @@ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, "string-width": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "jest-serializer": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.2.0.tgz", + "integrity": "sha512-V7snZI9IVmyJEu0Qy0inmuXgnMWDtrsbV2p9CRAcmlmPVwpC2ZM8wXyYpiugDQnwLHx0V4+Pnog9Exb3UO8M6Q==", + "dev": true, + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + } + }, + "jest-snapshot": { + "version": "26.2.2", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.2.2.tgz", + "integrity": "sha512-NdjD8aJS7ePu268Wy/n/aR1TUisG0BOY+QOW4f6h46UHEKOgYmmkvJhh2BqdVZQ0BHSxTMt04WpCf9njzx8KtA==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0", + "@jest/types": "^26.2.0", + "@types/prettier": "^2.0.0", + "chalk": "^4.0.0", + "expect": "^26.2.0", + "graceful-fs": "^4.2.4", + "jest-diff": "^26.2.0", + "jest-get-type": "^26.0.0", + "jest-haste-map": "^26.2.2", + "jest-matcher-utils": "^26.2.0", + "jest-message-util": "^26.2.0", + "jest-resolve": "^26.2.2", + "natural-compare": "^1.4.0", + "pretty-format": "^26.2.0", + "semver": "^7.3.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-util": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.2.0.tgz", + "integrity": "sha512-YmDwJxLZ1kFxpxPfhSJ0rIkiZOM0PQbRcfH0TzJOhqCisCAsI1WcmoQqO83My9xeVA2k4n+rzg2UuexVKzPpig==", + "dev": true, + "requires": { + "@jest/types": "^26.2.0", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" } }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "braces": "^3.0.1", + "picomatch": "^2.0.5" } }, "supports-color": { @@ -4965,271 +8358,157 @@ "requires": { "has-flag": "^4.0.0" } - } - } - }, - "internal-ip": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", - "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", - "dev": true, - "requires": { - "default-gateway": "^4.2.0", - "ipaddr.js": "^1.9.0" - } - }, - "interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "dev": true - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true - }, - "ip-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true - }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true - }, - "is-absolute-url": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", - "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-number": "^7.0.0" } } } }, - "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==" - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "jest-validate": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.2.0.tgz", + "integrity": "sha512-8XKn3hM6VIVmLNuyzYLCPsRCT83o8jMZYhbieh4dAyKLc4Ypr36rVKC+c8WMpWkfHHpGnEkvWUjjIAyobEIY/Q==", + "dev": true, "requires": { - "kind-of": "^3.0.2" + "@jest/types": "^26.2.0", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.0.0", + "leven": "^3.1.0", + "pretty-format": "^26.2.0" }, "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, "requires": { - "is-buffer": "^1.1.5" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } - } - } - }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + }, + "camelcase": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz", + "integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==", + "dev": true + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==" - }, - "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", - "requires": { - "is-path-inside": "^2.1.0" - } - }, - "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", - "requires": { - "path-is-inside": "^1.0.2" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", - "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", - "requires": { - "has-symbols": "^1.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } } }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", - "dev": true - }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "jest-watcher": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.2.0.tgz", + "integrity": "sha512-674Boco4Joe0CzgKPL6K4Z9LgyLx+ZvW2GilbpYb8rFEUkmDGgsZdv1Hv5rxsRpb1HLgKUOL/JfbttRCuFdZXQ==", + "dev": true, "requires": { - "has-symbols": "^1.0.1" + "@jest/test-result": "^26.2.0", + "@jest/types": "^26.2.0", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^26.2.0", + "string-length": "^4.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } } }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, "jest-worker": { "version": "25.5.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", @@ -5270,6 +8549,60 @@ "esprima": "^4.0.0" } }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsdom": { + "version": "16.3.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.3.0.tgz", + "integrity": "sha512-zggeX5UuEknpdZzv15+MS1dPYG0J/TftiiNunOeNxSl3qr8Z6cIlQpN0IdJa44z9aFxZRIVqRncvEhQ7X5DtZg==", + "dev": true, + "requires": { + "abab": "^2.0.3", + "acorn": "^7.1.1", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.2.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.0", + "domexception": "^2.0.1", + "escodegen": "^1.14.1", + "html-encoding-sniffer": "^2.0.1", + "is-potential-custom-element-name": "^1.0.0", + "nwsapi": "^2.2.0", + "parse5": "5.1.1", + "request": "^2.88.2", + "request-promise-native": "^1.0.8", + "saxes": "^5.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^3.0.1", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0", + "ws": "^7.2.3", + "xml-name-validator": "^3.0.0" + }, + "dependencies": { + "acorn": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", + "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "dev": true + }, + "ws": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz", + "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==", + "dev": true + } + } + }, "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -5281,6 +8614,12 @@ "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -5292,6 +8631,12 @@ "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "dev": true }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, "json3": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", @@ -5306,6 +8651,18 @@ "minimist": "^1.2.5" } }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, "killable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", @@ -5317,6 +8674,12 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true + }, "klona": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/klona/-/klona-1.1.2.tgz", @@ -5348,6 +8711,12 @@ "type-check": "~0.3.2" } }, + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, "load-json-file": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", @@ -5397,6 +8766,12 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==" }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, "loglevel": { "version": "1.6.8", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", @@ -5446,6 +8821,15 @@ "semver": "^5.6.0" } }, + "makeerror": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", + "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "dev": true, + "requires": { + "tmpl": "1.0.x" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -5795,6 +9179,12 @@ "integrity": "sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ==", "dev": true }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, "node-libs-browser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", @@ -5864,6 +9254,63 @@ } } }, + "node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true + }, + "node-notifier": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-7.0.2.tgz", + "integrity": "sha512-ux+n4hPVETuTL8+daJXTOC6uKLgMsl1RYfFv7DKRzyvzBapqco0rZZ9g72ZN8VS6V+gvNYHYa/ofcCY8fkJWsA==", + "dev": true, + "optional": true, + "requires": { + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.2.0", + "which": "^2.0.2" + }, + "dependencies": { + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "optional": true, + "requires": { + "is-docker": "^2.0.0" + } + }, + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true, + "optional": true + }, + "uuid": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.0.tgz", + "integrity": "sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ==", + "dev": true, + "optional": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "optional": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, "node-releases": { "version": "1.1.59", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.59.tgz", @@ -5904,6 +9351,18 @@ "boolbase": "~1.0.0" } }, + "nwsapi": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -6103,6 +9562,12 @@ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, + "p-each-series": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.1.0.tgz", + "integrity": "sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ==", + "dev": true + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", @@ -6233,6 +9698,12 @@ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", "dev": true }, + "parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "dev": true + }, "parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -6325,6 +9796,12 @@ "sha.js": "^2.4.8" } }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, "phaser": { "version": "3.24.1", "resolved": "https://registry.npmjs.org/phaser/-/phaser-3.24.1.tgz", @@ -6377,6 +9854,15 @@ "pinkie": "^2.0.0" } }, + "pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "requires": { + "node-modules-regexp": "^1.0.0" + } + }, "pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -6507,6 +9993,51 @@ "utila": "~0.4" } }, + "pretty-format": { + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.2.0.tgz", + "integrity": "sha512-qi/8IuBu2clY9G7qCXgCdD1Bf9w+sXakdHTRToknzMtVy0g7c4MBWaZy7MfB7ndKZovRO6XRwJiAYqq+MC7SDA==", + "dev": true, + "requires": { + "@jest/types": "^26.2.0", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^16.12.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } + } + }, "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -6528,6 +10059,16 @@ "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" }, + "prompts": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.2.tgz", + "integrity": "sha512-Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA==", + "dev": true, + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.4" + } + }, "proxy-addr": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", @@ -6543,6 +10084,12 @@ "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, "public-encrypt": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", @@ -6695,6 +10242,12 @@ } } }, + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, "read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", @@ -6908,6 +10461,84 @@ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + } + } + }, + "request-promise-core": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", + "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", + "dev": true, + "requires": { + "lodash": "^4.17.19" + } + }, + "request-promise-native": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", + "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", + "dev": true, + "requires": { + "request-promise-core": "1.1.4", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + }, + "dependencies": { + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + } + } + }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -7106,6 +10737,12 @@ "inherits": "^2.0.1" } }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "dev": true + }, "run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -7148,6 +10785,44 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "dev": true, + "requires": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, "sass": { "version": "1.26.10", "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.10.tgz", @@ -7177,6 +10852,15 @@ } } }, + "saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "requires": { + "xmlchars": "^2.2.0" + } + }, "schema-utils": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", @@ -7385,12 +11069,31 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true, + "optional": true + }, "signal-exit": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, "slice-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", @@ -7671,6 +11374,23 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, "ssri": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.0.tgz", @@ -7680,6 +11400,23 @@ "minipass": "^3.1.1" } }, + "stack-utils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.2.tgz", + "integrity": "sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg==", + "dev": true, + "requires": { + "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + } + } + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -7705,6 +11442,12 @@ "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", "dev": true }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, "stream-browserify": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", @@ -7788,6 +11531,33 @@ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" }, + "string-length": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.1.tgz", + "integrity": "sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw==", + "dev": true, + "requires": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -7874,6 +11644,12 @@ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, "strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -7898,6 +11674,39 @@ "has-flag": "^3.0.0" } }, + "supports-hyperlinks": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz", + "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==", + "dev": true, + "requires": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, "table": { "version": "5.4.6", "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", @@ -7915,6 +11724,16 @@ "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" }, + "terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + } + }, "terser": { "version": "4.8.0", "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", @@ -8011,12 +11830,29 @@ } } }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", + "dev": true + }, "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -8079,6 +11915,12 @@ "os-tmpdir": "~1.0.2" } }, + "tmpl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", + "dev": true + }, "to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", @@ -8139,6 +11981,26 @@ "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=" }, + "tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "dev": true, + "requires": { + "ip-regex": "^2.1.0", + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "tr46": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.0.2.tgz", + "integrity": "sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==", + "dev": true, + "requires": { + "punycode": "^2.1.1" + } + }, "tslib": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", @@ -8149,6 +12011,21 @@ "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, "type": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", @@ -8164,6 +12041,12 @@ "prelude-ls": "~1.1.2" } }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true + }, "type-fest": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", @@ -8185,6 +12068,15 @@ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, "uglify-js": { "version": "3.4.10", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", @@ -8403,6 +12295,25 @@ "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", "dev": true }, + "v8-to-istanbul": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz", + "integrity": "sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + } + } + }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", @@ -8419,11 +12330,49 @@ "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", "dev": true }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, "vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" }, + "w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dev": true, + "requires": { + "browser-process-hrtime": "^1.0.0" + } + }, + "w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "requires": { + "xml-name-validator": "^3.0.0" + } + }, + "walker": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", + "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "dev": true, + "requires": { + "makeerror": "1.0.x" + } + }, "watchpack": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.2.tgz", @@ -8582,6 +12531,12 @@ "resolved": "https://registry.npmjs.org/webfontloader/-/webfontloader-1.6.28.tgz", "integrity": "sha1-23hhKSU8tujq5UwvsF+HCvZnW64=" }, + "webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true + }, "webpack": { "version": "4.43.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.43.0.tgz", @@ -9062,6 +13017,40 @@ "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", "dev": true }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.1.0.tgz", + "integrity": "sha512-vEIkwNi9Hqt4TV9RdnaBPNt+E2Sgmo3gePebCRgZ1R7g6d23+53zCTnuB0amKI4AXq6VM8jj2DUAa0S1vjJxkw==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^2.0.2", + "webidl-conversions": "^5.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true + } + } + }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -9133,6 +13122,18 @@ "mkdirp": "^0.5.1" } }, + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, "ws": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", @@ -9142,6 +13143,18 @@ "async-limiter": "~1.0.0" } }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/package.json b/package.json index 8729c7ea6..5a609270f 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "main": "src/index.js", "scripts": { "build": "webpack --config webpack/prod.js", - "start": "webpack-dev-server --config webpack/base.js --open" + "start": "webpack-dev-server --config webpack/base.js --open", + "test": "jest" }, "repository": { "type": "git", @@ -18,6 +19,7 @@ "@babel/core": "^7.7.2", "@babel/plugin-transform-runtime": "^7.11.0", "@babel/preset-env": "^7.7.1", + "babel-jest": "^26.2.2", "babel-loader": "^8.0.6", "css-loader": "^4.1.0", "dotenv": "^8.2.0", @@ -26,6 +28,7 @@ "eslint-config-airbnb-base": "^14.1.0", "eslint-plugin-import": "^2.20.2", "file-loader": "^4.3.0", + "jest": "^26.2.2", "raw-loader": "^3.1.0", "resolve-url-loader": "^3.1.1", "sass-loader": "^9.0.2", From 992dd0e2499e473f65af05d53ed65ae4742a8f14 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 6 Aug 2020 11:30:02 -0500 Subject: [PATCH 58/66] Added tests and added command description in the README --- README.md | 1 + package-lock.json | 31 +++++++++++++++++ package.json | 7 ++++ src/classes/api.js | 8 +++-- src/test/api.test.js | 77 +++++++++++++++++++++++++++++++++++++++++++ src/test/setupJest.js | 3 ++ 6 files changed, 124 insertions(+), 3 deletions(-) create mode 100644 src/test/api.test.js create mode 100644 src/test/setupJest.js diff --git a/README.md b/README.md index 05bc12d80..458d5bb42 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,7 @@ Loading images via JavaScript module `import` is also supported. | `npm install` | Install project dependencies | | `npm start` | Build project and open web server running project | | `npm run build` | Builds code bundle with production settings (minification, uglification, etc..) | +| `npm test` | Runs tests on Api methods | ## License diff --git a/package-lock.json b/package-lock.json index 0fd631341..1dbf38d54 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3815,6 +3815,15 @@ "sha.js": "^2.4.8" } }, + "cross-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.5.tgz", + "integrity": "sha512-FFLcLtraisj5eteosnX1gf01qYDCOc4fDy0+euOt8Kn9YBY2NtXL/pCoYPavw24NIQkQqm5ZOLsGD5Zzj0gyew==", + "dev": true, + "requires": { + "node-fetch": "2.6.0" + } + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -7324,6 +7333,16 @@ "jest-util": "^26.2.0" } }, + "jest-fetch-mock": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/jest-fetch-mock/-/jest-fetch-mock-3.0.3.tgz", + "integrity": "sha512-Ux1nWprtLrdrH4XwE7O7InRY6psIi3GOsqNESJgMJ+M5cv4A8Lh7SN9d2V2kKRZ8ebAfcd1LNyZguAOb6JiDqw==", + "dev": true, + "requires": { + "cross-fetch": "^3.0.4", + "promise-polyfill": "^8.1.3" + } + }, "jest-get-type": { "version": "26.0.0", "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.0.0.tgz", @@ -9173,6 +9192,12 @@ "lower-case": "^1.1.1" } }, + "node-fetch": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", + "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", + "dev": true + }, "node-forge": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.9.0.tgz", @@ -10059,6 +10084,12 @@ "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" }, + "promise-polyfill": { + "version": "8.1.3", + "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.1.3.tgz", + "integrity": "sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g==", + "dev": true + }, "prompts": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.2.tgz", diff --git a/package.json b/package.json index 5a609270f..b72f31d52 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,12 @@ "version": "1.0.0", "description": "Simple open source platformer game", "main": "src/index.js", + "jest": { + "automock": false, + "setupFiles": [ + "./src/test/setupJest.js" + ] + }, "scripts": { "build": "webpack --config webpack/prod.js", "start": "webpack-dev-server --config webpack/base.js --open", @@ -29,6 +35,7 @@ "eslint-plugin-import": "^2.20.2", "file-loader": "^4.3.0", "jest": "^26.2.2", + "jest-fetch-mock": "^3.0.3", "raw-loader": "^3.1.0", "resolve-url-loader": "^3.1.1", "sass-loader": "^9.0.2", diff --git a/src/classes/api.js b/src/classes/api.js index d88a83932..816cb7258 100644 --- a/src/classes/api.js +++ b/src/classes/api.js @@ -49,9 +49,11 @@ export default class Api { static getData() { const requestPromise = Api.getDataRequest(); - const sortedData = requestPromise.then( result => { - return Api.orderData(result.result); - }) + const sortedData = requestPromise + .then( result => { + return Api.orderData(result.result); + }) + .catch( e => [] ); return sortedData; } diff --git a/src/test/api.test.js b/src/test/api.test.js new file mode 100644 index 000000000..665829f07 --- /dev/null +++ b/src/test/api.test.js @@ -0,0 +1,77 @@ +import Api from '../classes/api'; + +beforeEach(() => { + jest.clearAllMocks(); +}); + +test('Submit score correctly', async () => { + fetch.mockResponse(JSON.stringify({ result: "Leaderboard score created correctly." })); + + const name = 'TestingUser'; + const score = 4; + + const api_response = await Api.saveScore(name, score); + + expect(api_response).toEqual(true) + expect(fetch).toHaveBeenCalledTimes(1); +}); + +test('Submit score error', async () => { + fetch.mockReject(() => Promise.reject("API is down")); + + const name = 'TestingUser'; + const score = 4; + + const api_response = await Api.saveScore(name, score); + + expect(api_response).toEqual(false) + expect(fetch).toHaveBeenCalledTimes(1); +}); + +test('Get data', async () => { + fetch.mockResponse(JSON.stringify({ result: [ + { name: 'First', score: 3 }, + { name: 'Second', score: 2 }, + { name: 'Third', score: 1 } + ]})); + + const orderDataSpy = jest.spyOn(Api, 'orderData'); + const api_response = await Api.getData(); + + expect(api_response).toEqual([ + { name: 'First', score: 3 }, + { name: 'Second', score: 2 }, + { name: 'Third', score: 1 } + ]); + + expect(orderDataSpy).toHaveBeenCalledTimes(1); + expect(fetch).toHaveBeenCalledTimes(1); +}); + +test('Get data order by score', async () => { + fetch.mockResponse(JSON.stringify({ result: [ + { name: 'Second', score: 2 }, + { name: 'Third', score: 1 }, + { name: 'First', score: 3 } + ]})); + + const orderDataSpy = jest.spyOn(Api, 'orderData'); + const api_response = await Api.getData(); + + expect(api_response).toEqual([ + { name: 'First', score: 3 }, + { name: 'Second', score: 2 }, + { name: 'Third', score: 1 } + ]); + + expect(orderDataSpy).toHaveBeenCalledTimes(1); + expect(fetch).toHaveBeenCalledTimes(1); +}); + +test('Get data error', async () => { + fetch.mockReject(() => Promise.reject("API is down")); + + const api_response = await Api.getData(); + + expect(api_response).toEqual([]); +}); diff --git a/src/test/setupJest.js b/src/test/setupJest.js new file mode 100644 index 000000000..15319f848 --- /dev/null +++ b/src/test/setupJest.js @@ -0,0 +1,3 @@ +import fetchMock from "jest-fetch-mock"; + +fetchMock.enableMocks(); From 6578381adeaaca2d6f4b0b6610368827effe07f1 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 6 Aug 2020 12:06:40 -0500 Subject: [PATCH 59/66] fixed linter errors and added command to README --- README.md | 3 +- package-lock.json | 26 +++++++------- package.json | 7 ++-- src/classes/api.js | 33 ++++++++---------- src/classes/movingPlatform.js | 19 +++++++--- src/classes/platformManager.js | 6 ++-- src/classes/sceneUtils.js | 22 ++++++------ src/index.js | 18 +++++----- src/scenes/background.js | 34 +++++++++--------- src/scenes/characterSelection.js | 8 ++--- src/scenes/credits.js | 32 +++++++++-------- src/scenes/death.js | 27 +++++++------- src/scenes/game.js | 24 +++++-------- src/scenes/scoreboard.js | 60 +++++++++++++++++--------------- src/scenes/title.js | 49 ++++++++++++++------------ src/test/api.test.js | 54 +++++++++++++++------------- src/test/setupJest.js | 2 +- webpack/base.js | 2 +- 18 files changed, 218 insertions(+), 208 deletions(-) diff --git a/README.md b/README.md index 458d5bb42..24715d49d 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,8 @@ Loading images via JavaScript module `import` is also supported. | `npm install` | Install project dependencies | | `npm start` | Build project and open web server running project | | `npm run build` | Builds code bundle with production settings (minification, uglification, etc..) | -| `npm test` | Runs tests on Api methods | +| `npm run test` | Runs tests on Api methods | +| `npm run linters` | Runs JS linters | ## License diff --git a/package-lock.json b/package-lock.json index 1dbf38d54..3c10ea8c7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4849,9 +4849,9 @@ }, "dependencies": { "acorn": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz", - "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", + "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", "dev": true } } @@ -4872,9 +4872,9 @@ }, "dependencies": { "estraverse": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true } } @@ -6207,9 +6207,9 @@ "dev": true }, "inquirer": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.2.tgz", - "integrity": "sha512-DF4osh1FM6l0RJc5YWYhSDB6TawiBRlbV9Cox8MWlidU218Tb7fm3lQTULyUJDfJ0tjbzl0W4q651mrCCEM55w==", + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", @@ -6218,7 +6218,7 @@ "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.16", + "lodash": "^4.17.19", "mute-stream": "0.0.8", "run-async": "^2.4.0", "rxjs": "^6.6.0", @@ -10789,9 +10789,9 @@ } }, "rxjs": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.0.tgz", - "integrity": "sha512-3HMA8z/Oz61DUHe+SdOiQyzIf4tOx5oQHmMir7IZEu6TMqCLHT4LRcmNaUS0NwOz8VLvmmBduMsoaUvMaIiqzg==", + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.2.tgz", + "integrity": "sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg==", "dev": true, "requires": { "tslib": "^1.9.0" diff --git a/package.json b/package.json index b72f31d52..24d54b096 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,8 @@ "scripts": { "build": "webpack --config webpack/prod.js", "start": "webpack-dev-server --config webpack/base.js --open", - "test": "jest" + "test": "jest", + "linters": "eslint ." }, "repository": { "type": "git", @@ -29,13 +30,11 @@ "babel-loader": "^8.0.6", "css-loader": "^4.1.0", "dotenv": "^8.2.0", - "dotenv-webpack": "^2.0.0", "eslint": "^6.8.0", "eslint-config-airbnb-base": "^14.1.0", "eslint-plugin-import": "^2.20.2", "file-loader": "^4.3.0", "jest": "^26.2.2", - "jest-fetch-mock": "^3.0.3", "raw-loader": "^3.1.0", "resolve-url-loader": "^3.1.1", "sass-loader": "^9.0.2", @@ -45,7 +44,9 @@ "dependencies": { "@babel/runtime": "^7.11.0", "clean-webpack-plugin": "^3.0.0", + "dotenv-webpack": "^2.0.0", "html-webpack-plugin": "^3.2.0", + "jest-fetch-mock": "^3.0.3", "phaser": "^3.20.1", "phaser3-rex-plugins": "^1.1.21", "sass": "^1.26.10", diff --git a/src/classes/api.js b/src/classes/api.js index 816cb7258..59fbcf196 100644 --- a/src/classes/api.js +++ b/src/classes/api.js @@ -1,9 +1,6 @@ export default class Api { - constructor() { - } - static async getDataRequest() { - const url = process.env.API_URL + process.env.API_KEY + '/scores'; + const url = `${process.env.API_URL + process.env.API_KEY}/scores`; const response = await fetch(url); const data = await response.json(); @@ -12,20 +9,20 @@ export default class Api { } static async saveScoreRequest(name, score) { - const url = process.env.API_URL + process.env.API_KEY + '/scores'; + const url = `${process.env.API_URL + process.env.API_KEY}/scores`; const requestBody = { user: name, - score - } + score, + }; const requestParams = { method: 'POST', body: JSON.stringify(requestBody), headers: { - 'Content-Type': 'application/json' - } - } + 'Content-Type': 'application/json', + }, + }; const response = await fetch(url, requestParams); const data = await response.json(); @@ -35,14 +32,14 @@ export default class Api { static orderData(items) { const compareFunc = (a, b) => { - if(a.score > b.score) { + if (a.score > b.score) { return -1; } - if(a.score < b.score) { + if (a.score < b.score) { return 1; } return 0; - } + }; return items.sort(compareFunc); } @@ -50,10 +47,8 @@ export default class Api { const requestPromise = Api.getDataRequest(); const sortedData = requestPromise - .then( result => { - return Api.orderData(result.result); - }) - .catch( e => [] ); + .then(result => Api.orderData(result.result)) + .catch(e => []); return sortedData; } @@ -62,8 +57,8 @@ export default class Api { const requestPromise = Api.saveScoreRequest(name, score); const requestSuccess = requestPromise - .then( result => true) - .catch( error => false); + .then(result => true) + .catch(error => false); return requestSuccess; } diff --git a/src/classes/movingPlatform.js b/src/classes/movingPlatform.js index 5e45c183e..56f54139a 100644 --- a/src/classes/movingPlatform.js +++ b/src/classes/movingPlatform.js @@ -20,11 +20,20 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { return Math.random() >= 1.0 - probability; } + static randomizePlatformTexture(platformObject) { + const rareTexture = Math.random() > 0.9; + const platformIndex = rareTexture + ? Phaser.Math.Between(1, 2) + : Phaser.Math.Between(3, 4); + + platformObject.setTexture(`platform0${platformIndex}`); + } + addItemStartingParameters() { return { - x: this.x + Phaser.Math.Between(-60, 60), + x: this.x + Phaser.Math.Between(-60, 60), y: this.startY - 120, - } + }; } handleItemAdd(probability) { @@ -50,7 +59,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.handleItemAdd(this.START_ITEM_PROBABILIY); this.scene.add.existing(this); - this.scene.randomizePlatformTexture(this); + MovingPlatform.randomizePlatformTexture(this); } setupFriction() { @@ -78,7 +87,7 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { } increaseDifficulty(step) { - if (!this.runningTween) return + if (!this.runningTween) return; const newTimeScale = this.runningTween.timeScale + step; this.runningTween.setTimeScale(newTimeScale); @@ -91,6 +100,6 @@ export default class MovingPlatform extends Phaser.Physics.Arcade.Image { this.runningTween.restart(); this.handleItemAdd(this.RESPAWN_ITEM_PROBABILIY); - this.scene.randomizePlatformTexture(this); + MovingPlatform.randomizePlatformTexture(this); } } diff --git a/src/classes/platformManager.js b/src/classes/platformManager.js index 8adf3b0f5..55fb819ec 100644 --- a/src/classes/platformManager.js +++ b/src/classes/platformManager.js @@ -11,14 +11,14 @@ export default class platformManager extends Phaser.Physics.Arcade.Group { const movingPlatform = new MovingPlatform(scene, centerPlatform, y, addItem, texture, options); this.add(movingPlatform); - return movingPlatform + return movingPlatform; } moveVertically() { - this.children.entries.forEach( platform => platform.moveVertically() ); + this.children.entries.forEach(platform => platform.moveVertically()); } increaseDifficulty(step) { - this.children.entries.forEach( platform => platform.increaseDifficulty(step) ); + this.children.entries.forEach(platform => platform.increaseDifficulty(step)); } } diff --git a/src/classes/sceneUtils.js b/src/classes/sceneUtils.js index 42d65726e..e1d849d8f 100644 --- a/src/classes/sceneUtils.js +++ b/src/classes/sceneUtils.js @@ -3,11 +3,13 @@ import Phaser from 'phaser'; export default class Scene extends Phaser.Scene { constructor(sceneKey) { super(sceneKey); + + this.sceneKey = sceneKey; } centerTextHorizontally(textElement, centerText = true, divider = 2, multiplier = 1) { const textOff = centerText ? textElement.width / 2 : 0; - textElement.x = (this.game.config.width / divider) * multiplier - textOff; + textElement.x = (this.game.config.width / divider) * multiplier - textOff; } centerImageHorizontally(image) { @@ -19,17 +21,17 @@ export default class Scene extends Phaser.Scene { } fade(element, from, to, duration = 1500, onEnd = () => {}) { - element.alpha = from, - this.tweens.add({ - targets: element, - alpha: to, - duration, - onComplete: () => { onEnd() } - }); + element.alpha = from; + this.tweens.add({ + targets: element, + alpha: to, + duration, + onComplete: () => { onEnd(); }, + }); } fadeInElements(duration = 1500, onEnd = () => {}) { - this.children.list.forEach( (children, index) => { + this.children.list.forEach((children, index) => { if (index === 0) { // Only add callback to first element this.fade(children, 0, 1, duration, onEnd); } else { @@ -39,7 +41,7 @@ export default class Scene extends Phaser.Scene { } fadeOutElements(duration = 1500, onEnd = () => {}) { - this.children.list.forEach( (children, index) => { + this.children.list.forEach((children, index) => { if (index === 0) { // Only add callback to first element this.fade(children, 1, 0, duration, onEnd); } else { diff --git a/src/index.js b/src/index.js index 1ef146ce9..6ef80d928 100644 --- a/src/index.js +++ b/src/index.js @@ -1,7 +1,7 @@ import Phaser from 'phaser'; // Plugins -import InputTextPlugin from 'phaser3-rex-plugins/plugins/inputtext-plugin.js'; +import InputTextPlugin from 'phaser3-rex-plugins/plugins/inputtext-plugin'; // Sass loading import './style/main.scss'; @@ -22,35 +22,35 @@ const config = { scale: { width: 800, height: 600, - autoCenter: Phaser.Scale.CENTER_BOTH + autoCenter: Phaser.Scale.CENTER_BOTH, }, physics: { default: 'arcade', arcade: { - gravity: { y: 450 } + gravity: { y: 450 }, }, }, scene: [ BackgroundScene, TitleScene, SelectionScene, - GameScene, + GameScene, DeathScene, ScoreboardScene, CreditsScene, ], - parent: divId, + parent: 'divId', dom: { - createContainer: true + createContainer: true, }, plugins: { global: [{ key: 'rexInputTextPlugin', plugin: InputTextPlugin, - start: true + start: true, }, - ] - } + ], + }, }; const game = new Phaser.Game(config); diff --git a/src/scenes/background.js b/src/scenes/background.js index a68b8d3f5..a039d0ae4 100644 --- a/src/scenes/background.js +++ b/src/scenes/background.js @@ -22,7 +22,7 @@ export default class Background extends Scene { } preload() { - this.load.image('sky', skyAsset); + this.load.image('sky', skyAsset); this.load.image('mountain01', mountainAsset01); this.load.image('mountain02', mountainAsset02); this.load.image('cloud01', cloudAsset01); @@ -39,12 +39,12 @@ export default class Background extends Scene { this.tweens.addCounter({ from: currentCameraPosition, to: targetPosition, - duration: duration, + duration, ease: 'Power1', onUpdate: (tween, target) => { this.cameras.main.scrollY = target.value; }, - onComplete: () => { onEnd() } + onComplete: () => { onEnd(); }, }); } @@ -59,7 +59,7 @@ export default class Background extends Scene { const MAX_Y = 250; const MIN_SCALE = 1; const MAX_SCALE = 3; - const MIN_DX = 12; + const MIN_DX = 12; const MAX_DX = 20; this.frontClouds = this.add.group(); @@ -67,8 +67,8 @@ export default class Background extends Scene { this.backClouds = this.add.group(); const addCloud = (index, x, y, scale, dx) => { - const cloud = this.add.image(x, y, `cloud0${index}`). - setScale(scale); + const cloud = this.add.image(x, y, `cloud0${index}`) + .setScale(scale); cloud.moveX = dx; if (index < 4) { @@ -78,7 +78,7 @@ export default class Background extends Scene { } else { this.backClouds.add(cloud); } - } + }; for (let i = 15; i >= 1; i -= 1) { const x = Phaser.Math.Between(MIN_X, MAX_X); @@ -112,12 +112,12 @@ export default class Background extends Scene { duration: 150000, onUpdate: (tween, target) => { this.cameras.main.scrollY = target.value; - } + }, }); } handleDeath() { - if(this.runningTween) { + if (this.runningTween) { this.runningTween.stop(); this.scrollTo(0, 3000); } @@ -128,7 +128,7 @@ export default class Background extends Scene { } increaseDifficulty(step) { - if (!this.runningTween) return + if (!this.runningTween) return; const newTimeScale = this.runningTween.timeScale + step; this.runningTween.setTimeScale(newTimeScale); @@ -138,11 +138,11 @@ export default class Background extends Scene { const getChildren = (group) => group.children.entries; const moveCloudGroup = (group, move) => { - getChildren(group).forEach( cloud => { - if (cloud.x < -100) cloud.x = 900 // Re-spawns the cloud - cloud.x -= cloud.moveX - } ); - } + getChildren(group).forEach(cloud => { + if (cloud.x < -100) cloud.x = 900; // Re-spawns the cloud + cloud.x -= cloud.moveX; + }); + }; moveCloudGroup(this.frontClouds, 0.25); moveCloudGroup(this.middleClouds, 0.05); @@ -171,10 +171,10 @@ export default class Background extends Scene { this.addMountains(); this.spawnClouds(); - + this.snapTo(-1800); this.launchTitle(); - + this.camera = this.cameras.main; this.gameScene = this.scene.get('game'); } diff --git a/src/scenes/characterSelection.js b/src/scenes/characterSelection.js index 1c97edc6d..31aaea92a 100644 --- a/src/scenes/characterSelection.js +++ b/src/scenes/characterSelection.js @@ -1,5 +1,5 @@ import Phaser from 'phaser'; -import Scene from '../classes/sceneUtils' +import Scene from '../classes/sceneUtils'; // Importing Assets import cowboySelection from '../assets/Characters/Cowboy/selection.png'; @@ -9,12 +9,12 @@ export default class CharacterSelection extends Scene { super('characterSelection'); } - preload () { + preload() { this.load.image('selection', cowboySelection); } addText() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '29px', color: '#000', @@ -40,7 +40,7 @@ export default class CharacterSelection extends Scene { this.centerImageHorizontally(this.cowboyImage); this.cowboyImage.setInteractive({ cursor: 'pointer' }) - .on('pointerdown', () => { this.startGame() }); + .on('pointerdown', () => { this.startGame(); }); } create() { diff --git a/src/scenes/credits.js b/src/scenes/credits.js index b9ebc0286..3cb7f9e9c 100644 --- a/src/scenes/credits.js +++ b/src/scenes/credits.js @@ -7,7 +7,7 @@ export default class Credits extends Scene { } addCreditsText() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '29px', }; @@ -16,14 +16,16 @@ export default class Credits extends Scene { const addText = (text, offAxis = 200, color = '#ddd') => { const styling = { ...stylingOptions, color }; - return this.add.text(0, startCoord += offAxis, text, styling); - } + const textObject = this.add.text(0, startCoord += offAxis, text, styling); + + return textObject; + }; const leftColumn = []; const rightColumn = []; const centerColumn = []; - // Art & concepts text + // Art & concepts text leftColumn.push(addText('Art & Concepts')); rightColumn.push(addText('Jerome of Astora', 0, '#920ec2')); rightColumn.push(addText('&', 35)); @@ -34,15 +36,15 @@ export default class Credits extends Scene { rightColumn.push(addText('Juan Manuel', 0, '#cc7d23')); // Special Thanks text - centerColumn.push(addText('Special thanks to:')); - centerColumn.push(addText('Jerome of Astora', 100, '#920ec2')); - centerColumn.push(addText('Slowpoke', 55, '#38abd1')); - centerColumn.push(addText('&', 55)); + centerColumn.push(addText('Special thanks to:')); + centerColumn.push(addText('Jerome of Astora', 100, '#920ec2')); + centerColumn.push(addText('Slowpoke', 55, '#38abd1')); + centerColumn.push(addText('&', 55)); centerColumn.push(addText('You for playing <3', 55)); - leftColumn.forEach(text => { this.centerTextHorizontally(text, false, 8) }); - rightColumn.forEach(text => { this.centerTextHorizontally(text, true, 4, 3) }); - centerColumn.forEach(text => { this.centerTextHorizontally(text) }); + leftColumn.forEach(text => { this.centerTextHorizontally(text, false, 8); }); + rightColumn.forEach(text => { this.centerTextHorizontally(text, true, 4, 3); }); + centerColumn.forEach(text => { this.centerTextHorizontally(text); }); const textElements = leftColumn.concat(rightColumn).concat(centerColumn); @@ -57,7 +59,7 @@ export default class Credits extends Scene { duration: 30000, onComplete: () => { this.returnToMainMenu(); - } + }, }); } @@ -65,13 +67,13 @@ export default class Credits extends Scene { const launchTitleScene = () => { this.scene.stop(); this.scene.launch('background'); - } + }; this.fadeOutElements(700, launchTitleScene); } addExitIcon() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '29px', color: '#fff', @@ -79,7 +81,7 @@ export default class Credits extends Scene { this.exitIcon = this.add.text(15, 15, 'x', stylingOptions); this.exitIcon.setInteractive({ cursor: 'pointer' }) - .on('pointerdown', () => { this.returnToMainMenu() }); + .on('pointerdown', () => { this.returnToMainMenu(); }); } create() { diff --git a/src/scenes/death.js b/src/scenes/death.js index e9280860e..da9d4b734 100644 --- a/src/scenes/death.js +++ b/src/scenes/death.js @@ -16,7 +16,7 @@ export default class DeathScene extends Scene { preload() { this.load.spritesheet('falling', fallingAsset, - { frameWidth: 32, frameHeight: 32 }); + { frameWidth: 32, frameHeight: 32 }); } addFallingCharacter() { @@ -45,20 +45,20 @@ export default class DeathScene extends Scene { moveFallingCharacter() { this.tweens.addCounter({ - from: this.falling.y, + from: this.falling.y, to: 0, duration: 2500, - onUpdate: (tween, target) => { this.falling.y = target.value } + onUpdate: (tween, target) => { this.falling.y = target.value; }, }); } fadeFallingCharacter() { - const removeCharacter = () => { this.falling.destroy() }; + const removeCharacter = () => { this.falling.destroy(); }; this.fade(this.falling, 1, 0, 2000, removeCharacter); } addMessage() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '29px', color: '#fff', @@ -72,7 +72,7 @@ export default class DeathScene extends Scene { const onFadeInBackgroundEnd = () => { this.scene.start('characterSelection'); - } + }; const fadeInBackground = () => { this.backgroundScene.titleScreenPosition(); @@ -81,23 +81,23 @@ export default class DeathScene extends Scene { this.scoreboardScene.scene.stop(); backgroundCamera.fadeIn(2000); - backgroundCamera.on('camerafadeincomplete', () => { onFadeInBackgroundEnd() }); - } + backgroundCamera.on('camerafadeincomplete', () => { onFadeInBackgroundEnd(); }); + }; - this.fadeOutElements(1500, () => { fadeInBackground() }); + this.fadeOutElements(1500, () => { fadeInBackground(); }); this.scoreboardScene.fadeOutElements(1500); } addReplay() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '32px', color: '#fff', }; this.replayText = this.add.text(0, 550, 'Replay', stylingOptions); - this.replayText.setInteractive({ cursor: 'pointer'}) - .on('pointerdown', () => { this.replay() }); + this.replayText.setInteractive({ cursor: 'pointer' }) + .on('pointerdown', () => { this.replay(); }); this.centerTextHorizontally(this.replayText); } @@ -121,7 +121,4 @@ export default class DeathScene extends Scene { this.scoreboardScene = this.scene.get('scoreboard'); } - - update() { - } } diff --git a/src/scenes/game.js b/src/scenes/game.js index 8c63c27b6..2e0475f66 100644 --- a/src/scenes/game.js +++ b/src/scenes/game.js @@ -28,17 +28,8 @@ export default class MainGame extends Phaser.Scene { { frameWidth: 32, frameHeight: 32 }); } - randomizePlatformTexture(platformObject) { - const rareTexture = Math.random() > 0.9; - const platformIndex = rareTexture ? - Phaser.Math.Between(1, 2) : - Phaser.Math.Between(3, 4); - - platformObject.setTexture(`platform0${platformIndex}`); - } - addItemCounter() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '22px', color: '#000', @@ -63,7 +54,7 @@ export default class MainGame extends Phaser.Scene { key: 'collectibleTurn', frames: this.anims.generateFrameNumbers('collectible', { start: 0, end: 25 }), frameRate: 15, - repeat: -1 + repeat: -1, }); item.anims.play('collectibleTurn'); @@ -77,7 +68,7 @@ export default class MainGame extends Phaser.Scene { item.disableBody(true, true); item.destroy(); - // Increases counter + // Increases counter this.score += 1; this.scoreText.text = this.score; @@ -142,7 +133,7 @@ export default class MainGame extends Phaser.Scene { this.addItems(); // Adding Platforms - this.addPlatforms() + this.addPlatforms(); // Adding Player this.addPlayer(); @@ -168,7 +159,8 @@ export default class MainGame extends Phaser.Scene { handleScrollDeath() { this.scene.start('death', - { endingX: this.player.x, + { + endingX: this.player.x, score: this.score, }); this.scene.stop(); @@ -193,14 +185,14 @@ export default class MainGame extends Phaser.Scene { this.player.anims.play('right', true); if (this.player.body.touching.down) { this.player.setVelocityX(160); - } else if(this.player.body.velocity.x < 85) { + } else if (this.player.body.velocity.x < 85) { this.player.setVelocityX(85); } } else if (this.movingLeft) { this.player.anims.play('left', true); if (this.player.body.touching.down) { this.player.setVelocityX(-160); - } else if(this.player.body.velocity.x > -85) { + } else if (this.player.body.velocity.x > -85) { this.player.setVelocityX(-85); } } else { diff --git a/src/scenes/scoreboard.js b/src/scenes/scoreboard.js index 2484ba121..45f8862a4 100644 --- a/src/scenes/scoreboard.js +++ b/src/scenes/scoreboard.js @@ -1,4 +1,4 @@ -import Phaser from 'phaser'; import Scene from '../classes/sceneUtils'; +import Phaser from 'phaser'; import Scene from '../classes/sceneUtils'; // External api connect logic import Api from '../classes/api'; @@ -6,15 +6,16 @@ export default class Scoreboard extends Scene { init(data) { this.currentScore = data.currentScore; } + constructor() { super('scoreboard'); } addLabel() { - const stylingConfig = { + const stylingConfig = { fontFamily: 'Alagard', fontSize: '28px', - color: '#fff' + color: '#fff', }; this.label = this.add.text(20, 480, 'Tell me your name: ', stylingConfig).setOrigin(0); @@ -34,7 +35,7 @@ export default class Scoreboard extends Scene { color: '#eee', fontFamily: 'Alagard', fontSize: '28px', - } + }; this.loadingDataText = this.add.text(20, 200, 'Loading scoreboard ...', stylingOptions); } @@ -48,12 +49,15 @@ export default class Scoreboard extends Scene { color: '#eee', fontFamily: 'Alagard', fontSize: '28px', - } + }; let startCoord = 40; const addText = (text, offAxis = 50) => { - return this.add.text(20, startCoord += offAxis, text, stylingOptions).setOrigin(0); - } + const textObject = this.add.text(20, startCoord += offAxis, text, stylingOptions) + .setOrigin(0); + + return textObject; + }; const scoreColumn = []; const spaceColumn = []; @@ -64,8 +68,8 @@ export default class Scoreboard extends Scene { this.addLoadingDataText(); - Api.getData().then( results => { - const scoreCollection = results.map( data => data.score); + Api.getData().then(results => { + const scoreCollection = results.map(data => data.score); const dataCollection = results; const getScorePlace = (runScore) => { @@ -77,30 +81,30 @@ export default class Scoreboard extends Scene { return position; }; - dataCollection.forEach( (data, index, array) => { - const place = index + 1; - const name = data.user.length >= 18 ? - `${data.user.slice(0, 17)}...` : - data.user; - const score = data.score; + dataCollection.forEach((data, index, array) => { + const place = index + 1; + const name = data.user.length >= 18 + ? `${data.user.slice(0, 17)}...` + : data.user; + const { score } = data; if (place <= scoreboardLength) { // Only display first X scores nameColumn.push(addText(`${place}. ${name}`)); scoreColumn.push(addText(score, 0)); - scoreColumn.forEach( score => score.x = 400 ); + scoreColumn.forEach(score => { score.x = 400; }); } else if (place === array.length) { // Adds spacer dots spaceColumn.push(addText('.', 20)); spaceColumn.push(addText('.', 15)); spaceColumn.push(addText('.', 15)); - spaceColumn.forEach( dot => dot.x = 200); + spaceColumn.forEach(dot => { dot.x = 200; }); nameColumn.push(addText(`${place}. ${name}`)); scoreColumn.push(addText(score, 0)); - scoreColumn.forEach( score => score.x = 400 ); + scoreColumn.forEach(score => { score.x = 400; }); } }); @@ -120,7 +124,7 @@ export default class Scoreboard extends Scene { color: '#eee', fontFamily: 'Alagard', fontSize: '28px', - } + }; this.savingScoreText = this.add.text(20, 480, 'Saving score ...', stylingOptions); } @@ -143,7 +147,7 @@ export default class Scoreboard extends Scene { this.label.destroy(); this.removeScores(); - Api.saveScore(name, this.currentScore).then( result => { + Api.saveScore(name, this.currentScore).then(result => { this.reDisplayScores(); if (result) { this.removeSavingScoreText(); @@ -154,25 +158,25 @@ export default class Scoreboard extends Scene { } addSubmitText() { - const stylingConfig = { + const stylingConfig = { fontFamily: 'Alagard', fontSize: '28px', - color: '#fff' + color: '#fff', }; this.submitText = this.add.text(0, 480, 'Submit', stylingConfig).setOrigin(0); const calcX = this.textInput.x + this.textInput.width + this.submitText.width; - this.submitText.x = calcX + this.submitText.x = calcX; this.submitText.setInteractive({ cursor: 'pointer' }) - .on('pointerdown', () => { this.submitInfo() }); + .on('pointerdown', () => { this.submitInfo(); }); this.submitText.disableInteractive(); } addNameInput() { - const stylingConfig = { + const stylingConfig = { fontFamily: 'Alagard', fontSize: '29px', color: '#fff', @@ -180,8 +184,8 @@ export default class Scoreboard extends Scene { const calcX = this.label.x + this.label.width; this.textInput = this.add.rexInputText(calcX, 480, 250, 30, stylingConfig).setOrigin(0); - this.textInput.on('textchange', (inputText, e) => { - if(inputText.text.length === 0 || !inputText.text.trim()) { + this.textInput.on('textchange', (inputText, e) => { + if (inputText.text.length === 0 || !inputText.text.trim()) { this.submitText.disableInteractive(); } else { this.submitText.setInteractive(); @@ -194,7 +198,7 @@ export default class Scoreboard extends Scene { color: '#eee', fontFamily: 'Alagard', fontSize: '28px', - } + }; if (this.currentScore > 0) { this.addLabel(); diff --git a/src/scenes/title.js b/src/scenes/title.js index 7fa67f7ef..b78b70557 100644 --- a/src/scenes/title.js +++ b/src/scenes/title.js @@ -11,7 +11,7 @@ export default class Title extends Scene { preload() { this.load.spritesheet('title', titleAsset, - { frameWidth: 128, frameHeight: 128 } ); + { frameWidth: 128, frameHeight: 128 }); } addTitle() { @@ -27,16 +27,19 @@ export default class Title extends Scene { this.anims.create({ key: 'shine', frames: this.anims.generateFrameNumbers('title', { start: 1, end: 60 }), - frameRate: 60 + frameRate: 60, }); - this.tweens.addCounter({ from: 0, to: 1, duration: 3000, + this.tweens.addCounter({ + from: 0, + to: 1, + duration: 3000, loop: -1, loopDelay: 4000, onLoop: () => { this.title.anims.play('shine', true); this.title.anims.nextAnim = 'still'; - } + }, }); } @@ -48,23 +51,23 @@ export default class Title extends Scene { startCredits() { const launchCredits = () => { this.scene.launch('credits'); - } + }; const stopScenes = () => { this.backgroundScene.scene.stop(); this.scene.stop(); - } + }; const closeBackground = () => { this.backgroundScene.fadeOutElements(700, stopScenes); - } + }; this.fadeOutElements(700, launchCredits); this.backgroundScene.scrollTo(-1800, 3500, closeBackground); } addPlayTitle() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '29px', color: '#333', @@ -75,27 +78,27 @@ export default class Title extends Scene { this.fadeOutElements(); this.startGame(); - } + }; const enterHover = () => { this.playTitle.setStyle({ color: '#000' }); - } + }; const exitHover = () => { this.playTitle.setStyle({ color: '#333' }); - } + }; - this.playTitle = this.add.text(0, 400, `Play`, stylingOptions); + this.playTitle = this.add.text(0, 400, 'Play', stylingOptions); this.centerTextHorizontally(this.playTitle); this.playTitle.setInteractive({ cursor: 'pointer' }) - .on('pointerdown', () => { click() }) - .on('pointerover', () => { enterHover() }) - .on('pointerout', () => { exitHover() }); + .on('pointerdown', () => { click(); }) + .on('pointerover', () => { enterHover(); }) + .on('pointerout', () => { exitHover(); }); } addCreditsTitle() { - const stylingOptions = { + const stylingOptions = { fontFamily: 'Alagard', fontSize: '22px', color: '#333', @@ -104,23 +107,23 @@ export default class Title extends Scene { const click = () => { if (this.playCredits.alpha < 0.5) return; this.startCredits(); - } + }; const enterHover = () => { this.playCredits.setStyle({ color: '#000' }); - } + }; const exitHover = () => { this.playCredits.setStyle({ color: '#333' }); - } + }; - this.playCredits = this.add.text(0, 432, `Credits`, stylingOptions); + this.playCredits = this.add.text(0, 432, 'Credits', stylingOptions); this.centerTextHorizontally(this.playCredits); this.playCredits.setInteractive({ cursor: 'pointer' }) - .on('pointerdown', () => { click() }) - .on('pointerover', () => { enterHover() }) - .on('pointerout', () => { exitHover() }); + .on('pointerdown', () => { click(); }) + .on('pointerover', () => { enterHover(); }) + .on('pointerout', () => { exitHover(); }); } create() { diff --git a/src/test/api.test.js b/src/test/api.test.js index 665829f07..41f44425d 100644 --- a/src/test/api.test.js +++ b/src/test/api.test.js @@ -5,43 +5,45 @@ beforeEach(() => { }); test('Submit score correctly', async () => { - fetch.mockResponse(JSON.stringify({ result: "Leaderboard score created correctly." })); + fetch.mockResponse(JSON.stringify({ result: 'Leaderboard score created correctly.' })); const name = 'TestingUser'; const score = 4; - const api_response = await Api.saveScore(name, score); + const apiResponse = await Api.saveScore(name, score); - expect(api_response).toEqual(true) + expect(apiResponse).toEqual(true); expect(fetch).toHaveBeenCalledTimes(1); }); test('Submit score error', async () => { - fetch.mockReject(() => Promise.reject("API is down")); + fetch.mockReject(() => Promise.reject(new Error('API is down'))); const name = 'TestingUser'; const score = 4; - const api_response = await Api.saveScore(name, score); + const apiResponse = await Api.saveScore(name, score); - expect(api_response).toEqual(false) + expect(apiResponse).toEqual(false); expect(fetch).toHaveBeenCalledTimes(1); }); test('Get data', async () => { - fetch.mockResponse(JSON.stringify({ result: [ - { name: 'First', score: 3 }, - { name: 'Second', score: 2 }, - { name: 'Third', score: 1 } - ]})); + fetch.mockResponse(JSON.stringify({ + result: [ + { name: 'First', score: 3 }, + { name: 'Second', score: 2 }, + { name: 'Third', score: 1 }, + ], + })); const orderDataSpy = jest.spyOn(Api, 'orderData'); - const api_response = await Api.getData(); + const apiResponse = await Api.getData(); - expect(api_response).toEqual([ + expect(apiResponse).toEqual([ { name: 'First', score: 3 }, { name: 'Second', score: 2 }, - { name: 'Third', score: 1 } + { name: 'Third', score: 1 }, ]); expect(orderDataSpy).toHaveBeenCalledTimes(1); @@ -49,19 +51,21 @@ test('Get data', async () => { }); test('Get data order by score', async () => { - fetch.mockResponse(JSON.stringify({ result: [ - { name: 'Second', score: 2 }, - { name: 'Third', score: 1 }, - { name: 'First', score: 3 } - ]})); + fetch.mockResponse(JSON.stringify({ + result: [ + { name: 'Second', score: 2 }, + { name: 'Third', score: 1 }, + { name: 'First', score: 3 }, + ], + })); const orderDataSpy = jest.spyOn(Api, 'orderData'); - const api_response = await Api.getData(); + const apiResponse = await Api.getData(); - expect(api_response).toEqual([ + expect(apiResponse).toEqual([ { name: 'First', score: 3 }, { name: 'Second', score: 2 }, - { name: 'Third', score: 1 } + { name: 'Third', score: 1 }, ]); expect(orderDataSpy).toHaveBeenCalledTimes(1); @@ -69,9 +73,9 @@ test('Get data order by score', async () => { }); test('Get data error', async () => { - fetch.mockReject(() => Promise.reject("API is down")); + fetch.mockReject(() => Promise.reject(new Error('API is down'))); - const api_response = await Api.getData(); + const apiResponse = await Api.getData(); - expect(api_response).toEqual([]); + expect(apiResponse).toEqual([]); }); diff --git a/src/test/setupJest.js b/src/test/setupJest.js index 15319f848..9e92f7c1b 100644 --- a/src/test/setupJest.js +++ b/src/test/setupJest.js @@ -1,3 +1,3 @@ -import fetchMock from "jest-fetch-mock"; +import fetchMock from 'jest-fetch-mock'; fetchMock.enableMocks(); diff --git a/webpack/base.js b/webpack/base.js index 27b6c9c18..253e46489 100644 --- a/webpack/base.js +++ b/webpack/base.js @@ -58,7 +58,7 @@ module.exports = { plugins: [ new Dotenv({ path: path.resolve(__dirname, '../.env'), - systemvars: true + systemvars: true, }), new CleanWebpackPlugin({ root: path.resolve(__dirname, '../'), From f40ed65abee7c61be1efac3dce9900448162c362 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 6 Aug 2020 12:12:10 -0500 Subject: [PATCH 60/66] Updated readme with assets info & status badge --- README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 24715d49d..b18dcfdcc 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Another platformer - +[![Netlify Status](https://api.netlify.com/api/v1/badges/71ac9d36-b299-425d-ab9d-0d74cb446f0d/deploy-status)](https://app.netlify.com/sites/another-platformer/deploys) [![MIT license](https://img.shields.io/github/license/codingAngarita/another-platformer)](https://codingangarita.mit-license.org/) [![Open Source Love svg1](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/) @@ -29,6 +29,10 @@ Loading images via JavaScript module `import` is also supported. This projects uses the MIT license. +### Assets + +All the assets used in this project were made by me and "Jeromimo" please reach out before using them. + ## Modifying the code Run `npm install` from your project directory. Then, you can start the local development @@ -38,3 +42,5 @@ server by running `npm start`. After starting the development server with `npm start`, you can edit any files in the `src` folder and webpack will automatically recompile and reload your server (available at `http://localhost:8080` by default). + +Please make sure to run the linters & tests before submiting any changes. From b7cac5abb8bb64499b9c2b7de08b9332cebfe67e Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 6 Aug 2020 12:13:19 -0500 Subject: [PATCH 61/66] Added live version --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b18dcfdcc..ed13696d9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Another platformer -[![Netlify Status](https://api.netlify.com/api/v1/badges/71ac9d36-b299-425d-ab9d-0d74cb446f0d/deploy-status)](https://app.netlify.com/sites/another-platformer/deploys) +[![Netlify Status](https://api.netlify.com/api/v1/badges/71ac9d36-b299-425d-ab9d-0d74cb446f0d/deploy-status)](https://another-platformer.netlify.app/) [![MIT license](https://img.shields.io/github/license/codingAngarita/another-platformer)](https://codingangarita.mit-license.org/) [![Open Source Love svg1](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/) @@ -11,6 +11,8 @@ Used [phaser3-project-template](https://github.com/photonstorm/phaser3-project-t Loading images via JavaScript module `import` is also supported. +## [Live version](https://another-platformer.netlify.app/) + ## Requirements [Node.js](https://nodejs.org) is required to install dependencies and run scripts via `npm`. From 1d2634a680439970f6c4a8ddd551c5f199f8cec3 Mon Sep 17 00:00:00 2001 From: "angarita.Dev" <44899916+codingAngarita@users.noreply.github.com> Date: Thu, 6 Aug 2020 13:32:30 -0500 Subject: [PATCH 62/66] Added style linter --- .stylelintrc.json | 10 + package-lock.json | 1325 ++++++++++++++++++++++++++++++++++++++++++- package.json | 4 + src/style/main.scss | 5 +- 4 files changed, 1328 insertions(+), 16 deletions(-) create mode 100644 .stylelintrc.json diff --git a/.stylelintrc.json b/.stylelintrc.json new file mode 100644 index 000000000..be7e869c7 --- /dev/null +++ b/.stylelintrc.json @@ -0,0 +1,10 @@ +{ + "extends": ["stylelint-config-standard"], + "plugins": ["stylelint-scss", "stylelint-csstree-validator"], + "rules": { + "at-rule-no-unknown": null, + "scss/at-rule-no-unknown": true, + "csstree/validator": true + }, + "ignoreFiles": ["build/**", "dist/**", "**/reset*.css", "**/bootstrap*.css", "dev/**"] +} diff --git a/package-lock.json b/package-lock.json index 3c10ea8c7..c986150b9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1666,6 +1666,32 @@ } } }, + "@nodelib/fs.scandir": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", + "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.3", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", + "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", + "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.3", + "fastq": "^1.6.0" + } + }, "@sinonjs/commons": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", @@ -1684,6 +1710,25 @@ "@sinonjs/commons": "^1.7.0" } }, + "@stylelint/postcss-css-in-js": { + "version": "0.37.2", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz", + "integrity": "sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA==", + "dev": true, + "requires": { + "@babel/core": ">=7.9.0" + } + }, + "@stylelint/postcss-markdown": { + "version": "0.36.1", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-markdown/-/postcss-markdown-0.36.1.tgz", + "integrity": "sha512-iDxMBWk9nB2BPi1VFQ+Dc5+XpvODBHw2n3tYpaBZuEAFQlbtF9If0Qh5LTTwSi/XwdbJ2jt+0dis3i8omyggpw==", + "dev": true, + "requires": { + "remark": "^12.0.0", + "unist-util-find-all-after": "^3.0.1" + } + }, "@types/anymatch": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", @@ -1789,6 +1834,12 @@ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" }, + "@types/minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", + "dev": true + }, "@types/node": { "version": "14.0.23", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.23.tgz", @@ -1800,6 +1851,12 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", "dev": true }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, "@types/prettier": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.0.2.tgz", @@ -1830,6 +1887,12 @@ "source-map": "^0.6.1" } }, + "@types/unist": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz", + "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==", + "dev": true + }, "@types/webpack": { "version": "4.41.21", "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.21.tgz", @@ -2612,6 +2675,12 @@ "es-abstract": "^1.17.0-next.1" } }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, "asn1": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", @@ -2710,6 +2779,29 @@ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, + "autoprefixer": { + "version": "9.8.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", + "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dev": true, + "requires": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "colorette": "^1.2.1", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "caniuse-lite": { + "version": "1.0.30001111", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001111.tgz", + "integrity": "sha512-xnDje2wchd/8mlJu8sXvWxOGvMgv+uT3iZ3bkIAynKOzToCssWCmkz/ZIkQBs/2pUB4uwnJKVORWQ31UkbVjOg==", + "dev": true + } + } + }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -2888,6 +2980,12 @@ "babel-preset-current-node-syntax": "^0.1.2" } }, + "bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "dev": true + }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -3315,6 +3413,17 @@ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, + "camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + } + }, "caniuse-lite": { "version": "1.0.30001104", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001104.tgz", @@ -3336,6 +3445,12 @@ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", "dev": true }, + "ccount": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.0.5.tgz", + "integrity": "sha512-MOli1W+nfbPLlKEhInaxhRdp7KVLFxLN5ykwzHgLsLI3H3gs5jjFAK4Eoj3OzzcxCtumDaI8onoVDeQyWaNTkw==", + "dev": true + }, "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -3353,6 +3468,30 @@ "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true }, + "character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "dev": true + }, + "character-entities-html4": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.4.tgz", + "integrity": "sha512-HRcDxZuZqMx3/a+qrzxdBKBPUpxWEq9xw2OPZ3a/174ihfrQKVsFhqtthBInFy1zZ9GgZyFXOatNujm8M+El3g==", + "dev": true + }, + "character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "dev": true + }, + "character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "dev": true + }, "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", @@ -3519,12 +3658,27 @@ } } }, + "clone-regexp": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", + "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", + "dev": true, + "requires": { + "is-regexp": "^2.0.0" + } + }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", "dev": true }, + "collapse-white-space": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", + "dev": true + }, "collect-v8-coverage": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", @@ -3555,6 +3709,12 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, + "colorette": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==", + "dev": true + }, "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -3774,6 +3934,39 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, + "cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + }, + "dependencies": { + "parse-json": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.1.tgz", + "integrity": "sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" + } + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + } + } + }, "create-ecdh": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", @@ -3819,7 +4012,6 @@ "version": "3.0.5", "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.0.5.tgz", "integrity": "sha512-FFLcLtraisj5eteosnX1gf01qYDCOc4fDy0+euOt8Kn9YBY2NtXL/pCoYPavw24NIQkQqm5ZOLsGD5Zzj0gyew==", - "dev": true, "requires": { "node-fetch": "2.6.0" } @@ -3913,6 +4105,16 @@ "nth-check": "~1.0.1" } }, + "css-tree": { + "version": "1.0.0-alpha.38", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.38.tgz", + "integrity": "sha512-pWuxS4kaECFopOc1NZff+dYdw+brc1Tt0UAuTiw56/Trtae4NdHtbDH24311UWfMmcpZe7jLy0e64ZeJg9t7bQ==", + "dev": true, + "requires": { + "mdn-data": "2.0.6", + "source-map": "^0.6.1" + } + }, "css-what": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", @@ -3997,6 +4199,24 @@ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", "dev": true }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + } + } + }, "decimal.js": { "version": "10.2.0", "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.0.tgz", @@ -4171,6 +4391,23 @@ } } }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + }, + "dependencies": { + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + } + } + }, "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", @@ -4276,14 +4513,12 @@ "dotenv": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", - "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", - "dev": true + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==" }, "dotenv-defaults": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/dotenv-defaults/-/dotenv-defaults-2.0.0.tgz", "integrity": "sha512-8X8gQoM+BH0L/v+GwgpeNwrthbG2uTDVr3vkbedQPLrIalZE0vxB9LbuD+7echbiP7fAY3tE+pZI11R1DtlUNg==", - "dev": true, "requires": { "dotenv": "^8.2.0" } @@ -4292,7 +4527,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/dotenv-webpack/-/dotenv-webpack-2.0.0.tgz", "integrity": "sha512-Omo5IpVl7XRgWXeZjxdfqOBEApJPxGLMOIx3F/w/W7ppUKgYMOXrk4eczlQrErPD4X0YRESlyGJek3O4uobRnw==", - "dev": true, "requires": { "dotenv-defaults": "^2.0.0" } @@ -4953,6 +5187,15 @@ "strip-eof": "^1.0.0" } }, + "execall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", + "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", + "dev": true, + "requires": { + "clone-regexp": "^2.1.0" + } + }, "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -5248,6 +5491,65 @@ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, + "fast-glob": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", + "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -5259,6 +5561,15 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, + "fastq": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.8.0.tgz", + "integrity": "sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, "faye-websocket": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", @@ -5646,6 +5957,12 @@ "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true }, + "get-stdin": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", + "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "dev": true + }, "get-stream": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", @@ -5750,6 +6067,21 @@ } } }, + "globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", + "dev": true + }, + "gonzales-pe": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", + "integrity": "sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, "graceful-fs": { "version": "4.2.4", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", @@ -5784,6 +6116,12 @@ "har-schema": "^2.0.0" } }, + "hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true + }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -5966,6 +6304,12 @@ "uglify-js": "3.4.x" } }, + "html-tags": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", + "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", + "dev": true + }, "html-webpack-plugin": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", @@ -6144,6 +6488,12 @@ } } }, + "import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true + }, "import-local": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", @@ -6384,6 +6734,28 @@ } } }, + "is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "dev": true + }, + "is-alphanumeric": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz", + "integrity": "sha1-Spzvcdr0wAHB2B1j0UDPU/1oifQ=", + "dev": true + }, + "is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dev": true, + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, "is-arguments": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", @@ -6446,6 +6818,12 @@ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, + "is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "dev": true + }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", @@ -6500,6 +6878,12 @@ "is-extglob": "^2.1.1" } }, + "is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "dev": true + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -6539,6 +6923,12 @@ "path-is-inside": "^1.0.2" } }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true + }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -6561,6 +6951,12 @@ "has-symbols": "^1.0.1" } }, + "is-regexp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz", + "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", + "dev": true + }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", @@ -6587,11 +6983,23 @@ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, + "is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", + "dev": true + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" }, + "is-word-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", + "dev": true + }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", @@ -7337,7 +7745,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/jest-fetch-mock/-/jest-fetch-mock-3.0.3.tgz", "integrity": "sha512-Ux1nWprtLrdrH4XwE7O7InRY6psIi3GOsqNESJgMJ+M5cv4A8Lh7SN9d2V2kKRZ8ebAfcd1LNyZguAOb6JiDqw==", - "dev": true, "requires": { "cross-fetch": "^3.0.4", "promise-polyfill": "^8.1.3" @@ -8705,6 +9112,12 @@ "integrity": "sha512-xf88rTeHiXk+XE2Vhi6yj8Wm3gMZrygGdKjJqN8HkV+PwF/t50/LdAKHoHpPcxFAlmQszTZ1CugrK25S7qDRLA==", "dev": true }, + "known-css-properties": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.18.0.tgz", + "integrity": "sha512-69AgJ1rQa7VvUsd2kpvVq+VeObDuo3zrj0CzM5Slmf6yduQFAI2kXPDQJR2IE/u6MSAUOJrwSzjg5vlz8qcMiw==", + "dev": true + }, "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -8791,6 +9204,15 @@ "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", "dev": true }, + "log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "dev": true, + "requires": { + "chalk": "^2.4.2" + } + }, "loglevel": { "version": "1.6.8", "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", @@ -8802,6 +9224,12 @@ "resolved": "https://registry.npmjs.org/lokijs/-/lokijs-1.5.10.tgz", "integrity": "sha512-XUCpwfR0cL2WJZECy80rGmDve9MCDVYFZqPGATSHCh0L+qocsPww3VB20d3Pvl0QpSBzWConCZyb6Ov8lzXoPA==" }, + "longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", + "dev": true + }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -8854,6 +9282,12 @@ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" }, + "map-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", + "dev": true + }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", @@ -8862,16 +9296,52 @@ "object-visit": "^1.0.0" } }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "markdown-escapes": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", + "dev": true + }, + "markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "dev": true, + "requires": { + "repeat-string": "^1.0.0" + } + }, + "mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1", "safe-buffer": "^5.1.2" } }, + "mdast-util-compact": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz", + "integrity": "sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA==", + "dev": true, + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "mdn-data": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", + "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==", + "dev": true + }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -8911,6 +9381,128 @@ } } }, + "meow": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", + "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "^4.0.2", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "parse-json": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.1.tgz", + "integrity": "sha512-ztoZ4/DYeXQq4E21v169sC8qWINGpcosGv9XhTDvg9/hWvx/zrFkc9BiWxR58OJLHGk28j5BL0SDLeV2WmFZlQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "dependencies": { + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + } + } + }, + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "dev": true + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -8922,6 +9514,12 @@ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", @@ -8991,6 +9589,12 @@ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, + "min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true + }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", @@ -9014,6 +9618,25 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, + "minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "dependencies": { + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + } + } + }, "minipass": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", @@ -9195,8 +9818,7 @@ "node-fetch": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", - "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", - "dev": true + "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==" }, "node-forge": { "version": "0.9.0", @@ -9359,6 +9981,18 @@ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "normalize-selector": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", + "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=", + "dev": true + }, "npm-run-path": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", @@ -9376,6 +10010,12 @@ "boolbase": "~1.0.0" } }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, "nwsapi": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", @@ -9708,6 +10348,20 @@ "safe-buffer": "^5.1.1" } }, + "parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dev": true, + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", @@ -9945,6 +10599,30 @@ } } }, + "postcss-html": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", + "integrity": "sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==", + "dev": true, + "requires": { + "htmlparser2": "^3.10.0" + } + }, + "postcss-less": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz", + "integrity": "sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + } + }, + "postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=", + "dev": true + }, "postcss-modules-extract-imports": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", @@ -9986,6 +10664,63 @@ "postcss": "^7.0.6" } }, + "postcss-reporter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-6.0.1.tgz", + "integrity": "sha512-LpmQjfRWyabc+fRygxZjpRxfhRf9u/fdlKf4VHG4TSPbV2XNsuISzYW1KL+1aQzx53CAppa1bKG4APIB/DOXXw==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "lodash": "^4.17.11", + "log-symbols": "^2.2.0", + "postcss": "^7.0.7" + }, + "dependencies": { + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + } + } + }, + "postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=", + "dev": true + }, + "postcss-safe-parser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz", + "integrity": "sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g==", + "dev": true, + "requires": { + "postcss": "^7.0.26" + } + }, + "postcss-sass": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.4.4.tgz", + "integrity": "sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg==", + "dev": true, + "requires": { + "gonzales-pe": "^4.3.0", + "postcss": "^7.0.21" + } + }, + "postcss-scss": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz", + "integrity": "sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==", + "dev": true, + "requires": { + "postcss": "^7.0.6" + } + }, "postcss-selector-parser": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", @@ -9997,6 +10732,12 @@ "uniq": "^1.0.1" } }, + "postcss-syntax": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", + "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", + "dev": true + }, "postcss-value-parser": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", @@ -10087,8 +10828,7 @@ "promise-polyfill": { "version": "8.1.3", "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.1.3.tgz", - "integrity": "sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g==", - "dev": true + "integrity": "sha512-MG5r82wBzh7pSKDRa9y+vllNHz3e3d4CNj1PQE4BQYxLme0gKYYBm9YENq+UkEikyZ0XbiGWxYlVw3Rl9O/U8g==" }, "prompts": { "version": "2.3.2", @@ -10198,6 +10938,12 @@ "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", "dev": true }, + "quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true + }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -10363,6 +11109,16 @@ "picomatch": "^2.2.1" } }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, "regenerate": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", @@ -10465,6 +11221,63 @@ "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=" }, + "remark": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-12.0.1.tgz", + "integrity": "sha512-gS7HDonkdIaHmmP/+shCPejCEEW+liMp/t/QwmF0Xt47Rpuhl32lLtDV1uKWvGoq+kxr5jSgg5oAIpGuyULjUw==", + "dev": true, + "requires": { + "remark-parse": "^8.0.0", + "remark-stringify": "^8.0.0", + "unified": "^9.0.0" + } + }, + "remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dev": true, + "requires": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + } + }, + "remark-stringify": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.1.tgz", + "integrity": "sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==", + "dev": true, + "requires": { + "ccount": "^1.0.0", + "is-alphanumeric": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "longest-streak": "^2.0.1", + "markdown-escapes": "^1.0.0", + "markdown-table": "^2.0.0", + "mdast-util-compact": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "stringify-entities": "^3.0.0", + "unherit": "^1.0.4", + "xtend": "^4.0.1" + } + }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", @@ -10492,6 +11305,12 @@ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, + "replace-ext": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true + }, "request": { "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", @@ -10727,6 +11546,12 @@ "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", "dev": true }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, "rework": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/rework/-/rework-1.0.1.tgz", @@ -10780,6 +11605,12 @@ "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true }, + "run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", + "dev": true + }, "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", @@ -11391,6 +12222,12 @@ "wbuf": "^1.7.3" } }, + "specificity": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", + "dev": true + }, "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", @@ -11448,6 +12285,12 @@ } } }, + "state-toggle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", + "dev": true + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -11650,6 +12493,19 @@ } } }, + "stringify-entities": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.0.1.tgz", + "integrity": "sha512-Lsk3ISA2++eJYqBMPKcr/8eby1I6L0gP0NlxF8Zja6c05yr/yCYyb2c9PwXjd08Ib3If1vn1rbs1H5ZtVuOfvQ==", + "dev": true, + "requires": { + "character-entities-html4": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.2", + "is-hexadecimal": "^1.0.0" + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -11681,6 +12537,15 @@ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + }, "strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -11696,6 +12561,279 @@ "schema-utils": "^2.6.6" } }, + "style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=", + "dev": true + }, + "stylelint": { + "version": "13.3.3", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.3.3.tgz", + "integrity": "sha512-j8Oio2T1YNiJc6iXDaPYd74Jg4zOa1bByNm/g9/Nvnq4tDPsIjMi46jhRZyPPktGPwjJ5FwcmCqIRlH6PVP8mA==", + "dev": true, + "requires": { + "@stylelint/postcss-css-in-js": "^0.37.1", + "@stylelint/postcss-markdown": "^0.36.1", + "autoprefixer": "^9.7.6", + "balanced-match": "^1.0.0", + "chalk": "^4.0.0", + "cosmiconfig": "^6.0.0", + "debug": "^4.1.1", + "execall": "^2.0.0", + "file-entry-cache": "^5.0.1", + "get-stdin": "^7.0.0", + "global-modules": "^2.0.0", + "globby": "^11.0.0", + "globjoin": "^0.1.4", + "html-tags": "^3.1.0", + "ignore": "^5.1.4", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "known-css-properties": "^0.18.0", + "leven": "^3.1.0", + "lodash": "^4.17.15", + "log-symbols": "^3.0.0", + "mathml-tag-names": "^2.1.3", + "meow": "^6.1.0", + "micromatch": "^4.0.2", + "normalize-selector": "^0.2.0", + "postcss": "^7.0.27", + "postcss-html": "^0.36.0", + "postcss-less": "^3.1.4", + "postcss-media-query-parser": "^0.2.3", + "postcss-reporter": "^6.0.1", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^4.0.2", + "postcss-sass": "^0.4.4", + "postcss-scss": "^2.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-syntax": "^0.36.2", + "postcss-value-parser": "^4.0.3", + "resolve-from": "^5.0.0", + "slash": "^3.0.0", + "specificity": "^0.4.1", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "style-search": "^0.1.0", + "sugarss": "^2.0.0", + "svg-tags": "^1.0.0", + "table": "^5.4.6", + "v8-compile-cache": "^2.1.0", + "write-file-atomic": "^3.0.3" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "globby": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "stylelint-config-recommended": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", + "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", + "dev": true + }, + "stylelint-config-standard": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz", + "integrity": "sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA==", + "dev": true, + "requires": { + "stylelint-config-recommended": "^3.0.0" + } + }, + "stylelint-csstree-validator": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/stylelint-csstree-validator/-/stylelint-csstree-validator-1.8.0.tgz", + "integrity": "sha512-S9PAu3/HTkRstKOHgD6Bm6pgf2u/u0jwCOFEq4tmnnvlHchL2SGFgifPl4gTDOQwMxcV12WmXMgsn8NH+2ttRw==", + "dev": true, + "requires": { + "css-tree": "1.0.0-alpha.38" + } + }, + "stylelint-scss": { + "version": "3.17.2", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-3.17.2.tgz", + "integrity": "sha512-e0dmxqsofy/HZj4urcGSJw4S6yHDJxiQdT20/1ciCsd5lomisa7YM4+Qtt1EG4hsqEG1dbEeF855tec1UyqcSA==", + "dev": true, + "requires": { + "lodash": "^4.17.15", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "sugarss": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", + "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + } + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -11732,6 +12870,12 @@ } } }, + "svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", + "dev": true + }, "symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", @@ -12032,6 +13176,30 @@ "punycode": "^2.1.1" } }, + "trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=", + "dev": true + }, + "trim-newlines": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "dev": true + }, + "trim-trailing-lines": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.3.tgz", + "integrity": "sha512-4ku0mmjXifQcTVfYDfR5lpgV7zVqPg6zV9rdZmwOPqq0+Zq19xDqEgagqVbc4pOOShbncuAOIs59R3+3gcF3ZA==", + "dev": true + }, + "trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "dev": true + }, "tslib": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", @@ -12124,6 +13292,16 @@ } } }, + "unherit": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "dev": true, + "requires": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + } + }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -12152,6 +13330,28 @@ "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", "dev": true }, + "unified": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.1.0.tgz", + "integrity": "sha512-VXOv7Ic6twsKGJDeZQ2wwPqXs2hM0KNu5Hkg9WgAZbSD1pxhZ7p8swqg583nw1Je2fhwHy6U8aEjiI79x1gvag==", + "dev": true, + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", + "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", + "dev": true + } + } + }, "union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", @@ -12185,6 +13385,60 @@ "imurmurhash": "^0.1.4" } }, + "unist-util-find-all-after": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-3.0.1.tgz", + "integrity": "sha512-0GICgc++sRJesLwEYDjFVJPJttBpVQaTNgc6Jw0Jhzvfs+jtKePEMu+uD+PqkRUrAvGQqwhpDwLGWo1PK8PDEw==", + "dev": true, + "requires": { + "unist-util-is": "^4.0.0" + } + }, + "unist-util-is": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.2.tgz", + "integrity": "sha512-Ofx8uf6haexJwI1gxWMGg6I/dLnF2yE+KibhD3/diOqY2TinLcqHXCV6OI5gFVn3xQqDH+u0M625pfKwIwgBKQ==", + "dev": true + }, + "unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "dev": true, + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dev": true, + "requires": { + "@types/unist": "^2.0.2" + } + }, + "unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + } + }, + "unist-util-visit-parents": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.0.tgz", + "integrity": "sha512-0g4wbluTF93npyPrp/ymd3tCDTMnP0yo2akFD2FIBAYXq/Sga3lwaU1D8OYKbtpioaI6CkDcQ6fsMnmtzt7htw==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + } + }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -12372,6 +13626,43 @@ "extsprintf": "^1.2.0" } }, + "vfile": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.0.tgz", + "integrity": "sha512-a/alcwCvtuc8OX92rqqo7PflxiCgXRFjdyoGVuYV+qbgCb0GgZJRvIgCD4+U/Kl1yhaRsaTwksF88xbPyGsgpw==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "replace-ext": "1.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", + "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", + "dev": true + } + } + }, + "vfile-location": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.0.1.tgz", + "integrity": "sha512-yYBO06eeN/Ki6Kh1QAkgzYpWT1d3Qln+ZCtSbJqFExPl1S3y2qqotJQXoh6qEvl/jDlgpUJolBn3PItVnnZRqQ==", + "dev": true + }, + "vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, "vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", @@ -13201,6 +14492,12 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, + "yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true + }, "yargs": { "version": "13.3.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", diff --git a/package.json b/package.json index 24d54b096..387866d61 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,10 @@ "raw-loader": "^3.1.0", "resolve-url-loader": "^3.1.1", "sass-loader": "^9.0.2", + "stylelint": "^13.3.3", + "stylelint-config-standard": "^20.0.0", + "stylelint-csstree-validator": "^1.8.0", + "stylelint-scss": "^3.17.2", "webpack-cli": "^3.3.10", "webpack-dev-server": "^3.11.0" }, diff --git a/src/style/main.scss b/src/style/main.scss index d2948dc31..678b17f13 100644 --- a/src/style/main.scss +++ b/src/style/main.scss @@ -1,8 +1,9 @@ -html, body { +html, +body { width: 100vw; height: 100vh; margin: 0; - font-family: "Alagard"; + font-family: "Alagard", sans-serif; } body { From 5fa306d33fc2a87e3b17548f3d7bba66d2303e13 Mon Sep 17 00:00:00 2001 From: Coding_Angarita <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 9 Aug 2020 18:24:12 -0500 Subject: [PATCH 63/66] Added info about local setup, API & how to play --- README.md | 73 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 63 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index ed13696d9..db714d013 100644 --- a/README.md +++ b/README.md @@ -11,11 +11,62 @@ Used [phaser3-project-template](https://github.com/photonstorm/phaser3-project-t Loading images via JavaScript module `import` is also supported. -## [Live version](https://another-platformer.netlify.app/) +## How to play +Check a live version of the game [here](https://another-platformer.netlify.app/). + +You can navigate the menus clicking the desired options. + +The game objective is to jump through the platforms collecting all the items you can, everytime you collect an items the platforms start moving more quickly,to move, use the keyboard arrow keys ← ↑ → ↓ + +![How to play](https://i.imgur.com/AIzcJc8.png "How to play") + +## How to setup the game locally + +To run the game locally you should clone this repository, run `npm install` to install all the project dependencies and then you can run `npm start` to start a local web server running the project. + +**Be aware, the game uses an `API` to submit and receive all the leaderboard data, you should setup your own `API` to mantain this feature. The section below contains relevant information describing the `API` in detail.** + +## Api + +Setting up the API is beyond the objective of this project, however here are the needed information to use the built in [api module](https://github.com/codingAngarita/another-platformer/blob/feature/game-logic/src/classes/api.js) as is, please modify it acording to your needs. + +The API consists of an **API_URL** `https://your-leaderboard-api-url/`, an **API_KEY** `1234567890`. +that contains an endpoint `/scores/` making the final api url: `API_URL` + `API_KEY` + `/scores/`. + +The **API_URL** and **API_KEY** values should be setted up in a `.env` file in the root of the project, this `.env` file is already added to the `.gitignore` file, don't commit this file unless you don't mind the API going public. The `.env` file should look something like this: + +``` +# ./.env +API_URL=https://your-leaderboard-api-url/ +API_KEY=1234567890 +``` + +To submit a new score, the API should receive a POST request in JSON format with the following body: +```JSON +{ + "user": "New Score User", + "score": 39 +} +``` +To receive all the scores, the API should respond to a GET request to with no parameters, and return a JSON in this format: +```JSON +{ + "result": [ + { + "user": "Low score user", + "score": 9 + }, + { + "user": "High score user", + "score": 999 + } + ] +} +``` ## Requirements -[Node.js](https://nodejs.org) is required to install dependencies and run scripts via `npm`. +[npm](https://www.npmjs.com/) is required to install dependencies and run scripts via `npm`. ## Available Commands @@ -27,14 +78,6 @@ Loading images via JavaScript module `import` is also supported. | `npm run test` | Runs tests on Api methods | | `npm run linters` | Runs JS linters | -## License - -This projects uses the MIT license. - -### Assets - -All the assets used in this project were made by me and "Jeromimo" please reach out before using them. - ## Modifying the code Run `npm install` from your project directory. Then, you can start the local development @@ -46,3 +89,13 @@ and webpack will automatically recompile and reload your server (available at `h by default). Please make sure to run the linters & tests before submiting any changes. + +## License + +This projects uses the MIT license. + +### Assets + +All the assets used in this project were made by me and "Jeromimo" please reach out before using them. + + From 6e8866dfe413d8cd8d44a6ec1a779292c6c03673 Mon Sep 17 00:00:00 2001 From: Coding_Angarita <44899916+codingAngarita@users.noreply.github.com> Date: Sun, 9 Aug 2020 18:32:32 -0500 Subject: [PATCH 64/66] Added title art image to readme --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index db714d013..0c23e573b 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,10 @@ [![MIT license](https://img.shields.io/github/license/codingAngarita/another-platformer)](https://codingangarita.mit-license.org/) [![Open Source Love svg1](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/) +

+ Another platformer +

+ A Phaser 3 platformer game with ES6 support via [Babel 7](https://babeljs.io/) and [Webpack 4](https://webpack.js.org/) that includes hot-reloading for development and production-ready builds. From d5d6ad0a77307ac41ca44717979c6705d699ccec Mon Sep 17 00:00:00 2001 From: Coding_Angarita <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 10 Aug 2020 21:59:55 -0500 Subject: [PATCH 65/66] Added additional info & changed live version style --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0c23e573b..140c466ac 100644 --- a/README.md +++ b/README.md @@ -15,8 +15,10 @@ Used [phaser3-project-template](https://github.com/photonstorm/phaser3-project-t Loading images via JavaScript module `import` is also supported. +#### You can read more about the project and how I built it [here](https://www.notion.so/Another-platfomer-252734103ed24f26a87967fd79775c7d) + ## How to play -Check a live version of the game [here](https://another-platformer.netlify.app/). +#### Check a live version of the game [here](https://another-platformer.netlify.app/). You can navigate the menus clicking the desired options. From ccbaba6ebaeed49aacad262ed13ee56e2ce93c53 Mon Sep 17 00:00:00 2001 From: Coding_Angarita <44899916+codingAngarita@users.noreply.github.com> Date: Mon, 10 Aug 2020 23:36:55 -0500 Subject: [PATCH 66/66] Fixed broken badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 140c466ac..d0b875dc5 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![Netlify Status](https://api.netlify.com/api/v1/badges/71ac9d36-b299-425d-ab9d-0d74cb446f0d/deploy-status)](https://another-platformer.netlify.app/) [![MIT license](https://img.shields.io/github/license/codingAngarita/another-platformer)](https://codingangarita.mit-license.org/) -[![Open Source Love svg1](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/) +[![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.png?v=103)](https://github.com/ellerbrock/open-source-badges/)

Another platformer