فهرست منبع

Merge pull request #157 from marionbarker/trio-rename

Update app name to Trio
MikePlante1 2 سال پیش
والد
کامیت
4a75c68d3d
100فایلهای تغییر یافته به همراه442 افزوده شده و 520 حذف شده
  1. 12 12
      .github/workflows/build_Open-iAPS.yml
  2. 4 4
      Config.xcconfig
  3. 0 36
      FAQ.md
  4. 0 36
      FAQ_RU.md
  5. 0 0
      FreeAPS.xcodeproj/xcshareddata/xcschemes/Trio.xcscheme
  6. 0 0
      FreeAPS.xcodeproj/xcshareddata/xcschemes/Trio_WatchApp.xcscheme
  7. 0 0
      FreeAPS/Resources/Assets.xcassets/trio3D.appiconset/3D Watch.png
  8. 0 0
      FreeAPS/Resources/Assets.xcassets/trio3D.appiconset/Contents.json
  9. 0 0
      FreeAPS/Resources/Assets.xcassets/trio3D.appiconset/OiAPS 3d.png
  10. 0 0
      FreeAPS/Resources/Assets.xcassets/trioBlack.appiconset/A 1.png
  11. 0 0
      FreeAPS/Resources/Assets.xcassets/trioBlack.appiconset/A.png
  12. 0 0
      FreeAPS/Resources/Assets.xcassets/trioBlack.appiconset/Contents.json
  13. 0 0
      FreeAPS/Resources/Assets.xcassets/trioColorBG.appiconset/C 1.png
  14. 0 0
      FreeAPS/Resources/Assets.xcassets/trioColorBG.appiconset/C.png
  15. 0 0
      FreeAPS/Resources/Assets.xcassets/trioColorBG.appiconset/Contents.json
  16. 0 0
      FreeAPS/Resources/Assets.xcassets/trioLoop.appiconset/Contents.json
  17. 0 0
      FreeAPS/Resources/Assets.xcassets/trioLoop.appiconset/imageLoop 1.png
  18. 0 0
      FreeAPS/Resources/Assets.xcassets/trioLoop.appiconset/imageLoop.png
  19. 0 0
      FreeAPS/Resources/Assets.xcassets/trioWhite.appiconset/8.png
  20. 0 0
      FreeAPS/Resources/Assets.xcassets/trioWhite.appiconset/9.png
  21. 0 0
      FreeAPS/Resources/Assets.xcassets/trioWhite.appiconset/Contents.json
  22. 0 0
      FreeAPS/Resources/Assets.xcassets/trioWhiteShadow.appiconset/Contents.json
  23. 0 0
      FreeAPS/Resources/Assets.xcassets/trioWhiteShadow.appiconset/D 1.png
  24. 0 0
      FreeAPS/Resources/Assets.xcassets/trioWhiteShadow.appiconset/D.png
  25. 1 5
      FreeAPS/Resources/Info.plist
  26. 2 2
      FreeAPS/Sources/APS/FetchGlucoseManager.swift
  27. 1 1
      FreeAPS/Sources/Application/FreeAPSApp.swift
  28. 12 12
      FreeAPS/Sources/Localizations/Main/ar.lproj/Localizable.strings
  29. 10 10
      FreeAPS/Sources/Localizations/Main/ca.lproj/Localizable.strings
  30. 13 13
      FreeAPS/Sources/Localizations/Main/da.lproj/Localizable.strings
  31. 12 12
      FreeAPS/Sources/Localizations/Main/de.lproj/Localizable.strings
  32. 12 12
      FreeAPS/Sources/Localizations/Main/en.lproj/Localizable.strings
  33. 12 12
      FreeAPS/Sources/Localizations/Main/es.lproj/Localizable.strings
  34. 12 12
      FreeAPS/Sources/Localizations/Main/fi.lproj/Localizable.strings
  35. 12 12
      FreeAPS/Sources/Localizations/Main/fr.lproj/Localizable.strings
  36. 12 12
      FreeAPS/Sources/Localizations/Main/he.lproj/Localizable.strings
  37. 12 12
      FreeAPS/Sources/Localizations/Main/hu.lproj/Localizable.strings
  38. 14 14
      FreeAPS/Sources/Localizations/Main/it.lproj/Localizable.strings
  39. 12 12
      FreeAPS/Sources/Localizations/Main/nb.lproj/Localizable.strings
  40. 19 19
      FreeAPS/Sources/Localizations/Main/nl.lproj/Localizable.strings
  41. 12 12
      FreeAPS/Sources/Localizations/Main/pl.lproj/Localizable.strings
  42. 12 12
      FreeAPS/Sources/Localizations/Main/pt-BR.lproj/Localizable.strings
  43. 12 12
      FreeAPS/Sources/Localizations/Main/pt-PT.lproj/Localizable.strings
  44. 12 12
      FreeAPS/Sources/Localizations/Main/ru.lproj/Localizable.strings
  45. 13 13
      FreeAPS/Sources/Localizations/Main/sk.lproj/Localizable.strings
  46. 20 20
      FreeAPS/Sources/Localizations/Main/sv.lproj/Localizable.strings
  47. 13 13
      FreeAPS/Sources/Localizations/Main/tr.lproj/Localizable.strings
  48. 12 12
      FreeAPS/Sources/Localizations/Main/uk.lproj/Localizable.strings
  49. 13 13
      FreeAPS/Sources/Localizations/Main/vi.lproj/Localizable.strings
  50. 12 12
      FreeAPS/Sources/Localizations/Main/zh-Hans.lproj/Localizable.strings
  51. 1 1
      FreeAPS/Sources/Models/AlertEntry.swift
  52. 1 1
      FreeAPS/Sources/Models/CarbsEntry.swift
  53. 6 6
      FreeAPS/Sources/Models/Icons.swift
  54. 1 1
      FreeAPS/Sources/Models/NightscoutTreatment.swift
  55. 1 1
      FreeAPS/Sources/Models/TempTarget.swift
  56. 1 1
      FreeAPS/Sources/Modules/HealthKit/View/AppleHealthKitRootView.swift
  57. 1 1
      FreeAPS/Sources/Modules/IconConfig/View/IconSelection.swift
  58. 2 2
      FreeAPS/Sources/Modules/NightscoutConfig/View/NightscoutConfigRootView.swift
  59. 1 1
      FreeAPS/Sources/Modules/NotificationsConfig/View/NotificationsConfigRootView.swift
  60. 5 5
      FreeAPS/Sources/Modules/PreferencesEditor/PreferencesEditorStateModel.swift
  61. 1 1
      FreeAPS/Sources/Modules/PreferencesEditor/View/PreferencesEditorRootView.swift
  62. 2 2
      FreeAPS/Sources/Modules/Settings/View/SettingsRootView.swift
  63. 1 1
      FreeAPS/Sources/Services/Calendar/CalendarManager.swift
  64. 5 5
      FreeAPS/Sources/Services/HealthKit/HealthKitManager.swift
  65. 2 2
      FreeAPS/Sources/Services/Network/NightscoutAPI.swift
  66. 1 1
      FreeAPS/Sources/Services/UserNotifiactions/UserNotificationsManager.swift
  67. 2 2
      FreeAPS/Sources/Services/WatchManager/GarminManager.swift
  68. 5 5
      FreeAPS/Sources/Shortcuts/State/ListStateIntent.swift
  69. 1 1
      FreeAPS/Sources/Shortcuts/State/ListStateView.swift
  70. 4 4
      FreeAPS/Sources/Shortcuts/State/StateIntentRequest.swift
  71. 1 1
      FreeAPSTests/FileStorageTests.swift
  72. 4 4
      FreeAPSWatch WatchKit Extension/ComplicationController.swift
  73. 50 52
      README.md
  74. 0 0
      Trio.xcworkspace/contents.xcworkspacedata
  75. 0 0
      Trio.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
  76. 0 0
      Trio.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
  77. 0 0
      Trio.xcworkspace/xcshareddata/swiftpm/Package.resolved
  78. 5 5
      fastlane/Fastfile
  79. 23 23
      fastlane/testflight.md
  80. 0 0
      trio-ref/lib/autotune-prep/categorize.js
  81. 0 0
      trio-ref/lib/autotune-prep/dosed.js
  82. 0 0
      trio-ref/lib/autotune-prep/index.js
  83. 0 0
      trio-ref/lib/autotune/index.js
  84. 0 0
      trio-ref/lib/basal-set-temp.js
  85. 0 0
      trio-ref/lib/bolus.js
  86. 0 0
      trio-ref/lib/calc-glucose-stats.js
  87. 0 0
      trio-ref/lib/determine-basal/autosens.js
  88. 0 0
      trio-ref/lib/determine-basal/cob.js
  89. 0 0
      trio-ref/lib/determine-basal/determine-basal.js
  90. 0 0
      trio-ref/lib/glucose-get-last.js
  91. 0 0
      trio-ref/lib/glucose-stats.js
  92. 0 0
      trio-ref/lib/iob/calculate.js
  93. 0 0
      trio-ref/lib/iob/history.js
  94. 0 0
      trio-ref/lib/iob/index.js
  95. 0 0
      trio-ref/lib/iob/total.js
  96. 0 0
      trio-ref/lib/meal/history.js
  97. 0 0
      trio-ref/lib/meal/index.js
  98. 0 0
      trio-ref/lib/meal/total.js
  99. 0 0
      trio-ref/lib/medtronic-clock.js
  100. 0 0
      open-iaps-oref/lib/oref0-setup/alias.json

+ 12 - 12
.github/workflows/build_Open-iAPS.yml

@@ -1,5 +1,5 @@
-name: 4. Build Open-iAPS
-run-name: Build Open-iAPS (${{ github.ref_name }})
+name: 4. Build Trio
+run-name: Build Trio (${{ github.ref_name }})
 on:
   workflow_dispatch:
   
@@ -12,7 +12,7 @@ on:
     - cron: '0 6 1 * *' # Builds the app on the 1st of every month at 06:00 UTC
 
 env:  
-  UPSTREAM_REPO: nightscout/Open-iAPS
+  UPSTREAM_REPO: nightscout/Trio
   UPSTREAM_BRANCH: ${{ github.ref_name }} # branch on upstream repository to sync from (replace with specific branch name if needed)
   TARGET_BRANCH: ${{ github.ref_name }} # target branch on fork to be kept in sync, and target branch on upstream to be kept alive (replace with specific branch name if needed)
   ALIVE_BRANCH: alive
@@ -69,7 +69,7 @@ jobs:
       env:
         GITHUB_TOKEN: ${{ secrets.GH_PAT }}
       run: |
-        # get ref for nightscout/Open-iAPS:main
+        # get ref for nightscout/Trio:main
         response=$(curl --request GET \
                           --url "https://api.github.com/repos/${{ env.UPSTREAM_REPO }}/git/refs/heads/main" \
                           --header "Authorization: Bearer $GITHUB_TOKEN" \
@@ -82,7 +82,7 @@ jobs:
         fi
         echo "SHA of main branch: $SHA";
         
-        # Create alive branch based on nightscout/Open-iAPS:main
+        # Create alive branch based on nightscout/Trio:main
         gh api \
           --method POST \
           -H "Authorization: token $GITHUB_TOKEN" \
@@ -155,13 +155,13 @@ jobs:
       if: needs.check_alive_and_permissions.outputs.WORKFLOW_PERMISSION != 'true'
       run: |
         echo "### :calendar: Scheduled Sync and Build Disabled :mobile_phone_off:" >> $GITHUB_STEP_SUMMARY
-        echo "You have not yet configured the scheduled sync and build for Open-iAPS's browser build." >> $GITHUB_STEP_SUMMARY
-        echo "Synchronizing your fork of <code>Open-iAPS</code> with the upstream repository <code>nightscout/Open-iAPS</code> will be skipped." >> $GITHUB_STEP_SUMMARY
-        echo "If you want to enable automatic builds and updates for your Open-iAPS, please follow the instructions \
-              under the following path <code>Open-iAPS/fastlane/testflight.md</code>." >> $GITHUB_STEP_SUMMARY
+        echo "You have not yet configured the scheduled sync and build for Trio's browser build." >> $GITHUB_STEP_SUMMARY
+        echo "Synchronizing your fork of <code>Trio</code> with the upstream repository <code>nightscout/Trio</code> will be skipped." >> $GITHUB_STEP_SUMMARY
+        echo "If you want to enable automatic builds and updates for your Trio, please follow the instructions \
+              under the following path <code>Trio/fastlane/testflight.md</code>." >> $GITHUB_STEP_SUMMARY
    
   
-  # Builds Open-iAPS
+  # Builds Trio
   build:
     name: Build
     needs: [validate, check_alive_and_permissions, check_latest_from_upstream]
@@ -237,9 +237,9 @@ jobs:
       - name: Install project dependencies
         run: bundle install
       
-      # Build signed Open-iAPS IPA file
+      # Build signed Trio IPA file
       - name: Fastlane Build & Archive
-        run: bundle exec fastlane build_open_iaps
+        run: bundle exec fastlane build_trio
         env:
           TEAMID: ${{ secrets.TEAMID }}
           GH_PAT: ${{ secrets.GH_PAT }}

+ 4 - 4
Config.xcconfig

@@ -1,12 +1,12 @@
-APP_DISPLAY_NAME = Open-iAPS
+APP_DISPLAY_NAME = Trio
 APP_VERSION = 0.1.0
 APP_BUILD_NUMBER = 1
 COPYRIGHT_NOTICE =
 DEVELOPER_TEAM = ##TEAM_ID##
-BUNDLE_IDENTIFIER = org.nightscout.$(DEVELOPMENT_TEAM).openiaps
+BUNDLE_IDENTIFIER = org.nightscout.$(DEVELOPMENT_TEAM).trio
 APP_GROUP_ID = group.com.$(DEVELOPMENT_TEAM).loopkit.LoopGroup
-APP_ICON = oiapsBlack
-APP_URL_SCHEME = Open-iAPS
+APP_ICON = trioBlack
+APP_URL_SCHEME = Trio
 
 #include? "../../ConfigOverride.xcconfig"
 #include? "ConfigOverride.xcconfig"

+ 0 - 36
FAQ.md

@@ -1,36 +0,0 @@
-# FAQ
-
-## How to get the Medtronic pump ready?
-
-- Set your temporary basal to units (not percents!).
-- Turn on the remote control with any ID (for example 00000).
-
-## Can I use Bolus assistant on a Medtronic pump?
-
-- You may, but you shouldn't to avoid control conflicts.
-- Carbs, entered through the bolus assistant on pump won't be counted in FreeAPS X.
-- Insulin, delivered through the bolus assistant on pump will be counted in FreeAPS X
-
-## Does the insulin model affect anything when connecting the pump?
-
-- No. This is a legacy screen of rileylink_ios library.
-- You can change an actual insulin type in Preferences -> Insulin Curve. Ultra-rapid for Fiast and Lyumjev, rapid-acting for others.
-
-## Can we manually set TBR?
-
-- Yes. For that you need to open the loop in settings and the button will appear on the main screen.
-
-## How to run the loop on demand manually?
-
-- There is no way of doing that. You can force the data update by long-tapping the loop icon. If this actions gets any new data, loop will be recalculated.
-
-## How to get BG values from Spike/Diabox?
-
-- Settings -> Nightscout -> Use Local Glucose Server, and set the port of a local server. Spike - 1979, Diabox - 17580
-
-## How to see raw data that is used inside the app?
-
-- Preferences -> Edit settings json. Set "debugOptions": true, and restart the app.
-- In Files application on iPhone.
-- You can also download all the data to your computer through iTunes or Finder.
-

+ 0 - 36
FAQ_RU.md

@@ -1,36 +0,0 @@
-# FAQ
-
-## Как подготовить помпу Medtronic?
-
-- Установить временный базал в единицах (не в процентах!).
-- Включить удаленный контроль с любым ID (например 00000).
-
-## Можно ли использовать Помощник болюса на помпе Medtronic?
-
-- Можно, но не рекомендуется, во избежание конфликтов управления помпой.
-- Углеводы, введенные через Помощник учтены не будут.
-- Инсулин, введенный через Помощник будет учтён.
-
-## Учитывается ли тип инсулина, выбранный при подключении помпы?
-
-- Нет. Этот экран - наследие библиотеки rileylink_ios.
-- Тип исулина выбирается настройкой Preferences -> Insulin Curve. ultra-rapid для Fiasp и Lyumjev, rapid-acting для остальных.
-
-## Можно ли установить ручной временный базал?
-
-- Да. Для этого надо открыть петлю в настройках. В главном меню появится кнопка.
-
-## Как запустить петлю прямо сейчас вручную?
-
-- Такой возможности нет. Можно принудительно обновить данные помпы долгим нажатием на круг. Если новые данные доступны, петля выполнится.
-
-## Как получать глюкозу из Spike/Diabox?
-
-- Settings -> Nightscout -> Use Local Glucose Server, затем укажите порт внутреннего сервера. Spike - 1979, Diabox - 17580
-
-## Как посмотреть сырые данные, с которыми работает приложение?
-
-- Preferences -> Edit settings json. Установите параметр "debugOprions": true, затем перезапустите приложение.
-- В приложении Файлы на iPhone.
-- Также возможно скачать все данные на компьютер через iTunes или Finder.
-

FreeAPS.xcodeproj/xcshareddata/xcschemes/Open-iAPS.xcscheme → FreeAPS.xcodeproj/xcshareddata/xcschemes/Trio.xcscheme


FreeAPS.xcodeproj/xcshareddata/xcschemes/FreeAPSWatch.xcscheme → FreeAPS.xcodeproj/xcshareddata/xcschemes/Trio_WatchApp.xcscheme


FreeAPS/Resources/Assets.xcassets/oiaps3D.appiconset/3D Watch.png → FreeAPS/Resources/Assets.xcassets/trio3D.appiconset/3D Watch.png


FreeAPS/Resources/Assets.xcassets/oiaps3D.appiconset/Contents.json → FreeAPS/Resources/Assets.xcassets/trio3D.appiconset/Contents.json


FreeAPS/Resources/Assets.xcassets/oiaps3D.appiconset/OiAPS 3d.png → FreeAPS/Resources/Assets.xcassets/trio3D.appiconset/OiAPS 3d.png


FreeAPS/Resources/Assets.xcassets/oiapsBlack.appiconset/A 1.png → FreeAPS/Resources/Assets.xcassets/trioBlack.appiconset/A 1.png


FreeAPS/Resources/Assets.xcassets/oiapsBlack.appiconset/A.png → FreeAPS/Resources/Assets.xcassets/trioBlack.appiconset/A.png


FreeAPS/Resources/Assets.xcassets/oiapsBlack.appiconset/Contents.json → FreeAPS/Resources/Assets.xcassets/trioBlack.appiconset/Contents.json


FreeAPS/Resources/Assets.xcassets/oiapsColorBG.appiconset/C 1.png → FreeAPS/Resources/Assets.xcassets/trioColorBG.appiconset/C 1.png


FreeAPS/Resources/Assets.xcassets/oiapsColorBG.appiconset/C.png → FreeAPS/Resources/Assets.xcassets/trioColorBG.appiconset/C.png


FreeAPS/Resources/Assets.xcassets/oiapsColorBG.appiconset/Contents.json → FreeAPS/Resources/Assets.xcassets/trioColorBG.appiconset/Contents.json


FreeAPS/Resources/Assets.xcassets/OiAPS_Loop.appiconset/Contents.json → FreeAPS/Resources/Assets.xcassets/trioLoop.appiconset/Contents.json


FreeAPS/Resources/Assets.xcassets/OiAPS_Loop.appiconset/imageLoop 1.png → FreeAPS/Resources/Assets.xcassets/trioLoop.appiconset/imageLoop 1.png


FreeAPS/Resources/Assets.xcassets/OiAPS_Loop.appiconset/imageLoop.png → FreeAPS/Resources/Assets.xcassets/trioLoop.appiconset/imageLoop.png


FreeAPS/Resources/Assets.xcassets/oiapsWhite.appiconset/8.png → FreeAPS/Resources/Assets.xcassets/trioWhite.appiconset/8.png


FreeAPS/Resources/Assets.xcassets/oiapsWhite.appiconset/9.png → FreeAPS/Resources/Assets.xcassets/trioWhite.appiconset/9.png


FreeAPS/Resources/Assets.xcassets/oiapsWhite.appiconset/Contents.json → FreeAPS/Resources/Assets.xcassets/trioWhite.appiconset/Contents.json


FreeAPS/Resources/Assets.xcassets/oiAPSWhiteShadow.appiconset/Contents.json → FreeAPS/Resources/Assets.xcassets/trioWhiteShadow.appiconset/Contents.json


FreeAPS/Resources/Assets.xcassets/oiAPSWhiteShadow.appiconset/D 1.png → FreeAPS/Resources/Assets.xcassets/trioWhiteShadow.appiconset/D 1.png


FreeAPS/Resources/Assets.xcassets/oiAPSWhiteShadow.appiconset/D.png → FreeAPS/Resources/Assets.xcassets/trioWhiteShadow.appiconset/D.png


+ 1 - 5
FreeAPS/Resources/Info.plist

@@ -4,10 +4,6 @@
 <dict>
 	<key>AppGroupID</key>
 	<string>$(APP_GROUP_ID)</string>
-	<key>BGTaskSchedulerPermittedIdentifiers</key>
-	<array>
-		<string>com.freeapsx.background-task.critical-event-log</string>
-	</array>
 	<key>CBBundleDisplayName</key>
 	<string>$(APP_DISPLAY_NAME)</string>
 	<key>CFBundleDevelopmentRegion</key>
@@ -32,7 +28,7 @@
 			<key>CFBundleTypeRole</key>
 			<string>None</string>
 			<key>CFBundleURLName</key>
-			<string>com.artificial-pancreas-iaps</string>
+			<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
 			<key>CFBundleURLSchemes</key>
 			<array>
 				<string>$(APP_URL_SCHEME)</string>

+ 2 - 2
FreeAPS/Sources/APS/FetchGlucoseManager.swift

@@ -297,11 +297,11 @@ final class BaseFetchGlucoseManager: FetchGlucoseManager, Injectable {
     private func overcalibrate(entries: [BloodGlucose]) -> [BloodGlucose] {
         // overcalibrate
         var overcalibration: ((Int) -> (Double))?
-       
+
         if let cal = calibrationService {
             overcalibration = cal.calibrate
         }
-       
+
         if let overcalibration = overcalibration {
             return entries.map { entry in
                 var entry = entry

+ 1 - 1
FreeAPS/Sources/Application/FreeAPSApp.swift

@@ -55,7 +55,7 @@ import Swinject
     init() {
         debug(
             .default,
-            "Open-iAPS Started: v\(Bundle.main.releaseVersionNumber ?? "")(\(Bundle.main.buildVersionNumber ?? "")) [buildDate: \(Bundle.main.buildDate)] [buildExpires: \(Bundle.main.profileExpiration)]"
+            "Trio Started: v\(Bundle.main.releaseVersionNumber ?? "")(\(Bundle.main.buildVersionNumber ?? "")) [buildDate: \(Bundle.main.buildDate)] [buildExpires: \(Bundle.main.profileExpiration)]"
         )
         loadServices()
     }

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/ar.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 10 - 10
FreeAPS/Sources/Localizations/Main/ca.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 13 - 13
FreeAPS/Sources/Localizations/Main/da.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/de.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/en.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/es.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/fi.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/fr.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/he.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/hu.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 14 - 14
FreeAPS/Sources/Localizations/Main/it.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/nb.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 19 - 19
FreeAPS/Sources/Localizations/Main/nl.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/pl.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/pt-BR.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/pt-PT.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/ru.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 13 - 13
FreeAPS/Sources/Localizations/Main/sk.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 20 - 20
FreeAPS/Sources/Localizations/Main/sv.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 13 - 13
FreeAPS/Sources/Localizations/Main/tr.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/uk.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 13 - 13
FreeAPS/Sources/Localizations/Main/vi.lproj/Localizable.strings


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 12 - 12
FreeAPS/Sources/Localizations/Main/zh-Hans.lproj/Localizable.strings


+ 1 - 1
FreeAPS/Sources/Models/AlertEntry.swift

@@ -15,7 +15,7 @@ struct AlertEntry: JSON, Codable, Hashable {
     let contentBody: String?
     var errorMessage: String?
 
-    static let manual = "Open-iAPS"
+    static let manual = "Trio"
 
     static func == (lhs: AlertEntry, rhs: AlertEntry) -> Bool {
         lhs.issuedDate == rhs.issuedDate

+ 1 - 1
FreeAPS/Sources/Models/CarbsEntry.swift

@@ -12,7 +12,7 @@ struct CarbsEntry: JSON, Equatable, Hashable {
     let isFPU: Bool?
     let fpuID: String?
 
-    static let manual = "Open-iAPS"
+    static let manual = "Trio"
     static let appleHealth = "applehealth"
 
     static func == (lhs: CarbsEntry, rhs: CarbsEntry) -> Bool {

+ 6 - 6
FreeAPS/Sources/Models/Icons.swift

@@ -3,15 +3,15 @@ import Foundation
 import UIKit
 
 enum Icon_: String, CaseIterable, Identifiable {
-    case primary = "oiapsBlack"
-    case oiAPSWhiteShadow
-    case oiapsColorBG
-    case oiapsWhite
-    case oiaps3D
+    case primary = "trioBlack"
+    case trioWhiteShadow
+    case trioColorBG
+    case trioWhite
+    case trio3D
     case wilford = "diabeetus"
     case catWithPod
     case catWithPodWhite = "catWithPodWhiteBG"
-    case loop = "OiAPS_Loop"
+    case loop = "trioLoop"
     var id: String { rawValue }
 }
 

+ 1 - 1
FreeAPS/Sources/Models/NightscoutTreatment.swift

@@ -26,7 +26,7 @@ struct NightscoutTreatment: JSON, Hashable, Equatable {
     let targetTop: Decimal?
     let targetBottom: Decimal?
 
-    static let local = "Open-iAPS"
+    static let local = "Trio"
 
     static let empty = NightscoutTreatment(from: "{}")!
 

+ 1 - 1
FreeAPS/Sources/Models/TempTarget.swift

@@ -10,7 +10,7 @@ struct TempTarget: JSON, Identifiable, Equatable, Hashable {
     let enteredBy: String?
     let reason: String?
 
-    static let manual = "Open-iAPS"
+    static let manual = "Trio"
     static let custom = "Temp target"
     static let cancel = "Cancel"
 

+ 1 - 1
FreeAPS/Sources/Modules/HealthKit/View/AppleHealthKitRootView.swift

@@ -13,7 +13,7 @@ extension AppleHealthKit {
                     HStack {
                         Image(systemName: "pencil.circle.fill")
                         Text(
-                            "This allows Open-iAPS to read from and write to Apple Heath. You must also give permissions in Settings > Health > Data Access. If you enter a glucose value into Apple Health, open Open-iAPS to confirm it shows up."
+                            "This allows Trio to read from and write to Apple Heath. You must also give permissions in Settings > Health > Data Access. If you enter a glucose value into Apple Health, open Trio to confirm it shows up."
                         )
                         .font(.caption)
                     }

+ 1 - 1
FreeAPS/Sources/Modules/IconConfig/View/IconSelection.swift

@@ -9,7 +9,7 @@ struct IconSelection: View {
 
         VStack {
             HStack {
-                Text("Open-iAPS Icon")
+                Text("Trio Icon")
                     .font(.title)
                 IconImage(icon: model.appIcon)
                     .frame(maxHeight: 114)

+ 2 - 2
FreeAPS/Sources/Modules/NightscoutConfig/View/NightscoutConfigRootView.swift

@@ -104,7 +104,7 @@ extension NightscoutConfig {
                             message: Text(
                                 (fetchedErrors.first?.error ?? "").count < 4 ?
                                     NSLocalizedString(
-                                        "\nNow please verify all of your new settings thoroughly:\n\n* Basal Settings\n * Carb Ratios\n * Glucose Targets\n * Insulin Sensitivities\n * DIA\n\n in Open-iAPS Settings > Configuration.\n\nBad or invalid profile settings could have disatrous effects.",
+                                        "\nNow please verify all of your new settings thoroughly:\n\n* Basal Settings\n * Carb Ratios\n * Glucose Targets\n * Insulin Sensitivities\n * DIA\n\n in Trio Settings > Configuration.\n\nBad or invalid profile settings could have disatrous effects.",
                                         comment: "Imported Profiles Alert"
                                     ) :
                                     NSLocalizedString(fetchedErrors.first?.error ?? "", comment: "Import Error")
@@ -130,7 +130,7 @@ extension NightscoutConfig {
 
                 Section {
                     Toggle("Remote control", isOn: $state.allowAnnouncements)
-                } header: { Text("Allow Remote control of Open-iAPS") }
+                } header: { Text("Allow Remote control of Trio") }
             }
             .onAppear(perform: configureView)
             .navigationBarTitle("Nightscout Config")

+ 1 - 1
FreeAPS/Sources/Modules/NotificationsConfig/View/NotificationsConfigRootView.swift

@@ -92,7 +92,7 @@ extension NotificationsConfig {
 
             if !systemLiveActivitySetting {
                 footer =
-                    "Live activities are turned OFF in system settings. To enable live activities, go to Settings app -> Open-iAPS -> Turn live Activities ON.\n\n" +
+                    "Live activities are turned OFF in system settings. To enable live activities, go to Settings app -> Trio -> Turn live Activities ON.\n\n" +
                     footer
             }
 

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 5 - 5
FreeAPS/Sources/Modules/PreferencesEditor/PreferencesEditorStateModel.swift


+ 1 - 1
FreeAPS/Sources/Modules/PreferencesEditor/View/PreferencesEditorRootView.swift

@@ -22,7 +22,7 @@ extension PreferencesEditor {
 
         var body: some View {
             Form {
-                Section(header: Text("Open-iAPS").textCase(nil)) {
+                Section(header: Text("Trio").textCase(nil)) {
                     Picker("Glucose units", selection: $state.unitsIndex) {
                         Text("mg/dL").tag(0)
                         Text("mmol/L").tag(1)

+ 2 - 2
FreeAPS/Sources/Modules/Settings/View/SettingsRootView.swift

@@ -18,12 +18,12 @@ extension Settings {
                 header: {
                     if let expirationDate = Bundle.main.profileExpiration {
                         Text(
-                            "Open-iAPS v\(state.versionNumber) (\(state.buildNumber))\nBranch: \(state.branch) \(state.copyrightNotice)" +
+                            "Trio v\(state.versionNumber) (\(state.buildNumber))\nBranch: \(state.branch) \(state.copyrightNotice)" +
                                 "\nBuild Expires: " + expirationDate
                         ).textCase(nil)
                     } else {
                         Text(
-                            "Open-iAPS v\(state.versionNumber) (\(state.buildNumber))\nBranch: \(state.branch) \(state.copyrightNotice)"
+                            "Trio v\(state.versionNumber) (\(state.buildNumber))\nBranch: \(state.branch) \(state.copyrightNotice)"
                         )
                     }
                 }

+ 1 - 1
FreeAPS/Sources/Services/Calendar/CalendarManager.swift

@@ -93,7 +93,7 @@ final class BaseCalendarManager: CalendarManager, Injectable {
         let title = glucoseText + " " + directionText + " " + deltaText
 
         event.title = title
-        event.notes = "Open-iAPS"
+        event.notes = "Trio"
         event.startDate = Date()
         event.endDate = Date(timeIntervalSinceNow: 60 * 10)
         event.calendar = calendar

+ 5 - 5
FreeAPS/Sources/Services/HealthKit/HealthKitManager.swift

@@ -19,9 +19,9 @@ protocol HealthKitManager: GlucoseSource {
     func saveIfNeeded(carbs: [CarbsEntry])
     /// Save Insulin to Health store
     func saveIfNeeded(pumpEvents events: [PumpHistoryEvent])
-    /// Create observer for data passing beetwen Health Store and Open-iAPS
+    /// Create observer for data passing beetwen Health Store and Trio
     func createBGObserver()
-    /// Enable background delivering objects from Apple Health to Open-iAPS
+    /// Enable background delivering objects from Apple Health to Trio
     func enableBackgroundDelivery()
     /// Delete glucose with syncID
     func deleteGlucose(syncID: String)
@@ -46,7 +46,7 @@ final class BaseHealthKitManager: HealthKitManager, Injectable, CarbsObserver, P
         static let healthInsulinObject = HKObjectType.quantityType(forIdentifier: .insulinDelivery)
 
         // Meta-data key of FreeASPX data in HealthStore
-        static let freeAPSMetaKey = "From Open-iAPS"
+        static let freeAPSMetaKey = "From Trio"
     }
 
     @Injected() private var glucoseStorage: GlucoseStorage!
@@ -495,8 +495,8 @@ final class BaseHealthKitManager: HealthKitManager, Injectable, CarbsObserver, P
 
         newGlucose += samples
             .compactMap { sample -> HealthKitSample? in
-                let fromFAX = sample.metadata?[Config.freeAPSMetaKey] as? Bool ?? false
-                guard !fromFAX else { return nil }
+                let fromTrio = sample.metadata?[Config.freeAPSMetaKey] as? Bool ?? false
+                guard !fromTrio else { return nil }
                 return HealthKitSample(
                     healthKitId: sample.uuid.uuidString,
                     date: sample.startDate,

+ 2 - 2
FreeAPS/Sources/Services/Network/NightscoutAPI.swift

@@ -37,8 +37,8 @@ extension NightscoutAPI {
     func checkConnection() -> AnyPublisher<Void, Swift.Error> {
         struct Check: Codable, Equatable {
             var eventType = "Note"
-            var enteredBy = "Open-iAPS"
-            var notes = "Open-iAPS connected"
+            var enteredBy = "Trio"
+            var notes = "Trio connected"
         }
         let check = Check()
         var request = URLRequest(url: url.appendingPathComponent(Config.treatmentsPath))

+ 1 - 1
FreeAPS/Sources/Services/UserNotifiactions/UserNotificationsManager.swift

@@ -126,7 +126,7 @@ final class BaseUserNotificationsManager: NSObject, UserNotificationsManager, In
 
     private func scheduleMissingLoopNotifiactions(date _: Date) {
         ensureCanSendNotification {
-            let title = NSLocalizedString("Open-iAPS Not Active", comment: "Open-iAPS Not Active")
+            let title = NSLocalizedString("Trio Not Active", comment: "Trio Not Active")
             let body = NSLocalizedString("Last loop was more than %d min ago", comment: "Last loop was more than %d min ago")
 
             let firstInterval = 20 // min

+ 2 - 2
FreeAPS/Sources/Services/WatchManager/GarminManager.swift

@@ -63,7 +63,7 @@ final class BaseGarminManager: NSObject, GarminManager, Injectable {
 
     init(resolver: Resolver) {
         super.init()
-        connectIQ?.initialize(withUrlScheme: "Open-iAPS", uiOverrideDelegate: self)
+        connectIQ?.initialize(withUrlScheme: "Trio", uiOverrideDelegate: self)
         injectServices(resolver)
         restoreDevices()
         subscribeToOpenFromGarminConnect()
@@ -157,7 +157,7 @@ extension BaseGarminManager: IQUIOverrideDelegate {
         debug(.apsManager, NSLocalizedString("Garmin is not available", comment: ""))
         let messageCont = MessageContent(
             content: NSLocalizedString(
-                "The app Garmin Connect must be installed to use for Open-iAPS.\n Go to App Store to download it",
+                "The app Garmin Connect must be installed to use for Trio.\n Go to App Store to download it",
                 comment: ""
             ),
             type: .warning

+ 5 - 5
FreeAPS/Sources/Shortcuts/State/ListStateIntent.swift

@@ -3,26 +3,26 @@ import Foundation
 
 @available(iOS 16.0, *) struct ListStateIntent: AppIntent {
     // Title of the action in the Shortcuts app
-    static var title: LocalizedStringResource = "List last state available with Open-iAPS"
+    static var title: LocalizedStringResource = "List last state available with Trio"
 
     var stateIntent = StateIntentRequest()
 
     // Description of the action in the Shortcuts app
     static var description = IntentDescription(
-        "Allow to list the last Blood Glucose, trends, IOB and COB available in Open-iAPS"
+        "Allow to list the last Blood Glucose, trends, IOB and COB available in Trio"
     )
 
     static var parameterSummary: some ParameterSummary {
-        Summary("List all states of Open-iAPS")
+        Summary("List all states of Trio")
     }
 
-    @MainActor func perform() async throws -> some ReturnsValue<StateiAPSResults> & ShowsSnippetView {
+    @MainActor func perform() async throws -> some ReturnsValue<StateResults> & ShowsSnippetView {
         let glucoseValues = try? stateIntent.getLastBG()
         let iob_cob_value = try? stateIntent.getIOB_COB()
 
         guard let glucoseValue = glucoseValues else { throw StateIntentError.NoBG }
         guard let iob_cob = iob_cob_value else { throw StateIntentError.NoIOBCOB }
-        let BG = StateiAPSResults(
+        let BG = StateResults(
             glucose: glucoseValue.glucose,
             trend: glucoseValue.trend,
             delta: glucoseValue.delta,

+ 1 - 1
FreeAPS/Sources/Shortcuts/State/ListStateView.swift

@@ -3,7 +3,7 @@ import Foundation
 import SwiftUI
 
 struct ListStateView: View {
-    var state: StateiAPSResults
+    var state: StateResults
 
     private var numberFormatter: NumberFormatter {
         let formatter = NumberFormatter()

+ 4 - 4
FreeAPS/Sources/Shortcuts/State/StateIntentRequest.swift

@@ -7,10 +7,10 @@ enum StateIntentError: Error {
     case NoIOBCOB
 }
 
-@available(iOS 16, *) struct StateiAPSResults: AppEntity {
+@available(iOS 16, *) struct StateResults: AppEntity {
     static var defaultQuery = StateBGQuery()
 
-    static var typeDisplayRepresentation: TypeDisplayRepresentation = "Open-iAPS State Result"
+    static var typeDisplayRepresentation: TypeDisplayRepresentation = "Trio State Result"
 
     var displayRepresentation: DisplayRepresentation {
         DisplayRepresentation(title: "\(glucose)")
@@ -44,11 +44,11 @@ enum StateIntentError: Error {
 }
 
 @available(iOS 16.0, *) struct StateBGQuery: EntityQuery {
-    func entities(for _: [StateiAPSResults.ID]) async throws -> [StateiAPSResults] {
+    func entities(for _: [StateResults.ID]) async throws -> [StateResults] {
         []
     }
 
-    func suggestedEntities() async throws -> [StateiAPSResults] {
+    func suggestedEntities() async throws -> [StateResults] {
         []
     }
 }

+ 1 - 1
FreeAPSTests/FileStorageTests.swift

@@ -9,7 +9,7 @@ class FileStorageTests: XCTestCase {
         let value: Decimal
     }
 
-    func testFileStorageOiAPS() {
+    func testFileStorageTrio() {
         let dummyObject = DummyObject(id: "21342Z", value: 78.2)
         fileStorage.save(dummyObject, as: "dummyObject")
         let dummyObjectRetrieve = fileStorage.retrieve("dummyObject", as: DummyObject.self)

+ 4 - 4
FreeAPSWatch WatchKit Extension/ComplicationController.swift

@@ -8,7 +8,7 @@ class ComplicationController: NSObject, CLKComplicationDataSource {
         let descriptors = [
             CLKComplicationDescriptor(
                 identifier: "complication",
-                displayName: "Open-iAPS",
+                displayName: "Trio",
                 supportedFamilies: [
                     .graphicCorner,
                     .graphicCircular,
@@ -52,14 +52,14 @@ class ComplicationController: NSObject, CLKComplicationDataSource {
                 return
             }
             let template = CLKComplicationTemplateGraphicCornerTextImage(
-                textProvider: CLKTextProvider(format: "%@", "Open-iAPS"),
+                textProvider: CLKTextProvider(format: "%@", "Trio"),
                 imageProvider: CLKFullColorImageProvider(fullColorImage: image)
             )
             let timelineEntry = CLKComplicationTimelineEntry(date: Date(), complicationTemplate: template)
             handler(timelineEntry)
         case .modularSmall:
             let template = CLKComplicationTemplateModularSmallRingText(
-                textProvider: CLKTextProvider(format: "%@", "Open-iAPS"),
+                textProvider: CLKTextProvider(format: "%@", "Trio"),
                 fillFraction: 1,
                 ringStyle: .closed
             )
@@ -78,7 +78,7 @@ class ComplicationController: NSObject, CLKComplicationDataSource {
             handler(timelineEntry)
         case .circularSmall:
             let template =
-                CLKComplicationTemplateCircularSmallSimpleText(textProvider: CLKTextProvider(format: "%@", "Open-iAPS"))
+                CLKComplicationTemplateCircularSmallSimpleText(textProvider: CLKTextProvider(format: "%@", "Trio"))
             let timelineEntry = CLKComplicationTimelineEntry(date: Date(), complicationTemplate: template)
             handler(timelineEntry)
         default:

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 50 - 52
README.md


Open-iAPS.xcworkspace/contents.xcworkspacedata → Trio.xcworkspace/contents.xcworkspacedata


Open-iAPS.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist → Trio.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist


Open-iAPS.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings → Trio.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings


Open-iAPS.xcworkspace/xcshareddata/swiftpm/Package.resolved → Trio.xcworkspace/xcshareddata/swiftpm/Package.resolved


+ 5 - 5
fastlane/Fastfile

@@ -51,8 +51,8 @@ ENV["BUNDLE_ID"] = xcconfig["BUNDLE_IDENTIFIER"]
 
 # limit lane names to letters and underscores
 platform :ios do
-  desc "Build Open-iAPS"
-  lane :build_open_iaps do
+  desc "Build Trio"
+  lane :build_trio do
     setup_ci if ENV['CI']
     BUNDLE_ID = ENV["BUNDLE_ID"]
 
@@ -135,8 +135,8 @@ platform :ios do
 
     gym(
       export_method: "app-store",
-      scheme: "Open-iAPS",
-      output_name: "Open-iAPS.ipa",
+      scheme: "Trio",
+      output_name: "Trio.ipa",
       configuration: "Release",
       destination: 'generic/platform=iOS',
       buildlog_path: 'buildlog'
@@ -159,7 +159,7 @@ platform :ios do
     upload_to_testflight(
       api_key: api_key,
       skip_submission: false,
-      ipa: "Open-iAPS.ipa",
+      ipa: "Trio.ipa",
       skip_waiting_for_build_processing: true,
       changelog: git_branch+" "+last_git_commit[:abbreviated_commit_hash],
     )

+ 23 - 23
fastlane/testflight.md

@@ -1,18 +1,18 @@
 # Using Github Actions + FastLane to deploy to TestFlight: the "Browser Build" method
 
-These instructions allow you to build Open-iAPS without having access to a Mac.
+These instructions allow you to build Trio without having access to a Mac.
 
-* You can install Open-iAPS on phones via TestFlight that are not connected to your computer
+* You can install Trio on phones via TestFlight that are not connected to your computer
 * You can send builds and updates to those you care for
-* You can install Open-iAPS on your phone using only the TestFlight app if a phone was lost or the app is accidentally deleted
+* You can install Trio on your phone using only the TestFlight app if a phone was lost or the app is accidentally deleted
 * You do not need to worry about specific Xcode/Mac versions for a given iOS
 
 ## **Automatic Builds**
 > 
-> The browser build defaults to automatically updating and building a new version of Open-iAPS according to this schedule:
+> The browser build defaults to automatically updating and building a new version of Trio according to this schedule:
 > - automatically checks for updates weekly on Wednesdays and if updates are found, it will build a new version of the app
 > - automatically builds once a month regardless of whether there are updates on the first of the month
-> - with each scheduled run (weekly or monthly), a successful Build Open-iAPS log appears - if the time is very short, it did not need to build - only the long actions (>10 minutes) built a new Open-iAPS app
+> - with each scheduled run (weekly or monthly), a successful Build Trio log appears - if the time is very short, it did not need to build - only the long actions (>10 minutes) built a new Trio app
 > 
 > It also creates an alive branch, if you don't already have one. See [Why do I have an alive branch?](#why-do-i-have-an-alive-branch).
 >
@@ -29,7 +29,7 @@ There are more detailed instructions in LoopDocs for doing Browser Builds of Loo
 
 ## Prerequisites
 
-* A [github account](https://github.com/signup). The free level comes with plenty of storage and free compute time to build Open-iAPS, multiple times a day, if you wanted to.
+* A [github account](https://github.com/signup). The free level comes with plenty of storage and free compute time to build Trio, multiple times a day, if you wanted to.
 * A paid [Apple Developer account](https://developer.apple.com).
 * Some time. Set aside a couple of hours to perform the setup. 
 * Use the same GitHub account for all "Browser Builds" of the various DIY apps.
@@ -81,9 +81,9 @@ The creation of the Match-Secrets repository is a common step for all GitHub Bro
 
 Once created, you will not take any direct actions with this repository; it needs to be there for the GitHub to use as you progress through the steps.
 
-## Setup Github Open-iAPS repository
-1. Fork https://github.com/nightscout/Open-iAPS into your account. If you already have a fork of Open-iAPS in GitHub, you can't make another one. You can continue to work with your existing fork, or delete that from GitHub and then and fork https://github.com/nightscout/Open-iAPS.
-1. In the forked Open-iAPS repo, go to Settings -> Secrets and variables -> Actions.
+## Setup Github Trio repository
+1. Fork https://github.com/nightscout/Trio into your account. If you already have a fork of Trio in GitHub, you can't make another one. You can continue to work with your existing fork, or delete that from GitHub and then and fork https://github.com/nightscout/Trio.
+1. In the forked Trio repo, go to Settings -> Secrets and variables -> Actions.
 1. For each of the following secrets, tap on "New repository secret", then add the name of the secret, along with the value you recorded for it:
     * `TEAMID`
     * `FASTLANE_ISSUER_ID`
@@ -96,23 +96,23 @@ Once created, you will not take any direct actions with this repository; it need
 
 This step validates most of your six Secrets and provides error messages if it detects an issue with one or more.
 
-1. Click on the "Actions" tab of your Open-iAPS repository and enable workflows if needed
+1. Click on the "Actions" tab of your Trio repository and enable workflows if needed
 1. On the left side, select "1. Validate Secrets".
 1. On the right side, click "Run Workflow", and tap the green `Run workflow` button.
 1. Wait, and within a minute or two you should see a green checkmark indicating the workflow succeeded.
 1. The workflow will check if the required secrets are added and that they are correctly formatted. If errors are detected, please check the run log for details.
 
-## Add Identifiers for Open-iAPS App
+## Add Identifiers for Trio App
 
-1. Click on the "Actions" tab of your Open-iAPS repository.
+1. Click on the "Actions" tab of your Trio repository.
 1. On the left side, select "2. Add Identifiers".
 1. On the right side, click "Run Workflow", and tap the green `Run workflow` button.
 1. Wait, and within a minute or two you should see a green checkmark indicating the workflow succeeded.
 
 ## Create App Group
 
-If you have already built Open-iAPS via Xcode using this Apple ID, you can skip on to [Create Open-iAPS App in App Store Connect](#create-FreeAPS-X-app-in-app-store-connect).
-_Please note that in default builds of Open-iAPS, the app group is actually identical to the one used with Loop, so please enter these details exactly as described below. This is to ease the setup of apps such as Xdrip4iOS. It may require some caution if transfering between Open-iAPS and Loop._
+If you have already built Trio via Xcode using this Apple ID, you can skip on to [Create Trio App in App Store Connect](#create-trio-app-in-app-store-connect).
+_Please note that in default builds of Trio, the app group is actually identical to the one used with Loop, so please enter these details exactly as described below. This is to ease the setup of apps such as Xdrip4iOS. It may require some caution if transfering between Trio and Loop._
 
 1. Go to [Register an App Group](https://developer.apple.com/account/resources/identifiers/applicationGroup/add/) on the apple developer site.
 1. For Description, use "Loop App Group".
@@ -134,16 +134,16 @@ _Please note that in default builds of Open-iAPS, the app group is actually iden
 1. Click "Confirm".
 1. Remember to do this for each of the identifiers above.
 
-## Create Open-iAPS App in App Store Connect
+## Create Trio App in App Store Connect
 
-If you have created a Open-iAPS app in App Store Connect before, you can skip this section as well.
+If you have created a Trio app in App Store Connect before, you can skip this section as well.
 
 1. Go to the [apps list](https://appstoreconnect.apple.com/apps) on App Store Connect and click the blue "plus" icon to create a New App.
     * Select "iOS".
     * Select a name: this will have to be unique, so you may have to try a few different names here, but it will not be the name you see on your phone, so it's not that important.
     * Select your primary language.
     * Choose the bundle ID that matches the `BUNDLE_IDENTIFIER` in your `Config.xcconfig` file
-       * this is typically `org.nightscout.TEAMID.openiaps` with `TEAMID` matching your team id
+       * this is typically `org.nightscout.TEAMID.trio` with `TEAMID` matching your team id
     * SKU can be anything; e.g. "123".
     * Select "Full Access".
 1. Click Create
@@ -152,19 +152,19 @@ You do not need to fill out the next form. That is for submitting to the app sto
 
 ## Create Building Certficates
 
-1. Go back to the "Actions" tab of your Open-iAPS repository in github.
+1. Go back to the "Actions" tab of your Trio repository in github.
 1. Select "3. Create Certificates".
 1. Click "Run Workflow", and tap the green button.
 1. Wait, and within a minute or two you should see a green checkmark indicating the workflow succeeded.
 
-## Build Open-iAPS!
+## Build Trio!
 
-1. Click on the "Actions" tab of your Open-iAPS repository.
-1. On the left side, select "4. Build Open-iAPS".
+1. Click on the "Actions" tab of your Trio repository.
+1. On the left side, select "4. Build Trio".
 1. Click "Run Workflow", select your branch, and tap the green button.
 1. You have some time now. Go enjoy a coffee. The build should take about 15 minutes.
 1. Your app should eventually appear on [App Store Connect](https://appstoreconnect.apple.com/apps).
-1. For each phone/person you would like to support Open-iAPS on:
+1. For each phone/person you would like to support Trio on:
     * Add them in [Users and Access](https://appstoreconnect.apple.com/access/users) on App Store Connect.
     * Add them to your TestFlight Internal Testing group.
 
@@ -178,6 +178,6 @@ For more details, please refer to [LoopDocs: Set Up Users](https://loopkit.githu
 
 If a GitHub repository has no activity (no commits are made) in 60 days, then GitHub disables the ability to use automated actions for that repository. We need to take action more frequently than that or the automated build process won't work.
 
-The updated `build_Open-iAPS.yml` file uses a special branch called `alive` and adds a dummy commit to the `alive` branch at regular intervals. This "trick" keeps the Actions enabled so the automated build works.
+The `build_trio.yml` file uses a special branch called `alive` and adds a dummy commit to the `alive` branch at regular intervals. This "trick" keeps the Actions enabled so the automated build works.
 
 The branch `alive` is created automatically for you. Do not delete or rename it! Do not modify `alive` yourself; it is not used for building the app.

open-iaps-oref/lib/autotune-prep/categorize.js → trio-ref/lib/autotune-prep/categorize.js


open-iaps-oref/lib/autotune-prep/dosed.js → trio-ref/lib/autotune-prep/dosed.js


open-iaps-oref/lib/autotune-prep/index.js → trio-ref/lib/autotune-prep/index.js


open-iaps-oref/lib/autotune/index.js → trio-ref/lib/autotune/index.js


open-iaps-oref/lib/basal-set-temp.js → trio-ref/lib/basal-set-temp.js


open-iaps-oref/lib/bolus.js → trio-ref/lib/bolus.js


open-iaps-oref/lib/calc-glucose-stats.js → trio-ref/lib/calc-glucose-stats.js


open-iaps-oref/lib/determine-basal/autosens.js → trio-ref/lib/determine-basal/autosens.js


open-iaps-oref/lib/determine-basal/cob.js → trio-ref/lib/determine-basal/cob.js


open-iaps-oref/lib/determine-basal/determine-basal.js → trio-ref/lib/determine-basal/determine-basal.js


open-iaps-oref/lib/glucose-get-last.js → trio-ref/lib/glucose-get-last.js


open-iaps-oref/lib/glucose-stats.js → trio-ref/lib/glucose-stats.js


open-iaps-oref/lib/iob/calculate.js → trio-ref/lib/iob/calculate.js


open-iaps-oref/lib/iob/history.js → trio-ref/lib/iob/history.js


open-iaps-oref/lib/iob/index.js → trio-ref/lib/iob/index.js


open-iaps-oref/lib/iob/total.js → trio-ref/lib/iob/total.js


open-iaps-oref/lib/meal/history.js → trio-ref/lib/meal/history.js


open-iaps-oref/lib/meal/index.js → trio-ref/lib/meal/index.js


open-iaps-oref/lib/meal/total.js → trio-ref/lib/meal/total.js


open-iaps-oref/lib/medtronic-clock.js → trio-ref/lib/medtronic-clock.js


+ 0 - 0
open-iaps-oref/lib/oref0-setup/alias.json


برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است