blob: 0544ee5c7e4ccaba119ae032f6ede54a058b9bbd [file] [log] [blame]
/**
* @license Angular v5.2.0
* (c) 2010-2018 Google, Inc. https://angular.io/
* License: MIT
*/
import { APP_ID, NgModule, NgZone, PLATFORM_INITIALIZER, createPlatformFactory, platformCore, ɵglobal } from '@angular/core';
import { BrowserModule, ɵBrowserDomAdapter, ɵELEMENT_PROBE_PROVIDERS, ɵgetDOM } from '@angular/platform-browser';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @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
*/
let browserDetection;
class BrowserDetection {
/**
* @return {?}
*/
get _ua() {
if (typeof this._overrideUa === 'string') {
return this._overrideUa;
}
return ɵgetDOM() ? ɵgetDOM().getUserAgent() : '';
}
/**
* @return {?}
*/
static setup() { browserDetection = new BrowserDetection(null); }
/**
* @param {?} ua
*/
constructor(ua) { this._overrideUa = ua; }
/**
* @return {?}
*/
get isFirefox() { return this._ua.indexOf('Firefox') > -1; }
/**
* @return {?}
*/
get isAndroid() {
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;
}
/**
* @return {?}
*/
get isEdge() { return this._ua.indexOf('Edge') > -1; }
/**
* @return {?}
*/
get isIE() { return this._ua.indexOf('Trident') > -1; }
/**
* @return {?}
*/
get isWebkit() {
return this._ua.indexOf('AppleWebKit') > -1 && this._ua.indexOf('Edge') == -1 &&
this._ua.indexOf('IEMobile') == -1;
}
/**
* @return {?}
*/
get isIOS7() {
return (this._ua.indexOf('iPhone OS 7') > -1 || this._ua.indexOf('iPad OS 7') > -1) &&
this._ua.indexOf('IEMobile') == -1;
}
/**
* @return {?}
*/
get isSlow() { return this.isAndroid || this.isIE || this.isIOS7; }
/**
* @return {?}
*/
get supportsNativeIntlApi() {
return !!(/** @type {?} */ global)).Intl && (/** @type {?} */ global)).Intl !== (/** @type {?} */ global)).IntlPolyfill;
}
/**
* @return {?}
*/
get isChromeDesktop() {
return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Mobile Safari') == -1 &&
this._ua.indexOf('Edge') == -1;
}
/**
* @return {?}
*/
get isOldChrome() {
return this._ua.indexOf('Chrome') > -1 && this._ua.indexOf('Chrome/3') > -1 &&
this._ua.indexOf('Edge') == -1;
}
}
BrowserDetection.setup();
/**
* @param {?} element
* @param {?} eventType
* @return {?}
*/
/**
* @param {?} html
* @return {?}
*/
/**
* @param {?} css
* @return {?}
*/
/**
* @param {?} el
* @return {?}
*/
/**
* @return {?}
*/
function createNgZone() {
return new NgZone({ enableLongStackTrace: true });
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @return {?}
*/
function initBrowserTests() {
ɵBrowserDomAdapter.makeCurrent();
BrowserDetection.setup();
}
const _TEST_BROWSER_PLATFORM_PROVIDERS = [{ provide: PLATFORM_INITIALIZER, useValue: initBrowserTests, multi: true }];
/**
* Platform for testing
*
* \@stable
*/
const platformBrowserTesting = createPlatformFactory(platformCore, 'browserTesting', _TEST_BROWSER_PLATFORM_PROVIDERS);
const ɵ0 = createNgZone;
/**
* NgModule for testing.
*
* \@stable
*/
class BrowserTestingModule {
}
BrowserTestingModule.decorators = [
{ type: NgModule, args: [{
exports: [BrowserModule],
providers: [
{ provide: APP_ID, useValue: 'a' },
ɵELEMENT_PROBE_PROVIDERS,
{ provide: NgZone, useFactory: ɵ0 },
]
},] },
];
/** @nocollapse */
BrowserTestingModule.ctorParameters = () => [];
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @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
*/
/**
* @module
* @description
* Entry point for all public APIs of the platform-browser/testing package.
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @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
*/
/**
* @module
* @description
* Entry point for all public APIs of this package.
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* Generated bundle index. Do not edit.
*/
export { platformBrowserTesting, BrowserTestingModule, createNgZone as ɵa };
//# sourceMappingURL=testing.js.map