Merge inbound to mozilla-central. a=merge

This commit is contained in:
shindli 2018-07-31 12:50:32 +03:00
commit f0d8729e09
481 changed files with 18104 additions and 4229 deletions

12
Cargo.lock generated
View File

@ -269,13 +269,13 @@ name = "bzip2-sys"
version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "cc"
version = "1.0.9"
version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@ -330,7 +330,7 @@ name = "cmake"
version = "0.1.29"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -1069,7 +1069,7 @@ name = "libloading"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -1214,7 +1214,7 @@ name = "miniz_oxide_c_api"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)",
"crc 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)",
"miniz_oxide 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@ -2556,7 +2556,7 @@ dependencies = [
"checksum bytes 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d828f97b58cc5de3e40c421d0cf2132d6b2da4ee0e11b8632fa838f0f9333ad6"
"checksum bzip2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c3eafc42c44e0d827de6b1c131175098fe7fb53b8ce8a47e65cb3ea94688be24"
"checksum bzip2-sys 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2c5162604199bbb17690ede847eaa6120a3f33d5ab4dcc8e7c25b16d849ae79b"
"checksum cc 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2b4911e4bdcb4100c7680e7e854ff38e23f1b34d4d9e079efae3da2801341ffc"
"checksum cc 1.0.18 (registry+https://github.com/rust-lang/crates.io-index)" = "2119ea4867bd2b8ed3aecab467709720b2d55b1bcfe09f772fd68066eaf15275"
"checksum cexpr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "393a5f0088efbe41f9d1fcd062f24e83c278608420e62109feb2c8abee07de7d"
"checksum cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c819a1287eb618df47cc647173c5c4c66ba19d888a6e50d605672aed3140de"
"checksum chrono 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)" = "9213f7cd7c27e95c2b57c49f0e69b1ea65b27138da84a170133fd21b07659c00"

View File

@ -406,8 +406,8 @@ DocAccessibleParent::RecvVirtualCursorChangeEvent(const uint64_t& aID,
#if defined(ANDROID)
ProxyVirtualCursorChangeEvent(target,
newPosition, aOldStartOffset, aOldEndOffset,
oldPosition, aNewStartOffset, aNewEndOffset,
oldPosition, aOldStartOffset, aOldEndOffset,
newPosition, aNewStartOffset, aNewEndOffset,
aReason, aBoundaryType, aFromUser);
#endif

View File

@ -76,16 +76,6 @@ add_task(async function() {
}, browser);
await loadPromise;
await ContentTask.spawn(browser, null, async function() {
let input = content.document.querySelector(["#searchText", "#newtab-search-text"]);
ok(input.value == "x", "Input value did not change");
let row = content.document.getElementById("TEMPID");
if (row) {
row.removeAttribute("id");
}
});
Services.search.currentEngine = currEngine;
try {
Services.search.removeEngine(engine);

View File

@ -5,5 +5,7 @@
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
<ShortName>browser_searchSuggestionEngine searchSuggestionEngine.xml</ShortName>
<Url type="application/x-suggestions+json" method="GET" template="http://mochi.test:8888/browser/browser/base/content/test/about/searchSuggestionEngine.sjs?{searchTerms}"/>
<Url type="text/html" method="GET" template="http://mochi.test:8888/" rel="searchform"/>
<Url type="text/html" method="GET" template="http://mochi.test:8888/" rel="searchform">
<Param name="terms" value="{searchTerms}"/>
</Url>
</SearchPlugin>

View File

@ -433,7 +433,7 @@ var Sanitizer = {
let refObj = {};
TelemetryStopwatch.start("FX_SANITIZE_SITESETTINGS", refObj);
await clearData(range, Ci.nsIClearDataService.CLEAR_PERMISSIONS |
Ci.nsIClearDataService.CLEAR_PREFERENCES |
Ci.nsIClearDataService.CLEAR_CONTENT_PREFERENCES |
Ci.nsIClearDataService.CLEAR_DOM_PUSH_NOTIFICATIONS |
Ci.nsIClearDataService.CLEAR_SECURITY_SETTINGS);
TelemetryStopwatch.finish("FX_SANITIZE_SITESETTINGS", refObj);

View File

@ -53,6 +53,9 @@ def Library(name):
'''Template for libraries.'''
LIBRARY_NAME = name
@template
def AllowCompilerWarnings():
COMPILE_FLAGS['WARNINGS_AS_ERRORS'] = []
@template
def RustLibrary(name, features=None, target_dir=None):
@ -60,6 +63,8 @@ def RustLibrary(name, features=None, target_dir=None):
Library(name)
IS_RUST_LIBRARY = True
# Some Rust build scripts compile C/C++ sources, don't error on warnings for them.
AllowCompilerWarnings()
if features:
RUST_LIBRARY_FEATURES = features
@ -125,6 +130,8 @@ def HostRustLibrary(name, features=None):
HostLibrary(name)
IS_RUST_LIBRARY = True
# Some Rust build scripts compile C/C++ sources, don't error on warnings for them.
AllowCompilerWarnings()
if features:
HOST_RUST_LIBRARY_FEATURES = features
@ -137,10 +144,6 @@ def DisableStlWrapping():
def NoVisibilityFlags():
COMPILE_FLAGS['VISIBILITY'] = []
@template
def AllowCompilerWarnings():
COMPILE_FLAGS['WARNINGS_AS_ERRORS'] = []
@template
def ForceInclude(*headers):
"""Force includes a set of header files in C++ compilations"""

View File

@ -894,6 +894,39 @@ ifdef MOZ_USING_SCCACHE
sccache_wrap := RUSTC_WRAPPER='$(CCACHE)'
endif
ifneq (WINNT,$(OS_ARCH))
ifndef MOZ_ASAN
ifndef MOZ_TSAN
ifndef MOZ_CODE_COVERAGE
# Pass the compilers and flags in use to cargo for use in build scripts.
# * Don't do this on Windows because msys path translation makes a mess of the paths, and
# we put MSVC in PATH there anyway.
# * Don't do this for ASAN/TSAN builds because we don't pass our custom linker (see below)
# which will muck things up.
# * Don't do this for code coverage builds because the way rustc invokes the linker doesn't
# work with GCC 6: https://bugzilla.mozilla.org/show_bug.cgi?id=1477305
#
# We don't pass HOST_{CC,CXX} down in any form because our host value might not match
# what cargo chooses and there's no way to control cargo's selection, so we just have to
# hope that if something needs to build a host C source file it can find a usable compiler!
#
# We're passing these for consumption by the `cc` crate, which doesn't use the same
# convention as cargo itself:
# https://github.com/alexcrichton/cc-rs/blob/baa71c0e298d9ad7ac30f0ad78f20b4b3b3a8fb2/src/lib.rs#L1715
rust_cc_env_name := $(subst -,_,$(RUST_TARGET))
cargo_c_compiler_envs := \
CC_$(rust_cc_env_name)="$(CC)" \
CXX_$(rust_cc_env_name)="$(CXX)" \
CFLAGS_$(rust_cc_env_name)="$(COMPUTED_CFLAGS)" \
CXXFLAGS_$(rust_cc_env_name)="$(COMPUTED_CXXFLAGS)" \
AR_$(rust_cc_env_name)="$(AR)" \
$(NULL)
endif # MOZ_CODE_COVERAGE
endif # MOZ_TSAN
endif # MOZ_ASAN
endif # WINNT
# We use the + prefix to pass down the jobserver fds to cargo, but we
# don't use the prefix when make -n is used, so that cargo doesn't run
# in that case)
@ -903,6 +936,7 @@ $(if $(findstring n,$(filter-out --%, $(MAKEFLAGS))),,+)env $(environment_cleane
RUSTC=$(RUSTC) \
RUSTDOC=$(RUSTDOC) \
RUSTFMT=$(RUSTFMT) \
$(cargo_c_compiler_envs) \
MOZ_SRC=$(topsrcdir) \
MOZ_DIST=$(ABS_DIST) \
LIBCLANG_PATH="$(MOZ_LIBCLANG_PATH)" \

View File

@ -1,9 +1,9 @@
This is the debugger.html project output.
See https://github.com/devtools-html/debugger.html
Version 75
Version 76
Comparison: https://github.com/devtools-html/debugger.html/compare/release-74...release-75
Comparison: https://github.com/devtools-html/debugger.html/compare/release-75...release-76
Packages:
- babel-plugin-transform-es2015-modules-commonjs @6.26.2

View File

@ -1196,9 +1196,9 @@ html .toggle-button.end.vertical svg {
}
.project-text-search .result {
display: flex;
display: contents;
cursor: default;
padding: 4px 0 4px 30px;
padding: 4px 0 4px 5px;
line-height: 16px;
font-size: 10px;
width: 100%;
@ -1221,9 +1221,20 @@ html .toggle-button.end.vertical svg {
}
.project-text-search .result .line-number {
margin-right: 1em;
width: 2em;
margin-left: 0.8em;
padding-left: 5px;
min-width: 33px;
width: 100%;
text-align: right;
grid-column: 1/2;
}
.project-text-search .result .line-value {
grid-column: 2/3;
padding-left: 5px;
}
.project-text-search .tree-indent {
display: none;
}
.project-text-search .no-result-msg {
@ -1241,6 +1252,7 @@ html .toggle-button.end.vertical svg {
cursor: default;
padding: 2px 0 2px 5px;
font-size: 12px;
grid-column: 1/3;
}
.project-text-search .file-result .arrow {
@ -1269,17 +1281,24 @@ html .toggle-button.end.vertical svg {
.project-text-search .managed-tree .tree {
height: 100%;
display: grid;
grid-template-columns: auto 1fr;
}
.project-text-search .managed-tree .tree .tree-node {
display: contents;
}
/* Focus values */
.project-text-search .file-result.focused,
.project-text-search .result.focused {
.project-text-search .result.focused .line-value {
background-color: var(--theme-selection-background);
}
.project-text-search .result.focused .line-number {
font-weight: bolder;
background-color: var(--theme-selection-background);
}
.project-text-search .result.focused .query-match {
@ -2113,12 +2132,6 @@ menuseparator {
margin-top: 3px;
}
.objectBox-stackTrace-fn::before {
content: "\3BB"; /* The "lambda" symbol */
display: inline-block;
margin: 0 0.3em;
}
.objectBox-stackTrace-fn {
color: var(--console-output-color);
padding-inline-start: 17px;
@ -4030,12 +4043,19 @@ html[dir="rtl"] .object-node {
}
.shortcutFunction {
flex: 1;
margin: 0 auto;
color: var(--theme-comment);
display: table;
}
.shortcutFunction p {
display: flex;
display: table-row;
}
.shortcutFunction .shortcutKey,
.shortcutFunction .shortcutLabel {
padding: 10px 5px;
display: table-cell;
}
html .welcomebox .toggle-button-end.collapsed {

View File

@ -17,6 +17,8 @@ var _sourceMaps = require("../../utils/source-maps");
var _source = require("../../utils/source");
var _telemetry = require("../../utils/telemetry");
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
@ -149,6 +151,7 @@ function addBreakpoint(location, {
sourceMaps,
client
}) => {
(0, _telemetry.recordEvent)("add_breakpoint");
return dispatch({
type: "ADD_BREAKPOINT",
breakpoint,

View File

@ -33,6 +33,8 @@ var _syncBreakpoint = require("./syncBreakpoint");
var _ast = require("../../reducers/ast");
var _telemetry = require("../../utils/telemetry");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* This Source Code Form is subject to the terms of the Mozilla Public
@ -60,11 +62,12 @@ function removeBreakpoint(location) {
if (!bp || bp.loading) {
return;
} // If the breakpoint is already disabled, we don't need to communicate
}
(0, _telemetry.recordEvent)("remove_breakpoint"); // If the breakpoint is already disabled, we don't need to communicate
// with the server. We just need to dispatch an action
// simulating a successful server request
if (bp.disabled) {
return dispatch({
type: "REMOVE_BREAKPOINT",
@ -332,11 +335,7 @@ function toggleBreakpointsAtLine(line, column) {
const bps = (0, _selectors.getBreakpointsAtLine)(state, line);
const isEmptyLine = (0, _ast.isEmptyLineInSource)(state, line, selectedSource.id);
if (isEmptyLine) {
return;
}
if (bps.size === 0) {
if (bps.size === 0 && !isEmptyLine) {
return dispatch((0, _addBreakpoint.addBreakpoint)({
sourceId: selectedSource.id,
sourceUrl: selectedSource.url,

View File

@ -15,6 +15,8 @@ exports.closeFileSearch = closeFileSearch;
var _editor = require("../utils/editor/index");
var _wasm = require("../utils/wasm");
var _search = require("../workers/search/index");
var _selectors = require("../selectors/index");
@ -106,7 +108,9 @@ function searchContents(query, editor) {
const _modifiers = modifiers.toJS();
const matches = await (0, _search.getMatches)(query, selectedSource.text, _modifiers);
const sourceId = selectedSource.id;
const text = (0, _wasm.isWasm)(sourceId) ? (0, _wasm.renderWasmText)(sourceId, selectedSource.text).join("\n") : selectedSource.text;
const matches = await (0, _search.getMatches)(query, text, _modifiers);
const res = (0, _editor.find)(ctx, query, true, _modifiers);
if (!res) {
@ -189,9 +193,8 @@ function closeFileSearch(editor) {
getState,
dispatch
}) => {
const query = (0, _selectors.getFileSearchQuery)(getState());
if (editor) {
const query = (0, _selectors.getFileSearchQuery)(getState());
const ctx = {
ed: editor,
cm: editor.codeMirror

View File

@ -24,6 +24,8 @@ var _breakpoints = require("../breakpoints/index");
var _prefs = require("../../utils/prefs");
var _telemetry = require("../../utils/telemetry");
/* -*- indent-tabs-mode: nil; js-indent-level: 2; js-indent-level: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
@ -117,6 +119,7 @@ function resume() {
getState
}) => {
if ((0, _selectors.isPaused)(getState())) {
(0, _telemetry.recordEvent)("continue");
return dispatch(command("resume"));
}
};

View File

@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
});
exports.toggleBlackBox = toggleBlackBox;
var _telemetry = require("../../utils/telemetry");
var _promise = require("../utils/middleware/promise");
/* This Source Code Form is subject to the terms of the Mozilla Public
@ -26,6 +28,11 @@ function toggleBlackBox(source) {
isBlackBoxed,
id
} = source;
if (!isBlackBoxed) {
(0, _telemetry.recordEvent)("blackbox");
}
return dispatch({
type: "BLACKBOX",
source,

View File

@ -10,6 +10,8 @@ var _assert = require("../../utils/assert");
var _assert2 = _interopRequireDefault(_assert);
var _telemetry = require("../../utils/telemetry");
var _breakpoints = require("../breakpoints/index");
var _ast = require("../ast");
@ -102,6 +104,10 @@ function togglePrettyPrint(sourceId) {
return {};
}
if (!source.isPrettyPrinted) {
(0, _telemetry.recordEvent)("pretty_print");
}
if (!(0, _source.isLoaded)(source)) {
await dispatch((0, _loadSourceText.loadSourceText)(source));
}

View File

@ -22,9 +22,9 @@ exports.setOrientation = setOrientation;
var _selectors = require("../selectors/index");
var _ui = require("../reducers/ui");
var _select = require("../actions/sources/select");
var _source = require("../utils/source");
var _ui = require("../reducers/ui");
var _editor = require("../utils/editor/index");
@ -134,11 +134,12 @@ function showSource(sourceId) {
dispatch(setPrimaryPaneTab("sources"));
dispatch({
type: "SHOW_SOURCE",
sourceUrl: ""
source: null
});
dispatch((0, _select.selectSource)(source.id));
dispatch({
type: "SHOW_SOURCE",
sourceUrl: (0, _source.getRawSourceURL)(source.url)
source
});
};
}

View File

@ -16,12 +16,12 @@ var _reactRedux = require("devtools/client/shared/vendor/react-redux");
var _selectors = require("../../selectors/index");
var _sources = require("../../reducers/sources");
var _actions = require("../../actions/index");
var _actions2 = _interopRequireDefault(_actions);
var _source = require("../../utils/source");
var _SourcesTreeItem = require("./SourcesTreeItem");
var _SourcesTreeItem2 = _interopRequireDefault(_SourcesTreeItem);
@ -36,6 +36,8 @@ var _Svg2 = _interopRequireDefault(_Svg);
var _sourcesTree = require("../../utils/sources-tree/index");
var _source = require("../../utils/source");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* This Source Code Form is subject to the terms of the Mozilla Public
@ -88,21 +90,10 @@ class SourcesTree extends _react.Component {
}
if (nextProps.shownSource && nextProps.shownSource != shownSource) {
const matchingSources = Object.keys(sources).filter(sourceId => {
return (0, _source.getRawSourceURL)(sources[sourceId].url) === nextProps.shownSource;
const listItems = (0, _sourcesTree.getDirectories)(nextProps.shownSource, sourceTree);
return this.setState({
listItems
});
if (matchingSources.length) {
const listItems = (0, _sourcesTree.getDirectories)(sources[matchingSources[0]], sourceTree);
if (listItems && listItems.length) {
this.selectItem(listItems[0]);
}
return this.setState({
listItems
});
}
}
if (nextProps.selectedSource && nextProps.selectedSource != selectedSource) {
@ -250,9 +241,7 @@ var _initialiseProps = function () {
};
this.selectItem = item => {
if (!(0, _sourcesTree.isDirectory)(item) && // This second check isn't strictly necessary, but it ensures that Flow
// knows that we are doing the correct thing.
!Array.isArray(item.contents)) {
if (item.type == "source" && !Array.isArray(item.contents)) {
this.props.selectSource(item.contents.id);
}
};
@ -336,10 +325,20 @@ var _initialiseProps = function () {
};
};
function getSourceForTree(state, source) {
if (!source || !source.isPrettyPrinted) {
return source;
}
return (0, _sources.getSourceByURL)(state, (0, _source.getRawSourceURL)(source.url));
}
const mapStateToProps = state => {
const selectedSource = (0, _selectors.getSelectedSource)(state);
const shownSource = (0, _selectors.getShownSource)(state);
return {
shownSource: (0, _selectors.getShownSource)(state),
selectedSource: (0, _selectors.getSelectedSource)(state),
shownSource: getSourceForTree(state, shownSource),
selectedSource: getSourceForTree(state, selectedSource),
debuggeeUrl: (0, _selectors.getDebuggeeUrl)(state),
expanded: (0, _selectors.getExpandedState)(state),
projectRoot: (0, _selectors.getProjectDirectoryRoot)(state),

View File

@ -268,6 +268,15 @@ class ProjectSearch extends _react.Component {
shortcuts.off("Enter", this.onEnterPress);
}
componentDidUpdate(prevProps) {
// If the query changes in redux, also change it in the UI
if (prevProps.query !== this.props.query) {
this.setState({
inputValue: this.props.query
});
}
}
shouldShowErrorEmoji() {
return !this.getResultCount() && this.props.status === _projectTextSearch.statusType.done;
}

View File

@ -91,7 +91,7 @@ class ManagedTree extends _react.Component {
focused
} = this.props;
if (nextProps.listItems && nextProps.listItems != listItems && nextProps.listItems.length) {
if (nextProps.listItems && nextProps.listItems != listItems) {
this.expandListItems(nextProps.listItems);
}

View File

@ -78,7 +78,7 @@ class Popover extends _react.Component {
});
}
this.props.onPopoverCoords(this.state.coords);
this.props.onPopoverCoords(coords);
}
calculateLeft(target, editor, popover, orientation) {

View File

@ -24,14 +24,15 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
* File Search reducer
* @module reducers/fileSearch
*/
const emptySearchResults = Object.freeze({
matches: Object.freeze([]),
matchIndex: -1,
index: -1,
count: 0
});
const createFileSearchState = exports.createFileSearchState = (0, _makeRecord2.default)({
query: "",
searchResults: {
matches: [],
matchIndex: -1,
index: -1,
count: 0
},
searchResults: emptySearchResults,
modifiers: (0, _makeRecord2.default)({
caseSensitive: _prefs.prefs.fileSearchCaseSensitive,
wholeWord: _prefs.prefs.fileSearchWholeWord,
@ -70,6 +71,11 @@ function update(state = createFileSearchState(), action) {
return state.setIn(["modifiers", action.modifier], actionVal);
}
case "NAVIGATE":
{
return state.set("query", "").set("searchResults", emptySearchResults);
}
default:
{
return state;

View File

@ -75,6 +75,7 @@ function update(state = initialProjectTextSearchState(), action) {
case "CLEAR_SEARCH":
case "CLOSE_PROJECT_SEARCH":
case "NAVIGATE":
return state.merge({
query: "",
results: state.get("results").clear(),

View File

@ -35,7 +35,7 @@ const createUIState = exports.createUIState = (0, _makeRecord2.default)({
selectedPrimaryPaneTab: "sources",
activeSearch: null,
contextMenu: {},
shownSource: "",
shownSource: null,
projectDirectoryRoot: _prefs.prefs.projectDirectoryRoot,
startPanelCollapsed: _prefs.prefs.startPanelCollapsed,
endPanelCollapsed: _prefs.prefs.endPanelCollapsed,
@ -70,7 +70,7 @@ function update(state = createUIState(), action) {
case "SHOW_SOURCE":
{
return state.set("shownSource", action.sourceUrl);
return state.set("shownSource", action.source);
}
case "TOGGLE_PANE":
@ -128,6 +128,11 @@ function update(state = createUIState(), action) {
return state;
}
case "NAVIGATE":
{
return state.set("activeSearch", null).set("highlightedLineRange", {});
}
default:
{
return state;

View File

@ -81,11 +81,14 @@ function setupHelper(obj) {
},
formatters: {
pausePoints: url => _formatPausePoints(dbg, url)
},
_telemetry: {
events: {}
}
};
window.dbg = dbg;
if ((0, _devtoolsEnvironment.isDevelopment)()) {
if ((0, _devtoolsEnvironment.isDevelopment)() && !(0, _devtoolsEnvironment.isTesting)()) {
console.group("Development Notes");
const baseUrl = "https://devtools-html.github.io/debugger.html";
const localDevelopmentUrl = `${baseUrl}/docs/dbg.html`;

View File

@ -33,38 +33,18 @@ async function getApplicableBindingsForOriginalPosition(generatedAstBindings, so
end
}, bindingType, locationType, sourceMaps) {
const ranges = await sourceMaps.getGeneratedRanges(start, source);
const resultRanges = ranges.reduce((acc, mapRange) => {
// Some tooling creates ranges that map a line as a whole, which is useful
// for step-debugging, but can easily lead to finding the wrong binding.
// To avoid these false-positives, we entirely ignore ranges that cover
// full lines.
if (locationType === "ref" && mapRange.columnStart === 0 && mapRange.columnEnd === Infinity) {
return acc;
const resultRanges = ranges.map(mapRange => ({
start: {
line: mapRange.line,
column: mapRange.columnStart
},
end: {
line: mapRange.line,
// SourceMapConsumer's 'lastColumn' is inclusive, so we add 1 to make
// it exclusive like all other locations.
column: mapRange.columnEnd + 1
}
const range = {
start: {
line: mapRange.line,
column: mapRange.columnStart
},
end: {
line: mapRange.line,
// SourceMapConsumer's 'lastColumn' is inclusive, so we add 1 to make
// it exclusive like all other locations.
column: mapRange.columnEnd + 1
}
};
const previous = acc[acc.length - 1];
if (previous && (previous.end.line === range.start.line && previous.end.column === range.start.column || previous.end.line + 1 === range.start.line && previous.end.column === Infinity && range.start.column === 0)) {
previous.end.line = range.end.line;
previous.end.column = range.end.column;
} else {
acc.push(range);
}
return acc;
}, []); // When searching for imports, we expand the range to up to the next available
})); // When searching for imports, we expand the range to up to the next available
// mapping to allow for import declarations that are composed of multiple
// variable statements, where the later ones are entirely unmapped.
// Babel 6 produces imports in this style, e.g.

View File

@ -237,6 +237,16 @@ async function findGeneratedBinding(sourceMaps, client, source, name, originalBi
hadApplicableBindings = true;
}
if (locationType === "ref") {
// Some tooling creates ranges that map a line as a whole, which is useful
// for step-debugging, but can easily lead to finding the wrong binding.
// To avoid these false-positives, we entirely ignore bindings matched
// by ranges that cover full lines.
applicableBindings = applicableBindings.filter(({
range
}) => !(range.start.column === 0 && range.end.column === Infinity));
}
if (locationType !== "ref" && !(await (0, _getApplicableBindingsForOriginalPosition.originalRangeStartsInside)(source, pos, sourceMaps))) {
applicableBindings = [];
}

View File

@ -44,6 +44,8 @@ var _devtoolsModules = require("devtools/client/debugger/new/dist/vendors").vend
var _sourcesTree = require("./sources-tree/index");
var _prefs = require("./prefs");
const sourceTypes = exports.sourceTypes = {
coffee: "coffeescript",
js: "javascript",
@ -67,18 +69,7 @@ function trimUrlQuery(url) {
}
function shouldPrettyPrint(source) {
if (!source) {
return false;
}
const _isPretty = isPretty(source);
const _isJavaScript = isJavaScript(source);
const isOriginal = (0, _devtoolsSourceMap.isOriginalId)(source.id);
const hasSourceMap = source.sourceMapURL;
if (_isPretty || isOriginal || hasSourceMap || !_isJavaScript) {
if (!source || isPretty(source) || !isJavaScript(source) || (0, _devtoolsSourceMap.isOriginalId)(source.id) || source.sourceMapURL || !_prefs.prefs.clientSourceMapsEnabled) {
return false;
}

View File

@ -43,7 +43,7 @@ function updateTree({
return {
uncollapsedTree,
sourceTree: newSourceTree,
parentMap: (0, _utils.createParentMap)(sourceTree),
parentMap: (0, _utils.createParentMap)(newSourceTree),
focusedItem: null
};
}

View File

@ -9,6 +9,8 @@ var _telemetry = require("devtools/client/shared/telemetry");
var _telemetry2 = _interopRequireDefault(_telemetry);
var _devtoolsEnvironment = require("devtools/client/debugger/new/dist/vendors").vendored["devtools-environment"];
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* This Source Code Form is subject to the terms of the Mozilla Public
@ -63,7 +65,11 @@ const telemetry = new _telemetry2.default();
function recordEvent(eventName, fields = {}) {
let sessionId = -1;
if (typeof window === "object" && window.parent.frameElement) {
if (typeof window !== "object") {
return;
}
if (window.parent.frameElement) {
sessionId = window.parent.frameElement.getAttribute("session_id");
}
/* eslint-disable camelcase */
@ -74,4 +80,14 @@ function recordEvent(eventName, fields = {}) {
...fields
});
/* eslint-enable camelcase */
if (!(0, _devtoolsEnvironment.isFirefoxPanel)() && window.dbg) {
const events = window.dbg._telemetry.events;
if (!events[eventName]) {
events[eventName] = [];
}
events[eventName].push(fields);
}
}

View File

@ -8,73 +8,213 @@ support-files =
!/devtools/client/commandline/test/helpers.js
!/devtools/client/shared/test/shared-head.js
!/devtools/client/shared/test/telemetry-test-helpers.js
## START-SOURCEMAPPED-FIXTURES - Generated by examples/sourcemapped/build.js
examples/sourcemapped/polyfill-bundle.js
examples/sourcemapped/fixtures/typescript-classes/output.js
examples/sourcemapped/fixtures/typescript-classes/output.js.map
examples/sourcemapped/fixtures/rollup-babel-classes/output.js
examples/sourcemapped/fixtures/rollup-babel-classes/output.js.map
examples/sourcemapped/fixtures/rollup-babel-lex-and-nonlex/output.js
examples/sourcemapped/fixtures/rollup-babel-lex-and-nonlex/output.js.map
examples/sourcemapped/fixtures/rollup-babel-modules/output.js
examples/sourcemapped/fixtures/rollup-babel-modules/output.js.map
examples/sourcemapped/fixtures/rollup-modules/output.js
examples/sourcemapped/fixtures/rollup-modules/output.js.map
examples/sourcemapped/fixtures/babel-bindings-with-flow/output.js
examples/sourcemapped/fixtures/babel-bindings-with-flow/output.js.map
examples/sourcemapped/fixtures/babel-eval-maps/output.js
examples/sourcemapped/fixtures/babel-eval-maps/output.js.map
examples/sourcemapped/fixtures/babel-for-of/output.js
examples/sourcemapped/fixtures/babel-for-of/output.js.map
examples/sourcemapped/fixtures/babel-line-start-bindings-es6/output.js
examples/sourcemapped/fixtures/babel-line-start-bindings-es6/output.js.map
examples/sourcemapped/fixtures/babel-shadowed-vars/output.js
examples/sourcemapped/fixtures/babel-shadowed-vars/output.js.map
examples/sourcemapped/fixtures/babel-this-arguments-bindings/output.js
examples/sourcemapped/fixtures/babel-this-arguments-bindings/output.js.map
examples/sourcemapped/fixtures/babel-modules-cjs/output.js
examples/sourcemapped/fixtures/babel-modules-cjs/output.js.map
examples/sourcemapped/fixtures/babel-classes/output.js
examples/sourcemapped/fixtures/babel-classes/output.js.map
examples/sourcemapped/fixtures/babel-commonjs/output.js
examples/sourcemapped/fixtures/babel-commonjs/output.js.map
examples/sourcemapped/fixtures/babel-for-loops/output.js
examples/sourcemapped/fixtures/babel-for-loops/output.js.map
examples/sourcemapped/fixtures/babel-functions/output.js
examples/sourcemapped/fixtures/babel-functions/output.js.map
examples/sourcemapped/fixtures/babel-lex-and-nonlex/output.js
examples/sourcemapped/fixtures/babel-lex-and-nonlex/output.js.map
examples/sourcemapped/fixtures/babel-type-module/output.js
examples/sourcemapped/fixtures/babel-type-module/output.js.map
examples/sourcemapped/fixtures/babel-type-script/output.js
examples/sourcemapped/fixtures/babel-type-script/output.js.map
examples/sourcemapped/fixtures/babel-out-of-order-declarations-cjs/output.js
examples/sourcemapped/fixtures/babel-out-of-order-declarations-cjs/output.js.map
examples/sourcemapped/fixtures/babel-flowtype-bindings/output.js
examples/sourcemapped/fixtures/babel-flowtype-bindings/output.js.map
examples/sourcemapped/fixtures/babel-step-over-for-of/output.js
examples/sourcemapped/fixtures/babel-step-over-for-of/output.js.map
examples/sourcemapped/fixtures/babel-step-over-for-of-closure/output.js
examples/sourcemapped/fixtures/babel-step-over-for-of-closure/output.js.map
examples/sourcemapped/fixtures/babel-step-over-for-of-array/output.js
examples/sourcemapped/fixtures/babel-step-over-for-of-array/output.js.map
examples/sourcemapped/fixtures/babel-step-over-for-of-array-closure/output.js
examples/sourcemapped/fixtures/babel-step-over-for-of-array-closure/output.js.map
examples/sourcemapped/fixtures/babel-step-over-function-params/output.js
examples/sourcemapped/fixtures/babel-step-over-function-params/output.js.map
examples/sourcemapped/fixtures/babel-step-over-regenerator-await/output.js
examples/sourcemapped/fixtures/babel-step-over-regenerator-await/output.js.map
examples/sourcemapped/fixtures/babel-switches/output.js
examples/sourcemapped/fixtures/babel-switches/output.js.map
examples/sourcemapped/fixtures/babel-try-catches/output.js
examples/sourcemapped/fixtures/babel-try-catches/output.js.map
examples/sourcemapped/fixtures/babel-modules-webpack/output.js
examples/sourcemapped/fixtures/babel-modules-webpack/output.js.map
examples/sourcemapped/fixtures/babel-modules-webpack-es6/output.js
examples/sourcemapped/fixtures/babel-modules-webpack-es6/output.js.map
examples/sourcemapped/fixtures/webpack-line-mappings/output.js
examples/sourcemapped/fixtures/webpack-line-mappings/output.js.map
examples/sourcemapped/fixtures/webpack-functions/output.js
examples/sourcemapped/fixtures/webpack-functions/output.js.map
examples/sourcemapped/output/webpack3/classes.js
examples/sourcemapped/output/webpack3/classes.js.map
examples/sourcemapped/output/webpack3/esmodules.js
examples/sourcemapped/output/webpack3/esmodules.js.map
examples/sourcemapped/output/webpack3/esmodules-cjs.js
examples/sourcemapped/output/webpack3/esmodules-cjs.js.map
examples/sourcemapped/output/webpack3/esmodules-es6.js
examples/sourcemapped/output/webpack3/esmodules-es6.js.map
examples/sourcemapped/output/webpack3/eval-maps.js
examples/sourcemapped/output/webpack3/eval-maps.js.map
examples/sourcemapped/output/webpack3/for-loops.js
examples/sourcemapped/output/webpack3/for-loops.js.map
examples/sourcemapped/output/webpack3/for-of.js
examples/sourcemapped/output/webpack3/for-of.js.map
examples/sourcemapped/output/webpack3/functions.js
examples/sourcemapped/output/webpack3/functions.js.map
examples/sourcemapped/output/webpack3/lex-and-nonlex.js
examples/sourcemapped/output/webpack3/lex-and-nonlex.js.map
examples/sourcemapped/output/webpack3/line-start-bindings-es6.js
examples/sourcemapped/output/webpack3/line-start-bindings-es6.js.map
examples/sourcemapped/output/webpack3/modules-cjs.js
examples/sourcemapped/output/webpack3/modules-cjs.js.map
examples/sourcemapped/output/webpack3/out-of-order-declarations-cjs.js
examples/sourcemapped/output/webpack3/out-of-order-declarations-cjs.js.map
examples/sourcemapped/output/webpack3/shadowed-vars.js
examples/sourcemapped/output/webpack3/shadowed-vars.js.map
examples/sourcemapped/output/webpack3/step-over-for-of.js
examples/sourcemapped/output/webpack3/step-over-for-of.js.map
examples/sourcemapped/output/webpack3/step-over-for-of-array.js
examples/sourcemapped/output/webpack3/step-over-for-of-array.js.map
examples/sourcemapped/output/webpack3/step-over-for-of-array-closure.js
examples/sourcemapped/output/webpack3/step-over-for-of-array-closure.js.map
examples/sourcemapped/output/webpack3/step-over-for-of-closure.js
examples/sourcemapped/output/webpack3/step-over-for-of-closure.js.map
examples/sourcemapped/output/webpack3/step-over-function-params.js
examples/sourcemapped/output/webpack3/step-over-function-params.js.map
examples/sourcemapped/output/webpack3/step-over-regenerator-await.js
examples/sourcemapped/output/webpack3/step-over-regenerator-await.js.map
examples/sourcemapped/output/webpack3/switches.js
examples/sourcemapped/output/webpack3/switches.js.map
examples/sourcemapped/output/webpack3/this-arguments-bindings.js
examples/sourcemapped/output/webpack3/this-arguments-bindings.js.map
examples/sourcemapped/output/webpack3/try-catches.js
examples/sourcemapped/output/webpack3/try-catches.js.map
examples/sourcemapped/output/webpack3/type-module.js
examples/sourcemapped/output/webpack3/type-module.js.map
examples/sourcemapped/output/webpack3/type-script-cjs.js
examples/sourcemapped/output/webpack3/type-script-cjs.js.map
examples/sourcemapped/output/webpack3/typescript-classes.js
examples/sourcemapped/output/webpack3/typescript-classes.js.map
examples/sourcemapped/output/webpack3/webpack-functions.js
examples/sourcemapped/output/webpack3/webpack-functions.js.map
examples/sourcemapped/output/webpack3/webpack-line-mappings.js
examples/sourcemapped/output/webpack3/webpack-line-mappings.js.map
examples/sourcemapped/output/webpack3-babel6/babel-bindings-with-flow.js
examples/sourcemapped/output/webpack3-babel6/babel-bindings-with-flow.js.map
examples/sourcemapped/output/webpack3-babel6/babel-flowtype-bindings.js
examples/sourcemapped/output/webpack3-babel6/babel-flowtype-bindings.js.map
examples/sourcemapped/output/webpack3-babel6/classes.js
examples/sourcemapped/output/webpack3-babel6/classes.js.map
examples/sourcemapped/output/webpack3-babel6/esmodules.js
examples/sourcemapped/output/webpack3-babel6/esmodules.js.map
examples/sourcemapped/output/webpack3-babel6/esmodules-cjs.js
examples/sourcemapped/output/webpack3-babel6/esmodules-cjs.js.map
examples/sourcemapped/output/webpack3-babel6/esmodules-es6.js
examples/sourcemapped/output/webpack3-babel6/esmodules-es6.js.map
examples/sourcemapped/output/webpack3-babel6/eval-maps.js
examples/sourcemapped/output/webpack3-babel6/eval-maps.js.map
examples/sourcemapped/output/webpack3-babel6/for-loops.js
examples/sourcemapped/output/webpack3-babel6/for-loops.js.map
examples/sourcemapped/output/webpack3-babel6/for-of.js
examples/sourcemapped/output/webpack3-babel6/for-of.js.map
examples/sourcemapped/output/webpack3-babel6/functions.js
examples/sourcemapped/output/webpack3-babel6/functions.js.map
examples/sourcemapped/output/webpack3-babel6/lex-and-nonlex.js
examples/sourcemapped/output/webpack3-babel6/lex-and-nonlex.js.map
examples/sourcemapped/output/webpack3-babel6/line-start-bindings-es6.js
examples/sourcemapped/output/webpack3-babel6/line-start-bindings-es6.js.map
examples/sourcemapped/output/webpack3-babel6/modules-cjs.js
examples/sourcemapped/output/webpack3-babel6/modules-cjs.js.map
examples/sourcemapped/output/webpack3-babel6/out-of-order-declarations-cjs.js
examples/sourcemapped/output/webpack3-babel6/out-of-order-declarations-cjs.js.map
examples/sourcemapped/output/webpack3-babel6/shadowed-vars.js
examples/sourcemapped/output/webpack3-babel6/shadowed-vars.js.map
examples/sourcemapped/output/webpack3-babel6/step-over-for-of.js
examples/sourcemapped/output/webpack3-babel6/step-over-for-of.js.map
examples/sourcemapped/output/webpack3-babel6/step-over-for-of-array.js
examples/sourcemapped/output/webpack3-babel6/step-over-for-of-array.js.map
examples/sourcemapped/output/webpack3-babel6/step-over-for-of-array-closure.js
examples/sourcemapped/output/webpack3-babel6/step-over-for-of-array-closure.js.map
examples/sourcemapped/output/webpack3-babel6/step-over-for-of-closure.js
examples/sourcemapped/output/webpack3-babel6/step-over-for-of-closure.js.map
examples/sourcemapped/output/webpack3-babel6/step-over-function-params.js
examples/sourcemapped/output/webpack3-babel6/step-over-function-params.js.map
examples/sourcemapped/output/webpack3-babel6/step-over-regenerator-await.js
examples/sourcemapped/output/webpack3-babel6/step-over-regenerator-await.js.map
examples/sourcemapped/output/webpack3-babel6/switches.js
examples/sourcemapped/output/webpack3-babel6/switches.js.map
examples/sourcemapped/output/webpack3-babel6/this-arguments-bindings.js
examples/sourcemapped/output/webpack3-babel6/this-arguments-bindings.js.map
examples/sourcemapped/output/webpack3-babel6/try-catches.js
examples/sourcemapped/output/webpack3-babel6/try-catches.js.map
examples/sourcemapped/output/webpack3-babel6/type-module.js
examples/sourcemapped/output/webpack3-babel6/type-module.js.map
examples/sourcemapped/output/webpack3-babel6/type-script-cjs.js
examples/sourcemapped/output/webpack3-babel6/type-script-cjs.js.map
examples/sourcemapped/output/webpack3-babel6/webpack-functions.js
examples/sourcemapped/output/webpack3-babel6/webpack-functions.js.map
examples/sourcemapped/output/webpack3-babel6/webpack-line-mappings.js
examples/sourcemapped/output/webpack3-babel6/webpack-line-mappings.js.map
examples/sourcemapped/output/rollup/classes.js
examples/sourcemapped/output/rollup/classes.js.map
examples/sourcemapped/output/rollup/esmodules.js
examples/sourcemapped/output/rollup/esmodules.js.map
examples/sourcemapped/output/rollup/esmodules-es6.js
examples/sourcemapped/output/rollup/esmodules-es6.js.map
examples/sourcemapped/output/rollup/eval-maps.js
examples/sourcemapped/output/rollup/eval-maps.js.map
examples/sourcemapped/output/rollup/for-loops.js
examples/sourcemapped/output/rollup/for-loops.js.map
examples/sourcemapped/output/rollup/for-of.js
examples/sourcemapped/output/rollup/for-of.js.map
examples/sourcemapped/output/rollup/functions.js
examples/sourcemapped/output/rollup/functions.js.map
examples/sourcemapped/output/rollup/lex-and-nonlex.js
examples/sourcemapped/output/rollup/lex-and-nonlex.js.map
examples/sourcemapped/output/rollup/line-start-bindings-es6.js
examples/sourcemapped/output/rollup/line-start-bindings-es6.js.map
examples/sourcemapped/output/rollup/shadowed-vars.js
examples/sourcemapped/output/rollup/shadowed-vars.js.map
examples/sourcemapped/output/rollup/step-over-for-of.js
examples/sourcemapped/output/rollup/step-over-for-of.js.map
examples/sourcemapped/output/rollup/step-over-for-of-array.js
examples/sourcemapped/output/rollup/step-over-for-of-array.js.map
examples/sourcemapped/output/rollup/step-over-for-of-array-closure.js
examples/sourcemapped/output/rollup/step-over-for-of-array-closure.js.map
examples/sourcemapped/output/rollup/step-over-for-of-closure.js
examples/sourcemapped/output/rollup/step-over-for-of-closure.js.map
examples/sourcemapped/output/rollup/step-over-function-params.js
examples/sourcemapped/output/rollup/step-over-function-params.js.map
examples/sourcemapped/output/rollup/step-over-regenerator-await.js
examples/sourcemapped/output/rollup/step-over-regenerator-await.js.map
examples/sourcemapped/output/rollup/switches.js
examples/sourcemapped/output/rollup/switches.js.map
examples/sourcemapped/output/rollup/this-arguments-bindings.js
examples/sourcemapped/output/rollup/this-arguments-bindings.js.map
examples/sourcemapped/output/rollup/try-catches.js
examples/sourcemapped/output/rollup/try-catches.js.map
examples/sourcemapped/output/rollup/type-module.js
examples/sourcemapped/output/rollup/type-module.js.map
examples/sourcemapped/output/rollup/typescript-classes.js
examples/sourcemapped/output/rollup/typescript-classes.js.map
examples/sourcemapped/output/rollup/webpack-functions.js
examples/sourcemapped/output/rollup/webpack-functions.js.map
examples/sourcemapped/output/rollup/webpack-line-mappings.js
examples/sourcemapped/output/rollup/webpack-line-mappings.js.map
examples/sourcemapped/output/rollup-babel6/babel-bindings-with-flow.js
examples/sourcemapped/output/rollup-babel6/babel-bindings-with-flow.js.map
examples/sourcemapped/output/rollup-babel6/babel-flowtype-bindings.js
examples/sourcemapped/output/rollup-babel6/babel-flowtype-bindings.js.map
examples/sourcemapped/output/rollup-babel6/classes.js
examples/sourcemapped/output/rollup-babel6/classes.js.map
examples/sourcemapped/output/rollup-babel6/esmodules.js
examples/sourcemapped/output/rollup-babel6/esmodules.js.map
examples/sourcemapped/output/rollup-babel6/esmodules-es6.js
examples/sourcemapped/output/rollup-babel6/esmodules-es6.js.map
examples/sourcemapped/output/rollup-babel6/eval-maps.js
examples/sourcemapped/output/rollup-babel6/eval-maps.js.map
examples/sourcemapped/output/rollup-babel6/for-loops.js
examples/sourcemapped/output/rollup-babel6/for-loops.js.map
examples/sourcemapped/output/rollup-babel6/for-of.js
examples/sourcemapped/output/rollup-babel6/for-of.js.map
examples/sourcemapped/output/rollup-babel6/functions.js
examples/sourcemapped/output/rollup-babel6/functions.js.map
examples/sourcemapped/output/rollup-babel6/lex-and-nonlex.js
examples/sourcemapped/output/rollup-babel6/lex-and-nonlex.js.map
examples/sourcemapped/output/rollup-babel6/line-start-bindings-es6.js
examples/sourcemapped/output/rollup-babel6/line-start-bindings-es6.js.map
examples/sourcemapped/output/rollup-babel6/shadowed-vars.js
examples/sourcemapped/output/rollup-babel6/shadowed-vars.js.map
examples/sourcemapped/output/rollup-babel6/step-over-for-of.js
examples/sourcemapped/output/rollup-babel6/step-over-for-of.js.map
examples/sourcemapped/output/rollup-babel6/step-over-for-of-array.js
examples/sourcemapped/output/rollup-babel6/step-over-for-of-array.js.map
examples/sourcemapped/output/rollup-babel6/step-over-for-of-array-closure.js
examples/sourcemapped/output/rollup-babel6/step-over-for-of-array-closure.js.map
examples/sourcemapped/output/rollup-babel6/step-over-for-of-closure.js
examples/sourcemapped/output/rollup-babel6/step-over-for-of-closure.js.map
examples/sourcemapped/output/rollup-babel6/step-over-function-params.js
examples/sourcemapped/output/rollup-babel6/step-over-function-params.js.map
examples/sourcemapped/output/rollup-babel6/step-over-regenerator-await.js
examples/sourcemapped/output/rollup-babel6/step-over-regenerator-await.js.map
examples/sourcemapped/output/rollup-babel6/switches.js
examples/sourcemapped/output/rollup-babel6/switches.js.map
examples/sourcemapped/output/rollup-babel6/this-arguments-bindings.js
examples/sourcemapped/output/rollup-babel6/this-arguments-bindings.js.map
examples/sourcemapped/output/rollup-babel6/try-catches.js
examples/sourcemapped/output/rollup-babel6/try-catches.js.map
examples/sourcemapped/output/rollup-babel6/type-module.js
examples/sourcemapped/output/rollup-babel6/type-module.js.map
examples/sourcemapped/output/rollup-babel6/webpack-functions.js
examples/sourcemapped/output/rollup-babel6/webpack-functions.js.map
examples/sourcemapped/output/rollup-babel6/webpack-line-mappings.js
examples/sourcemapped/output/rollup-babel6/webpack-line-mappings.js.map
## END-SOURCEMAPPED-FIXTURES
examples/ember/quickstart/dist/index.html
examples/ember/quickstart/dist/assets/quickstart.css
examples/ember/quickstart/dist/assets/quickstart.js

View File

@ -1,11 +1,12 @@
async function evalInConsoleAtPoint(
dbg,
target,
fixture,
{ line, column },
statements
) {
const filename = `fixtures/${fixture}/input.js`;
const fnName = fixture.replace(/-([a-z])/g, (s, c) => c.toUpperCase());
const filename = `${target}://./${fixture}/input.`;
const fnName = (target + "-" + fixture).replace(/-([a-z])/g, (s, c) => c.toUpperCase());
await invokeWithBreakpoint(
dbg,
@ -41,7 +42,7 @@ add_task(async function() {
const dbg = await initDebugger("doc-sourcemapped.html");
await evalInConsoleAtPoint(dbg, "babel-eval-maps", { line: 14, column: 4 }, [
await evalInConsoleAtPoint(dbg, "webpack3-babel6", "eval-maps", { line: 14, column: 4 }, [
"one === 1",
"two === 4",
"three === 5"
@ -49,8 +50,9 @@ add_task(async function() {
await evalInConsoleAtPoint(
dbg,
"babel-modules-cjs",
{ line: 20, column: 2 },
"webpack3-babel6",
"esmodules-cjs",
{ line: 18, column: 2 },
[
`aDefault === "a-default"`,
`anAliased === "an-original"`,
@ -66,7 +68,8 @@ add_task(async function() {
await evalInConsoleAtPoint(
dbg,
"babel-shadowed-vars",
"webpack3-babel6",
"shadowed-vars",
{ line: 18, column: 6 },
[`aVar === "var3"`, `aLet === "let3"`, `aConst === "const3"`]
);

View File

@ -4,9 +4,9 @@
// Tests for preview through Babel's compile output.
requestLongerTimeout(3);
async function breakpointPreviews(dbg, fixture, { line, column }, previews) {
const filename = `fixtures/${fixture}/input.js`;
const fnName = fixture.replace(/-([a-z])/g, (s, c) => c.toUpperCase());
async function breakpointPreviews(dbg, target, fixture, { line, column }, previews) {
const filename = `${target}://./${fixture}/input.`;
const fnName = (target + "-" + fixture).replace(/-([a-z])/g, (s, c) => c.toUpperCase());
log(`Starting ${fixture} tests`);
@ -24,7 +24,7 @@ async function breakpointPreviews(dbg, fixture, { line, column }, previews) {
}
function testForOf(dbg) {
return breakpointPreviews(dbg, "babel-for-of", { line: 5, column: 4 }, [
return breakpointPreviews(dbg, "webpack3-babel6", "for-of", { line: 5, column: 4 }, [
{
line: 5,
column: 7,
@ -49,7 +49,8 @@ function testForOf(dbg) {
function testShadowing(dbg) {
return breakpointPreviews(
dbg,
"babel-shadowed-vars",
"webpack3-babel6",
"shadowed-vars",
{ line: 18, column: 6 },
[
// These aren't what the user would expect, but we test them anyway since
@ -117,66 +118,60 @@ function testShadowing(dbg) {
}
function testImportedBindings(dbg) {
return breakpointPreviews(dbg, "babel-modules-cjs", { line: 20, column: 2 }, [
return breakpointPreviews(dbg, "webpack3-babel6", "esmodules-cjs", { line: 20, column: 2 }, [
{
line: 22,
line: 20,
column: 16,
expression: "_mod2.default;",
result: '"a-default"'
},
{
line: 23,
line: 21,
column: 16,
expression: "_mod4.original;",
result: '"an-original"'
},
{
line: 22,
column: 16,
expression: "_mod3.aNamed;",
result: '"a-named"'
},
{
line: 23,
column: 16,
expression: "_mod3.aNamed;",
result: '"a-named"'
},
{
line: 24,
column: 16,
expression: "_mod3.aNamed;",
result: '"a-named"'
},
{
line: 25,
column: 16,
expression: "_mod3.aNamed;",
result: '"a-named"'
},
{
line: 26,
column: 16,
expression: "aNamespace;",
fields: [["aNamed", "a-named"], ["default", "a-default"]]
},
{
line: 31,
line: 29,
column: 20,
expression: "_mod7.default;",
result: '"a-default2"'
},
{
line: 32,
line: 30,
column: 20,
expression: "_mod9.original;",
result: '"an-original2"'
},
{
line: 33,
line: 31,
column: 20,
expression: "_mod8.aNamed2;",
result: '"a-named2"'
},
{
line: 34,
line: 32,
column: 20,
expression: "_mod8.aNamed2;",
result: '"a-named2"'
},
{
line: 35,
column: 20,
expression: "aNamespace2;",
fields: [["aNamed", "a-named2"], ["default", "a-default2"]]
}
]);
}

View File

@ -4,9 +4,9 @@
// Tests for stepping through Babel's compile output.
requestLongerTimeout(4);
async function breakpointSteps(dbg, fixture, { line, column }, steps) {
const filename = `fixtures/${fixture}/input.js`;
const fnName = fixture.replace(/-([a-z])/g, (s, c) => c.toUpperCase());
async function breakpointSteps(dbg, target, fixture, { line, column }, steps) {
const filename = `${target}://./${fixture}/input.`;
const fnName = (target + "-" + fixture).replace(/-([a-z])/g, (s, c) => c.toUpperCase());
await invokeWithBreakpoint(
dbg,
@ -52,7 +52,8 @@ async function runSteps(dbg, source, steps) {
function testStepOverForOf(dbg) {
return breakpointSteps(
dbg,
"babel-step-over-for-of",
"webpack3-babel6",
"step-over-for-of",
{ line: 4, column: 2 },
[
["stepOver", { line: 6, column: 2 }],
@ -70,7 +71,8 @@ function testStepOverForOf(dbg) {
function testStepOverForOfArray(dbg) {
return breakpointSteps(
dbg,
"babel-step-over-for-of-array",
"webpack3-babel6",
"step-over-for-of-array",
{ line: 3, column: 2 },
[
["stepOver", { line: 5, column: 2 }],
@ -90,7 +92,8 @@ function testStepOverForOfArray(dbg) {
function testStepOveForOfClosure(dbg) {
return breakpointSteps(
dbg,
"babel-step-over-for-of-closure",
"webpack3-babel6",
"step-over-for-of-closure",
{ line: 6, column: 2 },
[
["stepOver", { line: 8, column: 2 }],
@ -105,7 +108,8 @@ function testStepOveForOfClosure(dbg) {
function testStepOverForOfArrayClosure(dbg) {
return breakpointSteps(
dbg,
"babel-step-over-for-of-array-closure",
"webpack3-babel6",
"step-over-for-of-array-closure",
{ line: 3, column: 2 },
[
["stepOver", { line: 5, column: 2 }],
@ -121,7 +125,8 @@ function testStepOverForOfArrayClosure(dbg) {
function testStepOverFunctionParams(dbg) {
return breakpointSteps(
dbg,
"babel-step-over-function-params",
"webpack3-babel6",
"step-over-function-params",
{ line: 6, column: 2 },
[["stepOver", { line: 7, column: 2 }], ["stepIn", { line: 2, column: 2 }]]
);
@ -130,7 +135,8 @@ function testStepOverFunctionParams(dbg) {
function testStepOverRegeneratorAwait(dbg) {
return breakpointSteps(
dbg,
"babel-step-over-regenerator-await",
"webpack3-babel6",
"step-over-regenerator-await",
{ line: 2, column: 2 },
[
// Won't work until a fix to regenerator lands and we rebuild.

View File

@ -15,7 +15,10 @@ add_task(async function() {
await waitForSelectedSource(dbg, "math.min.js:formatted");
ok(true, "Pretty printed source is selected on reload");
const breakpointTab = findElementWithSelector(dbg, ".source-tab.active .filename");
is(breakpointTab.textContent, "math.min.js", ":formatted does not display in tab label");
await selectSource(dbg, "math.min.js:formatted");
const source = findSource(dbg, "math.min.js:formatted");
dbg.actions.showSource(source.id);
const focusedTreeElement = findElementWithSelector(dbg, ".sources-list .focused .label");
is(focusedTreeElement.textContent.trim(), "math.min.js", "Pretty printed source is selected in tree");
});

View File

@ -12,73 +12,211 @@
<!--
Content generated by examples/sourcemapped/build.js.
Run "yarn build" to update.
-->
<script src="sourcemapped/fixtures/babel-bindings-with-flow/output.js"></script>
<button onclick="babelBindingsWithFlow()">Run babel-bindings-with-flow</button>
<script src="sourcemapped/fixtures/babel-classes/output.js"></script>
<button onclick="babelClasses()">Run babel-classes</button>
<script src="sourcemapped/fixtures/babel-commonjs/output.js"></script>
<button onclick="babelCommonjs()">Run babel-commonjs</button>
<script src="sourcemapped/fixtures/babel-eval-maps/output.js"></script>
<button onclick="babelEvalMaps()">Run babel-eval-maps</button>
<script src="sourcemapped/fixtures/babel-flowtype-bindings/output.js"></script>
<button onclick="babelFlowtypeBindings()">Run babel-flowtype-bindings</button>
<script src="sourcemapped/fixtures/babel-for-loops/output.js"></script>
<button onclick="babelForLoops()">Run babel-for-loops</button>
<script src="sourcemapped/fixtures/babel-for-of/output.js"></script>
<button onclick="babelForOf()">Run babel-for-of</button>
<script src="sourcemapped/fixtures/babel-functions/output.js"></script>
<button onclick="babelFunctions()">Run babel-functions</button>
<script src="sourcemapped/fixtures/babel-lex-and-nonlex/output.js"></script>
<button onclick="babelLexAndNonlex()">Run babel-lex-and-nonlex</button>
<script src="sourcemapped/fixtures/babel-line-start-bindings-es6/output.js"></script>
<button onclick="babelLineStartBindingsEs6()">Run babel-line-start-bindings-es6</button>
<script src="sourcemapped/fixtures/babel-modules-cjs/output.js"></script>
<button onclick="babelModulesCjs()">Run babel-modules-cjs</button>
<script src="sourcemapped/fixtures/babel-modules-webpack/output.js"></script>
<button onclick="babelModulesWebpack()">Run babel-modules-webpack</button>
<script src="sourcemapped/fixtures/babel-modules-webpack-es6/output.js"></script>
<button onclick="babelModulesWebpackEs6()">Run babel-modules-webpack-es6</button>
<script src="sourcemapped/fixtures/babel-out-of-order-declarations-cjs/output.js"></script>
<button onclick="babelOutOfOrderDeclarationsCjs()">Run babel-out-of-order-declarations-cjs</button>
<script src="sourcemapped/fixtures/babel-shadowed-vars/output.js"></script>
<button onclick="babelShadowedVars()">Run babel-shadowed-vars</button>
<script src="sourcemapped/fixtures/babel-step-over-for-of/output.js"></script>
<button onclick="babelStepOverForOf()">Run babel-step-over-for-of</button>
<script src="sourcemapped/fixtures/babel-step-over-for-of-array/output.js"></script>
<button onclick="babelStepOverForOfArray()">Run babel-step-over-for-of-array</button>
<script src="sourcemapped/fixtures/babel-step-over-for-of-array-closure/output.js"></script>
<button onclick="babelStepOverForOfArrayClosure()">Run babel-step-over-for-of-array-closure</button>
<script src="sourcemapped/fixtures/babel-step-over-for-of-closure/output.js"></script>
<button onclick="babelStepOverForOfClosure()">Run babel-step-over-for-of-closure</button>
<script src="sourcemapped/fixtures/babel-step-over-function-params/output.js"></script>
<button onclick="babelStepOverFunctionParams()">Run babel-step-over-function-params</button>
<script src="sourcemapped/fixtures/babel-step-over-regenerator-await/output.js"></script>
<button onclick="babelStepOverRegeneratorAwait()">Run babel-step-over-regenerator-await</button>
<script src="sourcemapped/fixtures/babel-switches/output.js"></script>
<button onclick="babelSwitches()">Run babel-switches</button>
<script src="sourcemapped/fixtures/babel-this-arguments-bindings/output.js"></script>
<button onclick="babelThisArgumentsBindings()">Run babel-this-arguments-bindings</button>
<script src="sourcemapped/fixtures/babel-try-catches/output.js"></script>
<button onclick="babelTryCatches()">Run babel-try-catches</button>
<script src="sourcemapped/fixtures/babel-type-module/output.js"></script>
<button onclick="babelTypeModule()">Run babel-type-module</button>
<script src="sourcemapped/fixtures/babel-type-script/output.js"></script>
<button onclick="babelTypeScript()">Run babel-type-script</button>
<script src="sourcemapped/fixtures/rollup-babel-classes/output.js"></script>
<button onclick="rollupBabelClasses()">Run rollup-babel-classes</button>
<script src="sourcemapped/fixtures/rollup-babel-lex-and-nonlex/output.js"></script>
<button onclick="rollupBabelLexAndNonlex()">Run rollup-babel-lex-and-nonlex</button>
<script src="sourcemapped/fixtures/rollup-babel-modules/output.js"></script>
<button onclick="rollupBabelModules()">Run rollup-babel-modules</button>
<script src="sourcemapped/fixtures/rollup-modules/output.js"></script>
<button onclick="rollupModules()">Run rollup-modules</button>
<script src="sourcemapped/fixtures/typescript-classes/output.js"></script>
<button onclick="typescriptClasses()">Run typescript-classes</button>
<script src="sourcemapped/fixtures/webpack-functions/output.js"></script>
<button onclick="webpackFunctions()">Run webpack-functions</button>
<script src="sourcemapped/fixtures/webpack-line-mappings/output.js"></script>
<button onclick="webpackLineMappings()">Run webpack-line-mappings</button>
--><h2>webpack3</h2>
<script src="sourcemapped/output/webpack3/classes.js"></script>
<button onclick="webpack3Classes()">Run classes</button>
<script src="sourcemapped/output/webpack3/esmodules.js"></script>
<button onclick="webpack3Esmodules()">Run esmodules</button>
<script src="sourcemapped/output/webpack3/esmodules-cjs.js"></script>
<button onclick="webpack3EsmodulesCjs()">Run esmodules-cjs</button>
<script src="sourcemapped/output/webpack3/esmodules-es6.js"></script>
<button onclick="webpack3EsmodulesEs6()">Run esmodules-es6</button>
<script src="sourcemapped/output/webpack3/eval-maps.js"></script>
<button onclick="webpack3EvalMaps()">Run eval-maps</button>
<script src="sourcemapped/output/webpack3/for-loops.js"></script>
<button onclick="webpack3ForLoops()">Run for-loops</button>
<script src="sourcemapped/output/webpack3/for-of.js"></script>
<button onclick="webpack3ForOf()">Run for-of</button>
<script src="sourcemapped/output/webpack3/functions.js"></script>
<button onclick="webpack3Functions()">Run functions</button>
<script src="sourcemapped/output/webpack3/lex-and-nonlex.js"></script>
<button onclick="webpack3LexAndNonlex()">Run lex-and-nonlex</button>
<script src="sourcemapped/output/webpack3/line-start-bindings-es6.js"></script>
<button onclick="webpack3LineStartBindingsEs6()">Run line-start-bindings-es6</button>
<script src="sourcemapped/output/webpack3/modules-cjs.js"></script>
<button onclick="webpack3ModulesCjs()">Run modules-cjs</button>
<script src="sourcemapped/output/webpack3/out-of-order-declarations-cjs.js"></script>
<button onclick="webpack3OutOfOrderDeclarationsCjs()">Run out-of-order-declarations-cjs</button>
<script src="sourcemapped/output/webpack3/shadowed-vars.js"></script>
<button onclick="webpack3ShadowedVars()">Run shadowed-vars</button>
<script src="sourcemapped/output/webpack3/step-over-for-of.js"></script>
<button onclick="webpack3StepOverForOf()">Run step-over-for-of</button>
<script src="sourcemapped/output/webpack3/step-over-for-of-array.js"></script>
<button onclick="webpack3StepOverForOfArray()">Run step-over-for-of-array</button>
<script src="sourcemapped/output/webpack3/step-over-for-of-array-closure.js"></script>
<button onclick="webpack3StepOverForOfArrayClosure()">Run step-over-for-of-array-closure</button>
<script src="sourcemapped/output/webpack3/step-over-for-of-closure.js"></script>
<button onclick="webpack3StepOverForOfClosure()">Run step-over-for-of-closure</button>
<script src="sourcemapped/output/webpack3/step-over-function-params.js"></script>
<button onclick="webpack3StepOverFunctionParams()">Run step-over-function-params</button>
<script src="sourcemapped/output/webpack3/step-over-regenerator-await.js"></script>
<button onclick="webpack3StepOverRegeneratorAwait()">Run step-over-regenerator-await</button>
<script src="sourcemapped/output/webpack3/switches.js"></script>
<button onclick="webpack3Switches()">Run switches</button>
<script src="sourcemapped/output/webpack3/this-arguments-bindings.js"></script>
<button onclick="webpack3ThisArgumentsBindings()">Run this-arguments-bindings</button>
<script src="sourcemapped/output/webpack3/try-catches.js"></script>
<button onclick="webpack3TryCatches()">Run try-catches</button>
<script src="sourcemapped/output/webpack3/type-module.js"></script>
<button onclick="webpack3TypeModule()">Run type-module</button>
<script src="sourcemapped/output/webpack3/type-script-cjs.js"></script>
<button onclick="webpack3TypeScriptCjs()">Run type-script-cjs</button>
<script src="sourcemapped/output/webpack3/typescript-classes.js"></script>
<button onclick="webpack3TypescriptClasses()">Run typescript-classes</button>
<script src="sourcemapped/output/webpack3/webpack-functions.js"></script>
<button onclick="webpack3WebpackFunctions()">Run webpack-functions</button>
<script src="sourcemapped/output/webpack3/webpack-line-mappings.js"></script>
<button onclick="webpack3WebpackLineMappings()">Run webpack-line-mappings</button><h2>webpack3-babel6</h2>
<script src="sourcemapped/output/webpack3-babel6/babel-bindings-with-flow.js"></script>
<button onclick="webpack3Babel6BabelBindingsWithFlow()">Run babel-bindings-with-flow</button>
<script src="sourcemapped/output/webpack3-babel6/babel-flowtype-bindings.js"></script>
<button onclick="webpack3Babel6BabelFlowtypeBindings()">Run babel-flowtype-bindings</button>
<script src="sourcemapped/output/webpack3-babel6/classes.js"></script>
<button onclick="webpack3Babel6Classes()">Run classes</button>
<script src="sourcemapped/output/webpack3-babel6/esmodules.js"></script>
<button onclick="webpack3Babel6Esmodules()">Run esmodules</button>
<script src="sourcemapped/output/webpack3-babel6/esmodules-cjs.js"></script>
<button onclick="webpack3Babel6EsmodulesCjs()">Run esmodules-cjs</button>
<script src="sourcemapped/output/webpack3-babel6/esmodules-es6.js"></script>
<button onclick="webpack3Babel6EsmodulesEs6()">Run esmodules-es6</button>
<script src="sourcemapped/output/webpack3-babel6/eval-maps.js"></script>
<button onclick="webpack3Babel6EvalMaps()">Run eval-maps</button>
<script src="sourcemapped/output/webpack3-babel6/for-loops.js"></script>
<button onclick="webpack3Babel6ForLoops()">Run for-loops</button>
<script src="sourcemapped/output/webpack3-babel6/for-of.js"></script>
<button onclick="webpack3Babel6ForOf()">Run for-of</button>
<script src="sourcemapped/output/webpack3-babel6/functions.js"></script>
<button onclick="webpack3Babel6Functions()">Run functions</button>
<script src="sourcemapped/output/webpack3-babel6/lex-and-nonlex.js"></script>
<button onclick="webpack3Babel6LexAndNonlex()">Run lex-and-nonlex</button>
<script src="sourcemapped/output/webpack3-babel6/line-start-bindings-es6.js"></script>
<button onclick="webpack3Babel6LineStartBindingsEs6()">Run line-start-bindings-es6</button>
<script src="sourcemapped/output/webpack3-babel6/modules-cjs.js"></script>
<button onclick="webpack3Babel6ModulesCjs()">Run modules-cjs</button>
<script src="sourcemapped/output/webpack3-babel6/out-of-order-declarations-cjs.js"></script>
<button onclick="webpack3Babel6OutOfOrderDeclarationsCjs()">Run out-of-order-declarations-cjs</button>
<script src="sourcemapped/output/webpack3-babel6/shadowed-vars.js"></script>
<button onclick="webpack3Babel6ShadowedVars()">Run shadowed-vars</button>
<script src="sourcemapped/output/webpack3-babel6/step-over-for-of.js"></script>
<button onclick="webpack3Babel6StepOverForOf()">Run step-over-for-of</button>
<script src="sourcemapped/output/webpack3-babel6/step-over-for-of-array.js"></script>
<button onclick="webpack3Babel6StepOverForOfArray()">Run step-over-for-of-array</button>
<script src="sourcemapped/output/webpack3-babel6/step-over-for-of-array-closure.js"></script>
<button onclick="webpack3Babel6StepOverForOfArrayClosure()">Run step-over-for-of-array-closure</button>
<script src="sourcemapped/output/webpack3-babel6/step-over-for-of-closure.js"></script>
<button onclick="webpack3Babel6StepOverForOfClosure()">Run step-over-for-of-closure</button>
<script src="sourcemapped/output/webpack3-babel6/step-over-function-params.js"></script>
<button onclick="webpack3Babel6StepOverFunctionParams()">Run step-over-function-params</button>
<script src="sourcemapped/output/webpack3-babel6/step-over-regenerator-await.js"></script>
<button onclick="webpack3Babel6StepOverRegeneratorAwait()">Run step-over-regenerator-await</button>
<script src="sourcemapped/output/webpack3-babel6/switches.js"></script>
<button onclick="webpack3Babel6Switches()">Run switches</button>
<script src="sourcemapped/output/webpack3-babel6/this-arguments-bindings.js"></script>
<button onclick="webpack3Babel6ThisArgumentsBindings()">Run this-arguments-bindings</button>
<script src="sourcemapped/output/webpack3-babel6/try-catches.js"></script>
<button onclick="webpack3Babel6TryCatches()">Run try-catches</button>
<script src="sourcemapped/output/webpack3-babel6/type-module.js"></script>
<button onclick="webpack3Babel6TypeModule()">Run type-module</button>
<script src="sourcemapped/output/webpack3-babel6/type-script-cjs.js"></script>
<button onclick="webpack3Babel6TypeScriptCjs()">Run type-script-cjs</button>
<script src="sourcemapped/output/webpack3-babel6/webpack-functions.js"></script>
<button onclick="webpack3Babel6WebpackFunctions()">Run webpack-functions</button>
<script src="sourcemapped/output/webpack3-babel6/webpack-line-mappings.js"></script>
<button onclick="webpack3Babel6WebpackLineMappings()">Run webpack-line-mappings</button><h2>rollup</h2>
<script src="sourcemapped/output/rollup/classes.js"></script>
<button onclick="rollupClasses()">Run classes</button>
<script src="sourcemapped/output/rollup/esmodules.js"></script>
<button onclick="rollupEsmodules()">Run esmodules</button>
<script src="sourcemapped/output/rollup/esmodules-es6.js"></script>
<button onclick="rollupEsmodulesEs6()">Run esmodules-es6</button>
<script src="sourcemapped/output/rollup/eval-maps.js"></script>
<button onclick="rollupEvalMaps()">Run eval-maps</button>
<script src="sourcemapped/output/rollup/for-loops.js"></script>
<button onclick="rollupForLoops()">Run for-loops</button>
<script src="sourcemapped/output/rollup/for-of.js"></script>
<button onclick="rollupForOf()">Run for-of</button>
<script src="sourcemapped/output/rollup/functions.js"></script>
<button onclick="rollupFunctions()">Run functions</button>
<script src="sourcemapped/output/rollup/lex-and-nonlex.js"></script>
<button onclick="rollupLexAndNonlex()">Run lex-and-nonlex</button>
<script src="sourcemapped/output/rollup/line-start-bindings-es6.js"></script>
<button onclick="rollupLineStartBindingsEs6()">Run line-start-bindings-es6</button>
<script src="sourcemapped/output/rollup/shadowed-vars.js"></script>
<button onclick="rollupShadowedVars()">Run shadowed-vars</button>
<script src="sourcemapped/output/rollup/step-over-for-of.js"></script>
<button onclick="rollupStepOverForOf()">Run step-over-for-of</button>
<script src="sourcemapped/output/rollup/step-over-for-of-array.js"></script>
<button onclick="rollupStepOverForOfArray()">Run step-over-for-of-array</button>
<script src="sourcemapped/output/rollup/step-over-for-of-array-closure.js"></script>
<button onclick="rollupStepOverForOfArrayClosure()">Run step-over-for-of-array-closure</button>
<script src="sourcemapped/output/rollup/step-over-for-of-closure.js"></script>
<button onclick="rollupStepOverForOfClosure()">Run step-over-for-of-closure</button>
<script src="sourcemapped/output/rollup/step-over-function-params.js"></script>
<button onclick="rollupStepOverFunctionParams()">Run step-over-function-params</button>
<script src="sourcemapped/output/rollup/step-over-regenerator-await.js"></script>
<button onclick="rollupStepOverRegeneratorAwait()">Run step-over-regenerator-await</button>
<script src="sourcemapped/output/rollup/switches.js"></script>
<button onclick="rollupSwitches()">Run switches</button>
<script src="sourcemapped/output/rollup/this-arguments-bindings.js"></script>
<button onclick="rollupThisArgumentsBindings()">Run this-arguments-bindings</button>
<script src="sourcemapped/output/rollup/try-catches.js"></script>
<button onclick="rollupTryCatches()">Run try-catches</button>
<script src="sourcemapped/output/rollup/type-module.js"></script>
<button onclick="rollupTypeModule()">Run type-module</button>
<script src="sourcemapped/output/rollup/typescript-classes.js"></script>
<button onclick="rollupTypescriptClasses()">Run typescript-classes</button>
<script src="sourcemapped/output/rollup/webpack-functions.js"></script>
<button onclick="rollupWebpackFunctions()">Run webpack-functions</button>
<script src="sourcemapped/output/rollup/webpack-line-mappings.js"></script>
<button onclick="rollupWebpackLineMappings()">Run webpack-line-mappings</button><h2>rollup-babel6</h2>
<script src="sourcemapped/output/rollup-babel6/babel-bindings-with-flow.js"></script>
<button onclick="rollupBabel6BabelBindingsWithFlow()">Run babel-bindings-with-flow</button>
<script src="sourcemapped/output/rollup-babel6/babel-flowtype-bindings.js"></script>
<button onclick="rollupBabel6BabelFlowtypeBindings()">Run babel-flowtype-bindings</button>
<script src="sourcemapped/output/rollup-babel6/classes.js"></script>
<button onclick="rollupBabel6Classes()">Run classes</button>
<script src="sourcemapped/output/rollup-babel6/esmodules.js"></script>
<button onclick="rollupBabel6Esmodules()">Run esmodules</button>
<script src="sourcemapped/output/rollup-babel6/esmodules-es6.js"></script>
<button onclick="rollupBabel6EsmodulesEs6()">Run esmodules-es6</button>
<script src="sourcemapped/output/rollup-babel6/eval-maps.js"></script>
<button onclick="rollupBabel6EvalMaps()">Run eval-maps</button>
<script src="sourcemapped/output/rollup-babel6/for-loops.js"></script>
<button onclick="rollupBabel6ForLoops()">Run for-loops</button>
<script src="sourcemapped/output/rollup-babel6/for-of.js"></script>
<button onclick="rollupBabel6ForOf()">Run for-of</button>
<script src="sourcemapped/output/rollup-babel6/functions.js"></script>
<button onclick="rollupBabel6Functions()">Run functions</button>
<script src="sourcemapped/output/rollup-babel6/lex-and-nonlex.js"></script>
<button onclick="rollupBabel6LexAndNonlex()">Run lex-and-nonlex</button>
<script src="sourcemapped/output/rollup-babel6/line-start-bindings-es6.js"></script>
<button onclick="rollupBabel6LineStartBindingsEs6()">Run line-start-bindings-es6</button>
<script src="sourcemapped/output/rollup-babel6/shadowed-vars.js"></script>
<button onclick="rollupBabel6ShadowedVars()">Run shadowed-vars</button>
<script src="sourcemapped/output/rollup-babel6/step-over-for-of.js"></script>
<button onclick="rollupBabel6StepOverForOf()">Run step-over-for-of</button>
<script src="sourcemapped/output/rollup-babel6/step-over-for-of-array.js"></script>
<button onclick="rollupBabel6StepOverForOfArray()">Run step-over-for-of-array</button>
<script src="sourcemapped/output/rollup-babel6/step-over-for-of-array-closure.js"></script>
<button onclick="rollupBabel6StepOverForOfArrayClosure()">Run step-over-for-of-array-closure</button>
<script src="sourcemapped/output/rollup-babel6/step-over-for-of-closure.js"></script>
<button onclick="rollupBabel6StepOverForOfClosure()">Run step-over-for-of-closure</button>
<script src="sourcemapped/output/rollup-babel6/step-over-function-params.js"></script>
<button onclick="rollupBabel6StepOverFunctionParams()">Run step-over-function-params</button>
<script src="sourcemapped/output/rollup-babel6/step-over-regenerator-await.js"></script>
<button onclick="rollupBabel6StepOverRegeneratorAwait()">Run step-over-regenerator-await</button>
<script src="sourcemapped/output/rollup-babel6/switches.js"></script>
<button onclick="rollupBabel6Switches()">Run switches</button>
<script src="sourcemapped/output/rollup-babel6/this-arguments-bindings.js"></script>
<button onclick="rollupBabel6ThisArgumentsBindings()">Run this-arguments-bindings</button>
<script src="sourcemapped/output/rollup-babel6/try-catches.js"></script>
<button onclick="rollupBabel6TryCatches()">Run try-catches</button>
<script src="sourcemapped/output/rollup-babel6/type-module.js"></script>
<button onclick="rollupBabel6TypeModule()">Run type-module</button>
<script src="sourcemapped/output/rollup-babel6/webpack-functions.js"></script>
<button onclick="rollupBabel6WebpackFunctions()">Run webpack-functions</button>
<script src="sourcemapped/output/rollup-babel6/webpack-line-mappings.js"></script>
<button onclick="rollupBabel6WebpackLineMappings()">Run webpack-line-mappings</button>
<!-- INJECTED-END -->
</body>
</html>

View File

@ -0,0 +1,16 @@
## Sourcemapped test fixtures
The test fixtures in this folder are used to generate a suite of tests for sourcemapped
files that have been passed through various tools like Babel and Typescript, and various
bundlers like Rollup and Webpack.
The fixtures follow a naming scheme where:
* `babel-` means the file requires Babel in order to be consumed by a bundler.
* `typescript-` means the file requires Typescript in order to be consumed by a bundler.
* `-cjs` means the file is either:
* Written in CommonJS
* May be converted to CommonJS when Babel is enabled
This is used to exclude these files from processing by bundlers that expect input
files to be ES modules.

View File

@ -1,150 +1,98 @@
#!env node
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
const util = require("util");
const fs = require("fs");
const path = require("path");
const _ = require("lodash");
const rollup = require("rollup");
const rollupBabel = require("rollup-plugin-babel");
const webpack = require("webpack");
const fixtures = path.join(__dirname, "fixtures");
const fixturesFolder = path.join(__dirname, "fixtures");
const tests = fs.readdirSync(fixtures).map(name => {
if (name[0] === ".") return;
const tests = fs
.readdirSync(fixturesFolder)
.map(name => {
if (name[0] === ".") {
return;
}
const dirname = path.relative(__dirname, path.join(fixtures, name));
const inputTS = path.join(fixturesFolder, name, "input.ts");
const inputJS = path.join(fixturesFolder, name, "input.js");
const inputTS = path.join(dirname, "input.ts");
const inputJS = path.join(dirname, "input.js");
return [name, fs.existsSync(inputTS) ? inputTS : inputJS];
})
.filter(Boolean);
return {
name,
camelName: _.camelCase(name),
dirname,
input: `./${fs.existsSync(inputTS) ? inputTS : inputJS}`,
output: path.join(dirname, "output.js")
};
}).filter(Boolean);
(async function() {
const targets = [
await require("./builds/webpack3")(tests, __dirname),
await require("./builds/webpack3-babel6")(tests, __dirname),
await require("./builds/rollup")(tests, __dirname),
await require("./builds/rollup-babel6")(tests, __dirname)
];
const html = path.join(__dirname, "..", "doc-sourcemapped.html");
await util.promisify(webpack)({
context: __dirname,
entry: "babel-polyfill",
output: {
filename: "polyfill-bundle.js"
},
plugins: [new webpack.optimize.OccurrenceOrderPlugin(true)]
});
fs.writeFileSync(
html,
fs.readFileSync(html, "utf8").replace(
/\n\s*<!-- INJECTED-START[\s\S]*INJECTED-END -->\n/,
`
const examplesDir = path.join(__dirname, "..");
const html = path.join(examplesDir, "doc-sourcemapped.html");
fs.writeFileSync(
html,
fs.readFileSync(html, "utf8").replace(
/\n\s*<!-- INJECTED-START[\s\S]*INJECTED-END -->/,
`
<!-- INJECTED-START -->
<!--
Content generated by examples/sourcemapped/build.js.
Run "yarn build" to update.
-->${tests
.map(
({ name, camelName, output }) =>
`\n <script src="${path.join("sourcemapped", output)}"></script>` +
`\n <button onclick="${camelName}()">Run ${name}</button>`
)
-->${targets
.map(({ target, fixtures }) => {
return `<h2>${target}</h2>${fixtures
.map(
({ name, testFnName, scriptPath }) =>
`\n <script src="${path.relative(
examplesDir,
scriptPath
)}"></script>` +
`\n <button onclick="${testFnName}()">Run ${name}</button>`
)
.join("")}`;
})
.join("")}
<!-- INJECTED-END -->
`
)
);
<!-- INJECTED-END -->`
)
);
function runWebpack(config) {
webpack(config, (err, res) => {
if (err) throw err;
const mochitestRoot = path.join(__dirname, "..", "..");
const browserINI = path.join(mochitestRoot, "browser.ini");
console.log(res.toString());
});
}
const assets = targets.reduce(
(acc, { fixtures }) =>
fixtures.reduce(
(acc2, { assets: assetList }) => acc2.concat(assetList),
acc
),
[]
);
assets.unshift(path.join(__dirname, "polyfill-bundle.js"));
runWebpack({
context: __dirname,
entry: "babel-polyfill",
output: {
filename: "polyfill-bundle.js"
}
});
for (const { name, camelName, dirname, input, output } of tests) {
const rollupBuildEnabled = name.match(/rollup-/);
const babelEnabled = name.match(/babel-/);
const babelEnv = !name.match(/-es6/);
const babelModules = name.match(/-cjs/);
const evalMaps = name.match(/-eval/);
if (!babelEnabled && babelModules) {
throw new Error(
"Babel is not enabled, compiling to CommonJS is not possible in " + name
);
}
const babelOptions = babelEnabled && {
babelrc: false,
presets: babelEnv
? [["env", { modules: babelModules ? "commonjs" : false }]]
: [],
plugins: [
"babel-plugin-transform-flow-strip-types",
]
};
if (rollupBuildEnabled) {
(async function() {
const bundle = await rollup.rollup({
input: "fake-bundle-root",
plugins: [
// Our input file may export more than the default, but we
// want to enable 'exports: "default",' so we need the root
// import to only have a default export.
{
resolveId: id => id === "fake-bundle-root" ? id : undefined,
load: id => id === "fake-bundle-root"
? `import test from "${path.join(__dirname, input)}"; export default test;`
: undefined,
},
babelOptions && rollupBabel(babelOptions)
].filter(Boolean),
});
await bundle.write({
file: output,
dir: dirname,
format: "iife",
name: camelName,
sourcemap: true,
exports: "default",
});
})();
continue;
}
runWebpack({
context: __dirname,
entry: input,
output: {
path: __dirname,
filename: output,
libraryTarget: "var",
library: camelName,
libraryExport: "default"
},
devtool: evalMaps ? "eval-source-map" : "source-map",
module: {
loaders: [
babelOptions && {
test: /\.js$/,
exclude: /node_modules/,
loader: "babel-loader",
options: babelOptions,
},
{
test: /\.tsx?$/,
exclude: /node_modules/,
loader: "ts-loader",
options: {}
}
].filter(Boolean)
}
});
}
fs.writeFileSync(
browserINI,
fs.readFileSync(browserINI, "utf8").replace(
/\n *## START-SOURCEMAPPED-FIXTURES[\s\S]*## END-SOURCEMAPPED-FIXTURES/,
`
## START-SOURCEMAPPED-FIXTURES - Generated by examples/sourcemapped/build.js
${assets.map(asset => path.relative(mochitestRoot, asset)).join("\n ")}
## END-SOURCEMAPPED-FIXTURES`
)
);
})();

View File

@ -0,0 +1,79 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
const path = require("path");
const _ = require("lodash");
const rollup = require("rollup");
const rollupBabel = require("rollup-plugin-babel");
const TARGET_NAME = "rollup-babel6";
module.exports = exports = async function(tests, dirname) {
const fixtures = [];
for (const [name, input] of tests) {
if (/typescript-|-cjs/.test(name)) {
continue;
}
const testFnName = _.camelCase(`${TARGET_NAME}-${name}`);
const babelEnv = !name.match(/-es6/);
const scriptPath = path.join(dirname, "output", TARGET_NAME, `${name}.js`);
console.log(`Building ${TARGET_NAME} test ${name}`);
const bundle = await rollup.rollup({
input: "fake-bundle-root",
plugins: [
// Our input file may export more than the default, but we
// want to enable 'exports: "default",' so we need the root
// import to only have a default export.
{
resolveId: id => (id === "fake-bundle-root" ? id : undefined),
load: id =>
id === "fake-bundle-root"
? `import test from "${input}"; export default test;`
: undefined
},
rollupBabel({
babelrc: false,
presets: [
babelEnv
? [require.resolve("babel-preset-env"), { modules: false }]
: null
].filter(Boolean),
plugins: [require.resolve("babel-plugin-transform-flow-strip-types")]
}),
{
ongenerate(out, data) {
data.map.sources = data.map.sources.map(source =>
source.replace(/^fixtures[\\/]/, `${TARGET_NAME}://./`)
);
}
}
].filter(Boolean)
});
await bundle.write({
file: path.basename(scriptPath),
dir: path.dirname(scriptPath),
format: "iife",
name: testFnName,
sourcemap: true,
exports: "default"
});
fixtures.push({
name,
testFnName: testFnName,
scriptPath,
assets: [scriptPath, `${scriptPath}.map`]
});
}
return {
target: TARGET_NAME,
fixtures
};
};

View File

@ -0,0 +1,12 @@
{
"name": "sourcemapped-rollup",
"private": true,
"dependencies": {
"babel-core": "^6.26.3",
"babel-plugin-transform-flow-strip-types": "^6.22.0",
"babel-preset-env": "^1.7.0",
"lodash": "^4.17.5",
"rollup": "^0.63.0",
"rollup-plugin-babel": "^3.0.7"
}
}

View File

@ -0,0 +1,755 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
"@types/estree@0.0.39":
version "0.0.39"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
"@types/node@*":
version "10.5.3"
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.5.3.tgz#5bcfaf088ad17894232012877669634c06b20cc5"
ansi-regex@^2.0.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
ansi-styles@^2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
babel-code-frame@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
dependencies:
chalk "^1.1.3"
esutils "^2.0.2"
js-tokens "^3.0.2"
babel-core@^6.26.0, babel-core@^6.26.3:
version "6.26.3"
resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207"
dependencies:
babel-code-frame "^6.26.0"
babel-generator "^6.26.0"
babel-helpers "^6.24.1"
babel-messages "^6.23.0"
babel-register "^6.26.0"
babel-runtime "^6.26.0"
babel-template "^6.26.0"
babel-traverse "^6.26.0"
babel-types "^6.26.0"
babylon "^6.18.0"
convert-source-map "^1.5.1"
debug "^2.6.9"
json5 "^0.5.1"
lodash "^4.17.4"
minimatch "^3.0.4"
path-is-absolute "^1.0.1"
private "^0.1.8"
slash "^1.0.0"
source-map "^0.5.7"
babel-generator@^6.26.0:
version "6.26.1"
resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90"
dependencies:
babel-messages "^6.23.0"
babel-runtime "^6.26.0"
babel-types "^6.26.0"
detect-indent "^4.0.0"
jsesc "^1.3.0"
lodash "^4.17.4"
source-map "^0.5.7"
trim-right "^1.0.1"
babel-helper-builder-binary-assignment-operator-visitor@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664"
dependencies:
babel-helper-explode-assignable-expression "^6.24.1"
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-helper-call-delegate@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d"
dependencies:
babel-helper-hoist-variables "^6.24.1"
babel-runtime "^6.22.0"
babel-traverse "^6.24.1"
babel-types "^6.24.1"
babel-helper-define-map@^6.24.1:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f"
dependencies:
babel-helper-function-name "^6.24.1"
babel-runtime "^6.26.0"
babel-types "^6.26.0"
lodash "^4.17.4"
babel-helper-explode-assignable-expression@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa"
dependencies:
babel-runtime "^6.22.0"
babel-traverse "^6.24.1"
babel-types "^6.24.1"
babel-helper-function-name@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9"
dependencies:
babel-helper-get-function-arity "^6.24.1"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-traverse "^6.24.1"
babel-types "^6.24.1"
babel-helper-get-function-arity@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d"
dependencies:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-helper-hoist-variables@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76"
dependencies:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-helper-optimise-call-expression@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257"
dependencies:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-helper-regex@^6.24.1:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72"
dependencies:
babel-runtime "^6.26.0"
babel-types "^6.26.0"
lodash "^4.17.4"
babel-helper-remap-async-to-generator@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b"
dependencies:
babel-helper-function-name "^6.24.1"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-traverse "^6.24.1"
babel-types "^6.24.1"
babel-helper-replace-supers@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a"
dependencies:
babel-helper-optimise-call-expression "^6.24.1"
babel-messages "^6.23.0"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-traverse "^6.24.1"
babel-types "^6.24.1"
babel-helpers@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2"
dependencies:
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-messages@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-check-es2015-constants@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-syntax-async-functions@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95"
babel-plugin-syntax-exponentiation-operator@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de"
babel-plugin-syntax-flow@^6.18.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d"
babel-plugin-syntax-trailing-function-commas@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3"
babel-plugin-transform-async-to-generator@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761"
dependencies:
babel-helper-remap-async-to-generator "^6.24.1"
babel-plugin-syntax-async-functions "^6.8.0"
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-arrow-functions@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-block-scoped-functions@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-block-scoping@^6.23.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f"
dependencies:
babel-runtime "^6.26.0"
babel-template "^6.26.0"
babel-traverse "^6.26.0"
babel-types "^6.26.0"
lodash "^4.17.4"
babel-plugin-transform-es2015-classes@^6.23.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db"
dependencies:
babel-helper-define-map "^6.24.1"
babel-helper-function-name "^6.24.1"
babel-helper-optimise-call-expression "^6.24.1"
babel-helper-replace-supers "^6.24.1"
babel-messages "^6.23.0"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-traverse "^6.24.1"
babel-types "^6.24.1"
babel-plugin-transform-es2015-computed-properties@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3"
dependencies:
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-plugin-transform-es2015-destructuring@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-duplicate-keys@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e"
dependencies:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-plugin-transform-es2015-for-of@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-function-name@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b"
dependencies:
babel-helper-function-name "^6.24.1"
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-plugin-transform-es2015-literals@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154"
dependencies:
babel-plugin-transform-es2015-modules-commonjs "^6.24.1"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1:
version "6.26.2"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3"
dependencies:
babel-plugin-transform-strict-mode "^6.24.1"
babel-runtime "^6.26.0"
babel-template "^6.26.0"
babel-types "^6.26.0"
babel-plugin-transform-es2015-modules-systemjs@^6.23.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23"
dependencies:
babel-helper-hoist-variables "^6.24.1"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-plugin-transform-es2015-modules-umd@^6.23.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468"
dependencies:
babel-plugin-transform-es2015-modules-amd "^6.24.1"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-plugin-transform-es2015-object-super@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d"
dependencies:
babel-helper-replace-supers "^6.24.1"
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-parameters@^6.23.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b"
dependencies:
babel-helper-call-delegate "^6.24.1"
babel-helper-get-function-arity "^6.24.1"
babel-runtime "^6.22.0"
babel-template "^6.24.1"
babel-traverse "^6.24.1"
babel-types "^6.24.1"
babel-plugin-transform-es2015-shorthand-properties@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0"
dependencies:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-plugin-transform-es2015-spread@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-sticky-regex@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc"
dependencies:
babel-helper-regex "^6.24.1"
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-plugin-transform-es2015-template-literals@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-typeof-symbol@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372"
dependencies:
babel-runtime "^6.22.0"
babel-plugin-transform-es2015-unicode-regex@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9"
dependencies:
babel-helper-regex "^6.24.1"
babel-runtime "^6.22.0"
regexpu-core "^2.0.0"
babel-plugin-transform-exponentiation-operator@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e"
dependencies:
babel-helper-builder-binary-assignment-operator-visitor "^6.24.1"
babel-plugin-syntax-exponentiation-operator "^6.8.0"
babel-runtime "^6.22.0"
babel-plugin-transform-flow-strip-types@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf"
dependencies:
babel-plugin-syntax-flow "^6.18.0"
babel-runtime "^6.22.0"
babel-plugin-transform-regenerator@^6.22.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"
dependencies:
regenerator-transform "^0.10.0"
babel-plugin-transform-strict-mode@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758"
dependencies:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-preset-env@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.7.0.tgz#dea79fa4ebeb883cd35dab07e260c1c9c04df77a"
dependencies:
babel-plugin-check-es2015-constants "^6.22.0"
babel-plugin-syntax-trailing-function-commas "^6.22.0"
babel-plugin-transform-async-to-generator "^6.22.0"
babel-plugin-transform-es2015-arrow-functions "^6.22.0"
babel-plugin-transform-es2015-block-scoped-functions "^6.22.0"
babel-plugin-transform-es2015-block-scoping "^6.23.0"
babel-plugin-transform-es2015-classes "^6.23.0"
babel-plugin-transform-es2015-computed-properties "^6.22.0"
babel-plugin-transform-es2015-destructuring "^6.23.0"
babel-plugin-transform-es2015-duplicate-keys "^6.22.0"
babel-plugin-transform-es2015-for-of "^6.23.0"
babel-plugin-transform-es2015-function-name "^6.22.0"
babel-plugin-transform-es2015-literals "^6.22.0"
babel-plugin-transform-es2015-modules-amd "^6.22.0"
babel-plugin-transform-es2015-modules-commonjs "^6.23.0"
babel-plugin-transform-es2015-modules-systemjs "^6.23.0"
babel-plugin-transform-es2015-modules-umd "^6.23.0"
babel-plugin-transform-es2015-object-super "^6.22.0"
babel-plugin-transform-es2015-parameters "^6.23.0"
babel-plugin-transform-es2015-shorthand-properties "^6.22.0"
babel-plugin-transform-es2015-spread "^6.22.0"
babel-plugin-transform-es2015-sticky-regex "^6.22.0"
babel-plugin-transform-es2015-template-literals "^6.22.0"
babel-plugin-transform-es2015-typeof-symbol "^6.23.0"
babel-plugin-transform-es2015-unicode-regex "^6.22.0"
babel-plugin-transform-exponentiation-operator "^6.22.0"
babel-plugin-transform-regenerator "^6.22.0"
browserslist "^3.2.6"
invariant "^2.2.2"
semver "^5.3.0"
babel-register@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071"
dependencies:
babel-core "^6.26.0"
babel-runtime "^6.26.0"
core-js "^2.5.0"
home-or-tmp "^2.0.0"
lodash "^4.17.4"
mkdirp "^0.5.1"
source-map-support "^0.4.15"
babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
dependencies:
core-js "^2.4.0"
regenerator-runtime "^0.11.0"
babel-template@^6.24.1, babel-template@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
dependencies:
babel-runtime "^6.26.0"
babel-traverse "^6.26.0"
babel-types "^6.26.0"
babylon "^6.18.0"
lodash "^4.17.4"
babel-traverse@^6.24.1, babel-traverse@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
dependencies:
babel-code-frame "^6.26.0"
babel-messages "^6.23.0"
babel-runtime "^6.26.0"
babel-types "^6.26.0"
babylon "^6.18.0"
debug "^2.6.8"
globals "^9.18.0"
invariant "^2.2.2"
lodash "^4.17.4"
babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
dependencies:
babel-runtime "^6.26.0"
esutils "^2.0.2"
lodash "^4.17.4"
to-fast-properties "^1.0.3"
babylon@^6.18.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3"
balanced-match@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
brace-expansion@^1.1.7:
version "1.1.11"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
dependencies:
balanced-match "^1.0.0"
concat-map "0.0.1"
browserslist@^3.2.6:
version "3.2.8"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.8.tgz#b0005361d6471f0f5952797a76fc985f1f978fc6"
dependencies:
caniuse-lite "^1.0.30000844"
electron-to-chromium "^1.3.47"
caniuse-lite@^1.0.30000844:
version "1.0.30000865"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000865.tgz#70026616e8afe6e1442f8bb4e1092987d81a2f25"
chalk@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
dependencies:
ansi-styles "^2.2.1"
escape-string-regexp "^1.0.2"
has-ansi "^2.0.0"
strip-ansi "^3.0.0"
supports-color "^2.0.0"
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
convert-source-map@^1.5.1:
version "1.5.1"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5"
core-js@^2.4.0, core-js@^2.5.0:
version "2.5.7"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e"
debug@^2.6.8, debug@^2.6.9:
version "2.6.9"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
dependencies:
ms "2.0.0"
detect-indent@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208"
dependencies:
repeating "^2.0.0"
electron-to-chromium@^1.3.47:
version "1.3.52"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.52.tgz#d2d9f1270ba4a3b967b831c40ef71fb4d9ab5ce0"
escape-string-regexp@^1.0.2:
version "1.0.5"
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
estree-walker@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.2.1.tgz#bdafe8095383d8414d5dc2ecf4c9173b6db9412e"
esutils@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b"
globals@^9.18.0:
version "9.18.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
has-ansi@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
dependencies:
ansi-regex "^2.0.0"
home-or-tmp@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
dependencies:
os-homedir "^1.0.0"
os-tmpdir "^1.0.1"
invariant@^2.2.2:
version "2.2.4"
resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
dependencies:
loose-envify "^1.0.0"
is-finite@^1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa"
dependencies:
number-is-nan "^1.0.0"
"js-tokens@^3.0.0 || ^4.0.0":
version "4.0.0"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
js-tokens@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
jsesc@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
jsesc@~0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
json5@^0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821"
lodash@^4.17.4, lodash@^4.17.5:
version "4.17.10"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7"
loose-envify@^1.0.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
dependencies:
js-tokens "^3.0.0 || ^4.0.0"
minimatch@^3.0.2, minimatch@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
dependencies:
brace-expansion "^1.1.7"
minimist@0.0.8:
version "0.0.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
mkdirp@^0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
dependencies:
minimist "0.0.8"
ms@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
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"
os-homedir@^1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
os-tmpdir@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
path-is-absolute@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
private@^0.1.6, private@^0.1.8:
version "0.1.8"
resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
regenerate@^1.2.1:
version "1.4.0"
resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11"
regenerator-runtime@^0.11.0:
version "0.11.1"
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
regenerator-transform@^0.10.0:
version "0.10.1"
resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd"
dependencies:
babel-runtime "^6.18.0"
babel-types "^6.19.0"
private "^0.1.6"
regexpu-core@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240"
dependencies:
regenerate "^1.2.1"
regjsgen "^0.2.0"
regjsparser "^0.1.4"
regjsgen@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7"
regjsparser@^0.1.4:
version "0.1.5"
resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c"
dependencies:
jsesc "~0.5.0"
repeating@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda"
dependencies:
is-finite "^1.0.0"
rollup-plugin-babel@^3.0.7:
version "3.0.7"
resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-3.0.7.tgz#5b13611f1ab8922497e9d15197ae5d8a23fe3b1e"
dependencies:
rollup-pluginutils "^1.5.0"
rollup-pluginutils@^1.5.0:
version "1.5.2"
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz#1e156e778f94b7255bfa1b3d0178be8f5c552408"
dependencies:
estree-walker "^0.2.1"
minimatch "^3.0.2"
rollup@^0.63.0:
version "0.63.4"
resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.63.4.tgz#cb58bf6c2a6c38542cae250684c962799ad7c00c"
dependencies:
"@types/estree" "0.0.39"
"@types/node" "*"
semver@^5.3.0:
version "5.5.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"
source-map-support@^0.4.15:
version "0.4.18"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f"
dependencies:
source-map "^0.5.6"
source-map@^0.5.6, source-map@^0.5.7:
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
strip-ansi@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
dependencies:
ansi-regex "^2.0.0"
supports-color@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
to-fast-properties@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47"
trim-right@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"

View File

@ -0,0 +1,76 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
const path = require("path");
const _ = require("lodash");
const rollup = require("rollup");
const rollupTypescript = require("rollup-plugin-typescript2");
const TARGET_NAME = "rollup";
module.exports = exports = async function(tests, dirname) {
const fixtures = [];
for (const [name, input] of tests) {
if (/babel-|-cjs/.test(name)) {
continue;
}
const testFnName = _.camelCase(`${TARGET_NAME}-${name}`);
const scriptPath = path.join(dirname, "output", TARGET_NAME, `${name}.js`);
console.log(`Building ${TARGET_NAME} test ${name}`);
const bundle = await rollup.rollup({
input: "fake-bundle-root",
plugins: [
// Our input file may export more than the default, but we
// want to enable 'exports: "default",' so we need the root
// import to only have a default export.
{
resolveId: id => (id === "fake-bundle-root" ? id : undefined),
load: id =>
id === "fake-bundle-root"
? `import test from "${input}"; export default test;`
: undefined
},
{
ongenerate(out, data) {
data.map.sources = data.map.sources.map(source =>
source.replace(/^fixtures[\\/]/, `${TARGET_NAME}://./`)
);
}
},
rollupTypescript({
check: false,
tsconfigDefaults: {
target: "es6",
},
}),
].filter(Boolean)
});
await bundle.write({
file: path.basename(scriptPath),
dir: path.dirname(scriptPath),
format: "iife",
name: testFnName,
// sourceMapFile: ""
sourcemap: true,
exports: "default"
});
fixtures.push({
name,
testFnName,
scriptPath,
assets: [scriptPath, `${scriptPath}.map`]
});
}
return {
target: TARGET_NAME,
fixtures
};
};

View File

@ -0,0 +1,11 @@
{
"name": "sourcemapped-rollup",
"private": true,
"dependencies": {
"lodash": "^4.17.5",
"rollup": "^0.63.0",
"rollup-plugin-babel": "^3.0.7",
"rollup-plugin-typescript2": "^0.16.1",
"typescript": "^2.9.2"
}
}

View File

@ -0,0 +1,337 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
"@types/estree@0.0.39":
version "0.0.39"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
"@types/node@*":
version "10.5.3"
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.5.3.tgz#5bcfaf088ad17894232012877669634c06b20cc5"
arr-diff@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf"
dependencies:
arr-flatten "^1.0.1"
arr-flatten@^1.0.1:
version "1.1.0"
resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
array-unique@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
balanced-match@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
brace-expansion@^1.1.7:
version "1.1.11"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
dependencies:
balanced-match "^1.0.0"
concat-map "0.0.1"
braces@^1.8.2:
version "1.8.5"
resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7"
dependencies:
expand-range "^1.8.1"
preserve "^0.2.0"
repeat-element "^1.1.2"
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
estree-walker@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.2.1.tgz#bdafe8095383d8414d5dc2ecf4c9173b6db9412e"
estree-walker@^0.5.2:
version "0.5.2"
resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.5.2.tgz#d3850be7529c9580d815600b53126515e146dd39"
expand-brackets@^0.1.4:
version "0.1.5"
resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
dependencies:
is-posix-bracket "^0.1.0"
expand-range@^1.8.1:
version "1.8.2"
resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337"
dependencies:
fill-range "^2.1.0"
extglob@^0.3.1:
version "0.3.2"
resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1"
dependencies:
is-extglob "^1.0.0"
filename-regex@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
fill-range@^2.1.0:
version "2.2.4"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565"
dependencies:
is-number "^2.1.0"
isobject "^2.0.0"
randomatic "^3.0.0"
repeat-element "^1.1.2"
repeat-string "^1.5.2"
for-in@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
for-own@^0.1.4:
version "0.1.5"
resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce"
dependencies:
for-in "^1.0.1"
fs-extra@5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-5.0.0.tgz#414d0110cdd06705734d055652c5411260c31abd"
dependencies:
graceful-fs "^4.1.2"
jsonfile "^4.0.0"
universalify "^0.1.0"
glob-base@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4"
dependencies:
glob-parent "^2.0.0"
is-glob "^2.0.0"
glob-parent@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28"
dependencies:
is-glob "^2.0.0"
graceful-fs@^4.1.2, graceful-fs@^4.1.6:
version "4.1.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
is-buffer@^1.1.5:
version "1.1.6"
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
is-dotfile@^1.0.0:
version "1.0.3"
resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1"
is-equal-shallow@^0.1.3:
version "0.1.3"
resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534"
dependencies:
is-primitive "^2.0.0"
is-extendable@^0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
is-extglob@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0"
is-glob@^2.0.0, is-glob@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863"
dependencies:
is-extglob "^1.0.0"
is-number@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f"
dependencies:
kind-of "^3.0.2"
is-number@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff"
is-posix-bracket@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
is-primitive@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575"
isarray@1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
isobject@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
dependencies:
isarray "1.0.0"
jsonfile@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
optionalDependencies:
graceful-fs "^4.1.6"
kind-of@^3.0.2:
version "3.2.2"
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
dependencies:
is-buffer "^1.1.5"
kind-of@^6.0.0:
version "6.0.2"
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051"
lodash@^4.17.5:
version "4.17.10"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7"
math-random@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac"
micromatch@^2.3.11:
version "2.3.11"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565"
dependencies:
arr-diff "^2.0.0"
array-unique "^0.2.1"
braces "^1.8.2"
expand-brackets "^0.1.4"
extglob "^0.3.1"
filename-regex "^2.0.0"
is-extglob "^1.0.0"
is-glob "^2.0.1"
kind-of "^3.0.2"
normalize-path "^2.0.1"
object.omit "^2.0.0"
parse-glob "^3.0.4"
regex-cache "^0.4.2"
minimatch@^3.0.2:
version "3.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
dependencies:
brace-expansion "^1.1.7"
normalize-path@^2.0.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
dependencies:
remove-trailing-separator "^1.0.1"
object.omit@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
dependencies:
for-own "^0.1.4"
is-extendable "^0.1.1"
parse-glob@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c"
dependencies:
glob-base "^0.3.0"
is-dotfile "^1.0.0"
is-extglob "^1.0.0"
is-glob "^2.0.0"
path-parse@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
preserve@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
randomatic@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.0.0.tgz#d35490030eb4f7578de292ce6dfb04a91a128923"
dependencies:
is-number "^4.0.0"
kind-of "^6.0.0"
math-random "^1.0.1"
regex-cache@^0.4.2:
version "0.4.4"
resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd"
dependencies:
is-equal-shallow "^0.1.3"
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"
repeat-element@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a"
repeat-string@^1.5.2:
version "1.6.1"
resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
resolve@1.8.1:
version "1.8.1"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26"
dependencies:
path-parse "^1.0.5"
rollup-plugin-babel@^3.0.7:
version "3.0.7"
resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-3.0.7.tgz#5b13611f1ab8922497e9d15197ae5d8a23fe3b1e"
dependencies:
rollup-pluginutils "^1.5.0"
rollup-plugin-typescript2@^0.16.1:
version "0.16.1"
resolved "https://registry.yarnpkg.com/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.16.1.tgz#72e1f8a2e450550eabdc3d474e735feae322b474"
dependencies:
fs-extra "5.0.0"
resolve "1.8.1"
rollup-pluginutils "2.3.0"
tslib "1.9.3"
rollup-pluginutils@2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.3.0.tgz#478ace04bd7f6da2e724356ca798214884738fc4"
dependencies:
estree-walker "^0.5.2"
micromatch "^2.3.11"
rollup-pluginutils@^1.5.0:
version "1.5.2"
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz#1e156e778f94b7255bfa1b3d0178be8f5c552408"
dependencies:
estree-walker "^0.2.1"
minimatch "^3.0.2"
rollup@^0.63.0:
version "0.63.4"
resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.63.4.tgz#cb58bf6c2a6c38542cae250684c962799ad7c00c"
dependencies:
"@types/estree" "0.0.39"
"@types/node" "*"
tslib@1.9.3:
version "1.9.3"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286"
typescript@^2.9.2:
version "2.9.2"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.9.2.tgz#1cbf61d05d6b96269244eb6a3bce4bd914e0f00c"
universalify@^0.1.0:
version "0.1.2"
resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"

View File

@ -0,0 +1,80 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
const path = require("path");
const util = require("util");
const _ = require("lodash");
const webpack = require("webpack");
const TARGET_NAME = "webpack3-babel6";
module.exports = exports = async function(tests, dirname) {
const fixtures = [];
for (const [name, input] of tests) {
if (/typescript-/.test(name)) {
continue;
}
const testFnName = _.camelCase(`${TARGET_NAME}-${name}`);
const evalMaps = name.match(/-eval/);
const babelEnv = !name.match(/-es6/);
const babelModules = name.match(/-cjs/);
console.log(`Building ${TARGET_NAME} test ${name}`);
const scriptPath = path.join(dirname, "output", TARGET_NAME, `${name}.js`);
const result = await util.promisify(webpack)({
context: path.dirname(input),
entry: `./${path.basename(input)}`,
output: {
path: path.dirname(scriptPath),
filename: path.basename(scriptPath),
devtoolModuleFilenameTemplate: `${TARGET_NAME}://./${name}/[resource-path]`,
libraryTarget: "var",
library: testFnName,
libraryExport: "default"
},
devtool: evalMaps ? "eval-source-map" : "source-map",
module: {
loaders: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: require.resolve("babel-loader"),
options: {
babelrc: false,
presets: [
babelEnv
? [
require.resolve("babel-preset-env"),
{ modules: babelModules ? "commonjs" : false }
]
: null
].filter(Boolean),
plugins: [
require.resolve("babel-plugin-transform-flow-strip-types")
]
}
}
].filter(Boolean)
}
});
fixtures.push({
name,
testFnName: testFnName,
scriptPath,
assets: [scriptPath, evalMaps ? null : `${scriptPath}.map`].filter(
Boolean
)
});
}
return {
target: TARGET_NAME,
fixtures
};
};

View File

@ -0,0 +1,12 @@
{
"name": "sourcemapped-webpack3-babel6",
"private": true,
"dependencies": {
"babel-core": "^6.26.3",
"babel-loader": "^7.1.5",
"babel-plugin-transform-flow-strip-types": "^6.22.0",
"babel-preset-env": "^1.7.0",
"lodash": "^4.17.10",
"webpack": "3"
}
}

View File

@ -0,0 +1,65 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
const path = require("path");
const util = require("util");
const _ = require("lodash");
const webpack = require("webpack");
const TARGET_NAME = "webpack3";
module.exports = exports = async function(tests, dirname) {
const fixtures = [];
for (const [name, input] of tests) {
if (/babel-/.test(name)) {
continue;
}
const testFnName = _.camelCase(`${TARGET_NAME}-${name}`);
const evalMaps = name.match(/-eval/);
console.log(`Building ${TARGET_NAME} test ${name}`);
const scriptPath = path.join(dirname, "output", TARGET_NAME, `${name}.js`);
await util.promisify(webpack)({
context: path.dirname(input),
entry: `./${path.basename(input)}`,
output: {
path: path.dirname(scriptPath),
filename: path.basename(scriptPath),
devtoolModuleFilenameTemplate: `${TARGET_NAME}://./${name}/[resource-path]`,
libraryTarget: "var",
library: testFnName,
libraryExport: "default"
},
devtool: evalMaps ? "eval-source-map" : "source-map",
module: {
loaders: [
{
test: /\.tsx?$/,
exclude: /node_modules/,
loader: require.resolve("ts-loader"),
options: {}
}
].filter(Boolean)
}
});
fixtures.push({
name,
testFnName,
scriptPath,
assets: [scriptPath, evalMaps ? null : `${scriptPath}.map`].filter(
Boolean
)
});
}
return {
target: TARGET_NAME,
fixtures
};
};

View File

@ -0,0 +1,10 @@
{
"name": "sourcemapped-webpack3",
"private": true,
"dependencies": {
"lodash": "^4.17.10",
"ts-loader": "3",
"typescript": "^2.9.2",
"webpack": "3"
}
}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap f2d8af6ad35c9ee324e0","webpack:///./fixtures/babel-commonjs/input.js"],"names":["moduleScoped","alsoModuleScoped","thirdModuleScoped","exports","default","console","log"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;AC7DA,IAAIA,eAAe,CAAnB;AACA,IAAIC,mBAAmB,CAAvB;;AAEA,SAASC,iBAAT,GAA6B,CAAE;;AAE/BC,QAAQC,OAAR,GAAkB,YAAW;AAC3BC,UAAQC,GAAR,CAAY,YAAZ,EAA0BN,YAA1B,EAAwCC,gBAAxC,EAA0DC,iBAA1D;AACD,CAFD,C","file":"fixtures/babel-commonjs/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f2d8af6ad35c9ee324e0","var moduleScoped = 1;\nlet alsoModuleScoped = 2;\n\nfunction thirdModuleScoped() {}\n\nexports.default = function() {\n console.log(\"pause here\", moduleScoped, alsoModuleScoped, thirdModuleScoped);\n};\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-commonjs/input.js"],"sourceRoot":""}

View File

@ -1,75 +0,0 @@
var babelEvalMaps =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, {
/******/ configurable: false,
/******/ enumerable: true,
/******/ get: getter
/******/ });
/******/ }
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 0);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony export (immutable) */ __webpack_exports__[\"default\"] = root;\n\nfunction root() {\n var one = 1;\n var two = 2;\n var three = 3;\n\n one;\n two;\n\n {\n var _two = 4;\n var _three = 5;\n\n console.log(\"pause here\", one, _two, _three);\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9maXh0dXJlcy9iYWJlbC1ldmFsLW1hcHMvaW5wdXQuanM/MzE5YiJdLCJuYW1lcyI6WyJyb290Iiwib25lIiwidHdvIiwidGhyZWUiLCJjb25zb2xlIiwibG9nIl0sIm1hcHBpbmdzIjoiOzs7QUFDZSxTQUFTQSxJQUFULEdBQWdCO0FBQzdCLE1BQUlDLE1BQU0sQ0FBVjtBQUNBLE1BQUlDLE1BQU0sQ0FBVjtBQUNBLE1BQU1DLFFBQVEsQ0FBZDs7QUFFQUY7QUFDQUM7O0FBRUE7QUFDRSxRQUFJQSxPQUFNLENBQVY7QUFDQSxRQUFNQyxTQUFRLENBQWQ7O0FBRUFDLFlBQVFDLEdBQVIsQ0FBWSxZQUFaLEVBQTBCSixHQUExQixFQUErQkMsSUFBL0IsRUFBb0NDLE1BQXBDO0FBQ0Q7QUFDRiIsImZpbGUiOiIwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiByb290KCkge1xuICB2YXIgb25lID0gMTtcbiAgbGV0IHR3byA9IDI7XG4gIGNvbnN0IHRocmVlID0gMztcblxuICBvbmU7XG4gIHR3bztcblxuICB7XG4gICAgbGV0IHR3byA9IDQ7XG4gICAgY29uc3QgdGhyZWUgPSA1O1xuXG4gICAgY29uc29sZS5sb2coXCJwYXVzZSBoZXJlXCIsIG9uZSwgdHdvLCB0aHJlZSk7XG4gIH1cbn1cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2ZpeHR1cmVzL2JhYmVsLWV2YWwtbWFwcy9pbnB1dC5qcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///0\n");
/***/ })
/******/ ])["default"];

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap dea1051b75fe78289153","webpack:///./fixtures/eval-source-maps/input.js"],"names":["root","one","two","three","console","log"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;;;;kBC5DwBA,I;AAAT,SAASA,IAAT,GAAgB;AAC7B,MAAIC,MAAM,CAAV;AACA,MAAIC,MAAM,CAAV;AACA,MAAMC,QAAQ,CAAd;;AAEAF;AACAC;;AAEA;AACE,QAAIA,OAAM,CAAV;AACA,QAAMC,SAAQ,CAAd;;AAEAC,YAAQC,GAAR,CAAY,YAAZ,EAA0BJ,GAA1B,EAA+BC,IAA/B,EAAoCC,MAApC;AACD;AACF","file":"fixtures/eval-source-maps/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap dea1051b75fe78289153","\nexport default function root() {\n var one = 1;\n let two = 2;\n const three = 3;\n\n one;\n two;\n\n {\n let two = 4;\n const three = 5;\n\n console.log(\"pause here\", one, two, three);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/eval-source-maps/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap fc082ba7657529f20316","webpack:///./fixtures/babel-for-loops/input.js"],"names":["root","i","console","log"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;AC7De,SAASA,IAAT,GAAgB;AAC7B,MAAIC,IAAI,CAAR;;AAEA,OAAK,IAAIA,KAAI,CAAb,EAAgBA,KAAI,CAApB,EAAuBA,IAAvB,EAA4B;AAC1BC,YAAQC,GAAR,CAAY,YAAZ,EAA0BH,IAA1B;AACD;;AAED,OAAK,IAAIC,GAAT,IAAc,EAAE,GAAG,EAAL,EAAd,EAAyB;AACvBC,YAAQC,GAAR,CAAY,YAAZ,EAA0BH,IAA1B;AACD;;AAT4B,aAWf,CAAC,CAAD,CAXe;AAW7B,8CAAmB;AAAd,QAAIC,eAAJ;AACHC,YAAQC,GAAR,CAAY,YAAZ,EAA0BH,IAA1B;AACD;AACF,C","file":"fixtures/babel-for-loops/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap fc082ba7657529f20316","export default function root() {\n let i = 0;\n\n for (let i = 1; i < 2; i++) {\n console.log(\"pause here\", root);\n }\n\n for (let i in { 2: \"\" }) {\n console.log(\"pause here\", root);\n }\n\n for (let i of [3]) {\n console.log(\"pause here\", root);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-for-loops/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 65586ea97fe7c755787b","webpack:///./fixtures/babel-functions/input.js"],"names":["root","decl","p1","inner","p2","arrow","p3","console","log"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;AC7De,SAASA,IAAT,GAAgB;;AAE7B,WAASC,IAAT,CAAcC,EAAd,EAAkB;AAChB,QAAMC,QAAQ,SAASA,KAAT,CAAeC,EAAf,EAAmB;AAC/B,UAAMC,QAAQ,SAARA,KAAQ,CAACC,EAAD,EAAQ;AACpBC,gBAAQC,GAAR,CAAY,YAAZ,EAA0BF,EAA1B,EAA8BD,KAA9B,EAAqCD,EAArC,EAAyCD,KAAzC,EAAgDD,EAAhD,EAAoDD,IAApD,EAA0DD,IAA1D;AACD,OAFD;AAGAK;AACD,KALD;AAMAF;AACD;;AAEDF;AACD,C","file":"fixtures/babel-functions/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 65586ea97fe7c755787b","export default function root() {\n\n function decl(p1) {\n const inner = function inner(p2) {\n const arrow = (p3) => {\n console.log(\"pause here\", p3, arrow, p2, inner, p1, decl, root);\n };\n arrow();\n };\n inner();\n }\n\n decl();\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-functions/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 652a3419f5bd8aa178af","webpack:///./fixtures/babel-out-of-order-declarations-cjs/input.js","webpack:///./fixtures/babel-out-of-order-declarations-cjs/src/mod.js"],"names":["root","val","fn","outerFn","outer","callback","console","log","aDefault","inner"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;;;;kBC3DwBA,I;;AAcxB;;;;;;AAhBA,IAAIC,MAAM,aAAV;;AAEe,SAASD,IAAT,GAAgB;AAC7B,MAAIC,MAAM,cAAV;AACA,MAAIC,KAAK,SAASC,OAAT,CAAiBC,KAAjB,EAAuB,CAAE,CAAlC;;AAEA,WAASC,QAAT,GAAoB;AAClBC,YAAQC,GAAR,CAAY,YAAZ,EAA0BN,GAA1B,EAA+BO,aAA/B,EAAyCN,EAAzC;;AAEA,QAAID,MAAM,aAAV;AACA,aAASC,EAAT,CAAYO,KAAZ,EAAkB,CAAE;AACrB;;AAEDJ;AACD,C;;;;;;;;;;;;kBCdc,W","file":"fixtures/babel-out-of-order-declarations-cjs/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 652a3419f5bd8aa178af","var val = \"outer-value\";\n\nexport default function root() {\n var val = \"middle-value\";\n var fn = function outerFn(outer){};\n\n function callback() {\n console.log(\"pause here\", val, aDefault, fn);\n\n var val = \"inner-value\";\n function fn(inner){};\n }\n\n callback();\n}\n\nimport aDefault from \"./src/mod\";\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-out-of-order-declarations-cjs/input.js","export default \"a-default\";\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-out-of-order-declarations-cjs/src/mod.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 03c348f3d98d2115f882","webpack:///./fixtures/babel-shadowed-vars/input.js"],"names":["aVar","aLet","aConst","Outer","console","log"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;;AC7DA,+DAAe,YAAW;AACxB,MAAIA,OAAO,MAAX;AACA,MAAIC,OAAO,MAAX;AACA,MAAMC,SAAS,QAAf;;AAHwB,MAKlBC,KALkB;AAAA;AAAA;;AAMxB;AAAA,QACWA,MADX,GACE,SAASA,MAAT,GAAiB,CAAE,CADrB;;AAGE,QAAIH,OAAO,MAAX;AACA,QAAIC,QAAO,MAAX;AACA,QAAMC,UAAS,QAAf;AACA;AACE,UAAIF,OAAO,MAAX;AACA,UAAIC,SAAO,MAAX;AACA,UAAMC,WAAS,QAAf;;AAEAE,cAAQC,GAAR,CAAY,YAAZ;AACD;AACF;AACF,C","file":"fixtures/babel-shadowed-vars/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 03c348f3d98d2115f882","export default function() {\n var aVar = \"var1\";\n let aLet = \"let1\";\n const aConst = \"const1\";\n\n class Outer {}\n {\n function Outer() {}\n\n var aVar = \"var2\";\n let aLet = \"let2\";\n const aConst = \"const2\";\n {\n var aVar = \"var3\";\n let aLet = \"let3\";\n const aConst = \"const3\";\n\n console.log(\"pause here\");\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-shadowed-vars/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 6576b8443f2507db5147","webpack:///./fixtures/babel-step-over-for-of-array-closure/input.js"],"names":["root","console","log","val"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;AC7DA;AAAA;AACe,SAASA,IAAT,GAAgB;AAC7BC,UAAQC,GAAR,CAAY,YAAZ;;AAD6B,6BAGlBC,GAHkB;AAI3BF,YAAQC,GAAR,CAAY,aAAZ,EAA4B;AAAA,aAAMC,GAAN;AAAA,KAAD,EAA3B;AAJ2B;;AAAA,aAGX,CAAC,CAAD,EAAI,CAAJ,CAHW;AAG7B,2CAA0B;AAArB,QAAMA,cAAN;AAAqB,UAAfA,GAAe;AAEzB;;AAEDF,UAAQC,GAAR,CAAY,MAAZ;AACD,C","file":"fixtures/babel-step-over-for-of-array-closure/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 6576b8443f2507db5147","// Babel will optimize this for..of because it call tell the value is an array.\nexport default function root() {\n console.log(\"pause here\");\n\n for (const val of [1, 2]) {\n console.log(\"pause again\", (() => val)());\n }\n\n console.log(\"done\");\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-step-over-for-of-array-closure/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 1d9129b788be1966773c","webpack:///./fixtures/babel-step-over-for-of-closure/input.js"],"names":["vals","root","console","log","val"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;AC7DA;AAAA;AACA;AACA,IAAMA,OAAO,CAAC,CAAD,EAAI,CAAJ,CAAb;;AAEe,SAASC,IAAT,GAAgB;AAC7BC,UAAQC,GAAR,CAAY,YAAZ;;AAD6B,6BAGlBC,GAHkB;AAI3BF,YAAQC,GAAR,CAAY,aAAZ,EAA4B;AAAA,aAAMC,GAAN;AAAA,KAAD,EAA3B;AAJ2B;;AAAA;AAAA;AAAA;;AAAA;AAG7B,yBAAkBJ,IAAlB,8HAAwB;AAAA,UAAbI,GAAa;;AAAA,YAAbA,GAAa;AAEvB;AAL4B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAO7BF,UAAQC,GAAR,CAAY,MAAZ;AACD,C","file":"fixtures/babel-step-over-for-of-closure/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 1d9129b788be1966773c","// Babel will convert the loop body to a function to handle the 'val' lexical\n// enclosure behavior.\nconst vals = [1, 2];\n\nexport default function root() {\n console.log(\"pause here\");\n\n for (const val of vals) {\n console.log(\"pause again\", (() => val)());\n }\n\n console.log(\"done\");\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-step-over-for-of-closure/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 9835aeb3d09c0e8f97bb","webpack:///./fixtures/babel-step-over-function-params/input.js"],"names":["test","a1","a2","a3","a4","a5","a7","a6","console","log","fn","undefined"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;AC7DA;AAAA,SAASA,IAAT,CAAcC,EAAd,EAAiE;AAAA,MAA/CC,EAA+C,uEAA1C,EAA0C;;AAAA,iFAAJ,EAAI;AAAA,MAApCC,EAAoC,QAApCA,EAAoC;AAAA,MAAhCC,EAAgC,QAAhCA,EAAgC;AAAA,oBAA5BC,EAA4B;;AAAA,kCAAX,EAAW;AAAA,MAAlBC,EAAkB,UAAtBC,EAAsB;;AAC/DC,UAAQC,GAAR,CAAY,iBAAZ;AACD;;AAEc,SAASC,EAAT,GAAc;AAC3BF,UAAQC,GAAR,CAAY,YAAZ;AACAT,OAAK,GAAL,EAAUW,SAAV,EAAqB,EAAER,IAAI,GAAN,EAAWC,IAAI,GAAf,EAAoBC,IAAI,EAAEE,IAAI,GAAN,EAAxB,EAArB;AACD,C","file":"fixtures/babel-step-over-function-params/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 9835aeb3d09c0e8f97bb","function test(a1, a2 = 45, { a3, a4, a5: { a6: a7 } = {} } = {}) {\n console.log(\"pause next here\");\n}\n\nexport default function fn() {\n console.log(\"pause here\");\n test(\"1\", undefined, { a3: \"3\", a4: \"4\", a5: { a6: \"7\" } });\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-step-over-function-params/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 0b34e7655d8c8307d2c1","webpack:///./fixtures/babel-step-over-regenerator-await/input.js"],"names":["fn","console","log","doAsync","Promise","resolve","root"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;;;AC7DA,IAAIA;AAAA,qEAAK;AAAA;AAAA;AAAA;AAAA;AACPC,oBAAQC,GAAR,CAAY,YAAZ;;AADO;AAAA,mBAGDC,SAHC;;AAAA;;AAKPF,oBAAQC,GAAR,CAAY,cAAZ;;AALO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAAL;;AAAA,WAAoBF,EAApB;AAAA;AAAA;;AAAA,SAAoBA,EAApB;AAAA,GAAJ;;AAQA,SAASG,OAAT,GAAmB;AACjB,SAAOC,QAAQC,OAAR,EAAP;AACD;;AAEc,SAASC,IAAT,GAAgB;AAC7BN;AACD,C","file":"fixtures/babel-step-over-regenerator-await/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 0b34e7655d8c8307d2c1","var fn = async function fn() {\n console.log(\"pause here\");\n\n await doAsync();\n\n console.log(\"stopped here\");\n};\n\nfunction doAsync() {\n return Promise.resolve();\n}\n\nexport default function root() {\n fn();\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-step-over-regenerator-await/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap e10927db47ed55253b4b","webpack:///./fixtures/babel-this-arguments-bindings/input.js"],"names":["root","fn","arg","console","log","arguments","arrow","call"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;AC7De,SAASA,IAAT,GAAgB;AAC7B,WAASC,EAAT,CAAYC,GAAZ,EAAiB;AAAA;AAAA;;AACfC,YAAQC,GAAR,CAAY,IAAZ,EAAkBC,SAAlB;AACAF,YAAQC,GAAR,CAAY,YAAZ,EAA0BH,EAA1B,EAA8BD,IAA9B;;AAEA,QAAMM,QAAQ,SAARA,KAAQ,WAAY;AACxBH,cAAQC,GAAR,CAAY,KAAZ,EAAkBC,UAAlB;AACAF,cAAQC,GAAR,CAAY,YAAZ,EAA0BH,EAA1B,EAA8BD,IAA9B;AACD,KAHD;AAIAM,UAAM,WAAN;AACD;;AAEDL,KAAGM,IAAH,CAAQ,YAAR,EAAsB,WAAtB;AACD,C","file":"fixtures/babel-this-arguments-bindings/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap e10927db47ed55253b4b","export default function root() {\n function fn(arg) {\n console.log(this, arguments);\n console.log(\"pause here\", fn, root);\n\n const arrow = argArrow => {\n console.log(this, arguments);\n console.log(\"pause here\", fn, root);\n };\n arrow(\"arrow-arg\");\n }\n\n fn.call(\"this-value\", \"arg-value\");\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-this-arguments-bindings/input.js"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap 67e7d5bfdab92d0a54ad","webpack:///./fixtures/babel-try-catches/input.js"],"names":["root","one","err","two","console","log"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;;;;AC7De,SAASA,IAAT,GAAgB;AAC7B,MAAMC,MAAM,CAAZ;;AAEA,MAAI;AACF,UAAM,SAAN;AACD,GAFD,CAEE,OAAOC,GAAP,EAAY;AACZ,QAAIC,MAAM,CAAV;AACAC,YAAQC,GAAR,CAAY,YAAZ,EAA0BL,IAA1B;AACD;AACF,C","file":"fixtures/babel-try-catches/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 67e7d5bfdab92d0a54ad","export default function root() {\n const one = 1;\n\n try {\n throw \"AnError\";\n } catch (err) {\n let two = 2;\n console.log(\"pause here\", root);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-try-catches/input.js"],"sourceRoot":""}

View File

@ -1,14 +0,0 @@
var moduleScoped = 1;
let alsoModuleScopes = 2;
function thirdModuleScoped() {}
function nonModules() {
console.log("pause here");
}
Promise.resolve().then(() => {
// Webpack sets this to undefined initially since this file
// doesn't export anything, so we overwrite it on the next tick.
window.babelTypeScript = nonModules;
});

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///webpack/bootstrap bf14e3629a2289ad0cc2","webpack:///./fixtures/babel-type-script/input.js"],"names":["moduleScoped","alsoModuleScopes","thirdModuleScoped","nonModules","console","log","Promise","resolve","then","window","babelTypeScript"],"mappings":";;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;AC7DA,IAAIA,eAAe,CAAnB;AACA,IAAIC,mBAAmB,CAAvB;;AAEA,SAASC,iBAAT,GAA6B,CAAE;;AAE/B,SAASC,UAAT,GAAsB;AACpBC,UAAQC,GAAR,CAAY,YAAZ;AACD;;AAEDC,QAAQC,OAAR,GAAkBC,IAAlB,CAAuB,YAAM;AAC3B;AACA;AACAC,SAAOC,eAAP,GAAyBP,UAAzB;AACD,CAJD,E","file":"fixtures/babel-type-script/output.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap bf14e3629a2289ad0cc2","var moduleScoped = 1;\nlet alsoModuleScopes = 2;\n\nfunction thirdModuleScoped() {}\n\nfunction nonModules() {\n console.log(\"pause here\");\n}\n\nPromise.resolve().then(() => {\n // Webpack sets this to undefined initially since this file\n // doesn't export anything, so we overwrite it on the next tick.\n window.babelTypeScript = nonModules;\n});\n\n\n\n// WEBPACK FOOTER //\n// ./fixtures/babel-type-script/input.js"],"sourceRoot":""}

View File

@ -6,12 +6,10 @@ import * as aNamespace from "./src/mod4";
import aDefault2 from "./src/mod5";
import { aNamed2, aNamed2 as anotherNamed2 } from "./src/mod6";
import { original as anAliased2 } from "./src/mod7";
import * as aNamespace2 from "./src/mod8";
import aDefault3 from "./src/mod9";
import { aNamed3, aNamed3 as anotherNamed3 } from "./src/mod10";
import { original as anAliased3 } from "./src/mod11";
import * as aNamespace3 from "./src/mod12";
import optimizedOut from "./src/optimized-out";
optimizedOut();
@ -32,13 +30,11 @@ export default function root() {
console.log(anAliased2());
console.log(aNamed2());
console.log(anotherNamed2());
console.log(aNamespace2());
console.log(new aDefault3());
console.log(new anAliased3());
console.log(new aNamed3());
console.log(new anotherNamed3());
console.log(new aNamespace3());
} catch (e) {}
}

View File

@ -6,12 +6,10 @@ import * as aNamespace from "./src/mod4";
import aDefault2 from "./src/mod5";
import { aNamed2, aNamed2 as anotherNamed2 } from "./src/mod6";
import { original as anAliased2 } from "./src/mod7";
import * as aNamespace2 from "./src/mod8";
import aDefault3 from "./src/mod9";
import { aNamed3, aNamed3 as anotherNamed3 } from "./src/mod10";
import { original as anAliased3 } from "./src/mod11";
import * as aNamespace3 from "./src/mod12";
import optimizedOut from "./src/optimized-out";
optimizedOut();
@ -32,13 +30,11 @@ export default function root() {
console.log(anAliased2());
console.log(aNamed2());
console.log(anotherNamed2());
console.log(aNamespace2());
console.log(new aDefault3());
console.log(new anAliased3());
console.log(new aNamed3());
console.log(new anotherNamed3());
console.log(new aNamespace3());
} catch (e) {}
}

View File

@ -6,12 +6,10 @@ import * as aNamespace from "./src/mod4";
import aDefault2 from "./src/mod5";
import { aNamed2, aNamed2 as anotherNamed2 } from "./src/mod6";
import { original as anAliased2 } from "./src/mod7";
import * as aNamespace2 from "./src/mod8";
import aDefault3 from "./src/mod9";
import { aNamed3, aNamed3 as anotherNamed3 } from "./src/mod10";
import { original as anAliased3 } from "./src/mod11";
import * as aNamespace3 from "./src/mod12";
import optimizedOut from "./src/optimized-out";
optimizedOut();
@ -32,13 +30,11 @@ export default function root() {
console.log(anAliased2());
console.log(aNamed2());
console.log(anotherNamed2());
console.log(aNamespace2());
console.log(new aDefault3());
console.log(new anAliased3());
console.log(new aNamed3());
console.log(new anotherNamed3());
console.log(new aNamespace3());
} catch (e) {}
}

Some files were not shown because too many files have changed in this diff Show More