@hedia/types 1.1.2 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/index.d.ts +1 -2
  2. package/dist/index.js +1 -2
  3. package/dist/index.js.map +1 -1
  4. package/dist/types/activity/activity.d.ts +31 -0
  5. package/dist/types/activity/activity.js +23 -0
  6. package/dist/types/activity/activity.js.map +1 -0
  7. package/dist/types/boluscalculator/boluscalculator.d.ts +40 -0
  8. package/dist/types/boluscalculator/boluscalculator.js +21 -0
  9. package/dist/types/boluscalculator/boluscalculator.js.map +1 -0
  10. package/dist/types/enums.d.ts +13 -46
  11. package/dist/types/enums.js +20 -54
  12. package/dist/types/enums.js.map +1 -1
  13. package/dist/types/index.d.ts +4 -0
  14. package/dist/types/index.js +17 -0
  15. package/dist/types/index.js.map +1 -0
  16. package/dist/types/userdetails/userdetails.d.ts +13 -0
  17. package/dist/types/{types.js → userdetails/userdetails.js} +1 -1
  18. package/dist/types/userdetails/userdetails.js.map +1 -0
  19. package/dist/types/usersettings/usersettings.d.ts +99 -0
  20. package/dist/types/usersettings/usersettings.js +50 -0
  21. package/dist/types/usersettings/usersettings.js.map +1 -0
  22. package/index.ts +1 -2
  23. package/package.json +7 -2
  24. package/tsconfig.json +3 -2
  25. package/types/activity/activity.ts +39 -0
  26. package/types/boluscalculator/boluscalculator.ts +45 -0
  27. package/types/enums.ts +16 -52
  28. package/types/index.ts +4 -0
  29. package/types/userdetails/userdetails.ts +14 -0
  30. package/types/usersettings/usersettings.ts +112 -0
  31. package/dist/types/measurements.d.ts +0 -8
  32. package/dist/types/measurements.js +0 -19
  33. package/dist/types/measurements.js.map +0 -1
  34. package/dist/types/types.d.ts +0 -79
  35. package/dist/types/types.js.map +0 -1
  36. package/types/measurements.ts +0 -12
  37. package/types/types.ts +0 -103
package/dist/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- export * from "./types/measurements";
2
1
  export * from "./types/enums";
3
- export * from "./types/types";
2
+ export * from "./types";
package/dist/index.js CHANGED
@@ -10,7 +10,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./types/measurements"), exports);
14
13
  __exportStar(require("./types/enums"), exports);
15
- __exportStar(require("./types/types"), exports);
14
+ __exportStar(require("./types"), exports);
16
15
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAqC;AACrC,gDAA8B;AAC9B,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA8B;AAC9B,0CAAwB"}
@@ -0,0 +1,31 @@
1
+ export declare namespace Activity {
2
+ namespace Types {
3
+ type ActivityIntensityKeys = keyof typeof Enums.ActivityIntensity;
4
+ type ActivityReductionKeys = keyof typeof Enums.ActivityReductionIntervals;
5
+ type ActivityReductionSettings = {
6
+ [key in ActivityIntensityKeys]: ActivityReductionSettingsIntervals<key, "hard", "fromFortysix">;
7
+ };
8
+ export type ActivitySettings = ActivityReductionSettings & {
9
+ target: number;
10
+ };
11
+ type ActivityReductionSettingsIntervals<K extends ActivityIntensityKeys, T extends ActivityIntensityKeys, U extends ActivityReductionKeys> = {
12
+ [key in ActivityReductionKeys]: K extends T ? (key extends U ? null | number : number) : number;
13
+ };
14
+ type ActivitySettingsOmitTarget = Omit<ActivitySettings, "target">;
15
+ export type ActivityReductionIntervals = ActivitySettingsOmitTarget[keyof ActivitySettingsOmitTarget];
16
+ export {};
17
+ }
18
+ namespace Enums {
19
+ enum ActivityReductionIntervals {
20
+ fromZero = "fromZero",
21
+ fromThirty = "fromThirty",
22
+ fromFortysix = "fromFortysix"
23
+ }
24
+ enum ActivityIntensity {
25
+ light = "light",
26
+ moderate = "moderate",
27
+ hard = "hard",
28
+ post = "post"
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Activity = void 0;
4
+ var Activity;
5
+ (function (Activity) {
6
+ let Enums;
7
+ (function (Enums) {
8
+ let ActivityReductionIntervals;
9
+ (function (ActivityReductionIntervals) {
10
+ ActivityReductionIntervals["fromZero"] = "fromZero";
11
+ ActivityReductionIntervals["fromThirty"] = "fromThirty";
12
+ ActivityReductionIntervals["fromFortysix"] = "fromFortysix";
13
+ })(ActivityReductionIntervals = Enums.ActivityReductionIntervals || (Enums.ActivityReductionIntervals = {}));
14
+ let ActivityIntensity;
15
+ (function (ActivityIntensity) {
16
+ ActivityIntensity["light"] = "light";
17
+ ActivityIntensity["moderate"] = "moderate";
18
+ ActivityIntensity["hard"] = "hard";
19
+ ActivityIntensity["post"] = "post";
20
+ })(ActivityIntensity = Enums.ActivityIntensity || (Enums.ActivityIntensity = {}));
21
+ })(Enums = Activity.Enums || (Activity.Enums = {}));
22
+ })(Activity = exports.Activity || (exports.Activity = {}));
23
+ //# sourceMappingURL=activity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../../types/activity/activity.ts"],"names":[],"mappings":";;;AAAA,IAAiB,QAAQ,CAsCxB;AAtCD,WAAiB,QAAQ;IAwBxB,IAAiB,KAAK,CAarB;IAbD,WAAiB,KAAK;QACrB,IAAY,0BAIX;QAJD,WAAY,0BAA0B;YACrC,mDAAqB,CAAA;YACrB,uDAAyB,CAAA;YACzB,2DAA6B,CAAA;QAC9B,CAAC,EAJW,0BAA0B,GAA1B,gCAA0B,KAA1B,gCAA0B,QAIrC;QAED,IAAY,iBAKX;QALD,WAAY,iBAAiB;YAC5B,oCAAe,CAAA;YACf,0CAAqB,CAAA;YACrB,kCAAa,CAAA;YACb,kCAAa,CAAA;QACd,CAAC,EALW,iBAAiB,GAAjB,uBAAiB,KAAjB,uBAAiB,QAK5B;IACF,CAAC,EAbgB,KAAK,GAAL,cAAK,KAAL,cAAK,QAarB;AACF,CAAC,EAtCgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAsCxB"}
@@ -0,0 +1,40 @@
1
+ import { Activity } from "../activity/activity";
2
+ export declare namespace BolusCalculator {
3
+ namespace Constants {
4
+ const SAFETY_INSULIN_LIMIT = 50;
5
+ const SAFETY_ACTIVITY_LIMIT = 60;
6
+ }
7
+ namespace Types {
8
+ interface IRecentBolus {
9
+ secondsPassed: number;
10
+ insulinDose: number;
11
+ }
12
+ enum ActivityErrors {
13
+ OutOfRange = "Out of range",
14
+ InvalidInterval = "Invalid activity settings interval",
15
+ InvalidReduction = "Invalid activity Reduction"
16
+ }
17
+ interface IActivityParams {
18
+ activityDuration: number;
19
+ activityIntensity: Activity.Enums.ActivityIntensity;
20
+ activitySettings: Activity.Types.ActivitySettings;
21
+ activityDate: Date;
22
+ }
23
+ interface IRecommendationParams {
24
+ currentBGL: number;
25
+ targetBGL: number;
26
+ insulinSensitivity: number;
27
+ carbohydrates: number;
28
+ carbohydrateRatio: number;
29
+ recentBoluses: Array<IRecentBolus>;
30
+ activity: IActivityParams | null;
31
+ }
32
+ interface IRecommendationResult {
33
+ bolus: number;
34
+ wasLimited: boolean;
35
+ carbRecommendation: number;
36
+ activityReduction: number | null;
37
+ activeInsulin: number;
38
+ }
39
+ }
40
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BolusCalculator = void 0;
4
+ var BolusCalculator;
5
+ (function (BolusCalculator) {
6
+ let Constants;
7
+ (function (Constants) {
8
+ Constants.SAFETY_INSULIN_LIMIT = 50;
9
+ Constants.SAFETY_ACTIVITY_LIMIT = 60;
10
+ })(Constants = BolusCalculator.Constants || (BolusCalculator.Constants = {}));
11
+ let Types;
12
+ (function (Types) {
13
+ let ActivityErrors;
14
+ (function (ActivityErrors) {
15
+ ActivityErrors["OutOfRange"] = "Out of range";
16
+ ActivityErrors["InvalidInterval"] = "Invalid activity settings interval";
17
+ ActivityErrors["InvalidReduction"] = "Invalid activity Reduction";
18
+ })(ActivityErrors = Types.ActivityErrors || (Types.ActivityErrors = {}));
19
+ })(Types = BolusCalculator.Types || (BolusCalculator.Types = {}));
20
+ })(BolusCalculator = exports.BolusCalculator || (exports.BolusCalculator = {}));
21
+ //# sourceMappingURL=boluscalculator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boluscalculator.js","sourceRoot":"","sources":["../../../types/boluscalculator/boluscalculator.ts"],"names":[],"mappings":";;;AAEA,IAAiB,eAAe,CA0C/B;AA1CD,WAAiB,eAAe;IAC/B,IAAiB,SAAS,CAGzB;IAHD,WAAiB,SAAS;QACZ,8BAAoB,GAAG,EAAE,CAAC;QAC1B,+BAAqB,GAAG,EAAE,CAAC;IACzC,CAAC,EAHgB,SAAS,GAAT,yBAAS,KAAT,yBAAS,QAGzB;IAED,IAAiB,KAAK,CAmCrB;IAnCD,WAAiB,KAAK;QAMrB,IAAY,cAIX;QAJD,WAAY,cAAc;YACzB,6CAA2B,CAAA;YAC3B,wEAAsD,CAAA;YACtD,iEAA+C,CAAA;QAChD,CAAC,EAJW,cAAc,GAAd,oBAAc,KAAd,oBAAc,QAIzB;IAyBF,CAAC,EAnCgB,KAAK,GAAL,qBAAK,KAAL,qBAAK,QAmCrB;AACF,CAAC,EA1CgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QA0C/B"}
@@ -1,29 +1,18 @@
1
- export declare enum Languages {
2
- da = "Dansk",
3
- en = "English"
4
- }
5
- export declare enum Usage {
6
- Overall = "overall",
7
- Intervals = "intervals"
1
+ export declare enum BloodGlucoseUnit {
2
+ MMOL_L = "mmol/l",
3
+ MG_DL = "mg/dl"
8
4
  }
9
- export declare enum FastActingInsulin {
10
- Novorapid = "Novorapid",
11
- Fiasp = "Fiasp",
12
- Humalog = "Humalog",
13
- Apidra = "Apidra",
14
- Other = "Other",
15
- None = "None"
5
+ export declare enum BloodKetonesUnit {
6
+ MMOL_L = "mmol/l",
7
+ MG_DL = "mg/dl"
16
8
  }
17
- export declare enum ActivityReductionIntervals {
18
- fromZero = "fromZero",
19
- fromThirty = "fromThirty",
20
- fromFortysix = "fromFortysix"
21
- }
22
- export declare enum ActivityReduction {
23
- light = "light",
24
- moderate = "moderate",
25
- hard = "hard",
26
- post = "post"
9
+ export declare enum Languages {
10
+ da = "Dansk",
11
+ en = "English",
12
+ de = "Deutsch",
13
+ es = "Espa\u00F1ol",
14
+ fr = "Fran\u00E7ais",
15
+ it = "Italiano"
27
16
  }
28
17
  export declare enum Milliseconds {
29
18
  Second = 1000,
@@ -31,28 +20,6 @@ export declare enum Milliseconds {
31
20
  Hour = 3600000,
32
21
  Day = 86400000
33
22
  }
34
- export declare enum LongActingInsulin {
35
- Lantus = "Lantus",
36
- Basaglar = "Basaglar",
37
- Tuojeo = "Tuojeo",
38
- Levemir = "Levemir",
39
- Tresiba = "Tresiba",
40
- Other = "Other",
41
- None = "None"
42
- }
43
- export declare enum DiabetesType {
44
- Type1 = 1,
45
- Type2 = 2
46
- }
47
- export declare enum Gender {
48
- Male = "Male",
49
- Female = "Female"
50
- }
51
- export declare enum InjectionMethod {
52
- PenHalf = "Pen-half",
53
- PenWhole = "Pen-whole",
54
- Pump = "Pump"
55
- }
56
23
  export declare enum MoodEnum {
57
24
  Sad = 1,
58
25
  SemiSad = 2,
@@ -1,38 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HTTPRequestMethod = exports.StatusCode = exports.KetoneColours = exports.KetoneLevels = exports.MoodEnum = exports.InjectionMethod = exports.Gender = exports.DiabetesType = exports.LongActingInsulin = exports.Milliseconds = exports.ActivityReduction = exports.ActivityReductionIntervals = exports.FastActingInsulin = exports.Usage = exports.Languages = void 0;
3
+ exports.HTTPRequestMethod = exports.StatusCode = exports.KetoneColours = exports.KetoneLevels = exports.MoodEnum = exports.Milliseconds = exports.Languages = exports.BloodKetonesUnit = exports.BloodGlucoseUnit = void 0;
4
+ var Units;
5
+ (function (Units) {
6
+ Units["MMOL_L"] = "mmol/l";
7
+ Units["MG_DL"] = "mg/dl";
8
+ })(Units || (Units = {}));
9
+ var BloodGlucoseUnit;
10
+ (function (BloodGlucoseUnit) {
11
+ BloodGlucoseUnit["MMOL_L"] = "mmol/l";
12
+ BloodGlucoseUnit["MG_DL"] = "mg/dl";
13
+ })(BloodGlucoseUnit = exports.BloodGlucoseUnit || (exports.BloodGlucoseUnit = {}));
14
+ var BloodKetonesUnit;
15
+ (function (BloodKetonesUnit) {
16
+ BloodKetonesUnit["MMOL_L"] = "mmol/l";
17
+ BloodKetonesUnit["MG_DL"] = "mg/dl";
18
+ })(BloodKetonesUnit = exports.BloodKetonesUnit || (exports.BloodKetonesUnit = {}));
4
19
  var Languages;
5
20
  (function (Languages) {
6
21
  Languages["da"] = "Dansk";
7
22
  Languages["en"] = "English";
23
+ Languages["de"] = "Deutsch";
24
+ Languages["es"] = "Espa\u00F1ol";
25
+ Languages["fr"] = "Fran\u00E7ais";
26
+ Languages["it"] = "Italiano";
8
27
  })(Languages = exports.Languages || (exports.Languages = {}));
9
- var Usage;
10
- (function (Usage) {
11
- Usage["Overall"] = "overall";
12
- Usage["Intervals"] = "intervals";
13
- })(Usage = exports.Usage || (exports.Usage = {}));
14
- var FastActingInsulin;
15
- (function (FastActingInsulin) {
16
- FastActingInsulin["Novorapid"] = "Novorapid";
17
- FastActingInsulin["Fiasp"] = "Fiasp";
18
- FastActingInsulin["Humalog"] = "Humalog";
19
- FastActingInsulin["Apidra"] = "Apidra";
20
- FastActingInsulin["Other"] = "Other";
21
- FastActingInsulin["None"] = "None";
22
- })(FastActingInsulin = exports.FastActingInsulin || (exports.FastActingInsulin = {}));
23
- var ActivityReductionIntervals;
24
- (function (ActivityReductionIntervals) {
25
- ActivityReductionIntervals["fromZero"] = "fromZero";
26
- ActivityReductionIntervals["fromThirty"] = "fromThirty";
27
- ActivityReductionIntervals["fromFortysix"] = "fromFortysix";
28
- })(ActivityReductionIntervals = exports.ActivityReductionIntervals || (exports.ActivityReductionIntervals = {}));
29
- var ActivityReduction;
30
- (function (ActivityReduction) {
31
- ActivityReduction["light"] = "light";
32
- ActivityReduction["moderate"] = "moderate";
33
- ActivityReduction["hard"] = "hard";
34
- ActivityReduction["post"] = "post";
35
- })(ActivityReduction = exports.ActivityReduction || (exports.ActivityReduction = {}));
36
28
  var Milliseconds;
37
29
  (function (Milliseconds) {
38
30
  Milliseconds[Milliseconds["Second"] = 1000] = "Second";
@@ -40,32 +32,6 @@ var Milliseconds;
40
32
  Milliseconds[Milliseconds["Hour"] = 3600000] = "Hour";
41
33
  Milliseconds[Milliseconds["Day"] = 86400000] = "Day";
42
34
  })(Milliseconds = exports.Milliseconds || (exports.Milliseconds = {}));
43
- var LongActingInsulin;
44
- (function (LongActingInsulin) {
45
- LongActingInsulin["Lantus"] = "Lantus";
46
- LongActingInsulin["Basaglar"] = "Basaglar";
47
- LongActingInsulin["Tuojeo"] = "Tuojeo";
48
- LongActingInsulin["Levemir"] = "Levemir";
49
- LongActingInsulin["Tresiba"] = "Tresiba";
50
- LongActingInsulin["Other"] = "Other";
51
- LongActingInsulin["None"] = "None";
52
- })(LongActingInsulin = exports.LongActingInsulin || (exports.LongActingInsulin = {}));
53
- var DiabetesType;
54
- (function (DiabetesType) {
55
- DiabetesType[DiabetesType["Type1"] = 1] = "Type1";
56
- DiabetesType[DiabetesType["Type2"] = 2] = "Type2";
57
- })(DiabetesType = exports.DiabetesType || (exports.DiabetesType = {}));
58
- var Gender;
59
- (function (Gender) {
60
- Gender["Male"] = "Male";
61
- Gender["Female"] = "Female";
62
- })(Gender = exports.Gender || (exports.Gender = {}));
63
- var InjectionMethod;
64
- (function (InjectionMethod) {
65
- InjectionMethod["PenHalf"] = "Pen-half";
66
- InjectionMethod["PenWhole"] = "Pen-whole";
67
- InjectionMethod["Pump"] = "Pump";
68
- })(InjectionMethod = exports.InjectionMethod || (exports.InjectionMethod = {}));
69
35
  var MoodEnum;
70
36
  (function (MoodEnum) {
71
37
  MoodEnum[MoodEnum["Sad"] = 1] = "Sad";
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../types/enums.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../types/enums.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from "./activity/activity";
2
+ export * from "./usersettings/usersettings";
3
+ export * from "./userdetails/userdetails";
4
+ export * from "./boluscalculator/boluscalculator";
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./activity/activity"), exports);
14
+ __exportStar(require("./usersettings/usersettings"), exports);
15
+ __exportStar(require("./userdetails/userdetails"), exports);
16
+ __exportStar(require("./boluscalculator/boluscalculator"), exports);
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAoC;AACpC,8DAA4C;AAC5C,4DAA0C;AAC1C,oEAAkD"}
@@ -0,0 +1,13 @@
1
+ import { Languages } from "../enums";
2
+ export declare namespace UserDetails {
3
+ namespace Types {
4
+ interface IUserDetails {
5
+ name?: string;
6
+ email: string;
7
+ research_consent?: Date | boolean;
8
+ newsletter_consent?: Date | boolean;
9
+ country?: string;
10
+ language?: keyof typeof Languages;
11
+ }
12
+ }
13
+ }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
3
+ //# sourceMappingURL=userdetails.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userdetails.js","sourceRoot":"","sources":["../../../types/userdetails/userdetails.ts"],"names":[],"mappings":""}
@@ -0,0 +1,99 @@
1
+ import { Activity } from "../activity/activity";
2
+ import { BloodGlucoseUnit, BloodKetonesUnit } from "../enums";
3
+ export declare namespace UserSettings {
4
+ namespace Types {
5
+ interface IUserSettings {
6
+ [key: string]: unknown;
7
+ diabetesType?: Enums.DiabetesType;
8
+ insulinDependent?: boolean;
9
+ gender?: Enums.Gender;
10
+ height?: number;
11
+ email?: string;
12
+ weight?: number;
13
+ birthday?: string;
14
+ treatmentType?: Enums.InjectionMethod;
15
+ bloodGlucoseUnits?: BloodGlucoseUnit;
16
+ bloodKetonesUnit?: BloodKetonesUnit;
17
+ parameters?: IParameters;
18
+ glucoseLevelTargets?: IBGLTargets;
19
+ fastActingInsulin?: string | null;
20
+ longActingInsulin?: string | null;
21
+ uuidOld?: string;
22
+ uuid?: string;
23
+ created?: string;
24
+ activity?: Activity.Types.ActivitySettings;
25
+ notifications?: IUSerSettingsNotifications;
26
+ }
27
+ interface IUSerSettingsNotifications {
28
+ medicineNotification: IMedicineNotification;
29
+ remeasurementNotification: IRemeasurementNotification;
30
+ }
31
+ interface INotifications {
32
+ toggle: boolean;
33
+ }
34
+ interface IMedicineNotification extends INotifications {
35
+ dailyReminderTime: string;
36
+ }
37
+ interface IRemeasurementNotification extends INotifications {
38
+ remeasurement: number;
39
+ }
40
+ interface IInterval {
41
+ startTime: string;
42
+ }
43
+ interface IParameters {
44
+ parameterIntervals: Array<IParameterInterval>;
45
+ overallParameters: IParameterInterval;
46
+ use?: Enums.Usage;
47
+ }
48
+ interface IParameterInterval extends IInterval {
49
+ insulinSensitivity: number;
50
+ carbohydrateRatio: number;
51
+ }
52
+ interface IBGLTargets {
53
+ targetBGLIntervals?: Array<IBGLInterval>;
54
+ overallTargetBGL?: IBGLInterval;
55
+ use?: Enums.Usage;
56
+ }
57
+ interface IBGLInterval extends IInterval {
58
+ low: number;
59
+ target: number;
60
+ high: number;
61
+ }
62
+ }
63
+ namespace Enums {
64
+ enum Usage {
65
+ Overall = "overall",
66
+ Intervals = "intervals"
67
+ }
68
+ enum FastActingInsulin {
69
+ Novorapid = "Novorapid",
70
+ Fiasp = "Fiasp",
71
+ Humalog = "Humalog",
72
+ Apidra = "Apidra",
73
+ Other = "Other",
74
+ None = "None"
75
+ }
76
+ enum LongActingInsulin {
77
+ Lantus = "Lantus",
78
+ Basaglar = "Basaglar",
79
+ Tuojeo = "Tuojeo",
80
+ Levemir = "Levemir",
81
+ Tresiba = "Tresiba",
82
+ Other = "Other",
83
+ None = "None"
84
+ }
85
+ enum DiabetesType {
86
+ Type1 = 1,
87
+ Type2 = 2
88
+ }
89
+ enum Gender {
90
+ Male = "Male",
91
+ Female = "Female"
92
+ }
93
+ enum InjectionMethod {
94
+ PenHalf = "Pen-half",
95
+ PenWhole = "Pen-whole",
96
+ Pump = "Pump"
97
+ }
98
+ }
99
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserSettings = void 0;
4
+ var UserSettings;
5
+ (function (UserSettings) {
6
+ let Enums;
7
+ (function (Enums) {
8
+ let Usage;
9
+ (function (Usage) {
10
+ Usage["Overall"] = "overall";
11
+ Usage["Intervals"] = "intervals";
12
+ })(Usage = Enums.Usage || (Enums.Usage = {}));
13
+ let FastActingInsulin;
14
+ (function (FastActingInsulin) {
15
+ FastActingInsulin["Novorapid"] = "Novorapid";
16
+ FastActingInsulin["Fiasp"] = "Fiasp";
17
+ FastActingInsulin["Humalog"] = "Humalog";
18
+ FastActingInsulin["Apidra"] = "Apidra";
19
+ FastActingInsulin["Other"] = "Other";
20
+ FastActingInsulin["None"] = "None";
21
+ })(FastActingInsulin = Enums.FastActingInsulin || (Enums.FastActingInsulin = {}));
22
+ let LongActingInsulin;
23
+ (function (LongActingInsulin) {
24
+ LongActingInsulin["Lantus"] = "Lantus";
25
+ LongActingInsulin["Basaglar"] = "Basaglar";
26
+ LongActingInsulin["Tuojeo"] = "Tuojeo";
27
+ LongActingInsulin["Levemir"] = "Levemir";
28
+ LongActingInsulin["Tresiba"] = "Tresiba";
29
+ LongActingInsulin["Other"] = "Other";
30
+ LongActingInsulin["None"] = "None";
31
+ })(LongActingInsulin = Enums.LongActingInsulin || (Enums.LongActingInsulin = {}));
32
+ let DiabetesType;
33
+ (function (DiabetesType) {
34
+ DiabetesType[DiabetesType["Type1"] = 1] = "Type1";
35
+ DiabetesType[DiabetesType["Type2"] = 2] = "Type2";
36
+ })(DiabetesType = Enums.DiabetesType || (Enums.DiabetesType = {}));
37
+ let Gender;
38
+ (function (Gender) {
39
+ Gender["Male"] = "Male";
40
+ Gender["Female"] = "Female";
41
+ })(Gender = Enums.Gender || (Enums.Gender = {}));
42
+ let InjectionMethod;
43
+ (function (InjectionMethod) {
44
+ InjectionMethod["PenHalf"] = "Pen-half";
45
+ InjectionMethod["PenWhole"] = "Pen-whole";
46
+ InjectionMethod["Pump"] = "Pump";
47
+ })(InjectionMethod = Enums.InjectionMethod || (Enums.InjectionMethod = {}));
48
+ })(Enums = UserSettings.Enums || (UserSettings.Enums = {}));
49
+ })(UserSettings = exports.UserSettings || (exports.UserSettings = {}));
50
+ //# sourceMappingURL=usersettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usersettings.js","sourceRoot":"","sources":["../../../types/usersettings/usersettings.ts"],"names":[],"mappings":";;;AAGA,IAAiB,YAAY,CA4G5B;AA5GD,WAAiB,YAAY;IAoE5B,IAAiB,KAAK,CAuCrB;IAvCD,WAAiB,KAAK;QACrB,IAAY,KAGX;QAHD,WAAY,KAAK;YAChB,4BAAmB,CAAA;YACnB,gCAAuB,CAAA;QACxB,CAAC,EAHW,KAAK,GAAL,WAAK,KAAL,WAAK,QAGhB;QAED,IAAY,iBAOX;QAPD,WAAY,iBAAiB;YAC5B,4CAAuB,CAAA;YACvB,oCAAe,CAAA;YACf,wCAAmB,CAAA;YACnB,sCAAiB,CAAA;YACjB,oCAAe,CAAA;YACf,kCAAa,CAAA;QACd,CAAC,EAPW,iBAAiB,GAAjB,uBAAiB,KAAjB,uBAAiB,QAO5B;QACD,IAAY,iBAQX;QARD,WAAY,iBAAiB;YAC5B,sCAAiB,CAAA;YACjB,0CAAqB,CAAA;YACrB,sCAAiB,CAAA;YACjB,wCAAmB,CAAA;YACnB,wCAAmB,CAAA;YACnB,oCAAe,CAAA;YACf,kCAAa,CAAA;QACd,CAAC,EARW,iBAAiB,GAAjB,uBAAiB,KAAjB,uBAAiB,QAQ5B;QAED,IAAY,YAGX;QAHD,WAAY,YAAY;YACvB,iDAAS,CAAA;YACT,iDAAS,CAAA;QACV,CAAC,EAHW,YAAY,GAAZ,kBAAY,KAAZ,kBAAY,QAGvB;QAED,IAAY,MAGX;QAHD,WAAY,MAAM;YACjB,uBAAa,CAAA;YACb,2BAAiB,CAAA;QAClB,CAAC,EAHW,MAAM,GAAN,YAAM,KAAN,YAAM,QAGjB;QAED,IAAY,eAIX;QAJD,WAAY,eAAe;YAC1B,uCAAoB,CAAA;YACpB,yCAAsB,CAAA;YACtB,gCAAa,CAAA;QACd,CAAC,EAJW,eAAe,GAAf,qBAAe,KAAf,qBAAe,QAI1B;IACF,CAAC,EAvCgB,KAAK,GAAL,kBAAK,KAAL,kBAAK,QAuCrB;AACF,CAAC,EA5GgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QA4G5B"}
package/index.ts CHANGED
@@ -1,3 +1,2 @@
1
- export * from "./types/measurements";
2
1
  export * from "./types/enums";
3
- export * from "./types/types";
2
+ export * from "./types";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hedia/types",
3
- "version": "1.1.2",
3
+ "version": "1.2.2",
4
4
  "description": "Enums, interfaces, and other common types for use in Hedia's software.",
5
5
  "main": "dist/index.js",
6
6
  "repository": {
@@ -8,10 +8,15 @@
8
8
  "url": "git+ssh://git@github.com:hedia-team/hedia-types.git"
9
9
  },
10
10
  "scripts": {
11
+ "tsc": "tsc --build",
12
+ "clean": "tsc --build --clean",
11
13
  "publish-patch": "npm version patch && npx tsc && npm publish"
12
14
  },
13
15
  "keywords": [],
14
16
  "author": "Hedia",
15
17
  "license": "ISC",
16
- "homepage": "https://github.com/hedia-team/hedia-types#readme"
18
+ "homepage": "https://github.com/hedia-team/hedia-types#readme",
19
+ "devDependencies": {
20
+ "typescript": "4.1.5"
21
+ }
17
22
  }
package/tsconfig.json CHANGED
@@ -29,9 +29,9 @@
29
29
  /* Strict Type-Checking Options */
30
30
  "strict": true, /* Enable all strict type-checking options. */
31
31
  // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
32
- // "strictNullChecks": true, /* Enable strict null checks. */
32
+ "strictNullChecks": true, /* Enable strict null checks. */
33
33
  // "strictFunctionTypes": true, /* Enable strict checking of function types. */
34
- // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
34
+ "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
35
35
  // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
36
36
  // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */
37
37
 
@@ -59,6 +59,7 @@
59
59
  // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
60
60
 
61
61
  /* Experimental Options */
62
+ "noErrorTruncation": true,
62
63
  "experimentalDecorators": true /* Enables experimental support for ES7 decorators. */,
63
64
  "emitDecoratorMetadata": true /* Enables experimental support for emitting type metadata for decorators. */,
64
65
  "skipLibCheck": true
@@ -0,0 +1,39 @@
1
+ export namespace Activity {
2
+ export namespace Types {
3
+ type ActivityIntensityKeys = keyof typeof Enums.ActivityIntensity;
4
+ type ActivityReductionKeys = keyof typeof Enums.ActivityReductionIntervals;
5
+
6
+ type ActivityReductionSettings = {
7
+ // support for nulling multiple keys, with "hard" | "light" and variants with "fromFortysix" | "fromThirty"
8
+ [key in ActivityIntensityKeys]: ActivityReductionSettingsIntervals<key, "hard", "fromFortysix">;
9
+ };
10
+
11
+ export type ActivitySettings = ActivityReductionSettings & { target: number };
12
+
13
+ type ActivityReductionSettingsIntervals<
14
+ K extends ActivityIntensityKeys,
15
+ T extends ActivityIntensityKeys,
16
+ U extends ActivityReductionKeys
17
+ > = {
18
+ [key in ActivityReductionKeys]: K extends T ? (key extends U ? null | number : number) : number;
19
+ };
20
+
21
+ type ActivitySettingsOmitTarget = Omit<ActivitySettings, "target">;
22
+ export type ActivityReductionIntervals = ActivitySettingsOmitTarget[keyof ActivitySettingsOmitTarget];
23
+ }
24
+
25
+ export namespace Enums {
26
+ export enum ActivityReductionIntervals {
27
+ fromZero = `fromZero`,
28
+ fromThirty = `fromThirty`,
29
+ fromFortysix = `fromFortysix`,
30
+ }
31
+
32
+ export enum ActivityIntensity {
33
+ light = `light`,
34
+ moderate = `moderate`,
35
+ hard = `hard`,
36
+ post = `post`,
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,45 @@
1
+ import { Activity } from "../activity/activity";
2
+
3
+ export namespace BolusCalculator {
4
+ export namespace Constants {
5
+ export const SAFETY_INSULIN_LIMIT = 50;
6
+ export const SAFETY_ACTIVITY_LIMIT = 60;
7
+ }
8
+
9
+ export namespace Types {
10
+ export interface IRecentBolus {
11
+ secondsPassed: number;
12
+ insulinDose: number;
13
+ }
14
+
15
+ export enum ActivityErrors {
16
+ OutOfRange = `Out of range`,
17
+ InvalidInterval = `Invalid activity settings interval`,
18
+ InvalidReduction = `Invalid activity Reduction`,
19
+ }
20
+ export interface IActivityParams {
21
+ activityDuration: number;
22
+ activityIntensity: Activity.Enums.ActivityIntensity;
23
+ activitySettings: Activity.Types.ActivitySettings;
24
+ activityDate: Date;
25
+ }
26
+
27
+ export interface IRecommendationParams {
28
+ currentBGL: number;
29
+ targetBGL: number;
30
+ insulinSensitivity: number;
31
+ carbohydrates: number;
32
+ carbohydrateRatio: number;
33
+ recentBoluses: Array<IRecentBolus>;
34
+ activity: IActivityParams | null;
35
+ }
36
+
37
+ export interface IRecommendationResult {
38
+ bolus: number;
39
+ wasLimited: boolean;
40
+ carbRecommendation: number;
41
+ activityReduction: number | null;
42
+ activeInsulin: number;
43
+ }
44
+ }
45
+ }
package/types/enums.ts CHANGED
@@ -1,33 +1,23 @@
1
- export enum Languages {
2
- da = `Dansk`,
3
- en = `English`,
1
+ enum Units {
2
+ MMOL_L = "mmol/l",
3
+ MG_DL = "mg/dl",
4
4
  }
5
-
6
- export enum Usage {
7
- Overall = `overall`,
8
- Intervals = `intervals`,
5
+ export enum BloodGlucoseUnit {
6
+ MMOL_L = Units.MMOL_L,
7
+ MG_DL = Units.MG_DL,
9
8
  }
10
-
11
- export enum FastActingInsulin {
12
- Novorapid = `Novorapid`,
13
- Fiasp = `Fiasp`,
14
- Humalog = `Humalog`,
15
- Apidra = `Apidra`,
16
- Other = `Other`,
17
- None = `None`,
9
+ export enum BloodKetonesUnit {
10
+ MMOL_L = Units.MMOL_L,
11
+ MG_DL = Units.MG_DL,
18
12
  }
19
13
 
20
- export enum ActivityReductionIntervals {
21
- fromZero = `fromZero`,
22
- fromThirty = `fromThirty`,
23
- fromFortysix = `fromFortysix`,
24
- }
25
-
26
- export enum ActivityReduction {
27
- light = `light`,
28
- moderate = `moderate`,
29
- hard = `hard`,
30
- post = `post`,
14
+ export enum Languages {
15
+ da = `Dansk`,
16
+ en = `English`,
17
+ de = `Deutsch`,
18
+ es = `Español`,
19
+ fr = `Français`,
20
+ it = `Italiano`,
31
21
  }
32
22
 
33
23
  export enum Milliseconds {
@@ -37,32 +27,6 @@ export enum Milliseconds {
37
27
  Day = 86400000,
38
28
  }
39
29
 
40
- export enum LongActingInsulin {
41
- Lantus = `Lantus`,
42
- Basaglar = `Basaglar`,
43
- Tuojeo = `Tuojeo`,
44
- Levemir = `Levemir`,
45
- Tresiba = `Tresiba`,
46
- Other = `Other`,
47
- None = `None`,
48
- }
49
-
50
- export enum DiabetesType {
51
- Type1 = 1,
52
- Type2 = 2,
53
- }
54
-
55
- export enum Gender {
56
- Male = `Male`,
57
- Female = `Female`,
58
- }
59
-
60
- export enum InjectionMethod {
61
- PenHalf = `Pen-half`,
62
- PenWhole = `Pen-whole`,
63
- Pump = `Pump`,
64
- }
65
-
66
30
  export enum MoodEnum {
67
31
  Sad = 1,
68
32
  SemiSad = 2,
package/types/index.ts ADDED
@@ -0,0 +1,4 @@
1
+ export * from "./activity/activity";
2
+ export * from "./usersettings/usersettings";
3
+ export * from "./userdetails/userdetails";
4
+ export * from "./boluscalculator/boluscalculator";
@@ -0,0 +1,14 @@
1
+ import { Languages } from "../enums";
2
+
3
+ export namespace UserDetails {
4
+ export namespace Types {
5
+ export interface IUserDetails {
6
+ name?: string;
7
+ email: string;
8
+ research_consent?: Date | boolean;
9
+ newsletter_consent?: Date | boolean;
10
+ country?: string;
11
+ language?: keyof typeof Languages;
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,112 @@
1
+ import { Activity } from "../activity/activity";
2
+ import { BloodGlucoseUnit, BloodKetonesUnit } from "../enums";
3
+
4
+ export namespace UserSettings {
5
+ export namespace Types {
6
+ export interface IUserSettings {
7
+ [key: string]: unknown; //required to read keys as string
8
+ diabetesType?: Enums.DiabetesType; //Diabetes 2, with or without insulin treatment ?
9
+ insulinDependent?: boolean; //Only set if diabetesType=2; true = insulin treatment and false = dont need insulin calculator
10
+ gender?: Enums.Gender;
11
+ height?: number; //cm
12
+ email?: string;
13
+ weight?: number; //kg
14
+ birthday?: string; //ISO
15
+ treatmentType?: Enums.InjectionMethod;
16
+ bloodGlucoseUnits?: BloodGlucoseUnit;
17
+ bloodKetonesUnit?: BloodKetonesUnit;
18
+ parameters?: IParameters;
19
+ glucoseLevelTargets?: IBGLTargets;
20
+ fastActingInsulin?: string | null;
21
+ longActingInsulin?: string | null;
22
+ uuidOld?: string;
23
+ uuid?: string;
24
+ created?: string; //ISO
25
+ activity?: Activity.Types.ActivitySettings;
26
+ notifications?: IUSerSettingsNotifications;
27
+ }
28
+ export interface IUSerSettingsNotifications {
29
+ medicineNotification: IMedicineNotification;
30
+ remeasurementNotification: IRemeasurementNotification;
31
+ }
32
+ export interface INotifications {
33
+ toggle: boolean;
34
+ }
35
+ export interface IMedicineNotification extends INotifications {
36
+ dailyReminderTime: string;
37
+ }
38
+ export interface IRemeasurementNotification extends INotifications {
39
+ remeasurement: number;
40
+ }
41
+ export interface IInterval {
42
+ startTime: string; //"00:00" format
43
+ }
44
+
45
+ // TODO: Delete when we have all people changed from old managers to new.???
46
+ export interface IParameters {
47
+ parameterIntervals: Array<IParameterInterval>;
48
+ overallParameters: IParameterInterval;
49
+ use?: Enums.Usage;
50
+ }
51
+
52
+ export interface IParameterInterval extends IInterval {
53
+ insulinSensitivity: number;
54
+ carbohydrateRatio: number;
55
+ }
56
+
57
+ // TODO: Delete when we have all people changed from old managers to new.???
58
+ export interface IBGLTargets {
59
+ targetBGLIntervals?: Array<IBGLInterval>;
60
+ overallTargetBGL?: IBGLInterval;
61
+ use?: Enums.Usage;
62
+ }
63
+
64
+ // TODO: Delete when we have all people changed from old managers to new.???
65
+ export interface IBGLInterval extends IInterval {
66
+ low: number;
67
+ target: number;
68
+ high: number;
69
+ }
70
+ }
71
+
72
+ export namespace Enums {
73
+ export enum Usage {
74
+ Overall = `overall`,
75
+ Intervals = `intervals`,
76
+ }
77
+
78
+ export enum FastActingInsulin {
79
+ Novorapid = `Novorapid`,
80
+ Fiasp = `Fiasp`,
81
+ Humalog = `Humalog`,
82
+ Apidra = `Apidra`,
83
+ Other = `Other`,
84
+ None = `None`,
85
+ }
86
+ export enum LongActingInsulin {
87
+ Lantus = `Lantus`,
88
+ Basaglar = `Basaglar`,
89
+ Tuojeo = `Tuojeo`,
90
+ Levemir = `Levemir`,
91
+ Tresiba = `Tresiba`,
92
+ Other = `Other`,
93
+ None = `None`,
94
+ }
95
+
96
+ export enum DiabetesType {
97
+ Type1 = 1,
98
+ Type2 = 2,
99
+ }
100
+
101
+ export enum Gender {
102
+ Male = `Male`,
103
+ Female = `Female`,
104
+ }
105
+
106
+ export enum InjectionMethod {
107
+ PenHalf = `Pen-half`,
108
+ PenWhole = `Pen-whole`,
109
+ Pump = `Pump`,
110
+ }
111
+ }
112
+ }
@@ -1,8 +0,0 @@
1
- export declare enum BloodGlucoseUnit {
2
- MMOL_L = "mmol/l",
3
- MG_DL = "mg/dl"
4
- }
5
- export declare enum BloodKetonesUnit {
6
- MMOL_L = "mmol/l",
7
- MG_DL = "mg/dl"
8
- }
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BloodKetonesUnit = exports.BloodGlucoseUnit = void 0;
4
- var Units;
5
- (function (Units) {
6
- Units["MMOL_L"] = "mmol/l";
7
- Units["MG_DL"] = "mg/dl";
8
- })(Units || (Units = {}));
9
- var BloodGlucoseUnit;
10
- (function (BloodGlucoseUnit) {
11
- BloodGlucoseUnit["MMOL_L"] = "mmol/l";
12
- BloodGlucoseUnit["MG_DL"] = "mg/dl";
13
- })(BloodGlucoseUnit = exports.BloodGlucoseUnit || (exports.BloodGlucoseUnit = {}));
14
- var BloodKetonesUnit;
15
- (function (BloodKetonesUnit) {
16
- BloodKetonesUnit["MMOL_L"] = "mmol/l";
17
- BloodKetonesUnit["MG_DL"] = "mg/dl";
18
- })(BloodKetonesUnit = exports.BloodKetonesUnit || (exports.BloodKetonesUnit = {}));
19
- //# sourceMappingURL=measurements.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"measurements.js","sourceRoot":"","sources":["../../types/measurements.ts"],"names":[],"mappings":";;;AAAA,IAAK,KAGJ;AAHD,WAAK,KAAK;IACN,0BAAiB,CAAA;IACjB,wBAAe,CAAA;AACnB,CAAC,EAHI,KAAK,KAAL,KAAK,QAGT;AACD,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,qCAAqB,CAAA;IACrB,mCAAmB,CAAA;AACvB,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B;AACD,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,qCAAqB,CAAA;IACrB,mCAAmB,CAAA;AACvB,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B"}
@@ -1,79 +0,0 @@
1
- import { DiabetesType, InjectionMethod, Gender, Usage, ActivityReduction, ActivityReductionIntervals, Languages } from "./enums";
2
- import { BloodGlucoseUnit, BloodKetonesUnit } from "./measurements";
3
- export interface IUserSettings {
4
- [key: string]: unknown;
5
- diabetesType?: DiabetesType;
6
- insulinDependent?: boolean;
7
- gender?: Gender;
8
- height?: number;
9
- email?: string;
10
- weight?: number;
11
- birthday?: string;
12
- treatmentType?: InjectionMethod;
13
- bloodGlucoseUnits?: BloodGlucoseUnit;
14
- bloodKetonesUnit?: BloodKetonesUnit;
15
- parameters?: IParameters;
16
- glucoseLevelTargets?: IBGLTargets;
17
- fastActingInsulin?: string | null;
18
- longActingInsulin?: string | null;
19
- uuidOld?: string;
20
- uuid?: string;
21
- created?: string;
22
- activity?: ActivitySettings;
23
- notifications?: IUSerSettingsNotifications;
24
- }
25
- export declare type ActivitySettings = ActivityReductionSettings & {
26
- target: number;
27
- };
28
- declare type ActivityReductionKey = keyof typeof ActivityReduction;
29
- declare type ActivityReductionIntervalsKey = keyof typeof ActivityReductionIntervals;
30
- export declare type ActivityReductionSettings = {
31
- [key in ActivityReductionKey]: ActivityReductionIntervalSettings<key, "hard", "fromFortysix">;
32
- };
33
- export declare type ActivityReductionIntervalSettings<K extends ActivityReductionKey, T extends ActivityReductionKey, U extends ActivityReductionIntervalsKey> = {
34
- [key in ActivityReductionIntervalsKey]: K extends T ? (key extends U ? null | number : number) : number;
35
- };
36
- export interface IUSerSettingsNotifications {
37
- medicineNotification: IMedicineNotification;
38
- remeasurementNotification: IRemeasurementNotification;
39
- }
40
- export interface INotifications {
41
- toggle: boolean;
42
- }
43
- export interface IMedicineNotification extends INotifications {
44
- dailyReminderTime: string;
45
- }
46
- export interface IRemeasurementNotification extends INotifications {
47
- remeasurement: number;
48
- }
49
- export interface IUserDetails {
50
- name?: string;
51
- email?: string;
52
- research_consent?: Date | boolean;
53
- newsletter_consent?: Date | boolean;
54
- country?: string;
55
- language?: keyof typeof Languages;
56
- }
57
- export interface IInterval {
58
- startTime?: string;
59
- }
60
- export interface IParameters {
61
- parameterIntervals: Array<IParameterInterval>;
62
- overallParameters: IParameterInterval;
63
- use?: Usage;
64
- }
65
- export interface IParameterInterval extends IInterval {
66
- insulinSensitivity?: number;
67
- carbohydrateRatio?: number;
68
- }
69
- export interface IBGLTargets {
70
- targetBGLIntervals?: Array<IBGLInterval>;
71
- overallTargetBGL?: IBGLInterval;
72
- use?: Usage;
73
- }
74
- export interface IBGLInterval extends IInterval {
75
- low: number;
76
- target: number;
77
- high: number;
78
- }
79
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../types/types.ts"],"names":[],"mappings":""}
@@ -1,12 +0,0 @@
1
- enum Units {
2
- MMOL_L = "mmol/l",
3
- MG_DL = "mg/dl",
4
- }
5
- export enum BloodGlucoseUnit {
6
- MMOL_L = Units.MMOL_L,
7
- MG_DL = Units.MG_DL,
8
- }
9
- export enum BloodKetonesUnit {
10
- MMOL_L = Units.MMOL_L,
11
- MG_DL = Units.MG_DL,
12
- }
package/types/types.ts DELETED
@@ -1,103 +0,0 @@
1
- import {
2
- DiabetesType,
3
- InjectionMethod,
4
- Gender,
5
- Usage,
6
- ActivityReduction,
7
- ActivityReductionIntervals,
8
- Languages,
9
- } from "./enums";
10
- import { BloodGlucoseUnit, BloodKetonesUnit } from "./measurements";
11
-
12
- export interface IUserSettings {
13
- [key: string]: unknown; //required to read keys as string
14
- diabetesType?: DiabetesType; //Diabetes 2, with or without insulin treatment ?
15
- insulinDependent?: boolean; //Only set if diabetesType=2; true = insulin treatment and false = dont need insulin calculator
16
- gender?: Gender;
17
- height?: number; //cm
18
- email?: string;
19
- weight?: number; //kg
20
- birthday?: string; //ISO
21
- treatmentType?: InjectionMethod;
22
- bloodGlucoseUnits?: BloodGlucoseUnit;
23
- bloodKetonesUnit?: BloodKetonesUnit;
24
- parameters?: IParameters;
25
- glucoseLevelTargets?: IBGLTargets;
26
- fastActingInsulin?: string | null;
27
- longActingInsulin?: string | null;
28
- uuidOld?: string;
29
- uuid?: string;
30
- created?: string; //ISO
31
- activity?: ActivitySettings;
32
- notifications?: IUSerSettingsNotifications;
33
- }
34
-
35
- export type ActivitySettings = ActivityReductionSettings & { target: number };
36
-
37
- type ActivityReductionKey = keyof typeof ActivityReduction;
38
- type ActivityReductionIntervalsKey = keyof typeof ActivityReductionIntervals;
39
-
40
- export type ActivityReductionSettings = {
41
- // support for nulling multiple keys, with "hard" | "light" and variants with "fromFortysix" | "fromThirty"
42
- [key in ActivityReductionKey]: ActivityReductionIntervalSettings<key, "hard", "fromFortysix">;
43
- };
44
- export type ActivityReductionIntervalSettings<
45
- K extends ActivityReductionKey,
46
- T extends ActivityReductionKey,
47
- U extends ActivityReductionIntervalsKey
48
- > = {
49
- [key in ActivityReductionIntervalsKey]: K extends T ? (key extends U ? null | number : number) : number;
50
- };
51
-
52
- export interface IUSerSettingsNotifications {
53
- medicineNotification: IMedicineNotification;
54
- remeasurementNotification: IRemeasurementNotification;
55
- }
56
- export interface INotifications {
57
- toggle: boolean;
58
- }
59
- export interface IMedicineNotification extends INotifications {
60
- dailyReminderTime: string;
61
- }
62
- export interface IRemeasurementNotification extends INotifications {
63
- remeasurement: number;
64
- }
65
-
66
- export interface IUserDetails {
67
- name?: string;
68
- email?: string;
69
- research_consent?: Date | boolean;
70
- newsletter_consent?: Date | boolean;
71
- country?: string;
72
- language?: keyof typeof Languages;
73
- }
74
-
75
- export interface IInterval {
76
- startTime?: string; //"00:00" format
77
- }
78
-
79
- // TODO: Delete when we have all people changed from old managers to new.???
80
- export interface IParameters {
81
- parameterIntervals: Array<IParameterInterval>;
82
- overallParameters: IParameterInterval;
83
- use?: Usage;
84
- }
85
-
86
- export interface IParameterInterval extends IInterval {
87
- insulinSensitivity?: number;
88
- carbohydrateRatio?: number;
89
- }
90
-
91
- // TODO: Delete when we have all people changed from old managers to new.???
92
- export interface IBGLTargets {
93
- targetBGLIntervals?: Array<IBGLInterval>;
94
- overallTargetBGL?: IBGLInterval;
95
- use?: Usage;
96
- }
97
-
98
- // TODO: Delete when we have all people changed from old managers to new.???
99
- export interface IBGLInterval extends IInterval {
100
- low: number;
101
- target: number;
102
- high: number;
103
- }