buildShellOrbs function

List<NeoOrbSpec> buildShellOrbs(
  1. NeoShellBackgroundVariant variant,
  2. NeoPalette palette
)

Implementation

List<NeoOrbSpec> buildShellOrbs(
  NeoShellBackgroundVariant variant,
  NeoPalette palette,
) {
  switch (variant) {
    case NeoShellBackgroundVariant.home:
      return [
        NeoOrbSpec(
          leftFactor: -0.06,
          topFactor: 0.08,
          size: 136,
          color: palette.primarySoft,
          shadowColor: palette.shadowStrong,
          borderColor: palette.outline,
          xTravel: 12,
          yTravel: 18,
        ),
        NeoOrbSpec(
          leftFactor: 0.82,
          topFactor: 0.12,
          size: 112,
          color: palette.surface,
          shadowColor: palette.shadowSoft,
          borderColor: palette.outline,
          xTravel: 10,
          yTravel: 14,
          phase: 1.6,
        ),
        NeoOrbSpec(
          leftFactor: 0.86,
          topFactor: 0.78,
          size: 160,
          color: palette.primary,
          shadowColor: palette.shadowStrong,
          borderColor: palette.outline,
          xTravel: 14,
          yTravel: 20,
          phase: 2.7,
        ),
      ];
    case NeoShellBackgroundVariant.profile:
      return [
        NeoOrbSpec(
          leftFactor: -0.05,
          topFactor: 0.12,
          size: 100,
          color: palette.primarySoft,
          shadowColor: palette.shadowStrong,
          borderColor: palette.outline,
          xTravel: 8,
          yTravel: 10,
        ),
        NeoOrbSpec(
          leftFactor: 0.88,
          topFactor: 0.14,
          size: 86,
          color: palette.surface,
          shadowColor: palette.shadowSoft,
          borderColor: palette.outline,
          xTravel: 8,
          yTravel: 10,
          phase: 1.4,
        ),
        NeoOrbSpec(
          leftFactor: 0.90,
          topFactor: 0.84,
          size: 110,
          color: palette.surfaceAlt,
          shadowColor: palette.shadowSoft,
          borderColor: palette.outline,
          xTravel: 10,
          yTravel: 14,
          phase: 2.8,
        ),
      ];
  }
}