/// /// Copyright © 2016-2022 The Thingsboard Authors /// /// Licensed under the Apache License, Version 2.0 (the "License"); /// you may not use this file except in compliance with the License. /// You may obtain a copy of the License at /// /// http://www.apache.org/licenses/LICENSE-2.0 /// /// Unless required by applicable law or agreed to in writing, software /// distributed under the License is distributed on an "AS IS" BASIS, /// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. /// See the License for the specific language governing permissions and /// limitations under the License. /// import { animate, keyframes, query, stagger, state, style, transition, trigger } from '@angular/animations'; export const speedDialFabAnimations = [ trigger('fabToggler', [ state('inactive', style({ transform: 'rotate(0deg)' })), state('active', style({ transform: 'rotate(225deg)' })), transition('* <=> *', animate('200ms cubic-bezier(0.4, 0.0, 0.2, 1)')), ]), trigger('speedDialStagger', [ transition('* => *', [ query(':enter', style({ opacity: 0 }), {optional: true}), query(':enter', stagger('40ms', [ animate('200ms cubic-bezier(0.4, 0.0, 0.2, 1)', keyframes( [ style({opacity: 0, transform: 'translateY(10px)'}), style({opacity: 1, transform: 'translateY(0)'}), ] ) ) ] ), {optional: true}), query(':leave', animate('200ms cubic-bezier(0.4, 0.0, 0.2, 1)', keyframes([ style({opacity: 1}), style({opacity: 0}), ]) ), {optional: true} ) ]) ]) ];