C++ / fmt (pull_request) Successful in 4s
JS/TS / fmt (pull_request) Successful in 20s
JS/TS / lint (pull_request) Successful in 22s
Python / static (pull_request) Successful in 57s
Rust / fmt (pull_request) Successful in 1m2s
C++ / build (pull_request) Successful in 2m10s
Rust / build (pull_request) Successful in 1m50s
Rust / clippy (pull_request) Successful in 1m25s
Python / verify (pull_request) Successful in 2m58s
C++ / clang-tidy (pull_request) Successful in 7m8s
64 lines
1.8 KiB
QML
64 lines
1.8 KiB
QML
import QtQuick
|
|
import ZShell.Config
|
|
|
|
NumberAnimation {
|
|
enum Type {
|
|
StandardSmall = 0,
|
|
Standard,
|
|
StandardLarge,
|
|
StandardExtraLarge,
|
|
EmphasizedSmall,
|
|
Emphasized,
|
|
EmphasizedLarge,
|
|
EmphasizedExtraLarge,
|
|
FastSpatial,
|
|
DefaultSpatial,
|
|
SlowSpatial,
|
|
FastEffects,
|
|
DefaultEffects,
|
|
SlowEffects
|
|
}
|
|
|
|
property int type: Anim.DefaultSpatial
|
|
|
|
duration: {
|
|
if (type < Anim.StandardSmall || type > Anim.SlowEffects)
|
|
return Tokens.anim.durations.normal;
|
|
|
|
if (type === Anim.FastSpatial)
|
|
return Tokens.anim.durations.expressiveFastSpatial;
|
|
if (type === Anim.DefaultSpatial)
|
|
return Tokens.anim.durations.expressiveDefaultSpatial;
|
|
if (type === Anim.SlowSpatial)
|
|
return Tokens.anim.durations.expressiveSlowSpatial;
|
|
if (type === Anim.FastEffects)
|
|
return Tokens.anim.durations.expressiveFastEffects;
|
|
if (type === Anim.DefaultEffects)
|
|
return Tokens.anim.durations.expressiveDefaultEffects;
|
|
if (type === Anim.SlowEffects)
|
|
return Tokens.anim.durations.expressiveSlowEffects;
|
|
|
|
const types = ["small", "normal", "large", "extraLarge"];
|
|
const idx = type % 4; // 0-7 are the 4 standard types
|
|
return Tokens.anim.durations[types[idx]];
|
|
}
|
|
easing: {
|
|
if (type === Anim.FastSpatial)
|
|
return Tokens.anim.expressiveFastSpatial;
|
|
if (type === Anim.DefaultSpatial)
|
|
return Tokens.anim.expressiveDefaultSpatial;
|
|
if (type === Anim.SlowSpatial)
|
|
return Tokens.anim.expressiveSlowSpatial;
|
|
if (type === Anim.FastEffects)
|
|
return Tokens.anim.expressiveFastEffects;
|
|
if (type === Anim.DefaultEffects)
|
|
return Tokens.anim.expressiveDefaultEffects;
|
|
if (type === Anim.SlowEffects)
|
|
return Tokens.anim.expressiveSlowEffects;
|
|
|
|
if (type >= Anim.EmphasizedSmall && type <= Anim.EmphasizedExtraLarge)
|
|
return Tokens.anim.emphasized;
|
|
return Tokens.anim.standard;
|
|
}
|
|
}
|