update jsdom

pull/737/head
Rich Harris 8 years ago
parent 8da4a9f081
commit 46cb2a4da3

@ -63,7 +63,7 @@
"estree-walker": "^0.5.0", "estree-walker": "^0.5.0",
"fuzzyset.js": "0.0.1", "fuzzyset.js": "0.0.1",
"glob": "^7.1.1", "glob": "^7.1.1",
"jsdom": "^9.9.1", "jsdom": "^11.1.0",
"locate-character": "^2.0.0", "locate-character": "^2.0.0",
"magic-string": "^0.22.3", "magic-string": "^0.22.3",
"mocha": "^3.2.0", "mocha": "^3.2.0",

@ -73,29 +73,29 @@ describe("css", () => {
// verify that the right elements have scoping selectors // verify that the right elements have scoping selectors
if (expected.html !== null) { if (expected.html !== null) {
return env().then(window => { const window = env();
const Component = eval(`(function () { ${dom.code}; return SvelteComponent; }())`);
const target = window.document.querySelector("main");
new Component({ target, data: config.data }); const Component = eval(`(function () { ${dom.code}; return SvelteComponent; }())`);
const html = target.innerHTML; const target = window.document.querySelector("main");
fs.writeFileSync(`test/css/samples/${dir}/_actual.html`, html); new Component({ target, data: config.data });
const html = target.innerHTML;
// dom fs.writeFileSync(`test/css/samples/${dir}/_actual.html`, html);
assert.equal(
normalizeHtml(window, html).replace(/svelte-\d+/g, 'svelte-xyz'),
normalizeHtml(window, expected.html)
);
// ssr // dom
const component = eval(`(function () { ${ssr.code}; return SvelteComponent; }())`); assert.equal(
normalizeHtml(window, html).replace(/svelte-\d+/g, 'svelte-xyz'),
normalizeHtml(window, expected.html)
);
assert.equal( // ssr
normalizeHtml(window, component.render(config.data)).replace(/svelte-\d+/g, 'svelte-xyz'), const component = eval(`(function () { ${ssr.code}; return SvelteComponent; }())`);
normalizeHtml(window, expected.html)
); assert.equal(
}); normalizeHtml(window, component.render(config.data)).replace(/svelte-\d+/g, 'svelte-xyz'),
normalizeHtml(window, expected.html)
);
} }
}); });
}); });

@ -3,84 +3,80 @@ import { svelte, deindent, env, setupHtmlEqual } from "../helpers.js";
function testAmd(code, expectedId, dependencies, html) { function testAmd(code, expectedId, dependencies, html) {
const fn = new Function("define", code); const fn = new Function("define", code);
const window = env();
return env().then(window => { function define(id, deps, factory) {
function define(id, deps, factory) { assert.equal(id, expectedId);
assert.equal(id, expectedId); assert.deepEqual(deps, Object.keys(dependencies));
assert.deepEqual(deps, Object.keys(dependencies));
const SvelteComponent = factory( const SvelteComponent = factory(
...Object.keys(dependencies).map(key => dependencies[key]) ...Object.keys(dependencies).map(key => dependencies[key])
); );
const main = window.document.body.querySelector("main"); const main = window.document.body.querySelector("main");
const component = new SvelteComponent({ target: main }); const component = new SvelteComponent({ target: main });
assert.htmlEqual(main.innerHTML, html); assert.htmlEqual(main.innerHTML, html);
component.destroy(); component.destroy();
} }
define.amd = true; define.amd = true;
fn(define); fn(define);
});
} }
function testCjs(code, dependencyById, html) { function testCjs(code, dependencyById, html) {
const fn = new Function("module", "exports", "require", code); const fn = new Function("module", "exports", "require", code);
const window = env();
return env().then(window => { const module = { exports: {} };
const module = { exports: {} }; const require = id => {
const require = id => { return dependencyById[id];
return dependencyById[id]; };
};
fn(module, module.exports, require); fn(module, module.exports, require);
const SvelteComponent = module.exports; const SvelteComponent = module.exports;
const main = window.document.body.querySelector("main"); const main = window.document.body.querySelector("main");
const component = new SvelteComponent({ target: main }); const component = new SvelteComponent({ target: main });
assert.htmlEqual(main.innerHTML, html); assert.htmlEqual(main.innerHTML, html);
component.destroy(); component.destroy();
});
} }
function testIife(code, name, globals, html) { function testIife(code, name, globals, html) {
const fn = new Function(Object.keys(globals), `${code}\n\nreturn ${name};`); const fn = new Function(Object.keys(globals), `${code}\n\nreturn ${name};`);
const window = env();
return env().then(window => { const SvelteComponent = fn(
const SvelteComponent = fn( ...Object.keys(globals).map(key => globals[key])
...Object.keys(globals).map(key => globals[key]) );
);
const main = window.document.body.querySelector("main"); const main = window.document.body.querySelector("main");
const component = new SvelteComponent({ target: main }); const component = new SvelteComponent({ target: main });
assert.htmlEqual(main.innerHTML, html); assert.htmlEqual(main.innerHTML, html);
component.destroy(); component.destroy();
});
} }
function testEval(code, name, globals, html) { function testEval(code, name, globals, html) {
const fn = new Function(Object.keys(globals), `return ${code};`); const fn = new Function(Object.keys(globals), `return ${code};`);
const window = env();
return env().then(window => { const SvelteComponent = fn(
const SvelteComponent = fn( ...Object.keys(globals).map(key => globals[key])
...Object.keys(globals).map(key => globals[key]) );
);
const main = window.document.body.querySelector("main"); const main = window.document.body.querySelector("main");
const component = new SvelteComponent({ target: main }); const component = new SvelteComponent({ target: main });
assert.htmlEqual(main.innerHTML, html); assert.htmlEqual(main.innerHTML, html);
component.destroy(); component.destroy();
});
} }
describe("formats", () => { describe("formats", () => {
@ -190,9 +186,9 @@ describe("formats", () => {
} }
}); });
return testAmd(code, "foo", { answer: 42 }, `<div>42</div>`) testAmd(code, "foo", { answer: 42 }, `<div>42</div>`);
.then(() => testCjs(code, { answer: 42 }, `<div>42</div>`)) testCjs(code, { answer: 42 }, `<div>42</div>`);
.then(() => testIife(code, "Foo", { answer: 42 }, `<div>42</div>`)); testIife(code, "Foo", { answer: 42 }, `<div>42</div>`);
}); });
}); });

@ -1,4 +1,4 @@
import jsdom from 'jsdom'; import { JSDOM } from 'jsdom';
import assert from 'assert'; import assert from 'assert';
import glob from 'glob'; import glob from 'glob';
import fs from 'fs'; import fs from 'fs';
@ -54,16 +54,10 @@ export function tryToReadFile(file) {
} }
export function env() { export function env() {
return new Promise((fulfil, reject) => { const { window } = new JSDOM('<main></main>');
jsdom.env('<main></main>', (err, window) => { global.document = window.document;
if (err) {
reject(err); return window;
} else {
global.document = window.document;
fulfil(window);
}
});
});
} }
function cleanChildren(node) { function cleanChildren(node) {
@ -138,15 +132,15 @@ export function normalizeHtml(window, html) {
} }
export function setupHtmlEqual() { export function setupHtmlEqual() {
return env().then(window => { const window = env();
assert.htmlEqual = (actual, expected, message) => {
assert.deepEqual( assert.htmlEqual = (actual, expected, message) => {
normalizeHtml(window, actual), assert.deepEqual(
normalizeHtml(window, expected), normalizeHtml(window, actual),
message normalizeHtml(window, expected),
); message
}; );
}); };
} }
export function loadConfig(file) { export function loadConfig(file) {

@ -57,45 +57,44 @@ describe('hydration', () => {
compileOptions.dev = config.dev; compileOptions.dev = config.dev;
compileOptions.hydrate = true; compileOptions.hydrate = true;
return env() const window = env();
.then(window => {
global.window = window; try {
global.window = window;
let SvelteComponent;
let SvelteComponent;
try {
SvelteComponent = require(`${cwd}/main.html`).default; try {
} catch (err) { SvelteComponent = require(`${cwd}/main.html`).default;
throw err; } catch (err) {
}
const target = window.document.body;
target.innerHTML = fs.readFileSync(`${cwd}/_before.html`, 'utf-8');
const snapshot = config.snapshot ? config.snapshot(target) : {};
const component = new SvelteComponent({
target,
hydrate: true,
data: config.data
});
assert.htmlEqual(target.innerHTML, fs.readFileSync(`${cwd}/_after.html`, 'utf-8'));
if (config.test) {
config.test(assert, target, snapshot, component, window);
} else {
component.destroy();
assert.equal(target.innerHTML, '');
}
})
.catch(err => {
showOutput(cwd, { shared: 'svelte/shared.js' }); // eslint-disable-line no-console
throw err; throw err;
}) }
.then(() => {
if (config.show) showOutput(cwd, { shared: 'svelte/shared.js' }); const target = window.document.body;
target.innerHTML = fs.readFileSync(`${cwd}/_before.html`, 'utf-8');
const snapshot = config.snapshot ? config.snapshot(target) : {};
const component = new SvelteComponent({
target,
hydrate: true,
data: config.data
}); });
assert.htmlEqual(target.innerHTML, fs.readFileSync(`${cwd}/_after.html`, 'utf-8'));
if (config.test) {
config.test(assert, target, snapshot, component, window);
} else {
component.destroy();
assert.equal(target.innerHTML, '');
}
} catch (err) {
showOutput(cwd, { shared: 'svelte/shared.js' }); // eslint-disable-line no-console
throw err;
}
if (config.show) showOutput(cwd, { shared: 'svelte/shared.js' });
}); });
} }

@ -103,111 +103,110 @@ describe("runtime", () => {
let unintendedError = null; let unintendedError = null;
return env() const window = env();
.then(window => {
// set of hacks to support transition tests try {
transitionManager.running = false; // set of hacks to support transition tests
transitionManager.transitions = []; transitionManager.running = false;
transitionManager.transitions = [];
const raf = {
time: 0, const raf = {
callback: null, time: 0,
tick: now => { callback: null,
raf.time = now; tick: now => {
if (raf.callback) raf.callback(); raf.time = now;
if (raf.callback) raf.callback();
}
};
window.performance = { now: () => raf.time };
global.requestAnimationFrame = cb => {
let called = false;
raf.callback = () => {
if (!called) {
called = true;
cb();
} }
}; };
window.performance = { now: () => raf.time }; };
global.requestAnimationFrame = cb => {
let called = false;
raf.callback = () => {
if (!called) {
called = true;
cb();
}
};
};
global.window = window; global.window = window;
try { try {
SvelteComponent = require(`./samples/${dir}/main.html`).default; SvelteComponent = require(`./samples/${dir}/main.html`).default;
} catch (err) { } catch (err) {
showOutput(cwd, { shared }); // eslint-disable-line no-console showOutput(cwd, { shared }); // eslint-disable-line no-console
throw err; throw err;
} }
let usedObjectAssign = false; let usedObjectAssign = false;
Object.assign = () => { Object.assign = () => {
usedObjectAssign = true; usedObjectAssign = true;
}; };
global.window = window; global.window = window;
// Put the constructor on window for testing // Put the constructor on window for testing
window.SvelteComponent = SvelteComponent; window.SvelteComponent = SvelteComponent;
const target = window.document.querySelector("main"); const target = window.document.querySelector("main");
const warnings = []; const warnings = [];
const warn = console.warn; const warn = console.warn;
console.warn = warning => { console.warn = warning => {
warnings.push(warning); warnings.push(warning);
}; };
const component = new SvelteComponent({ const component = new SvelteComponent({
target, target,
hydrate, hydrate,
data: config.data data: config.data
}); });
Object.assign = Object_assign; Object.assign = Object_assign;
console.warn = warn; console.warn = warn;
if (config.error) { if (config.error) {
unintendedError = true; unintendedError = true;
throw new Error("Expected a runtime error"); throw new Error("Expected a runtime error");
} }
if (config.warnings) { if (config.warnings) {
assert.deepEqual(warnings, config.warnings); assert.deepEqual(warnings, config.warnings);
} else if (warnings.length) { } else if (warnings.length) {
unintendedError = true; unintendedError = true;
throw new Error("Received unexpected warnings"); throw new Error("Received unexpected warnings");
} }
if (config.html) { if (config.html) {
assert.htmlEqual(target.innerHTML, config.html); assert.htmlEqual(target.innerHTML, config.html);
} }
if (config.test) { if (config.test) {
config.test(assert, component, target, window, raf); config.test(assert, component, target, window, raf);
} else { } else {
component.destroy(); component.destroy();
assert.equal(target.innerHTML, ""); assert.equal(target.innerHTML, "");
} }
if (usedObjectAssign) { if (usedObjectAssign) {
throw new Error( throw new Error(
"cannot use Object.assign in generated code, as it is not supported everywhere" "cannot use Object.assign in generated code, as it is not supported everywhere"
); );
} }
}) } catch (err) {
.catch(err => { Object.assign = Object_assign;
Object.assign = Object_assign;
if (config.error && !unintendedError) {
if (config.error && !unintendedError) { config.error(assert, err);
config.error(assert, err); } else {
} else { failed.add(dir);
failed.add(dir); showOutput(cwd, { shared }); // eslint-disable-line no-console
showOutput(cwd, { shared }); // eslint-disable-line no-console throw err;
throw err; }
} }
})
.then(() => { if (config.show) showOutput(cwd, { shared });
if (config.show) showOutput(cwd, { shared });
});
}); });
} }

@ -6,6 +6,10 @@
version "2.2.41" version "2.2.41"
resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-2.2.41.tgz#e27cf0817153eb9f2713b2d3f6c68f1e1c3ca608" resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-2.2.41.tgz#e27cf0817153eb9f2713b2d3f6c68f1e1c3ca608"
"@types/node@^6.0.46":
version "6.0.85"
resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.85.tgz#ec02bfe54a61044f2be44f13b389c6a0e8ee05ae"
"@types/node@^8.0.17": "@types/node@^8.0.17":
version "8.0.17" version "8.0.17"
resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.17.tgz#677bc8c118cfb76013febb62ede1f31d2c7222a1" resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.17.tgz#677bc8c118cfb76013febb62ede1f31d2c7222a1"
@ -1958,9 +1962,9 @@ jschardet@^1.4.2:
version "1.5.0" version "1.5.0"
resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.5.0.tgz#a61f310306a5a71188e1b1acd08add3cfbb08b1e" resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.5.0.tgz#a61f310306a5a71188e1b1acd08add3cfbb08b1e"
jsdom@^9.9.1: jsdom@^11.1.0:
version "9.12.0" version "11.1.0"
resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-9.12.0.tgz#e8c546fffcb06c00d4833ca84410fed7f8a097d4" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.1.0.tgz#6c48d7a48ffc5c300283c312904d15da8360509b"
dependencies: dependencies:
abab "^1.0.3" abab "^1.0.3"
acorn "^4.0.4" acorn "^4.0.4"
@ -1971,15 +1975,17 @@ jsdom@^9.9.1:
cssstyle ">= 0.2.37 < 0.3.0" cssstyle ">= 0.2.37 < 0.3.0"
escodegen "^1.6.1" escodegen "^1.6.1"
html-encoding-sniffer "^1.0.1" html-encoding-sniffer "^1.0.1"
nwmatcher ">= 1.3.9 < 2.0.0" nwmatcher "^1.4.1"
parse5 "^1.5.1" parse5 "^3.0.2"
pn "^1.0.0"
request "^2.79.0" request "^2.79.0"
request-promise-native "^1.0.3"
sax "^1.2.1" sax "^1.2.1"
symbol-tree "^3.2.1" symbol-tree "^3.2.1"
tough-cookie "^2.3.2" tough-cookie "^2.3.2"
webidl-conversions "^4.0.0" webidl-conversions "^4.0.0"
whatwg-encoding "^1.0.1" whatwg-encoding "^1.0.1"
whatwg-url "^4.3.0" whatwg-url "^6.1.0"
xml-name-validator "^2.0.1" xml-name-validator "^2.0.1"
jsesc@^1.3.0: jsesc@^1.3.0:
@ -2137,6 +2143,10 @@ lodash.keys@^3.0.0:
lodash.isarguments "^3.0.0" lodash.isarguments "^3.0.0"
lodash.isarray "^3.0.0" lodash.isarray "^3.0.0"
lodash.sortby@^4.7.0:
version "4.7.0"
resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
lodash@^4.0.0, lodash@^4.13.1, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0: lodash@^4.0.0, lodash@^4.13.1, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0:
version "4.17.4" version "4.17.4"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
@ -2362,9 +2372,9 @@ number-is-nan@^1.0.0:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
"nwmatcher@>= 1.3.9 < 2.0.0": nwmatcher@^1.4.1:
version "1.3.9" version "1.4.1"
resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.3.9.tgz#8bab486ff7fa3dfd086656bbe8b17116d3692d2a" resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.1.tgz#7ae9b07b0ea804db7e25f05cb5fe4097d4e4949f"
nyc@^11.1.0: nyc@^11.1.0:
version "11.1.0" version "11.1.0"
@ -2495,9 +2505,11 @@ parse-json@^2.2.0:
dependencies: dependencies:
error-ex "^1.2.0" error-ex "^1.2.0"
parse5@^1.5.1: parse5@^3.0.2:
version "1.5.1" version "3.0.2"
resolved "https://registry.yarnpkg.com/parse5/-/parse5-1.5.1.tgz#9b7f3b0de32be78dc2401b17573ccaf0f6f59d94" resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.2.tgz#05eff57f0ef4577fb144a79f8b9a967a6cc44510"
dependencies:
"@types/node" "^6.0.46"
path-exists@^2.0.0: path-exists@^2.0.0:
version "2.1.0" version "2.1.0"
@ -2573,6 +2585,10 @@ pluralize@^4.0.0:
version "4.0.0" version "4.0.0"
resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-4.0.0.tgz#59b708c1c0190a2f692f1c7618c446b052fd1762" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-4.0.0.tgz#59b708c1c0190a2f692f1c7618c446b052fd1762"
pn@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/pn/-/pn-1.0.0.tgz#1cf5a30b0d806cd18f88fc41a6b5d4ad615b3ba9"
prelude-ls@~1.1.2: prelude-ls@~1.1.2:
version "1.1.2" version "1.1.2"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
@ -2748,6 +2764,20 @@ repeating@^2.0.0:
dependencies: dependencies:
is-finite "^1.0.0" is-finite "^1.0.0"
request-promise-core@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6"
dependencies:
lodash "^4.13.1"
request-promise-native@^1.0.3:
version "1.0.4"
resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.4.tgz#86988ec8eee408e45579fce83bfd05b3adf9a155"
dependencies:
request-promise-core "1.1.1"
stealthy-require "^1.1.0"
tough-cookie ">=2.3.0"
request@2.79.0: request@2.79.0:
version "2.79.0" version "2.79.0"
resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de"
@ -3060,6 +3090,10 @@ sshpk@^1.7.0:
jsbn "~0.1.0" jsbn "~0.1.0"
tweetnacl "~0.14.0" tweetnacl "~0.14.0"
stealthy-require@^1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b"
string-width@^1.0.1, string-width@^1.0.2: string-width@^1.0.1, string-width@^1.0.2:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
@ -3199,7 +3233,7 @@ to-fast-properties@^1.0.1:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320"
tough-cookie@^2.3.2, tough-cookie@~2.3.0: tough-cookie@>=2.3.0, tough-cookie@^2.3.2, tough-cookie@~2.3.0:
version "2.3.2" version "2.3.2"
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a"
dependencies: dependencies:
@ -3295,11 +3329,7 @@ vlq@^0.2.1:
version "0.2.2" version "0.2.2"
resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.2.tgz#e316d5257b40b86bb43cb8d5fea5d7f54d6b0ca1" resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.2.tgz#e316d5257b40b86bb43cb8d5fea5d7f54d6b0ca1"
webidl-conversions@^3.0.0: webidl-conversions@^4.0.0, webidl-conversions@^4.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
webidl-conversions@^4.0.0:
version "4.0.1" version "4.0.1"
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.1.tgz#8015a17ab83e7e1b311638486ace81da6ce206a0" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.1.tgz#8015a17ab83e7e1b311638486ace81da6ce206a0"
@ -3309,12 +3339,13 @@ whatwg-encoding@^1.0.1:
dependencies: dependencies:
iconv-lite "0.4.13" iconv-lite "0.4.13"
whatwg-url@^4.3.0: whatwg-url@^6.1.0:
version "4.7.1" version "6.1.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.7.1.tgz#df4dc2e3f25a63b1fa5b32ed6d6c139577d690de" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.1.0.tgz#5fc8279b93d75483b9ced8b26239854847a18578"
dependencies: dependencies:
lodash.sortby "^4.7.0"
tr46 "~0.0.3" tr46 "~0.0.3"
webidl-conversions "^3.0.0" webidl-conversions "^4.0.1"
which-module@^2.0.0: which-module@^2.0.0:
version "2.0.0" version "2.0.0"

Loading…
Cancel
Save