fix(zone.js): should have better backward compatibilities (#38797)

Close #38561, #38669

zone.js 0.11.1 introduces a breaking change to adpat Angular package format,
and it breaks the module loading order, before 0.11, in IE11, the `zone.js` es5
format bundle will be imported, but after 0.11, the `fesm2015` format bundle will
be imported, which causes error.

And since the only purpose of the `dist` folder of zone.js bundles is to keep backward
 compatibility, in the original commit, I use package redirect to implement that, but
it is not fully backward compatible, we should keep the same dist structure as `0.10.3`.

PR Close #38797
This commit is contained in:
JiaLiPassion
2020-09-11 03:28:40 +09:00
committed by Misko Hevery
parent c4b8964424
commit a33d630a21
76 changed files with 260 additions and 691 deletions

View File

@ -1,80 +1,117 @@
package(default_visibility = ["//visibility:public"]) package(default_visibility = ["//visibility:public"])
load("//packages/zone.js/dist:tools.bzl", "copy_es2015_to_dist", "copy_es5_to_dist")
copy_es2015_to_dist()
copy_es5_to_dist()
genrule(
name = "zone_externs",
srcs = ["//packages/zone.js:zone_externs"],
outs = ["zone_externs.js"],
cmd = "cp $< $@",
)
genrule(
name = "zone_extensions_d_ts",
srcs = ["//packages/zone.js/lib:zone.api.extensions.ts"],
outs = ["zone.api.extensions.ts"],
cmd = "cp $< $@",
)
genrule(
name = "zone_configurations_d_ts",
srcs = ["//packages/zone.js/lib:zone.configurations.api.ts"],
outs = ["zone.configurations.api.ts"],
cmd = "cp $< $@",
)
genrule(
name = "zone_js_d_ts",
srcs = ["//packages/zone.js/lib:zone_d_ts"],
outs = ["zone.js.d.ts"],
cmd = "cp $< $@",
)
filegroup( filegroup(
name = "dist_bundle_group", name = "dist_bundle_group",
srcs = [ srcs = [
"//packages/zone.js/dist:async-test.min/package.json", ":async-test.js",
"//packages/zone.js/dist:async-test/package.json", ":async-test.min.js",
"//packages/zone.js/dist:fake-async-test.min/package.json", ":fake-async-test.js",
"//packages/zone.js/dist:fake-async-test/package.json", ":fake-async-test.min.js",
"//packages/zone.js/dist:jasmine-patch.min/package.json", ":jasmine-patch.js",
"//packages/zone.js/dist:jasmine-patch/package.json", ":jasmine-patch.min.js",
"//packages/zone.js/dist:long-stack-trace-zone.min/package.json", ":long-stack-trace-zone.js",
"//packages/zone.js/dist:long-stack-trace-zone/package.json", ":long-stack-trace-zone.min.js",
"//packages/zone.js/dist:mocha-patch.min/package.json", ":mocha-patch.js",
"//packages/zone.js/dist:mocha-patch/package.json", ":mocha-patch.min.js",
"//packages/zone.js/dist:proxy.min/package.json", ":proxy.js",
"//packages/zone.js/dist:proxy/package.json", ":proxy.min.js",
"//packages/zone.js/dist:sync-test.min/package.json", ":sync-test.js",
"//packages/zone.js/dist:sync-test/package.json", ":sync-test.min.js",
"//packages/zone.js/dist:task-tracking.min/package.json", ":task-tracking.js",
"//packages/zone.js/dist:task-tracking/package.json", ":task-tracking.min.js",
"//packages/zone.js/dist:webapis-media-query.min/package.json", ":webapis-media-query.js",
"//packages/zone.js/dist:webapis-media-query/package.json", ":webapis-media-query.min.js",
"//packages/zone.js/dist:webapis-notification.min/package.json", ":webapis-notification.js",
"//packages/zone.js/dist:webapis-notification/package.json", ":webapis-notification.min.js",
"//packages/zone.js/dist:webapis-rtc-peer-connection.min/package.json", ":webapis-rtc-peer-connection.js",
"//packages/zone.js/dist:webapis-rtc-peer-connection/package.json", ":webapis-rtc-peer-connection.min.js",
"//packages/zone.js/dist:webapis-shadydom.min/package.json", ":webapis-shadydom.js",
"//packages/zone.js/dist:webapis-shadydom/package.json", ":webapis-shadydom.min.js",
"//packages/zone.js/dist:wtf.min/package.json", ":wtf.js",
"//packages/zone.js/dist:wtf/package.json", ":wtf.min.js",
"//packages/zone.js/dist:zone.min/package.json", ":zone.js",
"//packages/zone.js/dist:zone-bluebird.min/package.json", ":zone.min.js",
"//packages/zone.js/dist:zone-bluebird/package.json", ":zone-bluebird.js",
"//packages/zone.js/dist:zone-error.min/package.json", ":zone-bluebird.min.js",
"//packages/zone.js/dist:zone-error/package.json", ":zone-error.js",
"//packages/zone.js/dist:zone-evergreen.min/package.json", ":zone-error.min.js",
"//packages/zone.js/dist:zone-evergreen-testing-bundle.min/package.json", ":zone-evergreen.js",
"//packages/zone.js/dist:zone-evergreen-testing-bundle/package.json", ":zone-evergreen.min.js",
"//packages/zone.js/dist:zone-evergreen/package.json", ":zone-evergreen-testing-bundle.js",
"//packages/zone.js/dist:zone-legacy.min/package.json", ":zone-evergreen-testing-bundle.min.js",
"//packages/zone.js/dist:zone-legacy/package.json", ":zone-legacy.js",
"//packages/zone.js/dist:zone-mix.min/package.json", ":zone-legacy.min.js",
"//packages/zone.js/dist:zone-mix/package.json", ":zone-mix.js",
"//packages/zone.js/dist:zone-node.min/package.json", ":zone-mix.min.js",
"//packages/zone.js/dist:zone-node/package.json", ":zone-node.js",
"//packages/zone.js/dist:zone-patch-canvas.min/package.json", ":zone-node.min.js",
"//packages/zone.js/dist:zone-patch-canvas/package.json", ":zone-patch-canvas.js",
"//packages/zone.js/dist:zone-patch-cordova.min/package.json", ":zone-patch-canvas.min.js",
"//packages/zone.js/dist:zone-patch-cordova/package.json", ":zone-patch-cordova.js",
"//packages/zone.js/dist:zone-patch-electron.min/package.json", ":zone-patch-cordova.min.js",
"//packages/zone.js/dist:zone-patch-electron/package.json", ":zone-patch-electron.js",
"//packages/zone.js/dist:zone-patch-fetch.min/package.json", ":zone-patch-electron.min.js",
"//packages/zone.js/dist:zone-patch-fetch/package.json", ":zone-patch-fetch.js",
"//packages/zone.js/dist:zone-patch-jsonp.min/package.json", ":zone-patch-fetch.min.js",
"//packages/zone.js/dist:zone-patch-jsonp/package.json", ":zone-patch-jsonp.js",
"//packages/zone.js/dist:zone-patch-message-port.min/package.json", ":zone-patch-jsonp.min.js",
"//packages/zone.js/dist:zone-patch-message-port/package.json", ":zone-patch-message-port.js",
"//packages/zone.js/dist:zone-patch-promise-test.min/package.json", ":zone-patch-message-port.min.js",
"//packages/zone.js/dist:zone-patch-promise-test/package.json", ":zone-patch-promise-test.js",
"//packages/zone.js/dist:zone-patch-resize-observer.min/package.json", ":zone-patch-promise-test.min.js",
"//packages/zone.js/dist:zone-patch-resize-observer/package.json", ":zone-patch-resize-observer.js",
"//packages/zone.js/dist:zone-patch-rxjs.min/package.json", ":zone-patch-resize-observer.min.js",
"//packages/zone.js/dist:zone-patch-rxjs-fake-async.min/package.json", ":zone-patch-rxjs.js",
"//packages/zone.js/dist:zone-patch-rxjs-fake-async/package.json", ":zone-patch-rxjs.min.js",
"//packages/zone.js/dist:zone-patch-rxjs/package.json", ":zone-patch-rxjs-fake-async.js",
"//packages/zone.js/dist:zone-patch-socket-io.min/package.json", ":zone-patch-rxjs-fake-async.min.js",
"//packages/zone.js/dist:zone-patch-socket-io/package.json", ":zone-patch-socket-io.js",
"//packages/zone.js/dist:zone-patch-user-media.min/package.json", ":zone-patch-socket-io.min.js",
"//packages/zone.js/dist:zone-patch-user-media/package.json", ":zone-patch-user-media.js",
"//packages/zone.js/dist:zone-testing.min/package.json", ":zone-patch-user-media.min.js",
"//packages/zone.js/dist:zone-testing-bundle.min/package.json", ":zone-testing.js",
"//packages/zone.js/dist:zone-testing-bundle/package.json", ":zone-testing.min.js",
"//packages/zone.js/dist:zone-testing-node-bundle.min/package.json", ":zone-testing-bundle.js",
"//packages/zone.js/dist:zone-testing-node-bundle/package.json", ":zone-testing-bundle.min.js",
"//packages/zone.js/dist:zone-testing/package.json", ":zone-testing-node-bundle.js",
"//packages/zone.js/dist:zone/package.json", ":zone-testing-node-bundle.min.js",
"//packages/zone.js/dist:zone_externs/package.json", ":zone_configurations_d_ts",
":zone_extensions_d_ts",
":zone_externs",
":zone_js_d_ts",
], ],
) )

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/async-test.min",
"main": "../../bundles/async-test.umd.min.js",
"fesm2015": "../../fesm2015/async-test.min.js",
"es2015": "../../fesm2015/async-test.min.js",
"module": "../../fesm2015/async-test.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/async-test",
"main": "../../bundles/async-test.umd.js",
"fesm2015": "../../fesm2015/async-test.js",
"es2015": "../../fesm2015/async-test.js",
"module": "../../fesm2015/async-test.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/fake-async-test.min",
"main": "../../bundles/fake-async-test.umd.min.js",
"fesm2015": "../../fesm2015/fake-async-test.min.js",
"es2015": "../../fesm2015/fake-async-test.min.js",
"module": "../../fesm2015/fake-async-test.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/fake-async-test",
"main": "../../bundles/fake-async-test.umd.js",
"fesm2015": "../../fesm2015/fake-async-test.js",
"es2015": "../../fesm2015/fake-async-test.js",
"module": "../../fesm2015/fake-async-test.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/jasmine-patch.min",
"main": "../../bundles/jasmine-patch.umd.min.js",
"fesm2015": "../../fesm2015/jasmine-patch.min.js",
"es2015": "../../fesm2015/jasmine-patch.min.js",
"module": "../../fesm2015/jasmine-patch.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/jasmine-patch",
"main": "../../bundles/jasmine-patch.umd.js",
"fesm2015": "../../fesm2015/jasmine-patch.js",
"es2015": "../../fesm2015/jasmine-patch.js",
"module": "../../fesm2015/jasmine-patch.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/long-stack-trace-zone.min",
"main": "../../bundles/long-stack-trace-zone.umd.min.js",
"fesm2015": "../../fesm2015/long-stack-trace-zone.min.js",
"es2015": "../../fesm2015/long-stack-trace-zone.min.js",
"module": "../../fesm2015/long-stack-trace-zone.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/long-stack-trace-zone",
"main": "../../bundles/long-stack-trace-zone.umd.js",
"fesm2015": "../../fesm2015/long-stack-trace-zone.js",
"es2015": "../../fesm2015/long-stack-trace-zone.js",
"module": "../../fesm2015/long-stack-trace-zone.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/mocha-patch.min",
"main": "../../bundles/mocha-patch.umd.min.js",
"fesm2015": "../../fesm2015/mocha-patch.min.js",
"es2015": "../../fesm2015/mocha-patch.min.js",
"module": "../../fesm2015/mocha-patch.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/mocha-patch",
"main": "../../bundles/mocha-patch.umd.js",
"fesm2015": "../../fesm2015/mocha-patch.js",
"es2015": "../../fesm2015/mocha-patch.js",
"module": "../../fesm2015/mocha-patch.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/proxy.min",
"main": "../../bundles/proxy.umd.min.js",
"fesm2015": "../../fesm2015/proxy.min.js",
"es2015": "../../fesm2015/proxy.min.js",
"module": "../../fesm2015/proxy.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/proxy",
"main": "../../bundles/proxy.umd.js",
"fesm2015": "../../fesm2015/proxy.js",
"es2015": "../../fesm2015/proxy.js",
"module": "../../fesm2015/proxy.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/sync-test.min",
"main": "../../bundles/sync-test.umd.min.js",
"fesm2015": "../../fesm2015/sync-test.min.js",
"es2015": "../../fesm2015/sync-test.min.js",
"module": "../../fesm2015/sync-test.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/sync-test",
"main": "../../bundles/sync-test.umd.js",
"fesm2015": "../../fesm2015/sync-test.js",
"es2015": "../../fesm2015/sync-test.js",
"module": "../../fesm2015/sync-test.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/task-tracking.min",
"main": "../../bundles/task-tracking.umd.min.js",
"fesm2015": "../../fesm2015/task-tracking.min.js",
"es2015": "../../fesm2015/task-tracking.min.js",
"module": "../../fesm2015/task-tracking.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/task-tracking",
"main": "../../bundles/task-tracking.umd.js",
"fesm2015": "../../fesm2015/task-tracking.js",
"es2015": "../../fesm2015/task-tracking.js",
"module": "../../fesm2015/task-tracking.js"
}

71
packages/zone.js/dist/tools.bzl vendored Normal file
View File

@ -0,0 +1,71 @@
ES5_BUNDLES = [
"zone",
"zone-mix",
"zone-node",
"zone-testing-node-bundle",
"async-test",
"fake-async-test",
"long-stack-trace-zone",
"proxy",
"zone-patch-rxjs-fake-async",
"sync-test",
"task-tracking",
"wtf",
"zone-error",
"zone-legacy",
"zone-bluebird",
"zone-patch-canvas",
"zone-patch-cordova",
"zone-patch-electron",
"zone-patch-fetch",
"jasmine-patch",
"zone-patch-jsonp",
"webapis-media-query",
"mocha-patch",
"webapis-notification",
"zone-patch-promise-test",
"zone-patch-resize-observer",
"webapis-rtc-peer-connection",
"zone-patch-rxjs",
"webapis-shadydom",
"zone-patch-socket-io",
"zone-patch-user-media",
"zone-patch-message-port",
"zone-testing",
"zone-testing-bundle",
]
ES2015_BUNDLES = {
"zone-evergreen": "//packages/zone.js/fesm2015:zone",
"zone-evergreen-testing-bundle": "//packages/zone.js/fesm2015:zone-testing-bundle",
}
def copy_es5_to_dist():
for b in ES5_BUNDLES:
native.genrule(
name = "zone_copy_" + b,
srcs = ["//packages/zone.js/bundles:" + b + ".umd.js"],
outs = [b + ".js"],
cmd = "cp $< $@",
)
native.genrule(
name = "zone_copy_min_" + b,
srcs = ["//packages/zone.js/bundles:" + b + ".umd.min.js"],
outs = [b + ".min.js"],
cmd = "cp $< $@",
)
def copy_es2015_to_dist():
for b in ES2015_BUNDLES.items():
native.genrule(
name = "zone_copy_" + b[0],
srcs = [b[1] + ".js"],
outs = [b[0] + ".js"],
cmd = "cp $< $@",
)
native.genrule(
name = "zone_copy_min_" + b[0],
srcs = [b[1] + ".min.js"],
outs = [b[0] + ".min.js"],
cmd = "cp $< $@",
)

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-media-query.min",
"main": "../../bundles/webapis-media-query.umd.min.js",
"fesm2015": "../../fesm2015/webapis-media-query.min.js",
"es2015": "../../fesm2015/webapis-media-query.min.js",
"module": "../../fesm2015/webapis-media-query.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-media-query",
"main": "../../bundles/webapis-media-query.umd.js",
"fesm2015": "../../fesm2015/webapis-media-query.js",
"es2015": "../../fesm2015/webapis-media-query.js",
"module": "../../fesm2015/webapis-media-query.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-notification.min",
"main": "../../bundles/webapis-notification.umd.min.js",
"fesm2015": "../../fesm2015/webapis-notification.min.js",
"es2015": "../../fesm2015/webapis-notification.min.js",
"module": "../../fesm2015/webapis-notification.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-notification",
"main": "../../bundles/webapis-notification.umd.js",
"fesm2015": "../../fesm2015/webapis-notification.js",
"es2015": "../../fesm2015/webapis-notification.js",
"module": "../../fesm2015/webapis-notification.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-rtc-peer-connection.min",
"main": "../../bundles/webapis-rtc-peer-connection.umd.min.js",
"fesm2015": "../../fesm2015/webapis-rtc-peer-connection.min.js",
"es2015": "../../fesm2015/webapis-rtc-peer-connection.min.js",
"module": "../../fesm2015/webapis-rtc-peer-connection.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-rtc-peer-connection",
"main": "../../bundles/webapis-rtc-peer-connection.umd.js",
"fesm2015": "../../fesm2015/webapis-rtc-peer-connection.js",
"es2015": "../../fesm2015/webapis-rtc-peer-connection.js",
"module": "../../fesm2015/webapis-rtc-peer-connection.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-shadydom.min",
"main": "../../bundles/webapis-shadydom.umd.min.js",
"fesm2015": "../../fesm2015/webapis-shadydom.min.js",
"es2015": "../../fesm2015/webapis-shadydom.min.js",
"module": "../../fesm2015/webapis-shadydom.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/webapis-shadydom",
"main": "../../bundles/webapis-shadydom.umd.js",
"fesm2015": "../../fesm2015/webapis-shadydom.js",
"es2015": "../../fesm2015/webapis-shadydom.js",
"module": "../../fesm2015/webapis-shadydom.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/wtf.min",
"main": "../../bundles/wtf.umd.min.js",
"fesm2015": "../../fesm2015/wtf.min.js",
"es2015": "../../fesm2015/wtf.min.js",
"module": "../../fesm2015/wtf.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/wtf",
"main": "../../bundles/wtf.umd.js",
"fesm2015": "../../fesm2015/wtf.js",
"es2015": "../../fesm2015/wtf.js",
"module": "../../fesm2015/wtf.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-bluebird.min",
"main": "../../bundles/zone-bluebird.umd.min.js",
"fesm2015": "../../fesm2015/zone-bluebird.min.js",
"es2015": "../../fesm2015/zone-bluebird.min.js",
"module": "../../fesm2015/zone-bluebird.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-bluebird",
"main": "../../bundles/zone-bluebird.umd.js",
"fesm2015": "../../fesm2015/zone-bluebird.js",
"es2015": "../../fesm2015/zone-bluebird.js",
"module": "../../fesm2015/zone-bluebird.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-error.min",
"main": "../../bundles/zone-error.umd.min.js",
"fesm2015": "../../fesm2015/zone-error.min.js",
"es2015": "../../fesm2015/zone-error.min.js",
"module": "../../fesm2015/zone-error.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-error",
"main": "../../bundles/zone-error.umd.js",
"fesm2015": "../../fesm2015/zone-error.js",
"es2015": "../../fesm2015/zone-error.js",
"module": "../../fesm2015/zone-error.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-evergreen-testing-bundle.min",
"main": "../../fesm2015/zone-testing-bundle.min.js",
"fesm2015": "../../fesm2015/zone-testing-bundle.min.js",
"es2015": "../../fesm2015/zone-testing-bundle.min.js",
"module": "../../fesm2015/zone-testing-bundle.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-evergreen-testing-bundle",
"main": "../../fesm2015/zone-testing-bundle.js",
"fesm2015": "../../fesm2015/zone-testing-bundle.js",
"es2015": "../../fesm2015/zone-testing-bundle.js",
"module": "../../fesm2015/zone-testing-bundle.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-evergreen.min",
"main": "../../fesm2015/zone.min.js",
"fesm2015": "../../fesm2015/zone.min.js",
"es2015": "../../fesm2015/zone.min.js",
"module": "../../fesm2015/zone.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-evergreen",
"main": "../../fesm2015/zone.js",
"fesm2015": "../../fesm2015/zone.js",
"es2015": "../../fesm2015/zone.js",
"module": "../../fesm2015/zone.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-legacy.min",
"main": "../../bundles/zone-legacy.umd.min.js",
"fesm2015": "../../fesm2015/zone-legacy.min.js",
"es2015": "../../fesm2015/zone-legacy.min.js",
"module": "../../fesm2015/zone-legacy.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-legacy",
"main": "../../bundles/zone-legacy.umd.js",
"fesm2015": "../../fesm2015/zone-legacy.js",
"es2015": "../../fesm2015/zone-legacy.js",
"module": "../../fesm2015/zone-legacy.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-mix.min",
"main": "../../bundles/zone-mix.umd.min.js",
"fesm2015": "../../fesm2015/zone-mix.min.js",
"es2015": "../../fesm2015/zone-mix.min.js",
"module": "../../fesm2015/zone-mix.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-mix",
"main": "../../bundles/zone-mix.umd.js",
"fesm2015": "../../fesm2015/zone-mix.js",
"es2015": "../../fesm2015/zone-mix.js",
"module": "../../fesm2015/zone-mix.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-node.min",
"main": "../../bundles/zone-node.umd.min.js",
"fesm2015": "../../fesm2015/zone-node.min.js",
"es2015": "../../fesm2015/zone-node.min.js",
"module": "../../fesm2015/zone-node.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-node",
"main": "../../bundles/zone-node.umd.js",
"fesm2015": "../../fesm2015/zone-node.js",
"es2015": "../../fesm2015/zone-node.js",
"module": "../../fesm2015/zone-node.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-canvas.min",
"main": "../../bundles/zone-patch-canvas.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-canvas.min.js",
"es2015": "../../fesm2015/zone-patch-canvas.min.js",
"module": "../../fesm2015/zone-patch-canvas.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-canvas",
"main": "../../bundles/zone-patch-canvas.umd.js",
"fesm2015": "../../fesm2015/zone-patch-canvas.js",
"es2015": "../../fesm2015/zone-patch-canvas.js",
"module": "../../fesm2015/zone-patch-canvas.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-cordova.min",
"main": "../../bundles/zone-patch-cordova.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-cordova.min.js",
"es2015": "../../fesm2015/zone-patch-cordova.min.js",
"module": "../../fesm2015/zone-patch-cordova.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-cordova",
"main": "../../bundles/zone-patch-cordova.umd.js",
"fesm2015": "../../fesm2015/zone-patch-cordova.js",
"es2015": "../../fesm2015/zone-patch-cordova.js",
"module": "../../fesm2015/zone-patch-cordova.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-electron.min",
"main": "../../bundles/zone-patch-electron.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-electron.min.js",
"es2015": "../../fesm2015/zone-patch-electron.min.js",
"module": "../../fesm2015/zone-patch-electron.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-electron",
"main": "../../bundles/zone-patch-electron.umd.js",
"fesm2015": "../../fesm2015/zone-patch-electron.js",
"es2015": "../../fesm2015/zone-patch-electron.js",
"module": "../../fesm2015/zone-patch-electron.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-fetch.min",
"main": "../../bundles/zone-patch-fetch.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-fetch.min.js",
"es2015": "../../fesm2015/zone-patch-fetch.min.js",
"module": "../../fesm2015/zone-patch-fetch.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-fetch",
"main": "../../bundles/zone-patch-fetch.umd.js",
"fesm2015": "../../fesm2015/zone-patch-fetch.js",
"es2015": "../../fesm2015/zone-patch-fetch.js",
"module": "../../fesm2015/zone-patch-fetch.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-jsonp.min",
"main": "../../bundles/zone-patch-jsonp.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-jsonp.min.js",
"es2015": "../../fesm2015/zone-patch-jsonp.min.js",
"module": "../../fesm2015/zone-patch-jsonp.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-jsonp",
"main": "../../bundles/zone-patch-jsonp.umd.js",
"fesm2015": "../../fesm2015/zone-patch-jsonp.js",
"es2015": "../../fesm2015/zone-patch-jsonp.js",
"module": "../../fesm2015/zone-patch-jsonp.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-message-port.min",
"main": "../../bundles/zone-patch-message-port.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-message-port.min.js",
"es2015": "../../fesm2015/zone-patch-message-port.min.js",
"module": "../../fesm2015/zone-patch-message-port.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-message-port",
"main": "../../bundles/zone-patch-message-port.umd.js",
"fesm2015": "../../fesm2015/zone-patch-message-port.js",
"es2015": "../../fesm2015/zone-patch-message-port.js",
"module": "../../fesm2015/zone-patch-message-port.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-promise-test.min",
"main": "../../bundles/zone-patch-promise-test.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-promise-test.min.js",
"es2015": "../../fesm2015/zone-patch-promise-test.min.js",
"module": "../../fesm2015/zone-patch-promise-test.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-promise-test",
"main": "../../bundles/zone-patch-promise-test.umd.js",
"fesm2015": "../../fesm2015/zone-patch-promise-test.js",
"es2015": "../../fesm2015/zone-patch-promise-test.js",
"module": "../../fesm2015/zone-patch-promise-test.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-resize-observer.min",
"main": "../../bundles/zone-patch-resize-observer.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-resize-observer.min.js",
"es2015": "../../fesm2015/zone-patch-resize-observer.min.js",
"module": "../../fesm2015/zone-patch-resize-observer.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-resize-observer",
"main": "../../bundles/zone-patch-resize-observer.umd.js",
"fesm2015": "../../fesm2015/zone-patch-resize-observer.js",
"es2015": "../../fesm2015/zone-patch-resize-observer.js",
"module": "../../fesm2015/zone-patch-resize-observer.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-rxjs-fake-async.min",
"main": "../../bundles/zone-patch-rxjs-fake-async.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-rxjs-fake-async.min.js",
"es2015": "../../fesm2015/zone-patch-rxjs-fake-async.min.js",
"module": "../../fesm2015/zone-patch-rxjs-fake-async.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-rxjs-fake-async",
"main": "../../bundles/zone-patch-rxjs-fake-async.umd.js",
"fesm2015": "../../fesm2015/zone-patch-rxjs-fake-async.js",
"es2015": "../../fesm2015/zone-patch-rxjs-fake-async.js",
"module": "../../fesm2015/zone-patch-rxjs-fake-async.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-rxjs.min",
"main": "../../bundles/zone-patch-rxjs.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-rxjs.min.js",
"es2015": "../../fesm2015/zone-patch-rxjs.min.js",
"module": "../../fesm2015/zone-patch-rxjs.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-rxjs",
"main": "../../bundles/zone-patch-rxjs.umd.js",
"fesm2015": "../../fesm2015/zone-patch-rxjs.js",
"es2015": "../../fesm2015/zone-patch-rxjs.js",
"module": "../../fesm2015/zone-patch-rxjs.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-socket-io.min",
"main": "../../bundles/zone-patch-socket-io.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-socket-io.min.js",
"es2015": "../../fesm2015/zone-patch-socket-io.min.js",
"module": "../../fesm2015/zone-patch-socket-io.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-socket-io",
"main": "../../bundles/zone-patch-socket-io.umd.js",
"fesm2015": "../../fesm2015/zone-patch-socket-io.js",
"es2015": "../../fesm2015/zone-patch-socket-io.js",
"module": "../../fesm2015/zone-patch-socket-io.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-user-media.min",
"main": "../../bundles/zone-patch-user-media.umd.min.js",
"fesm2015": "../../fesm2015/zone-patch-user-media.min.js",
"es2015": "../../fesm2015/zone-patch-user-media.min.js",
"module": "../../fesm2015/zone-patch-user-media.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-patch-user-media",
"main": "../../bundles/zone-patch-user-media.umd.js",
"fesm2015": "../../fesm2015/zone-patch-user-media.js",
"es2015": "../../fesm2015/zone-patch-user-media.js",
"module": "../../fesm2015/zone-patch-user-media.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-testing-bundle.min",
"main": "../../bundles/zone-testing-bundle.umd.min.js",
"fesm2015": "../../fesm2015/zone-testing-bundle.min.js",
"es2015": "../../fesm2015/zone-testing-bundle.min.js",
"module": "../../fesm2015/zone-testing-bundle.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-testing-bundle",
"main": "../../bundles/zone-testing-bundle.umd.js",
"fesm2015": "../../fesm2015/zone-testing-bundle.js",
"es2015": "../../fesm2015/zone-testing-bundle.js",
"module": "../../fesm2015/zone-testing-bundle.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-testing-node-bundle.min",
"main": "../../bundles/zone-testing-node-bundle.umd.min.js",
"fesm2015": "../../fesm2015/zone-testing-node-bundle.min.js",
"es2015": "../../fesm2015/zone-testing-node-bundle.min.js",
"module": "../../fesm2015/zone-testing-node-bundle.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-testing-node-bundle",
"main": "../../bundles/zone-testing-node-bundle.umd.js",
"fesm2015": "../../fesm2015/zone-testing-node-bundle.js",
"es2015": "../../fesm2015/zone-testing-node-bundle.js",
"module": "../../fesm2015/zone-testing-node-bundle.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-testing.min",
"main": "../../bundles/zone-testing.umd.min.js",
"fesm2015": "../../fesm2015/zone-testing.min.js",
"es2015": "../../fesm2015/zone-testing.min.js",
"module": "../../fesm2015/zone-testing.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone-testing",
"main": "../../bundles/zone-testing.umd.js",
"fesm2015": "../../fesm2015/zone-testing.js",
"es2015": "../../fesm2015/zone-testing.js",
"module": "../../fesm2015/zone-testing.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone.min",
"main": "../../bundles/zone.umd.min.js",
"fesm2015": "../../fesm2015/zone.min.js",
"es2015": "../../fesm2015/zone.min.js",
"module": "../../fesm2015/zone.min.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone",
"main": "../../bundles/zone.umd.js",
"fesm2015": "../../fesm2015/zone.js",
"es2015": "../../fesm2015/zone.js",
"module": "../../fesm2015/zone.js"
}

View File

@ -1,7 +0,0 @@
{
"name": "zone.js/zone_externs",
"main": "../../zone_externs.js",
"fesm2015": "../../zone_externs.js",
"es2015": "../../zone_externs.js",
"module": "../../zone_externs.js"
}

View File

@ -182,7 +182,7 @@ describe('Zone.js npm_package', () => {
}); });
}); });
describe('dist file list', () => { describe('bundles file list', () => {
it('should contain all files', () => { it('should contain all files', () => {
const expected = [ const expected = [
'async-test.js', 'async-test.js',
@ -277,114 +277,86 @@ describe('Zone.js npm_package', () => {
describe('backward compatible check', () => { describe('backward compatible check', () => {
it('should contain all original folders in /dist', () => { it('should contain all original folders in /dist', () => {
const list = shx.ls('./dist').stdout.split('\n').sort().slice(1);
const expected = [ const expected = [
'async-test', 'async-test.js',
'async-test.min', 'async-test.min.js',
'fake-async-test', 'fake-async-test.js',
'fake-async-test.min', 'fake-async-test.min.js',
'jasmine-patch', 'jasmine-patch.js',
'jasmine-patch.min', 'jasmine-patch.min.js',
'long-stack-trace-zone', 'long-stack-trace-zone.js',
'long-stack-trace-zone.min', 'long-stack-trace-zone.min.js',
'mocha-patch', 'mocha-patch.js',
'mocha-patch.min', 'mocha-patch.min.js',
'proxy', 'proxy.js',
'proxy.min', 'proxy.min.js',
'sync-test', 'sync-test.js',
'sync-test.min', 'sync-test.min.js',
'task-tracking', 'task-tracking.js',
'task-tracking.min', 'task-tracking.min.js',
'webapis-media-query', 'webapis-media-query.js',
'webapis-media-query.min', 'webapis-media-query.min.js',
'webapis-notification', 'webapis-notification.js',
'webapis-notification.min', 'webapis-notification.min.js',
'webapis-rtc-peer-connection', 'webapis-rtc-peer-connection.js',
'webapis-rtc-peer-connection.min', 'webapis-rtc-peer-connection.min.js',
'webapis-shadydom', 'webapis-shadydom.js',
'webapis-shadydom.min', 'webapis-shadydom.min.js',
'wtf', 'wtf.js',
'wtf.min', 'wtf.min.js',
'zone-bluebird', 'zone_externs.js',
'zone-bluebird.min', 'zone-bluebird.js',
'zone-error', 'zone-bluebird.min.js',
'zone-error.min', 'zone-error.js',
'zone-legacy', 'zone-error.min.js',
'zone-legacy.min', 'zone-evergreen.js',
'zone-mix', 'zone-evergreen.min.js',
'zone-mix.min', 'zone-evergreen-testing-bundle.js',
'zone-node', 'zone-evergreen-testing-bundle.min.js',
'zone-node.min', 'zone-legacy.js',
'zone-patch-canvas', 'zone-legacy.min.js',
'zone-patch-canvas.min', 'zone-mix.js',
'zone-patch-cordova', 'zone-mix.min.js',
'zone-patch-cordova.min', 'zone-node.js',
'zone-patch-electron', 'zone-node.min.js',
'zone-patch-electron.min', 'zone-patch-canvas.js',
'zone-patch-fetch', 'zone-patch-canvas.min.js',
'zone-patch-fetch.min', 'zone-patch-cordova.js',
'zone-patch-jsonp', 'zone-patch-cordova.min.js',
'zone-patch-jsonp.min', 'zone-patch-electron.js',
'zone-patch-message-port', 'zone-patch-electron.min.js',
'zone-patch-message-port.min', 'zone-patch-fetch.js',
'zone-patch-promise-test', 'zone-patch-fetch.min.js',
'zone-patch-promise-test.min', 'zone-patch-jsonp.js',
'zone-patch-resize-observer', 'zone-patch-jsonp.min.js',
'zone-patch-resize-observer.min', 'zone-patch-message-port.js',
'zone-patch-rxjs-fake-async', 'zone-patch-message-port.min.js',
'zone-patch-rxjs-fake-async.min', 'zone-patch-promise-test.js',
'zone-patch-rxjs', 'zone-patch-promise-test.min.js',
'zone-patch-rxjs.min', 'zone-patch-resize-observer.js',
'zone-patch-socket-io', 'zone-patch-resize-observer.min.js',
'zone-patch-socket-io.min', 'zone-patch-rxjs-fake-async.js',
'zone-patch-user-media', 'zone-patch-rxjs-fake-async.min.js',
'zone-patch-user-media.min', 'zone-patch-rxjs.js',
'zone-testing-bundle', 'zone-patch-rxjs.min.js',
'zone-testing-bundle.min', 'zone-patch-socket-io.js',
'zone-testing-node-bundle', 'zone-patch-socket-io.min.js',
'zone-testing-node-bundle.min', 'zone-patch-user-media.js',
'zone-testing', 'zone-patch-user-media.min.js',
'zone-testing.min', 'zone-testing-bundle.js',
'zone', 'zone-testing-bundle.min.js',
'zone.min', 'zone-testing-node-bundle.js',
'zone_externs', 'zone-testing-node-bundle.min.js',
'zone-evergreen', 'zone-testing.js',
'zone-evergreen.min', 'zone-testing.min.js',
'zone-evergreen-testing-bundle', 'zone.js',
'zone-evergreen-testing-bundle.min', 'zone.js.d.ts',
'zone.api.extensions.ts',
'zone.configurations.api.ts',
'zone.min.js',
].sort(); ].sort();
checkInSubFolder('./dist', () => { expect(list).toEqual(expected);
const list = shx.ls('./').stdout.split('\n').sort().slice(1);
expect(list.length).toBe(expected.length);
for (let i = 0; i < list.length; i++) {
expect(list[i]).toEqual(expected[i]);
const packageJson = shx.cat(`${list[i]}/package.json`);
if (list[i].indexOf('_externs') !== -1) {
expect(packageJson).toContain(`"name": "zone.js/${list[i]}"`);
expect(packageJson).toContain(`"main": "../../${list[i]}.js"`);
expect(packageJson).toContain(`"fesm2015": "../../${list[i]}.js"`);
expect(packageJson).toContain(`"es2015": "../../${list[i]}.js"`);
expect(packageJson).toContain(`"module": "../../${list[i]}.js"`);
continue;
}
if (list[i].indexOf('evergreen') === -1) {
const umdMinName = list[i].indexOf('.min') === -1 ?
`${list[i]}.umd` :
`${list[i].substring(0, list[i].indexOf('.min'))}.umd.min`;
expect(packageJson).toContain(`"name": "zone.js/${list[i]}"`);
expect(packageJson).toContain(`"main": "../../bundles/${umdMinName}.js"`);
expect(packageJson).toContain(`"fesm2015": "../../fesm2015/${list[i]}.js"`);
expect(packageJson).toContain(`"es2015": "../../fesm2015/${list[i]}.js"`);
expect(packageJson).toContain(`"module": "../../fesm2015/${list[i]}.js"`);
} else {
const removeEvergreen = list[i].replace('-evergreen', '');
expect(packageJson).toContain(`"name": "zone.js/${list[i]}"`);
expect(packageJson).toContain(`"main": "../../fesm2015/${removeEvergreen}.js"`);
expect(packageJson).toContain(`"fesm2015": "../../fesm2015/${removeEvergreen}.js"`);
expect(packageJson).toContain(`"es2015": "../../fesm2015/${removeEvergreen}.js"`);
expect(packageJson).toContain(`"module": "../../fesm2015/${removeEvergreen}.js"`);
}
}
});
}); });
}); });
}); });