Skip to content

Commit

Permalink
Release 2.2.7 (Artificial-Pancreas#375)
Browse files Browse the repository at this point in the history
* Omnipod update bundle with Silence Pod mode & Diagnostics support (Artificial-Pancreas#324)

* Update bundle with various improvements and new functionality including
Silence Pod mode & Diagnostics support from freeaps_dev to SwiftUI

Various fault event code updates
+ Add missing 0x4E code and description for SAW Trim Error
+ Fix typo in rtcInterruptHandlerInconsistentState string
+ Improved description string for the testInProgress fault
+ Use more generic name for the values do not match case
+ Add codes for the 0xD6 & 0xD7 reset faults of unknown origin
+ Add codes for the mystery 0xCB, 0xD4, 0xD5, 0xD8 & 0xD9 faults

Various Omnipod message decode improvements
+ Round RateEntry rate calculation to 2 digits
+ Round RateEntry duration calculation to nearest second
+ Add missing comma to RateEntry debugDescription
+ New timeIntervalStr TimeInterval var for pod interval debug info
+ Update some command commenting to be more consistent and useful
+ Add debugDescription for CancelDeliveryCommand DeliveryType
+ Add additional PodInfoTest checking and comments
+ Whitespace tweaks for OmniKit & OmniBLE consistency

Remove some overly verbose OmniBLE Bluetooth logging messages
+ Add {public} specifier to some non-debug logging messages

New operation mode that suppresses all pod alerts & beeping
+ New CustomDebugStringConvertible extension for AlertTrigger
+ Add new optional silent Bool parameter to AlertConfiguration struct
+ Updated CustomDebugStringConvertible extension for AlertConfiguration
+ Add new optional silent Bool associated value for most PodAlert enum values
+ Add new offset TimeInterval associated value for time based PodAlert enum values
+ Updated AlertSlot naming to make slot to alert mappings consistent
+ Use consistent ascending alert ordering for all switch statements
+ New alertSetString func to return suitable String for a given AlertSet
+ New func to create corresponding PodAlerts for current pod time and silent values
+ Add new silent Bool to ConfigureAlertsCommand struct
+ Sort alert configurations in ConfigureAlertsCommand for easier analysis
+ Have ConfigureAlertsCommand enforce the max alert duration value
+ Rework pump manager code to use new silencePod var
+ Use { } instead of ({ }) for {set,modify}State for consistency & clarity
+ Add timeActive var to pump manager for more accurate pod active time
+ Have acknowlegePodAlerts() use AlertSet instead of [AlertSlot: PodAlert]
+ New setSilencePod pump manager func to change the pod's silence state
+ Add some additional pump manager error logging statements
+ Add new silencePod var to the pump manager state
+ Rework PodAlerts creation for new podActive time offset and silence values
+ New PodState var's to manage pod time active state
+ Remove no longer needed activeAlerts PodState var func
+ Update updatePodTimes func to manages new time active var's
+ Update all unit tests as needed for new names & members
+ Rework UI to use updated simplied interfaces for alertStrings from AlertSlots
+ Add new Pod Settings button for Silence Pod and Unsilence Pod
+ Update UI to use new new pod active pod state
+ Have Pod Settings UI set the pod's expiration reminder alert
+ Various commenting additions/updates/improvements/corrections

Read Pod Status display and consistency updates
+ Add new faultDescription var for FaultEventCode
+ Display errorEventInfo details for Pod fault details
+ Various AlertSlot comment updates for consistency
+ Make PumpManager silencePod and confirmationBeeps vars read-only
+ Consistency updates for setTempBasal result handling

+ Improved OmniBLE PodCommsError recoverySuggestion for noResponse and podNotConnected
+ Change OmniKit acknowledgeAlerts() to acknowledgePodAlerts() for consistency

+ New Silence Pod option and View
+ Update pulseLogString newlines for SwiftUI output
+ Replace pumpmanager mutateState() with discardableResult with setState()
+ Restore getDetailedStatus() pumpmanager funcs
+ enactTempBasal() func skips unneeded pod cancel if running scheduled basal
+ Restore deliveryStatus PodState variable to verify pod delivery state
+ Restore lastCommsOK PodState variable for additional comms verification
+ Add bulletproofing for all insulin commands to prevent 0x31 faults
+ Updated Notification Settings & Confidence Reminders text for silent pod
+ New Diagnostics command section at end of Pump Settings
> Restore Loop 2.x/FreeAPS Read Pod Status diagnostic command
> Restore Loop 2.x/FreeAPS Read Pulse Log diagnostic command
> Restore Loop 2.x/FreeAPS Play Test Beeps diagnostic command
> New Pump Manager Details diagnostic command
+ Fix some mismatched comments for some copied LocalizedString's
+ Update a couple of messages to avoid using the word "Loop"
+ Add missing LocalizedString funcs for various buttons
+ Print Pod Details View Sequence # as a zero padded 7-digit value
+ Fix typo in Pod Details View LocalizedString comment
+ Updated Pod Fault display with decimal & hex values & separate description line
+ Prevent immediate low reservoir pod alerts if setting a value higher than current
+ Improved debugDescription formatting for various PumpManager related state
+ Allow expiration reminder to be triggered more than once
+ Acknowledge all pod alerts when toggling silence pod state for safety
+ Fix to prevent podState expiresAt jumping after a reset pod fault
+ New PumpManagerAlert to post and clear any unexpected pod alerts
+ Cleaned up some uneeded PumpManagerAlert related cruft
+ Improved SwiftUI previews for many views
+ Fixed various comment typos and errors
+ Convert some inconsistent uses of NSLocalizedString to LocalizedString
+ Remove some uneeded and inconsistent semicolons in OmnipodSettingsView
+ White space cleanup to minimize OmniKit & OmniBLE source file differences
+ New configuredAlertsString func for detailed info on configured alerts
+ Renamed alertString func to alertSetString func for better clarity
+ Clearer PumpManager debug strings for optional current & previous PodState
+ Clearer PodState debug strings for optional Fault and pdmRef
+ Add additional bulletproofing for suspend time expired alert clearing

Reworked and improved pump manager settings layout
+ Device Details -> Pod Details
+ Previous Pod Information -> Previous Pod Details
+ Remove Pod -> Deactivate Pod

Improved alert handling when toggling pod silence state during suspend
+ reset suspendTimeExpired alert if active and alert not acknowledged
+ fix logic error which caused podSuspendedReminder alert not to be reset

Pod suspend alert handling improvements
+ Don't clear suspend time expired pod alert to continue beeping until resume
+ Keep suspend time expired pod beeps on 15m intervals when toggling Silence Pod

Make pod fault code, description and ref string info more available
+ Added the decimal fault # to the reservoir display for a faulted pod
+ Deactivate pod view includes notification string for common faults
+ Deactivate pod includes fault # & Ref string for unexpected pod faults

Disable selective pod settings commands based on pod state
+ Disable Set Temporary Basal Rate when pod is faulted or not active
+ Disable Play Test Beeps Diagnostic when pod is faulted or not active
+ Disable Read Pod Status and Read Pulse Log Diagnostics with no pod

Add missing OmniKitUI.xcassets for Cannula Inserted & reservoir masks

* Fix logic error for fault display text during Pod Deactvation
Improve OmniBLE/PumpManagerUI directory Xcode sorting

* New Crowdin updates (Artificial-Pancreas#320)

* Merge fix (Artificial-Pancreas#327)

* More pod strings

* Localization work

* Revert "strings"

This reverts commit 0d0acad.

* fix strings

* Crowdin (Artificial-Pancreas#334)

* New Silence pod string

* More strings

* Crowdin (Artificial-Pancreas#362)

* 2.2.7

---------

Authored-by: Joe Moran <[email protected]>
and Co-authored (strings and localization) by @Jon-b-m
  • Loading branch information
Jon-b-m authored Nov 22, 2023
1 parent cb57797 commit a68eb89
Show file tree
Hide file tree
Showing 206 changed files with 6,443 additions and 1,854 deletions.
2 changes: 1 addition & 1 deletion Config.xcconfig
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
APP_DISPLAY_NAME = iAPS
APP_VERSION = 2.2.6
APP_VERSION = 2.2.7
APP_BUILD_NUMBER = 1
COPYRIGHT_NOTICE =
DEVELOPER_TEAM = ##TEAM_ID##
Expand Down
38 changes: 35 additions & 3 deletions Dependencies/OmniBLE/Localizations/ar.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@
"Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains." = "Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains.";

/* Label text for step 1 of pair pod instructions */
"Fill a new pod with U-100 Insulin (leave blue Pod needle cap on)." = "Fill a new pod with U-100 Insulin (leave blue Pod needle cap on).";
"Remove the Pod's blue needle cap and check cannula. Then remove paper backing." = "Remove the Pod's blue needle cap and check cannula. Then remove paper backing.";

/* Label text for step 2 of pair pod instructions */
"Listen for 2 beeps." = "Listen for 2 beeps.";
Expand Down Expand Up @@ -602,10 +602,10 @@
"No confidence reminders are used." = "No confidence reminders are used.";

/* Description for BeepPreference.manualCommands */
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used." = "Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used.";
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used." = "Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used.";

/* Description for BeepPreference.extended */
"Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate." = "Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate.";
"Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate." = "Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate.";

/* Label text for temporary basal rate summary */
"Rate" = "Rate";
Expand Down Expand Up @@ -785,3 +785,35 @@

/* DASH Pod time ago since last status */
"%@ ago" = "%@ ago";
<<<<<<< HEAD
=======

/* Title string for SilencePodPreference.enabled */
"Silenced" = "Silenced";

/* Description for SilencePodPreference.disabled */
"Normal operation mode where audible Pod beeps are used for all Pod alerts and when confidence reminders are enabled." = "Normal operation mode where audible Pod beeps are used for all Pod alerts and when confidence reminders are enabled.";

/* Description for SilencePodPreference.enabled */
"All Pod alerts use no beeps and confirmation reminder beeps are suppressed. The Pod will only beep for fatal Pod faults and when playing test beeps.\n\n⚠️Warning - Whenever the Pod is silenced it must be kept within Bluetooth range of this device to receive notifications for Pod alerts." = "All Pod alerts use no beeps and confirmation reminder beeps are suppressed. The Pod will only beep for fatal Pod faults and when playing test beeps.\n\n⚠️Warning - Whenever the Pod is silenced it must be kept within Bluetooth range of this device to receive notifications for Pod alerts.";

/* Help text for Silence Pod view */
"Silence Pod mode suppresses all Pod alert and confirmation reminder beeping." = "Silence Pod mode suppresses all Pod alert and confirmation reminder beeping.";

/* navigation title for Silnce Pod */
"Silence Pod" = "Silence Pod";

/* title for pod details page */
"Pod Details" = "Pod Details";

/* Text for previous pod details row" */
"Previous Pod Details" = "Previous Pod Details";

/* Text for pump manager details navigation link */
"Pump Manager Details" = "Pump Manager Details";

/* button title when retrieving pump manager details */
"Retrieving Pump Manager Details..." = "Retrieving Pump Manager Details...";
/* button title to refresh pump manager details */
"Refresh Pump Manager Details" = "Refresh Pump Manager Details";
>>>>>>> 7f4d47c8 (Crowdin (#334))
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@
"Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains." = "Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains.";

/* Label text for step 1 of pair pod instructions */
"Fill a new pod with U-100 Insulin (leave blue Pod needle cap on)." = "Fill a new pod with U-100 Insulin (leave blue Pod needle cap on).";
"Remove the Pod's blue needle cap and check cannula. Then remove paper backing." = "Remove the Pod's blue needle cap and check cannula. Then remove paper backing.";

/* Label text for step 2 of pair pod instructions */
"Listen for 2 beeps." = "Listen for 2 beeps.";
Expand Down Expand Up @@ -602,10 +602,10 @@
"No confidence reminders are used." = "No confidence reminders are used.";

/* Description for BeepPreference.manualCommands */
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used." = "Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used.";
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used." = "Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used.";

/* Description for BeepPreference.extended */
"Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate." = "Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate.";
"Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate." = "Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate.";

/* Label text for temporary basal rate summary */
"Rate" = "Rate";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@
"Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains." = "Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains.";

/* Label text for step 1 of pair pod instructions */
"Fill a new pod with U-100 Insulin (leave blue Pod needle cap on)." = "Fill a new pod with U-100 Insulin (leave blue Pod needle cap on).";
"Remove the Pod's blue needle cap and check cannula. Then remove paper backing." = "Remove the Pod's blue needle cap and check cannula. Then remove paper backing.";

/* Label text for step 2 of pair pod instructions */
"Listen for 2 beeps." = "Listen for 2 beeps.";
Expand Down Expand Up @@ -602,10 +602,10 @@
"No confidence reminders are used." = "No confidence reminders are used.";

/* Description for BeepPreference.manualCommands */
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used." = "Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used.";
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used." = "Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used.";

/* Description for BeepPreference.extended */
"Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate." = "Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate.";
"Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate." = "Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate.";

/* Label text for temporary basal rate summary */
"Rate" = "Rate";
Expand Down
38 changes: 35 additions & 3 deletions Dependencies/OmniBLE/Localizations/da.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@
"Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains." = "Change Pod now. Insulin delivery will stop 8 hours after the Pod has expired or when no more insulin remains.";

/* Label text for step 1 of pair pod instructions */
"Fill a new pod with U-100 Insulin (leave blue Pod needle cap on)." = "Fill a new pod with U-100 Insulin (leave blue Pod needle cap on).";
"Fill a new pod with U-100 Insulin (leave blue Pod needle cap on)." = "Fyld et nyt bælg med U-100 Insulin (efterlad den blå nålehætte på).";

/* Label text for step 2 of pair pod instructions */
"Listen for 2 beeps." = "Listen for 2 beeps.";
Expand Down Expand Up @@ -602,10 +602,10 @@
"No confidence reminders are used." = "No confidence reminders are used.";

/* Description for BeepPreference.manualCommands */
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used." = "Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used.";
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used." = "Påmindelser om succesfulde handlinger vil lyde for de kommandoer du sætter igang, annulleret, suspenderet, genoptaget bolus, gemme notifikationspåmindelser etc. Når iAPS automatisk justerer tilførslen, bliver påmindelser om succesfulde handlinger ikke benyttet.";

/* Description for BeepPreference.extended */
"Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate." = "Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate.";
"Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate." = "Påmindelser om succesfulde handlinger vil lyde, når iAPS automatisk justerer tilførslen og de kommandoer, du sætter igang.";

/* Label text for temporary basal rate summary */
"Rate" = "Værdi";
Expand Down Expand Up @@ -785,3 +785,35 @@

/* DASH Pod time ago since last status */
"%@ ago" = "%@ siden";
<<<<<<< HEAD
=======

/* Title string for SilencePodPreference.enabled */
"Silenced" = "Silenced";

/* Description for SilencePodPreference.disabled */
"Normal operation mode where audible Pod beeps are used for all Pod alerts and when confidence reminders are enabled." = "Normal operation mode where audible Pod beeps are used for all Pod alerts and when confidence reminders are enabled.";

/* Description for SilencePodPreference.enabled */
"All Pod alerts use no beeps and confirmation reminder beeps are suppressed. The Pod will only beep for fatal Pod faults and when playing test beeps.\n\n⚠️Warning - Whenever the Pod is silenced it must be kept within Bluetooth range of this device to receive notifications for Pod alerts." = "All Pod alerts use no beeps and confirmation reminder beeps are suppressed. The Pod will only beep for fatal Pod faults and when playing test beeps.\n\n⚠️Warning - Whenever the Pod is silenced it must be kept within Bluetooth range of this device to receive notifications for Pod alerts.";

/* Help text for Silence Pod view */
"Silence Pod mode suppresses all Pod alert and confirmation reminder beeping." = "Silence Pod mode suppresses all Pod alert and confirmation reminder beeping.";

/* navigation title for Silnce Pod */
"Silence Pod" = "Silence Pod";

/* title for pod details page */
"Pod Details" = "Pod Details";

/* Text for previous pod details row" */
"Previous Pod Details" = "Previous Pod Details";

/* Text for pump manager details navigation link */
"Pump Manager Details" = "Pump Manager Details";

/* button title when retrieving pump manager details */
"Retrieving Pump Manager Details..." = "Retrieving Pump Manager Details...";
/* button title to refresh pump manager details */
"Refresh Pump Manager Details" = "Refresh Pump Manager Details";
>>>>>>> 7f4d47c8 (Crowdin (#334))
53 changes: 51 additions & 2 deletions Dependencies/OmniBLE/Localizations/de.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -602,10 +602,17 @@
"No confidence reminders are used." = "Keine Erinnerungseinstellungen in Verwendung.";

/* Description for BeepPreference.manualCommands */
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When Loop automatically adjusts delivery, no confidence reminders are used." = "Erinnerungssignale ertönen gemäß deiner Einstellungen, wie Bolusabgabe, Bolus abbrechen, Unterbrechung, Wiederaufnahme, Speicherung von Benachrichtigungen usw. Wenn Loop automatisch Insulin abgibt, ertönen keine Erinnerungssignale.";
<<<<<<< HEAD
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used." = "Erinnerungssignale ertönen gemäß deiner Einstellungen, wie Bolusabgabe, Bolus abbrechen, Unterbrechung, Wiederaufnahme, Speicherung von Benachrichtigungen usw. Wenn Loop automatisch Insulin abgibt, ertönen keine Erinnerungssignale.";

/* Description for BeepPreference.extended */
"Confidence reminders will sound when Loop automatically adjusts delivery as well as for commands you initiate." = "Erinnerungssignale ertönen, wenn Loop die Abgabe automatisch anpasst sowie bei Befehlen, die von dir ausgelöst werden.";
"Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate." = "Erinnerungssignale ertönen, wenn Loop die Abgabe automatisch anpasst sowie bei Befehlen, die von dir ausgelöst werden.";
=======
"Confidence reminders will sound for commands you initiate, like bolus, cancel bolus, suspend, resume, save notification reminders, etc. When the app automatically adjusts delivery, no confidence reminders are used." = "Vertrauenserinnerungen ertönen für von Ihnen initiierte Befehle, wie Bolus, Bolus abbrechen, Unterbrechen, Fortsetzen, Benachrichtigungserinnerungen speichern usw. Wenn Loop die Abgabe automatisch anpasst, werden keine Vertrauenserinnerungen verwendet.";

/* Description for BeepPreference.extended */
"Confidence reminders will sound when the app automatically adjusts delivery as well as for commands you initiate." = "Vertrauenserinnerungen ertönen, wenn Loop die Lieferung automatisch anpasst, sowie für von Ihnen initiierte Befehle.";
>>>>>>> 420dc4ed (Crowdin (#362))

/* Label text for temporary basal rate summary */
"Rate" = "BR";
Expand Down Expand Up @@ -785,3 +792,45 @@

/* DASH Pod time ago since last status */
"%@ ago" = "%@ vor";
<<<<<<< HEAD
=======

/* Title string for SilencePodPreference.enabled */
"Silenced" = "Stille";

/* Description for SilencePodPreference.disabled */
"Normal operation mode where audible Pod beeps are used for all Pod alerts and when confidence reminders are enabled." = "Normaler Operationsmodus, in dem hörbare Pod Signale für alle Pod Alarme verwendet werden und wenn Vertrauenserinnerungen aktiviert sind.";

/* Description for SilencePodPreference.enabled */
"All Pod alerts use no beeps and confirmation reminder beeps are suppressed. The Pod will only beep for fatal Pod faults and when playing test beeps.\n\n⚠️Warning - Whenever the Pod is silenced it must be kept within Bluetooth range of this device to receive notifications for Pod alerts." = "Alle Pod Alarme verwenden keine Signale und Bestätigungssignale werden unterdrückt. Der Pod springt nur bei tödlichen Pod-Fehlern und beim Abspielen von Testsignalen.\n\nWarnung: Warnung - Wann immer der Pod zum Schweigen gebracht wird, muss er innerhalb des Bluetooth-Bereichs dieses Geräts gehalten werden, um Benachrichtigungen für Pod-Benachrichtigungen zu erhalten.";

/* Help text for Silence Pod view */
"Silence Pod mode suppresses all Pod alert and confirmation reminder beeping." = "Stille Pod Modus unterdrückt alle Pod Warnungen und Bestätigungs-Erinnerung.";

/* navigation title for Silnce Pod */
"Silence Pod" = "Stille Pod";

/* title for pod details page */
"Pod Details" = "Pod-Details";

/* Text for previous pod details row" */
"Previous Pod Details" = "Vorherige Pod-Details";

/* Text for pump manager details navigation link */
"Pump Manager Details" = "Pump-Manager Details";

/* button title when retrieving pump manager details */
"Retrieving Pump Manager Details..." = "Pumpenmanager Details abrufen...";
/* button title to refresh pump manager details */
<<<<<<< HEAD
"Refresh Pump Manager Details" = "Refresh Pump Manager Details";
>>>>>>> 7f4d47c8 (Crowdin (#334))
=======
"Refresh Pump Manager Details" = "Pumpmanager Details aktualisieren";

/* Section header for diagnostic section */
"Diagnostics" = "Diagnose-Infos";

/* Text for read pod status navigation link */
"Read Pod Status" = "Pod-Status ablesen";
>>>>>>> 420dc4ed (Crowdin (#362))
Loading

0 comments on commit a68eb89

Please sign in to comment.