/** * @license Angular v8.1.3 * (c) 2010-2019 Google LLC. https://angular.io/ * License: MIT */ import { __decorate } from 'tslib'; import { ɵglobal, NgZone, createPlatformFactory, platformCore, NgModule, APP_ID, PLATFORM_INITIALIZER } from '@angular/core'; import { ɵgetDOM, BrowserModule, ɵELEMENT_PROBE_PROVIDERS, ɵBrowserDomAdapter } from '@angular/platform-browser'; /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ var BrowserDetection = /** @class */ (function () { function BrowserDetection(ua) { this._overrideUa = ua; } Object.defineProperty(BrowserDetection.prototype, "_ua", { get: function () { if (typeof this._overrideUa === 'string') { return this._overrideUa; } return ɵgetDOM() ? ɵgetDOM().getUserAgent() : ''; }, enumerable: true, configurable: true }); BrowserDetection.setup = function () { }; Object.defineProperty(BrowserDetection.prototype, "isFirefox", { get: function () { return this._ua.indexOf('Firefox') > -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isAndroid", { get: function () { return this._ua.indexOf('Mozilla/5.0') > -1 && this._ua.indexOf('Android') > -1 && this._ua.indexOf('AppleWebKit') > -1 && this._ua.indexOf('Chrome') == -1 && this._ua.indexOf('IEMobile') == -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isEdge", { get: function () { return this._ua.indexOf('Edge') > -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isIE", { get: function () { return this._ua.indexOf('Trident') > -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isWebkit", { get: function () { return this._ua.indexOf('AppleWebKit') > -1 && this._ua.indexOf('Edge') == -1 && this._ua.indexOf('IEMobile') == -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isIOS7", { get: function () { return (this._ua.indexOf('iPhone OS 7') > -1 || this._ua.indexOf('iPad OS 7') > -1) && this._ua.indexOf('IEMobile') == -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isSlow", { get: function () { return this.isAndroid || this.isIE || this.isIOS7; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "supportsNativeIntlApi", { // The Intl API is only natively supported in Chrome, Firefox, IE11 and Edge. // This detector is needed in tests to make the difference between: // 1) IE11/Edge: they have a native Intl API, but with some discrepancies // 2) IE9/IE10: they use the polyfill, and so no discrepancies get: function () { return !!ɵglobal.Intl && ɵglobal.Intl !== ɵglobal.IntlPolyfill; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isChromeDesktop", { get: function () { return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Mobile Safari') == -1 && this._ua.indexOf('Edge') == -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "isOldChrome", { // "Old Chrome" means Chrome 3X, where there are some discrepancies in the Intl API. // Android 4.4 and 5.X have such browsers by default (respectively 30 and 39). get: function () { return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Chrome/3') > -1 && this._ua.indexOf('Edge') == -1; }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "supportsCustomElements", { get: function () { return (typeof ɵglobal.customElements !== 'undefined'); }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "supportsDeprecatedCustomCustomElementsV0", { get: function () { return (typeof document.registerElement !== 'undefined'); }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "supportsRegExUnicodeFlag", { get: function () { return RegExp.prototype.hasOwnProperty('unicode'); }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "supportsShadowDom", { get: function () { var testEl = document.createElement('div'); return (typeof testEl.attachShadow !== 'undefined'); }, enumerable: true, configurable: true }); Object.defineProperty(BrowserDetection.prototype, "supportsDeprecatedShadowDomV0", { get: function () { var testEl = document.createElement('div'); return (typeof testEl.createShadowRoot !== 'undefined'); }, enumerable: true, configurable: true }); return BrowserDetection; }()); BrowserDetection.setup(); function createNgZone() { return new NgZone({ enableLongStackTrace: true }); } function initBrowserTests() { ɵBrowserDomAdapter.makeCurrent(); BrowserDetection.setup(); } var _TEST_BROWSER_PLATFORM_PROVIDERS = [{ provide: PLATFORM_INITIALIZER, useValue: initBrowserTests, multi: true }]; /** * Platform for testing * * @publicApi */ var platformBrowserTesting = createPlatformFactory(platformCore, 'browserTesting', _TEST_BROWSER_PLATFORM_PROVIDERS); var ɵ0 = createNgZone; /** * NgModule for testing. * * @publicApi */ var BrowserTestingModule = /** @class */ (function () { function BrowserTestingModule() { } BrowserTestingModule = __decorate([ NgModule({ exports: [BrowserModule], providers: [ { provide: APP_ID, useValue: 'a' }, ɵELEMENT_PROBE_PROVIDERS, { provide: NgZone, useFactory: ɵ0 }, ] }) ], BrowserTestingModule); return BrowserTestingModule; }()); /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ /** * Generated bundle index. Do not edit. */ export { createNgZone as ɵangular_packages_platform_browser_testing_testing_a, platformBrowserTesting, BrowserTestingModule, ɵ0 }; //# sourceMappingURL=testing.js.map