Jon Mårtensson пре 3 година
родитељ
комит
610387978a
20 измењених фајлова са 7992 додато и 0 уклоњено
  1. 420 0
      Dependencies/OmniBLE/Localizations/da.lproj/Localizable.strings
  2. 420 0
      Dependencies/OmniBLE/Localizations/de.lproj/Localizable.strings
  3. 420 0
      Dependencies/OmniBLE/Localizations/en.lproj/Localizable.strings
  4. 420 0
      Dependencies/OmniBLE/Localizations/es.lproj/Localizable.strings
  5. 420 0
      Dependencies/OmniBLE/Localizations/fi.lproj/Localizable.strings
  6. 420 0
      Dependencies/OmniBLE/Localizations/fr.lproj/Localizable.strings
  7. 420 0
      Dependencies/OmniBLE/Localizations/he.lproj/Localizable.strings
  8. 420 0
      Dependencies/OmniBLE/Localizations/it.lproj/Localizable.strings
  9. 420 0
      Dependencies/OmniBLE/Localizations/ja.lproj/Localizable.strings
  10. 420 0
      Dependencies/OmniBLE/Localizations/nb.lproj/Localizable.strings
  11. 420 0
      Dependencies/OmniBLE/Localizations/nl.lproj/Localizable.strings
  12. 420 0
      Dependencies/OmniBLE/Localizations/pl.lproj/Localizable.strings
  13. 420 0
      Dependencies/OmniBLE/Localizations/pt-BR.lproj/Localizable.strings
  14. 420 0
      Dependencies/OmniBLE/Localizations/ro.lproj/Localizable.strings
  15. 420 0
      Dependencies/OmniBLE/Localizations/ru.lproj/Localizable.strings
  16. 373 0
      Dependencies/OmniBLE/Localizations/sv.lproj/Localizable.strings
  17. 420 0
      Dependencies/OmniBLE/Localizations/tr.lproj/Localizable.strings
  18. 420 0
      Dependencies/OmniBLE/Localizations/vi.lproj/Localizable.strings
  19. 420 0
      Dependencies/OmniBLE/Localizations/zh-Hans.lproj/Localizable.strings
  20. 59 0
      Dependencies/OmniBLE/OmniBLE.xcodeproj/project.pbxproj

+ 420 - 0
Dependencies/OmniBLE/Localizations/da.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/de.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/en.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/es.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/fi.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/fr.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/he.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/it.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/ja.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/nb.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/nl.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/pl.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/pt-BR.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/ro.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/ru.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 373 - 0
Dependencies/OmniBLE/Localizations/sv.lproj/Localizable.strings

@@ -0,0 +1,373 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multipla kommandon";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Påminnelse om podds utgångsdatum";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Podd har utgått";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Låg reservoarvolym";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Ppåminnelse om pausad pump";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Återuppta insulintillförsel";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Parkoppling inte fördig";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Tidszon/Tid har ändrats";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Podd går ut om %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Byt podd nu. Podd har använts i 72 timmar.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Byt podd nu. Insulintillförsel upphör om 1 timme";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin eller mindre återstår. Byt podd snart.";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "Programmerad period av paus av pump är slut.\n\nDu kan återuppta insulintillförsel i pumpinställningar. Du kommer bli påmind igen om 15 minuter.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Parkoppla fördigt din podd";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "Tidsinställning i din pump skliljer sig från faktisk nuvarnade tid. Du kan synkronisera tiden i pumpinställningar.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Planerad paus är över. Öppna app och återuppta insulintillförsel";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Aktivering är inte färdig";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Podd utgår om";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Podd har utgått";
+
+/* */
+"Pod Expires" = "Podd utgår";
+
+/* */
+"Pod Activated" = "Podd aktiverades";
+
+/* */
+"Notification Settings" = "Notisinställningar";
+
+/* */
+"Confidence Reminders" = "Bekräftelseljud";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Pausa insulintillförsel";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "Ingen podd";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Parkoppla podd";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Slutför inaktivering";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Bytt podd";
+
+/* Unit for singular day in pod life remaining */
+"day" = "dag";
+
+/* Unit for plural days in pod life remaining */
+"days" = "dagar";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "timme";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "timmar";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minut";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minuter";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulintillförsel";
+
+/* */
+"Scheduled Basal" = "Schemalagd basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin kvar";
+
+/* Section header for activity section */
+"Activity" = "Aktivitet";
+
+/* title for device details page */
+"Device Details" = "Enhetsdetaljer";
+
+/* Section header for configuration section */
+"Configuration" = "Konfiguration";
+
+/* Pod life HUD view label */
+"Fault" = "Fel";
+
+/* Label describing pod age view */
+"Pod Age" = "Poddålder";
+
+/* Label describing time remaining view */
+"Remaining" = "Återstående";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "Ingen podd parkopplad";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Podd redan parkopplad";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Du måste ange insulintyp";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Podd är inte redo för kanylinsättning";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Ogiltig inställning";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Parkoppla ny podd";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Kommunikationsfel";
+
+/* */
+"Finish Pairing" = "Slutför parkoppling";
+
+/* Status highlight that when pod is deactivating."),
+ imageName: "exclamationmark.circle.fill */
+"Finish Deactivation" = "Slutför inaktivering";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "Inget insulin";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Ocklusion i podd";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Poddfel";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "Inget insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulintillförsel pasad";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Ingen signal";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manuell basal";
+
+/* */
+"Insert cannula" = "För in kanyl";
+
+/* */
+"Check cannula insertion finished" = "Kontrollera att kanyl förts in";
+
+/* */
+"Get pod status" = "Få podd status";
+
+/* */
+"Save Basal Profile" = "Spara basalprofil";
+
+/* */
+"Save basal profile failed: %{public}@" = "Basalprofil kunde inte sparas: %{public}@";
+
+/* */
+"Deactivate pod" = "Inaktivera podd";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Spelar inte testljud, pga pågående bolus";
+
+/* */
+"Play Test Beeps" = "Spela testljud";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Läser inte pulslogg, pga pågånde bolus";
+
+/* */
+"Read Pulse Log" = "Läs pulslogg";
+
+/* */
+"Set Confirmation Beeps to %s" = "Ställ in bekträftelseljud till %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Inställning för bekräftelseljud";
+
+/* */
+"Suspend" = "Pause";
+
+/* */
+"Failed to suspend: %{public}@" = "Kunde inte pausa: %{public}@";
+
+/* */
+"Resume" = "Återuppta";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Avbryt bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Tom reservoar";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Ocklusion upptäckt";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Kritiskt poddfel";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulintillförsel stoppad. Byt podd nu!";
+
+/* Units for showing temp basal rate */
+"U/hr" = "IE/h";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin kvar";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Ställ in temporär basal";
+
+/* Section header for activity section */
+"Activity" = "Aktivitet";
+
+/* Title for previous pod page */
+"Previous Pod" = "Tidigare podd";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pumptid";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Justerar pumptid...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Synkroniserar med nuvarande tid";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Byt till annan  pump/insulinadministrering";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "Pumptiden skiljer sig från nuvanrande tod. Vill du ändra din pumptid till nuvarande tid";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Ja, synkronisera med nuvarande tid";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "Nej, ändra inte pumptid";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Ta bort pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Säkert att du vill sluta använda Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Ta bort Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulintyp";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Synkronisera med nuvarande tid";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Pausa insulintillförsel";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulintillförsel kommer att stoppas tills att du återupptar den manuellt. När vill du att FreeAPS X ska påminna dig?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minuter";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 timme";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 timme och 30 minuter";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 timmar";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Kunde inte pausa pump";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Kunde inte återuppta insulintillförsel";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Kunde inte ställa in pumptid";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Kunde inte avbryta bolus";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Inaktivera din podd. Efter inaktivering kan du ta bort podden och parkoppla en ny";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Inaktivera din podd. Efter inaktivering kan du parkoppla en ny podd";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Inaktivera podd";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Inaktiverar.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Podd blev inaktiverad. Fortsätt";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Försök igen";
+
+/* Action button description when deactivated */
+"Continue" = "Fortsätt";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "Det gick inte att kommunicera med podd. Om detta problem kvarstår, klicka på 'Avsluta podd'. Du kommer sedan kunna parkoppla en ny podd";
+
+/* Text for discard pod button */
+"Discard Pod" = "Avsluta podd";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Avlägsna podden från din kropp";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Din podd kan eventuellt fortfarende tillföra insulin.\nTa bort den från din kropp. Tryck sedan “Fortsätt.“";
+
+/* Insulin Unit */
+"U" = "IE";

+ 420 - 0
Dependencies/OmniBLE/Localizations/tr.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/vi.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 420 - 0
Dependencies/OmniBLE/Localizations/zh-Hans.lproj/Localizable.strings

@@ -0,0 +1,420 @@
+/* 
+  Localizable.strings
+  OmniBLE
+  Created by Jon Mårtensson on 2022-08-28.
+  Copyright © 2022 Randall Knutson. All rights reserved.
+*/
+
+/* Alert content title for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Alert content title for userPodExpiration pod alert */
+"Pod Expiration Reminder" = "Pod Expiration Reminder";
+
+/* Alert content title for podExpiring pod alert */
+"Pod Expired" = "Pod Expired";
+
+/* Alert content title for lowReservoir pod alert */
+"Low Reservoir" = "Low Reservoir";
+
+/* Alert content title for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content title for suspendEnded pod alert */
+"Resume Insulin" = "Resume Insulin";
+
+/* Alert content title for finishSetupReminder pod alert */
+"Pod Pairing Incomplete" = "Pod Pairing Incomplete";
+
+/* Alert content title for timeOffsetChangeDetected pod alert */
+"Time Change Detected" = "Time Change Detected";
+
+/* Alert content body for multiCommand pod alert */
+"Multiple Command Alert" = "Multiple Command Alert";
+
+/* Format string for alert content body for userPodExpiration pod alert. (1: time until expiration) */
+"Pod expires in %1$@." = "Pod expires in %1$@.";
+
+/* Alert content body for podExpiring pod alert */
+"Change Pod now. Pod has been active for 72 hours." = "Change Pod now. Pod has been active for 72 hours.";
+
+/* Alert content body for podExpireImminent pod alert */
+"Change Pod now. Insulin delivery will stop in 1 hour." = "Change Pod now. Insulin delivery will stop in 1 hour.";
+
+/* Format string for alert content body for lowReservoir pod alert. (1: reminder value) */
+"%1$@ insulin or less remaining in Pod. Change Pod soon." = "%1$@ insulin or less remaining in Pod. Change Pod soon.";
+
+/* Alert content body for suspendInProgress pod alert */
+"Suspend In Progress Reminder" = "Suspend In Progress Reminder";
+
+/* Alert content body for suspendEnded pod alert */
+"The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes." = "The insulin suspension period has ended.\n\nYou can resume delivery from the banner on the home screen or from your pump settings screen. You will be reminded again in 15 minutes.";
+
+/* Alert content body for finishSetupReminder pod alert */
+"Please finish pairing your pod." = "Please finish pairing your pod.";
+
+/* Alert content body for timeOffsetChangeDetected pod alert */
+"The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings." = "The time on your pump is different from the current time. You can review the pump time and and sync to current time in settings.";
+
+/* Alert notification body for suspendEnded pod alert user notification */
+"Suspension time is up. Open the app and resume." = "Suspension time is up. Open the app and resume.";
+
+/* Action button default text for PodAlerts */
+"Ok" = "Ok";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* */
+"Pod Expires" = "Pod Expires";
+
+/* */
+"Pod Activated" = "Pod Activated";
+
+/* */
+"Notification Settings" = "Notification Settings";
+
+/* */
+"Confidence Reminders" = "Confidence Reminders";
+
+/* Text for suspend resume button when insulin delivery active */
+"Suspend Insulin Delivery" = "Suspend Insulin Delivery";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Unit for singular day in pod life remaining */
+"day" = "day";
+
+/* Unit for plural days in pod life remaining */
+"days" = "days";
+
+/* Unit for singular hour in pod life remaining */
+"hour" = "hour";
+
+/* Unit for plural hours in pod life remaining */
+"hours" = "hours";
+
+/* Unit for singular minute in pod life remaining */
+"minute" = "minute";
+
+/* Unit for plural minutes in pod life remaining */
+"minutes" = "minutes";
+
+/* Title of insulin delivery section */
+"Insulin Delivery" = "Insulin Delivery";
+
+/* */
+"Scheduled Basal" = "Scheduled Basal";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* title for device details page */
+"Device Details" = "Device Details";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Settings page link description when next lifecycle action is to pair new pod */
+"Pair Pod" = "Pair Pod";
+
+/* Settings page link description when next lifecycle action is to finish deactivation */
+"Finish deactivation" = "Finish deactivation";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Settings page link description when next lifecycle action is to replace pod */
+"Replace Pod" = "Replace Pod";
+
+/* Label for pod life state when pod not fully activated */
+"Unfinished Activation" = "Unfinished Activation";
+
+/* Label for pod life state when time remaining */
+"Pod expires in" = "Pod expires in";
+
+/* Label for pod life state when within pod expiration window */
+"Pod expired" = "Pod expired";
+
+/* Label for pod life state when pod not fully deactivated */
+"Unfinished deactivation" = "Unfinished deactivation";
+
+/* Label for pod life state when no pod paired */
+"No Pod" = "No Pod";
+
+/* Pod life HUD view label */
+"Fault" = "Fault";
+
+/* Label describing pod age view */
+"Pod Age" = "Pod Age";
+
+/* Label describing time remaining view */
+"Remaining" = "Remaining";
+
+/* Label indicating pod replacement necessary */
+"Replace Pod" = "Replace Pod";
+
+/* Error message shown when no pod is paired */
+"No pod paired" = "No pod paired";
+
+/* Error message shown when user cannot pair because pod is already paired */
+"Pod already paired" = "Pod already paired";
+
+/* Error description for OmniBLEPumpManagerError.insulinTypeNotConfigured */
+"Insulin type not configured" = "Insulin type not configured";
+
+/* Error message when cannula insertion fails because the pod is in an unexpected state */
+"Pod is not in a state ready for cannula insertion." = "Pod is not in a state ready for cannula insertion.";
+
+/* Error description for OmniBLEPumpManagerError.invalidSetting */
+"Invalid Setting" = "Invalid Setting";
+
+/* Recovery suggestion shown when no pod is paired */
+"Please pair a new pod" = "Please pair a new pod";
+
+/* Generic title of the OmniBLE pump manager */
+"Omnipod DASH" = "Omnipod DASH";
+
+/* Status highlight that delivery is uncertain. */
+"Comms Issue" = "Comms Issue";
+
+/* */
+"Finish Pairing" = "Finish Pairing";
+
+/* Status highlight that when pod is deactivating */
+"Finish Deactivation" = "Finish Deactivation";
+
+/* Status highlight that when no pod is paired. */
+"No Pod" = "No Pod";
+
+/* Status highlight message for emptyReservoir alarm. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight message for podExpired alarm. */
+"Pod Expired" = "Pod Expired";
+
+/* Status highlight message for occlusion alarm. */
+"Pod Occlusion" = "Pod Occlusion";
+
+/* Status highlight message for other alarm. */
+"Pod Error" = "Pod Error";
+
+/* Status highlight that a pump is out of insulin. */
+"No Insulin" = "No Insulin";
+
+/* Status highlight that insulin delivery was suspended. */
+"Insulin Suspended" = "Insulin Suspended";
+
+/* Status highlight when communications with the pod haven't happened recently. */
+"Signal Loss" = "Signal Loss";
+
+/* Status highlight when manual temp basal is running. */
+"Manual Basal" = "Manual Basal";
+
+/* */
+"Insert cannula" = "Insert cannula";
+
+/* */
+"Check cannula insertion finished" = "Check cannula insertion finished";
+
+/* */
+"Get pod status" = "Get pod status";
+
+/* */
+"Save Basal Profile" = "Save Basal Profile";
+
+/* */
+"Save basal profile failed: %{public}@" = "Save basal profile failed: %{public}@";
+
+/* */
+"Deactivate pod" = "Deactivate pod";
+
+/* */
+"Skipping Play Test Beeps due to bolus still in progress." = "Skipping Play Test Beeps due to bolus still in progress.";
+
+/* */
+"Play Test Beeps" = "Play Test Beeps";
+
+/* */
+"Skipping Read Pulse Log due to bolus still in progress." = "Skipping Read Pulse Log due to bolus still in progress.";
+
+/* */
+"Read Pulse Log" = "Read Pulse Log";
+
+/* */
+"Set Confirmation Beeps to %s" = "Set Confirmation Beeps to %s";
+
+/* */
+"Set Confirmation Beeps Preference" = "Set Confirmation Beeps Preference";
+
+/* */
+"Suspend" = "Suspend";
+
+/* */
+"Failed to suspend: %{public}@" = "Failed to suspend: %{public}@";
+
+/* */
+"Resume" = "Resume";
+
+/* */
+"Bolus" = "Bolus";
+
+/* */
+"Cancel Bolus" = "Cancel Bolus";
+
+/* Alert acknowledgment OK button */
+"OK" = "OK";
+
+/* The title for Empty Reservoir alarm notification */
+"Empty Reservoir" = "Empty Reservoir";
+
+/* The title for Occlusion alarm notification */
+"Occlusion Detected" = "Occlusion Detected";
+
+/* The title for AlarmCode.other notification */
+"Critical Pod Error" = "Critical Pod Error";
+
+/* The default notification body for AlarmCodes */
+"Insulin delivery stopped. Change Pod now." = "Insulin delivery stopped. Change Pod now.";
+
+/* Units for showing temp basal rate */
+"U/hr" = "U/hr";
+
+/* Header for insulin remaining on pod settings screen */
+"Insulin Remaining" = "Insulin Remaining";
+
+/* Button title to set temporary basal rate */
+"Set Temporary Basal Rate" = "Set Temporary Basal Rate";
+
+/* Section header for activity section */
+"Activity" = "Activity";
+
+/* Section header for configuration section */
+"Configuration" = "Configuration";
+
+/* Title for previous pod page */
+"Previous Pod" = "Previous Pod";
+
+/* The title of the command to change pump time zone */
+"Pump Time" = "Pump Time";
+
+/* Text indicating ongoing pump time synchronization */
+"Adjusting Pump Time..." = "Adjusting Pump Time...";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Label for PumpManager deletion button */
+"Switch to other insulin delivery device" = "Switch to other insulin delivery device";
+
+/* Title for pod sync time action sheet. */
+"The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?" = "The time on your pump is different from the current time. Do you want to update the time on your pump to the current time?";
+
+/* Button text to confirm pump time sync */
+"Yes, Sync to Current Time" = "Yes, Sync to Current Time";
+
+/* Button text to cancel pump time sync */
+"No, Keep Pump As Is" = "No, Keep Pump As Is";
+
+/* Title for Omnipod DASH PumpManager deletion action sheet. */
+"Remove Pump" = "Remove Pump";
+
+/* Message for Omnipod DASH PumpManager deletion action sheet */
+"Are you sure you want to stop using Omnipod DASH?" = "Are you sure you want to stop using Omnipod DASH?";
+
+/* Button text to confirm Omnipod DASH PumpManager deletion */
+"Delete Omnipod DASH" = "Delete Omnipod DASH";
+
+/* Text for confidence reminders navigation link" */
+"Insulin Type" = "Insulin Type";
+
+/* The title of the command to change pump time zone */
+"Sync to Current Time" = "Sync to Current Time";
+
+/* Title for suspend duration selection action sheet */
+"Suspend Delivery" = "Suspend Delivery";
+
+/* Message for suspend duration selection action sheet */
+"Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?" = "Insulin delivery will be stopped until you resume manually. When would you like Loop to remind you to resume delivery?";
+
+/* Button text for 30 minute suspend duration */
+"30 minutes" = "30 minutes";
+
+/* Button text for 1 hour suspend duration" */
+"1 hour" = "1 hour";
+    
+ /* Button text for 1 hour 30 minute suspend duration */
+"1 hour 30 minutes" = "1 hour 30 minutes";
+    
+/* Button text for 2 hour suspend duration */
+"2 hours" = "2 hours";
+
+/* Alert title for suspend error */
+"Failed to Suspend Insulin Delivery" = "Failed to Suspend Insulin Delivery";
+
+/* Alert title for resume error */
+"Failed to Resume Insulin Delivery" = "Failed to Resume Insulin Delivery";
+
+/* Alert title for time sync error */
+"Failed to Set Pump Time" = "Failed to Set Pump Time";
+
+/* Alert title for failing to cancel manual basal error */
+"Failed to Cancel Manual Basal" = "Failed to Cancel Manual Basal";
+
+/* */
+"Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may remove it and pair a new pod.";
+
+/* Instructions for deactivate pod when pod not on body */
+"Please deactivate the pod. When deactivation is complete, you may pair a new pod." = "Please deactivate the pod. When deactivation is complete, you may pair a new pod.";
+
+/* Deactivate pod action button */
+"Deactivate Pod" = "Deactivate Pod";
+
+/* Deactivate pod action button accessibility label while deactivating */
+"Deactivating." = "Deactivating.";
+
+/* Deactivate pod action button accessibility label when deactivation complete */
+"Pod deactivated successfully. Continue." = "Pod deactivated successfully. Continue.";
+
+/* Action button description for deactivate after failed attempt */
+"Retry" = "Retry";
+
+/* Action button description when deactivated */
+"Continue" = "Continue";
+
+/* Format string for recovery suggestion during deactivate pod. */
+"There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod." = "There was a problem communicating with the pod. If this problem persists, tap Discard Pod. You can then activate a new Pod.";
+
+/* Text for discard pod button */
+"Discard Pod" = "Discard Pod";
+
+/* Title for remove pod modal */
+"Remove Pod from Body" = "Remove Pod from Body";
+
+/* Alert message body for confirm pod attachment */
+"Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“" = "Your Pod may still be delivering Insulin.\nRemove it from your body, then tap “Continue.“";
+
+/* Insulin Unit */
+"U" = "U";

+ 59 - 0
Dependencies/OmniBLE/OmniBLE.xcodeproj/project.pbxproj

@@ -67,6 +67,7 @@
 		10389A3C26FF7841002115E9 /* Message.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10389A1D26FF7841002115E9 /* Message.swift */; };
 		10389A3F26FF7841002115E9 /* CRC16.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10389A2026FF7841002115E9 /* CRC16.swift */; };
 		10389A4126FF7841002115E9 /* MessageTransport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10389A2226FF7841002115E9 /* MessageTransport.swift */; };
+		1912389528BC14AA00EB05A0 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1912389728BC14AA00EB05A0 /* Localizable.strings */; };
 		84752E9326ED0FFE009FD801 /* OmniBLE.h in Headers */ = {isa = PBXBuildFile; fileRef = 84752E8526ED0FFE009FD801 /* OmniBLE.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		84752ED626ED13F5009FD801 /* Id.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84752EBF26ED13F5009FD801 /* Id.swift */; };
 		84752ED726ED13F5009FD801 /* X25519KeyGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84752EC126ED13F5009FD801 /* X25519KeyGenerator.swift */; };
@@ -262,6 +263,25 @@
 		10389A1D26FF7841002115E9 /* Message.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Message.swift; sourceTree = "<group>"; };
 		10389A2026FF7841002115E9 /* CRC16.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CRC16.swift; sourceTree = "<group>"; };
 		10389A2226FF7841002115E9 /* MessageTransport.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MessageTransport.swift; sourceTree = "<group>"; };
+		1912389628BC14AA00EB05A0 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = "<group>"; };
+		1912389828BC14AD00EB05A0 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Localizable.strings; sourceTree = "<group>"; };
+		1912389928BC2D3300EB05A0 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.strings"; sourceTree = "<group>"; };
+		1912389A28BC2D3600EB05A0 /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Localizable.strings; sourceTree = "<group>"; };
+		1912389B28BC2D3700EB05A0 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = "<group>"; };
+		1912389C28BC2D3800EB05A0 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/Localizable.strings; sourceTree = "<group>"; };
+		1912389D28BC2D3900EB05A0 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = "<group>"; };
+		1912389E28BC2D3A00EB05A0 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = "<group>"; };
+		1912389F28BC2D3C00EB05A0 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A028BC2D3D00EB05A0 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A128BC2D3E00EB05A0 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A228BC2D4000EB05A0 /* nb */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A328BC2D4100EB05A0 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A428BC2D4200EB05A0 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = "<group>"; };
+		191238A528BC2D4300EB05A0 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A628BC2D4400EB05A0 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A728BC2D4500EB05A0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A828BC2D4600EB05A0 /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/Localizable.strings; sourceTree = "<group>"; };
+		191238A928BC2D4700EB05A0 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Localizable.strings; sourceTree = "<group>"; };
 		84752E8226ED0FFE009FD801 /* OmniBLE.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = OmniBLE.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		84752E8526ED0FFE009FD801 /* OmniBLE.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OmniBLE.h; sourceTree = "<group>"; };
 		84752E8626ED0FFE009FD801 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
@@ -477,9 +497,18 @@
 			path = MessageBlocks;
 			sourceTree = "<group>";
 		};
+		1912389228BBA58600EB05A0 /* Localizations */ = {
+			isa = PBXGroup;
+			children = (
+				1912389728BC14AA00EB05A0 /* Localizable.strings */,
+			);
+			path = Localizations;
+			sourceTree = "<group>";
+		};
 		84752E7826ED0FFE009FD801 = {
 			isa = PBXGroup;
 			children = (
+				1912389228BBA58600EB05A0 /* Localizations */,
 				A91B2DEB276E1E5E001B0E95 /* README.md */,
 				84752EE926ED1402009FD801 /* Common */,
 				84752E8426ED0FFE009FD801 /* OmniBLE */,
@@ -926,6 +955,7 @@
 			buildActionMask = 2147483647;
 			files = (
 				C1F67E9527975B830017487F /* HUDAssets.xcassets in Resources */,
+				1912389528BC14AA00EB05A0 /* Localizable.strings in Resources */,
 				1029AE4F27094E1900B7F5B6 /* OmniBLEUI.xcassets in Resources */,
 				8475313726ED838B009FD801 /* PodLifeHUDView.xib in Resources */,
 				A91B2DEC276E1E5E001B0E95 /* README.md in Resources */,
@@ -1136,6 +1166,35 @@
 		};
 /* End PBXTargetDependency section */
 
+/* Begin PBXVariantGroup section */
+		1912389728BC14AA00EB05A0 /* Localizable.strings */ = {
+			isa = PBXVariantGroup;
+			children = (
+				1912389628BC14AA00EB05A0 /* en */,
+				1912389828BC14AD00EB05A0 /* sv */,
+				1912389928BC2D3300EB05A0 /* zh-Hans */,
+				1912389A28BC2D3600EB05A0 /* da */,
+				1912389B28BC2D3700EB05A0 /* nl */,
+				1912389C28BC2D3800EB05A0 /* fi */,
+				1912389D28BC2D3900EB05A0 /* fr */,
+				1912389E28BC2D3A00EB05A0 /* de */,
+				1912389F28BC2D3C00EB05A0 /* he */,
+				191238A028BC2D3D00EB05A0 /* it */,
+				191238A128BC2D3E00EB05A0 /* ja */,
+				191238A228BC2D4000EB05A0 /* nb */,
+				191238A328BC2D4100EB05A0 /* pl */,
+				191238A428BC2D4200EB05A0 /* pt-BR */,
+				191238A528BC2D4300EB05A0 /* ro */,
+				191238A628BC2D4400EB05A0 /* ru */,
+				191238A728BC2D4500EB05A0 /* es */,
+				191238A828BC2D4600EB05A0 /* tr */,
+				191238A928BC2D4700EB05A0 /* vi */,
+			);
+			name = Localizable.strings;
+			sourceTree = "<group>";
+		};
+/* End PBXVariantGroup section */
+
 /* Begin XCBuildConfiguration section */
 		84752E9426ED0FFE009FD801 /* Debug */ = {
 			isa = XCBuildConfiguration;