From a6572ce6ce47c64c1ce96ae302d77bdeb738fc08 Mon Sep 17 00:00:00 2001 From: Luke Sheard Date: Wed, 1 May 2019 06:06:35 +0100 Subject: [PATCH] internal: remove usage of hand crafted webpack typings (#927) * internal: remove usage of hand crafted webpack typings * patch: fix duplicate copies of node typings * update webpack typings and removed patched versions * prepare 5.4.5 release --- CHANGELOG.md | 4 + examples/react-babel-karma-gulp/yarn.lock | 5 +- examples/thread-loader/yarn.lock | 5 +- package.json | 5 +- src/after-compile.ts | 45 ++-- src/compilerSetup.ts | 5 +- src/config.ts | 6 +- src/constants.ts | 4 - src/index.ts | 28 ++- src/instances.ts | 6 +- src/interfaces.ts | 192 +----------------- src/logger.ts | 2 +- src/resolver.ts | 6 +- src/servicesHost.ts | 8 +- src/utils.ts | 8 +- src/watch-run.ts | 5 +- test/execution-tests/option-context/yarn.lock | 7 +- yarn.lock | 38 +++- 18 files changed, 114 insertions(+), 265 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4e03bf2f6..3193e0a67 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## v5.4.5 + +* [use @types/webpack for loader typings](https://github.com/TypeStrong/ts-loader/pull/927) - thanks @LukeSheard! + ## v5.4.4 * [refactor: add common appendTsTsxSuffixesIfRequired function to instance](https://github.com/TypeStrong/ts-loader/pull/924) - thanks @johnnyreilly! diff --git a/examples/react-babel-karma-gulp/yarn.lock b/examples/react-babel-karma-gulp/yarn.lock index 49d1e8c15..379b162cb 100644 --- a/examples/react-babel-karma-gulp/yarn.lock +++ b/examples/react-babel-karma-gulp/yarn.lock @@ -22,8 +22,9 @@ resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.6.0.tgz#997b41a27752b4850af2683bc4a8d8222c25bd02" "@types/node@*": - version "8.0.45" - resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.45.tgz#89fad82439d5624e1b5c6b42f0f5d85136dcdecc" + version "11.13.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-11.13.8.tgz#e5d71173c95533be9842b2c798978f095f912aab" + integrity sha512-szA3x/3miL90ZJxUCzx9haNbK5/zmPieGraZEe4WI+3srN0eGLiT22NXeMHmyhNEopn+IrxqMc7wdVwvPl8meg== "@types/react-bootstrap@0.31.6": version "0.31.6" diff --git a/examples/thread-loader/yarn.lock b/examples/thread-loader/yarn.lock index 7e54ec4ab..f6ec7ee10 100644 --- a/examples/thread-loader/yarn.lock +++ b/examples/thread-loader/yarn.lock @@ -3,8 +3,9 @@ "@types/node@*": - version "9.4.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-9.4.6.tgz#d8176d864ee48753d053783e4e463aec86b8d82e" + version "11.13.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-11.13.8.tgz#e5d71173c95533be9842b2c798978f095f912aab" + integrity sha512-szA3x/3miL90ZJxUCzx9haNbK5/zmPieGraZEe4WI+3srN0eGLiT22NXeMHmyhNEopn+IrxqMc7wdVwvPl8meg== abbrev@1: version "1.1.1" diff --git a/package.json b/package.json index b2116d1c3..654a4e93b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ts-loader", - "version": "5.4.4", + "version": "5.4.5", "description": "TypeScript loader for webpack", "main": "index.js", "types": "dist/types/index.d.ts", @@ -59,8 +59,9 @@ }, "devDependencies": { "@types/micromatch": "^3.1.0", - "@types/node": "^10.0.0", + "@types/node": "*", "@types/semver": "^5.4.0", + "@types/webpack": "^4.4.29", "babel": "^6.0.0", "babel-core": "^6.0.0", "babel-loader": "^7.0.0", diff --git a/src/after-compile.ts b/src/after-compile.ts index 596c22cd9..fc88386ba 100644 --- a/src/after-compile.ts +++ b/src/after-compile.ts @@ -1,4 +1,5 @@ import * as path from 'path'; +import * as webpack from 'webpack'; import * as constants from './constants'; import { getEmitOutput } from './instances'; @@ -6,7 +7,6 @@ import { TSFile, TSFiles, TSInstance, - WebpackCompilation, WebpackError, WebpackModule } from './interfaces'; @@ -23,7 +23,10 @@ export function makeAfterCompile( let getCompilerOptionDiagnostics = true; let checkAllFilesForErrors = true; - return (compilation: WebpackCompilation, callback: () => void) => { + return ( + compilation: webpack.compilation.Compilation, + callback: () => void + ) => { // Don't add errors for child compilations if (compilation.compiler.isChild()) { callback(); @@ -76,7 +79,7 @@ export function makeAfterCompile( */ function provideCompilerOptionDiagnosticErrorsToWebpack( getCompilerOptionDiagnostics: boolean, - compilation: WebpackCompilation, + compilation: webpack.compilation.Compilation, instance: TSInstance, configFilePath: string | undefined ) { @@ -103,23 +106,25 @@ function provideCompilerOptionDiagnosticErrorsToWebpack( * this is used for quick-lookup when trying to find modules * based on filepath */ -function determineModules(compilation: WebpackCompilation) { - // TODO: Convert to reduce - const modules = new Map(); - compilation.modules.forEach(module => { - if (module.resource) { - const modulePath = path.normalize(module.resource); - const existingModules = modules.get(modulePath); - if (existingModules !== undefined) { - if (existingModules.indexOf(module) === -1) { - existingModules.push(module); +function determineModules(compilation: webpack.compilation.Compilation) { + return compilation.modules.reduce>( + (modules, module) => { + if (module.resource) { + const modulePath = path.normalize(module.resource); + const existingModules = modules.get(modulePath); + if (existingModules !== undefined) { + if (existingModules.indexOf(module) === -1) { + existingModules.push(module); + } + } else { + modules.set(modulePath, [module]); } - } else { - modules.set(modulePath, [module]); } - } - }); - return modules; + + return modules; + }, + new Map() + ); } function determineFilesToCheckForErrors( @@ -163,7 +168,7 @@ function determineFilesToCheckForErrors( function provideErrorsToWebpack( filesToCheckForErrors: TSFiles, filesWithErrors: TSFiles, - compilation: WebpackCompilation, + compilation: webpack.compilation.Compilation, modules: Map, instance: TSInstance ) { @@ -255,7 +260,7 @@ function provideErrorsToWebpack( function provideDeclarationFilesToWebpack( filesToCheckForErrors: TSFiles, instance: TSInstance, - compilation: WebpackCompilation + compilation: webpack.compilation.Compilation ) { for (const filePath of filesToCheckForErrors.keys()) { if (filePath.match(constants.tsTsxRegex) === null) { diff --git a/src/compilerSetup.ts b/src/compilerSetup.ts index 31dd8ec19..e0877dd63 100644 --- a/src/compilerSetup.ts +++ b/src/compilerSetup.ts @@ -1,7 +1,6 @@ import * as semver from 'semver'; import * as typescript from 'typescript'; -import * as constants from './constants'; import { LoaderOptions } from './interfaces'; import * as logger from './logger'; @@ -66,9 +65,9 @@ export function getCompilerOptions( if ( compilerOptions.module === undefined && (compilerOptions.target !== undefined && - compilerOptions.target < constants.ScriptTargetES2015) + compilerOptions.target < typescript.ScriptTarget.ES2015) ) { - compilerOptions.module = constants.ModuleKindCommonJs; + compilerOptions.module = typescript.ModuleKind.CommonJS; } return compilerOptions; diff --git a/src/config.ts b/src/config.ts index 7993b20b7..0fb4a556a 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1,7 +1,9 @@ import { Chalk } from 'chalk'; import * as path from 'path'; import * as typescript from 'typescript'; -import { LoaderOptions, Webpack, WebpackError } from './interfaces'; +import * as webpack from 'webpack'; + +import { LoaderOptions, WebpackError } from './interfaces'; import * as logger from './logger'; import { formatErrors } from './utils'; @@ -13,7 +15,7 @@ interface ConfigFile { export function getConfigFile( compiler: typeof typescript, colors: Chalk, - loader: Webpack, + loader: webpack.loader.LoaderContext, loaderOptions: LoaderOptions, compilerCompatible: boolean, log: logger.Logger, diff --git a/src/constants.ts b/src/constants.ts index 71f565d08..eb41a5ae3 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -7,10 +7,6 @@ export const LineFeed = '\n'; export const CarriageReturnLineFeedCode = 0; export const LineFeedCode = 1; -export const ScriptTargetES2015 = 2; - -export const ModuleKindCommonJs = 1; - export const extensionRegex = /\.[^.]+$/; export const tsxRegex = /\.tsx$/i; export const tsTsxRegex = /\.ts(x?)$/i; diff --git a/src/index.ts b/src/index.ts index 5d2d25c0d..1d5351b5f 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,18 +1,16 @@ import * as loaderUtils from 'loader-utils'; import * as path from 'path'; import * as typescript from 'typescript'; +import * as webpack from 'webpack'; import * as constants from './constants'; import { getEmitOutput, getTypeScriptInstance } from './instances'; import { - AsyncCallback, - Compiler, LoaderOptions, LoaderOptionsCache, LogLevel, TSFile, - TSInstance, - Webpack + TSInstance } from './interfaces'; import { appendSuffixesIfMatch, @@ -23,16 +21,16 @@ import { validateSourceMapOncePerProject } from './utils'; -const webpackInstances: Compiler[] = []; +const webpackInstances: webpack.Compiler[] = []; const loaderOptionsCache: LoaderOptionsCache = {}; /** * The entry point for ts-loader */ -function loader(this: Webpack, contents: string) { +function loader(this: webpack.loader.LoaderContext, contents: string) { // tslint:disable-next-line:no-unused-expression strict-boolean-expressions this.cacheable && this.cacheable(); - const callback = this.async(); + const callback = this.async() as webpack.loader.loaderCallback; const options = getLoaderOptions(this); const instanceOrError = getTypeScriptInstance(options, this); @@ -51,9 +49,9 @@ function loader(this: Webpack, contents: string) { } function successLoader( - loaderContext: Webpack, + loaderContext: webpack.loader.LoaderContext, contents: string, - callback: AsyncCallback, + callback: webpack.loader.loaderCallback, options: LoaderOptions, instance: TSInstance ) { @@ -157,10 +155,10 @@ function makeSourceMapAndFinish( outputText: string | undefined, filePath: string, contents: string, - loaderContext: Webpack, + loaderContext: webpack.loader.LoaderContext, options: LoaderOptions, fileVersion: number, - callback: AsyncCallback + callback: webpack.loader.loaderCallback ) { if (outputText === null || outputText === undefined) { const additionalGuidance = @@ -198,7 +196,7 @@ function makeSourceMapAndFinish( * either retrieves loader options from the cache * or creates them, adds them to the cache and returns */ -function getLoaderOptions(loaderContext: Webpack) { +function getLoaderOptions(loaderContext: webpack.loader.LoaderContext) { // differentiate the TypeScript instance based on the webpack instance let webpackIndex = webpackInstances.indexOf(loaderContext._compiler); if (webpackIndex === -1) { @@ -390,7 +388,7 @@ function getEmit( rawFilePath: string, filePath: string, instance: TSInstance, - loaderContext: Webpack + loaderContext: webpack.loader.LoaderContext ) { const outputFiles = getEmitOutput(instance, filePath); @@ -460,7 +458,7 @@ function getTranspilationEmit( fileName: string, contents: string, instance: TSInstance, - loaderContext: Webpack + loaderContext: webpack.loader.LoaderContext ) { const { outputText, @@ -495,7 +493,7 @@ function makeSourceMap( outputText: string, filePath: string, contents: string, - loaderContext: Webpack + loaderContext: webpack.loader.LoaderContext ) { if (sourceMapText === undefined) { return { output: outputText, sourceMap: undefined }; diff --git a/src/instances.ts b/src/instances.ts index fd1f53d8f..4cbe64642 100644 --- a/src/instances.ts +++ b/src/instances.ts @@ -2,6 +2,7 @@ import chalk, { Chalk } from 'chalk'; import * as fs from 'fs'; import * as path from 'path'; import * as typescript from 'typescript'; +import * as webpack from 'webpack'; import { makeAfterCompile } from './after-compile'; import { getCompiler, getCompilerOptions } from './compilerSetup'; @@ -13,7 +14,6 @@ import { TSFiles, TSInstance, TSInstances, - Webpack, WebpackError } from './interfaces'; import * as logger from './logger'; @@ -38,7 +38,7 @@ const instances = {} as TSInstances; */ export function getTypeScriptInstance( loaderOptions: LoaderOptions, - loader: Webpack + loader: webpack.loader.LoaderContext ): { instance?: TSInstance; error?: WebpackError } { if (instances.hasOwnProperty(loaderOptions.instance)) { const instance = instances[loaderOptions.instance]; @@ -67,7 +67,7 @@ export function getTypeScriptInstance( function successfulTypeScriptInstance( loaderOptions: LoaderOptions, - loader: Webpack, + loader: webpack.loader.LoaderContext, log: logger.Logger, colors: Chalk, compiler: typeof typescript, diff --git a/src/interfaces.ts b/src/interfaces.ts index d3bd4d4fb..f5de787fe 100644 --- a/src/interfaces.ts +++ b/src/interfaces.ts @@ -1,12 +1,7 @@ -import * as typescript from 'typescript'; export { ModuleResolutionHost } from 'typescript'; -import { Chalk } from 'chalk'; +import * as typescript from 'typescript'; -export interface SourceMap { - sources: any[]; - file: string; - sourcesContent: string[]; -} +import { Chalk } from 'chalk'; export interface ErrorInfo { code: number; @@ -18,113 +13,6 @@ export interface ErrorInfo { context: string; } -export type AsyncCallback = ( - err: Error | WebpackError | null, - source?: string, - map?: string -) => void; - -/** - * Details here: https://webpack.github.io/docs/loaders.html#loader-context - */ -export interface Webpack { - _compiler: Compiler; - _module: WebpackModule; - /** - * Make this loader result cacheable. By default it’s not cacheable. - * - * A cacheable loader must have a deterministic result, when inputs and dependencies haven’t changed. This means the loader shouldn’t have other dependencies than specified with this.addDependency. Most loaders are deterministic and cacheable. - */ - cacheable: () => void; - /** - * The directory of the module. Can be used as context for resolving other stuff. - */ - context: string; - /** - * The root directory of the Webpack project. - * Starting with webpack 4, the formerly `this.options.context` is provided as `this.rootContext`. - */ - rootContext: string; - /** - * The resolved request string. - * eg: "/abc/loader1.js?xyz!/abc/node_modules/loader2/index.js!/abc/resource.js?rrr" - */ - request: string; - /** - * The query of the request for the current loader. - */ - query: string; - /** - * A data object shared between the pitch and the normal phase. - */ - data: Object; - async: () => AsyncCallback; - /** - * The resource part of the request, including query. - * eg: "/abc/resource.js?rrr" - */ - resource: string; - /** - * The resource file. - * eg: "/abc/resource.js" - */ - resourcePath: string; - /** - * The query of the resource. - * eg: "?rrr" - */ - resourceQuery: string; - /** - * Resolve a request like a require expression. - */ - resolve: ( - context: string, - request: string, - callback: (err: Error, result: string) => void - ) => void; - /** - * Resolve a request like a require expression. - */ - resolveSync: (context: string, request: string) => string; - /** - * Add a file as dependency of the loader result in order to make them watchable. - */ - addDependency: (file: string) => void; - /** - * Add a directory as dependency of the loader result. - */ - addContextDependency: (directory: string) => void; - /** - * Remove all dependencies of the loader result. Even initial dependencies and these of other loaders. Consider using pitch. - */ - clearDependencies: () => void; - /** - * Emit a warning. - */ - emitWarning: (message: Error) => void; - /** - * Emit an error. - */ - emitError: (message: Error) => void; - /** - * Emit a file. This is webpack-specific - */ - emitFile: (fileName: string, text: string) => void; // unused -} - -export interface Compiler { - plugin: (name: string, callback: Function) => void; - - hooks: any; // TODO: Define this - - /** - * The options passed to the Compiler. - */ - options: { - resolve: Resolve; - }; -} - export type FileLocation = { line: number; character: number }; export interface WebpackError { @@ -134,34 +22,6 @@ export interface WebpackError { location?: FileLocation; loaderSource: string; } - -/** - * webpack/lib/Compilation.js - */ -export interface WebpackCompilation { - compiler: WebpackCompiler; - errors: WebpackError[]; - modules: WebpackModule[]; - assets: { - [index: string]: { - size: () => number; - source: () => string; - }; - }; -} - -/** - * webpack/lib/Compiler.js - */ -export interface WebpackCompiler { - isChild(): boolean; - context: string; // a guess - outputPath: string; - watchFileSystem: WebpackNodeWatchFileSystem; - /** key is filepath and value is Date as a number */ - fileTimestamps: Map; -} - export interface WebpackModule { resource: string; errors: WebpackError[]; @@ -171,54 +31,6 @@ export interface WebpackModule { }; } -export interface Watcher { - getTimes(): { [filePath: string]: number }; -} - -export interface WebpackNodeWatchFileSystem { - watcher?: Watcher; - wfs?: { - watcher: Watcher; - }; -} - -export interface Resolve { - /** Replace modules by other modules or paths. */ - alias?: { [key: string]: string }; - /** - * The directory (absolute path) that contains your modules. - * May also be an array of directories. - * This setting should be used to add individual directories to the search path. - */ - root?: string | string[]; - /** - * An array of directory names to be resolved to the current directory as well as its ancestors, and searched for modules. - * This functions similarly to how node finds “node_modules” directories. - * For example, if the value is ["mydir"], webpack will look in “./mydir”, “../mydir”, “../../mydir”, etc. - */ - modulesDirectories?: string[]; - /** - * A directory (or array of directories absolute paths), - * in which webpack should look for modules that weren’t found in resolve.root or resolve.modulesDirectories. - */ - fallback?: string | string[]; - /** - * An array of extensions that should be used to resolve modules. - * For example, in order to discover CoffeeScript files, your array should contain the string ".coffee". - */ - extensions?: string[]; - /** Check these fields in the package.json for suitable files. */ - packageMains?: Array; - /** Check this field in the package.json for an object. Key-value-pairs are threaded as aliasing according to this spec */ - packageAlias?: Array; - /** - * Enable aggressive but unsafe caching for the resolving of a part of your files. - * Changes to cached paths may cause failure (in rare cases). An array of RegExps, only a RegExp or true (all files) is expected. - * If the resolved path matches, it’ll be cached. - */ - unsafeCache?: RegExp | RegExp[] | boolean; -} - export type ResolveSync = ( context: string | undefined, path: string, diff --git a/src/logger.ts b/src/logger.ts index dc0649b28..f713ea5db 100644 --- a/src/logger.ts +++ b/src/logger.ts @@ -14,7 +14,7 @@ export interface Logger { logError: LoggerFunc; } -enum LogLevel { +export enum LogLevel { INFO = 1, WARN = 2, ERROR = 3 diff --git a/src/resolver.ts b/src/resolver.ts index cb77ae53d..5f5a7878f 100644 --- a/src/resolver.ts +++ b/src/resolver.ts @@ -1,8 +1,10 @@ -import { Resolve, ResolveSync } from './interfaces'; +import * as webpack from 'webpack'; + +import { ResolveSync } from './interfaces'; // tslint:disable-next-line:no-submodule-imports const node = require('enhanced-resolve/lib/node'); -export function makeResolver(options: { resolve: Resolve }): ResolveSync { +export function makeResolver(options: webpack.Configuration): ResolveSync { return node.create.sync(options.resolve); } diff --git a/src/servicesHost.ts b/src/servicesHost.ts index 7839a6bdc..53e41063e 100644 --- a/src/servicesHost.ts +++ b/src/servicesHost.ts @@ -1,5 +1,6 @@ import * as path from 'path'; import * as typescript from 'typescript'; +import * as webpack from 'webpack'; import * as constants from './constants'; import { @@ -9,8 +10,7 @@ import { ResolvedModule, ResolveSync, TSInstance, - WatchHost, - Webpack + WatchHost } from './interfaces'; import * as logger from './logger'; import { makeResolver } from './resolver'; @@ -29,7 +29,7 @@ export interface ServiceHostWhichMayBeCacheable { export function makeServicesHost( scriptRegex: RegExp, log: logger.Logger, - loader: Webpack, + loader: webpack.loader.LoaderContext, instance: TSInstance, enableFileCaching: boolean, projectReferences?: ReadonlyArray @@ -232,7 +232,7 @@ function makeResolvers( export function makeWatchHost( scriptRegex: RegExp, log: logger.Logger, - loader: Webpack, + loader: webpack.loader.LoaderContext, instance: TSInstance, projectReferences?: ReadonlyArray ) { diff --git a/src/utils.ts b/src/utils.ts index 500ba496d..a28318ccb 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -3,6 +3,7 @@ import * as fs from 'fs'; import * as micromatch from 'micromatch'; import * as path from 'path'; import * as typescript from 'typescript'; +import * as webpack from 'webpack'; import constants = require('./constants'); import { @@ -12,7 +13,6 @@ import { ReverseDependencyGraph, Severity, TSInstance, - Webpack, WebpackError, WebpackModule } from './interfaces'; @@ -325,7 +325,7 @@ function getProjectReferenceForFile(filePath: string, instance: TSInstance) { export function validateSourceMapOncePerProject( instance: TSInstance, - loader: Webpack, + loader: webpack.loader.LoaderContext, jsFileName: string, project: typescript.ResolvedProjectReference ) { @@ -397,7 +397,7 @@ function getOutputJavaScriptFileName( ? '.json' : constants.tsxRegex.test(inputFileName) && options.jsx === typescript.JsxEmit.Preserve - ? '.jsx' - : '.js'; + ? '.jsx' + : '.js'; return outputPath.replace(constants.extensionRegex, newExtension); } diff --git a/src/watch-run.ts b/src/watch-run.ts index 04c3a8f26..e6e8d8fcb 100644 --- a/src/watch-run.ts +++ b/src/watch-run.ts @@ -1,7 +1,8 @@ import * as path from 'path'; +import * as webpack from 'webpack'; import * as constants from './constants'; -import { TSFile, TSInstance, WebpackCompiler } from './interfaces'; +import { TSFile, TSInstance } from './interfaces'; import { readFile } from './utils'; /** @@ -12,7 +13,7 @@ export function makeWatchRun(instance: TSInstance) { const lastTimes = new Map(); const startTime = 0; - return (compiler: WebpackCompiler, callback: () => void) => { + return (compiler: webpack.Compiler, callback: () => void) => { if (null === instance.modifiedFiles) { instance.modifiedFiles = new Map(); } diff --git a/test/execution-tests/option-context/yarn.lock b/test/execution-tests/option-context/yarn.lock index 8fc70d054..883e986a4 100644 --- a/test/execution-tests/option-context/yarn.lock +++ b/test/execution-tests/option-context/yarn.lock @@ -11,10 +11,9 @@ resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.8.2.tgz#6ae4d8740c0da5d5a627df725b4eed71b8e36668" "@types/node@*": - version "8.0.54" - resolved "https://registry.yarnpkg.com/@types/node/-/node-8.0.54.tgz#3fd9357db4af388b79e03845340259440edffde6" - dependencies: - "@types/events" "*" + version "11.13.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-11.13.8.tgz#e5d71173c95533be9842b2c798978f095f912aab" + integrity sha512-szA3x/3miL90ZJxUCzx9haNbK5/zmPieGraZEe4WI+3srN0eGLiT22NXeMHmyhNEopn+IrxqMc7wdVwvPl8meg== "@types/react-dom@^16.0.3": version "16.0.3" diff --git a/yarn.lock b/yarn.lock index c73c1f867..1cf602dbf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9,6 +9,11 @@ dependencies: any-observable "^0.3.0" +"@types/anymatch@*": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" + integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== + "@types/braces@*": version "2.3.0" resolved "https://registry.yarnpkg.com/@types/braces/-/braces-2.3.0.tgz#d00ec0a76562b2acb6f29330be33a093e33ed25c" @@ -19,15 +24,38 @@ dependencies: "@types/braces" "*" -"@types/node@^10.0.0": - version "10.12.25" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.25.tgz#0d01a7dd6127de60d861ece4a650963042abb538" - integrity sha512-IcvnGLGSQFDvC07Bz2I8SX+QKErDZbUdiQq7S2u3XyzTyJfUmT0sWJMbeQkMzpTAkO7/N7sZpW/arUM2jfKsbQ== +"@types/node@*": + version "11.13.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-11.13.8.tgz#e5d71173c95533be9842b2c798978f095f912aab" + integrity sha512-szA3x/3miL90ZJxUCzx9haNbK5/zmPieGraZEe4WI+3srN0eGLiT22NXeMHmyhNEopn+IrxqMc7wdVwvPl8meg== "@types/semver@^5.4.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-5.5.0.tgz#146c2a29ee7d3bae4bf2fcb274636e264c813c45" +"@types/tapable@*": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.4.tgz#b4ffc7dc97b498c969b360a41eee247f82616370" + integrity sha512-78AdXtlhpCHT0K3EytMpn4JNxaf5tbqbLcbIRoQIHzpTIyjpxLQKRoxU55ujBXAtg3Nl2h/XWvfDa9dsMOd0pQ== + +"@types/uglify-js@*": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.0.4.tgz#96beae23df6f561862a830b4288a49e86baac082" + integrity sha512-SudIN9TRJ+v8g5pTG8RRCqfqTMNqgWCKKd3vtynhGzkIIjxaicNAMuY5TRadJ6tzDu3Dotf3ngaMILtmOdmWEQ== + dependencies: + source-map "^0.6.1" + +"@types/webpack@^4.4.29": + version "4.4.29" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.4.29.tgz#d2a1c1d8c071b06521d32cee1c6b33d704b54b2c" + integrity sha512-8KVp+cNy9OPYsa4jU6vWsBemn5ixJ0Durh95Cw/YpEKm5ks2ODhdXc4FG3Xc46KIbPrJolwY7mSZFNn1aU3hKg== + dependencies: + "@types/anymatch" "*" + "@types/node" "*" + "@types/tapable" "*" + "@types/uglify-js" "*" + source-map "^0.6.0" + "@webassemblyjs/ast@1.7.8": version "1.7.8" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.8.tgz#f31f480debeef957f01b623f27eabc695fa4fe8f" @@ -4413,7 +4441,7 @@ source-map@0.5.x, source-map@^0.5.6, source-map@^0.5.7: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= -source-map@^0.6.1, source-map@~0.6.1: +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"