diff --git a/mocha.coverage.opts b/mocha.coverage.opts index 9c3738a2df..5bf853ae30 100644 --- a/mocha.coverage.opts +++ b/mocha.coverage.opts @@ -1,4 +1,5 @@ ---require babel-register +--compilers ts-node/register +--require source-map-support/register +--full-trace --recursive -./**/__test__.js -test/*/index.js +test/test.js diff --git a/package.json b/package.json index 361cee6b23..a6ab14d77d 100644 --- a/package.json +++ b/package.json @@ -61,27 +61,28 @@ "node-resolve": "^1.3.3", "nyc": "^11.1.0", "prettier": "^1.7.0", + "reify": "^0.12.3", "rollup": "^0.48.2", "rollup-plugin-buble": "^0.15.0", "rollup-plugin-commonjs": "^8.0.2", "rollup-plugin-json": "^2.1.0", "rollup-plugin-node-resolve": "^3.0.0", + "rollup-plugin-replace": "^2.0.0", "rollup-plugin-typescript": "^0.8.1", "rollup-plugin-virtual": "^1.0.1", "rollup-watch": "^4.3.1", "source-map": "^0.5.6", "source-map-support": "^0.4.8", + "ts-node": "^3.3.0", "tslib": "^1.8.0", - "typescript": "^2.3.2" + "typescript": "^2.6.1" }, "nyc": { "include": [ - "src/**/*.js", + "compiler/svelte.js", "shared.js" ], - "exclude": [ - "src/**/__test__.js", - "src/shared/**" - ] + "sourceMap": true, + "instrument": true } } diff --git a/rollup.config.js b/rollup.config.js index eb3b683333..208c95df84 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,9 +1,11 @@ import path from 'path'; +import replace from 'rollup-plugin-replace'; import resolve from 'rollup-plugin-node-resolve'; import commonjs from 'rollup-plugin-commonjs'; import json from 'rollup-plugin-json'; import typescript from 'rollup-plugin-typescript'; import buble from 'rollup-plugin-buble'; +import pkg from './package.json'; const src = path.resolve('src'); @@ -27,6 +29,9 @@ export default [ } } }, + replace({ + __VERSION__: pkg.version + }), resolve(), commonjs(), json(), diff --git a/src/config.ts b/src/config.ts new file mode 100644 index 0000000000..e37ef1aaee --- /dev/null +++ b/src/config.ts @@ -0,0 +1 @@ +export const test = typeof process !== 'undefined' && process.env.TEST; \ No newline at end of file diff --git a/src/css/Stylesheet.ts b/src/css/Stylesheet.ts index c10f1938c6..cb83804f1d 100644 --- a/src/css/Stylesheet.ts +++ b/src/css/Stylesheet.ts @@ -322,7 +322,7 @@ export default class Stylesheet { leave: (node: Node) => { if (node.type === 'Rule' || node.type === 'Atrule') stack.pop(); - if (node.type === 'Atrule') currentAtrule = stack[stack.length - 1]; + if (node.type === 'Atrule') currentAtrule = stack[stack.length - 1]; } }); } else { diff --git a/src/generators/Generator.ts b/src/generators/Generator.ts index c57cee27c3..a8775d41b2 100644 --- a/src/generators/Generator.ts +++ b/src/generators/Generator.ts @@ -16,10 +16,9 @@ import clone from '../utils/clone'; import DomBlock from './dom/Block'; import SsrBlock from './server-side-rendering/Block'; import Stylesheet from '../css/Stylesheet'; +import { test } from '../config'; import { Node, GenerateOptions, Parsed, CompileOptions, CustomElementOptions } from '../interfaces'; -const test = typeof global !== 'undefined' && global.__svelte_test; - interface Computation { key: string; deps: string[] diff --git a/src/generators/dom/Block.ts b/src/generators/dom/Block.ts index e2d3ed7a55..51ce51c29f 100644 --- a/src/generators/dom/Block.ts +++ b/src/generators/dom/Block.ts @@ -202,7 +202,7 @@ export default class Block { } // minor hack – we need to ensure that any {{{triples}}} are detached first - this.builders.unmount.addBlockAtStart(this.builders.detachRaw); + this.builders.unmount.addBlockAtStart(this.builders.detachRaw.toString()); const properties = new CodeBuilder(); diff --git a/src/generators/dom/index.ts b/src/generators/dom/index.ts index 1cbf6132cf..f6c007c79d 100644 --- a/src/generators/dom/index.ts +++ b/src/generators/dom/index.ts @@ -14,11 +14,9 @@ import Generator from '../Generator'; import Stylesheet from '../../css/Stylesheet'; import preprocess from './preprocess'; import Block from './Block'; -import { version } from '../../../package.json'; +import { test } from '../../config'; import { Parsed, CompileOptions, Node } from '../../interfaces'; -const test = typeof global !== 'undefined' && global.__svelte_test; - export class DomGenerator extends Generator { blocks: (Block|string)[]; readonly: Set; @@ -167,9 +165,9 @@ export default function dom( builder.addBlock(block.toString()); }); - const sharedPath = options.shared === true + const sharedPath: string = options.shared === true ? 'svelte/shared.js' - : options.shared; + : options.shared || ''; const prototypeBase = `${name}.prototype` + @@ -444,7 +442,7 @@ export default function dom( ); return generator.generate(result, options, { - banner: `/* ${filename ? `${filename} ` : ``}generated by Svelte v${version} */`, + banner: `/* ${filename ? `${filename} ` : ``}generated by Svelte v${"__VERSION__"} */`, sharedPath, helpers, name, diff --git a/src/generators/dom/visitors/Element/meta/Window.ts b/src/generators/dom/visitors/Element/meta/Window.ts index ad23da6060..90bfff55c4 100644 --- a/src/generators/dom/visitors/Element/meta/Window.ts +++ b/src/generators/dom/visitors/Element/meta/Window.ts @@ -28,7 +28,7 @@ export default function visitWindow( node: Node ) { const events = {}; - const bindings = {}; + const bindings: Record = {}; node.attributes.forEach((attribute: Node) => { if (attribute.type === 'EventHandler') { diff --git a/src/generators/server-side-rendering/visitors/EachBlock.ts b/src/generators/server-side-rendering/visitors/EachBlock.ts index ae5c449b5a..59bd5fed0b 100644 --- a/src/generators/server-side-rendering/visitors/EachBlock.ts +++ b/src/generators/server-side-rendering/visitors/EachBlock.ts @@ -26,7 +26,7 @@ export default function visitEachBlock( contextDependencies.set(node.context, dependencies); if (node.destructuredContexts) { - for (const i = 0; i < node.destructuredContexts.length; i++) { + for (let i = 0; i < node.destructuredContexts.length; i += 1) { contexts.set(node.destructuredContexts[i], `${node.context}[${i}]`); contextDependencies.set(node.destructuredContexts[i], dependencies); } diff --git a/src/index.ts b/src/index.ts index c77c84baed..529be61618 100644 --- a/src/index.ts +++ b/src/index.ts @@ -3,10 +3,11 @@ import validate from './validate/index'; import generate from './generators/dom/index'; import generateSSR from './generators/server-side-rendering/index'; import { assign } from './shared/index.js'; -import { version } from '../package.json'; import Stylesheet from './css/Stylesheet'; import { Parsed, CompileOptions, Warning } from './interfaces'; +const version = '__VERSION__'; + function normalizeOptions(options: CompileOptions): CompileOptions { let normalizedOptions = assign({ generate: 'dom' }, options); const { onwarn, onerror } = normalizedOptions; diff --git a/src/interfaces.ts b/src/interfaces.ts index 2d876c6a9a..fff52e8da4 100644 --- a/src/interfaces.ts +++ b/src/interfaces.ts @@ -65,7 +65,7 @@ export interface GenerateOptions { name: string; format: ModuleFormat; banner?: string; - sharedPath?: string | boolean; + sharedPath?: string; helpers?: { name: string, alias: string }[]; } diff --git a/src/parse/index.ts b/src/parse/index.ts index b9748515e5..c725ab90c3 100644 --- a/src/parse/index.ts +++ b/src/parse/index.ts @@ -23,6 +23,8 @@ interface ParserOptions { filename?: string; } +type ParserState = (parser: Parser) => (ParserState | void); + export class Parser { readonly template: string; readonly filename?: string; @@ -59,7 +61,7 @@ export class Parser { this.stack.push(this.html); - let state = fragment; + let state: ParserState = fragment; while (this.index < this.template.length) { state = state(this) || fragment; @@ -94,7 +96,7 @@ export class Parser { return this.stack[this.stack.length - 1]; } - acornError(err: Error) { + acornError(err: any) { this.error(err.message.replace(/ \(\d+:\d+\)$/, ''), err.pos); } diff --git a/test/helpers.js b/test/helpers.js index 620e359096..cc90e1f9bd 100644 --- a/test/helpers.js +++ b/test/helpers.js @@ -8,11 +8,9 @@ import chalk from 'chalk'; // for coverage purposes, we need to test source files, // but for sanity purposes, we need to test dist files export function loadSvelte(test) { - if (test) global.__svelte_test = true; + process.env.TEST = test ? 'true' : ''; - const resolved = process.env.COVERAGE - ? require.resolve('../src/index.js') - : require.resolve('../compiler/svelte.js'); + const resolved = require.resolve('../compiler/svelte.js'); delete require.cache[resolved]; return require(resolved); diff --git a/test/server-side-rendering/index.js b/test/server-side-rendering/index.js index 0082934277..9b22a1cfc2 100644 --- a/test/server-side-rendering/index.js +++ b/test/server-side-rendering/index.js @@ -21,9 +21,7 @@ function tryToReadFile(file) { describe("ssr", () => { before(() => { - require(process.env.COVERAGE - ? "../../src/server-side-rendering/register.js" - : "../../ssr/register"); + require("../../ssr/register"); return setupHtmlEqual(); }); diff --git a/test/setup.js b/test/setup.js index f45953b026..8307fdd67f 100644 --- a/test/setup.js +++ b/test/setup.js @@ -4,6 +4,8 @@ const path = require('path'); require('console-group').install(); require('source-map-support').install(); +process.env.TEST = true; + require.extensions['.js'] = function(module, filename) { const exports = []; diff --git a/tsconfig.json b/tsconfig.json index 3c77c23370..8dc5a51c1d 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,5 @@ { "compilerOptions": { - "noImplicitAny": true, "diagnostics": true, "noImplicitThis": true, "noEmitOnError": true, diff --git a/yarn.lock b/yarn.lock index de6ba76ff2..ae736a946c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,12 +7,12 @@ resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-2.2.44.tgz#1d4a798e53f35212fd5ad4d04050620171cd5b5e" "@types/node@*", "@types/node@^8.0.17": - version "8.0.51" - resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.51.tgz#b31d716fb8d58eeb95c068a039b9b6292817d5fb" + version "8.0.53" + resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.53.tgz#396b35af826fa66aad472c8cb7b8d5e277f4e6d8" -"@types/node@^7.0.18": - version "7.0.46" - resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.46.tgz#c3dedd25558c676b3d6303e51799abb9c3f8f314" +"@types/node@^7.0.18", "@types/node@^7.0.48": + version "7.0.48" + resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.48.tgz#24bfdc0aa82e8f6dbd017159c58094a2e06d0abb" abab@^1.0.3: version "1.0.4" @@ -48,6 +48,10 @@ acorn@^5.0.0, acorn@^5.1.1, acorn@^5.1.2, acorn@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.2.1.tgz#317ac7821826c22c702d66189ab8359675f135d7" +acorn@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.1.2.tgz#911cb53e036807cf0fa778dc5d370fbd864246d7" + ajv-keywords@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" @@ -60,8 +64,8 @@ ajv@^4.9.1: json-stable-stringify "^1.0.1" ajv@^5.1.0, ajv@^5.2.3, ajv@^5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.3.0.tgz#4414ff74a50879c208ee5fdc826e32c303549eda" + version "5.4.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.4.0.tgz#32d1cf08dbc80c432f426f12e10b2511f6b46474" dependencies: co "^4.6.0" fast-deep-equal "^1.0.0" @@ -294,8 +298,8 @@ bcrypt-pbkdf@^1.0.0: tweetnacl "^0.14.3" binary-extensions@^1.0.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.10.0.tgz#9aeb9a6c5e88638aad171e167f5900abe24835d0" + version "1.11.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" block-stream@*: version "0.0.9" @@ -336,6 +340,10 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" +browser-process-hrtime@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz#425d68a58d3447f02a04aa894187fce8af8b7b8e" + browser-resolve@^1.11.0: version "1.11.2" resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" @@ -432,6 +440,10 @@ chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0: escape-string-regexp "^1.0.5" supports-color "^4.0.0" +chardet@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.0.tgz#0bbe1355ac44d7a3ed4a925707c4ef70f8190f6c" + chokidar@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" @@ -526,8 +538,10 @@ commander@2.9.0: graceful-readlink ">= 1.0.0" commander@^2.9.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" + version "2.12.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.0.tgz#2f13615c39c687a77926aa68ef25c099db1e72fb" + dependencies: + "@types/node" "^7.0.48" commondir@^1.0.1: version "1.0.1" @@ -712,13 +726,17 @@ detect-indent@^4.0.0: repeating "^2.0.0" detect-libc@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.2.tgz#71ad5d204bf17a6a6ca8f450c61454066ef461e1" + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" diff@3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" +diff@^3.1.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c" + doctrine@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" @@ -953,7 +971,7 @@ estree-walker@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.3.1.tgz#e6b1a51cf7292524e7237c312e5fe6660c1ce1aa" -estree-walker@^0.5.0: +estree-walker@^0.5.0, estree-walker@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.5.1.tgz#64fc375053abc6f57d73e9bd2f004644ad3c5854" @@ -990,11 +1008,11 @@ extend@~3.0.0, extend@~3.0.1: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" external-editor@^2.0.4: - version "2.0.5" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.0.5.tgz#52c249a3981b9ba187c7cacf5beb50bf1d91a6bc" + version "2.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" dependencies: + chardet "^0.4.0" iconv-lite "^0.4.17" - jschardet "^1.4.2" tmp "^0.0.33" extglob@^0.3.1: @@ -1380,6 +1398,12 @@ home-path@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/home-path/-/home-path-1.0.5.tgz#788b29815b12d53bacf575648476e6f9041d133f" +homedir-polyfill@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" + dependencies: + parse-passwd "^1.0.0" + hosted-git-info@^2.1.4: version "2.5.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" @@ -1447,8 +1471,8 @@ inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" ini@~1.3.0: - version "1.3.4" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" inquirer@^3.0.6: version "3.3.0" @@ -1698,25 +1722,22 @@ jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" -jschardet@^1.4.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/jschardet/-/jschardet-1.6.0.tgz#c7d1a71edcff2839db2f9ec30fc5d5ebd3c1a678" - jsdom@^11.1.0: - version "11.3.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.3.0.tgz#7b2dfe6227d014084d80f6b3e98fa1e4cef199e7" + version "11.4.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.4.0.tgz#a3941a9699cbb0d61f8ab86f6f28f4ad5ea60d04" dependencies: abab "^1.0.3" acorn "^5.1.2" acorn-globals "^4.0.0" array-equal "^1.0.0" + browser-process-hrtime "^0.1.2" content-type-parser "^1.0.1" cssom ">= 0.3.2 < 0.4.0" cssstyle ">= 0.2.37 < 0.3.0" domexception "^1.0.0" escodegen "^1.9.0" html-encoding-sniffer "^1.0.1" - nwmatcher "^1.4.1" + nwmatcher "^1.4.3" parse5 "^3.0.2" pn "^1.0.0" request "^2.83.0" @@ -1954,6 +1975,10 @@ magic-string@^0.22.3, magic-string@^0.22.4: dependencies: vlq "^0.2.1" +make-error@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.0.tgz#52ad3a339ccf10ce62b4040b708fe707244b8b96" + map-obj@^1.0.0, map-obj@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" @@ -2049,6 +2074,18 @@ minimist@~0.0.1: version "0.0.10" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" +minipass@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.2.1.tgz#5ada97538b1027b4cf7213432428578cb564011f" + dependencies: + yallist "^3.0.0" + +minizlib@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.0.4.tgz#8ebb51dd8bbe40b0126b5633dbb36b284a2f523c" + dependencies: + minipass "^2.2.1" + minstache@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minstache/-/minstache-1.2.0.tgz#ff1cc403ac2844f68dbf18c662129be7eb0efc41" @@ -2093,8 +2130,8 @@ mute-stream@0.0.7: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" nan@^2.3.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46" + version "2.8.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" natural-compare@^1.4.0: version "1.4.0" @@ -2198,7 +2235,7 @@ number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" -nwmatcher@^1.4.1: +nwmatcher@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.3.tgz#64348e3b3d80f035b40ac11563d278f8b72db89c" @@ -2335,6 +2372,10 @@ parse-json@^2.2.0: dependencies: error-ex "^1.2.0" +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + parse5@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c" @@ -2572,6 +2613,14 @@ regex-cache@^0.4.2: dependencies: is-equal-shallow "^0.1.3" +reify@^0.12.3: + version "0.12.3" + resolved "https://registry.yarnpkg.com/reify/-/reify-0.12.3.tgz#b1aa0c196e7dc7fb7e9ad42b87c1e10fe7f97f97" + dependencies: + acorn "~5.1.1" + minizlib "^1.0.3" + semver "^5.3.0" + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -2771,6 +2820,14 @@ rollup-plugin-node-resolve@^3.0.0: is-module "^1.0.0" resolve "^1.1.6" +rollup-plugin-replace@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/rollup-plugin-replace/-/rollup-plugin-replace-2.0.0.tgz#19074089c8ed57184b8cc64e967a03d095119277" + dependencies: + magic-string "^0.22.4" + minimatch "^3.0.2" + rollup-pluginutils "^2.0.1" + rollup-plugin-typescript@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/rollup-plugin-typescript/-/rollup-plugin-typescript-0.8.1.tgz#2ff7eecc21cf6bb2b43fc27e5b688952ce71924a" @@ -2897,7 +2954,7 @@ sntp@2.x.x: dependencies: hoek "4.x.x" -source-map-support@^0.4.8: +source-map-support@^0.4.0, source-map-support@^0.4.8: version "0.4.18" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" dependencies: @@ -3031,7 +3088,7 @@ strip-indent@^1.0.1: dependencies: get-stdin "^4.0.1" -strip-json-comments@~2.0.1: +strip-json-comments@^2.0.0, strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" @@ -3174,6 +3231,28 @@ tryit@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" +ts-node@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-3.3.0.tgz#c13c6a3024e30be1180dd53038fc209289d4bf69" + dependencies: + arrify "^1.0.0" + chalk "^2.0.0" + diff "^3.1.0" + make-error "^1.1.1" + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map-support "^0.4.0" + tsconfig "^6.0.0" + v8flags "^3.0.0" + yn "^2.0.0" + +tsconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-6.0.0.tgz#6b0e8376003d7af1864f8df8f89dd0059ffcd032" + dependencies: + strip-bom "^3.0.0" + strip-json-comments "^2.0.0" + tslib@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.8.0.tgz#dc604ebad64bcbf696d613da6c954aa0e7ea1eb6" @@ -3206,7 +3285,7 @@ typescript@^1.8.9: version "1.8.10" resolved "https://registry.yarnpkg.com/typescript/-/typescript-1.8.10.tgz#b475d6e0dff0bf50f296e5ca6ef9fbb5c7320f1e" -typescript@^2.3.2: +typescript@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.6.1.tgz#ef39cdea27abac0b500242d6726ab90e0c846631" @@ -3239,6 +3318,12 @@ uuid@^3.0.0, uuid@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" +v8flags@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.0.1.tgz#dce8fc379c17d9f2c9e9ed78d89ce00052b1b76b" + dependencies: + homedir-polyfill "^1.0.1" + validate-npm-package-license@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" @@ -3355,6 +3440,10 @@ yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" +yallist@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" + yargs-parser@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-8.0.0.tgz#21d476330e5a82279a4b881345bf066102e219c6" @@ -3392,3 +3481,7 @@ yauzl@2.4.1: resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005" dependencies: fd-slicer "~1.0.1" + +yn@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a"