Skip to content

Commit 72aad32

Browse files
arturovtmhevery
authored andcommitted
perf(animations): use ngDevMode to tree-shake warning (#39964)
This commit adds ngDevMode guard to show warning only in dev mode (similar to how things work in other parts of Ivy runtime code). The ngDevMode flag helps to tree-shake this warning from production builds (in dev mode everything will work as it works right now) to decrease production bundle size. PR Close #39964
1 parent bf3de9b commit 72aad32

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

packages/animations/browser/src/render/css_keyframes/css_keyframes_driver.ts

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ const TAB_SPACE = ' ';
2121
export class CssKeyframesDriver implements AnimationDriver {
2222
private _count = 0;
2323
private readonly _head: any = document.querySelector('head');
24-
private _warningIssued = false;
2524

2625
validateStyleProperty(prop: string): boolean {
2726
return validateStyleProperty(prop);
@@ -79,8 +78,8 @@ export class CssKeyframesDriver implements AnimationDriver {
7978
animate(
8079
element: any, keyframes: ɵStyleData[], duration: number, delay: number, easing: string,
8180
previousPlayers: AnimationPlayer[] = [], scrubberAccessRequested?: boolean): AnimationPlayer {
82-
if (scrubberAccessRequested) {
83-
this._notifyFaultyScrubber();
81+
if ((typeof ngDevMode === 'undefined' || ngDevMode) && scrubberAccessRequested) {
82+
notifyFaultyScrubber();
8483
}
8584

8685
const previousCssKeyframePlayers = <CssKeyframesPlayer[]>previousPlayers.filter(
@@ -117,15 +116,6 @@ export class CssKeyframesDriver implements AnimationDriver {
117116
player.onDestroy(() => removeElement(kfElm));
118117
return player;
119118
}
120-
121-
private _notifyFaultyScrubber() {
122-
if (!this._warningIssued) {
123-
console.warn(
124-
'@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n',
125-
' visit https://bit.ly/IWukam to learn more about using the web-animation-js polyfill.');
126-
this._warningIssued = true;
127-
}
128-
}
129119
}
130120

131121
function flattenKeyframesIntoStyles(keyframes: null|{[key: string]: any}|
@@ -146,3 +136,12 @@ function flattenKeyframesIntoStyles(keyframes: null|{[key: string]: any}|
146136
function removeElement(node: any) {
147137
node.parentNode.removeChild(node);
148138
}
139+
140+
let warningIssued = false;
141+
function notifyFaultyScrubber(): void {
142+
if (warningIssued) return;
143+
console.warn(
144+
'@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n',
145+
' visit https://bit.ly/IWukam to learn more about using the web-animation-js polyfill.');
146+
warningIssued = true;
147+
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy