From 22c539f96f16285b24ac7ed011ffeae02764d4ed Mon Sep 17 00:00:00 2001 From: Tyler Smalley Date: Thu, 4 Jun 2020 14:44:21 -0700 Subject: [PATCH] [7.x] [build] Removes commonjs transforms (#66506) (#67375) Co-authored-by: spalger Co-authored-by: Elastic Machine --- package.json | 1 + packages/kbn-babel-preset/package.json | 2 - packages/kbn-babel-preset/webpack_preset.js | 2 - packages/kbn-i18n/src/angular/index.ts | 7 ++- packages/kbn-i18n/src/react/index.tsx | 4 +- packages/kbn-interpreter/.babelrc | 1 + packages/kbn-interpreter/package.json | 1 + .../basic_optimization.test.ts.snap | 10 ++-- .../basic_optimization.test.ts | 54 +++++++++++-------- src/core/public/legacy/legacy_service.ts | 17 ++++-- .../visualizations/area_chart.js | 18 ++++--- .../core_plugins/timelion/public/app.js | 8 +-- .../timelion/public/directives/cells/cells.js | 3 +- .../public/directives/fixed_element.js | 3 +- .../directives/fullscreen/fullscreen.js | 10 ++-- .../public/directives/timelion_grid.js | 3 +- .../new_platform/new_platform.test.mocks.ts | 4 +- .../ui/public/new_platform/new_platform.ts | 4 +- src/optimize/base_optimizer.js | 6 ++- src/optimize/create_ui_exports_module.js | 4 +- src/plugins/apm_oss/server/index.ts | 2 + .../public/application/angular/context_app.js | 4 +- src/test_utils/public/no_digest_promises.js | 21 +++----- .../create_static_index_pattern.ts | 2 +- yarn.lock | 2 +- 25 files changed, 117 insertions(+), 76 deletions(-) diff --git a/package.json b/package.json index d26b8372a8b7..f90f92c96d46 100644 --- a/package.json +++ b/package.json @@ -118,6 +118,7 @@ }, "dependencies": { "@babel/core": "^7.9.0", + "@babel/plugin-transform-modules-commonjs": "^7.9.0", "@babel/register": "^7.9.0", "@elastic/apm-rum": "^5.1.1", "@elastic/charts": "19.2.0", diff --git a/packages/kbn-babel-preset/package.json b/packages/kbn-babel-preset/package.json index ba0c2489cdbc..ab0d875430d0 100644 --- a/packages/kbn-babel-preset/package.json +++ b/packages/kbn-babel-preset/package.json @@ -7,8 +7,6 @@ "@babel/plugin-proposal-class-properties": "^7.8.3", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", "@babel/plugin-proposal-optional-chaining": "^7.9.0", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-modules-commonjs": "^7.9.0", "@babel/preset-env": "^7.9.0", "@babel/preset-react": "^7.9.1", "@babel/preset-typescript": "^7.9.0", diff --git a/packages/kbn-babel-preset/webpack_preset.js b/packages/kbn-babel-preset/webpack_preset.js index 2c1129f275bf..97462a579e3c 100644 --- a/packages/kbn-babel-preset/webpack_preset.js +++ b/packages/kbn-babel-preset/webpack_preset.js @@ -33,8 +33,6 @@ module.exports = () => { require('./common_preset'), ], plugins: [ - require.resolve('@babel/plugin-transform-modules-commonjs'), - require.resolve('@babel/plugin-syntax-dynamic-import'), [ require.resolve('babel-plugin-styled-components'), { diff --git a/packages/kbn-i18n/src/angular/index.ts b/packages/kbn-i18n/src/angular/index.ts index 8f1e315cab38..ef30f59d60c2 100644 --- a/packages/kbn-i18n/src/angular/index.ts +++ b/packages/kbn-i18n/src/angular/index.ts @@ -17,6 +17,11 @@ * under the License. */ -export { I18nProvider, I18nServiceType } from './provider'; +export { I18nProvider } from './provider'; + export { i18nFilter } from './filter'; export { i18nDirective } from './directive'; + +// re-export types: https://github.com/babel/babel-loader/issues/603 +import { I18nServiceType as _I18nServiceType } from './provider'; +export type I18nServiceType = _I18nServiceType; diff --git a/packages/kbn-i18n/src/react/index.tsx b/packages/kbn-i18n/src/react/index.tsx index b3c6bbe7befb..ff30934aad6d 100644 --- a/packages/kbn-i18n/src/react/index.tsx +++ b/packages/kbn-i18n/src/react/index.tsx @@ -17,9 +17,11 @@ * under the License. */ +import { InjectedIntl as _InjectedIntl } from 'react-intl'; +export type InjectedIntl = _InjectedIntl; + export { intlShape, - InjectedIntl, FormattedDate, FormattedTime, FormattedRelative, diff --git a/packages/kbn-interpreter/.babelrc b/packages/kbn-interpreter/.babelrc index 875cbcde9d0e..309b3d5b3233 100644 --- a/packages/kbn-interpreter/.babelrc +++ b/packages/kbn-interpreter/.babelrc @@ -1,6 +1,7 @@ { "presets": ["@kbn/babel-preset/webpack_preset"], "plugins": [ + "@babel/plugin-transform-modules-commonjs", ["@babel/plugin-transform-runtime", { "regenerator": true }] diff --git a/packages/kbn-interpreter/package.json b/packages/kbn-interpreter/package.json index e9d65dce1970..9ce83ca167e0 100644 --- a/packages/kbn-interpreter/package.json +++ b/packages/kbn-interpreter/package.json @@ -18,6 +18,7 @@ "devDependencies": { "@babel/cli": "^7.8.4", "@babel/core": "^7.9.0", + "@babel/plugin-transform-modules-commonjs": "^7.9.0", "@babel/plugin-transform-runtime": "^7.9.0", "@kbn/babel-preset": "1.0.0", "@kbn/dev-utils": "1.0.0", diff --git a/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap b/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap index 436a6843d518..41eae5a2203a 100644 --- a/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap +++ b/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap @@ -1,7 +1,5 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`builds expected bundles, saves bundle counts to metadata: 1 async bundle 1`] = `"(window[\\"foo_bundle_jsonpfunction\\"]=window[\\"foo_bundle_jsonpfunction\\"]||[]).push([[1],{4:function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.foo=foo;function foo(){}}}]);"`; - exports[`builds expected bundles, saves bundle counts to metadata: OptimizerConfig 1`] = ` OptimizerConfig { "bundles": Array [ @@ -31,7 +29,7 @@ OptimizerConfig { }, ], "cache": true, - "dist": true, + "dist": false, "inspectWorkers": false, "maxWorkerCount": 1, "plugins": Array [ @@ -57,6 +55,8 @@ OptimizerConfig { } `; -exports[`builds expected bundles, saves bundle counts to metadata: bar bundle 1`] = `"var __kbnBundles__=typeof __kbnBundles__===\\"object\\"?__kbnBundles__:{};__kbnBundles__[\\"plugin/bar\\"]=function(modules){function webpackJsonpCallback(data){var chunkIds=data[0];var moreModules=data[1];var moduleId,chunkId,i=0,resolves=[];for(;i typeof value === 'string' && value.includes(REPO_ROOT), }); +const log = new ToolingLog({ + level: 'error', + writeTo: { + write(chunk) { + if (chunk.endsWith('\n')) { + chunk = chunk.slice(0, -1); + } + // eslint-disable-next-line no-console + console.error(chunk); + }, + }, +}); + beforeAll(async () => { await del(TMP_DIR); await cpy('**/*', MOCK_REPO_DIR, { @@ -55,23 +68,11 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { repoRoot: MOCK_REPO_DIR, pluginScanDirs: [Path.resolve(MOCK_REPO_DIR, 'plugins')], maxWorkerCount: 1, - dist: true, + dist: false, }); expect(config).toMatchSnapshot('OptimizerConfig'); - const log = new ToolingLog({ - level: 'error', - writeTo: { - write(chunk) { - if (chunk.endsWith('\n')) { - chunk = chunk.slice(0, -1); - } - // eslint-disable-next-line no-console - console.error(chunk); - }, - }, - }); const msgs = await runOptimizer(config) .pipe(logOptimizerState(log, config), toArray()) .toPromise(); @@ -128,13 +129,6 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { ); assert('produce zero unexpected states', otherStates.length === 0, otherStates); - expectFileMatchesSnapshotWithCompression('plugins/foo/target/public/foo.plugin.js', 'foo bundle'); - expectFileMatchesSnapshotWithCompression( - 'plugins/foo/target/public/1.plugin.js', - '1 async bundle' - ); - expectFileMatchesSnapshotWithCompression('plugins/bar/target/public/bar.plugin.js', 'bar bundle'); - const foo = config.bundles.find((b) => b.id === 'foo')!; expect(foo).toBeTruthy(); foo.cache.refresh(); @@ -180,7 +174,7 @@ it('uses cache on second run and exist cleanly', async () => { repoRoot: MOCK_REPO_DIR, pluginScanDirs: [Path.resolve(MOCK_REPO_DIR, 'plugins')], maxWorkerCount: 1, - dist: true, + dist: false, }); const msgs = await runOptimizer(config) @@ -206,6 +200,24 @@ it('uses cache on second run and exist cleanly', async () => { `); }); +it('prepares assets for distribution', async () => { + const config = OptimizerConfig.create({ + repoRoot: MOCK_REPO_DIR, + pluginScanDirs: [Path.resolve(MOCK_REPO_DIR, 'plugins')], + maxWorkerCount: 1, + dist: true, + }); + + await runOptimizer(config).pipe(logOptimizerState(log, config), toArray()).toPromise(); + + expectFileMatchesSnapshotWithCompression('plugins/foo/target/public/foo.plugin.js', 'foo bundle'); + expectFileMatchesSnapshotWithCompression( + 'plugins/foo/target/public/1.plugin.js', + '1 async bundle' + ); + expectFileMatchesSnapshotWithCompression('plugins/bar/target/public/bar.plugin.js', 'bar bundle'); +}); + /** * Verifies that the file matches the expected output and has matching compressed variants. */ diff --git a/src/core/public/legacy/legacy_service.ts b/src/core/public/legacy/legacy_service.ts index d77676b350f9..57f7ee68638c 100644 --- a/src/core/public/legacy/legacy_service.ts +++ b/src/core/public/legacy/legacy_service.ts @@ -46,7 +46,10 @@ interface StartDeps { } interface BootstrapModule { - bootstrap: MountPoint; + bootstrap?: MountPoint; + default?: { + bootstrap: MountPoint; + }; } /** @@ -171,10 +174,16 @@ export class LegacyPlatformService { throw new Error('Bootstrap module must be loaded before `start`'); } - this.targetDomElement = targetDomElement; - // `targetDomElement` is always defined when in legacy mode - this.bootstrapModule.bootstrap(this.targetDomElement!); + this.targetDomElement = targetDomElement!; + + if (this.bootstrapModule.default) { + this.bootstrapModule.default.bootstrap(this.targetDomElement); + } else if (this.bootstrapModule.bootstrap) { + this.bootstrapModule.bootstrap(this.targetDomElement); + } else { + throw new Error('legacy bootstrap module does not export a bootstrap() function'); + } } public stop() { diff --git a/src/legacy/core_plugins/kibana/public/__tests__/vis_type_vislib/visualizations/area_chart.js b/src/legacy/core_plugins/kibana/public/__tests__/vis_type_vislib/visualizations/area_chart.js index fd2240c0c64c..97589628e5ae 100644 --- a/src/legacy/core_plugins/kibana/public/__tests__/vis_type_vislib/visualizations/area_chart.js +++ b/src/legacy/core_plugins/kibana/public/__tests__/vis_type_vislib/visualizations/area_chart.js @@ -26,12 +26,18 @@ import { getMockUiState } from '../../../../../../../plugins/vis_type_vislib/pub import { getVis } from '../_vis_fixture'; const dataTypesArray = { - 'series pos': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_series'), - 'series pos neg': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_series_pos_neg'), - 'series neg': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_series_neg'), - 'term columns': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/terms/_columns'), - 'range rows': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/range/_rows'), - stackedSeries: require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_stacked_series'), + 'series pos': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_series') + .default, + 'series pos neg': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_series_pos_neg') + .default, + 'series neg': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_series_neg') + .default, + 'term columns': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/terms/_columns') + .default, + 'range rows': require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/range/_rows') + .default, + stackedSeries: require('../../../../../../../plugins/vis_type_vislib/public/fixtures/mock_data/date_histogram/_stacked_series') + .default, }; const visLibParams = { diff --git a/src/legacy/core_plugins/timelion/public/app.js b/src/legacy/core_plugins/timelion/public/app.js index 744daaeac14f..e2f9b62cb2d7 100644 --- a/src/legacy/core_plugins/timelion/public/app.js +++ b/src/legacy/core_plugins/timelion/public/app.js @@ -23,6 +23,7 @@ import 'angular-sanitize'; import { i18n } from '@kbn/i18n'; +import routes from 'ui/routes'; import { capabilities } from 'ui/capabilities'; import { docTitle } from 'ui/doc_title'; import { fatalError, toastNotifications } from 'ui/notify'; @@ -44,6 +45,7 @@ import './directives/saved_object_save_as_checkbox'; import './services/saved_sheet_register'; import rootTemplate from 'plugins/timelion/index.html'; +import { uiModules } from 'ui/modules'; import { loadKbnTopNavDirectives } from '../../../../plugins/kibana_legacy/public'; loadKbnTopNavDirectives(npStart.plugins.navigation.ui); @@ -60,11 +62,11 @@ require('plugins/timelion/directives/timelion_options_sheet'); document.title = 'Timelion - Kibana'; -const app = require('ui/modules').get('apps/timelion', ['i18n', 'ngSanitize']); +const app = uiModules.get('apps/timelion', ['i18n', 'ngSanitize']); -require('ui/routes').enable(); +routes.enable(); -require('ui/routes').when('/:id?', { +routes.when('/:id?', { template: rootTemplate, reloadOnSearch: false, k7Breadcrumbs: ($injector, $route) => diff --git a/src/legacy/core_plugins/timelion/public/directives/cells/cells.js b/src/legacy/core_plugins/timelion/public/directives/cells/cells.js index 104af3b1043d..a9121c13b159 100644 --- a/src/legacy/core_plugins/timelion/public/directives/cells/cells.js +++ b/src/legacy/core_plugins/timelion/public/directives/cells/cells.js @@ -19,12 +19,13 @@ import _ from 'lodash'; import { move } from 'ui/utils/collection'; +import { uiModules } from 'ui/modules'; require('angular-sortable-view'); require('plugins/timelion/directives/chart/chart'); require('plugins/timelion/directives/timelion_grid'); -const app = require('ui/modules').get('apps/timelion', ['angular-sortable-view']); +const app = uiModules.get('apps/timelion', ['angular-sortable-view']); import html from './cells.html'; app.directive('timelionCells', function () { diff --git a/src/legacy/core_plugins/timelion/public/directives/fixed_element.js b/src/legacy/core_plugins/timelion/public/directives/fixed_element.js index e3a8b2184bb2..0e18240fc690 100644 --- a/src/legacy/core_plugins/timelion/public/directives/fixed_element.js +++ b/src/legacy/core_plugins/timelion/public/directives/fixed_element.js @@ -18,8 +18,9 @@ */ import $ from 'jquery'; +import { uiModules } from 'ui/modules'; -const app = require('ui/modules').get('apps/timelion', []); +const app = uiModules.get('apps/timelion', []); app.directive('fixedElementRoot', function () { return { restrict: 'A', diff --git a/src/legacy/core_plugins/timelion/public/directives/fullscreen/fullscreen.js b/src/legacy/core_plugins/timelion/public/directives/fullscreen/fullscreen.js index 5c4bd72ceb70..db234043bbf1 100644 --- a/src/legacy/core_plugins/timelion/public/directives/fullscreen/fullscreen.js +++ b/src/legacy/core_plugins/timelion/public/directives/fullscreen/fullscreen.js @@ -17,11 +17,13 @@ * under the License. */ -require('angular-sortable-view'); -require('plugins/timelion/directives/chart/chart'); -require('plugins/timelion/directives/timelion_grid'); +import { uiModules } from 'ui/modules'; -const app = require('ui/modules').get('apps/timelion', ['angular-sortable-view']); +import 'angular-sortable-view'; +import 'plugins/timelion/directives/chart/chart'; +import 'plugins/timelion/directives/timelion_grid'; + +const app = uiModules.get('apps/timelion', ['angular-sortable-view']); import html from './fullscreen.html'; app.directive('timelionFullscreen', function () { diff --git a/src/legacy/core_plugins/timelion/public/directives/timelion_grid.js b/src/legacy/core_plugins/timelion/public/directives/timelion_grid.js index 256c35331d01..a1b920f30e80 100644 --- a/src/legacy/core_plugins/timelion/public/directives/timelion_grid.js +++ b/src/legacy/core_plugins/timelion/public/directives/timelion_grid.js @@ -18,8 +18,9 @@ */ import $ from 'jquery'; +import { uiModules } from 'ui/modules'; -const app = require('ui/modules').get('apps/timelion', []); +const app = uiModules.get('apps/timelion', []); app.directive('timelionGrid', function () { return { restrict: 'A', diff --git a/src/legacy/ui/public/new_platform/new_platform.test.mocks.ts b/src/legacy/ui/public/new_platform/new_platform.test.mocks.ts index f44efe17ef8e..805b8ffce55b 100644 --- a/src/legacy/ui/public/new_platform/new_platform.test.mocks.ts +++ b/src/legacy/ui/public/new_platform/new_platform.test.mocks.ts @@ -22,7 +22,9 @@ import { scopedHistoryMock } from '../../../../core/public/mocks'; export const setRootControllerMock = jest.fn(); jest.doMock('ui/chrome', () => ({ - setRootController: setRootControllerMock, + default: { + setRootController: setRootControllerMock, + }, })); export const historyMock = scopedHistoryMock.create(); diff --git a/src/legacy/ui/public/new_platform/new_platform.ts b/src/legacy/ui/public/new_platform/new_platform.ts index ddf768495a9d..6a54dce69226 100644 --- a/src/legacy/ui/public/new_platform/new_platform.ts +++ b/src/legacy/ui/public/new_platform/new_platform.ts @@ -174,7 +174,9 @@ export const legacyAppRegister = (app: App) => { } legacyAppRegistered = true; - require('ui/chrome').setRootController(app.id, ($scope: IScope, $element: JQLite) => { + // eslint-disable-next-line @typescript-eslint/no-var-requires + const { default: chrome } = require('ui/chrome'); + chrome.setRootController(app.id, ($scope: IScope, $element: JQLite) => { const element = document.createElement('div'); $element[0].appendChild(element); diff --git a/src/optimize/base_optimizer.js b/src/optimize/base_optimizer.js index b0956bce69ae..4e34e7c70c15 100644 --- a/src/optimize/base_optimizer.js +++ b/src/optimize/base_optimizer.js @@ -45,6 +45,10 @@ const STATS_WARNINGS_FILTER = new RegExp( ].join('') ); +const LEGACY_PRESETS = { + plugins: [require.resolve('@babel/plugin-transform-modules-commonjs')], +}; + function recursiveIssuer(m) { if (m.issuer) { return recursiveIssuer(m.issuer); @@ -119,7 +123,7 @@ export default class BaseOptimizer { } warmupThreadLoaderPool() { - const baseModules = ['babel-loader', BABEL_PRESET_PATH]; + const baseModules = ['babel-loader', BABEL_PRESET_PATH, LEGACY_PRESETS]; threadLoader.warmup( // pool options, like passed to loader options diff --git a/src/optimize/create_ui_exports_module.js b/src/optimize/create_ui_exports_module.js index 76295b0770fa..d20814b10931 100644 --- a/src/optimize/create_ui_exports_module.js +++ b/src/optimize/create_ui_exports_module.js @@ -22,7 +22,7 @@ function normalizePath(path) { return path.replace(/[\\\/]+/g, '/'); } -export default function () { +module.exports = function () { if (!module.id.includes('?')) { throw new Error('create_ui_exports_module loaded without JSON args in module.id'); } @@ -37,4 +37,4 @@ export default function () { return { code: `${comment}\n${requires}\n`, }; -} +}; diff --git a/src/plugins/apm_oss/server/index.ts b/src/plugins/apm_oss/server/index.ts index 4d169df7fdfa..f0b238f96b68 100644 --- a/src/plugins/apm_oss/server/index.ts +++ b/src/plugins/apm_oss/server/index.ts @@ -45,6 +45,8 @@ export { APMOSSPluginSetup } from './plugin'; export { apmIndexPattern }; +export { APM_STATIC_INDEX_PATTERN_ID } from '../common/index_pattern_constants'; + export { createNodeAgentInstructions, createDjangoAgentInstructions, diff --git a/src/plugins/discover/public/application/angular/context_app.js b/src/plugins/discover/public/application/angular/context_app.js index be89c0e8c0cf..f698ed84a894 100644 --- a/src/plugins/discover/public/application/angular/context_app.js +++ b/src/plugins/discover/public/application/angular/context_app.js @@ -36,9 +36,7 @@ import { } from './context/query'; import { callAfterBindingsWorkaround } from './context/helpers/call_after_bindings_workaround'; -const module = getAngularModule(); - -module.directive('contextApp', function ContextApp() { +getAngularModule().directive('contextApp', function ContextApp() { return { bindToController: true, controller: callAfterBindingsWorkaround(ContextAppController), diff --git a/src/test_utils/public/no_digest_promises.js b/src/test_utils/public/no_digest_promises.js index 396d6fb4892f..d0b5e4c5840a 100644 --- a/src/test_utils/public/no_digest_promises.js +++ b/src/test_utils/public/no_digest_promises.js @@ -43,18 +43,11 @@ uiModules.get('kibana').config(function ($provide) { }); }); -function activate() { - active = true; +export function activateForSuite() { + before(() => { + active = true; + }); + after(() => { + active = false; + }); } -function deactivate() { - active = false; -} - -export default { - activate: activate, - deactivate: deactivate, - activateForSuite: function () { - before(activate); - after(deactivate); - }, -}; diff --git a/x-pack/plugins/apm/server/lib/index_pattern/create_static_index_pattern.ts b/x-pack/plugins/apm/server/lib/index_pattern/create_static_index_pattern.ts index c637251b3011..d788ae81a7db 100644 --- a/x-pack/plugins/apm/server/lib/index_pattern/create_static_index_pattern.ts +++ b/x-pack/plugins/apm/server/lib/index_pattern/create_static_index_pattern.ts @@ -5,7 +5,7 @@ */ import { SavedObjectsErrorHelpers } from '../../../../../../src/core/server'; import { apmIndexPattern } from '../../../../../../src/plugins/apm_oss/server'; -import { APM_STATIC_INDEX_PATTERN_ID } from '../../../../../../src/plugins/apm_oss/public'; +import { APM_STATIC_INDEX_PATTERN_ID } from '../../../../../../src/plugins/apm_oss/server'; import { hasHistoricalAgentData } from '../services/get_services/has_historical_agent_data'; import { Setup } from '../helpers/setup_request'; import { APMRequestHandlerContext } from '../../routes/typings'; diff --git a/yarn.lock b/yarn.lock index 83b612b63d70..6ad6aab02949 100644 --- a/yarn.lock +++ b/yarn.lock @@ -449,7 +449,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.0.0" -"@babel/plugin-syntax-dynamic-import@^7.2.0", "@babel/plugin-syntax-dynamic-import@^7.8.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": +"@babel/plugin-syntax-dynamic-import@^7.2.0", "@babel/plugin-syntax-dynamic-import@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==