Ivan Valkou 5 лет назад
Родитель
Сommit
029c4069e5

+ 2 - 1
FreeAPS/ContentView.swift

@@ -12,7 +12,8 @@ struct ContentView: View {
         Text("Hello, world!")
             .padding()
             .onAppear {
-                OpenAPS().determineBasal()
+                OpenAPS().meal()
+//                OpenAPS().determineBasal()
             }
     }
 }

+ 27 - 2
FreeAPS/OpenAPS/OpenAPS.swift

@@ -11,6 +11,33 @@ import JavaScriptCore
 final class OpenAPS {
     private let vmQueue = DispatchQueue(label: "DispatchQueue.JSVirtualMachine")
 
+//    func iob() {
+//
+//    }
+//
+    func meal() {
+        let jsWorker = JavaScriptWorker()
+
+        let pumphistory = loadJSON(name: "pumphistory")
+        let profile = loadJSON(name: "profile")
+        let clock = loadJSON(name: "clock")
+        let glucose = loadJSON(name: "glucose")
+        let basalProfile = loadJSON(name: "basal_profile")
+        let carbhistory = loadJSON(name: "carbhistory")
+
+
+        jsWorker.evaluate(script: Script(name:"lib-meal-index-bundle"))
+        let result = jsWorker.call(function: "MEAL_JS_GENERATE", with: [
+            pumphistory,
+            profile,
+            clock,
+            glucose,
+            basalProfile,
+            carbhistory
+        ])
+        print(result)
+    }
+
     func determineBasal() {
         let jsWorker = JavaScriptWorker()
 
@@ -52,8 +79,6 @@ final class OpenAPS {
         )
         print(jsWorker.log)
         print(result)
-
-        
     }
 
     private func loadJSON(name: String) -> String {

Разница между файлами не показана из-за своего большого размера
+ 2 - 0
javascript/iob.js


Разница между файлами не показана из-за своего большого размера
+ 61205 - 0
javascript/lib-meal-index-bundle.js


Разница между файлами не показана из-за своего большого размера
+ 2 - 0
javascript/meal.js


+ 3 - 1
javascript/prepare.js

@@ -3,7 +3,9 @@
 //};
 
 var exports = {};
-var module = {};
+var module = {
+    exports: {}
+};
 var freeaps = {
     log: ""
 };

Разница между файлами не показана из-за своего большого размера
+ 1 - 0
json/entries.json