add code injection script

This commit is contained in:
Matteias Collet 2020-07-01 07:26:48 +02:00
parent f8f0d45b0a
commit d78f1bf59b
15 changed files with 1097 additions and 119 deletions

View file

@ -9,16 +9,24 @@
},
"repository": "https://github.com/BitPatty/gctGenerator/gctGenerator",
"scripts": {
"dev": "vuepress dev site",
"build": "vuepress build site"
"dev": "yarn codes:inject && vuepress dev site",
"build": "yarn codes:inject && vuepress build site",
"format": "prettier --write ./site/**/*{.js,.json,.vue}",
"codes:inject": "node ./scripts/inject_codes.js && yarn format"
},
"license": "Apache-2.0",
"devDependencies": {
"vuepress": "^1.3.1",
"@vuepress/plugin-back-to-top": "^1.3.1",
"@vuepress/plugin-medium-zoom": "^1.3.1"
"@vuepress/plugin-medium-zoom": "^1.3.1",
"jsdom": "^16.2.2",
"pre-commit": "^1.2.2",
"prettier": "^2.0.5",
"vuepress": "^1.3.1"
},
"dependencies": {
"vuedraggable": "^2.23.2"
}
},
"pre-commit": [
"format"
]
}

View file

@ -1,12 +1,12 @@
import fs from 'fs';
const fs = require('fs');
const path = require('path');
const jsdom = require('jsdom');
const jsonFilePath = '../site/.vuepress/data/gameVersions.json';
const jsonFilePath = path.join(__dirname, '../site/.vuepress/data/gameVersions.json');
const codeVersions = ['GMSE01', 'GMSJ01', 'GMSP01', 'GMSJ0A'];
const parseXml = xmlString => {
const codeCollection = new DOMParser()
.parseFromString(xmlString, 'text/xml')
.getElementsByTagName('code');
const codeCollection = new jsdom.JSDOM(xmlString).window.document.getElementsByTagName('code');
const codes = [...codeCollection];
@ -25,7 +25,7 @@ const parseTextNode = (node, identifier) => node.getElementsByTagName(identifier
const codes = JSON.parse(fs.readFileSync(jsonFilePath));
for (let i = 0; i < codeVersions.length; i++) {
const xml = fs.readFileSync(`../${codeVersions[i]}.xml`);
const xml = fs.readFileSync(path.join(__dirname, `../codes/${codeVersions[i]}.xml`));
codes.find(c => c.identifier === codeVersions[i]).codes = parseXml(xml);
}

View file

@ -22,7 +22,7 @@ export default {
this.populate();
},
watch: {
codes: function() {
codes: function () {
this.populate();
},
},
@ -34,10 +34,10 @@ export default {
methods: {
toggle(code) {
code.selected = !code.selected;
this.onSelectionChanged(this.availableCodes.filter(c => c.selected));
this.onSelectionChanged(this.availableCodes.filter((c) => c.selected));
},
populate() {
this.availableCodes = this.codes.map(c => ({ ...c, selected: false }));
this.availableCodes = this.codes.map((c) => ({ ...c, selected: false }));
},
inspect(code) {
this.onInspect(code);

View file

@ -1,7 +1,5 @@
<template>
<div>
<div v-if="codes.length === 0 && !hasError">Loading...</div>
<div v-if="codes.length === 0 && hasError">Failed to load codes.</div>
<CodeInfo v-for="code in codes" :code="code" :anchor="true" />
</div>
</template>
@ -13,37 +11,16 @@ import CodeInfo from './CodeInfo';
// Data
import gameVersions from '../data/gameVersions.json';
// Util
import parseXml from './scripts/parseXml';
// Libs
import axios from 'axios';
export default {
props: {
gameVersion: { type: String },
},
mounted() {
if (localStorage.getItem('codes') != null) {
try {
const data = JSON.parse(localStorage.getItem('codes')).find(
c => c.identifier === this.gameVersion,
);
if (data) {
this.codes = data.cheats.sort((a, b) => (a.title > b.title ? 1 : -1));
console.log(this.codes);
return;
}
} catch {}
}
axios
.get(`/codes/${this.gameVersion}.xml`)
.then(response => {
const xmlData = parseXml(response.data);
this.codes = xmlData.sort((a, b) => (a.title > b.title ? 1 : -1));
})
.catch(() => (this.hasError = true));
data() {
return {
codes: gameVersions
.find((v) => v.identifier === this.gameVersion)
.codes.sort((a, b) => (a.title > b.title ? 1 : -1)),
};
},
updated() {
// Scroll to anchor
@ -58,12 +35,6 @@ export default {
}
}
},
data() {
return {
codes: [],
hasError: false,
};
},
};
</script>

View file

@ -45,7 +45,7 @@ export default {
JSON.stringify({
gameVersion: this.versionIdentifier,
format: this.format,
codes: c.map(code => ({
codes: c.map((code) => ({
title: code.title,
version: code.version,
})),
@ -54,7 +54,7 @@ export default {
} catch {}
console.log(`Preparing download for ${this.format}`);
const fileName = gameVersions.find(v => v.identifier === this.versionIdentifier).version;
const fileName = gameVersions.find((v) => v.identifier === this.versionIdentifier).version;
switch (this.format) {
case 'gct':

View file

@ -21,7 +21,7 @@ export default {
},
data() {
return {
options: downloadFormats.map(v => ({
options: downloadFormats.map((v) => ({
value: v.target,
label: v.name,
})),

View file

@ -122,9 +122,6 @@ import DownloadButton from './DownloadButton';
// Data
import gameVersions from '../data/gameVersions.json';
// Util
import parseXml from './scripts/parseXml';
export default {
data() {
return {
@ -146,8 +143,8 @@ export default {
onVersionChanged(e) {
this.selectedVersion = e;
this.selectedCheats = [];
this.codes = gameVersions.find(c => c.identifier === e).codes;
this.stageLoaderCodes = gameVersions.find(c => c.identifier === e).fastCode;
this.codes = gameVersions.find((c) => c.identifier === e).codes;
this.stageLoaderCodes = gameVersions.find((c) => c.identifier === e).fastCode;
this.inspectingCode = null;
},
onFormatChanged(e) {

View file

@ -1,6 +1,6 @@
<template>
<div :class="disabled ? 'select-wrapper disabled' : 'select-wrapper'">
<select @change="e => this.onChange(e.target.value)" autocomplete="off" :disabled="disabled">
<select @change="(e) => this.onChange(e.target.value)" autocomplete="off" :disabled="disabled">
<option v-if="placeholder != null" selected disabled>
{{ placeholder }}
</option>

View file

@ -48,7 +48,7 @@
<GroupSelectComponent
:selectedValue="level.value"
:optGroups="stageLoaderLevelOptions"
:onChange="e => onStageLoaderLevelChanged(index, e)"
:onChange="(e) => onStageLoaderLevelChanged(index, e)"
:key="index"
/>
<button @click="onLevelDeleted(index)" type="button" class="route-remove">
@ -109,7 +109,7 @@ export default {
draggable,
},
watch: {
fastCodes: function() {
fastCodes: function () {
this.updateCode();
},
},
@ -233,7 +233,7 @@ export default {
this.onChange(
generateStageLoaderCode(
this.fastCodes,
this.selectedRoute.map(v => v.value),
this.selectedRoute.map((v) => v.value),
this.levelOrderSelection,
this.postGameSelection,
this.skippableFMVsSelection,

View file

@ -47,4 +47,4 @@ export default {
.card:hover {
background-color: #e5f0eb;
}
</style>
</style>

View file

@ -19,7 +19,7 @@ export default {
},
data() {
return {
options: gameVersions.map(v => ({
options: gameVersions.map((v) => ({
value: v.identifier,
label: v.name,
})),

View file

@ -1,7 +1,7 @@
export default class CodeFormatter {
static generateGCT(codes, version) {
let code = '00D0C0DE00D0C0DE';
codes.forEach(c => (code += c.source));
codes.forEach((c) => (code += c.source));
code += 'FF00000000000000';
let rawData = new Uint8Array(code.length / 2);
@ -16,7 +16,7 @@ export default class CodeFormatter {
static generateDolphinINI(codes, version) {
let data = 'Paste the following on top of your games .ini file:\r\n[Gecko]';
codes.forEach(code => {
codes.forEach((code) => {
data += `\r\n$${code.title} (${code.date}) [${code.author}]\r\n`;
data += code.source
.match(/.{8}/g)
@ -30,7 +30,7 @@ export default class CodeFormatter {
static generateCheatManagerTXT(codes, version) {
let data = `${version}\r\nSuper Mario Sunshine`;
codes.forEach(code => {
codes.forEach((code) => {
data += `\r\n\r\n${code.title} (${code.date}) [${code.author}]\r\n`;
data += code.source
.match(/.{8}/g)
@ -53,7 +53,7 @@ export default class CodeFormatter {
a.href = url;
a.download = filename;
a.click();
setTimeout(function() {
setTimeout(function () {
window.URL.revokeObjectURL(url);
}, 500);
}

View file

@ -24,12 +24,188 @@
},
"codes": [
{
"author": "Placeholder",
"title": "Placeholder",
"description": "Placeholder",
"version": "Placeholder",
"date": "Placeholder",
"source": "0000000000000000"
"author": "Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57",
"title": "DPad Functions",
"description": "CombinationResultD-Pad leftSave Mario's positionD-Pad rightLoad Mario's positionD-Pad upReplace all dialog with a single \"!!!\" lineD-Pad downRestore dialog boxesB+D-Pad leftLock rocket nozzleB+D-Pad rightLock turbo nozzleB+D-Pad upLock hover nozzleB+D-Pad downRelease nozzle lockX+D-Pad leftNo FLUDD in secretsX+D-Pad rightFLUDD in all secretsX+D-Pad upRegrab last held objectX+D-Pad downFLUDD in completed secrets (default)]]>",
"version": "2.5",
"date": "Apr 3, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Lives",
"description": "Prevents the life counter from decreasing.",
"version": "2.0",
"date": "Feb 28, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Disable Blue Coin Flag",
"description": "Prevents the game from setting the blue coin flag, which makes them respawn after reentering the level.",
"version": "1.1",
"date": "Sep 05, 2018",
"source": ""
},
{
"author": "Psychonauter",
"title": "FMV Skips",
"description": "Allows skipping FMVs without having to watch them once first.",
"version": "1.0",
"date": "Jan 20, 2017",
"source": ""
},
{
"author": "Psychonauter",
"title": "Mute Background Music",
"description": "Mutes background music, but keeps SFX on.",
"version": "1.0",
"date": "Jan 28, 2017",
"source": ""
},
{
"author": "Psychonauter",
"title": "Remove Save Boxes",
"description": "Removes all saveboxes.",
"version": "1.0",
"date": "Oct 02, 2017",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Yoshi",
"description": "Unlocks Yoshi everywhere.",
"version": "1.0",
"date": "Feb 10, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Nozzles",
"description": "Unlocks all nozzle boxes.",
"version": "1.0",
"date": "Feb 12, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Free Pause",
"description": "Allows you to pause mid-air and during cutscenes.",
"version": "1.1",
"date": "Nov 12, 2017",
"source": ""
},
{
"author": "Noki Doki",
"title": "Enable Exit Area Everywhere",
"description": "Enables 'Exit Area' on Plaza and Airstrip.",
"version": "1.0",
"date": "Oct 30, 2017",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Shine Get Timer",
"description": "Requires the Level Select code, Fast Any% or Stage Loader to be active.]]>",
"version": "2.0",
"date": "Oct 11, 2019",
"source": ""
},
{
"author": "Psychonauter, Dan Salvato, Noki Doki",
"title": "Level Select",
"description": "]]>",
"version": "1.14",
"date": "May 8, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Fast Any%",
"description": "Loads stages in any% order, skips all save boxes, replaces all dialog with \"!!!\" (except for the Pianta 5 secret) and makes all FMVs skippable (except for the Pinna 1 cutscenes). This code is not compatible with the Level Select, Stage Loader or Stage Randomizer code.",
"version": "1.4",
"date": "Feb 16, 2018",
"source": ""
},
{
"author": "Unknown, Noki Doki",
"title": "Any Fruit Opens Yoshi Eggs",
"description": "Allows opening Yoshi eggs with a different fruit than the one depicted.",
"version": "1.0",
"date": "Aug 19, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Juice",
"description": "Prevents Yoshi from despawning by running out of juice.",
"version": "1.0",
"date": "Apr 5, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Stage Randomizer (Experimental)",
"description": "Loads stages in randomized order. This code is not compatible with the Level Select or Fast Any% code.",
"version": "1.0",
"date": "Oct 11, 2017",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Replace Episode names with their ID",
"description": "Replaces the Episode names with the episode number in the demo screen. (Useful for the stage randomizer and the stage loader.)",
"version": "1.1",
"date": "Feb 13, 2018",
"source": ""
},
{
"author": "Ralf, Psychonauter",
"title": "Shine Outfit",
"description": "Always wear shine outfit and sunglasses.",
"version": "1.0",
"date": "Oct 23, 2017",
"source": ""
},
{
"author": "Noki Doki",
"title": "Position/angle/speed display",
"description": "Shows Mario's position, angle and speed at any given time.",
"version": "1.3",
"date": "Oct 28, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Intro skip",
"description": "Removes the logos and cutscene that normally play before the title screen when loading or resetting the game.",
"version": "1.0",
"date": "Jun 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Respawn One-Time Shines",
"description": "Allows Shines obtained by cleaning graffiti, the Shine Gate or the bells to respawn.",
"version": "1.0",
"date": "Aug 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Force Plaza Events",
"description": "Forces the unlock events for Ricco, Gelato and Yoshi to happen any time the correct version of the plaza is loaded. Nozzle unlock events take precedence over Yoshi's if their conditions are met.",
"version": "1.0",
"date": "Mar 8, 2020",
"source": ""
},
{
"author": "Noki Doki",
"title": "Fix Memory Card Encoding",
"description": "Enable this if your Nintendont saves do not work on your other loader (e.g. Gecko OS on a Japanese console).",
"version": "2.0",
"date": "Jun 25, 2020",
"source": ""
}
]
},
@ -58,12 +234,180 @@
},
"codes": [
{
"author": "Placeholder",
"title": "Placeholder",
"description": "Placeholder",
"version": "Placeholder",
"date": "Placeholder",
"source": "0000000000000000"
"author": "Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57",
"title": "DPad Functions",
"description": "CombinationResultD-Pad leftSave Mario's positionD-Pad rightLoad Mario's positionD-Pad upReplace all dialog with a single \"!!!\" lineD-Pad downRestore dialog boxesB+D-Pad leftLock rocket nozzleB+D-Pad rightLock turbo nozzleB+D-Pad upLock hover nozzleB+D-Pad downRelease nozzle lockX+D-Pad leftNo FLUDD in secretsX+D-Pad rightFLUDD in all secretsX+D-Pad upRegrab last held objectX+D-Pad downFLUDD in completed secrets (default)]]>",
"version": "2.5",
"date": "Apr 3, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Lives",
"description": "Prevents the life counter from decreasing.",
"version": "2.0",
"date": "Feb 28, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Disable Blue Coin Flag",
"description": "Prevents the game from setting the blue coin flag, which makes them respawn after reentering the level.",
"version": "1.1",
"date": "Sep 05, 2018",
"source": ""
},
{
"author": "Psychonauter",
"title": "FMV Skips",
"description": "Allows skipping FMVs without having to watch them once first.",
"version": "1.0",
"date": "Jan 20, 2017",
"source": ""
},
{
"author": "Psychonauter",
"title": "Mute Background Music",
"description": "Mutes background music, but keeps SFX on.",
"version": "1.0",
"date": "Jan 28, 2017",
"source": ""
},
{
"author": "Psychonauter",
"title": "Remove Save Boxes",
"description": "Removes all saveboxes.",
"version": "1.0",
"date": "Oct 02, 2017",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Yoshi",
"description": "Unlocks Yoshi everywhere.",
"version": "1.0",
"date": "Feb 10, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Nozzles",
"description": "Unlocks all nozzle boxes.",
"version": "1.0",
"date": "Feb 12, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Free Pause",
"description": "Allows you to pause mid-air and during cutscenes.",
"version": "1.1",
"date": "Nov 12, 2017",
"source": ""
},
{
"author": "Noki Doki",
"title": "Enable Exit Area Everywhere",
"description": "Enables 'Exit Area' on Plaza and Airstrip.",
"version": "1.0",
"date": "Oct 30, 2017",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Shine Get Timer",
"description": "Requires the Level Select code, Fast Any% or Stage Loader to be active.]]>",
"version": "2.0",
"date": "Oct 11, 2019",
"source": ""
},
{
"author": "Psychonauter, Dan Salvato, Noki Doki",
"title": "Level Select",
"description": "]]>",
"version": "1.14",
"date": "May 8, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Fast Any%",
"description": "Loads stages in any% order, skips all save boxes, replaces all dialog with \"!!!\" (except for the Pianta 5 secret) and makes all FMVs skippable (except for the Pinna 1 cutscenes). This code is not compatible with the Level Select or Stage Loader code.",
"version": "1.4",
"date": "Feb 16, 2018",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Replace Episode names with their ID",
"description": "Replaces the Episode names with the episode number in the demo screen. (Useful for the stage loader.)",
"version": "1.1",
"date": "Feb 13, 2018",
"source": ""
},
{
"author": "Ralf",
"title": "Shine Outfit",
"description": "Always wear shine outfit and sunglasses.",
"version": "1.0",
"date": "Oct 23, 2017",
"source": ""
},
{
"author": "Unknown",
"title": "Any Fruit Opens Yoshi Eggs",
"description": "Allows opening Yoshi eggs with a different fruit than the one depicted.",
"version": "1.0",
"date": "Aug 19, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Juice",
"description": "Prevents Yoshi from despawning by running out of juice.",
"version": "1.0",
"date": "Apr 5, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Position/angle/speed display",
"description": "Shows Mario's position, angle and speed at any given time.",
"version": "1.3",
"date": "Oct 28, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Intro skip",
"description": "Removes the logos and cutscene that normally play before the title screen when loading or resetting the game.",
"version": "1.0",
"date": "Jun 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Respawn One-Time Shines",
"description": "Allows Shines obtained by cleaning graffiti, the Shine Gate or the bells to respawn.",
"version": "1.0",
"date": "Aug 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Force Plaza Events",
"description": "Forces the unlock events for Ricco, Gelato and Yoshi to happen any time the correct version of the plaza is loaded. Nozzle unlock events take precedence over Yoshi's if their conditions are met.",
"version": "1.0",
"date": "Mar 8, 2020",
"source": ""
},
{
"author": "Noki Doki",
"title": "Fix Memory Card Encoding",
"description": "Enable this if your Nintendont saves do not work on your other loader (e.g. Gecko OS on a Japanese console).",
"version": "2.0",
"date": "Jun 25, 2020",
"source": ""
}
]
},
@ -92,12 +436,180 @@
},
"codes": [
{
"author": "Placeholder",
"title": "Placeholder",
"description": "Placeholder",
"version": "Placeholder",
"date": "Placeholder",
"source": "0000000000000000"
"author": "Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57",
"title": "DPad Functions",
"description": "CombinationResultD-Pad leftSave Mario's positionD-Pad rightLoad Mario's positionD-Pad upReplace all dialog with a single \"!!!\" lineD-Pad downRestore dialog boxesB+D-Pad leftLock rocket nozzleB+D-Pad rightLock turbo nozzleB+D-Pad upLock hover nozzleB+D-Pad downRelease nozzle lockX+D-Pad leftNo FLUDD in secretsX+D-Pad rightFLUDD in all secretsX+D-Pad upRegrab last held objectX+D-Pad downFLUDD in completed secrets (default)]]>",
"version": "2.5",
"date": "Apr 3, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Lives",
"description": "Prevents the life counter from decreasing.",
"version": "2.0",
"date": "Feb 28, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Disable Blue Coin Flag",
"description": "Prevents the game from setting the blue coin flag, which makes them respawn after reentering the level.",
"version": "1.1",
"date": "Sep 05, 2018",
"source": ""
},
{
"author": "Psychonauter",
"title": "FMV Skips",
"description": "Allows skipping FMVs without having to watch them once first.",
"version": "1.0",
"date": "Jan 20, 2017",
"source": ""
},
{
"author": "Psychonauter",
"title": "Mute Background Music",
"description": "Mutes background music, but keeps SFX on.",
"version": "1.0",
"date": "Jan 28, 2017",
"source": ""
},
{
"author": "Psychonauter",
"title": "Remove Save Boxes",
"description": "Removes all saveboxes.",
"version": "1.0",
"date": "Oct 02, 2017",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Yoshi",
"description": "Unlocks Yoshi everywhere.",
"version": "1.0",
"date": "Feb 10, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Nozzles",
"description": "Unlocks all nozzle boxes.",
"version": "1.0",
"date": "Feb 12, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Free Pause",
"description": "Allows you to pause mid-air and during cutscenes.",
"version": "1.1",
"date": "Nov 12, 2017",
"source": ""
},
{
"author": "Noki Doki",
"title": "Enable Exit Area Everywhere",
"description": "Enables 'Exit Area' on Plaza and Airstrip.",
"version": "1.0",
"date": "Oct 30, 2017",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Shine Get Timer",
"description": "Requires the Level Select code, Fast Any% or Stage Loader to be active.]]>",
"version": "2.0",
"date": "Oct 11, 2019",
"source": ""
},
{
"author": "Psychonauter, Dan Salvato, ParadoxKarl, Noki Doki",
"title": "Level Select",
"description": "]]>",
"version": "1.14",
"date": "May 8, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Fast Any%",
"description": "Loads stages in any% order, skips all save boxes, replaces all dialog with \"!!!\" (except for the Pianta 5 secret) and makes all FMVs skippable (except for the Pinna 1 cutscenes). This code is not compatible with the Level Select or Stage Loader code.",
"version": "1.4",
"date": "Feb 16, 2018",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Replace Episode names with their ID",
"description": "Replaces the Episode names with the episode number in the demo screen. (Useful for the stage loader.)",
"version": "1.1",
"date": "Feb 13, 2018",
"source": ""
},
{
"author": "Ralf, Psychonauter",
"title": "Shine Outfit",
"description": "Always wear shine outfit and sunglasses.",
"version": "1.0",
"date": "Oct 23, 2017",
"source": ""
},
{
"author": "Unknown, Noki Doki",
"title": "Any Fruit Opens Yoshi Eggs",
"description": "Allows opening Yoshi eggs with a different fruit than the one depicted.",
"version": "1.0",
"date": "Aug 19, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Juice",
"description": "Prevents Yoshi from despawning by running out of juice.",
"version": "1.0",
"date": "Apr 5, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Position/angle/speed display",
"description": "Shows Mario's position, angle and speed at any given time.",
"version": "1.3",
"date": "Oct 28, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Intro skip",
"description": "Removes the logos and cutscene that normally play before the title screen when loading or resetting the game.",
"version": "1.0",
"date": "Jun 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Respawn One-Time Shines",
"description": "Allows Shines obtained by cleaning graffiti, the Shine Gate or the bells to respawn.",
"version": "1.0",
"date": "Aug 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Force Plaza Events",
"description": "Forces the unlock events for Ricco, Gelato and Yoshi to happen any time the correct version of the plaza is loaded. Nozzle unlock events take precedence over Yoshi's if their conditions are met.",
"version": "1.0",
"date": "Mar 8, 2020",
"source": ""
},
{
"author": "Noki Doki",
"title": "Fix Memory Card Encoding",
"description": "Enable this if your Nintendont saves do not work on your other loader (e.g. Gecko OS on a non-Japanese console).",
"version": "2.0",
"date": "Jun 25, 2020",
"source": ""
}
]
},
@ -126,12 +638,180 @@
},
"codes": [
{
"author": "Placeholder",
"title": "Placeholder",
"description": "Placeholder",
"version": "Placeholder",
"date": "Placeholder",
"source": "0000000000000000"
"author": "Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57",
"title": "DPad Functions",
"description": "CombinationResultD-Pad leftSave Mario's positionD-Pad rightLoad Mario's positionD-Pad upReplace all dialog with a single \"!!!\" lineD-Pad downRestore dialog boxesB+D-Pad leftLock rocket nozzleB+D-Pad rightLock turbo nozzleB+D-Pad upLock hover nozzleB+D-Pad downRelease nozzle lockX+D-Pad leftNo FLUDD in secretsX+D-Pad rightFLUDD in all secretsX+D-Pad upRegrab last held objectX+D-Pad downFLUDD in completed secrets (default)]]>",
"version": "2.5",
"date": "Apr 3, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Lives",
"description": "Prevents the life counter from decreasing.",
"version": "2.0",
"date": "Feb 28, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Disable Blue Coin Flag",
"description": "Prevents the game from setting the blue coin flag, which makes them respawn after reentering the level.",
"version": "1.1",
"date": "Sep 05, 2018",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "FMV Skips",
"description": "Allows skipping FMVs without having to watch them once first.",
"version": "1.0",
"date": "Jan 17, 2018",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Mute Background Music",
"description": "Mutes background music, but keeps SFX on.",
"version": "1.0",
"date": "Jan 17, 2018",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Remove Save Boxes",
"description": "Removes all saveboxes.",
"version": "1.0",
"date": "Jan 18, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Yoshi",
"description": "Unlocks Yoshi everywhere.",
"version": "1.0",
"date": "Feb 10, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Unlock Nozzles",
"description": "Unlocks all nozzle boxes.",
"version": "1.0",
"date": "Feb 12, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Free Pause",
"description": "Allows you to pause mid-air and during cutscenes.",
"version": "1.1",
"date": "Jan 17, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Enable Exit Area Everywhere",
"description": "Enables 'Exit Area' on Plaza and Airstrip.",
"version": "1.0",
"date": "Jan 17, 2018",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Shine Get Timer",
"description": "Requires the Level Select code, Fast Any% or Stage Loader to be active.]]>",
"version": "2.0",
"date": "Oct 11, 2019",
"source": ""
},
{
"author": "Psychonauter, Dan Salvato, ParadoxKarl, Noki Doki",
"title": "Level Select",
"description": "]]>",
"version": "1.14",
"date": "May 8, 2020",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Fast Any%",
"description": "Loads stages in any% order, skips all save boxes, replaces all dialog with \"!!!\" (except for the Pianta 5 secret) and makes all FMVs skippable (except for the Pinna 1 cutscenes). This code is not compatible with the Level Select or Stage Loader code.",
"version": "1.4",
"date": "Feb 16, 2018",
"source": ""
},
{
"author": "Psychonauter, Noki Doki",
"title": "Replace Episode names with their ID",
"description": "Replaces the Episode names with the episode number in the demo screen. (Useful for the stage loader.)",
"version": "1.1",
"date": "Feb 13, 2018",
"source": ""
},
{
"author": "Ralf, Noki Doki",
"title": "Shine Outfit",
"description": "Always wear shine outfit and sunglasses.",
"version": "1.0",
"date": "Jan 17, 2018",
"source": ""
},
{
"author": "Unknown, Noki Doki",
"title": "Any Fruit Opens Yoshi Eggs",
"description": "Allows opening Yoshi eggs with a different fruit than the one depicted.",
"version": "1.0",
"date": "Aug 19, 2018",
"source": ""
},
{
"author": "Noki Doki",
"title": "Infinite Juice",
"description": "Prevents Yoshi from despawning by running out of juice.",
"version": "1.0",
"date": "Apr 5, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Position/angle/speed display",
"description": "Shows Mario's position, angle and speed at any given time.",
"version": "1.3",
"date": "Oct 28, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Intro skip",
"description": "Removes the logos and cutscene that normally play before the title screen when loading or resetting the game.",
"version": "1.0",
"date": "Jun 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Respawn One-Time Shines",
"description": "Allows Shines obtained by cleaning graffiti, the Shine Gate or the bells to respawn.",
"version": "1.0",
"date": "Aug 19, 2019",
"source": ""
},
{
"author": "Noki Doki",
"title": "Force Plaza Events",
"description": "Forces the unlock events for Ricco, Gelato and Yoshi to happen any time the correct version of the plaza is loaded. Nozzle unlock events take precedence over Yoshi's if their conditions are met.",
"version": "1.0",
"date": "Mar 8, 2020",
"source": ""
},
{
"author": "Noki Doki",
"title": "Fix Memory Card Encoding",
"description": "Enable this if your Nintendont saves do not work on your other loader (e.g. Gecko OS on a non-Japanese console).",
"version": "2.0",
"date": "Jun 25, 2020",
"source": ""
}
]
}

View file

@ -3,7 +3,7 @@ _paq.push(['setRequestMethod', 'POST']);
_paq.push(['disableCookies']);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
(function () {
var e = 'https://dna.zint.ch/';
_paq.push(['setTrackerUrl', e + 'pdna']);
_paq.push(['setSiteId', '2']);

376
yarn.lock
View file

@ -1279,6 +1279,11 @@
resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
abab@^2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a"
integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==
abbrev@1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
@ -1292,11 +1297,29 @@ accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.7:
mime-types "~2.1.24"
negotiator "0.6.2"
acorn-globals@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45"
integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==
dependencies:
acorn "^7.1.1"
acorn-walk "^7.1.1"
acorn-walk@^7.1.1:
version "7.2.0"
resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc"
integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==
acorn@^6.4.1:
version "6.4.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
acorn@^7.1.1:
version "7.3.1"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd"
integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==
agentkeepalive@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-2.2.0.tgz#c5d1bd4b129008f1163f236f86e5faea2026e2ef"
@ -1568,13 +1591,6 @@ aws4@^1.8.0:
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2"
integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==
axios@^0.19.2:
version "0.19.2"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.2.tgz#3ea36c5d8818d0d5f8a8a97a6d36b86cdc00cb27"
integrity sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==
dependencies:
follow-redirects "1.5.10"
babel-loader@^8.0.4:
version "8.1.0"
resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.1.0.tgz#c611d5112bd5209abe8b9fa84c3e4da25275f1c3"
@ -1753,6 +1769,11 @@ brorand@^1.0.1:
resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=
browser-process-hrtime@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626"
integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==
browserify-aes@^1.0.0, browserify-aes@^1.0.4:
version "1.2.0"
resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
@ -2249,7 +2270,7 @@ concat-map@0.0.1:
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
concat-stream@^1.5.0:
concat-stream@^1.4.7, concat-stream@^1.5.0:
version "1.6.2"
resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
@ -2421,6 +2442,15 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
safe-buffer "^5.0.1"
sha.js "^2.4.8"
cross-spawn@^5.0.1:
version "5.1.0"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=
dependencies:
lru-cache "^4.0.1"
shebang-command "^1.2.0"
which "^1.2.9"
cross-spawn@^6.0.0, cross-spawn@^6.0.5:
version "6.0.5"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
@ -2632,6 +2662,23 @@ csso@^4.0.2:
dependencies:
css-tree "1.0.0-alpha.39"
cssom@^0.4.4:
version "0.4.4"
resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10"
integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==
cssom@~0.3.6:
version "0.3.8"
resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a"
integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==
cssstyle@^2.2.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852"
integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==
dependencies:
cssom "~0.3.6"
cyclist@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9"
@ -2644,6 +2691,15 @@ dashdash@^1.12.0:
dependencies:
assert-plus "^1.0.0"
data-urls@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b"
integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==
dependencies:
abab "^2.0.3"
whatwg-mimetype "^2.3.0"
whatwg-url "^8.0.0"
de-indent@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d"
@ -2656,13 +2712,6 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.9:
dependencies:
ms "2.0.0"
debug@=3.1.0, debug@~3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
dependencies:
ms "2.0.0"
debug@^3.1.1, debug@^3.2.5:
version "3.2.6"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
@ -2677,11 +2726,23 @@ debug@^4.1.0, debug@^4.1.1:
dependencies:
ms "^2.1.1"
debug@~3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
dependencies:
ms "2.0.0"
decamelize@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
decimal.js@^10.2.0:
version "10.2.0"
resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.0.tgz#39466113a9e036111d02f82489b5fd6b0b5ed231"
integrity sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw==
decode-uri-component@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
@ -2711,6 +2772,11 @@ deep-extend@^0.6.0:
resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
deep-is@~0.1.3:
version "0.1.3"
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
deepmerge@^1.5.2:
version "1.5.2"
resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-1.5.2.tgz#10499d868844cdad4fee0842df8c7f6f0c95a753"
@ -2893,6 +2959,13 @@ domelementtype@^2.0.1:
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d"
integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==
domexception@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304"
integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==
dependencies:
webidl-conversions "^5.0.0"
domhandler@^2.3.0:
version "2.4.2"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803"
@ -3098,6 +3171,18 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
escodegen@^1.14.1:
version "1.14.3"
resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503"
integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==
dependencies:
esprima "^4.0.1"
estraverse "^4.2.0"
esutils "^2.0.2"
optionator "^0.8.1"
optionalDependencies:
source-map "~0.6.1"
eslint-scope@^4.0.3:
version "4.0.3"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848"
@ -3106,7 +3191,7 @@ eslint-scope@^4.0.3:
esrecurse "^4.1.0"
estraverse "^4.1.1"
esprima@^4.0.0:
esprima@^4.0.0, esprima@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
@ -3118,7 +3203,7 @@ esrecurse@^4.1.0:
dependencies:
estraverse "^4.1.0"
estraverse@^4.1.0, estraverse@^4.1.1:
estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
@ -3291,6 +3376,11 @@ fast-json-stable-stringify@^2.0.0:
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
fast-levenshtein@~2.0.6:
version "2.0.6"
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
faye-websocket@^0.10.0:
version "0.10.0"
resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4"
@ -3384,13 +3474,6 @@ flush-write-stream@^1.0.0:
inherits "^2.0.3"
readable-stream "^2.3.6"
follow-redirects@1.5.10:
version "1.5.10"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a"
integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==
dependencies:
debug "=3.1.0"
follow-redirects@^1.0.0:
version "1.12.1"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.12.1.tgz#de54a6205311b93d60398ebc01cf7015682312b6"
@ -3808,6 +3891,13 @@ html-comment-regex@^1.1.0:
resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7"
integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==
html-encoding-sniffer@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3"
integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==
dependencies:
whatwg-encoding "^1.0.5"
html-entities@^1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44"
@ -4306,6 +4396,11 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4:
dependencies:
isobject "^3.0.1"
is-potential-custom-element-name@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397"
integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c=
is-regex@^1.0.4, is-regex@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff"
@ -4417,6 +4512,38 @@ jsbn@~0.1.0:
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM=
jsdom@^16.2.2:
version "16.2.2"
resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.2.2.tgz#76f2f7541646beb46a938f5dc476b88705bedf2b"
integrity sha512-pDFQbcYtKBHxRaP55zGXCJWgFHkDAYbKcsXEK/3Icu9nKYZkutUXfLBwbD+09XDutkYSHcgfQLZ0qvpAAm9mvg==
dependencies:
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.0.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"
jsesc@^2.5.1:
version "2.5.2"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
@ -4556,6 +4683,14 @@ levenary@^1.1.1:
dependencies:
leven "^3.1.0"
levn@~0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=
dependencies:
prelude-ls "~1.1.2"
type-check "~0.3.2"
linkify-it@^2.0.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-2.2.0.tgz#e3b54697e78bf915c70a38acd78fd09e0058b1cf"
@ -4625,6 +4760,11 @@ lodash.memoize@^4.1.2:
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
lodash.sortby@^4.7.0:
version "4.7.0"
resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=
lodash.template@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab"
@ -4677,7 +4817,7 @@ lowercase-keys@^2.0.0:
resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==
lru-cache@^4.1.2:
lru-cache@^4.0.1, lru-cache@^4.1.2:
version "4.1.5"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd"
integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==
@ -5148,6 +5288,11 @@ num2fraction@^1.2.2:
resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede"
integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=
nwsapi@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7"
integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==
oauth-sign@~0.9.0:
version "0.9.0"
resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
@ -5271,6 +5416,18 @@ optimize-css-assets-webpack-plugin@^5.0.1:
cssnano "^4.1.10"
last-call-webpack-plugin "^3.0.0"
optionator@^0.8.1:
version "0.8.3"
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495"
integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==
dependencies:
deep-is "~0.1.3"
fast-levenshtein "~2.0.6"
levn "~0.3.0"
prelude-ls "~1.1.2"
type-check "~0.3.2"
word-wrap "~1.2.3"
original@^1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f"
@ -5283,6 +5440,11 @@ os-browserify@^0.3.0:
resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=
os-shim@^0.1.2:
version "0.1.3"
resolved "https://registry.yarnpkg.com/os-shim/-/os-shim-0.1.3.tgz#6b62c3791cf7909ea35ed46e17658bb417cb3917"
integrity sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=
p-cancelable@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc"
@ -5375,6 +5537,11 @@ parse-json@^4.0.0:
error-ex "^1.3.1"
json-parse-better-errors "^1.0.1"
parse5@5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178"
integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==
parseurl@~1.3.2, parseurl@~1.3.3:
version "1.3.3"
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
@ -5842,6 +6009,20 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.2
source-map "^0.6.1"
supports-color "^6.1.0"
pre-commit@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/pre-commit/-/pre-commit-1.2.2.tgz#dbcee0ee9de7235e57f79c56d7ce94641a69eec6"
integrity sha1-287g7p3nI15X95xW186UZBpp7sY=
dependencies:
cross-spawn "^5.0.1"
spawn-sync "^1.0.15"
which "1.2.x"
prelude-ls@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
prepend-http@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
@ -5852,6 +6033,11 @@ prettier@^1.18.2:
resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb"
integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==
prettier@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4"
integrity sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg==
pretty-error@^2.0.2:
version "2.1.1"
resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3"
@ -6208,7 +6394,23 @@ repeat-string@^1.6.1:
resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
request@^2.87.0:
request-promise-core@1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9"
integrity sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==
dependencies:
lodash "^4.17.15"
request-promise-native@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.8.tgz#a455b960b826e44e2bf8999af64dff2bfe58cb36"
integrity sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==
dependencies:
request-promise-core "1.1.3"
stealthy-require "^1.1.1"
tough-cookie "^2.3.3"
request@^2.87.0, request@^2.88.2:
version "2.88.2"
resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
@ -6349,6 +6551,13 @@ sax@~1.2.4:
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
saxes@^5.0.0:
version "5.0.1"
resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d"
integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==
dependencies:
xmlchars "^2.2.0"
schema-utils@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770"
@ -6657,6 +6866,14 @@ source-map@^0.7.3:
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
spawn-sync@^1.0.15:
version "1.0.15"
resolved "https://registry.yarnpkg.com/spawn-sync/-/spawn-sync-1.0.15.tgz#b00799557eb7fb0c8376c29d44e8a1ea67e57476"
integrity sha1-sAeZVX63+wyDdsKdROih6mfldHY=
dependencies:
concat-stream "^1.4.7"
os-shim "^0.1.2"
spdy-transport@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31"
@ -6744,6 +6961,11 @@ std-env@^2.2.1:
dependencies:
ci-info "^1.6.0"
stealthy-require@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b"
integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=
stream-browserify@^2.0.1:
version "2.0.2"
resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b"
@ -6947,6 +7169,11 @@ svgo@^1.0.0:
unquote "~1.1.1"
util.promisify "~1.0.0"
symbol-tree@^3.2.4:
version "3.2.4"
resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"
integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
tapable@^1.0.0, tapable@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2"
@ -7088,7 +7315,7 @@ toposort@^1.0.0:
resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029"
integrity sha1-LmhELZ9k7HILjMieZEOsbKqVACk=
tough-cookie@~2.5.0:
tough-cookie@^2.3.3, tough-cookie@~2.5.0:
version "2.5.0"
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
@ -7096,6 +7323,22 @@ tough-cookie@~2.5.0:
psl "^1.1.28"
punycode "^2.1.1"
tough-cookie@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2"
integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==
dependencies:
ip-regex "^2.1.0"
psl "^1.1.28"
punycode "^2.1.1"
tr46@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.0.2.tgz#03273586def1595ae08fedb38d7733cee91d2479"
integrity sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==
dependencies:
punycode "^2.1.1"
tslib@^1.9.0:
version "1.13.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043"
@ -7118,6 +7361,13 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0:
resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
type-check@~0.3.2:
version "0.3.2"
resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=
dependencies:
prelude-ls "~1.1.2"
type-fest@^0.11.0:
version "0.11.0"
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1"
@ -7509,6 +7759,20 @@ vuepress@^1.3.1:
opencollective-postinstall "^2.0.2"
update-notifier "^4.0.0"
w3c-hr-time@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"
integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==
dependencies:
browser-process-hrtime "^1.0.0"
w3c-xmlserializer@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a"
integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==
dependencies:
xml-name-validator "^3.0.0"
watchpack-chokidar2@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz#9948a1866cbbd6cb824dea13a7ed691f6c8ddff0"
@ -7534,6 +7798,16 @@ wbuf@^1.1.0, wbuf@^1.7.3:
dependencies:
minimalistic-assert "^1.0.0"
webidl-conversions@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff"
integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==
webidl-conversions@^6.0.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514"
integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==
webpack-chain@^4.9.0:
version "4.12.1"
resolved "https://registry.yarnpkg.com/webpack-chain/-/webpack-chain-4.12.1.tgz#6c8439bbb2ab550952d60e1ea9319141906c02a6"
@ -7687,6 +7961,27 @@ websocket-extensions@>=0.1.1:
resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42"
integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==
whatwg-encoding@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"
integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==
dependencies:
iconv-lite "0.4.24"
whatwg-mimetype@^2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf"
integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==
whatwg-url@^8.0.0:
version "8.1.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.1.0.tgz#c628acdcf45b82274ce7281ee31dd3c839791771"
integrity sha512-vEIkwNi9Hqt4TV9RdnaBPNt+E2Sgmo3gePebCRgZ1R7g6d23+53zCTnuB0amKI4AXq6VM8jj2DUAa0S1vjJxkw==
dependencies:
lodash.sortby "^4.7.0"
tr46 "^2.0.2"
webidl-conversions "^5.0.0"
when@~3.6.x:
version "3.6.4"
resolved "https://registry.yarnpkg.com/when/-/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e"
@ -7697,6 +7992,13 @@ which-module@^2.0.0:
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
which@1.2.x:
version "1.2.14"
resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5"
integrity sha1-mofEN48D6CfOyvGs31bHNsAcFOU=
dependencies:
isexe "^2.0.0"
which@^1.2.9:
version "1.3.1"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
@ -7711,6 +8013,11 @@ widest-line@^3.1.0:
dependencies:
string-width "^4.0.0"
word-wrap@~1.2.3:
version "1.2.3"
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
worker-farm@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8"
@ -7749,11 +8056,26 @@ ws@^6.2.1:
dependencies:
async-limiter "~1.0.0"
ws@^7.2.3:
version "7.3.0"
resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.0.tgz#4b2f7f219b3d3737bc1a2fbf145d825b94d38ffd"
integrity sha512-iFtXzngZVXPGgpTlP1rBqsUK82p9tKqsWRPg5L56egiljujJT3vGAYnHANvFxBieXrTFavhzhxW52jnaWV+w2w==
xdg-basedir@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13"
integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==
xml-name-validator@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a"
integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==
xmlchars@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb"
integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==
xtend@^4.0.0, xtend@~4.0.1:
version "4.0.2"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"