mirror of
https://github.com/DaanVandenBosch/phantasmal-world.git
synced 2025-04-05 07:18:29 +08:00
Added script for downloading ephinea drop table in TSV format. Added HuntOptimizer component and error boundary.
This commit is contained in:
parent
f31570d5f5
commit
f324886240
11
package.json
11
package.json
@ -6,7 +6,6 @@
|
|||||||
"@blueprintjs/core": "^3.15.1",
|
"@blueprintjs/core": "^3.15.1",
|
||||||
"@types/jest": "24.0.13",
|
"@types/jest": "24.0.13",
|
||||||
"@types/lodash": "^4.14.132",
|
"@types/lodash": "^4.14.132",
|
||||||
"@types/node": "12.0.2",
|
|
||||||
"@types/react": "16.8.18",
|
"@types/react": "16.8.18",
|
||||||
"@types/react-dom": "16.8.4",
|
"@types/react-dom": "16.8.4",
|
||||||
"@types/text-encoding": "^0.0.35",
|
"@types/text-encoding": "^0.0.35",
|
||||||
@ -25,7 +24,8 @@
|
|||||||
"start": "react-scripts start",
|
"start": "react-scripts start",
|
||||||
"build": "react-scripts build",
|
"build": "react-scripts build",
|
||||||
"test": "react-scripts test",
|
"test": "react-scripts test",
|
||||||
"eject": "react-scripts eject"
|
"eject": "react-scripts eject",
|
||||||
|
"updateDropsEphinea": "ts-node --project=tsconfig-scripts.json src/static/updateDropsEphinea.ts"
|
||||||
},
|
},
|
||||||
"eslintConfig": {
|
"eslintConfig": {
|
||||||
"extends": "react-app"
|
"extends": "react-app"
|
||||||
@ -41,5 +41,12 @@
|
|||||||
"last 1 firefox version",
|
"last 1 firefox version",
|
||||||
"last 1 safari version"
|
"last 1 safari version"
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/cheerio": "^0.22.0",
|
||||||
|
"@types/node": "^12.0.3",
|
||||||
|
"cheerio": "^0.22.0",
|
||||||
|
"isomorphic-fetch": "^2.2.1",
|
||||||
|
"ts-node": "^8.2.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
6711
public/drops.ephinea.tsv
Normal file
6711
public/drops.ephinea.tsv
Normal file
File diff suppressed because it is too large
Load Diff
@ -40,6 +40,16 @@ interface PickEntityResult {
|
|||||||
manipulating: boolean;
|
manipulating: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let renderer: Renderer | undefined;
|
||||||
|
|
||||||
|
export function getRenderer(): Renderer {
|
||||||
|
if (!renderer) {
|
||||||
|
renderer = new Renderer();
|
||||||
|
}
|
||||||
|
|
||||||
|
return renderer;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders a quest area or an NJ/XJ model.
|
* Renders a quest area or an NJ/XJ model.
|
||||||
*/
|
*/
|
||||||
|
115
src/static/updateDropsEphinea.ts
Normal file
115
src/static/updateDropsEphinea.ts
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
import 'isomorphic-fetch';
|
||||||
|
import cheerio from 'cheerio';
|
||||||
|
import fs from 'fs';
|
||||||
|
|
||||||
|
const SECTION_IDS = [
|
||||||
|
'Viridia', 'Greenill', 'Skyly', 'Bluefull', 'Purplenum', 'Pinkal', 'Redria', 'Oran', 'Yellowboze', 'Whitill',
|
||||||
|
];
|
||||||
|
|
||||||
|
async function update() {
|
||||||
|
const csv =
|
||||||
|
[
|
||||||
|
['mode', 'episode', 'section_id', 'monster', 'item', 'drop_rate', 'rare_rate'],
|
||||||
|
...await download('normal'),
|
||||||
|
...await download('hard'),
|
||||||
|
...await download('vhard', 'very-hard'),
|
||||||
|
...await download('ultimate')
|
||||||
|
]
|
||||||
|
.map(r => r.join('\t'))
|
||||||
|
.join('\n')
|
||||||
|
|
||||||
|
return fs.promises.writeFile('./public/drops.ephinea.tsv', csv);
|
||||||
|
}
|
||||||
|
|
||||||
|
async function download(mode: string, modeUrl: string = mode) {
|
||||||
|
const response = await fetch(`https://ephinea.pioneer2.net/drop-charts/${modeUrl}/`);
|
||||||
|
const body = await response.text();
|
||||||
|
const $ = cheerio.load(body);
|
||||||
|
|
||||||
|
let episode = 1;
|
||||||
|
const data: any[][] = [];
|
||||||
|
|
||||||
|
$('table').each((tableI, table) => {
|
||||||
|
const isBox = tableI >= 3;
|
||||||
|
|
||||||
|
$('tr', table).each((_, tr) => {
|
||||||
|
const monsterText = $(tr.firstChild).text();
|
||||||
|
|
||||||
|
if (monsterText.trim() === '') {
|
||||||
|
return;
|
||||||
|
} else if (monsterText.startsWith('EPISODE ')) {
|
||||||
|
episode = parseInt(monsterText.slice(-1), 10);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
const monster = monsterText.split('/')[mode === 'ultimate' ? 1 : 0] || monsterText;
|
||||||
|
|
||||||
|
$('td', tr).each((tdI, td) => {
|
||||||
|
if (tdI === 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const sectionId = SECTION_IDS[tdI - 1];
|
||||||
|
|
||||||
|
if (isBox) {
|
||||||
|
$('font font', td).each((_, font) => {
|
||||||
|
const item = $('b', font).text();
|
||||||
|
const rareRateNum = parseFloat($('sup', font).text());
|
||||||
|
const rareRateDenom = parseFloat($('sub', font).text());
|
||||||
|
|
||||||
|
data.push(
|
||||||
|
[
|
||||||
|
mode,
|
||||||
|
episode,
|
||||||
|
sectionId,
|
||||||
|
`${monster} Box`,
|
||||||
|
item,
|
||||||
|
1,
|
||||||
|
rareRateNum / rareRateDenom
|
||||||
|
]
|
||||||
|
);
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
const item = $('font b', td).text();
|
||||||
|
|
||||||
|
if (item.trim() === '') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
const title = $('font abbr', td).attr('title').replace('\r', '');
|
||||||
|
const [, dropRateNum, dropRateDenom] =
|
||||||
|
/Drop Rate: (\d+)\/(\d+(\.\d+)?)/g.exec(title)!.map(parseFloat);
|
||||||
|
const [, rareRateNum, rareRateDenom] =
|
||||||
|
/Rare Rate: (\d+)\/(\d+(\.\d+)?)/g.exec(title)!.map(parseFloat);
|
||||||
|
|
||||||
|
data.push(
|
||||||
|
[
|
||||||
|
mode,
|
||||||
|
episode,
|
||||||
|
sectionId,
|
||||||
|
monster,
|
||||||
|
item,
|
||||||
|
dropRateNum / dropRateDenom,
|
||||||
|
rareRateNum / rareRateDenom,
|
||||||
|
]
|
||||||
|
);
|
||||||
|
} catch (e) {
|
||||||
|
console.error(`Error while processing item ${item} of ${monster} in episode ${episode} ${mode}.`, e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
console.error(`Error while processing ${monsterText} in episode ${episode} ${mode}.`, e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
update().catch((e) => {
|
||||||
|
console.error(e);
|
||||||
|
});
|
@ -28,3 +28,14 @@ div.ApplicationComponent .ApplicationComponent-heading {
|
|||||||
.ApplicationComponent-main>* {
|
.ApplicationComponent-main>* {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.ApplicationComponent-error {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ApplicationComponent-error > div {
|
||||||
|
width: 300px;
|
||||||
|
margin-top: 30px;
|
||||||
|
}
|
@ -1,9 +1,10 @@
|
|||||||
import { Classes, Navbar, NavbarGroup, NavbarHeading, Button } from '@blueprintjs/core';
|
import { Classes, Navbar, NavbarGroup, NavbarHeading, Button, Callout, Intent } from '@blueprintjs/core';
|
||||||
import { observer } from 'mobx-react';
|
import { observer } from 'mobx-react';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import './ApplicationComponent.css';
|
|
||||||
import { QuestEditorComponent } from './quest-editor/QuestEditorComponent';
|
import { QuestEditorComponent } from './quest-editor/QuestEditorComponent';
|
||||||
import { observable, action } from 'mobx';
|
import { observable, action } from 'mobx';
|
||||||
|
import { HuntOptimizerComponent } from './hunt-optimizer/HuntOptimizerComponent';
|
||||||
|
import './ApplicationComponent.css';
|
||||||
|
|
||||||
@observer
|
@observer
|
||||||
export class ApplicationComponent extends React.Component {
|
export class ApplicationComponent extends React.Component {
|
||||||
@ -16,6 +17,9 @@ export class ApplicationComponent extends React.Component {
|
|||||||
case 'quest-editor':
|
case 'quest-editor':
|
||||||
toolComponent = <QuestEditorComponent />;
|
toolComponent = <QuestEditorComponent />;
|
||||||
break;
|
break;
|
||||||
|
case 'hunt-optimizer':
|
||||||
|
toolComponent = <HuntOptimizerComponent />;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@ -28,13 +32,20 @@ export class ApplicationComponent extends React.Component {
|
|||||||
<Button
|
<Button
|
||||||
text="Quest Editor (Beta)"
|
text="Quest Editor (Beta)"
|
||||||
minimal={true}
|
minimal={true}
|
||||||
|
active={this.tool === 'quest-editor'}
|
||||||
onClick={() => this.setTool('quest-editor')}
|
onClick={() => this.setTool('quest-editor')}
|
||||||
/>
|
/>
|
||||||
|
<Button
|
||||||
|
text="Hunt Optimizer"
|
||||||
|
minimal={true}
|
||||||
|
active={this.tool === 'hunt-optimizer'}
|
||||||
|
onClick={() => this.setTool('hunt-optimizer')}
|
||||||
|
/>
|
||||||
</NavbarGroup>
|
</NavbarGroup>
|
||||||
</Navbar>
|
</Navbar>
|
||||||
<div className="ApplicationComponent-main">
|
<ErrorBoundary>
|
||||||
{toolComponent}
|
{toolComponent}
|
||||||
</div>
|
</ErrorBoundary>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -43,3 +54,27 @@ export class ApplicationComponent extends React.Component {
|
|||||||
this.tool = tool;
|
this.tool = tool;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class ErrorBoundary extends React.Component {
|
||||||
|
state = {
|
||||||
|
hasError: false
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<div className="ApplicationComponent-main" >
|
||||||
|
{this.state.hasError ? (
|
||||||
|
<div className="ApplicationComponent-error">
|
||||||
|
<div>
|
||||||
|
<Callout intent={Intent.DANGER} title="Something went wrong." />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
) : this.props.children}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
static getDerivedStateFromError(_error: Error) {
|
||||||
|
return { hasError: true };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
0
src/ui/hunt-optimizer/HuntOptimizerComponent.css
Normal file
0
src/ui/hunt-optimizer/HuntOptimizerComponent.css
Normal file
10
src/ui/hunt-optimizer/HuntOptimizerComponent.tsx
Normal file
10
src/ui/hunt-optimizer/HuntOptimizerComponent.tsx
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
import React from "react";
|
||||||
|
import './HuntOptimizerComponent.css';
|
||||||
|
|
||||||
|
export class HuntOptimizerComponent extends React.Component {
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<div></div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Object3D } from 'three';
|
import { Object3D } from 'three';
|
||||||
import { Area, Quest } from '../../domain';
|
import { Area, Quest } from '../../domain';
|
||||||
import { Renderer } from '../../rendering/Renderer';
|
import { getRenderer } from '../../rendering/Renderer';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
quest?: Quest;
|
quest?: Quest;
|
||||||
@ -10,7 +10,7 @@ interface Props {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export class RendererComponent extends React.Component<Props> {
|
export class RendererComponent extends React.Component<Props> {
|
||||||
private renderer = new Renderer();
|
private renderer = getRenderer();
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
return <div style={{ overflow: 'hidden' }} ref={this.modifyDom} />;
|
return <div style={{ overflow: 'hidden' }} ref={this.modifyDom} />;
|
||||||
@ -36,10 +36,12 @@ export class RendererComponent extends React.Component<Props> {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private modifyDom = (div: HTMLDivElement) => {
|
private modifyDom = (div: HTMLDivElement | null) => {
|
||||||
|
if (div) {
|
||||||
this.renderer.setSize(div.clientWidth, div.clientHeight);
|
this.renderer.setSize(div.clientWidth, div.clientHeight);
|
||||||
div.appendChild(this.renderer.domElement);
|
div.appendChild(this.renderer.domElement);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private onResize = () => {
|
private onResize = () => {
|
||||||
const wrapperDiv = this.renderer.domElement.parentNode as HTMLDivElement;
|
const wrapperDiv = this.renderer.domElement.parentNode as HTMLDivElement;
|
||||||
|
25
tsconfig-scripts.json
Normal file
25
tsconfig-scripts.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"target": "es5",
|
||||||
|
"lib": [
|
||||||
|
"dom",
|
||||||
|
"dom.iterable",
|
||||||
|
"esnext"
|
||||||
|
],
|
||||||
|
"allowJs": true,
|
||||||
|
"skipLibCheck": true,
|
||||||
|
"esModuleInterop": true,
|
||||||
|
"allowSyntheticDefaultImports": true,
|
||||||
|
"strict": true,
|
||||||
|
"forceConsistentCasingInFileNames": true,
|
||||||
|
"module": "commonjs",
|
||||||
|
"moduleResolution": "node",
|
||||||
|
"resolveJsonModule": true,
|
||||||
|
"noEmit": true,
|
||||||
|
"experimentalDecorators": true,
|
||||||
|
"downlevelIteration": true
|
||||||
|
},
|
||||||
|
"include": [
|
||||||
|
"src"
|
||||||
|
]
|
||||||
|
}
|
138
yarn.lock
138
yarn.lock
@ -1264,6 +1264,13 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@babel/types" "^7.3.0"
|
"@babel/types" "^7.3.0"
|
||||||
|
|
||||||
|
"@types/cheerio@^0.22.0":
|
||||||
|
version "0.22.11"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.11.tgz#61c0facf9636d14ba5f77fc65ed8913aa845d717"
|
||||||
|
integrity sha512-x0X3kPbholdJZng9wDMhb2swvUi3UYRNAuWAmIPIWlfgAJZp//cql/qblE7181Mg7SjWVwq6ldCPCLn5AY/e7w==
|
||||||
|
dependencies:
|
||||||
|
"@types/node" "*"
|
||||||
|
|
||||||
"@types/dom4@^2.0.1":
|
"@types/dom4@^2.0.1":
|
||||||
version "2.0.1"
|
version "2.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/@types/dom4/-/dom4-2.0.1.tgz#506d5781b9bcab81bd9a878b198aec7dee2a6033"
|
resolved "https://registry.yarnpkg.com/@types/dom4/-/dom4-2.0.1.tgz#506d5781b9bcab81bd9a878b198aec7dee2a6033"
|
||||||
@ -1311,10 +1318,10 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.0.0.tgz#d11813b9c0ff8aaca29f04cbc12817f4c7d656e5"
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.0.0.tgz#d11813b9c0ff8aaca29f04cbc12817f4c7d656e5"
|
||||||
integrity sha512-Jrb/x3HT4PTJp6a4avhmJCDEVrPdqLfl3e8GGMbpkGGdwAV5UGlIs4vVEfsHHfylZVOKZWpOqmqFH8CbfOZ6kg==
|
integrity sha512-Jrb/x3HT4PTJp6a4avhmJCDEVrPdqLfl3e8GGMbpkGGdwAV5UGlIs4vVEfsHHfylZVOKZWpOqmqFH8CbfOZ6kg==
|
||||||
|
|
||||||
"@types/node@12.0.2":
|
"@types/node@^12.0.3":
|
||||||
version "12.0.2"
|
version "12.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.0.2.tgz#3452a24edf9fea138b48fad4a0a028a683da1e40"
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.0.3.tgz#5d8d24e0033fc6393efadc85cb59c1f638095c9a"
|
||||||
integrity sha512-5tabW/i+9mhrfEOUcLDu2xBPsHJ+X5Orqy9FKpale3SjDA17j5AEpYq5vfy3oAeAHGcvANRCO3NV3d2D6q3NiA==
|
integrity sha512-zkOxCS/fA+3SsdA+9Yun0iANxzhQRiNwTvJSr6N95JhuJ/x27z9G2URx1Jpt3zYFfCGUXZGL5UDxt5eyLE7wgw==
|
||||||
|
|
||||||
"@types/prop-types@*":
|
"@types/prop-types@*":
|
||||||
version "15.7.1"
|
version "15.7.1"
|
||||||
@ -1710,6 +1717,11 @@ are-we-there-yet@~1.1.2:
|
|||||||
delegates "^1.0.0"
|
delegates "^1.0.0"
|
||||||
readable-stream "^2.0.6"
|
readable-stream "^2.0.6"
|
||||||
|
|
||||||
|
arg@^4.1.0:
|
||||||
|
version "4.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.0.tgz#583c518199419e0037abb74062c37f8519e575f0"
|
||||||
|
integrity sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==
|
||||||
|
|
||||||
argparse@^1.0.7:
|
argparse@^1.0.7:
|
||||||
version "1.0.10"
|
version "1.0.10"
|
||||||
resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
|
resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
|
||||||
@ -2450,6 +2462,28 @@ chardet@^0.7.0:
|
|||||||
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
|
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
|
||||||
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
|
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
|
||||||
|
|
||||||
|
cheerio@^0.22.0:
|
||||||
|
version "0.22.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.22.0.tgz#a9baa860a3f9b595a6b81b1a86873121ed3a269e"
|
||||||
|
integrity sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=
|
||||||
|
dependencies:
|
||||||
|
css-select "~1.2.0"
|
||||||
|
dom-serializer "~0.1.0"
|
||||||
|
entities "~1.1.1"
|
||||||
|
htmlparser2 "^3.9.1"
|
||||||
|
lodash.assignin "^4.0.9"
|
||||||
|
lodash.bind "^4.1.4"
|
||||||
|
lodash.defaults "^4.0.1"
|
||||||
|
lodash.filter "^4.4.0"
|
||||||
|
lodash.flatten "^4.2.0"
|
||||||
|
lodash.foreach "^4.3.0"
|
||||||
|
lodash.map "^4.4.0"
|
||||||
|
lodash.merge "^4.4.0"
|
||||||
|
lodash.pick "^4.2.1"
|
||||||
|
lodash.reduce "^4.4.0"
|
||||||
|
lodash.reject "^4.4.0"
|
||||||
|
lodash.some "^4.4.0"
|
||||||
|
|
||||||
chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4:
|
chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4:
|
||||||
version "2.1.5"
|
version "2.1.5"
|
||||||
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.5.tgz#0ae8434d962281a5f56c72869e79cb6d9d86ad4d"
|
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.5.tgz#0ae8434d962281a5f56c72869e79cb6d9d86ad4d"
|
||||||
@ -2950,7 +2984,7 @@ css-select-base-adapter@^0.1.1:
|
|||||||
resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7"
|
resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7"
|
||||||
integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==
|
integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==
|
||||||
|
|
||||||
css-select@^1.1.0:
|
css-select@^1.1.0, css-select@~1.2.0:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858"
|
resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858"
|
||||||
integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=
|
integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=
|
||||||
@ -3297,6 +3331,11 @@ diff-sequences@^24.3.0:
|
|||||||
resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.3.0.tgz#0f20e8a1df1abddaf4d9c226680952e64118b975"
|
resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.3.0.tgz#0f20e8a1df1abddaf4d9c226680952e64118b975"
|
||||||
integrity sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw==
|
integrity sha512-xLqpez+Zj9GKSnPWS0WZw1igGocZ+uua8+y+5dDNTT934N3QuY1sp2LkHzwiaYQGz60hMq0pjAshdeXm5VUOEw==
|
||||||
|
|
||||||
|
diff@^4.0.1:
|
||||||
|
version "4.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.1.tgz#0c667cb467ebbb5cea7f14f135cc2dba7780a8ff"
|
||||||
|
integrity sha512-s2+XdvhPCOF01LRQBC8hf4vhbVmI2CGS5aZnxLJlT5FtdhPCDFq80q++zK2KlrVorVDdL5BOGZ/VfLrVtYNF+Q==
|
||||||
|
|
||||||
diffie-hellman@^5.0.0:
|
diffie-hellman@^5.0.0:
|
||||||
version "5.0.3"
|
version "5.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
|
resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
|
||||||
@ -3370,7 +3409,7 @@ dom-helpers@^3.4.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime" "^7.1.2"
|
"@babel/runtime" "^7.1.2"
|
||||||
|
|
||||||
dom-serializer@0:
|
dom-serializer@0, dom-serializer@~0.1.0:
|
||||||
version "0.1.1"
|
version "0.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0"
|
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0"
|
||||||
integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==
|
integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==
|
||||||
@ -3524,7 +3563,7 @@ enhanced-resolve@^4.1.0:
|
|||||||
memory-fs "^0.4.0"
|
memory-fs "^0.4.0"
|
||||||
tapable "^1.0.0"
|
tapable "^1.0.0"
|
||||||
|
|
||||||
entities@^1.1.1:
|
entities@^1.1.1, entities@~1.1.1:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
|
resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
|
||||||
integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
|
integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==
|
||||||
@ -4648,7 +4687,7 @@ html-webpack-plugin@4.0.0-beta.5:
|
|||||||
tapable "^1.1.0"
|
tapable "^1.1.0"
|
||||||
util.promisify "1.0.0"
|
util.promisify "1.0.0"
|
||||||
|
|
||||||
htmlparser2@^3.3.0:
|
htmlparser2@^3.3.0, htmlparser2@^3.9.1:
|
||||||
version "3.10.1"
|
version "3.10.1"
|
||||||
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f"
|
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f"
|
||||||
integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==
|
integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==
|
||||||
@ -5213,7 +5252,7 @@ isobject@^3.0.0, isobject@^3.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
|
resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
|
||||||
integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
|
integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
|
||||||
|
|
||||||
isomorphic-fetch@^2.1.1:
|
isomorphic-fetch@^2.1.1, isomorphic-fetch@^2.2.1:
|
||||||
version "2.2.1"
|
version "2.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
|
resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
|
||||||
integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=
|
integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=
|
||||||
@ -5984,11 +6023,71 @@ lodash._reinterpolate@~3.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
|
resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
|
||||||
integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=
|
integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=
|
||||||
|
|
||||||
|
lodash.assignin@^4.0.9:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2"
|
||||||
|
integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI=
|
||||||
|
|
||||||
|
lodash.bind@^4.1.4:
|
||||||
|
version "4.2.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35"
|
||||||
|
integrity sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=
|
||||||
|
|
||||||
|
lodash.defaults@^4.0.1:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c"
|
||||||
|
integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=
|
||||||
|
|
||||||
|
lodash.filter@^4.4.0:
|
||||||
|
version "4.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.filter/-/lodash.filter-4.6.0.tgz#668b1d4981603ae1cc5a6fa760143e480b4c4ace"
|
||||||
|
integrity sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=
|
||||||
|
|
||||||
|
lodash.flatten@^4.2.0:
|
||||||
|
version "4.4.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f"
|
||||||
|
integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=
|
||||||
|
|
||||||
|
lodash.foreach@^4.3.0:
|
||||||
|
version "4.5.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53"
|
||||||
|
integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=
|
||||||
|
|
||||||
|
lodash.map@^4.4.0:
|
||||||
|
version "4.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.map/-/lodash.map-4.6.0.tgz#771ec7839e3473d9c4cde28b19394c3562f4f6d3"
|
||||||
|
integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=
|
||||||
|
|
||||||
lodash.memoize@^4.1.2:
|
lodash.memoize@^4.1.2:
|
||||||
version "4.1.2"
|
version "4.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
|
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
|
||||||
integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
|
integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
|
||||||
|
|
||||||
|
lodash.merge@^4.4.0:
|
||||||
|
version "4.6.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.1.tgz#adc25d9cb99b9391c59624f379fbba60d7111d54"
|
||||||
|
integrity sha512-AOYza4+Hf5z1/0Hztxpm2/xiPZgi/cjMqdnKTUWTBSKchJlxXXuUSxCCl8rJlf4g6yww/j6mA8nC8Hw/EZWxKQ==
|
||||||
|
|
||||||
|
lodash.pick@^4.2.1:
|
||||||
|
version "4.4.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3"
|
||||||
|
integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=
|
||||||
|
|
||||||
|
lodash.reduce@^4.4.0:
|
||||||
|
version "4.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.reduce/-/lodash.reduce-4.6.0.tgz#f1ab6b839299ad48f784abbf476596f03b914d3b"
|
||||||
|
integrity sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=
|
||||||
|
|
||||||
|
lodash.reject@^4.4.0:
|
||||||
|
version "4.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.reject/-/lodash.reject-4.6.0.tgz#80d6492dc1470864bbf583533b651f42a9f52415"
|
||||||
|
integrity sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=
|
||||||
|
|
||||||
|
lodash.some@^4.4.0:
|
||||||
|
version "4.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.some/-/lodash.some-4.6.0.tgz#1bb9f314ef6b8baded13b549169b2a945eb68e4d"
|
||||||
|
integrity sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=
|
||||||
|
|
||||||
lodash.sortby@^4.7.0:
|
lodash.sortby@^4.7.0:
|
||||||
version "4.7.0"
|
version "4.7.0"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
|
resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
|
||||||
@ -6061,6 +6160,11 @@ make-dir@^2.0.0, make-dir@^2.1.0:
|
|||||||
pify "^4.0.1"
|
pify "^4.0.1"
|
||||||
semver "^5.6.0"
|
semver "^5.6.0"
|
||||||
|
|
||||||
|
make-error@^1.1.1:
|
||||||
|
version "1.3.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.5.tgz#efe4e81f6db28cadd605c70f29c831b58ef776c8"
|
||||||
|
integrity sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==
|
||||||
|
|
||||||
makeerror@1.0.x:
|
makeerror@1.0.x:
|
||||||
version "1.0.11"
|
version "1.0.11"
|
||||||
resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c"
|
resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c"
|
||||||
@ -9408,6 +9512,17 @@ trough@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.3.tgz#e29bd1614c6458d44869fc28b255ab7857ef7c24"
|
resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.3.tgz#e29bd1614c6458d44869fc28b255ab7857ef7c24"
|
||||||
integrity sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==
|
integrity sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==
|
||||||
|
|
||||||
|
ts-node@^8.2.0:
|
||||||
|
version "8.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.2.0.tgz#4a89754b00560bb24cd54526e1685fa38c45f240"
|
||||||
|
integrity sha512-m8XQwUurkbYqXrKqr3WHCW310utRNvV5OnRVeISeea7LoCWVcdfeB/Ntl8JYWFh+WRoUAdBgESrzKochQt7sMw==
|
||||||
|
dependencies:
|
||||||
|
arg "^4.1.0"
|
||||||
|
diff "^4.0.1"
|
||||||
|
make-error "^1.1.1"
|
||||||
|
source-map-support "^0.5.6"
|
||||||
|
yn "^3.0.0"
|
||||||
|
|
||||||
ts-pnp@1.1.2, ts-pnp@^1.0.0:
|
ts-pnp@1.1.2, ts-pnp@^1.0.0:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.2.tgz#be8e4bfce5d00f0f58e0666a82260c34a57af552"
|
resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.2.tgz#be8e4bfce5d00f0f58e0666a82260c34a57af552"
|
||||||
@ -10274,3 +10389,8 @@ yargs@^12.0.2:
|
|||||||
which-module "^2.0.0"
|
which-module "^2.0.0"
|
||||||
y18n "^3.2.1 || ^4.0.0"
|
y18n "^3.2.1 || ^4.0.0"
|
||||||
yargs-parser "^11.1.1"
|
yargs-parser "^11.1.1"
|
||||||
|
|
||||||
|
yn@^3.0.0:
|
||||||
|
version "3.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.0.tgz#fcbe2db63610361afcc5eb9e0ac91e976d046114"
|
||||||
|
integrity sha512-kKfnnYkbTfrAdd0xICNFw7Atm8nKpLcLv9AZGEt+kczL/WQVai4e2V6ZN8U/O+iI6WrNuJjNNOyu4zfhl9D3Hg==
|
||||||
|
Loading…
Reference in New Issue
Block a user