parent
a998a59506
commit
9d0ba7e0ef
|
@ -8,7 +8,6 @@ public/trans
|
||||||
public/compiled
|
public/compiled
|
||||||
public/vendor/stockfish.wasm
|
public/vendor/stockfish.wasm
|
||||||
public/vendor/stockfish-mv.wasm
|
public/vendor/stockfish-mv.wasm
|
||||||
public/vendor/stockfish.pexe
|
|
||||||
public/vendor/stockfish.js
|
public/vendor/stockfish.js
|
||||||
public/css/
|
public/css/
|
||||||
target
|
target
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import { CevalCtrl, CevalOpts, CevalTechnology, Work, Step, Hovering, Started } from './types';
|
import { CevalCtrl, CevalOpts, CevalTechnology, Work, Step, Hovering, Started } from './types';
|
||||||
|
|
||||||
import { Pool, makeWatchdog } from './pool';
|
import { Pool } from './pool';
|
||||||
import { prop } from 'common';
|
import { prop } from 'common';
|
||||||
import { storedProp } from 'common/storage';
|
import { storedProp } from 'common/storage';
|
||||||
import throttle from 'common/throttle';
|
import throttle from 'common/throttle';
|
||||||
|
@ -68,10 +68,9 @@ export default function(opts: CevalOpts): CevalCtrl {
|
||||||
return opts.storageKeyPrefix ? `${opts.storageKeyPrefix}.${k}` : k;
|
return opts.storageKeyPrefix ? `${opts.storageKeyPrefix}.${k}` : k;
|
||||||
};
|
};
|
||||||
|
|
||||||
// select pnacl > wasmx > wasm > asmjs
|
// select wasmx > wasm > asmjs
|
||||||
let technology: CevalTechnology = 'asmjs';
|
let technology: CevalTechnology = 'asmjs';
|
||||||
if (makeWatchdog('pnacl').good() && 'application/x-pnacl' in navigator.mimeTypes) technology = 'pnacl';
|
if (typeof WebAssembly === 'object' && WebAssembly.validate(Uint8Array.of(0x0, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00))) {
|
||||||
else if (typeof WebAssembly === 'object' && WebAssembly.validate(Uint8Array.of(0x0, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00))) {
|
|
||||||
technology = 'wasm';
|
technology = 'wasm';
|
||||||
if (officialStockfish(opts.variant.key) && wasmThreadsSupported()) technology = 'wasmx';
|
if (officialStockfish(opts.variant.key) && wasmThreadsSupported()) technology = 'wasmx';
|
||||||
}
|
}
|
||||||
|
@ -98,14 +97,13 @@ export default function(opts: CevalOpts): CevalCtrl {
|
||||||
const pool = new Pool({
|
const pool = new Pool({
|
||||||
technology,
|
technology,
|
||||||
asmjs: 'vendor/stockfish.js/stockfish.js',
|
asmjs: 'vendor/stockfish.js/stockfish.js',
|
||||||
pnacl: 'vendor/stockfish.pexe/stockfish.nmf',
|
|
||||||
wasm: 'vendor/stockfish.js/stockfish.wasm.js',
|
wasm: 'vendor/stockfish.js/stockfish.wasm.js',
|
||||||
wasmx: officialStockfish(opts.variant.key) ? 'vendor/stockfish.wasm/stockfish.js' : 'vendor/stockfish-mv.wasm/stockfish.js',
|
wasmx: officialStockfish(opts.variant.key) ? 'vendor/stockfish.wasm/stockfish.js' : 'vendor/stockfish-mv.wasm/stockfish.js',
|
||||||
}, {
|
}, {
|
||||||
minDepth,
|
minDepth,
|
||||||
variant: opts.variant.key,
|
variant: opts.variant.key,
|
||||||
threads: (technology == 'pnacl' || technology == 'wasmx') && threads,
|
threads: technology == 'wasmx' && threads,
|
||||||
hashSize: technology == 'pnacl' && hashSize
|
hashSize: false && hashSize,
|
||||||
});
|
});
|
||||||
|
|
||||||
// adjusts maxDepth based on nodes per second
|
// adjusts maxDepth based on nodes per second
|
||||||
|
@ -240,8 +238,8 @@ export default function(opts: CevalOpts): CevalCtrl {
|
||||||
possible: opts.possible,
|
possible: opts.possible,
|
||||||
enabled,
|
enabled,
|
||||||
multiPv,
|
multiPv,
|
||||||
threads: (technology == 'pnacl' || technology == 'wasmx') ? threads : undefined,
|
threads: (technology == 'wasmx') ? threads : undefined,
|
||||||
hashSize: technology == 'pnacl' ? hashSize : undefined,
|
hashSize: undefined,
|
||||||
maxThreads,
|
maxThreads,
|
||||||
infinite,
|
infinite,
|
||||||
hovering,
|
hovering,
|
||||||
|
|
|
@ -1,44 +1,7 @@
|
||||||
import { storedProp } from 'common/storage';
|
|
||||||
import { sync, Sync } from 'common/sync';
|
import { sync, Sync } from 'common/sync';
|
||||||
import { Watchdog, PoolOpts, WorkerOpts, Work } from './types';
|
import { PoolOpts, WorkerOpts, Work } from './types';
|
||||||
import Protocol from './stockfishProtocol';
|
import Protocol from './stockfishProtocol';
|
||||||
|
|
||||||
export function makeWatchdog(name: string): Watchdog {
|
|
||||||
const prop = storedProp<number>('ceval.watchdog3.' + name, 0);
|
|
||||||
let failed = false;
|
|
||||||
let disarming = false;
|
|
||||||
return {
|
|
||||||
arm() {
|
|
||||||
prop(new Date().getTime());
|
|
||||||
console.log('watchdog armed: ' + name);
|
|
||||||
},
|
|
||||||
disarmSoon() {
|
|
||||||
if (failed || disarming) return;
|
|
||||||
disarming = true;
|
|
||||||
setTimeout(() => {
|
|
||||||
// delayed to detect potential tab crash
|
|
||||||
prop(0);
|
|
||||||
console.log('watchdog disarmed (delayed): ' + name);
|
|
||||||
}, 2000);
|
|
||||||
},
|
|
||||||
disarm() {
|
|
||||||
if (failed || disarming) return;
|
|
||||||
disarming = true;
|
|
||||||
prop(0);
|
|
||||||
console.log('watchdog disarmed: ' + name);
|
|
||||||
},
|
|
||||||
good() {
|
|
||||||
const lastArmed = parseInt(prop(), 10);
|
|
||||||
const now = new Date().getTime();
|
|
||||||
return (lastArmed < (now - 1000 * 60 * 60 * 24 * 2)) || ((now - 5000) < lastArmed);
|
|
||||||
},
|
|
||||||
fail() {
|
|
||||||
failed = true;
|
|
||||||
prop(new Date().getTime());
|
|
||||||
},
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
export abstract class AbstractWorker {
|
export abstract class AbstractWorker {
|
||||||
|
|
||||||
protected protocol: Sync<Protocol>;
|
protected protocol: Sync<Protocol>;
|
||||||
|
@ -103,65 +66,6 @@ class WebWorker extends AbstractWorker {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class PNaClWorker extends AbstractWorker {
|
|
||||||
private listener?: HTMLElement;
|
|
||||||
private worker?: HTMLObjectElement;
|
|
||||||
|
|
||||||
boot(): Promise<Protocol> {
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
const watchdog = makeWatchdog('pnacl');
|
|
||||||
watchdog.arm();
|
|
||||||
window.addEventListener('unload', () => watchdog.disarm(), false);
|
|
||||||
|
|
||||||
try {
|
|
||||||
// Use a listener div to ensure listeners are active before the
|
|
||||||
// load event fires.
|
|
||||||
const listener = this.listener = document.createElement('div');
|
|
||||||
listener.addEventListener('load', () => {
|
|
||||||
resolve(new Protocol(this.send.bind(this), this.workerOpts));
|
|
||||||
}, true);
|
|
||||||
listener.addEventListener('error', e => {
|
|
||||||
watchdog.fail();
|
|
||||||
reject(e);
|
|
||||||
}, true);
|
|
||||||
listener.addEventListener('message', e => {
|
|
||||||
watchdog.disarmSoon();
|
|
||||||
if (this.protocol.sync) this.protocol.sync.received((e as any).data);
|
|
||||||
}, true);
|
|
||||||
listener.addEventListener('crash', e => {
|
|
||||||
const err = this.worker ? (this.worker as any).lastError : e;
|
|
||||||
console.error('pnacl crash', err);
|
|
||||||
watchdog.fail();
|
|
||||||
}, true);
|
|
||||||
document.body.appendChild(listener);
|
|
||||||
|
|
||||||
const worker = this.worker = document.createElement('object');
|
|
||||||
worker.width = '0';
|
|
||||||
worker.height = '0';
|
|
||||||
worker.data = window.lichess.assetUrl(this.url);
|
|
||||||
worker.type = 'application/x-pnacl';
|
|
||||||
listener.appendChild(worker);
|
|
||||||
} catch (err) {
|
|
||||||
console.error('exception while booting pnacl', err);
|
|
||||||
watchdog.fail();
|
|
||||||
this.destroy();
|
|
||||||
reject(err);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
destroy() {
|
|
||||||
if (this.worker) this.worker.remove();
|
|
||||||
delete this.worker;
|
|
||||||
if (this.listener) this.listener.remove();
|
|
||||||
delete this.listener;
|
|
||||||
}
|
|
||||||
|
|
||||||
send(cmd: string) {
|
|
||||||
if (this.worker) (this.worker as any).postMessage(cmd);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class ThreadedWasmWorker extends AbstractWorker {
|
class ThreadedWasmWorker extends AbstractWorker {
|
||||||
static global: Promise<{instance: unknown, protocol: Protocol}>;
|
static global: Promise<{instance: unknown, protocol: Protocol}>;
|
||||||
|
|
||||||
|
@ -221,9 +125,7 @@ export class Pool {
|
||||||
warmup = () => {
|
warmup = () => {
|
||||||
if (this.workers.length) return;
|
if (this.workers.length) return;
|
||||||
|
|
||||||
if (this.poolOpts.technology == 'pnacl')
|
if (this.poolOpts.technology == 'wasmx')
|
||||||
this.workers.push(new PNaClWorker(this.poolOpts.pnacl, this.poolOpts, this.protocolOpts));
|
|
||||||
else if (this.poolOpts.technology == 'wasmx')
|
|
||||||
this.workers.push(new ThreadedWasmWorker(this.poolOpts.wasmx, this.poolOpts, this.protocolOpts));
|
this.workers.push(new ThreadedWasmWorker(this.poolOpts.wasmx, this.poolOpts, this.protocolOpts));
|
||||||
else {
|
else {
|
||||||
for (let i = 1; i <= 2; i++)
|
for (let i = 1; i <= 2; i++)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import { Prop } from 'common';
|
import { Prop } from 'common';
|
||||||
import { StoredProp, StoredBooleanProp } from 'common/storage';
|
import { StoredProp, StoredBooleanProp } from 'common/storage';
|
||||||
|
|
||||||
export type CevalTechnology = 'asmjs' | 'wasm' | 'wasmx' | 'pnacl';
|
export type CevalTechnology = 'asmjs' | 'wasm' | 'wasmx';
|
||||||
|
|
||||||
export interface Eval {
|
export interface Eval {
|
||||||
cp?: number;
|
cp?: number;
|
||||||
|
@ -29,7 +29,6 @@ export interface Work {
|
||||||
|
|
||||||
export interface PoolOpts {
|
export interface PoolOpts {
|
||||||
technology: CevalTechnology;
|
technology: CevalTechnology;
|
||||||
pnacl: string;
|
|
||||||
wasm: string;
|
wasm: string;
|
||||||
wasmx: string;
|
wasmx: string;
|
||||||
asmjs: string;
|
asmjs: string;
|
||||||
|
@ -115,11 +114,3 @@ export interface Step {
|
||||||
threat?: Tree.ClientEval;
|
threat?: Tree.ClientEval;
|
||||||
ceval?: Tree.ClientEval;
|
ceval?: Tree.ClientEval;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface Watchdog {
|
|
||||||
arm(): void;
|
|
||||||
disarm(): void;
|
|
||||||
disarmSoon(): void;
|
|
||||||
fail(): void;
|
|
||||||
good(): boolean;
|
|
||||||
}
|
|
||||||
|
|
|
@ -67,10 +67,9 @@ function engineName(ctrl: CevalCtrl): VNode[] {
|
||||||
const version = ctrl.engineName();
|
const version = ctrl.engineName();
|
||||||
return [
|
return [
|
||||||
h('span', version ? { attrs: { title: version } } : {}, window.lichess.engineName),
|
h('span', version ? { attrs: { title: version } } : {}, window.lichess.engineName),
|
||||||
ctrl.technology == 'pnacl' ? h('span.native', { attrs: { title: 'Portable Native Client (fast but deprecated)' } }, 'pnacl') :
|
ctrl.technology == 'wasmx' ? h('span.native', { attrs: { title: 'Multi-threaded WebAssembly (experimental)' } }, 'wasmx') :
|
||||||
(ctrl.technology == 'wasmx' ? h('span.native', { attrs: { title: 'Multi-threaded WebAssembly (experimental)' } }, 'wasmx') :
|
|
||||||
(ctrl.technology == 'wasm' ? h('span.native', { attrs: { title: 'WebAssembly' } }, 'wasm') :
|
(ctrl.technology == 'wasm' ? h('span.native', { attrs: { title: 'WebAssembly' } }, 'wasm') :
|
||||||
h('span.asmjs', { attrs: { title: 'JavaScript fallback' } }, 'asmjs')))
|
h('span.asmjs', { attrs: { title: 'JavaScript fallback' } }, 'asmjs'))
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -41,12 +41,6 @@ const ab = () => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const stockfishPexe = () => gulp.src([
|
|
||||||
require.resolve('stockfish.pexe/stockfish.nmf'),
|
|
||||||
require.resolve('stockfish.pexe/stockfish.pexe'),
|
|
||||||
require.resolve('stockfish.pexe/stockfish.bc')
|
|
||||||
]).pipe(gulp.dest('../../public/vendor/stockfish.pexe'));
|
|
||||||
|
|
||||||
const stockfishJs = () => gulp.src([
|
const stockfishJs = () => gulp.src([
|
||||||
require.resolve('stockfish.js/stockfish.wasm.js'),
|
require.resolve('stockfish.js/stockfish.wasm.js'),
|
||||||
require.resolve('stockfish.js/stockfish.wasm'),
|
require.resolve('stockfish.js/stockfish.wasm'),
|
||||||
|
@ -133,7 +127,7 @@ const userMod = () => browserify(browserifyOpts('./src/user-mod.js', false))
|
||||||
|
|
||||||
const deps = makeDependencies('lichess.deps.js');
|
const deps = makeDependencies('lichess.deps.js');
|
||||||
|
|
||||||
const tasks = [gitSha, jqueryFill, ab, standalonesJs, userMod, stockfishWasm, stockfishMvWasm, stockfishPexe, stockfishJs, deps];
|
const tasks = [gitSha, jqueryFill, ab, standalonesJs, userMod, stockfishWasm, stockfishMvWasm, stockfishJs, deps];
|
||||||
|
|
||||||
const dev = gulp.series(tasks.concat([devSource]));
|
const dev = gulp.series(tasks.concat([devSource]));
|
||||||
|
|
||||||
|
|
|
@ -24,7 +24,6 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"stockfish-mv.wasm": "^0.2.0",
|
"stockfish-mv.wasm": "^0.2.0",
|
||||||
"stockfish.js": "^10.0.2",
|
"stockfish.js": "^10.0.2",
|
||||||
"stockfish.pexe": "^10.1.0",
|
|
||||||
"stockfish.wasm": "^0.5.12",
|
"stockfish.wasm": "^0.5.12",
|
||||||
"tablesort": "^5.1"
|
"tablesort": "^5.1"
|
||||||
}
|
}
|
||||||
|
|
157
yarn.lock
157
yarn.lock
|
@ -829,11 +829,6 @@ chokidar@^2.0.0, chokidar@^2.1.1:
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
fsevents "^1.2.7"
|
fsevents "^1.2.7"
|
||||||
|
|
||||||
chownr@^1.1.1:
|
|
||||||
version "1.1.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142"
|
|
||||||
integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==
|
|
||||||
|
|
||||||
cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
|
cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
|
||||||
version "1.0.4"
|
version "1.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
|
resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
|
||||||
|
@ -1140,7 +1135,7 @@ debug-fabulous@1.X:
|
||||||
memoizee "0.4.X"
|
memoizee "0.4.X"
|
||||||
object-assign "4.X"
|
object-assign "4.X"
|
||||||
|
|
||||||
debug@3.X, debug@^3.2.6:
|
debug@3.X:
|
||||||
version "3.2.6"
|
version "3.2.6"
|
||||||
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
|
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
|
||||||
integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
|
integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
|
||||||
|
@ -1164,11 +1159,6 @@ decode-uri-component@^0.2.0:
|
||||||
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
|
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
|
||||||
integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
|
integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
|
||||||
|
|
||||||
deep-extend@^0.6.0:
|
|
||||||
version "0.6.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
|
|
||||||
integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
|
|
||||||
|
|
||||||
default-compare@^1.0.0:
|
default-compare@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f"
|
resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f"
|
||||||
|
@ -1248,11 +1238,6 @@ detect-file@^1.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
|
resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
|
||||||
integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
|
integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
|
||||||
|
|
||||||
detect-libc@^1.0.2:
|
|
||||||
version "1.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
|
|
||||||
integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
|
|
||||||
|
|
||||||
detect-newline@2.X:
|
detect-newline@2.X:
|
||||||
version "2.1.0"
|
version "2.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"
|
resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"
|
||||||
|
@ -1735,13 +1720,6 @@ fs-extra@^4.0.2:
|
||||||
jsonfile "^4.0.0"
|
jsonfile "^4.0.0"
|
||||||
universalify "^0.1.0"
|
universalify "^0.1.0"
|
||||||
|
|
||||||
fs-minipass@^1.2.5:
|
|
||||||
version "1.2.7"
|
|
||||||
resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
|
|
||||||
integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
|
|
||||||
dependencies:
|
|
||||||
minipass "^2.6.0"
|
|
||||||
|
|
||||||
fs-mkdirp-stream@^1.0.0:
|
fs-mkdirp-stream@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb"
|
resolved "https://registry.yarnpkg.com/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz#0b7815fc3201c6a69e14db98ce098c16935259eb"
|
||||||
|
@ -2313,25 +2291,11 @@ https-browserify@^1.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
|
resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
|
||||||
integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
|
integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
|
||||||
|
|
||||||
iconv-lite@^0.4.4:
|
|
||||||
version "0.4.24"
|
|
||||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
|
|
||||||
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
|
|
||||||
dependencies:
|
|
||||||
safer-buffer ">= 2.1.2 < 3"
|
|
||||||
|
|
||||||
ieee754@^1.1.4:
|
ieee754@^1.1.4:
|
||||||
version "1.1.13"
|
version "1.1.13"
|
||||||
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84"
|
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84"
|
||||||
integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==
|
integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==
|
||||||
|
|
||||||
ignore-walk@^3.0.1:
|
|
||||||
version "3.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37"
|
|
||||||
integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==
|
|
||||||
dependencies:
|
|
||||||
minimatch "^3.0.4"
|
|
||||||
|
|
||||||
in-publish@^2.0.0:
|
in-publish@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
|
resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
|
||||||
|
@ -2367,7 +2331,7 @@ inherits@2.0.3:
|
||||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
|
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
|
||||||
integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
|
integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
|
||||||
|
|
||||||
ini@^1.3.4, ini@~1.3.0:
|
ini@^1.3.4:
|
||||||
version "1.3.5"
|
version "1.3.5"
|
||||||
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
|
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
|
||||||
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
|
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
|
||||||
|
@ -3183,26 +3147,11 @@ minimist@0.0.8:
|
||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
|
||||||
integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
|
integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
|
||||||
|
|
||||||
minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0:
|
minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
|
||||||
integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=
|
integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=
|
||||||
|
|
||||||
minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
|
|
||||||
version "2.9.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
|
|
||||||
integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
|
|
||||||
dependencies:
|
|
||||||
safe-buffer "^5.1.2"
|
|
||||||
yallist "^3.0.0"
|
|
||||||
|
|
||||||
minizlib@^1.2.1:
|
|
||||||
version "1.3.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
|
|
||||||
integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
|
|
||||||
dependencies:
|
|
||||||
minipass "^2.9.0"
|
|
||||||
|
|
||||||
"mithril@github:ornicar/mithril.js#lila-1":
|
"mithril@github:ornicar/mithril.js#lila-1":
|
||||||
version "0.2.1-lila"
|
version "0.2.1-lila"
|
||||||
resolved "https://codeload.github.com/ornicar/mithril.js/tar.gz/dd92827aec63f921149ca9a3460ccd981e7025bb"
|
resolved "https://codeload.github.com/ornicar/mithril.js/tar.gz/dd92827aec63f921149ca9a3460ccd981e7025bb"
|
||||||
|
@ -3301,15 +3250,6 @@ nanomatch@^1.2.9:
|
||||||
snapdragon "^0.8.1"
|
snapdragon "^0.8.1"
|
||||||
to-regex "^3.0.1"
|
to-regex "^3.0.1"
|
||||||
|
|
||||||
needle@^2.2.1:
|
|
||||||
version "2.4.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz#6833e74975c444642590e15a750288c5f939b57c"
|
|
||||||
integrity sha512-4Hnwzr3mi5L97hMYeNl8wRW/Onhy4nUKR/lVemJ8gJedxxUyBLm9kkrDColJvoSfwi0jCNhD+xCdOtiGDQiRZg==
|
|
||||||
dependencies:
|
|
||||||
debug "^3.2.6"
|
|
||||||
iconv-lite "^0.4.4"
|
|
||||||
sax "^1.2.4"
|
|
||||||
|
|
||||||
next-tick@1, next-tick@~1.0.0:
|
next-tick@1, next-tick@~1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c"
|
resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c"
|
||||||
|
@ -3333,22 +3273,6 @@ node-gyp@^3.8.0:
|
||||||
tar "^2.0.0"
|
tar "^2.0.0"
|
||||||
which "1"
|
which "1"
|
||||||
|
|
||||||
node-pre-gyp@*:
|
|
||||||
version "0.14.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83"
|
|
||||||
integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==
|
|
||||||
dependencies:
|
|
||||||
detect-libc "^1.0.2"
|
|
||||||
mkdirp "^0.5.1"
|
|
||||||
needle "^2.2.1"
|
|
||||||
nopt "^4.0.1"
|
|
||||||
npm-packlist "^1.1.6"
|
|
||||||
npmlog "^4.0.2"
|
|
||||||
rc "^1.2.7"
|
|
||||||
rimraf "^2.6.1"
|
|
||||||
semver "^5.3.0"
|
|
||||||
tar "^4.4.2"
|
|
||||||
|
|
||||||
node-releases@^1.1.42:
|
node-releases@^1.1.42:
|
||||||
version "1.1.42"
|
version "1.1.42"
|
||||||
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.42.tgz#a999f6a62f8746981f6da90627a8d2fc090bbad7"
|
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.42.tgz#a999f6a62f8746981f6da90627a8d2fc090bbad7"
|
||||||
|
@ -3386,14 +3310,6 @@ node-sass@^4.8.3:
|
||||||
dependencies:
|
dependencies:
|
||||||
abbrev "1"
|
abbrev "1"
|
||||||
|
|
||||||
nopt@^4.0.1:
|
|
||||||
version "4.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d"
|
|
||||||
integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=
|
|
||||||
dependencies:
|
|
||||||
abbrev "1"
|
|
||||||
osenv "^0.1.4"
|
|
||||||
|
|
||||||
normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
|
normalize-package-data@^2.3.2, normalize-package-data@^2.3.4:
|
||||||
version "2.5.0"
|
version "2.5.0"
|
||||||
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
|
resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
|
||||||
|
@ -3428,27 +3344,7 @@ now-and-later@^2.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
once "^1.3.2"
|
once "^1.3.2"
|
||||||
|
|
||||||
npm-bundled@^1.0.1:
|
"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0:
|
||||||
version "1.1.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz#1edd570865a94cdb1bc8220775e29466c9fb234b"
|
|
||||||
integrity sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==
|
|
||||||
dependencies:
|
|
||||||
npm-normalize-package-bin "^1.0.1"
|
|
||||||
|
|
||||||
npm-normalize-package-bin@^1.0.1:
|
|
||||||
version "1.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2"
|
|
||||||
integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==
|
|
||||||
|
|
||||||
npm-packlist@^1.1.6:
|
|
||||||
version "1.4.7"
|
|
||||||
resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.7.tgz#9e954365a06b80b18111ea900945af4f88ed4848"
|
|
||||||
integrity sha512-vAj7dIkp5NhieaGZxBJB8fF4R0078rqsmhJcAfXZ6O7JJhjhPK96n5Ry1oZcfLXgfun0GWTZPOxaEyqv8GBykQ==
|
|
||||||
dependencies:
|
|
||||||
ignore-walk "^3.0.1"
|
|
||||||
npm-bundled "^1.0.1"
|
|
||||||
|
|
||||||
"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2:
|
|
||||||
version "4.1.2"
|
version "4.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
|
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
|
||||||
integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
|
integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==
|
||||||
|
@ -3617,7 +3513,7 @@ os-tmpdir@^1.0.0:
|
||||||
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
|
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
|
||||||
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
|
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
|
||||||
|
|
||||||
osenv@0, osenv@^0.1.4:
|
osenv@0:
|
||||||
version "0.1.5"
|
version "0.1.5"
|
||||||
resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
|
resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410"
|
||||||
integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
|
integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==
|
||||||
|
@ -3953,16 +3849,6 @@ randomfill@^1.0.3:
|
||||||
randombytes "^2.0.5"
|
randombytes "^2.0.5"
|
||||||
safe-buffer "^5.1.0"
|
safe-buffer "^5.1.0"
|
||||||
|
|
||||||
rc@^1.2.7:
|
|
||||||
version "1.2.8"
|
|
||||||
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
|
|
||||||
integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
|
|
||||||
dependencies:
|
|
||||||
deep-extend "^0.6.0"
|
|
||||||
ini "~1.3.0"
|
|
||||||
minimist "^1.2.0"
|
|
||||||
strip-json-comments "~2.0.1"
|
|
||||||
|
|
||||||
read-only-stream@^2.0.0:
|
read-only-stream@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0"
|
resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0"
|
||||||
|
@ -4199,7 +4085,7 @@ ret@~0.1.10:
|
||||||
resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
|
resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
|
||||||
integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
|
integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
|
||||||
|
|
||||||
rimraf@2, rimraf@^2.6.1:
|
rimraf@2:
|
||||||
version "2.7.1"
|
version "2.7.1"
|
||||||
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
|
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
|
||||||
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
|
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
|
||||||
|
@ -4231,7 +4117,7 @@ safe-regex@^1.1.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
ret "~0.1.10"
|
ret "~0.1.10"
|
||||||
|
|
||||||
"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
|
safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
|
||||||
version "2.1.2"
|
version "2.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
||||||
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
|
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
|
||||||
|
@ -4246,7 +4132,7 @@ sass-graph@^2.2.3, sass-graph@^2.2.4:
|
||||||
scss-tokenizer "^0.2.3"
|
scss-tokenizer "^0.2.3"
|
||||||
yargs "^7.0.0"
|
yargs "^7.0.0"
|
||||||
|
|
||||||
sax@>=0.6.0, sax@^1.2.4:
|
sax@>=0.6.0:
|
||||||
version "1.2.4"
|
version "1.2.4"
|
||||||
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
|
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
|
||||||
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
|
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
|
||||||
|
@ -4266,7 +4152,7 @@ semver-greatest-satisfied-range@^1.1.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
sver-compat "^1.5.0"
|
sver-compat "^1.5.0"
|
||||||
|
|
||||||
"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.6.0:
|
"semver@2 || 3 || 4 || 5", semver@^5.6.0:
|
||||||
version "5.7.1"
|
version "5.7.1"
|
||||||
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
|
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
|
||||||
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
|
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
|
||||||
|
@ -4499,11 +4385,6 @@ stockfish.js@^10.0.2:
|
||||||
resolved "https://registry.yarnpkg.com/stockfish.js/-/stockfish.js-10.0.2.tgz#c8206aa3b0290171ace52b463a74112ea1f83989"
|
resolved "https://registry.yarnpkg.com/stockfish.js/-/stockfish.js-10.0.2.tgz#c8206aa3b0290171ace52b463a74112ea1f83989"
|
||||||
integrity sha512-treB3AYcdvRJ9SDPOyL0R2NcEAtQgG432nStfRzR4wzVELGQ6iVoeBHwvirHTfocNOTims7XNkK3SADaocsJmQ==
|
integrity sha512-treB3AYcdvRJ9SDPOyL0R2NcEAtQgG432nStfRzR4wzVELGQ6iVoeBHwvirHTfocNOTims7XNkK3SADaocsJmQ==
|
||||||
|
|
||||||
stockfish.pexe@^10.1.0:
|
|
||||||
version "10.1.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/stockfish.pexe/-/stockfish.pexe-10.1.0.tgz#5c585f2b974fdc13bf9928bf2878ba09ce7d9691"
|
|
||||||
integrity sha512-dn0X7NrpFxg8Uz+bMy0gsi5hGejHb8cBsSjFKblqO1FXbpMxdRWt1IdXKDrJ0h6r4mBHkZkn6HGv5rnrxLbJ5A==
|
|
||||||
|
|
||||||
stockfish.wasm@^0.5.12:
|
stockfish.wasm@^0.5.12:
|
||||||
version "0.5.12"
|
version "0.5.12"
|
||||||
resolved "https://registry.yarnpkg.com/stockfish.wasm/-/stockfish.wasm-0.5.12.tgz#b499c7df995ab0ef01ed6d7c30cb014711e39f74"
|
resolved "https://registry.yarnpkg.com/stockfish.wasm/-/stockfish.wasm-0.5.12.tgz#b499c7df995ab0ef01ed6d7c30cb014711e39f74"
|
||||||
|
@ -4665,7 +4546,7 @@ strip-indent@^1.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
get-stdin "^4.0.1"
|
get-stdin "^4.0.1"
|
||||||
|
|
||||||
strip-json-comments@^2.0.0, strip-json-comments@~2.0.1:
|
strip-json-comments@^2.0.0:
|
||||||
version "2.0.1"
|
version "2.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
|
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
|
||||||
integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
|
integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
|
||||||
|
@ -4725,19 +4606,6 @@ tar@^2.0.0:
|
||||||
fstream "^1.0.12"
|
fstream "^1.0.12"
|
||||||
inherits "2"
|
inherits "2"
|
||||||
|
|
||||||
tar@^4.4.2:
|
|
||||||
version "4.4.13"
|
|
||||||
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525"
|
|
||||||
integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==
|
|
||||||
dependencies:
|
|
||||||
chownr "^1.1.1"
|
|
||||||
fs-minipass "^1.2.5"
|
|
||||||
minipass "^2.8.6"
|
|
||||||
minizlib "^1.2.1"
|
|
||||||
mkdirp "^0.5.0"
|
|
||||||
safe-buffer "^5.1.2"
|
|
||||||
yallist "^3.0.3"
|
|
||||||
|
|
||||||
ternary-stream@^2.0.1:
|
ternary-stream@^2.0.1:
|
||||||
version "2.1.1"
|
version "2.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/ternary-stream/-/ternary-stream-2.1.1.tgz#4ad64b98668d796a085af2c493885a435a8a8bfc"
|
resolved "https://registry.yarnpkg.com/ternary-stream/-/ternary-stream-2.1.1.tgz#4ad64b98668d796a085af2c493885a435a8a8bfc"
|
||||||
|
@ -5311,11 +5179,6 @@ yallist@^2.1.2:
|
||||||
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
|
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
|
||||||
integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
|
integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
|
||||||
|
|
||||||
yallist@^3.0.0, yallist@^3.0.3:
|
|
||||||
version "3.1.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
|
|
||||||
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
|
|
||||||
|
|
||||||
yargs-parser@^5.0.0:
|
yargs-parser@^5.0.0:
|
||||||
version "5.0.0"
|
version "5.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a"
|
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a"
|
||||||
|
|
Loading…
Reference in New Issue