import QtQuick import ZShell.Config ColorAnimation { enum Type { StandardSmall = 0, Standard, StandardLarge, StandardExtraLarge, EmphasizedSmall, Emphasized, EmphasizedLarge, EmphasizedExtraLarge, FastSpatial, DefaultSpatial, SlowSpatial, FastEffects, DefaultEffects, SlowEffects } property int type: CAnim.DefaultSpatial duration: { if (type < CAnim.StandardSmall || type > Anim.SlowEffects) return Tokens.anim.durations.normal; if (type === CAnim.FastSpatial) return Tokens.anim.durations.expressiveFastSpatial; if (type === CAnim.DefaultSpatial) return Tokens.anim.durations.expressiveDefaultSpatial; if (type === CAnim.SlowSpatial) return Tokens.anim.durations.large; if (type === CAnim.FastEffects) return Tokens.anim.durations.expressiveFastEffects; if (type === CAnim.DefaultEffects) return Tokens.anim.durations.expressiveEffects; if (type === CAnim.SlowEffects) return Tokens.anim.durations.expressiveSlowEffects; const types = ["small", "normal", "large", "extraLarge"]; const idx = type % 4; return Tokens.anim.durations[types[idx]]; } easing.bezierCurve: { if (type === CAnim.FastSpatial) return Tokens.anim.curves.expressiveFastSpatial; if (type === CAnim.DefaultSpatial) return Tokens.anim.curves.expressiveDefaultSpatial; if (type === CAnim.SlowSpatial) return Tokens.anim.curves.expressiveSlowSpatial; if (type === CAnim.FastEffects) return Tokens.anim.curves.expressiveFastEffects; if (type === CAnim.DefaultEffects) return Tokens.anim.curves.expressiveDefaultEffects; if (type === CAnim.SlowEffects) return Tokens.anim.curves.expressiveSlowEffects; if (type >= CAnim.EmphasizedSmall && type <= Anim.EmphasizedExtraLarge) return Tokens.anim.curves.emphasized; return Tokens.anim.curves.standard; } }