angularjs-rails 1.5.0 → 1.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/angularjs-rails/version.rb +2 -2
- data/vendor/assets/javascripts/angular-animate.js +82 -56
- data/vendor/assets/javascripts/angular-aria.js +12 -5
- data/vendor/assets/javascripts/angular-cookies.js +2 -2
- data/vendor/assets/javascripts/angular-loader.js +5 -5
- data/vendor/assets/javascripts/angular-message-format.js +2 -2
- data/vendor/assets/javascripts/angular-messages.js +63 -28
- data/vendor/assets/javascripts/angular-mocks.js +280 -116
- data/vendor/assets/javascripts/angular-parse-ext.js +1271 -0
- data/vendor/assets/javascripts/angular-resource.js +3 -3
- data/vendor/assets/javascripts/angular-route.js +16 -7
- data/vendor/assets/javascripts/angular-sanitize.js +4 -4
- data/vendor/assets/javascripts/angular-scenario.js +882 -442
- data/vendor/assets/javascripts/angular-touch.js +2 -2
- data/vendor/assets/javascripts/angular.js +871 -431
- data/vendor/assets/javascripts/unstable/angular2-polyfills.js +1046 -1832
- data/vendor/assets/javascripts/unstable/angular2.js +22044 -18291
- metadata +7 -6
@@ -70,1357 +70,706 @@ THE SOFTWARE.
|
|
70
70
|
/* 0 */
|
71
71
|
/***/ function(module, exports, __webpack_require__) {
|
72
72
|
|
73
|
-
/* WEBPACK VAR INJECTION */(function(global) {
|
74
|
-
|
75
|
-
var
|
76
|
-
var
|
77
|
-
var
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
// see https://github.com/angular/zone.js/issues/97
|
98
|
-
// It is required to initialize hasNativePromise before requiring es6-promise otherwise es6-promise would
|
99
|
-
// overwrite the native Promise implementation on v8 and the check would always return false.
|
100
|
-
// see https://github.com/jakearchibald/es6-promise/issues/140
|
101
|
-
var hasNativePromise = typeof Promise !== "undefined" &&
|
102
|
-
Promise.toString().indexOf("[native code]") !== -1;
|
103
|
-
var isFirefox = global.navigator &&
|
104
|
-
global.navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
|
105
|
-
var resolvedPromise;
|
106
|
-
// TODO(vicb): remove '!isFirefox' when the bug gets fixed:
|
107
|
-
// https://bugzilla.mozilla.org/show_bug.cgi?id=1162013
|
108
|
-
if (hasNativePromise && !isFirefox) {
|
109
|
-
// When available use a native Promise to schedule microtasks.
|
110
|
-
// When not available, es6-promise fallback will be used
|
111
|
-
resolvedPromise = Promise.resolve();
|
112
|
-
}
|
113
|
-
var es6Promise = __webpack_require__(2).Promise;
|
114
|
-
if (resolvedPromise) {
|
115
|
-
es6Promise._setScheduler(function (fn) {
|
116
|
-
resolvedPromise.then(fn);
|
73
|
+
/* WEBPACK VAR INJECTION */(function(global) {"use strict";
|
74
|
+
__webpack_require__(1);
|
75
|
+
var event_target_1 = __webpack_require__(2);
|
76
|
+
var define_property_1 = __webpack_require__(4);
|
77
|
+
var register_element_1 = __webpack_require__(5);
|
78
|
+
var property_descriptor_1 = __webpack_require__(6);
|
79
|
+
var timers_1 = __webpack_require__(8);
|
80
|
+
var utils_1 = __webpack_require__(3);
|
81
|
+
var set = 'set';
|
82
|
+
var clear = 'clear';
|
83
|
+
var blockingMethods = ['alert', 'prompt', 'confirm'];
|
84
|
+
var _global = typeof window == 'undefined' ? global : window;
|
85
|
+
timers_1.patchTimer(_global, set, clear, 'Timeout');
|
86
|
+
timers_1.patchTimer(_global, set, clear, 'Interval');
|
87
|
+
timers_1.patchTimer(_global, set, clear, 'Immediate');
|
88
|
+
timers_1.patchTimer(_global, 'request', 'cancelMacroTask', 'AnimationFrame');
|
89
|
+
timers_1.patchTimer(_global, 'mozRequest', 'mozCancel', 'AnimationFrame');
|
90
|
+
timers_1.patchTimer(_global, 'webkitRequest', 'webkitCancel', 'AnimationFrame');
|
91
|
+
for (var i = 0; i < blockingMethods.length; i++) {
|
92
|
+
var name = blockingMethods[i];
|
93
|
+
utils_1.patchMethod(_global, name, function (delegate, symbol, name) {
|
94
|
+
return function (s, args) {
|
95
|
+
return Zone.current.run(delegate, _global, args, name);
|
96
|
+
};
|
117
97
|
});
|
118
98
|
}
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
//
|
127
|
-
|
128
|
-
|
129
|
-
|
99
|
+
event_target_1.eventTargetPatch(_global);
|
100
|
+
property_descriptor_1.propertyDescriptorPatch(_global);
|
101
|
+
utils_1.patchClass('MutationObserver');
|
102
|
+
utils_1.patchClass('WebKitMutationObserver');
|
103
|
+
utils_1.patchClass('FileReader');
|
104
|
+
define_property_1.propertyPatch();
|
105
|
+
register_element_1.registerElementPatch(_global);
|
106
|
+
// Treat XMLHTTPRequest as a macrotask.
|
107
|
+
patchXHR(_global);
|
108
|
+
var XHR_TASK = utils_1.zoneSymbol('xhrTask');
|
109
|
+
function patchXHR(window) {
|
110
|
+
function findPendingTask(target) {
|
111
|
+
var pendingTask = target[XHR_TASK];
|
112
|
+
return pendingTask;
|
113
|
+
}
|
114
|
+
function scheduleTask(task) {
|
115
|
+
var data = task.data;
|
116
|
+
data.target.addEventListener('readystatechange', function () {
|
117
|
+
if (data.target.readyState === XMLHttpRequest.DONE) {
|
118
|
+
if (!data.aborted) {
|
119
|
+
task.invoke();
|
120
|
+
}
|
121
|
+
}
|
122
|
+
});
|
123
|
+
var storedTask = data.target[XHR_TASK];
|
124
|
+
if (!storedTask) {
|
125
|
+
data.target[XHR_TASK] = task;
|
126
|
+
}
|
127
|
+
setNative.apply(data.target, data.args);
|
128
|
+
return task;
|
129
|
+
}
|
130
|
+
function placeholderCallback() {
|
131
|
+
}
|
132
|
+
function clearTask(task) {
|
133
|
+
var data = task.data;
|
134
|
+
// Note - ideally, we would call data.target.removeEventListener here, but it's too late
|
135
|
+
// to prevent it from firing. So instead, we store info for the event listener.
|
136
|
+
data.aborted = true;
|
137
|
+
return clearNative.apply(data.target, data.args);
|
138
|
+
}
|
139
|
+
var setNative = utils_1.patchMethod(window.XMLHttpRequest.prototype, 'send', function () { return function (self, args) {
|
140
|
+
var zone = Zone.current;
|
141
|
+
var options = {
|
142
|
+
target: self,
|
143
|
+
isPeriodic: false,
|
144
|
+
delay: null,
|
145
|
+
args: args,
|
146
|
+
aborted: false
|
147
|
+
};
|
148
|
+
return zone.scheduleMacroTask('XMLHttpRequest.send', placeholderCallback, options, scheduleTask, clearTask);
|
149
|
+
}; });
|
150
|
+
var clearNative = utils_1.patchMethod(window.XMLHttpRequest.prototype, 'abort', function (delegate) { return function (self, args) {
|
151
|
+
var task = findPendingTask(self);
|
152
|
+
if (task && typeof task.type == 'string') {
|
153
|
+
// If the XHR has already completed, do nothing.
|
154
|
+
if (task.cancelFn == null) {
|
155
|
+
return;
|
156
|
+
}
|
157
|
+
task.zone.cancelTask(task);
|
158
|
+
}
|
159
|
+
// Otherwise, we are trying to abort an XHR which has not yet been sent, so there is no task to cancel. Do nothing.
|
160
|
+
}; });
|
130
161
|
}
|
131
|
-
|
132
|
-
|
133
|
-
|
162
|
+
/// GEO_LOCATION
|
163
|
+
if (_global['navigator'] && _global['navigator'].geolocation) {
|
164
|
+
utils_1.patchPrototype(_global['navigator'].geolocation, [
|
165
|
+
'getCurrentPosition',
|
166
|
+
'watchPosition'
|
167
|
+
]);
|
134
168
|
}
|
135
|
-
|
136
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm90YXNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL21pY3JvdGFzay50cyJdLCJuYW1lcyI6WyJzY2hlZHVsZU1pY3JvdGFzayIsImFkZE1pY3JvdGFza1N1cHBvcnQiXSwibWFwcGluZ3MiOiJBQUFBLG9GQUFvRjtBQUNwRixtREFBbUQ7QUFFbkQseUdBQXlHO0FBQ3pHLDZGQUE2RjtBQUM3Riw4REFBOEQ7QUFDOUQsSUFBSSxnQkFBZ0IsR0FBRyxPQUFPLE9BQU8sS0FBSyxXQUFXO0lBQ2pELE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFFdkQsSUFBSSxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVM7SUFDNUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBRXJFLElBQUksZUFBZSxDQUFDO0FBRXBCLDJEQUEyRDtBQUMzRCx1REFBdUQ7QUFDdkQsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ25DLDhEQUE4RDtJQUM5RCx3REFBd0Q7SUFDeEQsZUFBZSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztBQUN0QyxDQUFDO0FBRUQsSUFBSSxVQUFVLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQUVoRCxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLFVBQVUsQ0FBQyxhQUFhLENBQUMsVUFBUyxFQUFFO1FBQ2xDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0IsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQscUZBQXFGO0FBQ3JGLG1DQUFtQztBQUNuQyxVQUFVLENBQUMsUUFBUSxDQUFDLFVBQVMsRUFBRSxFQUFFLEdBQUc7SUFDbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUM1QixFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsOEZBQThGO0FBQzlGLDBCQUEwQjtBQUMxQiwyQkFBMkIsRUFBRTtJQUMzQkEsVUFBVUEsQ0FBQ0EsS0FBS0EsQ0FBQ0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7QUFDbENBLENBQUNBO0FBRUQsNkJBQW9DLFNBQVM7SUFDM0NDLFNBQVNBLENBQUNBLFNBQVNBLENBQUNBLGlCQUFpQkEsR0FBR0EsaUJBQWlCQSxDQUFDQTtJQUMxREEsTUFBTUEsQ0FBQ0EsU0FBU0EsQ0FBQ0E7QUFDbkJBLENBQUNBO0FBSGUsMkJBQW1CLHNCQUdsQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETyh2aWNiKTogQ3JlYXRlIGEgYmVuY2htYXJrIGZvciB0aGUgZGlmZmVyZW50IG1ldGhvZHMgJiB0aGUgdXNhZ2Ugb2YgdGhlIHF1ZXVlXG4vLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvem9uZS5qcy9pc3N1ZXMvOTdcblxuLy8gSXQgaXMgcmVxdWlyZWQgdG8gaW5pdGlhbGl6ZSBoYXNOYXRpdmVQcm9taXNlIGJlZm9yZSByZXF1aXJpbmcgZXM2LXByb21pc2Ugb3RoZXJ3aXNlIGVzNi1wcm9taXNlIHdvdWxkXG4vLyBvdmVyd3JpdGUgdGhlIG5hdGl2ZSBQcm9taXNlIGltcGxlbWVudGF0aW9uIG9uIHY4IGFuZCB0aGUgY2hlY2sgd291bGQgYWx3YXlzIHJldHVybiBmYWxzZS5cbi8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vamFrZWFyY2hpYmFsZC9lczYtcHJvbWlzZS9pc3N1ZXMvMTQwXG52YXIgaGFzTmF0aXZlUHJvbWlzZSA9IHR5cGVvZiBQcm9taXNlICE9PSBcInVuZGVmaW5lZFwiICYmXG4gICAgUHJvbWlzZS50b1N0cmluZygpLmluZGV4T2YoXCJbbmF0aXZlIGNvZGVdXCIpICE9PSAtMTtcblxudmFyIGlzRmlyZWZveCA9IGdsb2JhbC5uYXZpZ2F0b3IgJiZcbiAgICBnbG9iYWwubmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJ2ZpcmVmb3gnKSA+IC0xO1xuXG52YXIgcmVzb2x2ZWRQcm9taXNlO1xuXG4vLyBUT0RPKHZpY2IpOiByZW1vdmUgJyFpc0ZpcmVmb3gnIHdoZW4gdGhlIGJ1ZyBnZXRzIGZpeGVkOlxuLy8gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE2MjAxM1xuaWYgKGhhc05hdGl2ZVByb21pc2UgJiYgIWlzRmlyZWZveCkge1xuICAvLyBXaGVuIGF2YWlsYWJsZSB1c2UgYSBuYXRpdmUgUHJvbWlzZSB0byBzY2hlZHVsZSBtaWNyb3Rhc2tzLlxuICAvLyBXaGVuIG5vdCBhdmFpbGFibGUsIGVzNi1wcm9taXNlIGZhbGxiYWNrIHdpbGwgYmUgdXNlZFxuICByZXNvbHZlZFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcbn1cblxudmFyIGVzNlByb21pc2UgPSByZXF1aXJlKCdlczYtcHJvbWlzZScpLlByb21pc2U7XG5cbmlmIChyZXNvbHZlZFByb21pc2UpIHtcbiAgZXM2UHJvbWlzZS5fc2V0U2NoZWR1bGVyKGZ1bmN0aW9uKGZuKSB7XG4gICAgcmVzb2x2ZWRQcm9taXNlLnRoZW4oZm4pO1xuICB9KTtcbn1cblxuLy8gZXM2LXByb21pc2UgYXNhcCBzaG91bGQgc2NoZWR1bGUgbWljcm90YXNrcyB2aWEgem9uZS5zY2hlZHVsZU1pY3JvdGFzayBzbyB0aGF0IGFueVxuLy8gdXNlciBkZWZpbmVkIGhvb2tzIGFyZSB0cmlnZ2VyZWRcbmVzNlByb21pc2UuX3NldEFzYXAoZnVuY3Rpb24oZm4sIGFyZykge1xuICBnbG9iYWwuem9uZS5zY2hlZHVsZU1pY3JvdGFzayhmdW5jdGlvbigpIHtcbiAgICBmbihhcmcpO1xuICB9KTtcbn0pO1xuXG4vLyBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBvZiBzY2hlZHVsZU1pY3JvdGFzayB1c2UgdGhlIG9yaWdpbmFsIGVzNi1wcm9taXNlIGltcGxlbWVudGF0aW9uXG4vLyB0byBzY2hlZHVsZSBhIG1pY3JvdGFza1xuZnVuY3Rpb24gc2NoZWR1bGVNaWNyb3Rhc2soZm4pIHtcbiAgZXM2UHJvbWlzZS5fYXNhcCh0aGlzLmJpbmQoZm4pKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZE1pY3JvdGFza1N1cHBvcnQoem9uZUNsYXNzKSB7XG4gIHpvbmVDbGFzcy5wcm90b3R5cGUuc2NoZWR1bGVNaWNyb3Rhc2sgPSBzY2hlZHVsZU1pY3JvdGFzaztcbiAgcmV0dXJuIHpvbmVDbGFzcztcbn1cbiJdfQ==
|
169
|
+
|
137
170
|
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
138
171
|
|
139
172
|
/***/ },
|
140
|
-
/*
|
141
|
-
/***/ function(module, exports
|
142
|
-
|
143
|
-
var require;var __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(global, module) {/*!
|
144
|
-
* @overview es6-promise - a tiny implementation of Promises/A+.
|
145
|
-
* @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
|
146
|
-
* @license Licensed under MIT license
|
147
|
-
* See https://raw.githubusercontent.com/jakearchibald/es6-promise/master/LICENSE
|
148
|
-
* @version 3.0.2
|
149
|
-
*/
|
150
|
-
|
151
|
-
(function() {
|
152
|
-
"use strict";
|
153
|
-
function lib$es6$promise$utils$$objectOrFunction(x) {
|
154
|
-
return typeof x === 'function' || (typeof x === 'object' && x !== null);
|
155
|
-
}
|
156
|
-
|
157
|
-
function lib$es6$promise$utils$$isFunction(x) {
|
158
|
-
return typeof x === 'function';
|
159
|
-
}
|
160
|
-
|
161
|
-
function lib$es6$promise$utils$$isMaybeThenable(x) {
|
162
|
-
return typeof x === 'object' && x !== null;
|
163
|
-
}
|
164
|
-
|
165
|
-
var lib$es6$promise$utils$$_isArray;
|
166
|
-
if (!Array.isArray) {
|
167
|
-
lib$es6$promise$utils$$_isArray = function (x) {
|
168
|
-
return Object.prototype.toString.call(x) === '[object Array]';
|
169
|
-
};
|
170
|
-
} else {
|
171
|
-
lib$es6$promise$utils$$_isArray = Array.isArray;
|
172
|
-
}
|
173
|
-
|
174
|
-
var lib$es6$promise$utils$$isArray = lib$es6$promise$utils$$_isArray;
|
175
|
-
var lib$es6$promise$asap$$len = 0;
|
176
|
-
var lib$es6$promise$asap$$toString = {}.toString;
|
177
|
-
var lib$es6$promise$asap$$vertxNext;
|
178
|
-
var lib$es6$promise$asap$$customSchedulerFn;
|
179
|
-
|
180
|
-
var lib$es6$promise$asap$$asap = function asap(callback, arg) {
|
181
|
-
lib$es6$promise$asap$$queue[lib$es6$promise$asap$$len] = callback;
|
182
|
-
lib$es6$promise$asap$$queue[lib$es6$promise$asap$$len + 1] = arg;
|
183
|
-
lib$es6$promise$asap$$len += 2;
|
184
|
-
if (lib$es6$promise$asap$$len === 2) {
|
185
|
-
// If len is 2, that means that we need to schedule an async flush.
|
186
|
-
// If additional callbacks are queued before the queue is flushed, they
|
187
|
-
// will be processed by this flush that we are scheduling.
|
188
|
-
if (lib$es6$promise$asap$$customSchedulerFn) {
|
189
|
-
lib$es6$promise$asap$$customSchedulerFn(lib$es6$promise$asap$$flush);
|
190
|
-
} else {
|
191
|
-
lib$es6$promise$asap$$scheduleFlush();
|
192
|
-
}
|
193
|
-
}
|
194
|
-
}
|
195
|
-
|
196
|
-
function lib$es6$promise$asap$$setScheduler(scheduleFn) {
|
197
|
-
lib$es6$promise$asap$$customSchedulerFn = scheduleFn;
|
198
|
-
}
|
199
|
-
|
200
|
-
function lib$es6$promise$asap$$setAsap(asapFn) {
|
201
|
-
lib$es6$promise$asap$$asap = asapFn;
|
202
|
-
}
|
203
|
-
|
204
|
-
var lib$es6$promise$asap$$browserWindow = (typeof window !== 'undefined') ? window : undefined;
|
205
|
-
var lib$es6$promise$asap$$browserGlobal = lib$es6$promise$asap$$browserWindow || {};
|
206
|
-
var lib$es6$promise$asap$$BrowserMutationObserver = lib$es6$promise$asap$$browserGlobal.MutationObserver || lib$es6$promise$asap$$browserGlobal.WebKitMutationObserver;
|
207
|
-
var lib$es6$promise$asap$$isNode = typeof process !== 'undefined' && {}.toString.call(process) === '[object process]';
|
208
|
-
|
209
|
-
// test for web worker but not in IE10
|
210
|
-
var lib$es6$promise$asap$$isWorker = typeof Uint8ClampedArray !== 'undefined' &&
|
211
|
-
typeof importScripts !== 'undefined' &&
|
212
|
-
typeof MessageChannel !== 'undefined';
|
213
|
-
|
214
|
-
// node
|
215
|
-
function lib$es6$promise$asap$$useNextTick() {
|
216
|
-
// node version 0.10.x displays a deprecation warning when nextTick is used recursively
|
217
|
-
// see https://github.com/cujojs/when/issues/410 for details
|
218
|
-
return function() {
|
219
|
-
process.nextTick(lib$es6$promise$asap$$flush);
|
220
|
-
};
|
221
|
-
}
|
222
|
-
|
223
|
-
// vertx
|
224
|
-
function lib$es6$promise$asap$$useVertxTimer() {
|
225
|
-
return function() {
|
226
|
-
lib$es6$promise$asap$$vertxNext(lib$es6$promise$asap$$flush);
|
227
|
-
};
|
228
|
-
}
|
229
|
-
|
230
|
-
function lib$es6$promise$asap$$useMutationObserver() {
|
231
|
-
var iterations = 0;
|
232
|
-
var observer = new lib$es6$promise$asap$$BrowserMutationObserver(lib$es6$promise$asap$$flush);
|
233
|
-
var node = document.createTextNode('');
|
234
|
-
observer.observe(node, { characterData: true });
|
235
|
-
|
236
|
-
return function() {
|
237
|
-
node.data = (iterations = ++iterations % 2);
|
238
|
-
};
|
239
|
-
}
|
240
|
-
|
241
|
-
// web worker
|
242
|
-
function lib$es6$promise$asap$$useMessageChannel() {
|
243
|
-
var channel = new MessageChannel();
|
244
|
-
channel.port1.onmessage = lib$es6$promise$asap$$flush;
|
245
|
-
return function () {
|
246
|
-
channel.port2.postMessage(0);
|
247
|
-
};
|
248
|
-
}
|
249
|
-
|
250
|
-
function lib$es6$promise$asap$$useSetTimeout() {
|
251
|
-
return function() {
|
252
|
-
setTimeout(lib$es6$promise$asap$$flush, 1);
|
253
|
-
};
|
254
|
-
}
|
255
|
-
|
256
|
-
var lib$es6$promise$asap$$queue = new Array(1000);
|
257
|
-
function lib$es6$promise$asap$$flush() {
|
258
|
-
for (var i = 0; i < lib$es6$promise$asap$$len; i+=2) {
|
259
|
-
var callback = lib$es6$promise$asap$$queue[i];
|
260
|
-
var arg = lib$es6$promise$asap$$queue[i+1];
|
261
|
-
|
262
|
-
callback(arg);
|
263
|
-
|
264
|
-
lib$es6$promise$asap$$queue[i] = undefined;
|
265
|
-
lib$es6$promise$asap$$queue[i+1] = undefined;
|
266
|
-
}
|
267
|
-
|
268
|
-
lib$es6$promise$asap$$len = 0;
|
269
|
-
}
|
270
|
-
|
271
|
-
function lib$es6$promise$asap$$attemptVertx() {
|
272
|
-
try {
|
273
|
-
var r = require;
|
274
|
-
var vertx = __webpack_require__(4);
|
275
|
-
lib$es6$promise$asap$$vertxNext = vertx.runOnLoop || vertx.runOnContext;
|
276
|
-
return lib$es6$promise$asap$$useVertxTimer();
|
277
|
-
} catch(e) {
|
278
|
-
return lib$es6$promise$asap$$useSetTimeout();
|
279
|
-
}
|
280
|
-
}
|
281
|
-
|
282
|
-
var lib$es6$promise$asap$$scheduleFlush;
|
283
|
-
// Decide what async method to use to triggering processing of queued callbacks:
|
284
|
-
if (lib$es6$promise$asap$$isNode) {
|
285
|
-
lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useNextTick();
|
286
|
-
} else if (lib$es6$promise$asap$$BrowserMutationObserver) {
|
287
|
-
lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useMutationObserver();
|
288
|
-
} else if (lib$es6$promise$asap$$isWorker) {
|
289
|
-
lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useMessageChannel();
|
290
|
-
} else if (lib$es6$promise$asap$$browserWindow === undefined && "function" === 'function') {
|
291
|
-
lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$attemptVertx();
|
292
|
-
} else {
|
293
|
-
lib$es6$promise$asap$$scheduleFlush = lib$es6$promise$asap$$useSetTimeout();
|
294
|
-
}
|
295
|
-
|
296
|
-
function lib$es6$promise$$internal$$noop() {}
|
297
|
-
|
298
|
-
var lib$es6$promise$$internal$$PENDING = void 0;
|
299
|
-
var lib$es6$promise$$internal$$FULFILLED = 1;
|
300
|
-
var lib$es6$promise$$internal$$REJECTED = 2;
|
301
|
-
|
302
|
-
var lib$es6$promise$$internal$$GET_THEN_ERROR = new lib$es6$promise$$internal$$ErrorObject();
|
303
|
-
|
304
|
-
function lib$es6$promise$$internal$$selfFulfillment() {
|
305
|
-
return new TypeError("You cannot resolve a promise with itself");
|
306
|
-
}
|
307
|
-
|
308
|
-
function lib$es6$promise$$internal$$cannotReturnOwn() {
|
309
|
-
return new TypeError('A promises callback cannot return that same promise.');
|
310
|
-
}
|
311
|
-
|
312
|
-
function lib$es6$promise$$internal$$getThen(promise) {
|
313
|
-
try {
|
314
|
-
return promise.then;
|
315
|
-
} catch(error) {
|
316
|
-
lib$es6$promise$$internal$$GET_THEN_ERROR.error = error;
|
317
|
-
return lib$es6$promise$$internal$$GET_THEN_ERROR;
|
318
|
-
}
|
319
|
-
}
|
320
|
-
|
321
|
-
function lib$es6$promise$$internal$$tryThen(then, value, fulfillmentHandler, rejectionHandler) {
|
322
|
-
try {
|
323
|
-
then.call(value, fulfillmentHandler, rejectionHandler);
|
324
|
-
} catch(e) {
|
325
|
-
return e;
|
326
|
-
}
|
327
|
-
}
|
173
|
+
/* 1 */
|
174
|
+
/***/ function(module, exports) {
|
328
175
|
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
}
|
340
|
-
}, function(reason) {
|
341
|
-
if (sealed) { return; }
|
342
|
-
sealed = true;
|
343
|
-
|
344
|
-
lib$es6$promise$$internal$$reject(promise, reason);
|
345
|
-
}, 'Settle: ' + (promise._label || ' unknown promise'));
|
346
|
-
|
347
|
-
if (!sealed && error) {
|
348
|
-
sealed = true;
|
349
|
-
lib$es6$promise$$internal$$reject(promise, error);
|
176
|
+
/* WEBPACK VAR INJECTION */(function(global) {;
|
177
|
+
;
|
178
|
+
var Zone = (function (global) {
|
179
|
+
var Zone = (function () {
|
180
|
+
function Zone(parent, zoneSpec) {
|
181
|
+
this._properties = null;
|
182
|
+
this._parent = parent;
|
183
|
+
this._name = zoneSpec ? zoneSpec.name || 'unnamed' : '<root>';
|
184
|
+
this._properties = zoneSpec && zoneSpec.properties || {};
|
185
|
+
this._zoneDelegate = new ZoneDelegate(this, this._parent && this._parent._zoneDelegate, zoneSpec);
|
350
186
|
}
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
if (thenable._state === lib$es6$promise$$internal$$FULFILLED) {
|
356
|
-
lib$es6$promise$$internal$$fulfill(promise, thenable._result);
|
357
|
-
} else if (thenable._state === lib$es6$promise$$internal$$REJECTED) {
|
358
|
-
lib$es6$promise$$internal$$reject(promise, thenable._result);
|
359
|
-
} else {
|
360
|
-
lib$es6$promise$$internal$$subscribe(thenable, undefined, function(value) {
|
361
|
-
lib$es6$promise$$internal$$resolve(promise, value);
|
362
|
-
}, function(reason) {
|
363
|
-
lib$es6$promise$$internal$$reject(promise, reason);
|
187
|
+
Object.defineProperty(Zone, "current", {
|
188
|
+
get: function () { return _currentZone; },
|
189
|
+
enumerable: true,
|
190
|
+
configurable: true
|
364
191
|
});
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
lib$es6$promise$$internal$$handleOwnThenable(promise, maybeThenable);
|
371
|
-
} else {
|
372
|
-
var then = lib$es6$promise$$internal$$getThen(maybeThenable);
|
373
|
-
|
374
|
-
if (then === lib$es6$promise$$internal$$GET_THEN_ERROR) {
|
375
|
-
lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$GET_THEN_ERROR.error);
|
376
|
-
} else if (then === undefined) {
|
377
|
-
lib$es6$promise$$internal$$fulfill(promise, maybeThenable);
|
378
|
-
} else if (lib$es6$promise$utils$$isFunction(then)) {
|
379
|
-
lib$es6$promise$$internal$$handleForeignThenable(promise, maybeThenable, then);
|
380
|
-
} else {
|
381
|
-
lib$es6$promise$$internal$$fulfill(promise, maybeThenable);
|
382
|
-
}
|
383
|
-
}
|
384
|
-
}
|
385
|
-
|
386
|
-
function lib$es6$promise$$internal$$resolve(promise, value) {
|
387
|
-
if (promise === value) {
|
388
|
-
lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$selfFulfillment());
|
389
|
-
} else if (lib$es6$promise$utils$$objectOrFunction(value)) {
|
390
|
-
lib$es6$promise$$internal$$handleMaybeThenable(promise, value);
|
391
|
-
} else {
|
392
|
-
lib$es6$promise$$internal$$fulfill(promise, value);
|
393
|
-
}
|
394
|
-
}
|
395
|
-
|
396
|
-
function lib$es6$promise$$internal$$publishRejection(promise) {
|
397
|
-
if (promise._onerror) {
|
398
|
-
promise._onerror(promise._result);
|
399
|
-
}
|
400
|
-
|
401
|
-
lib$es6$promise$$internal$$publish(promise);
|
402
|
-
}
|
403
|
-
|
404
|
-
function lib$es6$promise$$internal$$fulfill(promise, value) {
|
405
|
-
if (promise._state !== lib$es6$promise$$internal$$PENDING) { return; }
|
406
|
-
|
407
|
-
promise._result = value;
|
408
|
-
promise._state = lib$es6$promise$$internal$$FULFILLED;
|
409
|
-
|
410
|
-
if (promise._subscribers.length !== 0) {
|
411
|
-
lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publish, promise);
|
412
|
-
}
|
413
|
-
}
|
414
|
-
|
415
|
-
function lib$es6$promise$$internal$$reject(promise, reason) {
|
416
|
-
if (promise._state !== lib$es6$promise$$internal$$PENDING) { return; }
|
417
|
-
promise._state = lib$es6$promise$$internal$$REJECTED;
|
418
|
-
promise._result = reason;
|
419
|
-
|
420
|
-
lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publishRejection, promise);
|
421
|
-
}
|
422
|
-
|
423
|
-
function lib$es6$promise$$internal$$subscribe(parent, child, onFulfillment, onRejection) {
|
424
|
-
var subscribers = parent._subscribers;
|
425
|
-
var length = subscribers.length;
|
426
|
-
|
427
|
-
parent._onerror = null;
|
428
|
-
|
429
|
-
subscribers[length] = child;
|
430
|
-
subscribers[length + lib$es6$promise$$internal$$FULFILLED] = onFulfillment;
|
431
|
-
subscribers[length + lib$es6$promise$$internal$$REJECTED] = onRejection;
|
432
|
-
|
433
|
-
if (length === 0 && parent._state) {
|
434
|
-
lib$es6$promise$asap$$asap(lib$es6$promise$$internal$$publish, parent);
|
435
|
-
}
|
436
|
-
}
|
437
|
-
|
438
|
-
function lib$es6$promise$$internal$$publish(promise) {
|
439
|
-
var subscribers = promise._subscribers;
|
440
|
-
var settled = promise._state;
|
441
|
-
|
442
|
-
if (subscribers.length === 0) { return; }
|
443
|
-
|
444
|
-
var child, callback, detail = promise._result;
|
445
|
-
|
446
|
-
for (var i = 0; i < subscribers.length; i += 3) {
|
447
|
-
child = subscribers[i];
|
448
|
-
callback = subscribers[i + settled];
|
449
|
-
|
450
|
-
if (child) {
|
451
|
-
lib$es6$promise$$internal$$invokeCallback(settled, child, callback, detail);
|
452
|
-
} else {
|
453
|
-
callback(detail);
|
454
|
-
}
|
455
|
-
}
|
456
|
-
|
457
|
-
promise._subscribers.length = 0;
|
458
|
-
}
|
459
|
-
|
460
|
-
function lib$es6$promise$$internal$$ErrorObject() {
|
461
|
-
this.error = null;
|
462
|
-
}
|
463
|
-
|
464
|
-
var lib$es6$promise$$internal$$TRY_CATCH_ERROR = new lib$es6$promise$$internal$$ErrorObject();
|
465
|
-
|
466
|
-
function lib$es6$promise$$internal$$tryCatch(callback, detail) {
|
467
|
-
try {
|
468
|
-
return callback(detail);
|
469
|
-
} catch(e) {
|
470
|
-
lib$es6$promise$$internal$$TRY_CATCH_ERROR.error = e;
|
471
|
-
return lib$es6$promise$$internal$$TRY_CATCH_ERROR;
|
472
|
-
}
|
473
|
-
}
|
474
|
-
|
475
|
-
function lib$es6$promise$$internal$$invokeCallback(settled, promise, callback, detail) {
|
476
|
-
var hasCallback = lib$es6$promise$utils$$isFunction(callback),
|
477
|
-
value, error, succeeded, failed;
|
478
|
-
|
479
|
-
if (hasCallback) {
|
480
|
-
value = lib$es6$promise$$internal$$tryCatch(callback, detail);
|
481
|
-
|
482
|
-
if (value === lib$es6$promise$$internal$$TRY_CATCH_ERROR) {
|
483
|
-
failed = true;
|
484
|
-
error = value.error;
|
485
|
-
value = null;
|
486
|
-
} else {
|
487
|
-
succeeded = true;
|
488
|
-
}
|
489
|
-
|
490
|
-
if (promise === value) {
|
491
|
-
lib$es6$promise$$internal$$reject(promise, lib$es6$promise$$internal$$cannotReturnOwn());
|
492
|
-
return;
|
493
|
-
}
|
494
|
-
|
495
|
-
} else {
|
496
|
-
value = detail;
|
497
|
-
succeeded = true;
|
498
|
-
}
|
499
|
-
|
500
|
-
if (promise._state !== lib$es6$promise$$internal$$PENDING) {
|
501
|
-
// noop
|
502
|
-
} else if (hasCallback && succeeded) {
|
503
|
-
lib$es6$promise$$internal$$resolve(promise, value);
|
504
|
-
} else if (failed) {
|
505
|
-
lib$es6$promise$$internal$$reject(promise, error);
|
506
|
-
} else if (settled === lib$es6$promise$$internal$$FULFILLED) {
|
507
|
-
lib$es6$promise$$internal$$fulfill(promise, value);
|
508
|
-
} else if (settled === lib$es6$promise$$internal$$REJECTED) {
|
509
|
-
lib$es6$promise$$internal$$reject(promise, value);
|
510
|
-
}
|
511
|
-
}
|
512
|
-
|
513
|
-
function lib$es6$promise$$internal$$initializePromise(promise, resolver) {
|
514
|
-
try {
|
515
|
-
resolver(function resolvePromise(value){
|
516
|
-
lib$es6$promise$$internal$$resolve(promise, value);
|
517
|
-
}, function rejectPromise(reason) {
|
518
|
-
lib$es6$promise$$internal$$reject(promise, reason);
|
192
|
+
;
|
193
|
+
Object.defineProperty(Zone, "currentTask", {
|
194
|
+
get: function () { return _currentTask; },
|
195
|
+
enumerable: true,
|
196
|
+
configurable: true
|
519
197
|
});
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
}
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
198
|
+
;
|
199
|
+
Object.defineProperty(Zone.prototype, "parent", {
|
200
|
+
get: function () { return this._parent; },
|
201
|
+
enumerable: true,
|
202
|
+
configurable: true
|
203
|
+
});
|
204
|
+
;
|
205
|
+
Object.defineProperty(Zone.prototype, "name", {
|
206
|
+
get: function () { return this._name; },
|
207
|
+
enumerable: true,
|
208
|
+
configurable: true
|
209
|
+
});
|
210
|
+
;
|
211
|
+
Zone.prototype.get = function (key) {
|
212
|
+
var current = this;
|
213
|
+
while (current) {
|
214
|
+
if (current._properties.hasOwnProperty(key)) {
|
215
|
+
return current._properties[key];
|
216
|
+
}
|
217
|
+
current = current._parent;
|
218
|
+
}
|
219
|
+
};
|
220
|
+
Zone.prototype.fork = function (zoneSpec) {
|
221
|
+
if (!zoneSpec)
|
222
|
+
throw new Error('ZoneSpec required!');
|
223
|
+
return this._zoneDelegate.fork(this, zoneSpec);
|
224
|
+
};
|
225
|
+
Zone.prototype.wrap = function (callback, source) {
|
226
|
+
if (typeof callback !== 'function') {
|
227
|
+
throw new Error('Expecting function got: ' + callback);
|
228
|
+
}
|
229
|
+
var _callback = this._zoneDelegate.intercept(this, callback, source);
|
230
|
+
var zone = this;
|
231
|
+
return function () {
|
232
|
+
return zone.runGuarded(_callback, this, arguments, source);
|
233
|
+
};
|
234
|
+
};
|
235
|
+
Zone.prototype.run = function (callback, applyThis, applyArgs, source) {
|
236
|
+
if (applyThis === void 0) { applyThis = null; }
|
237
|
+
if (applyArgs === void 0) { applyArgs = null; }
|
238
|
+
if (source === void 0) { source = null; }
|
239
|
+
var oldZone = _currentZone;
|
240
|
+
_currentZone = this;
|
241
|
+
try {
|
242
|
+
return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);
|
243
|
+
}
|
244
|
+
finally {
|
245
|
+
_currentZone = oldZone;
|
246
|
+
}
|
247
|
+
};
|
248
|
+
Zone.prototype.runGuarded = function (callback, applyThis, applyArgs, source) {
|
249
|
+
if (applyThis === void 0) { applyThis = null; }
|
250
|
+
if (applyArgs === void 0) { applyArgs = null; }
|
251
|
+
if (source === void 0) { source = null; }
|
252
|
+
var oldZone = _currentZone;
|
253
|
+
_currentZone = this;
|
254
|
+
try {
|
255
|
+
try {
|
256
|
+
return this._zoneDelegate.invoke(this, callback, applyThis, applyArgs, source);
|
257
|
+
}
|
258
|
+
catch (error) {
|
259
|
+
if (this._zoneDelegate.handleError(this, error)) {
|
260
|
+
throw error;
|
261
|
+
}
|
262
|
+
}
|
263
|
+
}
|
264
|
+
finally {
|
265
|
+
_currentZone = oldZone;
|
266
|
+
}
|
267
|
+
};
|
268
|
+
Zone.prototype.runTask = function (task, applyThis, applyArgs) {
|
269
|
+
task.runCount++;
|
270
|
+
if (task.zone != this)
|
271
|
+
throw new Error('A task can only be run in the zone which created it! (Creation: ' +
|
272
|
+
task.zone.name + '; Execution: ' + this.name + ')');
|
273
|
+
var previousTask = _currentTask;
|
274
|
+
_currentTask = task;
|
275
|
+
var oldZone = _currentZone;
|
276
|
+
_currentZone = this;
|
277
|
+
try {
|
278
|
+
if (task.type == 'macroTask' && task.data && !task.data.isPeriodic) {
|
279
|
+
task.cancelFn = null;
|
280
|
+
}
|
281
|
+
try {
|
282
|
+
return this._zoneDelegate.invokeTask(this, task, applyThis, applyArgs);
|
283
|
+
}
|
284
|
+
catch (error) {
|
285
|
+
if (this._zoneDelegate.handleError(this, error)) {
|
286
|
+
throw error;
|
287
|
+
}
|
288
|
+
}
|
289
|
+
}
|
290
|
+
finally {
|
291
|
+
_currentZone = oldZone;
|
292
|
+
_currentTask = previousTask;
|
293
|
+
}
|
294
|
+
};
|
295
|
+
Zone.prototype.scheduleMicroTask = function (source, callback, data, customSchedule) {
|
296
|
+
return this._zoneDelegate.scheduleTask(this, new ZoneTask('microTask', this, source, callback, data, customSchedule, null));
|
297
|
+
};
|
298
|
+
Zone.prototype.scheduleMacroTask = function (source, callback, data, customSchedule, customCancel) {
|
299
|
+
return this._zoneDelegate.scheduleTask(this, new ZoneTask('macroTask', this, source, callback, data, customSchedule, customCancel));
|
300
|
+
};
|
301
|
+
Zone.prototype.scheduleEventTask = function (source, callback, data, customSchedule, customCancel) {
|
302
|
+
return this._zoneDelegate.scheduleTask(this, new ZoneTask('eventTask', this, source, callback, data, customSchedule, customCancel));
|
303
|
+
};
|
304
|
+
Zone.prototype.cancelTask = function (task) {
|
305
|
+
var value = this._zoneDelegate.cancelTask(this, task);
|
306
|
+
task.runCount = -1;
|
307
|
+
task.cancelFn = null;
|
308
|
+
return value;
|
309
|
+
};
|
310
|
+
Zone.__symbol__ = __symbol__;
|
311
|
+
return Zone;
|
312
|
+
}());
|
313
|
+
;
|
314
|
+
var ZoneDelegate = (function () {
|
315
|
+
function ZoneDelegate(zone, parentDelegate, zoneSpec) {
|
316
|
+
this._taskCounts = { microTask: 0, macroTask: 0, eventTask: 0 };
|
317
|
+
this.zone = zone;
|
318
|
+
this._parentDelegate = parentDelegate;
|
319
|
+
this._forkZS = zoneSpec && (zoneSpec && zoneSpec.onFork ? zoneSpec : parentDelegate._forkZS);
|
320
|
+
this._forkDlgt = zoneSpec && (zoneSpec.onFork ? parentDelegate : parentDelegate._forkDlgt);
|
321
|
+
this._interceptZS = zoneSpec && (zoneSpec.onIntercept ? zoneSpec : parentDelegate._interceptZS);
|
322
|
+
this._interceptDlgt = zoneSpec && (zoneSpec.onIntercept ? parentDelegate : parentDelegate._interceptDlgt);
|
323
|
+
this._invokeZS = zoneSpec && (zoneSpec.onInvoke ? zoneSpec : parentDelegate._invokeZS);
|
324
|
+
this._invokeDlgt = zoneSpec && (zoneSpec.onInvoke ? parentDelegate : parentDelegate._invokeDlgt);
|
325
|
+
this._handleErrorZS = zoneSpec && (zoneSpec.onHandleError ? zoneSpec : parentDelegate._handleErrorZS);
|
326
|
+
this._handleErrorDlgt = zoneSpec && (zoneSpec.onHandleError ? parentDelegate : parentDelegate._handleErrorDlgt);
|
327
|
+
this._scheduleTaskZS = zoneSpec && (zoneSpec.onScheduleTask ? zoneSpec : parentDelegate._scheduleTaskZS);
|
328
|
+
this._scheduleTaskDlgt = zoneSpec && (zoneSpec.onScheduleTask ? parentDelegate : parentDelegate._scheduleTaskDlgt);
|
329
|
+
this._invokeTaskZS = zoneSpec && (zoneSpec.onInvokeTask ? zoneSpec : parentDelegate._invokeTaskZS);
|
330
|
+
this._invokeTaskDlgt = zoneSpec && (zoneSpec.onInvokeTask ? parentDelegate : parentDelegate._invokeTaskDlgt);
|
331
|
+
this._cancelTaskZS = zoneSpec && (zoneSpec.onCancelTask ? zoneSpec : parentDelegate._cancelTaskZS);
|
332
|
+
this._cancelTaskDlgt = zoneSpec && (zoneSpec.onCancelTask ? parentDelegate : parentDelegate._cancelTaskDlgt);
|
333
|
+
this._hasTaskZS = zoneSpec && (zoneSpec.onHasTask ? zoneSpec : parentDelegate._hasTaskZS);
|
334
|
+
this._hasTaskDlgt = zoneSpec && (zoneSpec.onHasTask ? parentDelegate : parentDelegate._hasTaskDlgt);
|
606
335
|
}
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
}
|
643
|
-
|
644
|
-
function onRejection(reason) {
|
645
|
-
lib$es6$promise$$internal$$reject(promise, reason);
|
646
|
-
}
|
647
|
-
|
648
|
-
for (var i = 0; promise._state === lib$es6$promise$$internal$$PENDING && i < length; i++) {
|
649
|
-
lib$es6$promise$$internal$$subscribe(Constructor.resolve(entries[i]), undefined, onFulfillment, onRejection);
|
650
|
-
}
|
651
|
-
|
652
|
-
return promise;
|
653
|
-
}
|
654
|
-
var lib$es6$promise$promise$race$$default = lib$es6$promise$promise$race$$race;
|
655
|
-
function lib$es6$promise$promise$resolve$$resolve(object) {
|
656
|
-
/*jshint validthis:true */
|
657
|
-
var Constructor = this;
|
658
|
-
|
659
|
-
if (object && typeof object === 'object' && object.constructor === Constructor) {
|
660
|
-
return object;
|
661
|
-
}
|
662
|
-
|
663
|
-
var promise = new Constructor(lib$es6$promise$$internal$$noop);
|
664
|
-
lib$es6$promise$$internal$$resolve(promise, object);
|
665
|
-
return promise;
|
666
|
-
}
|
667
|
-
var lib$es6$promise$promise$resolve$$default = lib$es6$promise$promise$resolve$$resolve;
|
668
|
-
function lib$es6$promise$promise$reject$$reject(reason) {
|
669
|
-
/*jshint validthis:true */
|
670
|
-
var Constructor = this;
|
671
|
-
var promise = new Constructor(lib$es6$promise$$internal$$noop);
|
672
|
-
lib$es6$promise$$internal$$reject(promise, reason);
|
673
|
-
return promise;
|
674
|
-
}
|
675
|
-
var lib$es6$promise$promise$reject$$default = lib$es6$promise$promise$reject$$reject;
|
676
|
-
|
677
|
-
var lib$es6$promise$promise$$counter = 0;
|
678
|
-
|
679
|
-
function lib$es6$promise$promise$$needsResolver() {
|
680
|
-
throw new TypeError('You must pass a resolver function as the first argument to the promise constructor');
|
681
|
-
}
|
682
|
-
|
683
|
-
function lib$es6$promise$promise$$needsNew() {
|
684
|
-
throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.");
|
685
|
-
}
|
686
|
-
|
687
|
-
var lib$es6$promise$promise$$default = lib$es6$promise$promise$$Promise;
|
688
|
-
/**
|
689
|
-
Promise objects represent the eventual result of an asynchronous operation. The
|
690
|
-
primary way of interacting with a promise is through its `then` method, which
|
691
|
-
registers callbacks to receive either a promise's eventual value or the reason
|
692
|
-
why the promise cannot be fulfilled.
|
693
|
-
|
694
|
-
Terminology
|
695
|
-
-----------
|
696
|
-
|
697
|
-
- `promise` is an object or function with a `then` method whose behavior conforms to this specification.
|
698
|
-
- `thenable` is an object or function that defines a `then` method.
|
699
|
-
- `value` is any legal JavaScript value (including undefined, a thenable, or a promise).
|
700
|
-
- `exception` is a value that is thrown using the throw statement.
|
701
|
-
- `reason` is a value that indicates why a promise was rejected.
|
702
|
-
- `settled` the final resting state of a promise, fulfilled or rejected.
|
703
|
-
|
704
|
-
A promise can be in one of three states: pending, fulfilled, or rejected.
|
705
|
-
|
706
|
-
Promises that are fulfilled have a fulfillment value and are in the fulfilled
|
707
|
-
state. Promises that are rejected have a rejection reason and are in the
|
708
|
-
rejected state. A fulfillment value is never a thenable.
|
709
|
-
|
710
|
-
Promises can also be said to *resolve* a value. If this value is also a
|
711
|
-
promise, then the original promise's settled state will match the value's
|
712
|
-
settled state. So a promise that *resolves* a promise that rejects will
|
713
|
-
itself reject, and a promise that *resolves* a promise that fulfills will
|
714
|
-
itself fulfill.
|
715
|
-
|
716
|
-
|
717
|
-
Basic Usage:
|
718
|
-
------------
|
719
|
-
|
720
|
-
```js
|
721
|
-
var promise = new Promise(function(resolve, reject) {
|
722
|
-
// on success
|
723
|
-
resolve(value);
|
724
|
-
|
725
|
-
// on failure
|
726
|
-
reject(reason);
|
727
|
-
});
|
728
|
-
|
729
|
-
promise.then(function(value) {
|
730
|
-
// on fulfillment
|
731
|
-
}, function(reason) {
|
732
|
-
// on rejection
|
733
|
-
});
|
734
|
-
```
|
735
|
-
|
736
|
-
Advanced Usage:
|
737
|
-
---------------
|
738
|
-
|
739
|
-
Promises shine when abstracting away asynchronous interactions such as
|
740
|
-
`XMLHttpRequest`s.
|
741
|
-
|
742
|
-
```js
|
743
|
-
function getJSON(url) {
|
744
|
-
return new Promise(function(resolve, reject){
|
745
|
-
var xhr = new XMLHttpRequest();
|
746
|
-
|
747
|
-
xhr.open('GET', url);
|
748
|
-
xhr.onreadystatechange = handler;
|
749
|
-
xhr.responseType = 'json';
|
750
|
-
xhr.setRequestHeader('Accept', 'application/json');
|
751
|
-
xhr.send();
|
752
|
-
|
753
|
-
function handler() {
|
754
|
-
if (this.readyState === this.DONE) {
|
755
|
-
if (this.status === 200) {
|
756
|
-
resolve(this.response);
|
757
|
-
} else {
|
758
|
-
reject(new Error('getJSON: `' + url + '` failed with status: [' + this.status + ']'));
|
759
|
-
}
|
336
|
+
ZoneDelegate.prototype.fork = function (targetZone, zoneSpec) {
|
337
|
+
return this._forkZS
|
338
|
+
? this._forkZS.onFork(this._forkDlgt, this.zone, targetZone, zoneSpec)
|
339
|
+
: new Zone(targetZone, zoneSpec);
|
340
|
+
};
|
341
|
+
ZoneDelegate.prototype.intercept = function (targetZone, callback, source) {
|
342
|
+
return this._interceptZS
|
343
|
+
? this._interceptZS.onIntercept(this._interceptDlgt, this.zone, targetZone, callback, source)
|
344
|
+
: callback;
|
345
|
+
};
|
346
|
+
ZoneDelegate.prototype.invoke = function (targetZone, callback, applyThis, applyArgs, source) {
|
347
|
+
return this._invokeZS
|
348
|
+
? this._invokeZS.onInvoke(this._invokeDlgt, this.zone, targetZone, callback, applyThis, applyArgs, source)
|
349
|
+
: callback.apply(applyThis, applyArgs);
|
350
|
+
};
|
351
|
+
ZoneDelegate.prototype.handleError = function (targetZone, error) {
|
352
|
+
return this._handleErrorZS
|
353
|
+
? this._handleErrorZS.onHandleError(this._handleErrorDlgt, this.zone, targetZone, error)
|
354
|
+
: true;
|
355
|
+
};
|
356
|
+
ZoneDelegate.prototype.scheduleTask = function (targetZone, task) {
|
357
|
+
try {
|
358
|
+
if (this._scheduleTaskZS) {
|
359
|
+
return this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt, this.zone, targetZone, task);
|
360
|
+
}
|
361
|
+
else if (task.scheduleFn) {
|
362
|
+
task.scheduleFn(task);
|
363
|
+
}
|
364
|
+
else if (task.type == 'microTask') {
|
365
|
+
scheduleMicroTask(task);
|
366
|
+
}
|
367
|
+
else {
|
368
|
+
throw new Error('Task is missing scheduleFn.');
|
369
|
+
}
|
370
|
+
return task;
|
760
371
|
}
|
761
|
-
|
762
|
-
|
763
|
-
|
764
|
-
|
765
|
-
|
766
|
-
|
767
|
-
|
768
|
-
|
769
|
-
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
777
|
-
|
778
|
-
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
|
788
|
-
|
789
|
-
|
790
|
-
|
791
|
-
|
792
|
-
|
793
|
-
|
794
|
-
|
795
|
-
|
796
|
-
|
797
|
-
|
798
|
-
|
799
|
-
|
372
|
+
finally {
|
373
|
+
if (targetZone == this.zone) {
|
374
|
+
this._updateTaskCount(task.type, 1);
|
375
|
+
}
|
376
|
+
}
|
377
|
+
};
|
378
|
+
ZoneDelegate.prototype.invokeTask = function (targetZone, task, applyThis, applyArgs) {
|
379
|
+
try {
|
380
|
+
return this._invokeTaskZS
|
381
|
+
? this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt, this.zone, targetZone, task, applyThis, applyArgs)
|
382
|
+
: task.callback.apply(applyThis, applyArgs);
|
383
|
+
}
|
384
|
+
finally {
|
385
|
+
if (targetZone == this.zone && (task.type != 'eventTask') && !(task.data && task.data.isPeriodic)) {
|
386
|
+
this._updateTaskCount(task.type, -1);
|
387
|
+
}
|
388
|
+
}
|
389
|
+
};
|
390
|
+
ZoneDelegate.prototype.cancelTask = function (targetZone, task) {
|
391
|
+
var value;
|
392
|
+
if (this._cancelTaskZS) {
|
393
|
+
value = this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt, this.zone, targetZone, task);
|
394
|
+
}
|
395
|
+
else if (!task.cancelFn) {
|
396
|
+
throw new Error('Task does not support cancellation, or is already canceled.');
|
397
|
+
}
|
398
|
+
else {
|
399
|
+
value = task.cancelFn(task);
|
400
|
+
}
|
401
|
+
if (targetZone == this.zone) {
|
402
|
+
// this should not be in the finally block, because exceptions assume not canceled.
|
403
|
+
this._updateTaskCount(task.type, -1);
|
404
|
+
}
|
405
|
+
return value;
|
406
|
+
};
|
407
|
+
ZoneDelegate.prototype.hasTask = function (targetZone, isEmpty) {
|
408
|
+
return this._hasTaskZS && this._hasTaskZS.onHasTask(this._hasTaskDlgt, this.zone, targetZone, isEmpty);
|
409
|
+
};
|
410
|
+
ZoneDelegate.prototype._updateTaskCount = function (type, count) {
|
411
|
+
var counts = this._taskCounts;
|
412
|
+
var prev = counts[type];
|
413
|
+
var next = counts[type] = prev + count;
|
414
|
+
if (next < 0) {
|
415
|
+
throw new Error('More tasks executed then were scheduled.');
|
416
|
+
}
|
417
|
+
if (prev == 0 || next == 0) {
|
418
|
+
var isEmpty = {
|
419
|
+
microTask: counts.microTask > 0,
|
420
|
+
macroTask: counts.macroTask > 0,
|
421
|
+
eventTask: counts.eventTask > 0,
|
422
|
+
change: type
|
423
|
+
};
|
424
|
+
try {
|
425
|
+
this.hasTask(this.zone, isEmpty);
|
426
|
+
}
|
427
|
+
finally {
|
428
|
+
if (this._parentDelegate) {
|
429
|
+
this._parentDelegate._updateTaskCount(type, count);
|
430
|
+
}
|
431
|
+
}
|
432
|
+
}
|
433
|
+
};
|
434
|
+
return ZoneDelegate;
|
435
|
+
}());
|
436
|
+
var ZoneTask = (function () {
|
437
|
+
function ZoneTask(type, zone, source, callback, options, scheduleFn, cancelFn) {
|
438
|
+
this.runCount = 0;
|
439
|
+
this.type = type;
|
440
|
+
this.zone = zone;
|
441
|
+
this.source = source;
|
442
|
+
this.data = options;
|
443
|
+
this.scheduleFn = scheduleFn;
|
444
|
+
this.cancelFn = cancelFn;
|
445
|
+
this.callback = callback;
|
446
|
+
var self = this;
|
447
|
+
this.invoke = function () {
|
448
|
+
try {
|
449
|
+
return zone.runTask(self, this, arguments);
|
450
|
+
}
|
451
|
+
finally {
|
452
|
+
drainMicroTaskQueue();
|
453
|
+
}
|
454
|
+
};
|
800
455
|
}
|
801
|
-
|
802
|
-
|
803
|
-
|
456
|
+
return ZoneTask;
|
457
|
+
}());
|
458
|
+
function __symbol__(name) { return '__zone_symbol__' + name; }
|
459
|
+
;
|
460
|
+
var symbolSetTimeout = __symbol__('setTimeout');
|
461
|
+
var symbolPromise = __symbol__('Promise');
|
462
|
+
var symbolThen = __symbol__('then');
|
463
|
+
var _currentZone = new Zone(null, null);
|
464
|
+
var _currentTask = null;
|
465
|
+
var _microTaskQueue = [];
|
466
|
+
var _isDrainingMicrotaskQueue = false;
|
467
|
+
var _uncaughtPromiseErrors = [];
|
468
|
+
var _drainScheduled = false;
|
469
|
+
function scheduleQueueDrain() {
|
470
|
+
if (!_drainScheduled && !_currentTask && _microTaskQueue.length == 0) {
|
471
|
+
// We are not running in Task, so we need to kickstart the microtask queue.
|
472
|
+
if (global[symbolPromise]) {
|
473
|
+
global[symbolPromise].resolve(0)[symbolThen](drainMicroTaskQueue);
|
474
|
+
}
|
475
|
+
else {
|
476
|
+
global[symbolSetTimeout](drainMicroTaskQueue, 0);
|
477
|
+
}
|
804
478
|
}
|
805
|
-
|
806
|
-
lib$es6$promise$$internal$$initializePromise(this, resolver);
|
807
|
-
}
|
808
479
|
}
|
809
|
-
|
810
|
-
|
811
|
-
|
812
|
-
|
813
|
-
|
814
|
-
|
815
|
-
|
816
|
-
|
817
|
-
|
818
|
-
lib$es6$promise$promise$$Promise.prototype = {
|
819
|
-
constructor: lib$es6$promise$promise$$Promise,
|
820
|
-
|
821
|
-
/**
|
822
|
-
The primary way of interacting with a promise is through its `then` method,
|
823
|
-
which registers callbacks to receive either a promise's eventual value or the
|
824
|
-
reason why the promise cannot be fulfilled.
|
825
|
-
|
826
|
-
```js
|
827
|
-
findUser().then(function(user){
|
828
|
-
// user is available
|
829
|
-
}, function(reason){
|
830
|
-
// user is unavailable, and you are given the reason why
|
831
|
-
});
|
832
|
-
```
|
833
|
-
|
834
|
-
Chaining
|
835
|
-
--------
|
836
|
-
|
837
|
-
The return value of `then` is itself a promise. This second, 'downstream'
|
838
|
-
promise is resolved with the return value of the first promise's fulfillment
|
839
|
-
or rejection handler, or rejected if the handler throws an exception.
|
840
|
-
|
841
|
-
```js
|
842
|
-
findUser().then(function (user) {
|
843
|
-
return user.name;
|
844
|
-
}, function (reason) {
|
845
|
-
return 'default name';
|
846
|
-
}).then(function (userName) {
|
847
|
-
// If `findUser` fulfilled, `userName` will be the user's name, otherwise it
|
848
|
-
// will be `'default name'`
|
849
|
-
});
|
850
|
-
|
851
|
-
findUser().then(function (user) {
|
852
|
-
throw new Error('Found user, but still unhappy');
|
853
|
-
}, function (reason) {
|
854
|
-
throw new Error('`findUser` rejected and we're unhappy');
|
855
|
-
}).then(function (value) {
|
856
|
-
// never reached
|
857
|
-
}, function (reason) {
|
858
|
-
// if `findUser` fulfilled, `reason` will be 'Found user, but still unhappy'.
|
859
|
-
// If `findUser` rejected, `reason` will be '`findUser` rejected and we're unhappy'.
|
860
|
-
});
|
861
|
-
```
|
862
|
-
If the downstream promise does not specify a rejection handler, rejection reasons will be propagated further downstream.
|
863
|
-
|
864
|
-
```js
|
865
|
-
findUser().then(function (user) {
|
866
|
-
throw new PedagogicalException('Upstream error');
|
867
|
-
}).then(function (value) {
|
868
|
-
// never reached
|
869
|
-
}).then(function (value) {
|
870
|
-
// never reached
|
871
|
-
}, function (reason) {
|
872
|
-
// The `PedgagocialException` is propagated all the way down to here
|
873
|
-
});
|
874
|
-
```
|
875
|
-
|
876
|
-
Assimilation
|
877
|
-
------------
|
878
|
-
|
879
|
-
Sometimes the value you want to propagate to a downstream promise can only be
|
880
|
-
retrieved asynchronously. This can be achieved by returning a promise in the
|
881
|
-
fulfillment or rejection handler. The downstream promise will then be pending
|
882
|
-
until the returned promise is settled. This is called *assimilation*.
|
883
|
-
|
884
|
-
```js
|
885
|
-
findUser().then(function (user) {
|
886
|
-
return findCommentsByAuthor(user);
|
887
|
-
}).then(function (comments) {
|
888
|
-
// The user's comments are now available
|
889
|
-
});
|
890
|
-
```
|
891
|
-
|
892
|
-
If the assimliated promise rejects, then the downstream promise will also reject.
|
893
|
-
|
894
|
-
```js
|
895
|
-
findUser().then(function (user) {
|
896
|
-
return findCommentsByAuthor(user);
|
897
|
-
}).then(function (comments) {
|
898
|
-
// If `findCommentsByAuthor` fulfills, we'll have the value here
|
899
|
-
}, function (reason) {
|
900
|
-
// If `findCommentsByAuthor` rejects, we'll have the reason here
|
901
|
-
});
|
902
|
-
```
|
903
|
-
|
904
|
-
Simple Example
|
905
|
-
--------------
|
906
|
-
|
907
|
-
Synchronous Example
|
908
|
-
|
909
|
-
```javascript
|
910
|
-
var result;
|
911
|
-
|
912
|
-
try {
|
913
|
-
result = findResult();
|
914
|
-
// success
|
915
|
-
} catch(reason) {
|
916
|
-
// failure
|
917
|
-
}
|
918
|
-
```
|
919
|
-
|
920
|
-
Errback Example
|
921
|
-
|
922
|
-
```js
|
923
|
-
findResult(function(result, err){
|
924
|
-
if (err) {
|
925
|
-
// failure
|
926
|
-
} else {
|
927
|
-
// success
|
480
|
+
function scheduleMicroTask(task) {
|
481
|
+
scheduleQueueDrain();
|
482
|
+
_microTaskQueue.push(task);
|
483
|
+
}
|
484
|
+
function consoleError(e) {
|
485
|
+
var rejection = e && e.rejection;
|
486
|
+
if (rejection) {
|
487
|
+
console.error('Unhandled Promise rejection:', rejection instanceof Error ? rejection.message : rejection, '; Zone:', e.zone.name, '; Task:', e.task && e.task.source, '; Value:', rejection);
|
928
488
|
}
|
929
|
-
|
930
|
-
|
931
|
-
|
932
|
-
|
933
|
-
|
934
|
-
|
935
|
-
|
936
|
-
|
937
|
-
|
938
|
-
|
939
|
-
|
940
|
-
|
941
|
-
|
942
|
-
|
943
|
-
|
944
|
-
|
945
|
-
Synchronous Example
|
946
|
-
|
947
|
-
```javascript
|
948
|
-
var author, books;
|
949
|
-
|
950
|
-
try {
|
951
|
-
author = findAuthor();
|
952
|
-
books = findBooksByAuthor(author);
|
953
|
-
// success
|
954
|
-
} catch(reason) {
|
955
|
-
// failure
|
956
|
-
}
|
957
|
-
```
|
958
|
-
|
959
|
-
Errback Example
|
960
|
-
|
961
|
-
```js
|
962
|
-
|
963
|
-
function foundBooks(books) {
|
964
|
-
|
965
|
-
}
|
966
|
-
|
967
|
-
function failure(reason) {
|
968
|
-
|
969
|
-
}
|
970
|
-
|
971
|
-
findAuthor(function(author, err){
|
972
|
-
if (err) {
|
973
|
-
failure(err);
|
974
|
-
// failure
|
975
|
-
} else {
|
976
|
-
try {
|
977
|
-
findBoooksByAuthor(author, function(books, err) {
|
978
|
-
if (err) {
|
979
|
-
failure(err);
|
980
|
-
} else {
|
981
|
-
try {
|
982
|
-
foundBooks(books);
|
983
|
-
} catch(reason) {
|
984
|
-
failure(reason);
|
489
|
+
console.error(e);
|
490
|
+
}
|
491
|
+
function drainMicroTaskQueue() {
|
492
|
+
if (!_isDrainingMicrotaskQueue) {
|
493
|
+
_isDrainingMicrotaskQueue = true;
|
494
|
+
while (_microTaskQueue.length) {
|
495
|
+
var queue = _microTaskQueue;
|
496
|
+
_microTaskQueue = [];
|
497
|
+
for (var i = 0; i < queue.length; i++) {
|
498
|
+
var task = queue[i];
|
499
|
+
try {
|
500
|
+
task.zone.runTask(task, null, null);
|
501
|
+
}
|
502
|
+
catch (e) {
|
503
|
+
consoleError(e);
|
504
|
+
}
|
985
505
|
}
|
986
|
-
|
987
|
-
|
988
|
-
|
989
|
-
|
990
|
-
|
991
|
-
|
992
|
-
|
993
|
-
|
994
|
-
|
995
|
-
|
996
|
-
|
997
|
-
|
998
|
-
|
999
|
-
|
1000
|
-
|
1001
|
-
|
1002
|
-
|
1003
|
-
|
1004
|
-
|
1005
|
-
});
|
1006
|
-
```
|
1007
|
-
|
1008
|
-
@method then
|
1009
|
-
@param {Function} onFulfilled
|
1010
|
-
@param {Function} onRejected
|
1011
|
-
Useful for tooling.
|
1012
|
-
@return {Promise}
|
1013
|
-
*/
|
1014
|
-
then: function(onFulfillment, onRejection) {
|
1015
|
-
var parent = this;
|
1016
|
-
var state = parent._state;
|
1017
|
-
|
1018
|
-
if (state === lib$es6$promise$$internal$$FULFILLED && !onFulfillment || state === lib$es6$promise$$internal$$REJECTED && !onRejection) {
|
1019
|
-
return this;
|
1020
|
-
}
|
1021
|
-
|
1022
|
-
var child = new this.constructor(lib$es6$promise$$internal$$noop);
|
1023
|
-
var result = parent._result;
|
1024
|
-
|
1025
|
-
if (state) {
|
1026
|
-
var callback = arguments[state - 1];
|
1027
|
-
lib$es6$promise$asap$$asap(function(){
|
1028
|
-
lib$es6$promise$$internal$$invokeCallback(state, child, callback, result);
|
1029
|
-
});
|
1030
|
-
} else {
|
1031
|
-
lib$es6$promise$$internal$$subscribe(parent, child, onFulfillment, onRejection);
|
506
|
+
}
|
507
|
+
while (_uncaughtPromiseErrors.length) {
|
508
|
+
var uncaughtPromiseErrors = _uncaughtPromiseErrors;
|
509
|
+
_uncaughtPromiseErrors = [];
|
510
|
+
var _loop_1 = function(i) {
|
511
|
+
var uncaughtPromiseError = uncaughtPromiseErrors[i];
|
512
|
+
try {
|
513
|
+
uncaughtPromiseError.zone.runGuarded(function () { throw uncaughtPromiseError; });
|
514
|
+
}
|
515
|
+
catch (e) {
|
516
|
+
consoleError(e);
|
517
|
+
}
|
518
|
+
};
|
519
|
+
for (var i = 0; i < uncaughtPromiseErrors.length; i++) {
|
520
|
+
_loop_1(i);
|
521
|
+
}
|
522
|
+
}
|
523
|
+
_isDrainingMicrotaskQueue = false;
|
524
|
+
_drainScheduled = false;
|
1032
525
|
}
|
1033
|
-
|
1034
|
-
return child;
|
1035
|
-
},
|
1036
|
-
|
1037
|
-
/**
|
1038
|
-
`catch` is simply sugar for `then(undefined, onRejection)` which makes it the same
|
1039
|
-
as the catch block of a try/catch statement.
|
1040
|
-
|
1041
|
-
```js
|
1042
|
-
function findAuthor(){
|
1043
|
-
throw new Error('couldn't find that author');
|
1044
|
-
}
|
1045
|
-
|
1046
|
-
// synchronous
|
1047
|
-
try {
|
1048
|
-
findAuthor();
|
1049
|
-
} catch(reason) {
|
1050
|
-
// something went wrong
|
1051
|
-
}
|
1052
|
-
|
1053
|
-
// async with promises
|
1054
|
-
findAuthor().catch(function(reason){
|
1055
|
-
// something went wrong
|
1056
|
-
});
|
1057
|
-
```
|
1058
|
-
|
1059
|
-
@method catch
|
1060
|
-
@param {Function} onRejection
|
1061
|
-
Useful for tooling.
|
1062
|
-
@return {Promise}
|
1063
|
-
*/
|
1064
|
-
'catch': function(onRejection) {
|
1065
|
-
return this.then(null, onRejection);
|
1066
|
-
}
|
1067
|
-
};
|
1068
|
-
function lib$es6$promise$polyfill$$polyfill() {
|
1069
|
-
var local;
|
1070
|
-
|
1071
|
-
if (typeof global !== 'undefined') {
|
1072
|
-
local = global;
|
1073
|
-
} else if (typeof self !== 'undefined') {
|
1074
|
-
local = self;
|
1075
|
-
} else {
|
1076
|
-
try {
|
1077
|
-
local = Function('return this')();
|
1078
|
-
} catch (e) {
|
1079
|
-
throw new Error('polyfill failed because global object is unavailable in this environment');
|
1080
|
-
}
|
1081
|
-
}
|
1082
|
-
|
1083
|
-
var P = local.Promise;
|
1084
|
-
|
1085
|
-
if (P && Object.prototype.toString.call(P.resolve()) === '[object Promise]' && !P.cast) {
|
1086
|
-
return;
|
1087
|
-
}
|
1088
|
-
|
1089
|
-
local.Promise = lib$es6$promise$promise$$default;
|
1090
|
-
}
|
1091
|
-
var lib$es6$promise$polyfill$$default = lib$es6$promise$polyfill$$polyfill;
|
1092
|
-
|
1093
|
-
var lib$es6$promise$umd$$ES6Promise = {
|
1094
|
-
'Promise': lib$es6$promise$promise$$default,
|
1095
|
-
'polyfill': lib$es6$promise$polyfill$$default
|
1096
|
-
};
|
1097
|
-
|
1098
|
-
/* global define:true module:true window: true */
|
1099
|
-
if ("function" === 'function' && __webpack_require__(5)['amd']) {
|
1100
|
-
!(__WEBPACK_AMD_DEFINE_RESULT__ = function() { return lib$es6$promise$umd$$ES6Promise; }.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
|
1101
|
-
} else if (typeof module !== 'undefined' && module['exports']) {
|
1102
|
-
module['exports'] = lib$es6$promise$umd$$ES6Promise;
|
1103
|
-
} else if (typeof this !== 'undefined') {
|
1104
|
-
this['ES6Promise'] = lib$es6$promise$umd$$ES6Promise;
|
1105
526
|
}
|
1106
|
-
|
1107
|
-
|
1108
|
-
|
1109
|
-
|
1110
|
-
|
1111
|
-
|
1112
|
-
|
1113
|
-
|
1114
|
-
|
1115
|
-
|
1116
|
-
|
1117
|
-
|
1118
|
-
|
1119
|
-
|
1120
|
-
|
1121
|
-
|
1122
|
-
|
1123
|
-
module.webpackPolyfill = 1;
|
1124
|
-
}
|
1125
|
-
return module;
|
1126
|
-
}
|
1127
|
-
|
1128
|
-
|
1129
|
-
/***/ },
|
1130
|
-
/* 4 */
|
1131
|
-
/***/ function(module, exports) {
|
1132
|
-
|
1133
|
-
/* (ignored) */
|
1134
|
-
|
1135
|
-
/***/ },
|
1136
|
-
/* 5 */
|
1137
|
-
/***/ function(module, exports) {
|
1138
|
-
|
1139
|
-
module.exports = function() { throw new Error("define cannot be used indirect"); };
|
1140
|
-
|
1141
|
-
|
1142
|
-
/***/ },
|
1143
|
-
/* 6 */
|
1144
|
-
/***/ function(module, exports, __webpack_require__) {
|
1145
|
-
|
1146
|
-
/* WEBPACK VAR INJECTION */(function(global) {var keys = __webpack_require__(7);
|
1147
|
-
var promise = __webpack_require__(8);
|
1148
|
-
var deprecated = {};
|
1149
|
-
function deprecatedWarning(key, text) {
|
1150
|
-
if (!deprecated.hasOwnProperty(key)) {
|
1151
|
-
deprecated[key] = true;
|
1152
|
-
console.warn("DEPRECATION WARNING: '" + key +
|
1153
|
-
"' is no longer supported and will be removed in next major release. " + text);
|
527
|
+
function isThenable(value) {
|
528
|
+
return value && value.then;
|
529
|
+
}
|
530
|
+
function forwardResolution(value) { return value; }
|
531
|
+
function forwardRejection(rejection) { return ZoneAwarePromise.reject(rejection); }
|
532
|
+
var symbolState = __symbol__('state');
|
533
|
+
var symbolValue = __symbol__('value');
|
534
|
+
var source = 'Promise.then';
|
535
|
+
var UNRESOLVED = null;
|
536
|
+
var RESOLVED = true;
|
537
|
+
var REJECTED = false;
|
538
|
+
var REJECTED_NO_CATCH = 0;
|
539
|
+
function makeResolver(promise, state) {
|
540
|
+
return function (v) {
|
541
|
+
resolvePromise(promise, state, v);
|
542
|
+
// Do not return value or you will break the Promise spec.
|
543
|
+
};
|
1154
544
|
}
|
1155
|
-
|
1156
|
-
|
1157
|
-
|
1158
|
-
|
1159
|
-
|
1160
|
-
// When a custom error handler is provided, it should most probably rethrow the exception
|
1161
|
-
// not to break the expected control flow:
|
1162
|
-
//
|
1163
|
-
// `promise.then(fnThatThrows).catch(fn);`
|
1164
|
-
//
|
1165
|
-
// When this code is executed in a zone with a custom onError handler that doesn't rethrow, the
|
1166
|
-
// `.catch()` branch will not be taken as the `fnThatThrows` exception will be swallowed by the
|
1167
|
-
// handler.
|
1168
|
-
this.onError = null;
|
1169
|
-
var zone = (arguments.length) ? Object.create(parentZone) : this;
|
1170
|
-
zone.parent = parentZone || null;
|
1171
|
-
Object.keys(data || {}).forEach(function (property) {
|
1172
|
-
var _property = property.substr(1);
|
1173
|
-
// augment the new zone with a hook decorates the parent's hook
|
1174
|
-
if (property[0] === '$') {
|
1175
|
-
zone[_property] = data[property](parentZone[_property] || function () { });
|
545
|
+
function resolvePromise(promise, state, value) {
|
546
|
+
if (promise[symbolState] === UNRESOLVED) {
|
547
|
+
if (value instanceof ZoneAwarePromise && value[symbolState] !== UNRESOLVED) {
|
548
|
+
clearRejectedNoCatch(value);
|
549
|
+
resolvePromise(promise, value[symbolState], value[symbolValue]);
|
1176
550
|
}
|
1177
|
-
else if (
|
1178
|
-
|
1179
|
-
|
1180
|
-
|
1181
|
-
|
1182
|
-
|
1183
|
-
|
551
|
+
else if (isThenable(value)) {
|
552
|
+
value.then(makeResolver(promise, state), makeResolver(promise, false));
|
553
|
+
}
|
554
|
+
else {
|
555
|
+
promise[symbolState] = state;
|
556
|
+
var queue = promise[symbolValue];
|
557
|
+
promise[symbolValue] = value;
|
558
|
+
for (var i = 0; i < queue.length;) {
|
559
|
+
scheduleResolveOrReject(promise, queue[i++], queue[i++], queue[i++], queue[i++]);
|
1184
560
|
}
|
1185
|
-
|
1186
|
-
|
561
|
+
if (queue.length == 0 && state == REJECTED) {
|
562
|
+
promise[symbolState] = REJECTED_NO_CATCH;
|
563
|
+
try {
|
564
|
+
throw new Error("Uncaught (in promise): " + value);
|
565
|
+
}
|
566
|
+
catch (e) {
|
567
|
+
var error = e;
|
568
|
+
error.rejection = value;
|
569
|
+
error.promise = promise;
|
570
|
+
error.zone = Zone.current;
|
571
|
+
error.task = Zone.currentTask;
|
572
|
+
_uncaughtPromiseErrors.push(error);
|
573
|
+
scheduleQueueDrain();
|
574
|
+
}
|
1187
575
|
}
|
1188
576
|
}
|
1189
|
-
|
1190
|
-
|
1191
|
-
|
1192
|
-
|
1193
|
-
|
1194
|
-
|
1195
|
-
|
1196
|
-
|
1197
|
-
|
577
|
+
}
|
578
|
+
// Resolving an already resolved promise is a noop.
|
579
|
+
return promise;
|
580
|
+
}
|
581
|
+
function clearRejectedNoCatch(promise) {
|
582
|
+
if (promise[symbolState] === REJECTED_NO_CATCH) {
|
583
|
+
promise[symbolState] = REJECTED;
|
584
|
+
for (var i = 0; i < _uncaughtPromiseErrors.length; i++) {
|
585
|
+
if (promise === _uncaughtPromiseErrors[i].promise) {
|
586
|
+
_uncaughtPromiseErrors.splice(i, 1);
|
587
|
+
break;
|
1198
588
|
}
|
1199
589
|
}
|
1200
|
-
|
1201
|
-
|
1202
|
-
|
1203
|
-
|
590
|
+
}
|
591
|
+
}
|
592
|
+
function scheduleResolveOrReject(promise, zone, chainPromise, onFulfilled, onRejected) {
|
593
|
+
clearRejectedNoCatch(promise);
|
594
|
+
var delegate = promise[symbolState] ? onFulfilled || forwardResolution : onRejected || forwardRejection;
|
595
|
+
zone.scheduleMicroTask(source, function () {
|
596
|
+
try {
|
597
|
+
resolvePromise(chainPromise, true, zone.run(delegate, null, [promise[symbolValue]]));
|
598
|
+
}
|
599
|
+
catch (error) {
|
600
|
+
resolvePromise(chainPromise, false, error);
|
1204
601
|
}
|
1205
602
|
});
|
1206
|
-
zone.$id = Zone.nextId++;
|
1207
|
-
return zone;
|
1208
603
|
}
|
1209
|
-
|
1210
|
-
|
1211
|
-
|
1212
|
-
|
1213
|
-
|
1214
|
-
|
1215
|
-
|
604
|
+
var ZoneAwarePromise = (function () {
|
605
|
+
function ZoneAwarePromise(executor) {
|
606
|
+
var promise = this;
|
607
|
+
promise[symbolState] = UNRESOLVED;
|
608
|
+
promise[symbolValue] = []; // queue;
|
609
|
+
try {
|
610
|
+
executor && executor(makeResolver(promise, RESOLVED), makeResolver(promise, REJECTED));
|
611
|
+
}
|
612
|
+
catch (e) {
|
613
|
+
resolvePromise(promise, false, e);
|
614
|
+
}
|
1216
615
|
}
|
1217
|
-
|
1218
|
-
|
1219
|
-
return function zoneBoundFn() {
|
1220
|
-
return zone.run(fn, this, arguments);
|
616
|
+
ZoneAwarePromise.resolve = function (value) {
|
617
|
+
return resolvePromise(new this(null), RESOLVED, value);
|
1221
618
|
};
|
1222
|
-
|
1223
|
-
|
1224
|
-
|
1225
|
-
|
1226
|
-
|
1227
|
-
|
1228
|
-
var
|
1229
|
-
|
1230
|
-
|
1231
|
-
|
1232
|
-
|
1233
|
-
|
1234
|
-
|
1235
|
-
|
1236
|
-
|
1237
|
-
|
1238
|
-
|
1239
|
-
|
1240
|
-
|
1241
|
-
|
1242
|
-
|
1243
|
-
|
1244
|
-
|
1245
|
-
|
1246
|
-
|
1247
|
-
|
619
|
+
ZoneAwarePromise.reject = function (error) {
|
620
|
+
return resolvePromise(new this(null), REJECTED, error);
|
621
|
+
};
|
622
|
+
ZoneAwarePromise.race = function (values) {
|
623
|
+
var resolve;
|
624
|
+
var reject;
|
625
|
+
var promise = new this(function (res, rej) { resolve = res; reject = rej; });
|
626
|
+
function onResolve(value) { promise && (promise = null || resolve(value)); }
|
627
|
+
function onReject(error) { promise && (promise = null || reject(error)); }
|
628
|
+
for (var _i = 0, values_1 = values; _i < values_1.length; _i++) {
|
629
|
+
var value = values_1[_i];
|
630
|
+
if (!isThenable(value)) {
|
631
|
+
value = this.resolve(value);
|
632
|
+
}
|
633
|
+
value.then(onResolve, onReject);
|
634
|
+
}
|
635
|
+
return promise;
|
636
|
+
};
|
637
|
+
ZoneAwarePromise.all = function (values) {
|
638
|
+
var resolve;
|
639
|
+
var reject;
|
640
|
+
var promise = new this(function (res, rej) { resolve = res; reject = rej; });
|
641
|
+
var count = 0;
|
642
|
+
var resolvedValues = [];
|
643
|
+
function onReject(error) { promise && reject(error); promise = null; }
|
644
|
+
for (var _i = 0, values_2 = values; _i < values_2.length; _i++) {
|
645
|
+
var value = values_2[_i];
|
646
|
+
if (!isThenable(value)) {
|
647
|
+
value = this.resolve(value);
|
648
|
+
}
|
649
|
+
value.then((function (index) { return function (value) {
|
650
|
+
resolvedValues[index] = value;
|
651
|
+
count--;
|
652
|
+
if (promise && !count) {
|
653
|
+
resolve(resolvedValues);
|
654
|
+
}
|
655
|
+
promise == null;
|
656
|
+
}; })(count), onReject);
|
657
|
+
count++;
|
658
|
+
}
|
659
|
+
if (!count)
|
660
|
+
resolve(resolvedValues);
|
661
|
+
return promise;
|
662
|
+
};
|
663
|
+
ZoneAwarePromise.prototype.then = function (onFulfilled, onRejected) {
|
664
|
+
var chainPromise = new ZoneAwarePromise(null);
|
665
|
+
var zone = Zone.current;
|
666
|
+
if (this[symbolState] == UNRESOLVED) {
|
667
|
+
this[symbolValue].push(zone, chainPromise, onFulfilled, onRejected);
|
1248
668
|
}
|
1249
669
|
else {
|
1250
|
-
|
670
|
+
scheduleResolveOrReject(this, zone, chainPromise, onFulfilled, onRejected);
|
1251
671
|
}
|
1252
|
-
|
1253
|
-
|
1254
|
-
|
1255
|
-
|
1256
|
-
|
1257
|
-
|
1258
|
-
};
|
1259
|
-
|
1260
|
-
|
1261
|
-
|
1262
|
-
|
1263
|
-
|
1264
|
-
|
1265
|
-
|
1266
|
-
|
1267
|
-
|
1268
|
-
|
1269
|
-
|
1270
|
-
|
1271
|
-
|
1272
|
-
Zone
|
1273
|
-
|
1274
|
-
Zone.prototype.addEventListener = function () {
|
1275
|
-
return this[keys.common.addEventListener].apply(this, arguments);
|
1276
|
-
};
|
1277
|
-
Zone.prototype.removeEventListener = function () {
|
1278
|
-
return this[keys.common.removeEventListener].apply(this, arguments);
|
1279
|
-
};
|
1280
|
-
// Root zone ID === 1
|
1281
|
-
Zone.nextId = 1;
|
1282
|
-
Zone.bindPromiseFn = promise.bindPromiseFn;
|
1283
|
-
return Zone;
|
1284
|
-
})();
|
1285
|
-
exports.Zone = Zone;
|
1286
|
-
;
|
1287
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9jb3JlLnRzIl0sIm5hbWVzIjpbImRlcHJlY2F0ZWRXYXJuaW5nIiwiWm9uZSIsIlpvbmUuY29uc3RydWN0b3IiLCJab25lLmZvcmsiLCJab25lLmJpbmQiLCJab25lLmJpbmQuem9uZUJvdW5kRm4iLCJab25lLmJpbmRPbmNlIiwiWm9uZS5pc1Jvb3Rab25lIiwiWm9uZS5ydW4iLCJab25lLmJlZm9yZVRhc2siLCJab25lLm9uWm9uZUNyZWF0ZWQiLCJab25lLmFmdGVyVGFzayIsIlpvbmUuZW5xdWV1ZVRhc2siLCJab25lLmRlcXVldWVUYXNrIiwiWm9uZS5hZGRUYXNrIiwiWm9uZS5yZW1vdmVUYXNrIiwiWm9uZS5hZGRSZXBlYXRpbmdUYXNrIiwiWm9uZS5yZW1vdmVSZXBlYXRpbmdUYXNrIiwiWm9uZS5hZGRNaWNyb3Rhc2siLCJab25lLnJlbW92ZU1pY3JvdGFzayIsIlpvbmUuYWRkRXZlbnRMaXN0ZW5lciIsIlpvbmUucmVtb3ZlRXZlbnRMaXN0ZW5lciJdLCJtYXBwaW5ncyI6IkFBQUEsSUFBWSxJQUFJLFdBQU0sUUFBUSxDQUFDLENBQUE7QUFDL0IsSUFBWSxPQUFPLFdBQU0saUJBQWlCLENBQUMsQ0FBQTtBQUUzQyxJQUFJLFVBQVUsR0FBRyxFQUFFLENBQUM7QUFFcEIsMkJBQTJCLEdBQUcsRUFBRSxJQUFJO0lBQ2xDQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxVQUFVQSxDQUFDQSxjQUFjQSxDQUFDQSxHQUFHQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUNwQ0EsVUFBVUEsQ0FBQ0EsR0FBR0EsQ0FBQ0EsR0FBR0EsSUFBSUEsQ0FBQ0E7UUFDdkJBLE9BQU9BLENBQUNBLElBQUlBLENBQUNBLHdCQUF3QkEsR0FBR0EsR0FBR0E7WUFDdkNBLHNFQUFzRUEsR0FBR0EsSUFBSUEsQ0FBQ0EsQ0FBQ0E7SUFDckZBLENBQUNBO0FBQ0hBLENBQUNBO0FBRUQ7SUFR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LDhCQUFlQSxHQUFmQSxVQUFnQkEsTUFBTUEsSUFBSWtCLElBQUlBLENBQUNBLFdBQVdBLENBQUNBLE1BQU1BLENBQUNBLENBQUNBLENBQUNBLENBQUNBO0lBRXJEbEIsK0JBQWdCQSxHQUFoQkE7UUFDRW1CLE1BQU1BLENBQUNBLElBQUlBLENBQUNBLElBQUlBLENBQUNBLE1BQU1BLENBQUNBLGdCQUFnQkEsQ0FBQ0EsQ0FBQ0EsS0FBS0EsQ0FBQ0EsSUFBSUEsRUFBRUEsU0FBU0EsQ0FBQ0EsQ0FBQ0E7SUFDbkVBLENBQUNBO0lBRURuQixrQ0FBbUJBLEdBQW5CQTtRQUNFb0IsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsbUJBQW1CQSxDQUFDQSxDQUFDQSxLQUFLQSxDQUFDQSxJQUFJQSxFQUFFQSxTQUFTQSxDQUFDQSxDQUFDQTtJQUN0RUEsQ0FBQ0E7SUFuSkRwQixxQkFBcUJBO0lBQ2RBLFdBQU1BLEdBQUdBLENBQUNBLENBQUNBO0lBQ1hBLGtCQUFhQSxHQUFHQSxPQUFPQSxDQUFDQSxhQUFhQSxDQUFDQTtJQWtKL0NBLFdBQUNBO0FBQURBLENBQUNBLEFBckpELElBcUpDO0FBckpZLFlBQUksT0FxSmhCLENBQUE7QUFBQSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMga2V5cyBmcm9tICcuL2tleXMnO1xuaW1wb3J0ICogYXMgcHJvbWlzZSBmcm9tICcuL3BhdGNoL3Byb21pc2UnO1xuXG52YXIgZGVwcmVjYXRlZCA9IHt9O1xuXG5mdW5jdGlvbiBkZXByZWNhdGVkV2FybmluZyhrZXksIHRleHQpIHtcbiAgaWYgKCFkZXByZWNhdGVkLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICBkZXByZWNhdGVkW2tleV0gPSB0cnVlO1xuICAgIGNvbnNvbGUud2FybihcIkRFUFJFQ0FUSU9OIFdBUk5JTkc6ICdcIiArIGtleSArXG4gICAgICAgIFwiJyBpcyBubyBsb25nZXIgc3VwcG9ydGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciByZWxlYXNlLiBcIiArIHRleHQpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBab25lIHtcbiAgLy8gUm9vdCB6b25lIElEID09PSAxXG4gIHN0YXRpYyBuZXh0SWQgPSAxO1xuICBzdGF0aWMgYmluZFByb21pc2VGbiA9IHByb21pc2UuYmluZFByb21pc2VGbjtcblxuXG4gIHBhcmVudDogWm9uZSA9IG51bGw7XG4gICRpZDogbnVtYmVyO1xuICBjb25zdHJ1Y3RvcihwYXJlbnRab25lPywgZGF0YT8pIHtcbiAgICB2YXIgem9uZSA9IChhcmd1bWVudHMubGVuZ3RoKSA/IE9iamVjdC5jcmVhdGUocGFyZW50Wm9uZSkgOiB0aGlzO1xuXG4gICAgem9uZS5wYXJlbnQgPSBwYXJlbnRab25lIHx8IG51bGw7XG5cbiAgICBPYmplY3Qua2V5cyhkYXRhIHx8IHt9KS5mb3JFYWNoKGZ1bmN0aW9uKHByb3BlcnR5KSB7XG5cbiAgICAgIHZhciBfcHJvcGVydHkgPSBwcm9wZXJ0eS5zdWJzdHIoMSk7XG5cbiAgICAgIC8vIGF1Z21lbnQgdGhlIG5ldyB6b25lIHdpdGggYSBob29rIGRlY29yYXRlcyB0aGUgcGFyZW50J3MgaG9va1xuICAgICAgaWYgKHByb3BlcnR5WzBdID09PSAnJCcpIHtcbiAgICAgICAgem9uZVtfcHJvcGVydHldID0gZGF0YVtwcm9wZXJ0eV0ocGFyZW50Wm9uZVtfcHJvcGVydHldIHx8IGZ1bmN0aW9uICgpIHt9KTtcblxuICAgICAgLy8gYXVnbWVudCB0aGUgbmV3IHpvbmUgd2l0aCBhIGhvb2sgdGhhdCBydW5zIGFmdGVyIHRoZSBwYXJlbnQncyBob29rXG4gICAgICB9IGVsc2UgaWYgKHByb3BlcnR5WzBdID09PSAnKycpIHtcbiAgICAgICAgaWYgKHBhcmVudFpvbmVbX3Byb3BlcnR5XSkge1xuICAgICAgICAgIHpvbmVbX3Byb3BlcnR5XSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHZhciByZXN1bHQgPSBwYXJlbnRab25lW19wcm9wZXJ0eV0uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICAgICAgICAgIGRhdGFbcHJvcGVydHldLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgem9uZVtfcHJvcGVydHldID0gZGF0YVtwcm9wZXJ0eV07XG4gICAgICAgIH1cblxuICAgICAgLy8gYXVnbWVudCB0aGUgbmV3IHpvbmUgd2l0aCBhIGhvb2sgdGhhdCBydW5zIGJlZm9yZSB0aGUgcGFyZW50J3MgaG9va1xuICAgICAgfSBlbHNlIGlmIChwcm9wZXJ0eVswXSA9PT0gJy0nKSB7XG4gICAgICAgIGlmIChwYXJlbnRab25lW19wcm9wZXJ0eV0pIHtcbiAgICAgICAgICB6b25lW19wcm9wZXJ0eV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBkYXRhW3Byb3BlcnR5XS5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgICAgICAgcmV0dXJuIHBhcmVudFpvbmVbX3Byb3BlcnR5XS5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgem9uZVtfcHJvcGVydHldID0gZGF0YVtwcm9wZXJ0eV07XG4gICAgICAgIH1cblxuICAgICAgLy8gc2V0IHRoZSBuZXcgem9uZSdzIGhvb2sgKHJlcGxhY2luZyB0aGUgcGFyZW50IHpvbmUncylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHpvbmVbcHJvcGVydHldID0gKHR5cGVvZiBkYXRhW3Byb3BlcnR5XSA9PT0gJ29iamVjdCcpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShkYXRhW3Byb3BlcnR5XSkpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVtwcm9wZXJ0eV07XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB6b25lLiRpZCA9ICg8YW55PlpvbmUpLm5leHRJZCsrO1xuXG4gICAgcmV0dXJuIHpvbmU7XG4gIH1cblxuICBmb3JrKGxvY2Fscz8pIHtcbiAgICB0aGlzLm9uWm9uZUNyZWF0ZWQoKTtcbiAgICByZXR1cm4gbmV3IFpvbmUodGhpcywgbG9jYWxzKTtcbiAgfVxuXG4gIGJpbmQoZm4sIHNraXBFbnF1ZXVlPykge1xuICAgIGlmICh0eXBlb2YgZm4gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRXhwZWN0aW5nIGZ1bmN0aW9uIGdvdDogJyArIGZuKTtcbiAgICB9XG4gICAgc2tpcEVucXVldWUgfHwgdGhpcy5lbnF1ZXVlVGFzayhmbik7XG4gICAgdmFyIHpvbmUgPSB0aGlzLmlzUm9vdFpvbmUoKSA/IHRoaXMgOiB0aGlzLmZvcmsoKTtcbiAgICByZXR1cm4gZnVuY3Rpb24gem9uZUJvdW5kRm4oKSB7XG4gICAgICByZXR1cm4gem9uZS5ydW4oZm4sIHRoaXMsIGFyZ3VtZW50cyk7XG4gICAgfTtcbiAgfVxuXG4gIC8vLyBAZGVwcmVjYXRlZFxuICBiaW5kT25jZShmbikge1xuICAgIGRlcHJlY2F0ZWRXYXJuaW5nKCdiaW5kT25jZScsICdUaGVyZSBpcyBubyByZXBsYWNlbWVudC4nKTtcbiAgICB2YXIgYm91bmRab25lID0gdGhpcztcbiAgICByZXR1cm4gdGhpcy5iaW5kKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciByZXN1bHQgPSBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgICAgYm91bmRab25lLmRlcXVldWVUYXNrKGZuKTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSk7XG4gIH1cblxuICBpc1Jvb3Rab25lKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmVudCA9PT0gbnVsbDtcbiAgfVxuXG4gIHJ1bihmbiwgYXBwbHlUbz8sIGFwcGx5V2l0aD8pIHtcbiAgICBhcHBseVdpdGggPSBhcHBseVdpdGggfHwgW107XG5cbiAgICB2YXIgb2xkWm9uZSA9IGdsb2JhbC56b25lO1xuXG4gICAgLy8gTUFLRSBUSElTIFpPTkUgVEhFIENVUlJFTlQgWk9ORVxuICAgIGdsb2JhbC56b25lID0gdGhpcztcblxuICAgIHRyeSB7XG4gICAgICB0aGlzLmJlZm9yZVRhc2soKTtcbiAgICAgIHJldHVybiBmbi5hcHBseShhcHBseVRvLCBhcHBseVdpdGgpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmICh0aGlzLm9uRXJyb3IpIHtcbiAgICAgICAgdGhpcy5vbkVycm9yKGUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgZTtcbiAgICAgIH1cbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5hZnRlclRhc2soKTtcbiAgICAgIC8vIFJFVkVSVCBUSEUgQ1VSUkVOVCBaT05FIEJBQ0sgVE8gVEhFIE9SSUdJTkFMIFpPTkVcbiAgICAgIGdsb2JhbC56b25lID0gb2xkWm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBvbkVycm9yIGlzIHVzZWQgdG8gb3ZlcnJpZGUgZXJyb3IgaGFuZGxpbmcuXG4gIC8vIFdoZW4gYSBjdXN0b20gZXJyb3IgaGFuZGxlciBpcyBwcm92aWRlZCwgaXQgc2hvdWxkIG1vc3QgcHJvYmFibHkgcmV0aHJvdyB0aGUgZXhjZXB0aW9uXG4gIC8vIG5vdCB0byBicmVhayB0aGUgZXhwZWN0ZWQgY29udHJvbCBmbG93OlxuICAvL1xuICAvLyBgcHJvbWlzZS50aGVuKGZuVGhhdFRocm93cykuY2F0Y2goZm4pO2BcbiAgLy9cbiAgLy8gV2hlbiB0aGlzIGNvZGUgaXMgZXhlY3V0ZWQgaW4gYSB6b25lIHdpdGggYSBjdXN0b20gb25FcnJvciBoYW5kbGVyIHRoYXQgZG9lc24ndCByZXRocm93LCB0aGVcbiAgLy8gYC5jYXRjaCgpYCBicmFuY2ggd2lsbCBub3QgYmUgdGFrZW4gYXMgdGhlIGBmblRoYXRUaHJvd3NgIGV4Y2VwdGlvbiB3aWxsIGJlIHN3YWxsb3dlZCBieSB0aGVcbiAgLy8gaGFuZGxlci5cbiAgb25FcnJvciA9IG51bGw7XG4gIGJlZm9yZVRhc2soKSB7fVxuICBvblpvbmVDcmVhdGVkKCkge31cbiAgYWZ0ZXJUYXNrKCkge31cbiAgXG4gIGVucXVldWVUYXNrKGZuOiBGdW5jdGlvbikge1xuICAgIGRlcHJlY2F0ZWRXYXJuaW5nKCdlbnF1ZXVlVGFzaycsICdVc2UgYWRkVGFzay9hZGRSZXBlYXRpbmdUYXNrL2FkZE1pY3JvVGFzaycpO1xuICB9XG4gIGRlcXVldWVUYXNrKGZuOiBGdW5jdGlvbikge1xuICAgIGRlcHJlY2F0ZWRXYXJuaW5nKCdkZXF1ZXVlVGFzaycsICdVc2UgcmVtb3ZlVGFzay9yZW1vdmVSZXBlYXRpbmdUYXNrL3JlbW92ZU1pY3JvVGFzaycpO1xuICB9XG5cbiAgYWRkVGFzayh0YXNrRm4pIHsgdGhpcy5lbnF1ZXVlVGFzayh0YXNrRm4pOyB9XG4gIHJlbW92ZVRhc2sodGFza0ZuKSB7IHRoaXMuZGVxdWV1ZVRhc2sodGFza0ZuKTsgfVxuXG4gIGFkZFJlcGVhdGluZ1Rhc2sodGFza0ZuKSB7IHRoaXMuZW5xdWV1ZVRhc2sodGFza0ZuKTsgfVxuICByZW1vdmVSZXBlYXRpbmdUYXNrKHRhc2tGbikgeyB0aGlzLmRlcXVldWVUYXNrKHRhc2tGbik7IH1cblxuICBhZGRNaWNyb3Rhc2sodGFza0ZuKSB7IHRoaXMuZW5xdWV1ZVRhc2sodGFza0ZuKTsgfVxuICByZW1vdmVNaWNyb3Rhc2sodGFza0ZuKSB7IHRoaXMuZGVxdWV1ZVRhc2sodGFza0ZuKTsgfVxuXG4gIGFkZEV2ZW50TGlzdGVuZXIoKSB7XG4gICAgcmV0dXJuIHRoaXNba2V5cy5jb21tb24uYWRkRXZlbnRMaXN0ZW5lcl0uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgfVxuXG4gIHJlbW92ZUV2ZW50TGlzdGVuZXIoKSB7XG4gICAgcmV0dXJuIHRoaXNba2V5cy5jb21tb24ucmVtb3ZlRXZlbnRMaXN0ZW5lcl0uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgfVxufTtcblxuIl19
|
1288
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1289
|
-
|
1290
|
-
/***/ },
|
1291
|
-
/* 7 */
|
1292
|
-
/***/ function(module, exports) {
|
672
|
+
return chainPromise;
|
673
|
+
};
|
674
|
+
ZoneAwarePromise.prototype.catch = function (onRejected) {
|
675
|
+
return this.then(null, onRejected);
|
676
|
+
};
|
677
|
+
return ZoneAwarePromise;
|
678
|
+
}());
|
679
|
+
var NativePromise = global[__symbol__('Promise')] = global.Promise;
|
680
|
+
global.Promise = ZoneAwarePromise;
|
681
|
+
if (NativePromise) {
|
682
|
+
var NativePromiseProtototype = NativePromise.prototype;
|
683
|
+
var NativePromiseThen_1 = NativePromiseProtototype[__symbol__('then')]
|
684
|
+
= NativePromiseProtototype.then;
|
685
|
+
NativePromiseProtototype.then = function (onResolve, onReject) {
|
686
|
+
var nativePromise = this;
|
687
|
+
return new ZoneAwarePromise(function (resolve, reject) {
|
688
|
+
NativePromiseThen_1.call(nativePromise, resolve, reject);
|
689
|
+
}).then(onResolve, onReject);
|
690
|
+
};
|
691
|
+
}
|
692
|
+
return global.Zone = Zone;
|
693
|
+
})(typeof window === 'undefined' ? global : window);
|
1293
694
|
|
1294
|
-
|
1295
|
-
* Creates keys for `private` properties on exposed objects to minimize interactions with other codebases.
|
1296
|
-
*/
|
1297
|
-
function create(name) {
|
1298
|
-
// `Symbol` implementation is broken in Chrome 39.0.2171, do not use them even if they are available
|
1299
|
-
return '_zone$' + name;
|
1300
|
-
}
|
1301
|
-
exports.create = create;
|
1302
|
-
exports.common = {
|
1303
|
-
addEventListener: create('addEventListener'),
|
1304
|
-
removeEventListener: create('removeEventListener')
|
1305
|
-
};
|
1306
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9rZXlzLnRzIl0sIm5hbWVzIjpbImNyZWF0ZSJdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxnQkFBdUIsSUFBSTtJQUN6QkEsb0dBQW9HQTtJQUNwR0EsTUFBTUEsQ0FBQ0EsUUFBUUEsR0FBR0EsSUFBSUEsQ0FBQ0E7QUFDekJBLENBQUNBO0FBSGUsY0FBTSxTQUdyQixDQUFBO0FBRVUsY0FBTSxHQUFHO0lBQ2xCLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQztJQUM1QyxtQkFBbUIsRUFBRSxNQUFNLENBQUMscUJBQXFCLENBQUM7Q0FDbkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ3JlYXRlcyBrZXlzIGZvciBgcHJpdmF0ZWAgcHJvcGVydGllcyBvbiBleHBvc2VkIG9iamVjdHMgdG8gbWluaW1pemUgaW50ZXJhY3Rpb25zIHdpdGggb3RoZXIgY29kZWJhc2VzLlxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGUobmFtZSkge1xuICAvLyBgU3ltYm9sYCBpbXBsZW1lbnRhdGlvbiBpcyBicm9rZW4gaW4gQ2hyb21lIDM5LjAuMjE3MSwgZG8gbm90IHVzZSB0aGVtIGV2ZW4gaWYgdGhleSBhcmUgYXZhaWxhYmxlXG4gIHJldHVybiAnX3pvbmUkJyArIG5hbWU7XG59XG5cbmV4cG9ydCB2YXIgY29tbW9uID0ge1xuICBhZGRFdmVudExpc3RlbmVyOiBjcmVhdGUoJ2FkZEV2ZW50TGlzdGVuZXInKSxcbiAgcmVtb3ZlRXZlbnRMaXN0ZW5lcjogY3JlYXRlKCdyZW1vdmVFdmVudExpc3RlbmVyJylcbn07XG4iXX0=
|
695
|
+
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1307
696
|
|
1308
697
|
/***/ },
|
1309
|
-
/*
|
698
|
+
/* 2 */
|
1310
699
|
/***/ function(module, exports, __webpack_require__) {
|
1311
700
|
|
1312
|
-
|
1313
|
-
|
1314
|
-
|
1315
|
-
|
1316
|
-
|
1317
|
-
|
1318
|
-
|
1319
|
-
|
1320
|
-
|
1321
|
-
|
1322
|
-
|
1323
|
-
|
1324
|
-
|
1325
|
-
|
1326
|
-
};
|
1327
|
-
}
|
1328
|
-
else {
|
1329
|
-
exports.bindPromiseFn = function (delegate) {
|
1330
|
-
return function () {
|
1331
|
-
return _patchThenable(delegate.apply(this, arguments));
|
1332
|
-
};
|
1333
|
-
};
|
1334
|
-
}
|
1335
|
-
function _patchPromiseFnsOnObject(objectPath, fnNames) {
|
1336
|
-
var obj = global;
|
1337
|
-
var exists = objectPath.every(function (segment) {
|
1338
|
-
obj = obj[segment];
|
1339
|
-
return obj;
|
1340
|
-
});
|
1341
|
-
if (!exists) {
|
1342
|
-
return;
|
701
|
+
"use strict";
|
702
|
+
var utils_1 = __webpack_require__(3);
|
703
|
+
var WTF_ISSUE_555 = 'Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video';
|
704
|
+
var NO_EVENT_TARGET = 'ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex'.split(',');
|
705
|
+
var EVENT_TARGET = 'EventTarget';
|
706
|
+
function eventTargetPatch(_global) {
|
707
|
+
var apis = [];
|
708
|
+
var isWtf = _global['wtf'];
|
709
|
+
if (isWtf) {
|
710
|
+
// Workaround for: https://github.com/google/tracing-framework/issues/555
|
711
|
+
apis = WTF_ISSUE_555.split(',').map(function (v) { return 'HTML' + v + 'Element'; }).concat(NO_EVENT_TARGET);
|
712
|
+
}
|
713
|
+
else if (_global[EVENT_TARGET]) {
|
714
|
+
apis.push(EVENT_TARGET);
|
1343
715
|
}
|
1344
|
-
|
1345
|
-
|
1346
|
-
if
|
1347
|
-
|
1348
|
-
|
1349
|
-
|
1350
|
-
|
1351
|
-
|
1352
|
-
var then = thenable.then;
|
1353
|
-
thenable.then = function () {
|
1354
|
-
var args = utils.bindArguments(arguments);
|
1355
|
-
var nextThenable = then.apply(thenable, args);
|
1356
|
-
return _patchThenable(nextThenable);
|
1357
|
-
};
|
1358
|
-
var ocatch = thenable.catch;
|
1359
|
-
thenable.catch = function () {
|
1360
|
-
var args = utils.bindArguments(arguments);
|
1361
|
-
var nextThenable = ocatch.apply(thenable, args);
|
1362
|
-
return _patchThenable(nextThenable);
|
1363
|
-
};
|
1364
|
-
return thenable;
|
1365
|
-
}
|
1366
|
-
function apply() {
|
1367
|
-
// Patch .then() and .catch() on native Promises to execute callbacks in the zone where
|
1368
|
-
// those functions are called.
|
1369
|
-
if (global.Promise) {
|
1370
|
-
utils.patchPrototype(Promise.prototype, [
|
1371
|
-
'then',
|
1372
|
-
'catch'
|
1373
|
-
]);
|
1374
|
-
// Patch browser APIs that return a Promise
|
1375
|
-
var patchFns = [
|
1376
|
-
// fetch
|
1377
|
-
[[], ['fetch']],
|
1378
|
-
[['Response', 'prototype'], ['arrayBuffer', 'blob', 'json', 'text']]
|
1379
|
-
];
|
1380
|
-
patchFns.forEach(function (objPathAndFns) {
|
1381
|
-
_patchPromiseFnsOnObject(objPathAndFns[0], objPathAndFns[1]);
|
1382
|
-
});
|
716
|
+
else {
|
717
|
+
// Note: EventTarget is not available in all browsers,
|
718
|
+
// if it's not available, we instead patch the APIs in the IDL that inherit from EventTarget
|
719
|
+
apis = NO_EVENT_TARGET;
|
720
|
+
}
|
721
|
+
for (var i = 0; i < apis.length; i++) {
|
722
|
+
var type = _global[apis[i]];
|
723
|
+
utils_1.patchEventTargetMethods(type && type.prototype);
|
1383
724
|
}
|
1384
725
|
}
|
1385
|
-
exports.
|
1386
|
-
|
1387
|
-
apply: apply,
|
1388
|
-
bindPromiseFn: exports.bindPromiseFn
|
1389
|
-
};
|
1390
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvbWlzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9wYXRjaC9wcm9taXNlLnRzIl0sIm5hbWVzIjpbIl9wYXRjaFByb21pc2VGbnNPbk9iamVjdCIsIl9wYXRjaFRoZW5hYmxlIiwiYXBwbHkiXSwibWFwcGluZ3MiOiJBQUFBLElBQVksS0FBSyxXQUFNLFVBQVUsQ0FBQyxDQUFBO0FBdUJsQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNuQixxQkFBYSxHQUFHLFVBQVUsUUFBUTtRQUNoQyxNQUFNLENBQUM7WUFDTCxJQUFJLGVBQWUsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztZQUV0RCwrREFBK0Q7WUFDL0QsRUFBRSxDQUFDLENBQUMsZUFBZSxZQUFZLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZDLE1BQU0sQ0FBQyxlQUFlLENBQUM7WUFDekIsQ0FBQztZQUVELHNEQUFzRDtZQUN0RCxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBUyxPQUFPLEVBQUUsTUFBTTtnQkFDekMsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDeEMsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDO0FBQUMsSUFBSSxDQUFDLENBQUM7SUFDTixxQkFBYSxHQUFHLFVBQVUsUUFBUTtRQUNoQyxNQUFNLENBQUM7WUFDTCxNQUFNLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUdELGtDQUFrQyxVQUFVLEVBQUUsT0FBTztJQUNuREEsSUFBSUEsR0FBR0EsR0FBR0EsTUFBTUEsQ0FBQ0E7SUFFakJBLElBQUlBLE1BQU1BLEdBQUdBLFVBQVVBLENBQUNBLEtBQUtBLENBQUNBLFVBQVVBLE9BQU9BO1FBQzdDLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkIsTUFBTSxDQUFDLEdBQUcsQ0FBQztJQUNiLENBQUMsQ0FBQ0EsQ0FBQ0E7SUFFSEEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDWkEsTUFBTUEsQ0FBQ0E7SUFDVEEsQ0FBQ0E7SUFFREEsT0FBT0EsQ0FBQ0EsT0FBT0EsQ0FBQ0EsVUFBVUEsSUFBSUE7UUFDNUIsSUFBSSxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25CLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDUCxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcscUJBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQyxDQUFDO0lBQ0gsQ0FBQyxDQUFDQSxDQUFDQTtBQUNMQSxDQUFDQTtBQUVELHdCQUF3QixRQUFRO0lBQzlCQyxJQUFJQSxJQUFJQSxHQUFHQSxRQUFRQSxDQUFDQSxJQUFJQSxDQUFDQTtJQUN6QkEsUUFBUUEsQ0FBQ0EsSUFBSUEsR0FBR0E7UUFDZCxJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzlDLE1BQU0sQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdEMsQ0FBQyxDQUFDQTtJQUVGQSxJQUFJQSxNQUFNQSxHQUFHQSxRQUFRQSxDQUFDQSxLQUFLQSxDQUFDQTtJQUM1QkEsUUFBUUEsQ0FBQ0EsS0FBS0EsR0FBR0E7UUFDZixJQUFJLElBQUksR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLElBQUksWUFBWSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2hELE1BQU0sQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdEMsQ0FBQyxDQUFDQTtJQUVGQSxNQUFNQSxDQUFDQSxRQUFRQSxDQUFDQTtBQUNsQkEsQ0FBQ0E7QUFHRDtJQUNFQyx1RkFBdUZBO0lBQ3ZGQSw4QkFBOEJBO0lBQzlCQSxFQUFFQSxDQUFDQSxDQUFDQSxNQUFNQSxDQUFDQSxPQUFPQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUNuQkEsS0FBS0EsQ0FBQ0EsY0FBY0EsQ0FBQ0EsT0FBT0EsQ0FBQ0EsU0FBU0EsRUFBRUE7WUFDdENBLE1BQU1BO1lBQ05BLE9BQU9BO1NBQ1JBLENBQUNBLENBQUNBO1FBRUhBLDJDQUEyQ0E7UUFDM0NBLElBQUlBLFFBQVFBLEdBQUdBO1lBQ2JBLFFBQVFBO1lBQ1JBLENBQUNBLEVBQUVBLEVBQUVBLENBQUNBLE9BQU9BLENBQUNBLENBQUNBO1lBQ2ZBLENBQUNBLENBQUNBLFVBQVVBLEVBQUVBLFdBQVdBLENBQUNBLEVBQUVBLENBQUNBLGFBQWFBLEVBQUVBLE1BQU1BLEVBQUVBLE1BQU1BLEVBQUVBLE1BQU1BLENBQUNBLENBQUNBO1NBQ3JFQSxDQUFDQTtRQUVGQSxRQUFRQSxDQUFDQSxPQUFPQSxDQUFDQSxVQUFTQSxhQUFhQTtZQUNyQyx3QkFBd0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0QsQ0FBQyxDQUFDQSxDQUFDQTtJQUNMQSxDQUFDQTtBQUNIQSxDQUFDQTtBQXBCZSxhQUFLLFFBb0JwQixDQUFBO0FBRUQsTUFBTSxDQUFDLE9BQU8sR0FBRztJQUNmLEtBQUssRUFBRSxLQUFLO0lBQ1osYUFBYSxFQUFFLHFCQUFhO0NBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuLi91dGlscyc7XG5cbi8qXG4gKiBQYXRjaGVzIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgUHJvbWlzZS1saWtlIGluc3RhbmNlLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gbXVzdCBiZSB1c2VkIHdoZW4gZWl0aGVyOlxuICogLSBOYXRpdmUgUHJvbWlzZXMgYXJlIG5vdCBhdmFpbGFibGUsXG4gKiAtIFRoZSBmdW5jdGlvbiByZXR1cm5zIGEgUHJvbWlzZS1saWtlIG9iamVjdC5cbiAqXG4gKiBUaGlzIGlzIHJlcXVpcmVkIGJlY2F1c2Ugem9uZXMgcmVseSBvbiBhIFByb21pc2UgbW9ua2V5IHBhdGNoIHRoYXQgY291bGQgbm90IGJlIGFwcGxpZWQgd2hlblxuICogUHJvbWlzZSBpcyBub3QgbmF0aXZlbHkgYXZhaWxhYmxlIG9yIHdoZW4gdGhlIHJldHVybmVkIG9iamVjdCBpcyBub3QgYW4gaW5zdGFuY2Ugb2YgUHJvbWlzZS5cbiAqXG4gKiBOb3RlIHRoYXQgY2FsbGluZyBgYmluZFByb21pc2VGbmAgb24gYSBmdW5jdGlvbiB0aGF0IHJldHVybnMgYSBuYXRpdmUgUHJvbWlzZSB3aWxsIGFsc28gd29ya1xuICogd2l0aCBtaW5pbWFsIG92ZXJoZWFkLlxuICpcbiAqIGBgYFxuICogdmFyIGJvdW5kRnVuY3Rpb24gPSBiaW5kUHJvbWlzZUZuKEZ1bmN0aW9uUmV0dXJuaW5nQVByb21pc2UpO1xuICpcbiAqIGJvdW5kRnVuY3Rpb24udGhlbihzdWNjZXNzSGFuZGxlciwgZXJyb3JIYW5kbGVyKTtcbiAqIGBgYFxuICovXG5leHBvcnQgdmFyIGJpbmRQcm9taXNlRm47XG5cbmlmIChnbG9iYWwuUHJvbWlzZSkge1xuICBiaW5kUHJvbWlzZUZuID0gZnVuY3Rpb24gKGRlbGVnYXRlKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uKCkge1xuICAgICAgdmFyIGRlbGVnYXRlUHJvbWlzZSA9IGRlbGVnYXRlLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG5cbiAgICAgIC8vIGlmIHRoZSBkZWxlZ2F0ZSByZXR1cm5lZCBhbiBpbnN0YW5jZSBvZiBQcm9taXNlLCBmb3J3YXJkIGl0LlxuICAgICAgaWYgKGRlbGVnYXRlUHJvbWlzZSBpbnN0YW5jZW9mIFByb21pc2UpIHtcbiAgICAgICAgcmV0dXJuIGRlbGVnYXRlUHJvbWlzZTtcbiAgICAgIH1cblxuICAgICAgLy8gT3RoZXJ3aXNlIHdyYXAgdGhlIFByb21pc2UtbGlrZSBpbiBhIGdsb2JhbCBQcm9taXNlXG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGRlbGVnYXRlUHJvbWlzZS50aGVuKHJlc29sdmUsIHJlamVjdCk7XG4gICAgICB9KTtcbiAgICB9O1xuICB9O1xufSBlbHNlIHtcbiAgYmluZFByb21pc2VGbiA9IGZ1bmN0aW9uIChkZWxlZ2F0ZSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gX3BhdGNoVGhlbmFibGUoZGVsZWdhdGUuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG4gICAgfTtcbiAgfTtcbn1cblxuXG5mdW5jdGlvbiBfcGF0Y2hQcm9taXNlRm5zT25PYmplY3Qob2JqZWN0UGF0aCwgZm5OYW1lcykge1xuICB2YXIgb2JqID0gZ2xvYmFsO1xuXG4gIHZhciBleGlzdHMgPSBvYmplY3RQYXRoLmV2ZXJ5KGZ1bmN0aW9uIChzZWdtZW50KSB7XG4gICAgb2JqID0gb2JqW3NlZ21lbnRdO1xuICAgIHJldHVybiBvYmo7XG4gIH0pO1xuXG4gIGlmICghZXhpc3RzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgZm5OYW1lcy5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgdmFyIGZuID0gb2JqW25hbWVdO1xuICAgIGlmIChmbikge1xuICAgICAgb2JqW25hbWVdID0gYmluZFByb21pc2VGbihmbik7XG4gICAgfVxuICB9KTtcbn1cblxuZnVuY3Rpb24gX3BhdGNoVGhlbmFibGUodGhlbmFibGUpIHtcbiAgdmFyIHRoZW4gPSB0aGVuYWJsZS50aGVuO1xuICB0aGVuYWJsZS50aGVuID0gZnVuY3Rpb24gKCkge1xuICAgIHZhciBhcmdzID0gdXRpbHMuYmluZEFyZ3VtZW50cyhhcmd1bWVudHMpO1xuICAgIHZhciBuZXh0VGhlbmFibGUgPSB0aGVuLmFwcGx5KHRoZW5hYmxlLCBhcmdzKTtcbiAgICByZXR1cm4gX3BhdGNoVGhlbmFibGUobmV4dFRoZW5hYmxlKTtcbiAgfTtcblxuICB2YXIgb2NhdGNoID0gdGhlbmFibGUuY2F0Y2g7XG4gIHRoZW5hYmxlLmNhdGNoID0gZnVuY3Rpb24gKCkge1xuICAgIHZhciBhcmdzID0gdXRpbHMuYmluZEFyZ3VtZW50cyhhcmd1bWVudHMpO1xuICAgIHZhciBuZXh0VGhlbmFibGUgPSBvY2F0Y2guYXBwbHkodGhlbmFibGUsIGFyZ3MpO1xuICAgIHJldHVybiBfcGF0Y2hUaGVuYWJsZShuZXh0VGhlbmFibGUpO1xuICB9O1xuXG4gIHJldHVybiB0aGVuYWJsZTtcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gYXBwbHkoKSB7XG4gIC8vIFBhdGNoIC50aGVuKCkgYW5kIC5jYXRjaCgpIG9uIG5hdGl2ZSBQcm9taXNlcyB0byBleGVjdXRlIGNhbGxiYWNrcyBpbiB0aGUgem9uZSB3aGVyZVxuICAvLyB0aG9zZSBmdW5jdGlvbnMgYXJlIGNhbGxlZC5cbiAgaWYgKGdsb2JhbC5Qcm9taXNlKSB7XG4gICAgdXRpbHMucGF0Y2hQcm90b3R5cGUoUHJvbWlzZS5wcm90b3R5cGUsIFtcbiAgICAgICd0aGVuJyxcbiAgICAgICdjYXRjaCdcbiAgICBdKTtcblxuICAgIC8vIFBhdGNoIGJyb3dzZXIgQVBJcyB0aGF0IHJldHVybiBhIFByb21pc2VcbiAgICB2YXIgcGF0Y2hGbnMgPSBbXG4gICAgICAvLyBmZXRjaFxuICAgICAgW1tdLCBbJ2ZldGNoJ11dLFxuICAgICAgW1snUmVzcG9uc2UnLCAncHJvdG90eXBlJ10sIFsnYXJyYXlCdWZmZXInLCAnYmxvYicsICdqc29uJywgJ3RleHQnXV1cbiAgICBdO1xuXG4gICAgcGF0Y2hGbnMuZm9yRWFjaChmdW5jdGlvbihvYmpQYXRoQW5kRm5zKSB7XG4gICAgICBfcGF0Y2hQcm9taXNlRm5zT25PYmplY3Qob2JqUGF0aEFuZEZuc1swXSwgb2JqUGF0aEFuZEZuc1sxXSk7XG4gICAgfSk7XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGFwcGx5OiBhcHBseSxcbiAgYmluZFByb21pc2VGbjogYmluZFByb21pc2VGblxufTtcbiJdfQ==
|
1391
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
726
|
+
exports.eventTargetPatch = eventTargetPatch;
|
727
|
+
|
1392
728
|
|
1393
729
|
/***/ },
|
1394
|
-
/*
|
1395
|
-
/***/ function(module, exports
|
730
|
+
/* 3 */
|
731
|
+
/***/ function(module, exports) {
|
1396
732
|
|
1397
|
-
/* WEBPACK VAR INJECTION */(function(global) {
|
1398
|
-
|
733
|
+
/* WEBPACK VAR INJECTION */(function(global) {/**
|
734
|
+
* Suppress closure compiler errors about unknown 'process' variable
|
735
|
+
* @fileoverview
|
736
|
+
* @suppress {undefinedVars}
|
737
|
+
*/
|
738
|
+
"use strict";
|
739
|
+
exports.zoneSymbol = Zone['__symbol__'];
|
740
|
+
var _global = typeof window == 'undefined' ? global : window;
|
741
|
+
function bindArguments(args, source) {
|
1399
742
|
for (var i = args.length - 1; i >= 0; i--) {
|
1400
743
|
if (typeof args[i] === 'function') {
|
1401
|
-
args[i] =
|
744
|
+
args[i] = Zone.current.wrap(args[i], source + '_' + i);
|
1402
745
|
}
|
1403
746
|
}
|
1404
747
|
return args;
|
1405
748
|
}
|
1406
749
|
exports.bindArguments = bindArguments;
|
1407
750
|
;
|
1408
|
-
function patchPrototype(
|
1409
|
-
|
1410
|
-
|
751
|
+
function patchPrototype(prototype, fnNames) {
|
752
|
+
var source = prototype.constructor['name'];
|
753
|
+
var _loop_1 = function(i) {
|
754
|
+
var name_1 = fnNames[i];
|
755
|
+
var delegate = prototype[name_1];
|
1411
756
|
if (delegate) {
|
1412
|
-
|
1413
|
-
return
|
1414
|
-
|
757
|
+
prototype[name_1] = (function (delegate) {
|
758
|
+
return function () {
|
759
|
+
return delegate.apply(this, bindArguments(arguments, source + '.' + name_1));
|
760
|
+
};
|
761
|
+
})(delegate);
|
1415
762
|
}
|
1416
|
-
}
|
763
|
+
};
|
764
|
+
for (var i = 0; i < fnNames.length; i++) {
|
765
|
+
_loop_1(i);
|
766
|
+
}
|
1417
767
|
}
|
1418
768
|
exports.patchPrototype = patchPrototype;
|
1419
769
|
;
|
1420
|
-
|
1421
|
-
|
1422
|
-
|
1423
|
-
exports.isWebWorker = isWebWorker;
|
770
|
+
exports.isWebWorker = (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope);
|
771
|
+
exports.isNode = (typeof process !== 'undefined' && {}.toString.call(process) === '[object process]');
|
772
|
+
exports.isBrowser = !exports.isNode && !exports.isWebWorker && !!(typeof window !== 'undefined' && window['HTMLElement']);
|
1424
773
|
function patchProperty(obj, prop) {
|
1425
774
|
var desc = Object.getOwnPropertyDescriptor(obj, prop) || {
|
1426
775
|
enumerable: true,
|
@@ -1441,8 +790,14 @@ THE SOFTWARE.
|
|
1441
790
|
this.removeEventListener(eventName, this[_prop]);
|
1442
791
|
}
|
1443
792
|
if (typeof fn === 'function') {
|
1444
|
-
|
1445
|
-
|
793
|
+
var wrapFn = function (event) {
|
794
|
+
var result;
|
795
|
+
result = fn.apply(this, arguments);
|
796
|
+
if (result != undefined && !result)
|
797
|
+
event.preventDefault();
|
798
|
+
};
|
799
|
+
this[_prop] = wrapFn;
|
800
|
+
this.addEventListener(eventName, wrapFn, false);
|
1446
801
|
}
|
1447
802
|
else {
|
1448
803
|
this[_prop] = null;
|
@@ -1455,84 +810,146 @@ THE SOFTWARE.
|
|
1455
810
|
}
|
1456
811
|
exports.patchProperty = patchProperty;
|
1457
812
|
;
|
1458
|
-
function
|
1459
|
-
|
1460
|
-
|
1461
|
-
|
1462
|
-
|
813
|
+
function patchOnProperties(obj, properties) {
|
814
|
+
var onProperties = [];
|
815
|
+
for (var prop in obj) {
|
816
|
+
if (prop.substr(0, 2) == 'on') {
|
817
|
+
onProperties.push(prop);
|
1463
818
|
}
|
1464
|
-
|
1465
|
-
|
1466
|
-
|
1467
|
-
|
1468
|
-
|
1469
|
-
|
1470
|
-
|
1471
|
-
|
819
|
+
}
|
820
|
+
for (var j = 0; j < onProperties.length; j++) {
|
821
|
+
patchProperty(obj, onProperties[j]);
|
822
|
+
}
|
823
|
+
if (properties) {
|
824
|
+
for (var i = 0; i < properties.length; i++) {
|
825
|
+
patchProperty(obj, 'on' + properties[i]);
|
826
|
+
}
|
827
|
+
}
|
1472
828
|
}
|
1473
|
-
exports.
|
829
|
+
exports.patchOnProperties = patchOnProperties;
|
1474
830
|
;
|
1475
|
-
var
|
1476
|
-
var
|
1477
|
-
|
1478
|
-
|
1479
|
-
|
1480
|
-
|
1481
|
-
|
1482
|
-
|
1483
|
-
|
1484
|
-
var
|
1485
|
-
|
1486
|
-
|
1487
|
-
|
1488
|
-
|
1489
|
-
|
1490
|
-
|
1491
|
-
|
1492
|
-
|
1493
|
-
}
|
1494
|
-
else {
|
1495
|
-
fn = handler;
|
831
|
+
var EVENT_TASKS = exports.zoneSymbol('eventTasks');
|
832
|
+
var ADD_EVENT_LISTENER = 'addEventListener';
|
833
|
+
var REMOVE_EVENT_LISTENER = 'removeEventListener';
|
834
|
+
var SYMBOL_ADD_EVENT_LISTENER = exports.zoneSymbol(ADD_EVENT_LISTENER);
|
835
|
+
var SYMBOL_REMOVE_EVENT_LISTENER = exports.zoneSymbol(REMOVE_EVENT_LISTENER);
|
836
|
+
function findExistingRegisteredTask(target, handler, name, capture, remove) {
|
837
|
+
var eventTasks = target[EVENT_TASKS];
|
838
|
+
if (eventTasks) {
|
839
|
+
for (var i = 0; i < eventTasks.length; i++) {
|
840
|
+
var eventTask = eventTasks[i];
|
841
|
+
var data = eventTask.data;
|
842
|
+
if (data.handler === handler
|
843
|
+
&& data.useCapturing === capture
|
844
|
+
&& data.eventName === name) {
|
845
|
+
if (remove) {
|
846
|
+
eventTasks.splice(i, 1);
|
847
|
+
}
|
848
|
+
return eventTask;
|
1496
849
|
}
|
1497
|
-
handler[originalFnKey] = fn;
|
1498
|
-
handler[boundFnsKey] = handler[boundFnsKey] || {};
|
1499
|
-
handler[boundFnsKey][eventType] = handler[boundFnsKey][eventType] || global.zone.bind(fn);
|
1500
|
-
arguments[1] = handler[boundFnsKey][eventType];
|
1501
|
-
}
|
1502
|
-
// - Inside a Web Worker, `this` is undefined, the context is `global` (= `self`)
|
1503
|
-
// - When `addEventListener` is called on the global context in strict mode, `this` is undefined
|
1504
|
-
// see https://github.com/angular/zone.js/issues/190
|
1505
|
-
var target = this || global;
|
1506
|
-
return global.zone.addEventListener.apply(target, arguments);
|
1507
|
-
};
|
1508
|
-
// This is required for the removeEventListener hook on the root zone.
|
1509
|
-
obj[keys.common.removeEventListener] = obj.removeEventListener;
|
1510
|
-
obj.removeEventListener = function (eventName, handler, useCapturing) {
|
1511
|
-
var eventType = eventName + (useCapturing ? '$capturing' : '$bubbling');
|
1512
|
-
if (handler && handler[boundFnsKey] && handler[boundFnsKey][eventType]) {
|
1513
|
-
var _bound = handler[boundFnsKey];
|
1514
|
-
arguments[1] = _bound[eventType];
|
1515
|
-
delete _bound[eventType];
|
1516
|
-
global.zone.dequeueTask(handler[originalFnKey]);
|
1517
850
|
}
|
1518
|
-
|
1519
|
-
|
1520
|
-
|
1521
|
-
|
1522
|
-
|
1523
|
-
|
851
|
+
}
|
852
|
+
return null;
|
853
|
+
}
|
854
|
+
function attachRegisteredEvent(target, eventTask) {
|
855
|
+
var eventTasks = target[EVENT_TASKS];
|
856
|
+
if (!eventTasks) {
|
857
|
+
eventTasks = target[EVENT_TASKS] = [];
|
858
|
+
}
|
859
|
+
eventTasks.push(eventTask);
|
860
|
+
}
|
861
|
+
function scheduleEventListener(eventTask) {
|
862
|
+
var meta = eventTask.data;
|
863
|
+
attachRegisteredEvent(meta.target, eventTask);
|
864
|
+
return meta.target[SYMBOL_ADD_EVENT_LISTENER](meta.eventName, eventTask.invoke, meta.useCapturing);
|
865
|
+
}
|
866
|
+
function cancelEventListener(eventTask) {
|
867
|
+
var meta = eventTask.data;
|
868
|
+
findExistingRegisteredTask(meta.target, eventTask.invoke, meta.eventName, meta.useCapturing, true);
|
869
|
+
meta.target[SYMBOL_REMOVE_EVENT_LISTENER](meta.eventName, eventTask.invoke, meta.useCapturing);
|
870
|
+
}
|
871
|
+
function zoneAwareAddEventListener(self, args) {
|
872
|
+
var eventName = args[0];
|
873
|
+
var handler = args[1];
|
874
|
+
var useCapturing = args[2] || false;
|
875
|
+
// - Inside a Web Worker, `this` is undefined, the context is `global`
|
876
|
+
// - When `addEventListener` is called on the global context in strict mode, `this` is undefined
|
877
|
+
// see https://github.com/angular/zone.js/issues/190
|
878
|
+
var target = self || _global;
|
879
|
+
var delegate = null;
|
880
|
+
if (typeof handler == 'function') {
|
881
|
+
delegate = handler;
|
882
|
+
}
|
883
|
+
else if (handler && handler.handleEvent) {
|
884
|
+
delegate = function (event) { return handler.handleEvent(event); };
|
885
|
+
}
|
886
|
+
var validZoneHandler = false;
|
887
|
+
try {
|
888
|
+
// In cross site contexts (such as WebDriver frameworks like Selenium),
|
889
|
+
// accessing the handler object here will cause an exception to be thrown which
|
890
|
+
// will fail tests prematurely.
|
891
|
+
validZoneHandler = handler && handler.toString() === "[object FunctionWrapper]";
|
892
|
+
}
|
893
|
+
catch (e) {
|
894
|
+
// Returning nothing here is fine, because objects in a cross-site context are unusable
|
895
|
+
return;
|
896
|
+
}
|
897
|
+
// Ignore special listeners of IE11 & Edge dev tools, see https://github.com/angular/zone.js/issues/150
|
898
|
+
if (!delegate || validZoneHandler) {
|
899
|
+
return target[SYMBOL_ADD_EVENT_LISTENER](eventName, handler, useCapturing);
|
900
|
+
}
|
901
|
+
var eventTask = findExistingRegisteredTask(target, handler, eventName, useCapturing, false);
|
902
|
+
if (eventTask) {
|
903
|
+
// we already registered, so this will have noop.
|
904
|
+
return target[SYMBOL_ADD_EVENT_LISTENER](eventName, eventTask.invoke, useCapturing);
|
905
|
+
}
|
906
|
+
var zone = Zone.current;
|
907
|
+
var source = target.constructor['name'] + '.addEventListener:' + eventName;
|
908
|
+
var data = {
|
909
|
+
target: target,
|
910
|
+
eventName: eventName,
|
911
|
+
name: eventName,
|
912
|
+
useCapturing: useCapturing,
|
913
|
+
handler: handler
|
1524
914
|
};
|
915
|
+
zone.scheduleEventTask(source, delegate, data, scheduleEventListener, cancelEventListener);
|
916
|
+
}
|
917
|
+
function zoneAwareRemoveEventListener(self, args) {
|
918
|
+
var eventName = args[0];
|
919
|
+
var handler = args[1];
|
920
|
+
var useCapturing = args[2] || false;
|
921
|
+
// - Inside a Web Worker, `this` is undefined, the context is `global`
|
922
|
+
// - When `addEventListener` is called on the global context in strict mode, `this` is undefined
|
923
|
+
// see https://github.com/angular/zone.js/issues/190
|
924
|
+
var target = self || _global;
|
925
|
+
var eventTask = findExistingRegisteredTask(target, handler, eventName, useCapturing, true);
|
926
|
+
if (eventTask) {
|
927
|
+
eventTask.zone.cancelTask(eventTask);
|
928
|
+
}
|
929
|
+
else {
|
930
|
+
target[SYMBOL_REMOVE_EVENT_LISTENER](eventName, handler, useCapturing);
|
931
|
+
}
|
932
|
+
}
|
933
|
+
function patchEventTargetMethods(obj) {
|
934
|
+
if (obj && obj.addEventListener) {
|
935
|
+
patchMethod(obj, ADD_EVENT_LISTENER, function () { return zoneAwareAddEventListener; });
|
936
|
+
patchMethod(obj, REMOVE_EVENT_LISTENER, function () { return zoneAwareRemoveEventListener; });
|
937
|
+
return true;
|
938
|
+
}
|
939
|
+
else {
|
940
|
+
return false;
|
941
|
+
}
|
1525
942
|
}
|
1526
943
|
exports.patchEventTargetMethods = patchEventTargetMethods;
|
1527
944
|
;
|
1528
|
-
var originalInstanceKey =
|
945
|
+
var originalInstanceKey = exports.zoneSymbol('originalInstance');
|
1529
946
|
// wrap some native API on `window`
|
1530
947
|
function patchClass(className) {
|
1531
|
-
var OriginalClass =
|
948
|
+
var OriginalClass = _global[className];
|
1532
949
|
if (!OriginalClass)
|
1533
950
|
return;
|
1534
|
-
|
1535
|
-
var a = bindArguments(arguments);
|
951
|
+
_global[className] = function () {
|
952
|
+
var a = bindArguments(arguments, className);
|
1536
953
|
switch (a.length) {
|
1537
954
|
case 0:
|
1538
955
|
this[originalInstanceKey] = new OriginalClass();
|
@@ -1549,23 +966,23 @@ THE SOFTWARE.
|
|
1549
966
|
case 4:
|
1550
967
|
this[originalInstanceKey] = new OriginalClass(a[0], a[1], a[2], a[3]);
|
1551
968
|
break;
|
1552
|
-
default: throw new Error('
|
969
|
+
default: throw new Error('Arg list too long.');
|
1553
970
|
}
|
1554
971
|
};
|
1555
|
-
var instance = new OriginalClass();
|
972
|
+
var instance = new OriginalClass(function () { });
|
1556
973
|
var prop;
|
1557
974
|
for (prop in instance) {
|
1558
975
|
(function (prop) {
|
1559
976
|
if (typeof instance[prop] === 'function') {
|
1560
|
-
|
977
|
+
_global[className].prototype[prop] = function () {
|
1561
978
|
return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments);
|
1562
979
|
};
|
1563
980
|
}
|
1564
981
|
else {
|
1565
|
-
Object.defineProperty(
|
982
|
+
Object.defineProperty(_global[className].prototype, prop, {
|
1566
983
|
set: function (fn) {
|
1567
984
|
if (typeof fn === 'function') {
|
1568
|
-
this[originalInstanceKey][prop] =
|
985
|
+
this[originalInstanceKey][prop] = Zone.current.wrap(fn, className + '.' + prop);
|
1569
986
|
}
|
1570
987
|
else {
|
1571
988
|
this[originalInstanceKey][prop] = fn;
|
@@ -1580,286 +997,60 @@ THE SOFTWARE.
|
|
1580
997
|
}
|
1581
998
|
for (prop in OriginalClass) {
|
1582
999
|
if (prop !== 'prototype' && OriginalClass.hasOwnProperty(prop)) {
|
1583
|
-
|
1000
|
+
_global[className][prop] = OriginalClass[prop];
|
1584
1001
|
}
|
1585
1002
|
}
|
1586
1003
|
}
|
1587
1004
|
exports.patchClass = patchClass;
|
1588
1005
|
;
|
1589
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdXRpbHMudHMiXSwibmFtZXMiOlsiYmluZEFyZ3VtZW50cyIsInBhdGNoUHJvdG90eXBlIiwiaXNXZWJXb3JrZXIiLCJwYXRjaFByb3BlcnR5IiwicGF0Y2hQcm9wZXJ0aWVzIiwicGF0Y2hFdmVudFRhcmdldE1ldGhvZHMiLCJwYXRjaENsYXNzIl0sIm1hcHBpbmdzIjoiQUFBQSxJQUFZLElBQUksV0FBTSxRQUFRLENBQUMsQ0FBQTtBQUUvQix1QkFBOEIsSUFBSTtJQUNoQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsQ0FBQ0EsQ0FBQ0EsR0FBR0EsSUFBSUEsQ0FBQ0EsTUFBTUEsR0FBR0EsQ0FBQ0EsRUFBRUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsRUFBRUEsQ0FBQ0EsRUFBRUEsRUFBRUEsQ0FBQ0E7UUFDMUNBLEVBQUVBLENBQUNBLENBQUNBLE9BQU9BLElBQUlBLENBQUNBLENBQUNBLENBQUNBLEtBQUtBLFVBQVVBLENBQUNBLENBQUNBLENBQUNBO1lBQ2xDQSxJQUFJQSxDQUFDQSxDQUFDQSxDQUFDQSxHQUFHQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxJQUFJQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUN0Q0EsQ0FBQ0E7SUFDSEEsQ0FBQ0E7SUFDREEsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0E7QUFDZEEsQ0FBQ0E7QUFQZSxxQkFBYSxnQkFPNUIsQ0FBQTtBQUFBLENBQUM7QUFFRix3QkFBK0IsR0FBRyxFQUFFLE9BQU87SUFDekNDLE9BQU9BLENBQUNBLE9BQU9BLENBQUNBLFVBQVVBLElBQUlBO1FBQzVCLElBQUksUUFBUSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ2IsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHO2dCQUNWLE1BQU0s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O0FBQ0hBLENBQUNBO0FBL0NlLGtCQUFVLGFBK0N6QixDQUFBO0FBQUEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGtleXMgZnJvbSAnLi9rZXlzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGJpbmRBcmd1bWVudHMoYXJncykge1xuICBmb3IgKHZhciBpID0gYXJncy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIGlmICh0eXBlb2YgYXJnc1tpXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgYXJnc1tpXSA9IGdsb2JhbC56b25lLmJpbmQoYXJnc1tpXSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBhcmdzO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoUHJvdG90eXBlKG9iaiwgZm5OYW1lcykge1xuICBmbk5hbWVzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB2YXIgZGVsZWdhdGUgPSBvYmpbbmFtZV07XG4gICAgaWYgKGRlbGVnYXRlKSB7XG4gICAgICBvYmpbbmFtZV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBkZWxlZ2F0ZS5hcHBseSh0aGlzLCBiaW5kQXJndW1lbnRzKGFyZ3VtZW50cykpO1xuICAgICAgfTtcbiAgICB9XG4gIH0pO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzV2ViV29ya2VyKCkge1xuICByZXR1cm4gKHR5cGVvZiBkb2N1bWVudCA9PT0gXCJ1bmRlZmluZWRcIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXRjaFByb3BlcnR5KG9iaiwgcHJvcCkge1xuICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iob2JqLCBwcm9wKSB8fCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfTtcblxuICAvLyBBIHByb3BlcnR5IGRlc2NyaXB0b3IgY2Fubm90IGhhdmUgZ2V0dGVyL3NldHRlciBhbmQgYmUgd3JpdGFibGVcbiAgLy8gZGVsZXRpbmcgdGhlIHdyaXRhYmxlIGFuZCB2YWx1ZSBwcm9wZXJ0aWVzIGF2b2lkcyB0aGlzIGVycm9yOlxuICAvL1xuICAvLyBUeXBlRXJyb3I6IHByb3BlcnR5IGRlc2NyaXB0b3JzIG11c3Qgbm90IHNwZWNpZnkgYSB2YWx1ZSBvciBiZSB3cml0YWJsZSB3aGVuIGFcbiAgLy8gZ2V0dGVyIG9yIHNldHRlciBoYXMgYmVlbiBzcGVjaWZpZWRcbiAgZGVsZXRlIGRlc2Mud3JpdGFibGU7XG4gIGRlbGV0ZSBkZXNjLnZhbHVlO1xuXG4gIC8vIHN1YnN0cigyKSBjdXogJ29uY2xpY2snIC0+ICdjbGljaycsIGV0Y1xuICB2YXIgZXZlbnROYW1lID0gcHJvcC5zdWJzdHIoMik7XG4gIHZhciBfcHJvcCA9ICdfJyArIHByb3A7XG5cbiAgZGVzYy5zZXQgPSBmdW5jdGlvbiAoZm4pIHtcbiAgICBpZiAodGhpc1tfcHJvcF0pIHtcbiAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIHRoaXNbX3Byb3BdKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzW19wcm9wXSA9IGZuO1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgZm4sIGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpc1tfcHJvcF0gPSBudWxsO1xuICAgIH1cbiAgfTtcblxuICBkZXNjLmdldCA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpc1tfcHJvcF07XG4gIH07XG5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwgcHJvcCwgZGVzYyk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gcGF0Y2hQcm9wZXJ0aWVzKG9iaiwgcHJvcGVydGllcz8pIHtcbiAgKHByb3BlcnRpZXMgfHwgKGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBwcm9wcyA9IFtdO1xuICAgICAgZm9yICh2YXIgcHJvcCBpbiBvYmopIHtcbiAgICAgICAgcHJvcHMucHVzaChwcm9wKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBwcm9wcztcbiAgICB9KCkpLlxuICAgIGZpbHRlcihmdW5jdGlvbiAocHJvcGVydHlOYW1lKSB7XG4gICAgICByZXR1cm4gcHJvcGVydHlOYW1lLnN1YnN0cigwLDIpID09PSAnb24nO1xuICAgIH0pKS5cbiAgICBmb3JFYWNoKGZ1bmN0aW9uIChldmVudE5hbWUpIHtcbiAgICAgIHBhdGNoUHJvcGVydHkob2JqLCBldmVudE5hbWUpO1xuICAgIH0pO1xufTtcblxudmFyIG9yaWdpbmFsRm5LZXkgPSBrZXlzLmNyZWF0ZSgnb3JpZ2luYWxGbicpO1xudmFyIGJvdW5kRm5zS2V5ID0ga2V5cy5jcmVhdGUoJ2JvdW5kRm5zJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXRjaEV2ZW50VGFyZ2V0TWV0aG9kcyhvYmopIHtcbiAgLy8gVGhpcyBpcyByZXF1aXJlZCBmb3IgdGhlIGFkZEV2ZW50TGlzdGVuZXIgaG9vayBvbiB0aGUgcm9vdCB6b25lLlxuICBvYmpba2V5cy5jb21tb24uYWRkRXZlbnRMaXN0ZW5lcl0gPSBvYmouYWRkRXZlbnRMaXN0ZW5lcjtcbiAgb2JqLmFkZEV2ZW50TGlzdGVuZXIgPSBmdW5jdGlvbiAoZXZlbnROYW1lLCBoYW5kbGVyLCB1c2VDYXB0dXJpbmcpIHtcbiAgICAvL0lnbm9yZSBzcGVjaWFsIGxpc3RlbmVycyBvZiBJRTExICYgRWRnZSBkZXYgdG9vbHMsIHNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci96b25lLmpzL2lzc3Vlcy8xNTBcbiAgICBpZiAoaGFuZGxlciAmJiBoYW5kbGVyLnRvU3RyaW5nKCkgIT09IFwiW29iamVjdCBGdW5jdGlvbldyYXBwZXJdXCIpIHtcbiAgICAgIHZhciBldmVudFR5cGUgPSBldmVudE5hbWUgKyAodXNlQ2FwdHVyaW5nID8gJyRjYXB0dXJpbmcnIDogJyRidWJibGluZycpO1xuICAgICAgdmFyIGZuO1xuICAgICAgaWYgKGhhbmRsZXIuaGFuZGxlRXZlbnQpIHtcbiAgICAgICAgLy8gSGF2ZSB0byBwYXNzIGluICdoYW5kbGVyJyByZWZlcmVuY2UgYXMgYW4gYXJndW1lbnQgaGVyZSwgb3RoZXJ3aXNlIGl0IGdldHMgY2xvYmJlcmVkIGluXG4gICAgICAgIC8vIElFOSBieSB0aGUgYXJndW1lbnRzWzFdIGFzc2lnbm1lbnQgYXQgZW5kIG9mIHRoaXMgZnVuY3Rpb24uXG4gICAgICAgIGZuID0gKGZ1bmN0aW9uKGhhbmRsZXIpIHtcbiAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBoYW5kbGVyLmhhbmRsZUV2ZW50LmFwcGx5KGhhbmRsZXIsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgfTtcbiAgICAgICAgfSkoaGFuZGxlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmbiA9IGhhbmRsZXI7XG4gICAgICB9XG5cbiAgICAgIGhhbmRsZXJbb3JpZ2luYWxGbktleV0gPSBmbjtcbiAgICAgIGhhbmRsZXJbYm91bmRGbnNLZXldID0gaGFuZGxlcltib3VuZEZuc0tleV0gfHwge307XG4gICAgICBoYW5kbGVyW2JvdW5kRm5zS2V5XVtldmVudFR5cGVdID0gaGFuZGxlcltib3VuZEZuc0tleV1bZXZlbnRUeXBlXSB8fCBnbG9iYWwuem9uZS5iaW5kKGZuKTtcbiAgICAgIGFyZ3VtZW50c1sxXSA9IGhhbmRsZXJbYm91bmRGbnNLZXldW2V2ZW50VHlwZV07XG4gICAgfVxuXG4gICAgLy8gLSBJbnNpZGUgYSBXZWIgV29ya2VyLCBgdGhpc2AgaXMgdW5kZWZpbmVkLCB0aGUgY29udGV4dCBpcyBgZ2xvYmFsYCAoPSBgc2VsZmApXG4gICAgLy8gLSBXaGVuIGBhZGRFdmVudExpc3RlbmVyYCBpcyBjYWxsZWQgb24gdGhlIGdsb2JhbCBjb250ZXh0IGluIHN0cmljdCBtb2RlLCBgdGhpc2AgaXMgdW5kZWZpbmVkXG4gICAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL3pvbmUuanMvaXNzdWVzLzE5MFxuICAgIHZhciB0YXJnZXQgPSB0aGlzIHx8IGdsb2JhbDtcbiAgICByZXR1cm4gZ2xvYmFsLnpvbmUuYWRkRXZlbnRMaXN0ZW5lci5hcHBseSh0YXJnZXQsIGFyZ3VtZW50cyk7XG4gIH07XG5cbiAgLy8gVGhpcyBpcyByZXF1aXJlZCBmb3IgdGhlIHJlbW92ZUV2ZW50TGlzdGVuZXIgaG9vayBvbiB0aGUgcm9vdCB6b25lLlxuICBvYmpba2V5cy5jb21tb24ucmVtb3ZlRXZlbnRMaXN0ZW5lcl0gPSBvYmoucmVtb3ZlRXZlbnRMaXN0ZW5lcjtcbiAgb2JqLnJlbW92ZUV2ZW50TGlzdGVuZXIgPSBmdW5jdGlvbiAoZXZlbnROYW1lLCBoYW5kbGVyLCB1c2VDYXB0dXJpbmcpIHtcbiAgICB2YXIgZXZlbnRUeXBlID0gZXZlbnROYW1lICsgKHVzZUNhcHR1cmluZyA/ICckY2FwdHVyaW5nJyA6ICckYnViYmxpbmcnKTtcbiAgICBpZiAoaGFuZGxlciAmJiBoYW5kbGVyW2JvdW5kRm5zS2V5XSAmJiBoYW5kbGVyW2JvdW5kRm5zS2V5XVtldmVudFR5cGVdKSB7XG4gICAgICB2YXIgX2JvdW5kID0gaGFuZGxlcltib3VuZEZuc0tleV07XG4gICAgICBhcmd1bWVudHNbMV0gPSBfYm91bmRbZXZlbnRUeXBlXTtcbiAgICAgIGRlbGV0ZSBfYm91bmRbZXZlbnRUeXBlXTtcbiAgICAgIGdsb2JhbC56b25lLmRlcXVldWVUYXNrKGhhbmRsZXJbb3JpZ2luYWxGbktleV0pO1xuICAgIH1cblxuICAgIC8vIC0gSW5zaWRlIGEgV2ViIFdvcmtlciwgYHRoaXNgIGlzIHVuZGVmaW5lZCwgdGhlIGNvbnRleHQgaXMgYGdsb2JhbGBcbiAgICAvLyAtIFdoZW4gYGFkZEV2ZW50TGlzdGVuZXJgIGlzIGNhbGxlZCBvbiB0aGUgZ2xvYmFsIGNvbnRleHQgaW4gc3RyaWN0IG1vZGUsIGB0aGlzYCBpcyB1bmRlZmluZWRcbiAgICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvem9uZS5qcy9pc3N1ZXMvMTkwXG4gICAgdmFyIHRhcmdldCA9IHRoaXMgfHwgZ2xvYmFsO1xuICAgIHZhciByZXN1bHQgPSBnbG9iYWwuem9uZS5yZW1vdmVFdmVudExpc3RlbmVyLmFwcGx5KHRhcmdldCwgYXJndW1lbnRzKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9O1xufTtcblxudmFyIG9yaWdpbmFsSW5zdGFuY2VLZXkgPSBrZXlzLmNyZWF0ZSgnb3JpZ2luYWxJbnN0YW5jZScpO1xuXG4vLyB3cmFwIHNvbWUgbmF0aXZlIEFQSSBvbiBgd2luZG93YFxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoQ2xhc3MoY2xhc3NOYW1lKSB7XG4gIHZhciBPcmlnaW5hbENsYXNzID0gZ2xvYmFsW2NsYXNzTmFtZV07XG4gIGlmICghT3JpZ2luYWxDbGFzcykgcmV0dXJuO1xuXG4gIGdsb2JhbFtjbGFzc05hbWVdID0gZnVuY3Rpb24gKCkge1xuICAgIHZhciBhID0gYmluZEFyZ3VtZW50cyhhcmd1bWVudHMpO1xuICAgIHN3aXRjaCAoYS5sZW5ndGgpIHtcbiAgICAgIGNhc2UgMDogdGhpc1tvcmlnaW5hbEluc3RhbmNlS2V5XSA9IG5ldyBPcmlnaW5hbENsYXNzKCk7IGJyZWFrO1xuICAgICAgY2FzZSAxOiB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldID0gbmV3IE9yaWdpbmFsQ2xhc3MoYVswXSk7IGJyZWFrO1xuICAgICAgY2FzZSAyOiB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldID0gbmV3IE9yaWdpbmFsQ2xhc3MoYVswXSwgYVsxXSk7IGJyZWFrO1xuICAgICAgY2FzZSAzOiB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldID0gbmV3IE9yaWdpbmFsQ2xhc3MoYVswXSwgYVsxXSwgYVsyXSk7IGJyZWFrO1xuICAgICAgY2FzZSA0OiB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldID0gbmV3IE9yaWdpbmFsQ2xhc3MoYVswXSwgYVsxXSwgYVsyXSwgYVszXSk7IGJyZWFrO1xuICAgICAgZGVmYXVsdDogdGhyb3cgbmV3IEVycm9yKCd3aGF0IGFyZSB5b3UgZXZlbiBkb2luZz8nKTtcbiAgICB9XG4gIH07XG5cbiAgdmFyIGluc3RhbmNlID0gbmV3IE9yaWdpbmFsQ2xhc3MoKTtcblxuICB2YXIgcHJvcDtcbiAgZm9yIChwcm9wIGluIGluc3RhbmNlKSB7XG4gICAgKGZ1bmN0aW9uIChwcm9wKSB7XG4gICAgICBpZiAodHlwZW9mIGluc3RhbmNlW3Byb3BdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGdsb2JhbFtjbGFzc05hbWVdLnByb3RvdHlwZVtwcm9wXSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gdGhpc1tvcmlnaW5hbEluc3RhbmNlS2V5XVtwcm9wXS5hcHBseSh0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldLCBhcmd1bWVudHMpO1xuICAgICAgICB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGdsb2JhbFtjbGFzc05hbWVdLnByb3RvdHlwZSwgcHJvcCwge1xuICAgICAgICAgIHNldDogZnVuY3Rpb24gKGZuKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgIHRoaXNbb3JpZ2luYWxJbnN0YW5jZUtleV1bcHJvcF0gPSBnbG9iYWwuem9uZS5iaW5kKGZuKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXNbb3JpZ2luYWxJbnN0YW5jZUtleV1bcHJvcF0gPSBmbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXNbb3JpZ2luYWxJbnN0YW5jZUtleV1bcHJvcF07XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KHByb3ApKTtcbiAgfVxuXG4gIGZvciAocHJvcCBpbiBPcmlnaW5hbENsYXNzKSB7XG4gICAgaWYgKHByb3AgIT09ICdwcm90b3R5cGUnICYmIE9yaWdpbmFsQ2xhc3MuaGFzT3duUHJvcGVydHkocHJvcCkpIHtcbiAgICAgIGdsb2JhbFtjbGFzc05hbWVdW3Byb3BdID0gT3JpZ2luYWxDbGFzc1twcm9wXTtcbiAgICB9XG4gIH1cbn07XG4iXX0=
|
1590
|
-
|
1591
|
-
|
1592
|
-
/***/ },
|
1593
|
-
/* 10 */
|
1594
|
-
/***/ function(module, exports, __webpack_require__) {
|
1595
|
-
|
1596
|
-
/* WEBPACK VAR INJECTION */(function(global) {var fnPatch = __webpack_require__(11);
|
1597
|
-
var promisePatch = __webpack_require__(8);
|
1598
|
-
var mutationObserverPatch = __webpack_require__(13);
|
1599
|
-
var definePropertyPatch = __webpack_require__(14);
|
1600
|
-
var registerElementPatch = __webpack_require__(15);
|
1601
|
-
var eventTargetPatch = __webpack_require__(16);
|
1602
|
-
var propertyDescriptorPatch = __webpack_require__(17);
|
1603
|
-
var geolocationPatch = __webpack_require__(19);
|
1604
|
-
var fileReaderPatch = __webpack_require__(20);
|
1605
|
-
function apply() {
|
1606
|
-
fnPatch.patchSetClearFunction(global, global.Zone, [
|
1607
|
-
['setTimeout', 'clearTimeout', false, false],
|
1608
|
-
['setInterval', 'clearInterval', true, false],
|
1609
|
-
['setImmediate', 'clearImmediate', false, false],
|
1610
|
-
['requestAnimationFrame', 'cancelAnimationFrame', false, true],
|
1611
|
-
['mozRequestAnimationFrame', 'mozCancelAnimationFrame', false, true],
|
1612
|
-
['webkitRequestAnimationFrame', 'webkitCancelAnimationFrame', false, true]
|
1613
|
-
]);
|
1614
|
-
fnPatch.patchFunction(global, [
|
1615
|
-
'alert',
|
1616
|
-
'prompt'
|
1617
|
-
]);
|
1618
|
-
eventTargetPatch.apply();
|
1619
|
-
propertyDescriptorPatch.apply();
|
1620
|
-
promisePatch.apply();
|
1621
|
-
mutationObserverPatch.patchClass('MutationObserver');
|
1622
|
-
mutationObserverPatch.patchClass('WebKitMutationObserver');
|
1623
|
-
definePropertyPatch.apply();
|
1624
|
-
registerElementPatch.apply();
|
1625
|
-
geolocationPatch.apply();
|
1626
|
-
fileReaderPatch.apply();
|
1627
|
-
}
|
1628
|
-
exports.apply = apply;
|
1629
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9wYXRjaC9icm93c2VyLnRzIl0sIm5hbWVzIjpbImFwcGx5Il0sIm1hcHBpbmdzIjoiQUFBQSxJQUFZLE9BQU8sV0FBTSxhQUFhLENBQUMsQ0FBQTtBQUN2QyxJQUFZLFlBQVksV0FBTSxXQUFXLENBQUMsQ0FBQTtBQUMxQyxJQUFZLHFCQUFxQixXQUFNLHFCQUFxQixDQUFDLENBQUE7QUFDN0QsSUFBWSxtQkFBbUIsV0FBTSxtQkFBbUIsQ0FBQyxDQUFBO0FBQ3pELElBQVksb0JBQW9CLFdBQU0sb0JBQW9CLENBQUMsQ0FBQTtBQUUzRCxJQUFZLGdCQUFnQixXQUFNLGdCQUFnQixDQUFDLENBQUE7QUFDbkQsSUFBWSx1QkFBdUIsV0FBTSx1QkFBdUIsQ0FBQyxDQUFBO0FBQ2pFLElBQVksZ0JBQWdCLFdBQU0sZUFBZSxDQUFDLENBQUE7QUFDbEQsSUFBWSxlQUFlLFdBQU0sZUFBZSxDQUFDLENBQUE7QUFFakQ7SUFDRUEsT0FBT0EsQ0FBQ0EscUJBQXFCQSxDQUFDQSxNQUFNQSxFQUFFQSxNQUFNQSxDQUFDQSxJQUFJQSxFQUFFQTtRQUNqREEsQ0FBQ0EsWUFBWUEsRUFBRUEsY0FBY0EsRUFBRUEsS0FBS0EsRUFBRUEsS0FBS0EsQ0FBQ0E7UUFDNUNBLENBQUNBLGFBQWFBLEVBQUVBLGVBQWVBLEVBQUVBLElBQUlBLEVBQUVBLEtBQUtBLENBQUNBO1FBQzdDQSxDQUFDQSxjQUFjQSxFQUFFQSxnQkFBZ0JBLEVBQUVBLEtBQUtBLEVBQUVBLEtBQUtBLENBQUNBO1FBQ2hEQSxDQUFDQSx1QkFBdUJBLEVBQUVBLHNCQUFzQkEsRUFBRUEsS0FBS0EsRUFBRUEsSUFBSUEsQ0FBQ0E7UUFDOURBLENBQUNBLDBCQUEwQkEsRUFBRUEseUJBQXlCQSxFQUFFQSxLQUFLQSxFQUFFQSxJQUFJQSxDQUFDQTtRQUNwRUEsQ0FBQ0EsNkJBQTZCQSxFQUFFQSw0QkFBNEJBLEVBQUVBLEtBQUtBLEVBQUVBLElBQUlBLENBQUNBO0tBQzNFQSxDQUFDQSxDQUFDQTtJQUVIQSxPQUFPQSxDQUFDQSxhQUFhQSxDQUFDQSxNQUFNQSxFQUFFQTtRQUM1QkEsT0FBT0E7UUFDUEEsUUFBUUE7S0FDVEEsQ0FBQ0EsQ0FBQ0E7SUFFSEEsZ0JBQWdCQSxDQUFDQSxLQUFLQSxFQUFFQSxDQUFDQTtJQUV6QkEsdUJBQXVCQSxDQUFDQSxLQUFLQSxFQUFFQSxDQUFDQTtJQUVoQ0EsWUFBWUEsQ0FBQ0EsS0FBS0EsRUFBRUEsQ0FBQ0E7SUFFckJBLHFCQUFxQkEsQ0FBQ0EsVUFBVUEsQ0FBQ0Esa0JBQWtCQSxDQUFDQSxDQUFDQTtJQUNyREEscUJBQXFCQSxDQUFDQSxVQUFVQSxDQUFDQSx3QkFBd0JBLENBQUNBLENBQUNBO0lBRTNEQSxtQkFBbUJBLENBQUNBLEtBQUtBLEVBQUVBLENBQUNBO0lBRTVCQSxvQkFBb0JBLENBQUNBLEtBQUtBLEVBQUVBLENBQUNBO0lBRTdCQSxnQkFBZ0JBLENBQUNBLEtBQUtBLEVBQUVBLENBQUNBO0lBRXpCQSxlQUFlQSxDQUFDQSxLQUFLQSxFQUFFQSxDQUFDQTtBQUMxQkEsQ0FBQ0E7QUEvQmUsYUFBSyxRQStCcEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZuUGF0Y2ggZnJvbSAnLi9mdW5jdGlvbnMnO1xuaW1wb3J0ICogYXMgcHJvbWlzZVBhdGNoIGZyb20gJy4vcHJvbWlzZSc7XG5pbXBvcnQgKiBhcyBtdXRhdGlvbk9ic2VydmVyUGF0Y2ggZnJvbSAnLi9tdXRhdGlvbi1vYnNlcnZlcic7XG5pbXBvcnQgKiBhcyBkZWZpbmVQcm9wZXJ0eVBhdGNoIGZyb20gJy4vZGVmaW5lLXByb3BlcnR5JztcbmltcG9ydCAqIGFzIHJlZ2lzdGVyRWxlbWVudFBhdGNoIGZyb20gJy4vcmVnaXN0ZXItZWxlbWVudCc7XG5pbXBvcnQgKiBhcyB3ZWJTb2NrZXRQYXRjaCBmcm9tICcuL3dlYnNvY2tldCc7XG5pbXBvcnQgKiBhcyBldmVudFRhcmdldFBhdGNoIGZyb20gJy4vZXZlbnQtdGFyZ2V0JztcbmltcG9ydCAqIGFzIHByb3BlcnR5RGVzY3JpcHRvclBhdGNoIGZyb20gJy4vcHJvcGVydHktZGVzY3JpcHRvcic7XG5pbXBvcnQgKiBhcyBnZW9sb2NhdGlvblBhdGNoIGZyb20gJy4vZ2VvbG9jYXRpb24nO1xuaW1wb3J0ICogYXMgZmlsZVJlYWRlclBhdGNoIGZyb20gJy4vZmlsZS1yZWFkZXInO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwbHkoKSB7XG4gIGZuUGF0Y2gucGF0Y2hTZXRDbGVhckZ1bmN0aW9uKGdsb2JhbCwgZ2xvYmFsLlpvbmUsIFtcbiAgICBbJ3NldFRpbWVvdXQnLCAnY2xlYXJUaW1lb3V0JywgZmFsc2UsIGZhbHNlXSxcbiAgICBbJ3NldEludGVydmFsJywgJ2NsZWFySW50ZXJ2YWwnLCB0cnVlLCBmYWxzZV0sXG4gICAgWydzZXRJbW1lZGlhdGUnLCAnY2xlYXJJbW1lZGlhdGUnLCBmYWxzZSwgZmFsc2VdLFxuICAgIFsncmVxdWVzdEFuaW1hdGlvbkZyYW1lJywgJ2NhbmNlbEFuaW1hdGlvbkZyYW1lJywgZmFsc2UsIHRydWVdLFxuICAgIFsnbW96UmVxdWVzdEFuaW1hdGlvbkZyYW1lJywgJ21vekNhbmNlbEFuaW1hdGlvbkZyYW1lJywgZmFsc2UsIHRydWVdLFxuICAgIFsnd2Via2l0UmVxdWVzdEFuaW1hdGlvbkZyYW1lJywgJ3dlYmtpdENhbmNlbEFuaW1hdGlvbkZyYW1lJywgZmFsc2UsIHRydWVdXG4gIF0pO1xuXG4gIGZuUGF0Y2gucGF0Y2hGdW5jdGlvbihnbG9iYWwsIFtcbiAgICAnYWxlcnQnLFxuICAgICdwcm9tcHQnXG4gIF0pO1xuXG4gIGV2ZW50VGFyZ2V0UGF0Y2guYXBwbHkoKTtcblxuICBwcm9wZXJ0eURlc2NyaXB0b3JQYXRjaC5hcHBseSgpO1xuXG4gIHByb21pc2VQYXRjaC5hcHBseSgpO1xuXG4gIG11dGF0aW9uT2JzZXJ2ZXJQYXRjaC5wYXRjaENsYXNzKCdNdXRhdGlvbk9ic2VydmVyJyk7XG4gIG11dGF0aW9uT2JzZXJ2ZXJQYXRjaC5wYXRjaENsYXNzKCdXZWJLaXRNdXRhdGlvbk9ic2VydmVyJyk7XG5cbiAgZGVmaW5lUHJvcGVydHlQYXRjaC5hcHBseSgpO1xuXG4gIHJlZ2lzdGVyRWxlbWVudFBhdGNoLmFwcGx5KCk7XG5cbiAgZ2VvbG9jYXRpb25QYXRjaC5hcHBseSgpO1xuXG4gIGZpbGVSZWFkZXJQYXRjaC5hcHBseSgpO1xufVxuXG4iXX0=
|
1630
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1631
|
-
|
1632
|
-
/***/ },
|
1633
|
-
/* 11 */
|
1634
|
-
/***/ function(module, exports, __webpack_require__) {
|
1635
|
-
|
1636
|
-
/* WEBPACK VAR INJECTION */(function(global) {var wtf = __webpack_require__(12);
|
1637
|
-
function patchSetClearFunction(window, Zone, fnNames) {
|
1638
|
-
function patchMacroTaskMethod(setName, clearName, repeating, isRaf) {
|
1639
|
-
var setNative = window[setName];
|
1640
|
-
var clearNative = window[clearName];
|
1641
|
-
var ids = {};
|
1642
|
-
if (setNative) {
|
1643
|
-
var wtfSetEventFn = wtf.createEvent('Zone#' + setName + '(uint32 zone, uint32 id, uint32 delay)');
|
1644
|
-
var wtfClearEventFn = wtf.createEvent('Zone#' + clearName + '(uint32 zone, uint32 id)');
|
1645
|
-
var wtfCallbackFn = wtf.createScope('Zone#cb:' + setName + '(uint32 zone, uint32 id, uint32 delay)');
|
1646
|
-
// Forward all calls from the window through the zone.
|
1647
|
-
window[setName] = function () {
|
1648
|
-
return global.zone[setName].apply(global.zone, arguments);
|
1649
|
-
};
|
1650
|
-
window[clearName] = function () {
|
1651
|
-
return global.zone[clearName].apply(global.zone, arguments);
|
1652
|
-
};
|
1653
|
-
// Set up zone processing for the set function.
|
1654
|
-
Zone.prototype[setName] = function (fn, delay) {
|
1655
|
-
// We need to save `fn` in var different then argument. This is because
|
1656
|
-
// in IE9 `argument[0]` and `fn` have same identity, and assigning to
|
1657
|
-
// `argument[0]` changes `fn`.
|
1658
|
-
var callbackFn = fn;
|
1659
|
-
if (typeof callbackFn !== 'function') {
|
1660
|
-
// force the error by calling the method with wrong args
|
1661
|
-
setNative.apply(window, arguments);
|
1662
|
-
}
|
1663
|
-
var zone = this;
|
1664
|
-
var setId = null;
|
1665
|
-
// wrap the callback function into the zone.
|
1666
|
-
arguments[0] = function () {
|
1667
|
-
var callbackZone = zone.isRootZone() || isRaf ? zone : zone.fork();
|
1668
|
-
var callbackThis = this;
|
1669
|
-
var callbackArgs = arguments;
|
1670
|
-
return wtf.leaveScope(wtfCallbackFn(callbackZone.$id, setId, delay), callbackZone.run(function () {
|
1671
|
-
if (!repeating) {
|
1672
|
-
delete ids[setId];
|
1673
|
-
callbackZone.removeTask(callbackFn);
|
1674
|
-
}
|
1675
|
-
return callbackFn.apply(callbackThis, callbackArgs);
|
1676
|
-
}));
|
1677
|
-
};
|
1678
|
-
if (repeating) {
|
1679
|
-
zone.addRepeatingTask(callbackFn);
|
1680
|
-
}
|
1681
|
-
else {
|
1682
|
-
zone.addTask(callbackFn);
|
1683
|
-
}
|
1684
|
-
setId = setNative.apply(window, arguments);
|
1685
|
-
ids[setId] = callbackFn;
|
1686
|
-
wtfSetEventFn(zone.$id, setId, delay);
|
1687
|
-
return setId;
|
1688
|
-
};
|
1689
|
-
Zone.prototype[setName + 'Unpatched'] = function () {
|
1690
|
-
return setNative.apply(window, arguments);
|
1691
|
-
};
|
1692
|
-
// Set up zone processing for the clear function.
|
1693
|
-
Zone.prototype[clearName] = function (id) {
|
1694
|
-
wtfClearEventFn(this.$id, id);
|
1695
|
-
if (ids.hasOwnProperty(id)) {
|
1696
|
-
var callbackFn = ids[id];
|
1697
|
-
delete ids[id];
|
1698
|
-
if (repeating) {
|
1699
|
-
this.removeRepeatingTask(callbackFn);
|
1700
|
-
}
|
1701
|
-
else {
|
1702
|
-
this.removeTask(callbackFn);
|
1703
|
-
}
|
1704
|
-
}
|
1705
|
-
return clearNative.apply(window, arguments);
|
1706
|
-
};
|
1707
|
-
Zone.prototype[clearName + 'Unpatched'] = function () {
|
1708
|
-
return clearNative.apply(window, arguments);
|
1709
|
-
};
|
1710
|
-
}
|
1006
|
+
function createNamedFn(name, delegate) {
|
1007
|
+
try {
|
1008
|
+
return (Function('f', "return function " + name + "(){return f(this, arguments)}"))(delegate);
|
1711
1009
|
}
|
1712
|
-
|
1713
|
-
|
1714
|
-
|
1715
|
-
|
1716
|
-
exports.patchSetClearFunction = patchSetClearFunction;
|
1717
|
-
;
|
1718
|
-
function patchFunction(obj, fnNames) {
|
1719
|
-
fnNames.forEach(function (name) {
|
1720
|
-
var delegate = obj[name];
|
1721
|
-
global.zone[name] = function () {
|
1722
|
-
return delegate.apply(obj, arguments);
|
1723
|
-
};
|
1724
|
-
obj[name] = function () {
|
1725
|
-
return global.zone[name].apply(this, arguments);
|
1010
|
+
catch (e) {
|
1011
|
+
// if we fail, we must be CSP, just return delegate.
|
1012
|
+
return function () {
|
1013
|
+
return delegate(this, arguments);
|
1726
1014
|
};
|
1727
|
-
});
|
1728
|
-
}
|
1729
|
-
exports.patchFunction = patchFunction;
|
1730
|
-
;
|
1731
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3BhdGNoL2Z1bmN0aW9ucy50cyJdLCJuYW1lcyI6WyJwYXRjaFNldENsZWFyRnVuY3Rpb24iLCJwYXRjaFNldENsZWFyRnVuY3Rpb24ucGF0Y2hNYWNyb1Rhc2tNZXRob2QiLCJwYXRjaEZ1bmN0aW9uIl0sIm1hcHBpbmdzIjoiQUFDQSxJQUFZLEdBQUcsV0FBTSxRQUFRLENBQUMsQ0FBQTtBQUU5QiwrQkFBc0MsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPO0lBQ3pEQSw4QkFBOEJBLE9BQU9BLEVBQUVBLFNBQVNBLEVBQUVBLFNBQVNBLEVBQUVBLEtBQUtBO1FBQ2hFQyxJQUFJQSxTQUFTQSxHQUFHQSxNQUFNQSxDQUFDQSxPQUFPQSxDQUFDQSxDQUFDQTtRQUNoQ0EsSUFBSUEsV0FBV0EsR0FBR0EsTUFBTUEsQ0FBQ0EsU0FBU0EsQ0FBQ0EsQ0FBQ0E7UUFDcENBLElBQUlBLEdBQUdBLEdBQUdBLEVBQUVBLENBQUNBO1FBRWJBLEVBQUVBLENBQUNBLENBQUNBLFNBQVNBLENBQUNBLENBQUNBLENBQUNBO1lBQ2RBLElBQUlBLGFBQWFBLEdBQUdBLEdBQUdBLENBQUNBLFdBQVdBLENBQUNBLE9BQU9BLEdBQUdBLE9BQU9BLEdBQUdBLHdDQUF3Q0EsQ0FBQ0EsQ0FBQ0E7WUFDbEdBLElBQUlBLGVBQWVBLEdBQUdBLEdBQUdBLENBQUNBLFdBQVdBLENBQUNBLE9BQU9BLEdBQUdBLFNBQVNBLEdBQUdBLDBCQUEwQkEsQ0FBQ0EsQ0FBQ0E7WUFDeEZBLElBQUlBLGFBQWFBLEdBQUdBLEdBQUdBLENBQUNBLFdBQVdBLENBQUNBLFVBQVVBLEdBQUdBLE9BQU9BLEdBQUdBLHdDQUF3Q0EsQ0FBQ0EsQ0FBQ0E7WUFFckdBLHNEQUFzREE7WUFDdERBLE1BQU1BLENBQUNBLE9BQU9BLENBQUNBLEdBQUdBO2dCQUNoQixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFP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QUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUM7UUFFRixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFDVixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQ0EsQ0FBQ0E7QUFDTEEsQ0FBQ0E7QUFYZSxxQkFBYSxnQkFXNUIsQ0FBQTtBQUFBLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgKiBhcyB3dGYgZnJvbSAnLi4vd3RmJztcblxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoU2V0Q2xlYXJGdW5jdGlvbih3aW5kb3csIFpvbmUsIGZuTmFtZXMpIHtcbiAgZnVuY3Rpb24gcGF0Y2hNYWNyb1Rhc2tNZXRob2Qoc2V0TmFtZSwgY2xlYXJOYW1lLCByZXBlYXRpbmcsIGlzUmFmKSB7XG4gICAgdmFyIHNldE5hdGl2ZSA9IHdpbmRvd1tzZXROYW1lXTtcbiAgICB2YXIgY2xlYXJOYXRpdmUgPSB3aW5kb3dbY2xlYXJOYW1lXTtcbiAgICB2YXIgaWRzID0ge307XG5cbiAgICBpZiAoc2V0TmF0aXZlKSB7XG4gICAgICB2YXIgd3RmU2V0RXZlbnRGbiA9IHd0Zi5jcmVhdGVFdmVudCgnWm9uZSMnICsgc2V0TmFtZSArICcodWludDMyIHpvbmUsIHVpbnQzMiBpZCwgdWludDMyIGRlbGF5KScpO1xuICAgICAgdmFyIHd0ZkNsZWFyRXZlbnRGbiA9IHd0Zi5jcmVhdGVFdmVudCgnWm9uZSMnICsgY2xlYXJOYW1lICsgJyh1aW50MzIgem9uZSwgdWludDMyIGlkKScpO1xuICAgICAgdmFyIHd0ZkNhbGxiYWNrRm4gPSB3dGYuY3JlYXRlU2NvcGUoJ1pvbmUjY2I6JyArIHNldE5hbWUgKyAnKHVpbnQzMiB6b25lLCB1aW50MzIgaWQsIHVpbnQzMiBkZWxheSknKTtcblxuICAgICAgLy8gRm9yd2FyZCBhbGwgY2FsbHMgZnJvbSB0aGUgd2luZG93IHRocm91Z2ggdGhlIHpvbmUuXG4gICAgICB3aW5kb3dbc2V0TmFtZV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBnbG9iYWwuem9uZVtzZXROYW1lXS5hcHBseShnbG9iYWwuem9uZSwgYXJndW1lbnRzKTtcbiAgICAgIH07XG4gICAgICB3aW5kb3dbY2xlYXJOYW1lXSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIGdsb2JhbC56b25lW2NsZWFyTmFtZV0uYXBwbHkoZ2xvYmFsLnpvbmUsIGFyZ3VtZW50cyk7XG4gICAgICB9O1xuXG5cbiAgICAgIC8vIFNldCB1cCB6b25lIHByb2Nlc3NpbmcgZm9yIHRoZSBzZXQgZnVuY3Rpb24uXG4gICAgICBab25lLnByb3RvdHlwZVtzZXROYW1lXSA9IGZ1bmN0aW9uIChmbiwgZGVsYXkpIHtcbiAgICAgICAgLy8gV2UgbmVlZCB0byBzYXZlIGBmbmAgaW4gdmFyIGRpZmZlcmVudCB0aGVuIGFyZ3VtZW50LiBUaGlzIGlzIGJlY2F1c2VcbiAgICAgICAgLy8gaW4gSUU5IGBhcmd1bWVudFswXWAgYW5kIGBmbmAgaGF2ZSBzYW1lIGlkZW50aXR5LCBhbmQgYXNzaWduaW5nIHRvXG4gICAgICAgIC8vIGBhcmd1bWVudFswXWAgY2hhbmdlcyBgZm5gLlxuICAgICAgICB2YXIgY2FsbGJhY2tGbiA9IGZuO1xuICAgICAgICBpZiAodHlwZW9mIGNhbGxiYWNrRm4gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAvLyBmb3JjZSB0aGUgZXJyb3IgYnkgY2FsbGluZyB0aGUgbWV0aG9kIHdpdGggd3JvbmcgYXJnc1xuICAgICAgICAgIHNldE5hdGl2ZS5hcHBseSh3aW5kb3csIGFyZ3VtZW50cyk7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIHpvbmUgPSB0aGlzO1xuICAgICAgICB2YXIgc2V0SWQgPSBudWxsO1xuICAgICAgICAvLyB3cmFwIHRoZSBjYWxsYmFjayBmdW5jdGlvbiBpbnRvIHRoZSB6b25lLlxuICAgICAgICBhcmd1bWVudHNbMF0gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICB2YXIgY2FsbGJhY2tab25lID0gem9uZS5pc1Jvb3Rab25lKCkgfHwgaXNSYWYgPyB6b25lIDogem9uZS5mb3JrKCk7XG4gICAgICAgICAgdmFyIGNhbGxiYWNrVGhpcyA9IHRoaXM7XG4gICAgICAgICAgdmFyIGNhbGxiYWNrQXJncyA9IGFyZ3VtZW50cztcbiAgICAgICAgICByZXR1cm4gd3RmLmxlYXZlU2NvcGUoXG4gICAgICAgICAgICAgIHd0ZkNhbGxiYWNrRm4oY2FsbGJhY2tab25lLiRpZCwgc2V0SWQsIGRlbGF5KSxcbiAgICAgICAgICAgICAgY2FsbGJhY2tab25lLnJ1bihmdW5jdGlvbigpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXJlcGVhdGluZykge1xuICAgICAgICAgICAgICAgICAgZGVsZXRlIGlkc1tzZXRJZF07XG4gICAgICAgICAgICAgICAgICBjYWxsYmFja1pvbmUucmVtb3ZlVGFzayhjYWxsYmFja0ZuKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrRm4uYXBwbHkoY2FsbGJhY2tUaGlzLCBjYWxsYmFja0FyZ3MpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH07XG4gICAgICAgIGlmIChyZXBlYXRpbmcpIHtcbiAgICAgICAgICB6b25lLmFkZFJlcGVhdGluZ1Rhc2soY2FsbGJhY2tGbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgem9uZS5hZGRUYXNrKGNhbGxiYWNrRm4pO1xuICAgICAgICB9XG4gICAgICAgIHNldElkID0gc2V0TmF0aXZlLmFwcGx5KHdpbmRvdywgYXJndW1lbnRzKTtcbiAgICAgICAgaWRzW3NldElkXSA9IGNhbGxiYWNrRm47XG4gICAgICAgIHd0ZlNldEV2ZW50Rm4oem9uZS4kaWQsIHNldElkLCBkZWxheSk7XG4gICAgICAgIHJldHVybiBzZXRJZDtcbiAgICAgIH07XG5cbiAgICAgIFpvbmUucHJvdG90eXBlW3NldE5hbWUgKyAnVW5wYXRjaGVkJ10gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHNldE5hdGl2ZS5hcHBseSh3aW5kb3csIGFyZ3VtZW50cyk7XG4gICAgICB9O1xuXG4gICAgICAvLyBTZXQgdXAgem9uZSBwcm9jZXNzaW5nIGZvciB0aGUgY2xlYXIgZnVuY3Rpb24uXG4gICAgICBab25lLnByb3RvdHlwZVtjbGVhck5hbWVdID0gZnVuY3Rpb24gKGlkKSB7XG4gICAgICAgIHd0ZkNsZWFyRXZlbnRGbih0aGlzLiRpZCwgaWQpO1xuICAgICAgICBpZiAoaWRzLmhhc093blByb3BlcnR5KGlkKSkge1xuICAgICAgICAgIHZhciBjYWxsYmFja0ZuID0gaWRzW2lkXTtcbiAgICAgICAgICBkZWxldGUgaWRzW2lkXTtcbiAgICAgICAgICBpZiAocmVwZWF0aW5nKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZVJlcGVhdGluZ1Rhc2soY2FsbGJhY2tGbik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlVGFzayhjYWxsYmFja0ZuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNsZWFyTmF0aXZlLmFwcGx5KHdpbmRvdywgYXJndW1lbnRzKTtcbiAgICAgIH07XG5cbiAgICAgIFpvbmUucHJvdG90eXBlW2NsZWFyTmFtZSArICdVbnBhdGNoZWQnXSA9IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gY2xlYXJOYXRpdmUuYXBwbHkod2luZG93LCBhcmd1bWVudHMpO1xuICAgICAgfTtcblxuICAgIH1cbiAgfVxuICBmbk5hbWVzLmZvckVhY2goZnVuY3Rpb24oYXJncykge1xuICAgIHBhdGNoTWFjcm9UYXNrTWV0aG9kLmFwcGx5KG51bGwsIGFyZ3MpO1xuICB9KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXRjaEZ1bmN0aW9uKG9iaiwgZm5OYW1lcykge1xuICBmbk5hbWVzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICB2YXIgZGVsZWdhdGUgPSBvYmpbbmFtZV07XG4gICAgZ2xvYmFsLnpvbmVbbmFtZV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gZGVsZWdhdGUuYXBwbHkob2JqLCBhcmd1bWVudHMpO1xuICAgIH07XG5cbiAgICBvYmpbbmFtZV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gZ2xvYmFsLnpvbmVbbmFtZV0uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbiAgICB9O1xuICB9KTtcbn07XG4iXX0=
|
1732
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1733
|
-
|
1734
|
-
/***/ },
|
1735
|
-
/* 12 */
|
1736
|
-
/***/ function(module, exports) {
|
1737
|
-
|
1738
|
-
/* WEBPACK VAR INJECTION */(function(global) {// Detect and setup WTF.
|
1739
|
-
var wtfTrace = null;
|
1740
|
-
var wtfEvents = null;
|
1741
|
-
var wtfEnabled = (function () {
|
1742
|
-
var wtf = global['wtf'];
|
1743
|
-
if (wtf) {
|
1744
|
-
wtfTrace = wtf['trace'];
|
1745
|
-
if (wtfTrace) {
|
1746
|
-
wtfEvents = wtfTrace['events'];
|
1747
|
-
return true;
|
1748
|
-
}
|
1749
1015
|
}
|
1750
|
-
return false;
|
1751
|
-
})();
|
1752
|
-
function noop() {
|
1753
1016
|
}
|
1754
|
-
exports.
|
1755
|
-
|
1756
|
-
|
1757
|
-
|
1758
|
-
|
1759
|
-
|
1760
|
-
|
1761
|
-
|
1762
|
-
|
1763
|
-
|
1764
|
-
|
1765
|
-
|
1766
|
-
|
1767
|
-
|
1768
|
-
|
1769
|
-
|
1770
|
-
|
1771
|
-
exports.beginTimeRange = wtfEnabled ? function (rangeType, action) {
|
1772
|
-
return wtfTrace.beginTimeRange(rangeType, action);
|
1773
|
-
} : function (t, a) {
|
1774
|
-
return null;
|
1775
|
-
};
|
1776
|
-
exports.endTimeRange = wtfEnabled ? function (range) {
|
1777
|
-
wtfTrace.endTimeRange(range);
|
1778
|
-
} : function (r) {
|
1779
|
-
};
|
1780
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3RmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL3d0Zi50cyJdLCJuYW1lcyI6WyJub29wIl0sIm1hcHBpbmdzIjoiQUFBQSx3QkFBd0I7QUFDeEIsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDO0FBQ3BCLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQztBQUNyQixJQUFJLFVBQVUsR0FBRyxDQUFDO0lBQ2hCLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ1IsUUFBUSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN4QixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ2IsU0FBUyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvQixNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFDRCxNQUFNLENBQUMsS0FBSyxDQUFDO0FBQ2YsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUVMO0FBQ0FBLENBQUNBO0FBVVksZUFBTyxHQUFXLFVBQVUsQ0FBQztBQUM3QixtQkFBVyxHQUFnRCxVQUFVLEdBQUcsVUFBVSxTQUFTLEVBQUUsS0FBSztJQUM3RyxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDakQsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUM7SUFDaEIsTUFBTSxDQUFDLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQUNXLG1CQUFXLEdBQXVELFVBQVUsR0FBRyxVQUFVLFNBQVMsRUFBRSxLQUFLO0lBQ3BILE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNwRCxDQUFDLEdBQUcsVUFBVSxDQUFDLEVBQUUsQ0FBQztJQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBQ1csa0JBQVUsR0FBRyxVQUFVLEdBQUcsVUFBVSxLQUFnQixFQUFFLFdBQWU7SUFDaEYsUUFBUSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDeEMsTUFBTSxDQUFDLFdBQVcsQ0FBQztBQUNyQixDQUFDLEdBQUcsVUFBVSxDQUFDLEVBQUUsQ0FBQztJQUNoQixNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ1gsQ0FBQyxDQUFDO0FBQ1csc0JBQWMsR0FBRyxVQUFVLEdBQUcsVUFBVSxTQUFTLEVBQUUsTUFBTTtJQUNwRSxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDcEQsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUM7SUFDaEIsTUFBTSxDQUFDLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQUNXLG9CQUFZLEdBQUcsVUFBVSxHQUFHLFVBQVUsS0FBSztJQUN0RCxRQUFRLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQy9CLENBQUMsR0FBRyxVQUFVLENBQUM7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBEZXRlY3QgYW5kIHNldHVwIFdURi5cbnZhciB3dGZUcmFjZSA9IG51bGw7XG52YXIgd3RmRXZlbnRzID0gbnVsbDtcbnZhciB3dGZFbmFibGVkID0gKGZ1bmN0aW9uICgpIHtcbiAgdmFyIHd0ZiA9IGdsb2JhbFsnd3RmJ107XG4gIGlmICh3dGYpIHtcbiAgICB3dGZUcmFjZSA9IHd0ZlsndHJhY2UnXTtcbiAgICBpZiAod3RmVHJhY2UpIHtcbiAgICAgIHd0ZkV2ZW50cyA9IHd0ZlRyYWNlWydldmVudHMnXTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICByZXR1cm4gZmFsc2U7XG59KSgpO1xuXG5mdW5jdGlvbiBub29wKCkge1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFd0ZlNjb3BlRm4ge1xuICAoLi4uYXJncyk6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXdGZFdmVudEZuIHtcbiAgKC4uLmFyZ3MpOiBhbnk7XG59XG5cbmV4cG9ydCBjb25zdCBlbmFibGVkOmJvb2xlYW4gPSB3dGZFbmFibGVkO1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVNjb3BlOihzaWduYXR1cmU6c3RyaW5nLCBmbGFncz86YW55KSA9PiBXdGZTY29wZUZuID0gd3RmRW5hYmxlZCA/IGZ1bmN0aW9uIChzaWduYXR1cmUsIGZsYWdzKSB7XG4gIHJldHVybiB3dGZFdmVudHMuY3JlYXRlU2NvcGUoc2lnbmF0dXJlLCBmbGFncyk7XG59IDogZnVuY3Rpb24gKHMsIGYpIHtcbiAgcmV0dXJuIG5vb3A7XG59O1xuZXhwb3J0IGNvbnN0IGNyZWF0ZUV2ZW50OiAoc2lnbmF0dXJlOiBzdHJpbmcsIGFjdGlvbj86IHN0cmluZykgPT4gV3RmRXZlbnRGbiA9IHd0ZkVuYWJsZWQgPyBmdW5jdGlvbiAoc2lnbmF0dXJlLCBmbGFncykge1xuICByZXR1cm4gd3RmRXZlbnRzLmNyZWF0ZUluc3RhbmNlKHNpZ25hdHVyZSwgZmxhZ3MpO1xufSA6IGZ1bmN0aW9uIChzLCBmKSB7XG4gIHJldHVybiBub29wO1xufTtcbmV4cG9ydCBjb25zdCBsZWF2ZVNjb3BlID0gd3RmRW5hYmxlZCA/IGZ1bmN0aW9uIChzY29wZTpXdGZTY29wZUZuLCByZXR1cm5WYWx1ZTphbnkpOmFueSB7XG4gIHd0ZlRyYWNlLmxlYXZlU2NvcGUoc2NvcGUsIHJldHVyblZhbHVlKTtcbiAgcmV0dXJuIHJldHVyblZhbHVlO1xufSA6IGZ1bmN0aW9uIChzLCB2KSB7XG4gIHJldHVybiB2O1xufTtcbmV4cG9ydCBjb25zdCBiZWdpblRpbWVSYW5nZSA9IHd0ZkVuYWJsZWQgPyBmdW5jdGlvbiAocmFuZ2VUeXBlLCBhY3Rpb24pIHtcbiAgcmV0dXJuIHd0ZlRyYWNlLmJlZ2luVGltZVJhbmdlKHJhbmdlVHlwZSwgYWN0aW9uKTtcbn0gOiBmdW5jdGlvbiAodCwgYSkge1xuICByZXR1cm4gbnVsbDtcbn07XG5leHBvcnQgY29uc3QgZW5kVGltZVJhbmdlID0gd3RmRW5hYmxlZCA/IGZ1bmN0aW9uIChyYW5nZSkge1xuICB3dGZUcmFjZS5lbmRUaW1lUmFuZ2UocmFuZ2UpO1xufSA6IGZ1bmN0aW9uIChyKSB7XG59O1xuIl19
|
1781
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1782
|
-
|
1783
|
-
/***/ },
|
1784
|
-
/* 13 */
|
1785
|
-
/***/ function(module, exports, __webpack_require__) {
|
1786
|
-
|
1787
|
-
/* WEBPACK VAR INJECTION */(function(global) {var keys = __webpack_require__(7);
|
1788
|
-
var originalInstanceKey = keys.create('originalInstance');
|
1789
|
-
var creationZoneKey = keys.create('creationZone');
|
1790
|
-
var isActiveKey = keys.create('isActive');
|
1791
|
-
// wrap some native API on `window`
|
1792
|
-
function patchClass(className) {
|
1793
|
-
var OriginalClass = global[className];
|
1794
|
-
if (!OriginalClass)
|
1795
|
-
return;
|
1796
|
-
global[className] = function (fn) {
|
1797
|
-
this[originalInstanceKey] = new OriginalClass(global.zone.bind(fn, true));
|
1798
|
-
// Remember where the class was instantiate to execute the enqueueTask and dequeueTask hooks
|
1799
|
-
this[creationZoneKey] = global.zone;
|
1800
|
-
};
|
1801
|
-
var instance = new OriginalClass(function () { });
|
1802
|
-
global[className].prototype.disconnect = function () {
|
1803
|
-
var result = this[originalInstanceKey].disconnect.apply(this[originalInstanceKey], arguments);
|
1804
|
-
if (this[isActiveKey]) {
|
1805
|
-
this[creationZoneKey].dequeueTask();
|
1806
|
-
this[isActiveKey] = false;
|
1807
|
-
}
|
1808
|
-
return result;
|
1809
|
-
};
|
1810
|
-
global[className].prototype.observe = function () {
|
1811
|
-
if (!this[isActiveKey]) {
|
1812
|
-
this[creationZoneKey].enqueueTask();
|
1813
|
-
this[isActiveKey] = true;
|
1814
|
-
}
|
1815
|
-
return this[originalInstanceKey].observe.apply(this[originalInstanceKey], arguments);
|
1816
|
-
};
|
1817
|
-
var prop;
|
1818
|
-
for (prop in instance) {
|
1819
|
-
(function (prop) {
|
1820
|
-
if (typeof global[className].prototype !== 'undefined') {
|
1821
|
-
return;
|
1822
|
-
}
|
1823
|
-
if (typeof instance[prop] === 'function') {
|
1824
|
-
global[className].prototype[prop] = function () {
|
1825
|
-
return this[originalInstanceKey][prop].apply(this[originalInstanceKey], arguments);
|
1826
|
-
};
|
1827
|
-
}
|
1828
|
-
else {
|
1829
|
-
Object.defineProperty(global[className].prototype, prop, {
|
1830
|
-
set: function (fn) {
|
1831
|
-
if (typeof fn === 'function') {
|
1832
|
-
this[originalInstanceKey][prop] = global.zone.bind(fn);
|
1833
|
-
}
|
1834
|
-
else {
|
1835
|
-
this[originalInstanceKey][prop] = fn;
|
1836
|
-
}
|
1837
|
-
},
|
1838
|
-
get: function () {
|
1839
|
-
return this[originalInstanceKey][prop];
|
1840
|
-
}
|
1841
|
-
});
|
1842
|
-
}
|
1843
|
-
}(prop));
|
1844
|
-
}
|
1017
|
+
exports.createNamedFn = createNamedFn;
|
1018
|
+
function patchMethod(target, name, patchFn) {
|
1019
|
+
var proto = target;
|
1020
|
+
while (proto && !proto.hasOwnProperty(name)) {
|
1021
|
+
proto = Object.getPrototypeOf(proto);
|
1022
|
+
}
|
1023
|
+
if (!proto && target[name]) {
|
1024
|
+
// somehow we did not find it, but we can see it. This happens on IE for Window properties.
|
1025
|
+
proto = target;
|
1026
|
+
}
|
1027
|
+
var delegateName = exports.zoneSymbol(name);
|
1028
|
+
var delegate;
|
1029
|
+
if (proto && !(delegate = proto[delegateName])) {
|
1030
|
+
delegate = proto[delegateName] = proto[name];
|
1031
|
+
proto[name] = createNamedFn(name, patchFn(delegate, delegateName, name));
|
1032
|
+
}
|
1033
|
+
return delegate;
|
1845
1034
|
}
|
1846
|
-
exports.
|
1847
|
-
|
1848
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXV0YXRpb24tb2JzZXJ2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvcGF0Y2gvbXV0YXRpb24tb2JzZXJ2ZXIudHMiXSwibmFtZXMiOlsicGF0Y2hDbGFzcyJdLCJtYXBwaW5ncyI6IkFBQUEsSUFBWSxJQUFJLFdBQU0sU0FBUyxDQUFDLENBQUE7QUFFaEMsSUFBSSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDMUQsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNsRCxJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBRTFDLG1DQUFtQztBQUNuQyxvQkFBMkIsU0FBUztJQUNsQ0EsSUFBSUEsYUFBYUEsR0FBR0EsTUFBTUEsQ0FBQ0EsU0FBU0EsQ0FBQ0EsQ0FBQ0E7SUFDdENBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBLGFBQWFBLENBQUNBO1FBQUNBLE1BQU1BLENBQUNBO0lBRTNCQSxNQUFNQSxDQUFDQSxTQUFTQSxDQUFDQSxHQUFHQSxVQUFVQSxFQUFFQTtRQUM5QixJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxRSw0RkFBNEY7UUFDNUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDdEMsQ0FBQyxDQUFDQTtJQUVGQSxJQUFJQSxRQUFRQSxHQUFHQSxJQUFJQSxhQUFhQSxDQUFDQSxjQUFhLENBQUMsQ0FBQ0EsQ0FBQ0E7SUFFakRBLE1BQU1BLENBQUNBLFNBQVNBLENBQUNBLENBQUNBLFNBQVNBLENBQUNBLFVBQVVBLEdBQUdBO1FBQ3ZDLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDOUYsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUM1QixDQUFDO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUNoQixDQUFDLENBQUNBO0lBRUZBLE1BQU1BLENBQUNBLFNBQVNBLENBQUNBLENBQUNBLFNBQVNBLENBQUNBLE9BQU9BLEdBQUdBO1FBQ3BDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUMzQixDQUFDO1FBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDdkYsQ0FBQyxDQUFDQTtJQUVGQSxJQUFJQSxJQUFJQSxDQUFDQTtJQUNUQSxHQUFHQSxDQUFDQSxDQUFDQSxJQUFJQSxJQUFJQSxRQUFRQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUN0QkEsQ0FBQ0EsVUFBVUEsSUFBSUE7WUFDYixFQUFFLENBQUMsQ0FBQyxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztnQkFDdkQsTUFBTSxDQUFDO1lBQ1QsQ0FBQztZQUNELEVBQUUsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3pDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ2xDLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ3JGLENBQUMsQ0FBQztZQUNKLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDTixNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFO29CQUN2RCxHQUFHLEVBQUUsVUFBVSxFQUFFO3dCQUNmLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUM7NEJBQzdCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUN6RCxDQUFDO3dCQUFDLElBQUksQ0FBQyxDQUFDOzRCQUNOLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQzt3QkFDdkMsQ0FBQztvQkFDSCxDQUFDO29CQUNELEdBQUcsRUFBRTt3QkFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3pDLENBQUM7aUJBQ0YsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUMsQ0FBQ0EsSUFBSUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7SUFDWEEsQ0FBQ0E7QUFDSEEsQ0FBQ0E7QUF2RGUsa0JBQVUsYUF1RHpCLENBQUE7QUFBQSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMga2V5cyBmcm9tICcuLi9rZXlzJztcblxudmFyIG9yaWdpbmFsSW5zdGFuY2VLZXkgPSBrZXlzLmNyZWF0ZSgnb3JpZ2luYWxJbnN0YW5jZScpO1xudmFyIGNyZWF0aW9uWm9uZUtleSA9IGtleXMuY3JlYXRlKCdjcmVhdGlvblpvbmUnKTtcbnZhciBpc0FjdGl2ZUtleSA9IGtleXMuY3JlYXRlKCdpc0FjdGl2ZScpO1xuXG4vLyB3cmFwIHNvbWUgbmF0aXZlIEFQSSBvbiBgd2luZG93YFxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoQ2xhc3MoY2xhc3NOYW1lKSB7XG4gIHZhciBPcmlnaW5hbENsYXNzID0gZ2xvYmFsW2NsYXNzTmFtZV07XG4gIGlmICghT3JpZ2luYWxDbGFzcykgcmV0dXJuO1xuXG4gIGdsb2JhbFtjbGFzc05hbWVdID0gZnVuY3Rpb24gKGZuKSB7XG4gICAgdGhpc1tvcmlnaW5hbEluc3RhbmNlS2V5XSA9IG5ldyBPcmlnaW5hbENsYXNzKGdsb2JhbC56b25lLmJpbmQoZm4sIHRydWUpKTtcbiAgICAvLyBSZW1lbWJlciB3aGVyZSB0aGUgY2xhc3Mgd2FzIGluc3RhbnRpYXRlIHRvIGV4ZWN1dGUgdGhlIGVucXVldWVUYXNrIGFuZCBkZXF1ZXVlVGFzayBob29rc1xuICAgIHRoaXNbY3JlYXRpb25ab25lS2V5XSA9IGdsb2JhbC56b25lO1xuICB9O1xuXG4gIHZhciBpbnN0YW5jZSA9IG5ldyBPcmlnaW5hbENsYXNzKGZ1bmN0aW9uICgpIHt9KTtcblxuICBnbG9iYWxbY2xhc3NOYW1lXS5wcm90b3R5cGUuZGlzY29ubmVjdCA9IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgcmVzdWx0ID0gdGhpc1tvcmlnaW5hbEluc3RhbmNlS2V5XS5kaXNjb25uZWN0LmFwcGx5KHRoaXNbb3JpZ2luYWxJbnN0YW5jZUtleV0sIGFyZ3VtZW50cyk7XG4gICAgaWYgKHRoaXNbaXNBY3RpdmVLZXldKSB7XG4gICAgICB0aGlzW2NyZWF0aW9uWm9uZUtleV0uZGVxdWV1ZVRhc2soKTtcbiAgICAgIHRoaXNbaXNBY3RpdmVLZXldID0gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH07XG5cbiAgZ2xvYmFsW2NsYXNzTmFtZV0ucHJvdG90eXBlLm9ic2VydmUgPSBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKCF0aGlzW2lzQWN0aXZlS2V5XSkge1xuICAgICAgdGhpc1tjcmVhdGlvblpvbmVLZXldLmVucXVldWVUYXNrKCk7XG4gICAgICB0aGlzW2lzQWN0aXZlS2V5XSA9IHRydWU7XG4gICAgfVxuICAgIHJldHVybiB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldLm9ic2VydmUuYXBwbHkodGhpc1tvcmlnaW5hbEluc3RhbmNlS2V5XSwgYXJndW1lbnRzKTtcbiAgfTtcblxuICB2YXIgcHJvcDtcbiAgZm9yIChwcm9wIGluIGluc3RhbmNlKSB7XG4gICAgKGZ1bmN0aW9uIChwcm9wKSB7XG4gICAgICBpZiAodHlwZW9mIGdsb2JhbFtjbGFzc05hbWVdLnByb3RvdHlwZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKHR5cGVvZiBpbnN0YW5jZVtwcm9wXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBnbG9iYWxbY2xhc3NOYW1lXS5wcm90b3R5cGVbcHJvcF0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXNbb3JpZ2luYWxJbnN0YW5jZUtleV1bcHJvcF0uYXBwbHkodGhpc1tvcmlnaW5hbEluc3RhbmNlS2V5XSwgYXJndW1lbnRzKTtcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShnbG9iYWxbY2xhc3NOYW1lXS5wcm90b3R5cGUsIHByb3AsIHtcbiAgICAgICAgICBzZXQ6IGZ1bmN0aW9uIChmbikge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldW3Byb3BdID0gZ2xvYmFsLnpvbmUuYmluZChmbik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldW3Byb3BdID0gZm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzW29yaWdpbmFsSW5zdGFuY2VLZXldW3Byb3BdO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfShwcm9wKSk7XG4gIH1cbn07XG4iXX0=
|
1035
|
+
exports.patchMethod = patchMethod;
|
1036
|
+
|
1849
1037
|
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1850
1038
|
|
1851
1039
|
/***/ },
|
1852
|
-
/*
|
1040
|
+
/* 4 */
|
1853
1041
|
/***/ function(module, exports, __webpack_require__) {
|
1854
1042
|
|
1855
|
-
|
1856
|
-
|
1857
|
-
|
1043
|
+
"use strict";
|
1044
|
+
var utils_1 = __webpack_require__(3);
|
1045
|
+
/*
|
1046
|
+
* This is necessary for Chrome and Chrome mobile, to enable
|
1047
|
+
* things like redefining `createdCallback` on an element.
|
1048
|
+
*/
|
1858
1049
|
var _defineProperty = Object.defineProperty;
|
1859
1050
|
var _getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
|
1860
1051
|
var _create = Object.create;
|
1861
|
-
var unconfigurablesKey =
|
1862
|
-
function
|
1052
|
+
var unconfigurablesKey = utils_1.zoneSymbol('unconfigurables');
|
1053
|
+
function propertyPatch() {
|
1863
1054
|
Object.defineProperty = function (obj, prop, desc) {
|
1864
1055
|
if (isUnconfigurable(obj, prop)) {
|
1865
1056
|
throw new TypeError('Cannot assign to read only property \'' + prop + '\' of ' + obj);
|
@@ -1891,7 +1082,7 @@ THE SOFTWARE.
|
|
1891
1082
|
return desc;
|
1892
1083
|
};
|
1893
1084
|
}
|
1894
|
-
exports.
|
1085
|
+
exports.propertyPatch = propertyPatch;
|
1895
1086
|
;
|
1896
1087
|
function _redefineProperty(obj, prop, desc) {
|
1897
1088
|
desc = rewriteDescriptor(obj, prop, desc);
|
@@ -1912,16 +1103,17 @@ THE SOFTWARE.
|
|
1912
1103
|
}
|
1913
1104
|
return desc;
|
1914
1105
|
}
|
1915
|
-
|
1106
|
+
|
1916
1107
|
|
1917
1108
|
/***/ },
|
1918
|
-
/*
|
1109
|
+
/* 5 */
|
1919
1110
|
/***/ function(module, exports, __webpack_require__) {
|
1920
1111
|
|
1921
|
-
|
1922
|
-
var
|
1923
|
-
|
1924
|
-
|
1112
|
+
"use strict";
|
1113
|
+
var define_property_1 = __webpack_require__(4);
|
1114
|
+
var utils_1 = __webpack_require__(3);
|
1115
|
+
function registerElementPatch(_global) {
|
1116
|
+
if (!utils_1.isBrowser || !('registerElement' in _global.document)) {
|
1925
1117
|
return;
|
1926
1118
|
}
|
1927
1119
|
var _registerElement = document.registerElement;
|
@@ -1934,173 +1126,138 @@ THE SOFTWARE.
|
|
1934
1126
|
document.registerElement = function (name, opts) {
|
1935
1127
|
if (opts && opts.prototype) {
|
1936
1128
|
callbacks.forEach(function (callback) {
|
1129
|
+
var source = 'Document.registerElement::' + callback;
|
1937
1130
|
if (opts.prototype.hasOwnProperty(callback)) {
|
1938
1131
|
var descriptor = Object.getOwnPropertyDescriptor(opts.prototype, callback);
|
1939
1132
|
if (descriptor && descriptor.value) {
|
1940
|
-
descriptor.value =
|
1133
|
+
descriptor.value = Zone.current.wrap(descriptor.value, source);
|
1941
1134
|
define_property_1._redefineProperty(opts.prototype, callback, descriptor);
|
1942
1135
|
}
|
1943
1136
|
else {
|
1944
|
-
opts.prototype[callback] =
|
1137
|
+
opts.prototype[callback] = Zone.current.wrap(opts.prototype[callback], source);
|
1945
1138
|
}
|
1946
1139
|
}
|
1947
1140
|
else if (opts.prototype[callback]) {
|
1948
|
-
opts.prototype[callback] =
|
1141
|
+
opts.prototype[callback] = Zone.current.wrap(opts.prototype[callback], source);
|
1949
1142
|
}
|
1950
1143
|
});
|
1951
1144
|
}
|
1952
1145
|
return _registerElement.apply(document, [name, opts]);
|
1953
1146
|
};
|
1954
1147
|
}
|
1955
|
-
exports.
|
1956
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXItZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9wYXRjaC9yZWdpc3Rlci1lbGVtZW50LnRzIl0sIm5hbWVzIjpbImFwcGx5Il0sIm1hcHBpbmdzIjoiQUFBQSxnQ0FBZ0MsbUJBQW1CLENBQUMsQ0FBQTtBQUNwRCxJQUFZLEtBQUssV0FBTSxVQUFVLENBQUMsQ0FBQTtBQUVsQztJQUNFQSxFQUFFQSxDQUFDQSxDQUFDQSxLQUFLQSxDQUFDQSxXQUFXQSxFQUFFQSxJQUFJQSxDQUFDQSxDQUFDQSxpQkFBaUJBLElBQVVBLE1BQU9BLENBQUNBLFFBQVFBLENBQUNBLENBQUNBLENBQUNBLENBQUNBO1FBQzFFQSxNQUFNQSxDQUFDQTtJQUNUQSxDQUFDQTtJQUVEQSxJQUFJQSxnQkFBZ0JBLEdBQVNBLFFBQVNBLENBQUNBLGVBQWVBLENBQUNBO0lBQ3ZEQSxJQUFJQSxTQUFTQSxHQUFHQTtRQUNkQSxpQkFBaUJBO1FBQ2pCQSxrQkFBa0JBO1FBQ2xCQSxrQkFBa0JBO1FBQ2xCQSwwQkFBMEJBO0tBQzNCQSxDQUFDQTtJQUVJQSxRQUFTQSxDQUFDQSxlQUFlQSxHQUFHQSxVQUFVQSxJQUFJQSxFQUFFQSxJQUFJQTtRQUNwRCxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDM0IsU0FBUyxDQUFDLE9BQU8sQ0FBQyxVQUFVLFFBQVE7Z0JBQ2xDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDNUMsSUFBSSxVQUFVLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQzNFLEVBQUUsQ0FBQyxDQUFDLFVBQVUsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzt3QkFDbkMsVUFBVSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ3RELG1DQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO29CQUMxRCxDQUFDO29CQUFDLElBQUksQ0FBQyxDQUFDO3dCQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO29CQUN4RSxDQUFDO2dCQUNILENBQUM7Z0JBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNwQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDeEUsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQyxDQUFDQTtBQUNKQSxDQUFDQTtBQWhDZSxhQUFLLFFBZ0NwQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtfcmVkZWZpbmVQcm9wZXJ0eX0gZnJvbSAnLi9kZWZpbmUtcHJvcGVydHknO1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwbHkoKSB7XG4gIGlmICh1dGlscy5pc1dlYldvcmtlcigpIHx8ICEoJ3JlZ2lzdGVyRWxlbWVudCcgaW4gKDxhbnk+Z2xvYmFsKS5kb2N1bWVudCkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICB2YXIgX3JlZ2lzdGVyRWxlbWVudCA9ICg8YW55PmRvY3VtZW50KS5yZWdpc3RlckVsZW1lbnQ7XG4gIHZhciBjYWxsYmFja3MgPSBbXG4gICAgJ2NyZWF0ZWRDYWxsYmFjaycsXG4gICAgJ2F0dGFjaGVkQ2FsbGJhY2snLFxuICAgICdkZXRhY2hlZENhbGxiYWNrJyxcbiAgICAnYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrJ1xuICBdO1xuXG4gICg8YW55PmRvY3VtZW50KS5yZWdpc3RlckVsZW1lbnQgPSBmdW5jdGlvbiAobmFtZSwgb3B0cykge1xuICAgIGlmIChvcHRzICYmIG9wdHMucHJvdG90eXBlKSB7XG4gICAgICBjYWxsYmFja3MuZm9yRWFjaChmdW5jdGlvbiAoY2FsbGJhY2spIHtcbiAgICAgICAgaWYgKG9wdHMucHJvdG90eXBlLmhhc093blByb3BlcnR5KGNhbGxiYWNrKSkge1xuICAgICAgICAgIHZhciBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvcHRzLnByb3RvdHlwZSwgY2FsbGJhY2spO1xuICAgICAgICAgIGlmIChkZXNjcmlwdG9yICYmIGRlc2NyaXB0b3IudmFsdWUpIHtcbiAgICAgICAgICAgIGRlc2NyaXB0b3IudmFsdWUgPSBnbG9iYWwuem9uZS5iaW5kKGRlc2NyaXB0b3IudmFsdWUpO1xuICAgICAgICAgICAgX3JlZGVmaW5lUHJvcGVydHkob3B0cy5wcm90b3R5cGUsIGNhbGxiYWNrLCBkZXNjcmlwdG9yKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3B0cy5wcm90b3R5cGVbY2FsbGJhY2tdID0gZ2xvYmFsLnpvbmUuYmluZChvcHRzLnByb3RvdHlwZVtjYWxsYmFja10pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChvcHRzLnByb3RvdHlwZVtjYWxsYmFja10pIHtcbiAgICAgICAgICBvcHRzLnByb3RvdHlwZVtjYWxsYmFja10gPSBnbG9iYWwuem9uZS5iaW5kKG9wdHMucHJvdG90eXBlW2NhbGxiYWNrXSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBfcmVnaXN0ZXJFbGVtZW50LmFwcGx5KGRvY3VtZW50LCBbbmFtZSwgb3B0c10pO1xuICB9O1xufVxuIl19
|
1957
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1958
|
-
|
1959
|
-
/***/ },
|
1960
|
-
/* 16 */
|
1961
|
-
/***/ function(module, exports, __webpack_require__) {
|
1148
|
+
exports.registerElementPatch = registerElementPatch;
|
1962
1149
|
|
1963
|
-
/* WEBPACK VAR INJECTION */(function(global) {'use strict';
|
1964
|
-
var utils = __webpack_require__(9);
|
1965
|
-
function apply() {
|
1966
|
-
// patched properties depend on addEventListener, so this needs to come first
|
1967
|
-
if (global.EventTarget) {
|
1968
|
-
utils.patchEventTargetMethods(global.EventTarget.prototype);
|
1969
|
-
}
|
1970
|
-
else {
|
1971
|
-
var apis = [
|
1972
|
-
'ApplicationCache',
|
1973
|
-
'EventSource',
|
1974
|
-
'FileReader',
|
1975
|
-
'InputMethodContext',
|
1976
|
-
'MediaController',
|
1977
|
-
'MessagePort',
|
1978
|
-
'Node',
|
1979
|
-
'Performance',
|
1980
|
-
'SVGElementInstance',
|
1981
|
-
'SharedWorker',
|
1982
|
-
'TextTrack',
|
1983
|
-
'TextTrackCue',
|
1984
|
-
'TextTrackList',
|
1985
|
-
'WebKitNamedFlow',
|
1986
|
-
'Worker',
|
1987
|
-
'WorkerGlobalScope',
|
1988
|
-
'XMLHttpRequest',
|
1989
|
-
'XMLHttpRequestEventTarget',
|
1990
|
-
'XMLHttpRequestUpload'
|
1991
|
-
];
|
1992
|
-
apis.forEach(function (api) {
|
1993
|
-
var proto = global[api] && global[api].prototype;
|
1994
|
-
// Some browsers e.g. Android 4.3's don't actually implement
|
1995
|
-
// the EventTarget methods for all of these e.g. FileReader.
|
1996
|
-
// In this case, there is nothing to patch.
|
1997
|
-
if (proto && proto.addEventListener) {
|
1998
|
-
utils.patchEventTargetMethods(proto);
|
1999
|
-
}
|
2000
|
-
});
|
2001
|
-
// Patch the methods on `window` instead of `Window.prototype`
|
2002
|
-
// `Window` is not accessible on Android 4.3
|
2003
|
-
if (typeof (window) !== 'undefined') {
|
2004
|
-
utils.patchEventTargetMethods(window);
|
2005
|
-
}
|
2006
|
-
}
|
2007
|
-
}
|
2008
|
-
exports.apply = apply;
|
2009
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtdGFyZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3BhdGNoL2V2ZW50LXRhcmdldC50cyJdLCJuYW1lcyI6WyJhcHBseSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDO0FBRWIsSUFBWSxLQUFLLFdBQU0sVUFBVSxDQUFDLENBQUE7QUFFbEM7SUFDRUEsNkVBQTZFQTtJQUM3RUEsRUFBRUEsQ0FBQ0EsQ0FBT0EsTUFBT0EsQ0FBQ0EsV0FBV0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDOUJBLEtBQUtBLENBQUNBLHVCQUF1QkEsQ0FBT0EsTUFBT0EsQ0FBQ0EsV0FBV0EsQ0FBQ0EsU0FBU0EsQ0FBQ0EsQ0FBQ0E7SUFJckVBLENBQUNBO0lBQUNBLElBQUlBLENBQUNBLENBQUNBO1FBQ05BLElBQUlBLElBQUlBLEdBQUdBO1lBQ1RBLGtCQUFrQkE7WUFDbEJBLGFBQWFBO1lBQ2JBLFlBQVlBO1lBQ1pBLG9CQUFvQkE7WUFDcEJBLGlCQUFpQkE7WUFDakJBLGFBQWFBO1lBQ2JBLE1BQU1BO1lBQ05BLGFBQWFBO1lBQ2JBLG9CQUFvQkE7WUFDcEJBLGNBQWNBO1lBQ2RBLFdBQVdBO1lBQ1hBLGNBQWNBO1lBQ2RBLGVBQWVBO1lBQ2ZBLGlCQUFpQkE7WUFDakJBLFFBQVFBO1lBQ1JBLG1CQUFtQkE7WUFDbkJBLGdCQUFnQkE7WUFDaEJBLDJCQUEyQkE7WUFDM0JBLHNCQUFzQkE7U0FDdkJBLENBQUNBO1FBRUZBLElBQUlBLENBQUNBLE9BQU9BLENBQUNBLFVBQVNBLEdBQUdBO1lBQ3ZCLElBQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBRWpELDREQUE0RDtZQUM1RCw0REFBNEQ7WUFDNUQsMkNBQTJDO1lBQzNDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxLQUFLLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkMsQ0FBQztRQUNILENBQUMsQ0FBQ0EsQ0FBQ0E7UUFFSEEsOERBQThEQTtRQUM5REEsNENBQTRDQTtRQUM1Q0EsRUFBRUEsQ0FBQ0EsQ0FBQ0EsT0FBTUEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsS0FBS0EsV0FBV0EsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7WUFDbkNBLEtBQUtBLENBQUNBLHVCQUF1QkEsQ0FBQ0EsTUFBTUEsQ0FBQ0EsQ0FBQ0E7UUFDeENBLENBQUNBO0lBQ0hBLENBQUNBO0FBQ0hBLENBQUNBO0FBL0NlLGFBQUssUUErQ3BCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5KCkge1xuICAvLyBwYXRjaGVkIHByb3BlcnRpZXMgZGVwZW5kIG9uIGFkZEV2ZW50TGlzdGVuZXIsIHNvIHRoaXMgbmVlZHMgdG8gY29tZSBmaXJzdFxuICBpZiAoKDxhbnk+Z2xvYmFsKS5FdmVudFRhcmdldCkge1xuICAgIHV0aWxzLnBhdGNoRXZlbnRUYXJnZXRNZXRob2RzKCg8YW55Pmdsb2JhbCkuRXZlbnRUYXJnZXQucHJvdG90eXBlKTtcblxuICAvLyBOb3RlOiBFdmVudFRhcmdldCBpcyBub3QgYXZhaWxhYmxlIGluIGFsbCBicm93c2VycyxcbiAgLy8gaWYgaXQncyBub3QgYXZhaWxhYmxlLCB3ZSBpbnN0ZWFkIHBhdGNoIHRoZSBBUElzIGluIHRoZSBJREwgdGhhdCBpbmhlcml0IGZyb20gRXZlbnRUYXJnZXRcbiAgfSBlbHNlIHtcbiAgICB2YXIgYXBpcyA9IFtcbiAgICAgICdBcHBsaWNhdGlvbkNhY2hlJyxcbiAgICAgICdFdmVudFNvdXJjZScsXG4gICAgICAnRmlsZVJlYWRlcicsXG4gICAgICAnSW5wdXRNZXRob2RDb250ZXh0JyxcbiAgICAgICdNZWRpYUNvbnRyb2xsZXInLFxuICAgICAgJ01lc3NhZ2VQb3J0JyxcbiAgICAgICdOb2RlJyxcbiAgICAgICdQZXJmb3JtYW5jZScsXG4gICAgICAnU1ZHRWxlbWVudEluc3RhbmNlJyxcbiAgICAgICdTaGFyZWRXb3JrZXInLFxuICAgICAgJ1RleHRUcmFjaycsXG4gICAgICAnVGV4dFRyYWNrQ3VlJyxcbiAgICAgICdUZXh0VHJhY2tMaXN0JyxcbiAgICAgICdXZWJLaXROYW1lZEZsb3cnLFxuICAgICAgJ1dvcmtlcicsXG4gICAgICAnV29ya2VyR2xvYmFsU2NvcGUnLFxuICAgICAgJ1hNTEh0dHBSZXF1ZXN0JyxcbiAgICAgICdYTUxIdHRwUmVxdWVzdEV2ZW50VGFyZ2V0JyxcbiAgICAgICdYTUxIdHRwUmVxdWVzdFVwbG9hZCdcbiAgICBdO1xuXG4gICAgYXBpcy5mb3JFYWNoKGZ1bmN0aW9uKGFwaSkge1xuICAgICAgdmFyIHByb3RvID0gZ2xvYmFsW2FwaV0gJiYgZ2xvYmFsW2FwaV0ucHJvdG90eXBlO1xuXG4gICAgICAvLyBTb21lIGJyb3dzZXJzIGUuZy4gQW5kcm9pZCA0LjMncyBkb24ndCBhY3R1YWxseSBpbXBsZW1lbnRcbiAgICAgIC8vIHRoZSBFdmVudFRhcmdldCBtZXRob2RzIGZvciBhbGwgb2YgdGhlc2UgZS5nLiBGaWxlUmVhZGVyLlxuICAgICAgLy8gSW4gdGhpcyBjYXNlLCB0aGVyZSBpcyBub3RoaW5nIHRvIHBhdGNoLlxuICAgICAgaWYgKHByb3RvICYmIHByb3RvLmFkZEV2ZW50TGlzdGVuZXIpIHtcbiAgICAgICAgdXRpbHMucGF0Y2hFdmVudFRhcmdldE1ldGhvZHMocHJvdG8pO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gUGF0Y2ggdGhlIG1ldGhvZHMgb24gYHdpbmRvd2AgaW5zdGVhZCBvZiBgV2luZG93LnByb3RvdHlwZWBcbiAgICAvLyBgV2luZG93YCBpcyBub3QgYWNjZXNzaWJsZSBvbiBBbmRyb2lkIDQuM1xuICAgIGlmICh0eXBlb2Yod2luZG93KSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHV0aWxzLnBhdGNoRXZlbnRUYXJnZXRNZXRob2RzKHdpbmRvdyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
2010
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
2011
1150
|
|
2012
1151
|
/***/ },
|
2013
|
-
/*
|
1152
|
+
/* 6 */
|
2014
1153
|
/***/ function(module, exports, __webpack_require__) {
|
2015
1154
|
|
2016
|
-
|
2017
|
-
var
|
2018
|
-
var
|
1155
|
+
"use strict";
|
1156
|
+
var webSocketPatch = __webpack_require__(7);
|
1157
|
+
var utils_1 = __webpack_require__(3);
|
2019
1158
|
var eventNames = 'copy cut paste abort blur focus canplay canplaythrough change click contextmenu dblclick drag dragend dragenter dragleave dragover dragstart drop durationchange emptied ended input invalid keydown keypress keyup load loadeddata loadedmetadata loadstart message mousedown mouseenter mouseleave mousemove mouseout mouseover mouseup pause play playing progress ratechange reset scroll seeked seeking select show stalled submit suspend timeupdate volumechange waiting mozfullscreenchange mozfullscreenerror mozpointerlockchange mozpointerlockerror error webglcontextrestored webglcontextlost webglcontextcreationerror'.split(' ');
|
2020
|
-
function
|
2021
|
-
if (
|
2022
|
-
// on WebWorker so don't apply patch
|
1159
|
+
function propertyDescriptorPatch(_global) {
|
1160
|
+
if (utils_1.isNode) {
|
2023
1161
|
return;
|
2024
1162
|
}
|
2025
1163
|
var supportsWebSocket = typeof WebSocket !== 'undefined';
|
2026
1164
|
if (canPatchViaPropertyDescriptor()) {
|
2027
1165
|
// for browsers that we can patch the descriptor: Chrome & Firefox
|
2028
|
-
|
2029
|
-
|
2030
|
-
}
|
2031
|
-
|
2032
|
-
|
1166
|
+
if (utils_1.isBrowser) {
|
1167
|
+
utils_1.patchOnProperties(HTMLElement.prototype, eventNames);
|
1168
|
+
}
|
1169
|
+
utils_1.patchOnProperties(XMLHttpRequest.prototype, null);
|
1170
|
+
if (typeof IDBIndex !== 'undefined') {
|
1171
|
+
utils_1.patchOnProperties(IDBIndex.prototype, null);
|
1172
|
+
utils_1.patchOnProperties(IDBRequest.prototype, null);
|
1173
|
+
utils_1.patchOnProperties(IDBOpenDBRequest.prototype, null);
|
1174
|
+
utils_1.patchOnProperties(IDBDatabase.prototype, null);
|
1175
|
+
utils_1.patchOnProperties(IDBTransaction.prototype, null);
|
1176
|
+
utils_1.patchOnProperties(IDBCursor.prototype, null);
|
1177
|
+
}
|
2033
1178
|
if (supportsWebSocket) {
|
2034
|
-
|
1179
|
+
utils_1.patchOnProperties(WebSocket.prototype, null);
|
2035
1180
|
}
|
2036
1181
|
}
|
2037
1182
|
else {
|
2038
1183
|
// Safari, Android browsers (Jelly Bean)
|
2039
1184
|
patchViaCapturingAllTheEvents();
|
2040
|
-
|
1185
|
+
utils_1.patchClass('XMLHttpRequest');
|
2041
1186
|
if (supportsWebSocket) {
|
2042
|
-
webSocketPatch.apply();
|
1187
|
+
webSocketPatch.apply(_global);
|
2043
1188
|
}
|
2044
1189
|
}
|
2045
1190
|
}
|
2046
|
-
exports.
|
1191
|
+
exports.propertyDescriptorPatch = propertyDescriptorPatch;
|
2047
1192
|
function canPatchViaPropertyDescriptor() {
|
2048
|
-
if (!Object.getOwnPropertyDescriptor(HTMLElement.prototype, 'onclick')
|
1193
|
+
if (utils_1.isBrowser && !Object.getOwnPropertyDescriptor(HTMLElement.prototype, 'onclick')
|
1194
|
+
&& typeof Element !== 'undefined') {
|
2049
1195
|
// WebKit https://bugs.webkit.org/show_bug.cgi?id=134364
|
2050
1196
|
// IDL interface attributes are not configurable
|
2051
1197
|
var desc = Object.getOwnPropertyDescriptor(Element.prototype, 'onclick');
|
2052
1198
|
if (desc && !desc.configurable)
|
2053
1199
|
return false;
|
2054
1200
|
}
|
2055
|
-
Object.defineProperty(
|
1201
|
+
Object.defineProperty(XMLHttpRequest.prototype, 'onreadystatechange', {
|
2056
1202
|
get: function () {
|
2057
1203
|
return true;
|
2058
1204
|
}
|
2059
1205
|
});
|
2060
|
-
var
|
2061
|
-
var result = !!
|
2062
|
-
Object.defineProperty(
|
1206
|
+
var req = new XMLHttpRequest();
|
1207
|
+
var result = !!req.onreadystatechange;
|
1208
|
+
Object.defineProperty(XMLHttpRequest.prototype, 'onreadystatechange', {});
|
2063
1209
|
return result;
|
2064
1210
|
}
|
2065
1211
|
;
|
2066
|
-
var unboundKey =
|
2067
|
-
// Whenever any
|
1212
|
+
var unboundKey = utils_1.zoneSymbol('unbound');
|
1213
|
+
// Whenever any eventListener fires, we check the eventListener target and all parents
|
2068
1214
|
// for `onwhatever` properties and replace them with zone-bound functions
|
2069
1215
|
// - Chrome (for now)
|
2070
1216
|
function patchViaCapturingAllTheEvents() {
|
2071
|
-
|
1217
|
+
var _loop_1 = function(i) {
|
1218
|
+
var property = eventNames[i];
|
2072
1219
|
var onproperty = 'on' + property;
|
2073
1220
|
document.addEventListener(property, function (event) {
|
2074
|
-
var elt = event.target, bound;
|
1221
|
+
var elt = event.target, bound, source;
|
1222
|
+
if (elt) {
|
1223
|
+
source = elt.constructor['name'] + '.' + onproperty;
|
1224
|
+
}
|
1225
|
+
else {
|
1226
|
+
source = 'unknown.' + onproperty;
|
1227
|
+
}
|
2075
1228
|
while (elt) {
|
2076
1229
|
if (elt[onproperty] && !elt[onproperty][unboundKey]) {
|
2077
|
-
bound =
|
1230
|
+
bound = Zone.current.wrap(elt[onproperty], source);
|
2078
1231
|
bound[unboundKey] = elt[onproperty];
|
2079
1232
|
elt[onproperty] = bound;
|
2080
1233
|
}
|
2081
1234
|
elt = elt.parentElement;
|
2082
1235
|
}
|
2083
1236
|
}, true);
|
2084
|
-
}
|
1237
|
+
};
|
1238
|
+
for (var i = 0; i < eventNames.length; i++) {
|
1239
|
+
_loop_1(i);
|
1240
|
+
}
|
1241
|
+
;
|
2085
1242
|
}
|
2086
1243
|
;
|
2087
|
-
|
2088
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1244
|
+
|
2089
1245
|
|
2090
1246
|
/***/ },
|
2091
|
-
/*
|
1247
|
+
/* 7 */
|
2092
1248
|
/***/ function(module, exports, __webpack_require__) {
|
2093
1249
|
|
2094
|
-
|
1250
|
+
"use strict";
|
1251
|
+
var utils_1 = __webpack_require__(3);
|
2095
1252
|
// we have to patch the instance since the proto is non-configurable
|
2096
|
-
function apply() {
|
2097
|
-
var WS =
|
1253
|
+
function apply(_global) {
|
1254
|
+
var WS = _global.WebSocket;
|
2098
1255
|
// On Safari window.EventTarget doesn't exist so need to patch WS add/removeEventListener
|
2099
1256
|
// On older Chrome, no need since EventTarget was already patched
|
2100
|
-
if (!
|
2101
|
-
|
1257
|
+
if (!_global.EventTarget) {
|
1258
|
+
utils_1.patchEventTargetMethods(WS.prototype);
|
2102
1259
|
}
|
2103
|
-
|
1260
|
+
_global.WebSocket = function (a, b) {
|
2104
1261
|
var socket = arguments.length > 1 ? new WS(a, b) : new WS(a);
|
2105
1262
|
var proxySocket;
|
2106
1263
|
// Safari 7.0 has non-configurable own 'onmessage' and friends properties on the socket instance
|
@@ -2117,41 +1274,68 @@ THE SOFTWARE.
|
|
2117
1274
|
// we can patch the real socket
|
2118
1275
|
proxySocket = socket;
|
2119
1276
|
}
|
2120
|
-
|
1277
|
+
utils_1.patchOnProperties(proxySocket, ['close', 'error', 'message', 'open']);
|
2121
1278
|
return proxySocket;
|
2122
1279
|
};
|
2123
|
-
|
2124
|
-
|
2125
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3BhdGNoL3dlYnNvY2tldC50cyJdLCJuYW1lcyI6WyJhcHBseSJdLCJtYXBwaW5ncyI6IkFBQUEsSUFBWSxLQUFLLFdBQU0sVUFBVSxDQUFDLENBQUE7QUFFbEMsb0VBQW9FO0FBQ3BFO0lBQ0VBLElBQUlBLEVBQUVBLEdBQVNBLE1BQU9BLENBQUNBLFNBQVNBLENBQUNBO0lBQ2pDQSx5RkFBeUZBO0lBQ3pGQSxpRUFBaUVBO0lBQ2pFQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFPQSxNQUFPQSxDQUFDQSxXQUFXQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUMvQkEsS0FBS0EsQ0FBQ0EsdUJBQXVCQSxDQUFDQSxFQUFFQSxDQUFDQSxTQUFTQSxDQUFDQSxDQUFDQTtJQUM5Q0EsQ0FBQ0E7SUFDS0EsTUFBT0EsQ0FBQ0EsU0FBU0EsR0FBR0EsVUFBU0EsQ0FBQ0EsRUFBRUEsQ0FBQ0E7UUFDckMsSUFBSSxNQUFNLEdBQUcsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdELElBQUksV0FBVyxDQUFDO1FBRWhCLGdHQUFnRztRQUNoRyxJQUFJLGFBQWEsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3pFLEVBQUUsQ0FBQyxDQUFDLGFBQWEsSUFBSSxhQUFhLENBQUMsWUFBWSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDMUQsV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEMsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVMsUUFBUTtnQkFDcEYsV0FBVyxDQUFDLFFBQVEsQ0FBQyxHQUFHO29CQUN0QixNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ25ELENBQUMsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ04sK0JBQStCO1lBQy9CLFdBQVcsR0FBRyxNQUFNLENBQUM7UUFDdkIsQ0FBQztRQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUVsRixNQUFNLENBQUMsV0FBVyxDQUFDO0lBQ3JCLENBQUMsQ0FBQ0E7QUFDSkEsQ0FBQ0E7QUE3QmUsYUFBSyxRQTZCcEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4uL3V0aWxzJztcblxuLy8gd2UgaGF2ZSB0byBwYXRjaCB0aGUgaW5zdGFuY2Ugc2luY2UgdGhlIHByb3RvIGlzIG5vbi1jb25maWd1cmFibGVcbmV4cG9ydCBmdW5jdGlvbiBhcHBseSgpIHtcbiAgdmFyIFdTID0gKDxhbnk+Z2xvYmFsKS5XZWJTb2NrZXQ7XG4gIC8vIE9uIFNhZmFyaSB3aW5kb3cuRXZlbnRUYXJnZXQgZG9lc24ndCBleGlzdCBzbyBuZWVkIHRvIHBhdGNoIFdTIGFkZC9yZW1vdmVFdmVudExpc3RlbmVyXG4gIC8vIE9uIG9sZGVyIENocm9tZSwgbm8gbmVlZCBzaW5jZSBFdmVudFRhcmdldCB3YXMgYWxyZWFkeSBwYXRjaGVkXG4gIGlmICghKDxhbnk+Z2xvYmFsKS5FdmVudFRhcmdldCkge1xuICAgIHV0aWxzLnBhdGNoRXZlbnRUYXJnZXRNZXRob2RzKFdTLnByb3RvdHlwZSk7XG4gIH1cbiAgKDxhbnk+Z2xvYmFsKS5XZWJTb2NrZXQgPSBmdW5jdGlvbihhLCBiKSB7XG4gICAgdmFyIHNvY2tldCA9IGFyZ3VtZW50cy5sZW5ndGggPiAxID8gbmV3IFdTKGEsIGIpIDogbmV3IFdTKGEpO1xuICAgIHZhciBwcm94eVNvY2tldDtcblxuICAgIC8vIFNhZmFyaSA3LjAgaGFzIG5vbi1jb25maWd1cmFibGUgb3duICdvbm1lc3NhZ2UnIGFuZCBmcmllbmRzIHByb3BlcnRpZXMgb24gdGhlIHNvY2tldCBpbnN0YW5jZVxuICAgIHZhciBvbm1lc3NhZ2VEZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzb2NrZXQsICdvbm1lc3NhZ2UnKTtcbiAgICBpZiAob25tZXNzYWdlRGVzYyAmJiBvbm1lc3NhZ2VEZXNjLmNvbmZpZ3VyYWJsZSA9PT0gZmFsc2UpIHtcbiAgICAgIHByb3h5U29ja2V0ID0gT2JqZWN0LmNyZWF0ZShzb2NrZXQpO1xuICAgICAgWydhZGRFdmVudExpc3RlbmVyJywgJ3JlbW92ZUV2ZW50TGlzdGVuZXInLCAnc2VuZCcsICdjbG9zZSddLmZvckVhY2goZnVuY3Rpb24ocHJvcE5hbWUpIHtcbiAgICAgICAgcHJveHlTb2NrZXRbcHJvcE5hbWVdID0gZnVuY3Rpb24oKSB7XG4gICAgICAgICAgcmV0dXJuIHNvY2tldFtwcm9wTmFtZV0uYXBwbHkoc29ja2V0LCBhcmd1bWVudHMpO1xuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHdlIGNhbiBwYXRjaCB0aGUgcmVhbCBzb2NrZXRcbiAgICAgIHByb3h5U29ja2V0ID0gc29ja2V0O1xuICAgIH1cblxuICAgIHV0aWxzLnBhdGNoUHJvcGVydGllcyhwcm94eVNvY2tldCwgWydvbmNsb3NlJywgJ29uZXJyb3InLCAnb25tZXNzYWdlJywgJ29ub3BlbiddKTtcblxuICAgIHJldHVybiBwcm94eVNvY2tldDtcbiAgfTtcbn1cbiJdfQ==
|
2126
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
2127
|
-
|
2128
|
-
/***/ },
|
2129
|
-
/* 19 */
|
2130
|
-
/***/ function(module, exports, __webpack_require__) {
|
2131
|
-
|
2132
|
-
/* WEBPACK VAR INJECTION */(function(global) {var utils = __webpack_require__(9);
|
2133
|
-
function apply() {
|
2134
|
-
if (global.navigator && global.navigator.geolocation) {
|
2135
|
-
utils.patchPrototype(global.navigator.geolocation, [
|
2136
|
-
'getCurrentPosition',
|
2137
|
-
'watchPosition'
|
2138
|
-
]);
|
1280
|
+
for (var prop in WS) {
|
1281
|
+
_global.WebSocket[prop] = WS[prop];
|
2139
1282
|
}
|
2140
1283
|
}
|
2141
1284
|
exports.apply = apply;
|
2142
|
-
|
2143
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
1285
|
+
|
2144
1286
|
|
2145
1287
|
/***/ },
|
2146
|
-
/*
|
1288
|
+
/* 8 */
|
2147
1289
|
/***/ function(module, exports, __webpack_require__) {
|
2148
1290
|
|
2149
|
-
|
2150
|
-
|
2151
|
-
|
1291
|
+
"use strict";
|
1292
|
+
var utils_1 = __webpack_require__(3);
|
1293
|
+
function patchTimer(window, setName, cancelName, nameSuffix) {
|
1294
|
+
var setNative = null;
|
1295
|
+
var clearNative = null;
|
1296
|
+
setName += nameSuffix;
|
1297
|
+
cancelName += nameSuffix;
|
1298
|
+
function scheduleTask(task) {
|
1299
|
+
var data = task.data;
|
1300
|
+
data.args[0] = task.invoke;
|
1301
|
+
data.handleId = setNative.apply(window, data.args);
|
1302
|
+
return task;
|
1303
|
+
}
|
1304
|
+
function clearTask(task) {
|
1305
|
+
return clearNative(task.data.handleId);
|
1306
|
+
}
|
1307
|
+
setNative = utils_1.patchMethod(window, setName, function (delegate) { return function (self, args) {
|
1308
|
+
if (typeof args[0] === 'function') {
|
1309
|
+
var zone = Zone.current;
|
1310
|
+
var options = {
|
1311
|
+
handleId: null,
|
1312
|
+
isPeriodic: nameSuffix === 'Interval',
|
1313
|
+
delay: (nameSuffix === 'Timeout' || nameSuffix === 'Interval') ? args[1] || 0 : null,
|
1314
|
+
args: args
|
1315
|
+
};
|
1316
|
+
return zone.scheduleMacroTask(setName, args[0], options, scheduleTask, clearTask);
|
1317
|
+
}
|
1318
|
+
else {
|
1319
|
+
// cause an error by calling it directly.
|
1320
|
+
return delegate.apply(window, args);
|
1321
|
+
}
|
1322
|
+
}; });
|
1323
|
+
clearNative = utils_1.patchMethod(window, cancelName, function (delegate) { return function (self, args) {
|
1324
|
+
var task = args[0];
|
1325
|
+
if (task && typeof task.type === 'string') {
|
1326
|
+
if (task.cancelFn && task.data.isPeriodic || task.runCount === 0) {
|
1327
|
+
// Do not cancel already canceled functions
|
1328
|
+
task.zone.cancelTask(task);
|
1329
|
+
}
|
1330
|
+
}
|
1331
|
+
else {
|
1332
|
+
// cause an error by calling it directly.
|
1333
|
+
delegate.apply(window, args);
|
1334
|
+
}
|
1335
|
+
}; });
|
2152
1336
|
}
|
2153
|
-
exports.
|
2154
|
-
|
1337
|
+
exports.patchTimer = patchTimer;
|
1338
|
+
|
2155
1339
|
|
2156
1340
|
/***/ }
|
2157
1341
|
/******/ ]);
|
@@ -2199,97 +1383,127 @@ THE SOFTWARE.
|
|
2199
1383
|
/************************************************************************/
|
2200
1384
|
/******/ ([
|
2201
1385
|
/* 0 */
|
2202
|
-
/***/ function(module, exports, __webpack_require__) {
|
2203
|
-
|
2204
|
-
/* WEBPACK VAR INJECTION */(function(global) {var long_stack_trace_1 = __webpack_require__(1);
|
2205
|
-
if (!global.Zone) {
|
2206
|
-
throw new Error('zone.js should be installed before loading the long stack trace zone');
|
2207
|
-
}
|
2208
|
-
global.Zone.longStackTraceZone = long_stack_trace_1.longStackTraceZone;
|
2209
|
-
//# sourceMappingURLDisabled=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9uZy1zdGFjay10cmFjZS16b25lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2Jyb3dzZXIvbG9uZy1zdGFjay10cmFjZS16b25lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlDQUFpQywyQkFBMkIsQ0FBQyxDQUFBO0FBRTdELEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxzRUFBc0UsQ0FBQyxDQUFDO0FBQzFGLENBQUM7QUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLHFDQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtsb25nU3RhY2tUcmFjZVpvbmV9IGZyb20gJy4uL3pvbmVzL2xvbmctc3RhY2stdHJhY2UnO1xuXG5pZiAoIWdsb2JhbC5ab25lKSB7XG4gIHRocm93IG5ldyBFcnJvcignem9uZS5qcyBzaG91bGQgYmUgaW5zdGFsbGVkIGJlZm9yZSBsb2FkaW5nIHRoZSBsb25nIHN0YWNrIHRyYWNlIHpvbmUnKTtcbn1cblxuZ2xvYmFsLlpvbmUubG9uZ1N0YWNrVHJhY2Vab25lID0gbG9uZ1N0YWNrVHJhY2Vab25lO1xuIl19
|
2210
|
-
/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
2211
|
-
|
2212
|
-
/***/ },
|
2213
|
-
/* 1 */
|
2214
1386
|
/***/ function(module, exports) {
|
2215
1387
|
|
2216
|
-
/* WEBPACK VAR INJECTION */(function(global) {/*
|
2217
|
-
* Wrapped stacktrace
|
2218
|
-
*
|
2219
|
-
* We need this because in some implementations, constructing a trace is slow
|
2220
|
-
* and so we want to defer accessing the trace for as long as possible
|
2221
|
-
*/
|
2222
1388
|
'use strict';
|
2223
|
-
function
|
2224
|
-
|
2225
|
-
|
2226
|
-
|
2227
|
-
|
2228
|
-
|
2229
|
-
|
2230
|
-
.
|
2231
|
-
.
|
1389
|
+
(function () {
|
1390
|
+
var NEWLINE = '\n';
|
1391
|
+
var SEP = ' ------------- ';
|
1392
|
+
var IGNORE_FRAMES = [];
|
1393
|
+
var creationTrace = '__creationTrace__';
|
1394
|
+
var LongStackTrace = (function () {
|
1395
|
+
function LongStackTrace() {
|
1396
|
+
this.error = getStacktrace();
|
1397
|
+
this.timestamp = new Date();
|
1398
|
+
}
|
1399
|
+
return LongStackTrace;
|
1400
|
+
}());
|
1401
|
+
function getStacktraceWithUncaughtError() {
|
1402
|
+
return new Error('STACKTRACE TRACKING');
|
2232
1403
|
}
|
2233
|
-
|
2234
|
-
|
2235
|
-
|
2236
|
-
|
2237
|
-
|
2238
|
-
|
2239
|
-
|
2240
|
-
throw new Error();
|
1404
|
+
function getStacktraceWithCaughtError() {
|
1405
|
+
try {
|
1406
|
+
throw getStacktraceWithUncaughtError();
|
1407
|
+
}
|
1408
|
+
catch (e) {
|
1409
|
+
return e;
|
1410
|
+
}
|
2241
1411
|
}
|
2242
|
-
|
2243
|
-
|
1412
|
+
// Some implementations of exception handling don't create a stack trace if the exception
|
1413
|
+
// isn't thrown, however it's faster not to actually throw the exception.
|
1414
|
+
var error = getStacktraceWithUncaughtError();
|
1415
|
+
var coughtError = getStacktraceWithCaughtError();
|
1416
|
+
var getStacktrace = error.stack
|
1417
|
+
? getStacktraceWithUncaughtError
|
1418
|
+
: (coughtError.stack ? getStacktraceWithCaughtError : getStacktraceWithUncaughtError);
|
1419
|
+
function getFrames(error) {
|
1420
|
+
return error.stack ? error.stack.split(NEWLINE) : [];
|
1421
|
+
}
|
1422
|
+
function addErrorStack(lines, error) {
|
1423
|
+
var trace = getFrames(error);
|
1424
|
+
for (var i = 0; i < trace.length; i++) {
|
1425
|
+
var frame = trace[i];
|
1426
|
+
// Filter out the Frames which are part of stack capturing.
|
1427
|
+
if (!(i < IGNORE_FRAMES.length && IGNORE_FRAMES[i] === frame)) {
|
1428
|
+
lines.push(trace[i]);
|
1429
|
+
}
|
1430
|
+
}
|
2244
1431
|
}
|
2245
|
-
|
2246
|
-
|
2247
|
-
|
2248
|
-
|
2249
|
-
|
2250
|
-
|
2251
|
-
|
2252
|
-
|
2253
|
-
|
2254
|
-
|
2255
|
-
var currentZone = this;
|
2256
|
-
if (exception) {
|
2257
|
-
if (currentZone.stackFramesFilter && exception.stack) {
|
2258
|
-
traces.push(exception.stack.split('\n')
|
2259
|
-
.filter(currentZone.stackFramesFilter)
|
2260
|
-
.join('\n'));
|
1432
|
+
function renderLongStackTrace(frames, stack) {
|
1433
|
+
var longTrace = [stack];
|
1434
|
+
if (frames) {
|
1435
|
+
var timestamp = new Date().getTime();
|
1436
|
+
for (var i = 0; i < frames.length; i++) {
|
1437
|
+
var traceFrames = frames[i];
|
1438
|
+
var lastTime = traceFrames.timestamp;
|
1439
|
+
longTrace.push(SEP + " Elapsed: " + (timestamp - lastTime.getTime()) + " ms; At: " + lastTime + " " + SEP);
|
1440
|
+
addErrorStack(longTrace, traceFrames.error);
|
1441
|
+
timestamp = lastTime.getTime();
|
2261
1442
|
}
|
2262
|
-
|
2263
|
-
|
1443
|
+
}
|
1444
|
+
return longTrace.join(NEWLINE);
|
1445
|
+
}
|
1446
|
+
Zone['longStackTraceZoneSpec'] = {
|
1447
|
+
name: 'long-stack-trace',
|
1448
|
+
longStackTraceLimit: 10,
|
1449
|
+
onScheduleTask: function (parentZoneDelegate, currentZone, targetZone, task) {
|
1450
|
+
var currentTask = Zone.currentTask;
|
1451
|
+
var trace = currentTask && currentTask.data && currentTask.data[creationTrace] || [];
|
1452
|
+
trace = [new LongStackTrace()].concat(trace);
|
1453
|
+
if (trace.length > this.longStackTraceLimit) {
|
1454
|
+
trace.length = this.longStackTraceLimit;
|
1455
|
+
}
|
1456
|
+
if (!task.data)
|
1457
|
+
task.data = {};
|
1458
|
+
task.data[creationTrace] = trace;
|
1459
|
+
return parentZoneDelegate.scheduleTask(targetZone, task);
|
1460
|
+
},
|
1461
|
+
onHandleError: function (parentZoneDelegate, currentZone, targetZone, error) {
|
1462
|
+
var parentTask = Zone.currentTask;
|
1463
|
+
if (error instanceof Error && parentTask) {
|
1464
|
+
var descriptor = Object.getOwnPropertyDescriptor(error, 'stack');
|
1465
|
+
if (descriptor) {
|
1466
|
+
var delegateGet_1 = descriptor.get;
|
1467
|
+
var value_1 = descriptor.value;
|
1468
|
+
descriptor = {
|
1469
|
+
get: function () {
|
1470
|
+
return renderLongStackTrace(parentTask.data && parentTask.data[creationTrace], delegateGet_1 ? delegateGet_1.apply(this) : value_1);
|
1471
|
+
}
|
1472
|
+
};
|
1473
|
+
Object.defineProperty(error, 'stack', descriptor);
|
1474
|
+
}
|
1475
|
+
else {
|
1476
|
+
error.stack = renderLongStackTrace(parentTask.data && parentTask.data[creationTrace], error.stack);
|
1477
|
+
}
|
2264
1478
|
}
|
1479
|
+
return parentZoneDelegate.handleError(targetZone, error);
|
2265
1480
|
}
|
2266
|
-
|
2267
|
-
|
2268
|
-
|
2269
|
-
|
2270
|
-
|
1481
|
+
};
|
1482
|
+
function captureStackTraces(stackTraces, count) {
|
1483
|
+
if (count > 0) {
|
1484
|
+
stackTraces.push(getFrames((new LongStackTrace()).error));
|
1485
|
+
captureStackTraces(stackTraces, count - 1);
|
2271
1486
|
}
|
2272
|
-
return traces.join('\n');
|
2273
|
-
},
|
2274
|
-
stackFramesFilter: function (line) {
|
2275
|
-
return !/zone(-microtask)?(\.min)?\.js/.test(line);
|
2276
|
-
},
|
2277
|
-
onError: function (exception) {
|
2278
|
-
var reporter = this.reporter || console.log.bind(console);
|
2279
|
-
reporter(exception.toString());
|
2280
|
-
reporter(this.getLongStacktrace(exception));
|
2281
|
-
},
|
2282
|
-
'$fork': function (parentFork) {
|
2283
|
-
return function () {
|
2284
|
-
var newZone = parentFork.apply(this, arguments);
|
2285
|
-
newZone.constructedAtException = _getStacktrace();
|
2286
|
-
newZone.constructedAtTime = Date.now();
|
2287
|
-
return newZone;
|
2288
|
-
};
|
2289
1487
|
}
|
2290
|
-
|
2291
|
-
|
2292
|
-
|
1488
|
+
function computeIgnoreFrames() {
|
1489
|
+
var frames = [];
|
1490
|
+
captureStackTraces(frames, 2);
|
1491
|
+
var frames1 = frames[0];
|
1492
|
+
var frames2 = frames[1];
|
1493
|
+
for (var i = 0; i < frames1.length; i++) {
|
1494
|
+
var frame1 = frames1[i];
|
1495
|
+
var frame2 = frames2[i];
|
1496
|
+
if (frame1 === frame2) {
|
1497
|
+
IGNORE_FRAMES.push(frame1);
|
1498
|
+
}
|
1499
|
+
else {
|
1500
|
+
break;
|
1501
|
+
}
|
1502
|
+
}
|
1503
|
+
}
|
1504
|
+
computeIgnoreFrames();
|
1505
|
+
})();
|
1506
|
+
|
2293
1507
|
|
2294
1508
|
/***/ }
|
2295
1509
|
/******/ ]);
|