SoundFile.swift 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. // LoopFollow
  2. // SoundFile.swift
  3. // Created by Jonas Björkert on 2025-04-26.
  4. import Foundation
  5. enum SoundFile: String, CaseIterable, Identifiable, Codable {
  6. case alarmBuzzer = "Alarm_Buzzer"
  7. case alarmClock = "Alarm_Clock"
  8. case alertToneBusy = "Alert_Tone_Busy"
  9. case alertToneRingtone1 = "Alert_Tone_Ringtone_1"
  10. case alertToneRingtone2 = "Alert_Tone_Ringtone_2"
  11. case alienSiren = "Alien_Siren"
  12. case ambulance = "Ambulance"
  13. case analogWatchAlarm = "Analog_Watch_Alarm"
  14. case bigClockTicking = "Big_Clock_Ticking"
  15. case burglarAlarmSiren1 = "Burglar_Alarm_Siren_1"
  16. case burglarAlarmSiren2 = "Burglar_Alarm_Siren_2"
  17. case cartoonAscendClimbSneaky = "Cartoon_Ascend_Climb_Sneaky"
  18. case cartoonAscendThenDescend = "Cartoon_Ascend_Then_Descend"
  19. case cartoonBounceToCeiling = "Cartoon_Bounce_To_Ceiling"
  20. case cartoonDreamyGlissandoHarp = "Cartoon_Dreamy_Glissando_Harp"
  21. case cartoonFailStringsTrumpet = "Cartoon_Fail_Strings_Trumpet"
  22. case cartoonMachineClumsyLoop = "Cartoon_Machine_Clumsy_Loop"
  23. case cartoonSiren = "Cartoon_Siren"
  24. case cartoonTipToeSneakyWalk = "Cartoon_Tip_Toe_Sneaky_Walk"
  25. case cartoonUhOh = "Cartoon_Uh_Oh"
  26. case cartoonVillainHorns = "Cartoon_Villain_Horns"
  27. case cellPhoneRingTone = "Cell_Phone_Ring_Tone"
  28. case chimesGlassy = "Chimes_Glassy"
  29. case computerMagic = "Computer_Magic"
  30. case csfx2Alarm = "CSFX-2_Alarm"
  31. case cuckooClock = "Cuckoo_Clock"
  32. case dholShuffleloop = "Dhol_Shuffleloop"
  33. case discreet = "Discreet"
  34. case earlySunrise = "Early_Sunrise"
  35. case emergencyAlarmCarbonMonoxide = "Emergency_Alarm_Carbon_Monoxide"
  36. case emergencyAlarmSiren = "Emergency_Alarm_Siren"
  37. case emergencyAlarm = "Emergency_Alarm"
  38. case endingReached = "Ending_Reached"
  39. case fly = "Fly"
  40. case ghostHover = "Ghost_Hover"
  41. case goodMorning = "Good_Morning"
  42. case hellYeahSomewhatCalmer = "Hell_Yeah_Somewhat_Calmer"
  43. case inAHurry = "In_A_Hurry"
  44. case indeed = "Indeed"
  45. case insistently = "Insistently"
  46. case jingleAllTheWay = "Jingle_All_The_Way"
  47. case laserShoot = "Laser_Shoot"
  48. case machineCharge = "Machine_Charge"
  49. case magicalTwinkle = "Magical_Twinkle"
  50. case marchingHeavyFootedFatElephants = "Marching_Heavy_Footed_Fat_Elephants"
  51. case marimbaDescend = "Marimba_Descend"
  52. case marimbaFlutterOrShake = "Marimba_Flutter_or_Shake"
  53. case martianGun = "Martian_Gun"
  54. case martianScanner = "Martian_Scanner"
  55. case metallic = "Metallic"
  56. case nightguard = "Nightguard"
  57. case notKiddin = "Not_Kiddin"
  58. case openYourEyesAndSee = "Open_Your_Eyes_And_See"
  59. case orchestralHorns = "Orchestral_Horns"
  60. case oringz = "Oringz"
  61. case pagerBeeps = "Pager_Beeps"
  62. case remembersMeOfAsia = "Remembers_Me_Of_Asia"
  63. case riseAndShine = "Rise_And_Shine"
  64. case rush = "Rush"
  65. case sciFiAirRaidAlarm = "Sci-Fi_Air_Raid_Alarm"
  66. case sciFiAlarmLoop1 = "Sci-Fi_Alarm_Loop_1"
  67. case sciFiAlarmLoop2 = "Sci-Fi_Alarm_Loop_2"
  68. case sciFiAlarmLoop3 = "Sci-Fi_Alarm_Loop_3"
  69. case sciFiAlarmLoop4 = "Sci-Fi_Alarm_Loop_4"
  70. case sciFiAlarm = "Sci-Fi_Alarm"
  71. case sciFiComputerConsoleAlarm = "Sci-Fi_Computer_Console_Alarm"
  72. case sciFiConsoleAlarm = "Sci-Fi_Console_Alarm"
  73. case sciFiEerieAlarm = "Sci-Fi_Eerie_Alarm"
  74. case sciFiEngineShutDown = "Sci-Fi_Engine_Shut_Down"
  75. case sciFiIncomingMessageAlert = "Sci-Fi_Incoming_Message_Alert"
  76. case sciFiSpaceshipMessage = "Sci-Fi_Spaceship_Message"
  77. case sciFiSpaceshipWarmUp = "Sci-Fi_Spaceship_Warm_Up"
  78. case sciFiWarning = "Sci-Fi_Warning"
  79. case signatureCorporate = "Signature_Corporate"
  80. case siriAlertCalibrationNeeded = "Siri_Alert_Calibration_Needed"
  81. case siriAlertDeviceMuted = "Siri_Alert_Device_Muted"
  82. case siriAlertGlucoseDroppingFast = "Siri_Alert_Glucose_Dropping_Fast"
  83. case siriAlertGlucoseRisingFast = "Siri_Alert_Glucose_Rising_Fast"
  84. case siriAlertHighGlucose = "Siri_Alert_High_Glucose"
  85. case siriAlertLowGlucose = "Siri_Alert_Low_Glucose"
  86. case siriAlertMissedReadings = "Siri_Alert_Missed_Readings"
  87. case siriAlertTransmitterBatteryLow = "Siri_Alert_Transmitter_Battery_Low"
  88. case siriAlertUrgentHighGlucose = "Siri_Alert_Urgent_High_Glucose"
  89. case siriAlertUrgentLowGlucose = "Siri_Alert_Urgent_Low_Glucose"
  90. case siriCalibrationNeeded = "Siri_Calibration_Needed"
  91. case siriDeviceMuted = "Siri_Device_Muted"
  92. case siriGlucoseDroppingFast = "Siri_Glucose_Dropping_Fast"
  93. case siriGlucoseRisingFast = "Siri_Glucose_Rising_Fast"
  94. case siriHighGlucose = "Siri_High_Glucose"
  95. case siriLowGlucose = "Siri_Low_Glucose"
  96. case siriMissedReadings = "Siri_Missed_Readings"
  97. case siriTransmitterBatteryLow = "Siri_Transmitter_Battery_Low"
  98. case siriUrgentHighGlucose = "Siri_Urgent_High_Glucose"
  99. case siriUrgentLowGlucose = "Siri_Urgent_Low_Glucose"
  100. case softMarimbaPadPositive = "Soft_Marimba_Pad_Positive"
  101. case softWarmAiryOptimistic = "Soft_Warm_Airy_Optimistic"
  102. case softWarmAiryReassuring = "Soft_Warm_Airy_Reassuring"
  103. case storeDoorChime = "Store_Door_Chime"
  104. case sunny = "Sunny"
  105. case thunderSoundFX = "Thunder_Sound_FX"
  106. case timeHasCome = "Time_Has_Come"
  107. case tornadoSiren = "Tornado_Siren"
  108. case twoTurtleDoves = "Two_Turtle_Doves"
  109. case unpaved = "Unpaved"
  110. case wakeUpWillYou = "Wake_Up_Will_You"
  111. case winGain = "Win_Gain"
  112. case wrongAnswer = "Wrong_Answer"
  113. // Identifiable conformance
  114. var id: SoundFile { self }
  115. /// Human-friendly name (spaces instead of underscores)
  116. var displayName: String {
  117. rawValue
  118. .replacingOccurrences(of: "_", with: " ")
  119. .replacingOccurrences(of: " ", with: " ")
  120. }
  121. }