mirror of https://github.com/Squidex/squidex.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
2.7 KiB
81 lines
2.7 KiB
/*
|
|
* Squidex Headless CMS
|
|
*
|
|
* @license
|
|
* Copyright (c) Squidex UG (haftungsbeschränkt). All rights reserved.
|
|
*/
|
|
|
|
import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';
|
|
|
|
export function buildSlideRightAnimation(name = 'slideRight', timing = '150ms'): AnimationTriggerMetadata {
|
|
return trigger(
|
|
name, [
|
|
transition(':enter', [
|
|
style({ transform: 'translateX(-100%)' }),
|
|
animate(timing, style({ transform: 'translateX(0%)' })),
|
|
]),
|
|
transition(':leave', [
|
|
style({ transform: 'translateX(0%)' }),
|
|
animate(timing, style({ transform: 'translateX(-100%)' })),
|
|
]),
|
|
state('true',
|
|
style({ transform: 'translateX(0%)' }),
|
|
),
|
|
state('false',
|
|
style({ transform: 'translateX(-100%)' }),
|
|
),
|
|
transition('1 => 0', animate(timing)),
|
|
transition('0 => 1', animate(timing)),
|
|
],
|
|
);
|
|
}
|
|
|
|
export function buildSlideAnimation(name = 'slide', timing = '400ms'): AnimationTriggerMetadata {
|
|
return trigger(
|
|
name, [
|
|
transition(':enter', [
|
|
style({ transform: 'translateX(100%)' }),
|
|
animate(timing, style({ transform: 'translateX(0%)' })),
|
|
]),
|
|
transition(':leave', [
|
|
style({ transform: 'translateX(0%)' }),
|
|
animate(timing, style({ transform: 'translateX(-100%)' })),
|
|
]),
|
|
state('true',
|
|
style({ transform: 'translateX(0%)' }),
|
|
),
|
|
state('false',
|
|
style({ transform: 'translateX(-100%)' }),
|
|
),
|
|
transition('1 => 0', animate(timing)),
|
|
transition('0 => 1', animate(timing)),
|
|
],
|
|
);
|
|
}
|
|
|
|
export function buildFadeAnimation(name = 'fade', timing = '150ms'): AnimationTriggerMetadata {
|
|
return trigger(
|
|
name, [
|
|
transition(':enter', [
|
|
style({ opacity: 0 }),
|
|
animate(timing, style({ opacity: 1 })),
|
|
]),
|
|
transition(':leave', [
|
|
style({ opacity: 1 }),
|
|
animate(timing, style({ opacity: 0 })),
|
|
]),
|
|
state('true',
|
|
style({ opacity: 1 }),
|
|
),
|
|
state('false',
|
|
style({ opacity: 0 }),
|
|
),
|
|
transition('1 => 0', animate(timing)),
|
|
transition('0 => 1', animate(timing)),
|
|
],
|
|
);
|
|
}
|
|
|
|
export const fadeAnimation = buildFadeAnimation();
|
|
export const slideAnimation = buildSlideAnimation();
|
|
export const slideRightAnimation = buildSlideRightAnimation();
|
|
|