Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions Learn/fi.lproj/InfoPlist.strings
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/* Privacy - Health Share Usage Description */
"NSHealthShareUsageDescription" = "Terveys-sovelluksen ateriatietoja käytetään glukoosivaikutusten määrittämiseen. Terveys-sovelluksen glukoositietoja käytetään graafeissa ja laskelmissa.";

12 changes: 12 additions & 0 deletions Loop.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,7 @@
7D70765E1FE06EE3004AC8EA /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 7D7076601FE06EE3004AC8EA /* Localizable.strings */; };
7D7076631FE06EE4004AC8EA /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 7D7076651FE06EE4004AC8EA /* Localizable.strings */; };
7D9BEEF32335CF8D005DCFD6 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 7D9BEEF52335CF8D005DCFD6 /* Localizable.strings */; };
80F864E62433BF5D0026EC26 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 80F864E42433BF5D0026EC26 /* InfoPlist.strings */; };
892A5D2A222EF60A008961AB /* MockKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 892A5D29222EF60A008961AB /* MockKit.framework */; };
892A5D2C222EF60A008961AB /* MockKitUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 892A5D2B222EF60A008961AB /* MockKitUI.framework */; };
892A5D59222F0A27008961AB /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 892A5D58222F0A27008961AB /* Debug.swift */; };
Expand Down Expand Up @@ -1041,6 +1042,7 @@
7DD382771F8DBFC60071272B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Main.strings; sourceTree = "<group>"; };
7DD382781F8DBFC60071272B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/MainInterface.strings; sourceTree = "<group>"; };
7DD382791F8DBFC60071272B /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Interface.strings; sourceTree = "<group>"; };
80F864E52433BF5D0026EC26 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/InfoPlist.strings; sourceTree = "<group>"; };
892A5D29222EF60A008961AB /* MockKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; name = MockKit.framework; path = Carthage/Build/iOS/MockKit.framework; sourceTree = SOURCE_ROOT; };
892A5D2B222EF60A008961AB /* MockKitUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; name = MockKitUI.framework; path = Carthage/Build/iOS/MockKitUI.framework; sourceTree = SOURCE_ROOT; };
892A5D58222F0A27008961AB /* Debug.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Debug.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -1497,6 +1499,7 @@
43D9FFAB21EA9A0F00AF44BF /* Assets.xcassets */,
43D9FFAD21EA9A0F00AF44BF /* LaunchScreen.storyboard */,
43D9FFB021EA9A0F00AF44BF /* Info.plist */,
80F864E42433BF5D0026EC26 /* InfoPlist.strings */,
7D9BEEE72335A6B3005DCFD6 /* Localizable.strings */,
);
path = Learn;
Expand Down Expand Up @@ -2337,6 +2340,7 @@
43D9FFAF21EA9A0F00AF44BF /* LaunchScreen.storyboard in Resources */,
43D9FFAC21EA9A0F00AF44BF /* Assets.xcassets in Resources */,
43D9FFAA21EA9A0C00AF44BF /* Main.storyboard in Resources */,
80F864E62433BF5D0026EC26 /* InfoPlist.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -3365,6 +3369,14 @@
name = Localizable.strings;
sourceTree = "<group>";
};
80F864E42433BF5D0026EC26 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
80F864E52433BF5D0026EC26 /* fi */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
C1C73F0F1DE3D0270022FC89 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
Expand Down
6 changes: 3 additions & 3 deletions Loop/fi.lproj/InfoPlist.strings
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@
"NSBluetoothPeripheralUsageDescription" = "Bluetoothin avulla kommunikoidaan insuliinipumpun ja glukoosinseurantalaitteen kanssa.";

/* Privacy - Face ID Usage Description */
"NSFaceIDUsageDescription" = "Face ID:tä käytetään vahvistamiseen annettaessa bolusta.";
"NSFaceIDUsageDescription" = "Face ID:tä käytetään annettavan boluksen vahvistamiseen.";

/* Privacy - Health Share Usage Description */
"NSHealthShareUsageDescription" = "Terveys-appin ateriatietoja käytetään glukoosivaikutusten määrittämiseen. Terveys-appin glukoositietoja käytetään graafeissa ja laskelmissa.";
"NSHealthShareUsageDescription" = "Terveys-sovelluksen ateriatietoja käytetään glukoosivaikutusten määrittämiseen. Terveys-sovelluksen glukoositietoja käytetään graafeissa ja laskelmissa. Unitiedot parantavat Apple Watch komplikaation käyttökokemusta.";

/* Privacy - Health Update Usage Description */
"NSHealthUpdateUsageDescription" = "Appin ja kellon kautta tallennetut hiilihydraattitiedot tallennetaan Terveys-appiin. Glukoosiseurannan kautta saadut glukoositiedot tallennetaan turvallisesti HealthKitiin.";
"NSHealthUpdateUsageDescription" = "Sovelluksen ja kellon kautta tallennetut hiilihydraattitiedot tallennetaan Terveys-sovellukseen. Glukoosiseurannan kautta saadut glukoositiedot tallennetaan turvallisesti HealthKitiin.";

76 changes: 59 additions & 17 deletions Loop/fi.lproj/Localizable.strings
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* The string format appended to active insulin that describes pending insulin. (1: pending insulin) */
" (pending: %@)" = "(odottaa: %@)";
" (pending: %@)" = "(odot.: %@)";

/* The format for an active override preset. (1: preset symbol)(2: preset name) */
"%@ %@" = "%1$@ %2$@";
Expand Down Expand Up @@ -38,16 +38,19 @@
"%1$@: %2$@" = "%1$@: %2$@";

/* Description of the prediction input effect for glucose momentum */
"15 min glucose regression coefficient (b₁), continued with decay over 30 min" = "15 min glukoosin regressiokerroin (b₁), häipyen 30 min kuluessa.";
"15 min glucose regression coefficient (b₁), continued with decay over 30 min" = "15 min glukoosin regressiokerroin (b₁), hiipuen 30 min kuluessa";

/* Description of the prediction input effect for retrospective correction */
"30 min comparison of glucose prediction vs actual, continued with decay over 60 min" = "30 min vertailu ennustetun ja todellisen glukoosin välillä, häipyen 60 min kuluessa.";
"30 min comparison of glucose prediction vs actual, continued with decay over 60 min" = "30 min vertailu ennustetun ja todellisen glukoosin välillä, hiipuen 60 min kuluessa";

/* Subtitle of Fiasp preset */
"A model based on the published absorption of Fiasp insulin." = "Malli perustuen julkaistuihin Fiasp-insuliinin imeytymisaikoihin.";
"A model based on the published absorption of Fiasp insulin." = "Perustuu Fiasp-insuliinin julkaistuun imeytymismalliin.";

/* Subtitle of Rapid-Acting – Adult preset */
"A model based on the published absorption of Humalog, Novolog, and Apidra insulin in adults." = "Malli perustuen julkaistuihin Humalog-, Novorapid- ja Apidra-insuliinien imeytymisaikoihin aikuisilla.";
"A model based on the published absorption of Humalog, Novolog, and Apidra insulin in adults." = "Perustuu Humalog-, Novorapid- ja Apidra-insuliinien julkaistuun imeytymismalliin aikuisilla.";

/* Title of the carb entry absorption time cell */
"Absorption Time" = "Imeytymisaika";

/* Action to copy the recommended Bolus value to the actual Bolus Field */
"AcceptRecommendedBolus" = "HyväksySuositeltuBolus";
Expand Down Expand Up @@ -107,9 +110,13 @@
"Basal Rates" = "Basaalitasot";

/* The label of the bolus entry button
The notification title for a bolus failure */
The notification title for a bolus failure
Title text for bolus screen (manual correction) */
"Bolus" = "Bolus";

/* Alert title for an updated bolus recommendation */
"Bolus Recommendation Updated" = "Bolussuositus päivitetty";

/* The format string for bolus progress. (1: delivered volume)(2: total volume) */
"Bolused %1$@ of %2$@" = "Bolus %1$@ / %2$@";

Expand All @@ -129,6 +136,12 @@
The title text for the carb ratio schedule */
"Carb Ratios" = "Hiilihydraattisuhteet";

/* The title of the view controller to create a new carb entry */
"carb-entry-title-add" = "Lisää hiilihydraatteja";

/* The title of the view controller to edit an existing carb entry */
"carb-entry-title-edit" = "Muokkaa hiilihydraatteja";

/* Title of the prediction input effect for carbohydrates */
"Carbohydrates" = "Hiilihydraatit";

Expand All @@ -148,19 +161,22 @@
"Check that your pump is in range" = "Tarkista, että pumppu on riittävän lähellä";

/* Recovery suggestion when glucose data is missing */
"Check your CGM data source" = "Tarkista CGM-datalähde";
"Check your CGM data source" = "Tarkista CGM-tietolähde";

/* Carb entry section footer text explaining absorption time */
"Choose a longer absorption time for larger meals, or those containing fats and proteins. This is only guidance to the algorithm and need not be exact." = "Valitse pidempi imeytymisaika isoille tai paljon rasvaa ja proteiineja sisältäville aterioille. Tämä on suuntaa antava tieto, eikä sen tarvitse olla tarkka.";

/* The title text for the looping enabled switch cell */
"Closed Loop" = "Closed Loop";
"Closed Loop" = "Suljettu säätö";

/* The title of the action used to dismiss an error alert */
"com.loudnate.LoopKit.errorAlertActionTitle" = "OK";

/* The title of the configuration section in settings */
"Configuration" = "Kokoonpano";
"Configuration" = "Määritykset";

/* The error message displayed for configuration errors. (1: configuration error details) */
"Configuration Error: %1$@" = "Kokoonpanovirhe: %1$@";
"Configuration Error: %1$@" = "Määritysvirhe: %1$@";

/* The title of the continuous glucose monitor section in settings */
"Continuous Glucose Monitor" = "Glukoosinseuranta (CGM)";
Expand All @@ -172,15 +188,22 @@
/* Message when offering bolus recommendation even though bg is below range. (1: glucose value) */
"Current glucose of %1$@ is below correction range." = "Nykyinen glukoosi %1$@ on korjausalueen alapuolella.";

/* The title of the cell indicating a generic temporary override is enabled */
"Custom Override" = "Tilapäisas";
/* Name of custom override
The title of the cell indicating a generic temporary override is enabled */
"Custom Override" = "Mukautettu tilapäisasetus";

/* The title of the Loggly customer token credential */
"Customer Token" = "Asiakastunniste";

/* Title of the carb entry date picker cell */
"Date" = "Aika";

/* Button title to delete CGM */
"Delete CGM" = "Poista CGM";

/* The button text to initiate a bolus */
"Deliver" = "Annostele";

/* Title text for delivery limits */
"Delivery Limits" = "Annostelurajat";

Expand Down Expand Up @@ -256,7 +279,7 @@
"Issue Report" = "Ongelmaraportti";

/* Glucose HUD accessibility hint */
"Launches CGM app" = "Avaa CGM-appin";
"Launches CGM app" = "Avaa CGM-sovelluksen";

/* The loading message for the diagnostic report screen */
"Loading..." = "Ladataan...";
Expand All @@ -270,6 +293,9 @@
/* The notification alert describing a long-lasting loop failure. The substitution parameter is the time interval since the last loop */
"Loop has not completed successfully in %@" = "Häiriö Loopin toiminnassa %@";

/* Title text for bolus screen following a carb entry */
"Meal Bolus" = "Ateriabolus";

/* The error message for missing data. (1: missing data details) */
"Missing data: %1$@" = "Tiedot puuttuvat: %1$@";

Expand All @@ -282,8 +308,14 @@
/* The error message displayed for device connection errors. */
"No connected devices, or failure during device connection" = "Ei yhdistettyjä laitteita tai häiriö laiteyhteydessä";

/* Button text to acknowledge an updated bolus recommendation alert */
"OK" = "OK";

/* The title text for the override presets */
"Override Presets" = "Override Presets";
"Override Presets" = "Tilapäisasetukset";

/* Name of pre-meal workout override */
"Pre-Meal" = "Ennen ateriaa";

/* The label of the pre-meal mode toggle button */
"Pre-Meal Targets" = "Ennen ateriaa -tavoite";
Expand Down Expand Up @@ -339,9 +371,13 @@
/* Title of the prediction input effect for retrospective correction */
"Retrospective Correction" = "Retrospektiivinen korjaus";

/* The title of the notification action to retry a bolus command */
/* The button text for attempting a manual loop
The title of the notification action to retry a bolus command */
"Retry" = "Uudelleen";

/* The button text to save a carb entry without bolusing */
"Save without Bolusing" = "Tallenna ilman bolusta";

/* The title of the services section in settings */
"Services" = "Palvelut";

Expand All @@ -355,7 +391,7 @@
"since %@" = "%@ jälkeen";

/* The title of the nightscout site URL credential */
"Site URL" = "Sivuston URL";
"Site URL" = "URL";

/* The format for the description of a temporary override start date */
"starting at %@" = "alkaa %@";
Expand All @@ -369,8 +405,11 @@
/* The subtitle of the cell displaying an action to resume insulin delivery */
"Tap to Resume" = "Jatka annostelua";

/* Alert message for an updated bolus recommendation */
"The bolus recommendation has updated. Please reconfirm the bolus amount." = "Bolussuositus on päivittynyt. Vahvista bolus uudelleen.";

/* Subtitle description of Walsh insulin model setting */
"The legacy model used by Loop, allowing customization of action duration." = "Loopin aikaisemmin käyttämä insuliinimalli, joka mahdollistaa insuliinin vaikutusajan muokkauksen.";
"The legacy model used by Loop, allowing customization of action duration." = "Loopin vanha insuliinimalli, jossa voi muokata insuliinin vaikutusaikaa.";

/* Body of the alert describing a maximum bolus validation error. (1: The localized max bolus value) */
"The maximum bolus amount is %@ Units" = "Suurin sallittu bolus on %@ yksikköä";
Expand All @@ -390,6 +429,9 @@
/* Explanation of suspend threshold */
"When current or forecasted glucose is below the suspend threshold, Loop will not recommend a bolus, and will always recommend a temporary basal rate of 0 units per hour." = "Kun nykyinen tai ennustettu glukoosi on pysäytysrajan alapuolella, Loop ei suosittele bolusta ja suosittelee aina tilapäiseksi basaaliksi 0 yksikköä tunnissa.";

/* Name of legacy workout override */
"Workout" = "Liikunta";

/* The label of the workout mode toggle button */
"Workout Targets" = "Liikuntatavoitteet";

28 changes: 17 additions & 11 deletions Loop/fi.lproj/Main.strings
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"3kU-n2-fha.title" = "Tila";

/* Class = "UILabel"; text = "3.5 U/hour @ 12:12 PM"; ObjectID = "5gz-kZ-iF1"; */
"5gz-kZ-iF1.text" = "3.5 U/h @ 12:12 PM";
"5gz-kZ-iF1.text" = "3.5 U/h @ 12:12";

/* Class = "UILabel"; text = "Bolus"; ObjectID = "5oA-6d-ZTL"; */
"5oA-6d-ZTL.text" = "Bolus";
Expand All @@ -25,6 +25,9 @@
/* Class = "UINavigationItem"; title = "Bolus"; ObjectID = "aiu-ZA-zVa"; */
"aiu-ZA-zVa.title" = "Bolus";

/* Class = "UILabel"; text = "Food Type"; ObjectID = "ap1-M6-naG"; */
"ap1-M6-naG.text" = "Ruokatyyppi";

/* Class = "UILabel"; text = "Label"; ObjectID = "bIL-Ub-qYp"; */
"bIL-Ub-qYp.text" = "Nimiö";

Expand All @@ -44,7 +47,7 @@
"d3X-AN-tA5.text" = "g yhteensä";

/* Class = "UILabel"; text = "Future glucose is predicted by combining the effects of multiple inputs. Use this tool to toggle various inputs to see how they compare to the final prediction."; ObjectID = "D4C-I2-dhA"; */
"D4C-I2-dhA.text" = "Tulevia glukoosiarvoja ennustetaan yhdistämällä useita eri tekijöiden vaikutuksia. Tämän työkalun avulla voit havainnoida, kuinka ne vaikuttavat lopulliseen ennusteeseen laittamalla eri tekijöitä päälle/pois.";
"D4C-I2-dhA.text" = "Tulevia glukoosiarvoja ennustetaan yhdistämällä useiden eri tekijöiden vaikutuksia. Tämän työkalun avulla voit havainnoida, kuinka ne vaikuttavat lopulliseen ennusteeseen laittamalla niitä päälle/pois.";

/* Class = "UILabel"; text = "Label"; ObjectID = "d6m-qV-wWi"; */
"d6m-qV-wWi.text" = "Nimiö";
Expand All @@ -61,18 +64,18 @@
/* Class = "UILabel"; text = "Observed"; ObjectID = "EAn-Ja-S1d"; */
"EAn-Ja-S1d.text" = "Havaittu";

/* Class = "UILabel"; text = "Active Carbohydrates: 40g"; ObjectID = "hHZ-uY-aKw"; */
"hHZ-uY-aKw.text" = "Aktiivinen hiilihydraatti: 40g";

/* Class = "UITableViewController"; title = "Carbohydrate Effects"; ObjectID = "hZZ-2S-lrd"; */
"hZZ-2S-lrd.title" = "Hiilihydraattivaikutus";

/* Class = "UILabel"; text = "Observed changes in glucose, subtracting changes modeled from insulin delivery, can be used to estimate carbohydrate absorption."; ObjectID = "IxU-As-glo"; */
"IxU-As-glo.text" = "Havaittuja glukoosin muutoksia, vähennettynä insuliinin annostelusta mallinnetuilla muutoksilla, voidaan käyttää hiilihydraattien imeytymisen arvioinnissa.";
"IxU-As-glo.text" = "Havaittua glukoosin muutosta, josta on vähennetty insuliinin mallinnettu vaikutus, voidaan käyttää hiilihydraattien imeytymisen arviointiin.";

/* Class = "UILabel"; text = "Detail"; ObjectID = "J7x-W5-gwo"; */
"J7x-W5-gwo.text" = "Yksityiskohta";

/* Class = "UILabel"; text = "Detail"; ObjectID = "jQv-xb-gwu"; */
"jQv-xb-gwu.text" = "Yksityiskohta";

/* Class = "UILabel"; text = "⚠ Glucose Predicted Below Range"; ObjectID = "k0g-P7-OVN"; */
"k0g-P7-OVN.text" = "⚠ Ennustettu glukoosi alueen alapuolella";

Expand Down Expand Up @@ -106,6 +109,9 @@
/* Class = "UILabel"; text = "An insulin activity model is used to estimate effects of insulin on glucose levels. An accurate model can help prevent insulin stacking and safely recommend corrective treatments."; ObjectID = "PJv-p9-cFe"; */
"PJv-p9-cFe.text" = "Insuliiniaktiivisuusmallia käytetään arvioimaan insuliinin vaikutuksia glukoositasoon. Tarkka malli voi auttaa estämään liian suuren insuliinimäärän kertymistä kehoon ja suosittelemaan turvallisia glukoosia korjaavia hoitotoimenpiteitä.";

/* Class = "UILabel"; text = "Food Type"; ObjectID = "qPH-vU-xlu"; */
"qPH-vU-xlu.text" = "Ruokatyyppi";

/* Class = "UILabel"; text = "eventually 92 mg/dL"; ObjectID = "Rse-x8-amW"; */
"Rse-x8-amW.text" = "ennuste 92 mg/dL";

Expand All @@ -115,20 +121,20 @@
/* Class = "UILabel"; text = "Glucose"; ObjectID = "tuw-av-A3x"; */
"tuw-av-A3x.text" = "Glukoosi";

/* Class = "UINavigationItem"; title = "Add/Edit Carb Entry"; ObjectID = "Tz7-80-bJ7"; */
"Tz7-80-bJ7.title" = "Lisää/muokkaa hiilihydraatteja";

/* Class = "UILabel"; text = "Label"; ObjectID = "ufi-Kj-33k"; */
"ufi-Kj-33k.text" = "Nimiö";

/* Class = "UILabel"; text = "Active Insulin: 1.5U"; ObjectID = "viU-7a-kbI"; */
"viU-7a-kbI.text" = "Aktiivinen insuliini: 1.5U";

/* Class = "UINavigationItem"; title = "Carbohydrates"; ObjectID = "Vpi-5b-bY5"; */
"Vpi-5b-bY5.title" = "Hiilihydraatit";

/* Class = "UITextField"; text = "4 hour"; ObjectID = "Wk3-xv-IM5"; */
"Wk3-xv-IM5.text" = "4 tuntia";

/* Class = "UIButton"; normalTitle = "Deliver"; ObjectID = "Ya0-9b-ZAS"; */
"Ya0-9b-ZAS.normalTitle" = "Annostele";
/* Class = "UILabel"; text = "Amount Consumed"; ObjectID = "Wx8-Tf-FnG"; */
"Wx8-Tf-FnG.text" = "Määrä";

/* Class = "UILabel"; text = "0"; ObjectID = "yn7-2M-jZz"; */
"yn7-2M-jZz.text" = "0";
Expand Down
8 changes: 4 additions & 4 deletions LoopUI/fi.lproj/Localizable.strings
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* Format string describing the time interval since the last completion date. (1: The localized date components */
"%@ ago" = "%@ sitten";
"%@ ago" = "%@";

/* The format string describing the basal rate. */
"%@ U" = "%@ U";
Expand All @@ -17,10 +17,10 @@
"Closed loop" = "Suljettu säätö";

/* Accessbility format label describing the time interval since the last completion date. (1: The localized date components) */
"Loop ran %@ ago" = "Viimeisin säätökierros %@ sitten";
"Loop ran %@ ago" = "Viimeisin säätö %@ sitten";

/* Accessibility label component for glucose HUD describing an invalid state */
"Needs attention" = "Tarvitsee huomion";
"Needs attention" = "Tarvitsee huomiota";

/* Accessbility hint describing completion HUD for an open loop */
"Open loop" = "Avoin säätö";
Expand All @@ -29,5 +29,5 @@
"Unknown" = "Tuntematon";

/* Acessibility label describing completion HUD waiting for first run */
"Waiting for first run" = "Odotetaan ensimmäistä ...";
"Waiting for first run" = "Odotetaan ensimmäistä säätöä";

Loading