Clone
// scss-lint:disable ImportantRule, SpaceAfterComma, SingleLinePerProperty
@mixin -motion-ui-defaults {
transition-duration: map-get($motion-ui-speeds, default);
transition-timing-function: map-get($motion-ui-easings, default);
}
// Transitions
// - - - - - - - - - - - - - - -
@mixin motion-ui-transitions {
// Slide
.slide-in-down { @include mui-slide(in, down); }
.slide-in-left { @include mui-slide(in, right); }
.slide-in-up { @include mui-slide(in, up); }
.slide-in-right { @include mui-slide(in, left); }
.slide-out-down { @include mui-slide(out, down); }
.slide-out-right { @include mui-slide(out, right); }
.slide-out-up { @include mui-slide(out, up); }
.slide-out-left { @include mui-slide(out, left); }
// Fade
.fade-in { @include mui-fade(in, 0, 1); }
.fade-out { @include mui-fade(out, 1, 0); }
// Hinge
.hinge-in-from-top { @include mui-hinge(in, top); }
.hinge-in-from-right { @include mui-hinge(in, right); }
.hinge-in-from-bottom { @include mui-hinge(in, bottom); }
.hinge-in-from-left { @include mui-hinge(in, left); }
.hinge-in-from-middle-x { @include mui-hinge(in, top, center); }
.hinge-in-from-middle-y { @include mui-hinge(in, right, center); }
.hinge-out-from-top { @include mui-hinge(out, top); }
.hinge-out-from-right { @include mui-hinge(out, right); }
.hinge-out-from-bottom { @include mui-hinge(out, bottom); }
.hinge-out-from-left { @include mui-hinge(out, left); }
.hinge-out-from-middle-x { @include mui-hinge(out, top, center); }
.hinge-out-from-middle-y { @include mui-hinge(out, right, center); }
// Scale
.scale-in-up { @include mui-zoom(in, 0.5, 1); }
.scale-in-down { @include mui-zoom(in, 1.5, 1); }
.scale-out-up { @include mui-zoom(out, 1, 1.5); }
.scale-out-down { @include mui-zoom(out, 1, 0.5); }
// Spin
.spin-in { @include mui-spin(in, cw); }
.spin-out { @include mui-spin(out, cw); }
.spin-in-ccw { @include mui-spin(in, ccw); }
.spin-out-ccw { @include mui-spin(out, ccw); }
// Transition Modifiers
// - - - - - - - - - - - - - - -
@each $name, $value in $motion-ui-speeds {
@if $name != default {
.#{$name} { transition-duration: $value !important; }
}
}
@each $name, $value in $motion-ui-easings {
@if $name != default {
.#{$name} { transition-timing-function: $value !important; }
}
}
@each $name, $value in $motion-ui-delays {
@if $name != default {
.#{$name}-delay { transition-delay: $value !important; }
}
}
}
// Animations
// - - - - - - - - - - - - - - -
@mixin motion-ui-animations {
.shake { @include mui-animation(shake); }
.spin-cw { @include mui-animation(spin); }
.spin-ccw { @include mui-animation(spin(ccw)); }
.wiggle { @include mui-animation(wiggle); }
.shake,
.spin-cw,
.spin-ccw,
.wiggle {
animation-duration: map-get($motion-ui-speeds, default);
}
// Animation Modifiers
// - - - - - - - - - - - - - - -
.infinite { animation-iteration-count: infinite; }
@each $name, $value in $motion-ui-speeds {
@if $name != default {
.#{$name} { animation-duration: $value !important; }
}
}
@each $name, $value in $motion-ui-easings {
@if $name != default {
.#{$name} { animation-timing-function: $value !important; }
}
}
@each $name, $value in $motion-ui-delays {
@if $name != default {
.#{$name}-delay { animation-delay: $value !important; }
}
}
}