refactor(platform-browser): move platform-browser/animations to animations/browser (#15043)

This commit is contained in:
Matias Niemelä 2017-02-28 17:49:37 -08:00 committed by Chuck Jazdzewski
parent 75147ff008
commit 195b863ea4
58 changed files with 210 additions and 84 deletions

View File

@ -0,0 +1,9 @@
{
"presets": ["es2015"],
"plugins": [["transform-es2015-modules-umd", {
"globals": {
},
"exactGlobals": true
}]],
"moduleId": "@angular/animations/browser"
}

View File

@ -0,0 +1,11 @@
{
"presets": ["es2015"],
"plugins": [["transform-es2015-modules-umd", {
"globals": {
"@angular/animations": "ng.animations"
},
"exactGlobals": true
}]],
"moduleId": "@angular/animations/browser/testing"
}

View File

@ -0,0 +1,14 @@
/**
* @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
*/
// This file is not used to build this module. It is only used during editing
// by the TypeScript language serivce and during build for verifcation. `ngc`
// replaces this file with production index.ts when it rewrites private symbol
// names.
export * from './src/browser';

View File

@ -0,0 +1,14 @@
/**
* @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 animation package.
*/
export * from './src/browser';

View File

@ -0,0 +1,15 @@
/**
* @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 animation APIs of the animation browser package.
*/
export {AnimationDriver} from './render/animation_driver';
export * from './private_export';

View File

@ -0,0 +1,15 @@
/**
* @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
*/
export {AnimationEngine as ɵAnimationEngine} from './animation_engine';
export {Animation as ɵAnimation} from './dsl/animation';
export {AnimationStyleNormalizer as ɵAnimationStyleNormalizer, NoopAnimationStyleNormalizer as ɵNoopAnimationStyleNormalizer} from './dsl/style_normalization/animation_style_normalizer';
export {WebAnimationsStyleNormalizer as ɵWebAnimationsStyleNormalizer} from './dsl/style_normalization/web_animations_style_normalizer';
export {NoopAnimationDriver as ɵNoopAnimationDriver} from './render/animation_driver';
export {DomAnimationEngine as ɵDomAnimationEngine} from './render/dom_animation_engine';
export {NoopAnimationEngine as ɵNoopAnimationEngine} from './render/noop_animation_engine';
export {WebAnimationsDriver as ɵWebAnimationsDriver, supportsWebAnimations as ɵsupportsWebAnimations} from './render/web_animations/web_animations_driver';

View File

@ -6,13 +6,13 @@
* found in the LICENSE file at https://angular.io/license
*/
import {AnimationEvent, NoopAnimationPlayer, animate, keyframes, state, style, transition, trigger} from '@angular/animations';
import {el} from '@angular/platform-browser/testing/src/browser_util';
import {el} from '@angular/platform-browser/testing/browser_util';
import {buildAnimationKeyframes} from '../../src/dsl/animation_timeline_visitor';
import {buildTrigger} from '../../src/dsl/animation_trigger';
import {AnimationStyleNormalizer, NoopAnimationStyleNormalizer} from '../../src/dsl/style_normalization/animation_style_normalizer';
import {DomAnimationEngine} from '../../src/render/dom_animation_engine';
import {MockAnimationDriver, MockAnimationPlayer} from '../../testing/src/mock_animation_driver';
import {MockAnimationDriver, MockAnimationPlayer} from '../../testing/mock_animation_driver';
function makeTrigger(name: string, steps: any) {
const triggerData = trigger(name, steps);

View File

@ -7,7 +7,7 @@
*/
import {AUTO_STYLE, AnimationPlayer, NoopAnimationPlayer, ɵStyleData} from '@angular/animations';
import {AnimationDriver} from '../../src/render/animation_driver';
import {AnimationDriver} from '../src/render/animation_driver';
/**
* @experimental Animation support is experimental.

View File

@ -0,0 +1,18 @@
{
"extends": "./tsconfig-build",
"compilerOptions": {
"outDir": "../../../dist/packages-dist/animations",
"paths": {
"@angular/animations": ["../../../dist/packages-dist/animations"]
}
},
"files": [
"browser/testing/index.ts",
"../../../node_modules/@types/hammerjs/index.d.ts",
"../../../node_modules/@types/jasmine/index.d.ts",
"../../../node_modules/zone.js/dist/zone.js.d.ts"
],
"angularCompilerOptions": {
"strictMetadataEmit": true
}
}

View File

@ -0,0 +1,21 @@
{
"extends": "./tsconfig-build",
"compilerOptions": {
"outDir": "../../../dist/packages-dist/animations",
"paths": {
"@angular/animations": ["../../../dist/packages-dist/animations"]
}
},
"files": [
"browser/public_api.ts",
"../../../node_modules/zone.js/dist/zone.js.d.ts",
"../../system.d.ts"
],
"angularCompilerOptions": {
"annotateForClosureCompiler": true,
"strictMetadataEmit": true,
"flatModuleOutFile": "index.js",
"flatModuleId": "@angular/animations/browser"
}
}

View File

@ -12,7 +12,21 @@
* Entry point for all public APIs of the animation package.
*/
import {Version} from '@angular/core';
/**
* @whatItDoes Represents the version of angular/animations
*
* @stable
*/
export class Version {
constructor(public full: string) {}
get major(): string { return this.full.split('.')[0]; }
get minor(): string { return this.full.split('.')[1]; }
get patch(): string { return this.full.split('.').slice(2).join('.'); }
}
/**
* @stable
*/

View File

@ -6,10 +6,8 @@
"experimentalDecorators": true,
"module": "es2015",
"moduleResolution": "node",
"outDir": "../../dist/packages/animations",
"outDir": "../../../dist/packages-dist/animations",
"paths": {
"@angular/core": ["../../dist/packages/core"],
"@angular/core/testing": ["../../dist/packages/core/testing"]
},
"rootDir": ".",
"sourceMap": true,
@ -22,8 +20,8 @@
},
"files": [
"public_api.ts",
"../../node_modules/zone.js/dist/zone.js.d.ts",
"../system.d.ts"
"../../../node_modules/zone.js/dist/zone.js.d.ts",
"../../system.d.ts"
],
"angularCompilerOptions": {
"annotateForClosureCompiler": true,

View File

@ -6,9 +6,10 @@
* found in the LICENSE file at https://angular.io/license
*/
import {ɵAnimationEngine} from '@angular/animations/browser';
import {ApplicationRef, NgModule, NgZone, Provider, RendererFactory2} from '@angular/core';
import {FormsModule} from '@angular/forms';
import {NoopAnimationsModule, ɵAnimationEngine, ɵAnimationRendererFactory} from '@angular/platform-browser/animations';
import {NoopAnimationsModule, ɵAnimationRendererFactory} from '@angular/platform-browser/animations';
import {ServerModule, ɵServerRendererFactory2} from '@angular/platform-server';
import {MdButtonModule} from '@angular2-material/button';
// Note: don't refer to third_party_src as we want to test that

View File

@ -6,10 +6,11 @@
* found in the LICENSE file at https://angular.io/license
*/
import {AUTO_STYLE, AnimationEvent, animate, keyframes, state, style, transition, trigger} from '@angular/animations';
import {AnimationDriver, ɵAnimationEngine} from '@angular/animations/browser';
import {MockAnimationDriver, MockAnimationPlayer} from '@angular/animations/browser/testing';
import {Component, HostBinding, HostListener, RendererFactory2, ViewChild} from '@angular/core';
import {ɵDomRendererFactory2} from '@angular/platform-browser';
import {AnimationDriver, BrowserAnimationsModule, ɵAnimationEngine} from '@angular/platform-browser/animations';
import {MockAnimationDriver, MockAnimationPlayer} from '@angular/platform-browser/animations/testing';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {getDOM} from '@angular/platform-browser/src/dom/dom_adapter';
import {TestBed} from '../../testing';

View File

@ -11,6 +11,7 @@ System.config({
'@angular/common': '/vendor/@angular/common/bundles/common.umd.js',
'@angular/compiler': '/vendor/@angular/compiler/bundles/compiler.umd.js',
'@angular/animations': '/vendor/@angular/animations/bundles/animations.umd.js',
'@angular/animations/browser': '/vendor/@angular/animations/bundles/animations-browser.umd.js',
'@angular/platform-browser/animations':
'/vendor/@angular/platform-browser/bundles/platform-browser-animations.umd.js',
'@angular/core': '/vendor/@angular/core/bundles/core.umd.js',

View File

@ -7,7 +7,8 @@
*/
// #docregion Component
import {Component, NgModule, animate, state, style, transition, trigger} from '@angular/core';
import {animate, state, style, transition, trigger} from '@angular/animations';
import {Component, NgModule} from '@angular/core';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
@Component({

View File

@ -5,11 +5,10 @@
* 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
*/
import {AnimationEvent, AnimationTriggerMetadata} from '@angular/animations';
import {AnimationTriggerMetadata} from '@angular/animations';
import {ɵAnimationEngine as AnimationEngine} from '@angular/animations/browser';
import {Injectable, NgZone, Renderer2, RendererFactory2, RendererStyleFlags2, RendererType2} from '@angular/core';
import {AnimationEngine} from '../animation_engine';
@Injectable()
export class AnimationRendererFactory implements RendererFactory2 {
constructor(

View File

@ -12,5 +12,4 @@
* Entry point for all animation APIs of the animation browser package.
*/
export {BrowserAnimationsModule, NoopAnimationsModule} from './module';
export {AnimationDriver} from './render/animation_driver';
export * from './private_export';

View File

@ -6,7 +6,7 @@
* found in the LICENSE file at https://angular.io/license
*/
import {NgModule} from '@angular/core';
import {BrowserModule, ɵDomRendererFactory2} from '@angular/platform-browser';
import {BrowserModule} from '@angular/platform-browser';
import {BROWSER_ANIMATIONS_PROVIDERS, BROWSER_NOOP_ANIMATIONS_PROVIDERS} from './providers';

View File

@ -5,9 +5,4 @@
* 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
*/
export {AnimationEngine as ɵAnimationEngine} from './animation_engine';
export {Animation as ɵAnimation} from './dsl/animation';
export {AnimationStyleNormalizer as ɵAnimationStyleNormalizer, NoopAnimationStyleNormalizer as ɵNoopAnimationStyleNormalizer} from './dsl/style_normalization/animation_style_normalizer';
export {NoopAnimationDriver as ɵNoopAnimationDriver} from './render/animation_driver';
export {AnimationRenderer as ɵAnimationRenderer, AnimationRendererFactory as ɵAnimationRendererFactory} from './render/animation_renderer';
export {DomAnimationEngine as ɵDomAnimationEngine} from './render/dom_animation_engine';
export {AnimationRenderer as ɵAnimationRenderer, AnimationRendererFactory as ɵAnimationRendererFactory} from './animation_renderer';

View File

@ -6,17 +6,11 @@
* found in the LICENSE file at https://angular.io/license
*/
import {AnimationDriver, ɵAnimationEngine as AnimationEngine, ɵAnimationStyleNormalizer as AnimationStyleNormalizer, ɵDomAnimationEngine as DomAnimationEngine, ɵNoopAnimationDriver as NoopAnimationDriver, ɵNoopAnimationEngine as NoopAnimationEngine, ɵWebAnimationsDriver as WebAnimationsDriver, ɵWebAnimationsStyleNormalizer as WebAnimationsStyleNormalizer, ɵsupportsWebAnimations as supportsWebAnimations} from '@angular/animations/browser';
import {Injectable, NgZone, Provider, RendererFactory2} from '@angular/core';
import {ɵDomRendererFactory2} from '@angular/platform-browser';
import {AnimationEngine} from './animation_engine';
import {AnimationStyleNormalizer} from './dsl/style_normalization/animation_style_normalizer';
import {WebAnimationsStyleNormalizer} from './dsl/style_normalization/web_animations_style_normalizer';
import {AnimationDriver, NoopAnimationDriver} from './render/animation_driver';
import {AnimationRendererFactory} from './render/animation_renderer';
import {DomAnimationEngine} from './render/dom_animation_engine';
import {NoopAnimationEngine} from './render/noop_animation_engine';
import {WebAnimationsDriver, supportsWebAnimations} from './render/web_animations/web_animations_driver';
import {AnimationRendererFactory} from './animation_renderer';
@Injectable()
export class InjectableAnimationEngine extends DomAnimationEngine {
@ -65,4 +59,4 @@ export const BROWSER_NOOP_ANIMATIONS_PROVIDERS: Provider[] = [
useFactory: instantiateRendererFactory,
deps: [ɵDomRendererFactory2, AnimationEngine, NgZone]
}
];
];

View File

@ -6,9 +6,8 @@
* found in the LICENSE file at https://angular.io/license
*/
import {state, style, trigger} from '@angular/animations';
import {el} from '@angular/platform-browser/testing/src/browser_util';
import {NoopAnimationEngine} from '../src/render/noop_animation_engine';
import {ɵNoopAnimationEngine as NoopAnimationEngine} from '@angular/animations/browser';
import {el} from '@angular/platform-browser/testing/browser_util';
export function main() {
describe('NoopAnimationEngine', () => {

View File

@ -5,12 +5,12 @@
* 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
*/
import {animate, state, style, transition, trigger} from '@angular/animations';
import {animate, style, transition, trigger} from '@angular/animations';
import {ɵAnimationEngine, ɵNoopAnimationEngine} from '@angular/animations/browser';
import {Component} from '@angular/core';
import {TestBed} from '@angular/core/testing';
import {ɵAnimationEngine} from '@angular/platform-browser/animations';
import {NoopAnimationsModule} from '../src/module';
import {NoopAnimationEngine} from '../src/render/noop_animation_engine';
export function main() {
describe('NoopAnimationsModule', () => {
@ -18,7 +18,7 @@ export function main() {
it('the engine should be a Noop engine', () => {
const engine = TestBed.get(ɵAnimationEngine);
expect(engine instanceof NoopAnimationEngine).toBeTruthy();
expect(engine instanceof ɵNoopAnimationEngine).toBeTruthy();
});
it('should flush and fire callbacks when the zone becomes stable', (async) => {

View File

@ -1,24 +0,0 @@
{
"extends": "../../tsconfig-build",
"compilerOptions": {
"outDir": "../../../../dist/packages/platform-browser",
"paths": {
"@angular/core": ["../../dist/packages/core"],
"@angular/core/testing": ["../../dist/packages/core/testing"],
"@angular/animations": ["../../dist/packages/animations"],
"@angular/platform-browser": ["../../dist/packages/platform-browser"],
"@angular/platform-browser/animations": ["../../dist/packages/platform-browser/animations"],
"@angular/common": ["../../dist/packages/common"],
"@angular/common/testing": ["../../dist/packages/common/testing"]
}
},
"files": [
"index.ts",
"../../../../node_modules/@types/hammerjs/index.d.ts",
"../../../../node_modules/@types/jasmine/index.d.ts",
"../../../../node_modules/zone.js/dist/zone.js.d.ts"
],
"angularCompilerOptions": {
"strictMetadataEmit": true
}
}

View File

@ -1,18 +1,19 @@
{
"extends": "../tsconfig-build",
"extends": "./tsconfig-build",
"compilerOptions": {
"outDir": "../../../dist/packages/platform-browser",
"outDir": "../../../dist/packages-dist/platform-browser",
"paths": {
"rxjs/*": ["../../node_modules/rxjs/*"],
"@angular/core": ["../../dist/packages/core"],
"@angular/core/testing": ["../../dist/packages/core/testing"],
"@angular/animations": ["../../dist/packages/animations"],
"@angular/platform-browser": ["../../dist/packages/platform-browser"]
"rxjs/*": ["../../../node_modules/rxjs/*"],
"@angular/core": ["../../../dist/packages-dist/core"],
"@angular/core/testing": ["../../../dist/packages-dist/core/testing"],
"@angular/animations": ["../../../dist/packages-dist/animations"],
"@angular/animations/browser": ["../../../dist/packages-dist/animations/browser"],
"@angular/platform-browser": ["../../../dist/packages-dist/platform-browser"]
}
},
"files": [
"public_api.ts",
"animations/public_api.ts",
"../../../node_modules/zone.js/dist/zone.js.d.ts",
"../../system.d.ts"
],

View File

@ -6,9 +6,10 @@
* found in the LICENSE file at https://angular.io/license
*/
import {AnimationPlayer, AnimationTriggerMetadata, animate, state, style, transition, trigger} from '@angular/animations';
import {ɵAnimationEngine} from '@angular/animations/browser';
import {Component, Injectable, RendererFactory2, RendererType2, ViewChild} from '@angular/core';
import {TestBed} from '@angular/core/testing';
import {BrowserAnimationsModule, ɵAnimationEngine, ɵAnimationRendererFactory} from '@angular/platform-browser/animations';
import {BrowserAnimationsModule, ɵAnimationRendererFactory} from '@angular/platform-browser/animations';
import {InjectableAnimationEngine} from '../../animations/src/providers';
import {el} from '../../testing/src/browser_util';

View File

@ -33,6 +33,8 @@ System.config({
packages: {
'@angular/core/testing': {main: 'index.js', defaultExtension: 'js'},
'@angular/core': {main: 'index.js', defaultExtension: 'js'},
'@angular/animations/browser/testing': {main: 'index.js', defaultExtension: 'js'},
'@angular/animations/browser': {main: 'index.js', defaultExtension: 'js'},
'@angular/animations/testing': {main: 'index.js', defaultExtension: 'js'},
'@angular/animations': {main: 'index.js', defaultExtension: 'js'},
'@angular/compiler/testing': {main: 'index.js', defaultExtension: 'js'},

View File

@ -7,7 +7,7 @@ const entrypoints = [
//'dist/packages-dist/compiler/index.d.ts',
//'dist/packages-dist/compiler/testing.d.ts',
'dist/packages-dist/upgrade/typings/upgrade.d.ts',
'dist/packages-dist/upgrade/typings/static/index.d.ts',
'dist/packages-dist/upgrade/typings/static/static.d.ts',
'dist/packages-dist/platform-browser/typings/platform-browser.d.ts',
'dist/packages-dist/platform-browser/typings/testing/index.d.ts',
'dist/packages-dist/platform-browser-dynamic/typings/platform-browser-dynamic.d.ts',
@ -19,8 +19,9 @@ const entrypoints = [
'dist/packages-dist/http/typings/http.d.ts', 'dist/packages-dist/http/typings/testing/index.d.ts',
'dist/packages-dist/forms/typings/forms.d.ts', 'dist/packages-dist/router/typings/router.d.ts',
'dist/packages-dist/animations/typings/animations.d.ts',
'dist/packages-dist/platform-browser/typings/animations/index.d.ts',
'dist/packages-dist/platform-browser/typings/animations/testing/index.d.ts'
'dist/packages-dist/animations/typings/browser/browser.d.ts',
'dist/packages-dist/animations/typings/browser/testing/index.d.ts',
'dist/packages-dist/platform-browser/typings/animations/animations.d.ts'
];
const publicApiDir = 'tools/public_api_guard';

View File

@ -0,0 +1,7 @@
/** @experimental */
export declare abstract class AnimationDriver {
abstract animate(element: any, keyframes: {
[key: string]: string | number;
}[], duration: number, delay: number, easing: string, previousPlayers?: any[]): any;
static NOOP: AnimationDriver;
}

View File

@ -0,0 +1,27 @@
/** @experimental */
export declare class MockAnimationDriver implements AnimationDriver {
animate(element: any, keyframes: {
[key: string]: string | number;
}[], duration: number, delay: number, easing: string, previousPlayers?: any[]): MockAnimationPlayer;
static log: AnimationPlayer[];
}
/** @experimental */
export declare class MockAnimationPlayer extends NoopAnimationPlayer {
delay: number;
duration: number;
easing: string;
element: any;
keyframes: {
[key: string]: string | number;
}[];
previousPlayers: any[];
previousStyles: {
[key: string]: string | number;
};
constructor(element: any, keyframes: {
[key: string]: string | number;
}[], duration: number, delay: number, easing: string, previousPlayers: any[]);
destroy(): void;
finish(): void;
}

View File

@ -1,11 +1,3 @@
/** @experimental */
export declare abstract class AnimationDriver {
abstract animate(element: any, keyframes: {
[key: string]: string | number;
}[], duration: number, delay: number, easing: string, previousPlayers?: any[]): any;
static NOOP: AnimationDriver;
}
/** @experimental */
export declare class BrowserAnimationsModule {
}