react-native-spike-sdk 4.3.213 → 4.3.223
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.
- package/lib/commonjs/index.js +0 -36
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/v3/Utils/NutritionRecordIngredientUtils.js +68 -74
- package/lib/commonjs/v3/Utils/NutritionRecordIngredientUtils.js.map +1 -1
- package/lib/commonjs/v3/Utils/NutritionRecordUtils.js +47 -53
- package/lib/commonjs/v3/Utils/NutritionRecordUtils.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/index.js +4 -4
- package/lib/module/index.js.map +1 -1
- package/lib/module/v3/Utils/NutritionRecordIngredientUtils.js +68 -71
- package/lib/module/v3/Utils/NutritionRecordIngredientUtils.js.map +1 -1
- package/lib/module/v3/Utils/NutritionRecordUtils.js +47 -50
- package/lib/module/v3/Utils/NutritionRecordUtils.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/typescript/index.d.ts +3 -3
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/v3/Utils/NutritionRecordIngredientUtils.d.ts +29 -29
- package/lib/typescript/v3/Utils/NutritionRecordIngredientUtils.d.ts.map +1 -1
- package/lib/typescript/v3/Utils/NutritionRecordUtils.d.ts +35 -35
- package/lib/typescript/v3/Utils/NutritionRecordUtils.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/index.ts +0 -12
- package/src/v3/Utils/NutritionRecordIngredientUtils.ts +74 -75
- package/src/v3/Utils/NutritionRecordUtils.ts +60 -61
- package/src/version.ts +1 -1
|
@@ -49,59 +49,56 @@ export const NutritionRecordUtils = {
|
|
|
49
49
|
consumedAt: options.consumedAt ?? null,
|
|
50
50
|
userTimeOffsetMinutes: null
|
|
51
51
|
};
|
|
52
|
+
},
|
|
53
|
+
/**
|
|
54
|
+
* Adds an ingredient to the nutrition record.
|
|
55
|
+
*
|
|
56
|
+
* After adding the ingredient, the nutritional fields and serving size are automatically
|
|
57
|
+
* recalculated based on all ingredients.
|
|
58
|
+
*
|
|
59
|
+
* @param record - The nutrition record to add the ingredient to.
|
|
60
|
+
* @param ingredient - The ingredient to add.
|
|
61
|
+
* @returns A new NutritionRecord with the ingredient added and values recalculated.
|
|
62
|
+
*/
|
|
63
|
+
withIngredient(record, ingredient) {
|
|
64
|
+
const updatedIngredients = [...(record.ingredients ?? []), ingredient];
|
|
65
|
+
return recalculateValuesFromIngredients(record, updatedIngredients);
|
|
66
|
+
},
|
|
67
|
+
/**
|
|
68
|
+
* Removes an ingredient from the nutrition record.
|
|
69
|
+
*
|
|
70
|
+
* All matching ingredients (based on deep equality) are removed.
|
|
71
|
+
* After removing the ingredient, the nutritional fields and serving size are automatically
|
|
72
|
+
* recalculated based on the remaining ingredients.
|
|
73
|
+
*
|
|
74
|
+
* @param record - The nutrition record to remove the ingredient from.
|
|
75
|
+
* @param ingredient - The ingredient to remove.
|
|
76
|
+
* @returns A new NutritionRecord with the ingredient removed and values recalculated.
|
|
77
|
+
*/
|
|
78
|
+
withoutIngredient(record, ingredient) {
|
|
79
|
+
const updatedIngredients = (record.ingredients ?? []).filter(ing => !isIngredientEqual(ing, ingredient));
|
|
80
|
+
return recalculateValuesFromIngredients(record, updatedIngredients);
|
|
81
|
+
},
|
|
82
|
+
/**
|
|
83
|
+
* Updates the serving size and unit for the nutrition record.
|
|
84
|
+
*
|
|
85
|
+
* This will not recalculate serving sizes nor nutritional fields in ingredients.
|
|
86
|
+
* This will not recalculate nutritionalFields (use `SpikeRNConnectionAPIv3.updateNutritionRecordServingSize()` instead).
|
|
87
|
+
*
|
|
88
|
+
* @param record - The nutrition record to update.
|
|
89
|
+
* @param servingSize - The new serving size in metric units.
|
|
90
|
+
* @param unit - The new metric unit (g for solids, ml for liquids).
|
|
91
|
+
* @returns A new NutritionRecord with the updated serving size and unit.
|
|
92
|
+
*/
|
|
93
|
+
withServingSize(record, servingSize, unit) {
|
|
94
|
+
return {
|
|
95
|
+
...record,
|
|
96
|
+
servingSize,
|
|
97
|
+
unit
|
|
98
|
+
};
|
|
52
99
|
}
|
|
53
100
|
};
|
|
54
101
|
|
|
55
|
-
/**
|
|
56
|
-
* Adds an ingredient to the nutrition record.
|
|
57
|
-
*
|
|
58
|
-
* After adding the ingredient, the nutritional fields and serving size are automatically
|
|
59
|
-
* recalculated based on all ingredients.
|
|
60
|
-
*
|
|
61
|
-
* @param record - The nutrition record to add the ingredient to.
|
|
62
|
-
* @param ingredient - The ingredient to add.
|
|
63
|
-
* @returns A new NutritionRecord with the ingredient added and values recalculated.
|
|
64
|
-
*/
|
|
65
|
-
export function withIngredient(record, ingredient) {
|
|
66
|
-
const updatedIngredients = [...(record.ingredients ?? []), ingredient];
|
|
67
|
-
return recalculateValuesFromIngredients(record, updatedIngredients);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* Removes an ingredient from the nutrition record.
|
|
72
|
-
*
|
|
73
|
-
* All matching ingredients (based on deep equality) are removed.
|
|
74
|
-
* After removing the ingredient, the nutritional fields and serving size are automatically
|
|
75
|
-
* recalculated based on the remaining ingredients.
|
|
76
|
-
*
|
|
77
|
-
* @param record - The nutrition record to remove the ingredient from.
|
|
78
|
-
* @param ingredient - The ingredient to remove.
|
|
79
|
-
* @returns A new NutritionRecord with the ingredient removed and values recalculated.
|
|
80
|
-
*/
|
|
81
|
-
export function withoutIngredient(record, ingredient) {
|
|
82
|
-
const updatedIngredients = (record.ingredients ?? []).filter(ing => !isIngredientEqual(ing, ingredient));
|
|
83
|
-
return recalculateValuesFromIngredients(record, updatedIngredients);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* Updates the serving size and unit for the nutrition record.
|
|
88
|
-
*
|
|
89
|
-
* This will not recalculate serving sizes nor nutritional fields in ingredients.
|
|
90
|
-
* This will not recalculate nutritionalFields (use `SpikeRNConnectionAPIv3.updateNutritionRecordServingSize()` instead).
|
|
91
|
-
*
|
|
92
|
-
* @param record - The nutrition record to update.
|
|
93
|
-
* @param servingSize - The new serving size in metric units.
|
|
94
|
-
* @param unit - The new metric unit (g for solids, ml for liquids).
|
|
95
|
-
* @returns A new NutritionRecord with the updated serving size and unit.
|
|
96
|
-
*/
|
|
97
|
-
export function withServingSize(record, servingSize, unit) {
|
|
98
|
-
return {
|
|
99
|
-
...record,
|
|
100
|
-
servingSize,
|
|
101
|
-
unit
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
|
|
105
102
|
/**
|
|
106
103
|
* Recalculates nutritional fields and serving size based on all ingredients.
|
|
107
104
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["generateUUID","replace","c","r","Math","random","v","toString","NutritionRecordUtils","create","options","now","Date","toISOString","recordId","dishName","dishDescription","dishNameTranslated","dishDescriptionTranslated","nutriScore","servingSize","unit","nutritionalFields","ingredients","uploadedAt","modifiedAt","consumedAt","userTimeOffsetMinutes","withIngredient","record","ingredient","updatedIngredients","recalculateValuesFromIngredients","withoutIngredient","filter","ing","isIngredientEqual","withServingSize","length","summedFields","totalServingSize","key","value","Object","entries","keys","a","b","name","nameTranslated","JSON","stringify"],"sourceRoot":"../../../../src","sources":["v3/Utils/NutritionRecordUtils.ts"],"mappings":";;AAIA;AACA;AACA;AACA;AACA,SAASA,YAAYA,CAAA,EAAW;EAC5B,OAAO,sCAAsC,CAACC,OAAO,CAAC,OAAO,EAAGC,CAAC,IAAK;IAClE,MAAMC,CAAC,GAAIC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAI,CAAC;IAClC,MAAMC,CAAC,GAAGJ,CAAC,KAAK,GAAG,GAAGC,CAAC,GAAIA,CAAC,GAAG,GAAG,GAAI,GAAG;IACzC,OAAOG,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC;EACzB,CAAC,CAAC;AACN;;AAEA;AACA;AACA;;AAkBA;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAG;EAChC;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACIC,MAAMA,CAACC,OAAqC,GAAG,CAAC,CAAC,EAAmB;IAChE,MAAMC,GAAG,GAAG,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;IACpC,OAAO;MACHC,QAAQ,EAAEd,YAAY,CAAC,CAAC;MAAE;MAC1Be,QAAQ,EAAEL,OAAO,CAACK,QAAQ,IAAI,IAAI;MAClCC,eAAe,EAAEN,OAAO,CAACM,eAAe,IAAI,IAAI;MAChDC,kBAAkB,EAAEP,OAAO,CAACO,kBAAkB,IAAI,IAAI;MACtDC,yBAAyB,EAAER,OAAO,CAACQ,yBAAyB,IAAI,IAAI;MACpEC,UAAU,EAAE,IAAI;MAChBC,WAAW,EAAEV,OAAO,CAACU,WAAW,IAAI,IAAI;MACxCC,IAAI,EAAEX,OAAO,CAACW,IAAI,IAAI,IAAI;MAC1BC,iBAAiB,EAAE,IAAI;MACvBC,WAAW,EAAE,IAAI;MACjBC,UAAU,EAAEb,GAAG;MACfc,UAAU,EAAEd,GAAG;MACfe,UAAU,EAAEhB,OAAO,CAACgB,UAAU,IAAI,IAAI;MACtCC,qBAAqB,EAAE;IAC3B,CAAC;EACL
|
|
1
|
+
{"version":3,"names":["generateUUID","replace","c","r","Math","random","v","toString","NutritionRecordUtils","create","options","now","Date","toISOString","recordId","dishName","dishDescription","dishNameTranslated","dishDescriptionTranslated","nutriScore","servingSize","unit","nutritionalFields","ingredients","uploadedAt","modifiedAt","consumedAt","userTimeOffsetMinutes","withIngredient","record","ingredient","updatedIngredients","recalculateValuesFromIngredients","withoutIngredient","filter","ing","isIngredientEqual","withServingSize","length","summedFields","totalServingSize","key","value","Object","entries","keys","a","b","name","nameTranslated","JSON","stringify"],"sourceRoot":"../../../../src","sources":["v3/Utils/NutritionRecordUtils.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/version.js
CHANGED
|
@@ -73,8 +73,8 @@ import { NutritionalField } from './v3/DataModels/NutritionalField';
|
|
|
73
73
|
import { NutritionalUnit } from './v3/DataModels/NutritionalUnit';
|
|
74
74
|
import type { NutritionFactsLabelRecognitionConfig } from './v3/DataModels/NutritionFactsLabelRecognitionConfig';
|
|
75
75
|
import type { NutritionFactsLabelRecognitionResult } from './v3/DataModels/NutritionFactsLabelRecognitionResult';
|
|
76
|
-
import { NutritionRecordUtils,
|
|
77
|
-
import { NutritionRecordIngredientUtils,
|
|
78
|
-
export { SpikeRNConnectionAPIv3, StatisticsFilter, ActivityAdditionalData, ActivityCategory, ActivityConfig, ActivityEntry, ActivitySamples, ActivityTag, ActivityType, HealthConnectAvailabilityStatus, HealthConnectFeature, SamsungHealthDataAvailabilityStatus, InputMethod, LogLevel, MetricType, Provider, ProviderSource, RecordSource, SleepConfig, SpikeRecord, Statistic, StatisticsInterval, StatisticsType, Unit, UUID, UserInfoResponse, UserInfoIntegratedProvider, NutritionRecordStatus, NutritionRecordAnalysisMode, NutritionalField, NutritionalUnit, NutritionRecordUtils,
|
|
76
|
+
import { NutritionRecordUtils, CreateNutritionRecordOptions } from './v3/Utils/NutritionRecordUtils';
|
|
77
|
+
import { NutritionRecordIngredientUtils, CreateNutritionRecordIngredientOptions } from './v3/Utils/NutritionRecordIngredientUtils';
|
|
78
|
+
export { SpikeRNConnectionAPIv3, StatisticsFilter, ActivityAdditionalData, ActivityCategory, ActivityConfig, ActivityEntry, ActivitySamples, ActivityTag, ActivityType, HealthConnectAvailabilityStatus, HealthConnectFeature, SamsungHealthDataAvailabilityStatus, InputMethod, LogLevel, MetricType, Provider, ProviderSource, RecordSource, SleepConfig, SpikeRecord, Statistic, StatisticsInterval, StatisticsType, Unit, UUID, UserInfoResponse, UserInfoIntegratedProvider, NutritionRecordStatus, NutritionRecordAnalysisMode, NutritionalField, NutritionalUnit, NutritionRecordUtils, NutritionRecordIngredientUtils, };
|
|
79
79
|
export type { GetHealthConnectPermissionsParameters, StatisticsFilterConstructorParameters, ActivityConfigConstructorInterface, SleepConfigConstructorInterface, BackgroundDeliveryConfig, SamsungHealthDataAvailability, IntegrationInitConfig, NutritionRecord, NutritionRecordAnalysisResult, NutritionRecordIngredient, NutritionalAnalysisConfig, NutritionFactsLabelRecognitionConfig, NutritionFactsLabelRecognitionResult, CreateNutritionRecordOptions, CreateNutritionRecordIngredientOptions, };
|
|
80
80
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,34 +25,34 @@ export declare const NutritionRecordIngredientUtils: {
|
|
|
25
25
|
* @returns A new NutritionRecordIngredient instance.
|
|
26
26
|
*/
|
|
27
27
|
create(options: CreateNutritionRecordIngredientOptions): NutritionRecordIngredient;
|
|
28
|
+
/**
|
|
29
|
+
* Sets the value for a specific nutritional field.
|
|
30
|
+
*
|
|
31
|
+
* @param ingredient - The ingredient to update.
|
|
32
|
+
* @param nutritionalField - The nutritional field to set.
|
|
33
|
+
* @param value - The value to set for the nutritional field.
|
|
34
|
+
* @returns A new NutritionRecordIngredient with the nutritional field set.
|
|
35
|
+
*/
|
|
36
|
+
withNutritionalField(ingredient: NutritionRecordIngredient, nutritionalField: NutritionalField, value: number): NutritionRecordIngredient;
|
|
37
|
+
/**
|
|
38
|
+
* Removes a nutritional field from the ingredient.
|
|
39
|
+
*
|
|
40
|
+
* @param ingredient - The ingredient to update.
|
|
41
|
+
* @param nutritionalField - The nutritional field to remove.
|
|
42
|
+
* @returns A new NutritionRecordIngredient with the nutritional field removed.
|
|
43
|
+
*/
|
|
44
|
+
withoutNutritionalField(ingredient: NutritionRecordIngredient, nutritionalField: NutritionalField): NutritionRecordIngredient;
|
|
45
|
+
/**
|
|
46
|
+
* Updates the serving size and proportionally scales all nutritional field values.
|
|
47
|
+
*
|
|
48
|
+
* If the current serving size is zero or negative, only the serving size is updated
|
|
49
|
+
* without scaling nutritional values. Otherwise, all nutritional field values are
|
|
50
|
+
* scaled by the ratio of the new serving size to the old serving size.
|
|
51
|
+
*
|
|
52
|
+
* @param ingredient - The ingredient to update.
|
|
53
|
+
* @param newServingSize - The new serving size in metric units.
|
|
54
|
+
* @returns A new NutritionRecordIngredient with the updated serving size and scaled nutritional fields.
|
|
55
|
+
*/
|
|
56
|
+
withScaledServingSize(ingredient: NutritionRecordIngredient, newServingSize: number): NutritionRecordIngredient;
|
|
28
57
|
};
|
|
29
|
-
/**
|
|
30
|
-
* Sets the value for a specific nutritional field.
|
|
31
|
-
*
|
|
32
|
-
* @param ingredient - The ingredient to update.
|
|
33
|
-
* @param nutritionalField - The nutritional field to set.
|
|
34
|
-
* @param value - The value to set for the nutritional field.
|
|
35
|
-
* @returns A new NutritionRecordIngredient with the nutritional field set.
|
|
36
|
-
*/
|
|
37
|
-
export declare function withNutritionalField(ingredient: NutritionRecordIngredient, nutritionalField: NutritionalField, value: number): NutritionRecordIngredient;
|
|
38
|
-
/**
|
|
39
|
-
* Removes a nutritional field from the ingredient.
|
|
40
|
-
*
|
|
41
|
-
* @param ingredient - The ingredient to update.
|
|
42
|
-
* @param nutritionalField - The nutritional field to remove.
|
|
43
|
-
* @returns A new NutritionRecordIngredient with the nutritional field removed.
|
|
44
|
-
*/
|
|
45
|
-
export declare function withoutNutritionalField(ingredient: NutritionRecordIngredient, nutritionalField: NutritionalField): NutritionRecordIngredient;
|
|
46
|
-
/**
|
|
47
|
-
* Updates the serving size and proportionally scales all nutritional field values.
|
|
48
|
-
*
|
|
49
|
-
* If the current serving size is zero or negative, only the serving size is updated
|
|
50
|
-
* without scaling nutritional values. Otherwise, all nutritional field values are
|
|
51
|
-
* scaled by the ratio of the new serving size to the old serving size.
|
|
52
|
-
*
|
|
53
|
-
* @param ingredient - The ingredient to update.
|
|
54
|
-
* @param newServingSize - The new serving size in metric units.
|
|
55
|
-
* @returns A new NutritionRecordIngredient with the updated serving size and scaled nutritional fields.
|
|
56
|
-
*/
|
|
57
|
-
export declare function withScaledServingSize(ingredient: NutritionRecordIngredient, newServingSize: number): NutritionRecordIngredient;
|
|
58
58
|
//# sourceMappingURL=NutritionRecordIngredientUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NutritionRecordIngredientUtils.d.ts","sourceRoot":"","sources":["../../../../src/v3/Utils/NutritionRecordIngredientUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACnD,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,IAAI,EAAE,eAAe,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,8BAA8B;IACvC;;;;;OAKG;oBACa,sCAAsC,GAAG,yBAAyB;
|
|
1
|
+
{"version":3,"file":"NutritionRecordIngredientUtils.d.ts","sourceRoot":"","sources":["../../../../src/v3/Utils/NutritionRecordIngredientUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACnD,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,IAAI,EAAE,eAAe,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,8BAA8B;IACvC;;;;;OAKG;oBACa,sCAAsC,GAAG,yBAAyB;IAUlF;;;;;;;OAOG;qCAEa,yBAAyB,oBACnB,gBAAgB,SAC3B,MAAM,GACd,yBAAyB;IAQ5B;;;;;;OAMG;wCAEa,yBAAyB,oBACnB,gBAAgB,GACnC,yBAAyB;IAY5B;;;;;;;;;;OAUG;sCAEa,yBAAyB,kBACrB,MAAM,GACvB,yBAAyB;CAyB/B,CAAC"}
|
|
@@ -35,40 +35,40 @@ export declare const NutritionRecordUtils: {
|
|
|
35
35
|
* @returns A new NutritionRecord instance with the specified properties.
|
|
36
36
|
*/
|
|
37
37
|
create(options?: CreateNutritionRecordOptions): NutritionRecord;
|
|
38
|
+
/**
|
|
39
|
+
* Adds an ingredient to the nutrition record.
|
|
40
|
+
*
|
|
41
|
+
* After adding the ingredient, the nutritional fields and serving size are automatically
|
|
42
|
+
* recalculated based on all ingredients.
|
|
43
|
+
*
|
|
44
|
+
* @param record - The nutrition record to add the ingredient to.
|
|
45
|
+
* @param ingredient - The ingredient to add.
|
|
46
|
+
* @returns A new NutritionRecord with the ingredient added and values recalculated.
|
|
47
|
+
*/
|
|
48
|
+
withIngredient(record: NutritionRecord, ingredient: NutritionRecordIngredient): NutritionRecord;
|
|
49
|
+
/**
|
|
50
|
+
* Removes an ingredient from the nutrition record.
|
|
51
|
+
*
|
|
52
|
+
* All matching ingredients (based on deep equality) are removed.
|
|
53
|
+
* After removing the ingredient, the nutritional fields and serving size are automatically
|
|
54
|
+
* recalculated based on the remaining ingredients.
|
|
55
|
+
*
|
|
56
|
+
* @param record - The nutrition record to remove the ingredient from.
|
|
57
|
+
* @param ingredient - The ingredient to remove.
|
|
58
|
+
* @returns A new NutritionRecord with the ingredient removed and values recalculated.
|
|
59
|
+
*/
|
|
60
|
+
withoutIngredient(record: NutritionRecord, ingredient: NutritionRecordIngredient): NutritionRecord;
|
|
61
|
+
/**
|
|
62
|
+
* Updates the serving size and unit for the nutrition record.
|
|
63
|
+
*
|
|
64
|
+
* This will not recalculate serving sizes nor nutritional fields in ingredients.
|
|
65
|
+
* This will not recalculate nutritionalFields (use `SpikeRNConnectionAPIv3.updateNutritionRecordServingSize()` instead).
|
|
66
|
+
*
|
|
67
|
+
* @param record - The nutrition record to update.
|
|
68
|
+
* @param servingSize - The new serving size in metric units.
|
|
69
|
+
* @param unit - The new metric unit (g for solids, ml for liquids).
|
|
70
|
+
* @returns A new NutritionRecord with the updated serving size and unit.
|
|
71
|
+
*/
|
|
72
|
+
withServingSize(record: NutritionRecord, servingSize: number, unit: NutritionalUnit): NutritionRecord;
|
|
38
73
|
};
|
|
39
|
-
/**
|
|
40
|
-
* Adds an ingredient to the nutrition record.
|
|
41
|
-
*
|
|
42
|
-
* After adding the ingredient, the nutritional fields and serving size are automatically
|
|
43
|
-
* recalculated based on all ingredients.
|
|
44
|
-
*
|
|
45
|
-
* @param record - The nutrition record to add the ingredient to.
|
|
46
|
-
* @param ingredient - The ingredient to add.
|
|
47
|
-
* @returns A new NutritionRecord with the ingredient added and values recalculated.
|
|
48
|
-
*/
|
|
49
|
-
export declare function withIngredient(record: NutritionRecord, ingredient: NutritionRecordIngredient): NutritionRecord;
|
|
50
|
-
/**
|
|
51
|
-
* Removes an ingredient from the nutrition record.
|
|
52
|
-
*
|
|
53
|
-
* All matching ingredients (based on deep equality) are removed.
|
|
54
|
-
* After removing the ingredient, the nutritional fields and serving size are automatically
|
|
55
|
-
* recalculated based on the remaining ingredients.
|
|
56
|
-
*
|
|
57
|
-
* @param record - The nutrition record to remove the ingredient from.
|
|
58
|
-
* @param ingredient - The ingredient to remove.
|
|
59
|
-
* @returns A new NutritionRecord with the ingredient removed and values recalculated.
|
|
60
|
-
*/
|
|
61
|
-
export declare function withoutIngredient(record: NutritionRecord, ingredient: NutritionRecordIngredient): NutritionRecord;
|
|
62
|
-
/**
|
|
63
|
-
* Updates the serving size and unit for the nutrition record.
|
|
64
|
-
*
|
|
65
|
-
* This will not recalculate serving sizes nor nutritional fields in ingredients.
|
|
66
|
-
* This will not recalculate nutritionalFields (use `SpikeRNConnectionAPIv3.updateNutritionRecordServingSize()` instead).
|
|
67
|
-
*
|
|
68
|
-
* @param record - The nutrition record to update.
|
|
69
|
-
* @param servingSize - The new serving size in metric units.
|
|
70
|
-
* @param unit - The new metric unit (g for solids, ml for liquids).
|
|
71
|
-
* @returns A new NutritionRecord with the updated serving size and unit.
|
|
72
|
-
*/
|
|
73
|
-
export declare function withServingSize(record: NutritionRecord, servingSize: number, unit: NutritionalUnit): NutritionRecord;
|
|
74
74
|
//# sourceMappingURL=NutritionRecordUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NutritionRecordUtils.d.ts","sourceRoot":"","sources":["../../../../src/v3/Utils/NutritionRecordUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAcrE;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qCAAqC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,mDAAmD;IACnD,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,0DAA0D;IAC1D,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,sDAAsD;IACtD,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAC9B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB;IAC7B;;;;;;;;;OASG;qBACa,4BAA4B,GAAQ,eAAe;
|
|
1
|
+
{"version":3,"file":"NutritionRecordUtils.d.ts","sourceRoot":"","sources":["../../../../src/v3/Utils/NutritionRecordUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAcrE;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qCAAqC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,mDAAmD;IACnD,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,0DAA0D;IAC1D,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,sDAAsD;IACtD,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAC9B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB;IAC7B;;;;;;;;;OASG;qBACa,4BAA4B,GAAQ,eAAe;IAoBnE;;;;;;;;;OASG;2BAES,eAAe,cACX,yBAAyB,GACtC,eAAe;IAKlB;;;;;;;;;;OAUG;8BAES,eAAe,cACX,yBAAyB,GACtC,eAAe;IAOlB;;;;;;;;;;OAUG;4BAES,eAAe,eACV,MAAM,QACb,eAAe,GACtB,eAAe;CAOrB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const SPIKE_SDK_VERSION = "4.3.
|
|
1
|
+
export declare const SPIKE_SDK_VERSION = "4.3.223";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -128,16 +128,10 @@ import type { NutritionFactsLabelRecognitionConfig } from './v3/DataModels/Nutri
|
|
|
128
128
|
import type { NutritionFactsLabelRecognitionResult } from './v3/DataModels/NutritionFactsLabelRecognitionResult';
|
|
129
129
|
import {
|
|
130
130
|
NutritionRecordUtils,
|
|
131
|
-
withIngredient,
|
|
132
|
-
withoutIngredient,
|
|
133
|
-
withServingSize,
|
|
134
131
|
CreateNutritionRecordOptions
|
|
135
132
|
} from './v3/Utils/NutritionRecordUtils';
|
|
136
133
|
import {
|
|
137
134
|
NutritionRecordIngredientUtils,
|
|
138
|
-
withNutritionalField,
|
|
139
|
-
withoutNutritionalField,
|
|
140
|
-
withScaledServingSize,
|
|
141
135
|
CreateNutritionRecordIngredientOptions
|
|
142
136
|
} from './v3/Utils/NutritionRecordIngredientUtils';
|
|
143
137
|
|
|
@@ -176,14 +170,8 @@ export {
|
|
|
176
170
|
NutritionalUnit,
|
|
177
171
|
// Nutrition Record Utils
|
|
178
172
|
NutritionRecordUtils,
|
|
179
|
-
withIngredient,
|
|
180
|
-
withoutIngredient,
|
|
181
|
-
withServingSize,
|
|
182
173
|
// Nutrition Record Ingredient Utils
|
|
183
174
|
NutritionRecordIngredientUtils,
|
|
184
|
-
withNutritionalField,
|
|
185
|
-
withoutNutritionalField,
|
|
186
|
-
withScaledServingSize,
|
|
187
175
|
}
|
|
188
176
|
export type {
|
|
189
177
|
GetHealthConnectPermissionsParameters,
|
|
@@ -35,87 +35,86 @@ export const NutritionRecordIngredientUtils = {
|
|
|
35
35
|
nutritionalFields: null,
|
|
36
36
|
};
|
|
37
37
|
},
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Sets the value for a specific nutritional field.
|
|
42
|
-
*
|
|
43
|
-
* @param ingredient - The ingredient to update.
|
|
44
|
-
* @param nutritionalField - The nutritional field to set.
|
|
45
|
-
* @param value - The value to set for the nutritional field.
|
|
46
|
-
* @returns A new NutritionRecordIngredient with the nutritional field set.
|
|
47
|
-
*/
|
|
48
|
-
export function withNutritionalField(
|
|
49
|
-
ingredient: NutritionRecordIngredient,
|
|
50
|
-
nutritionalField: NutritionalField,
|
|
51
|
-
value: number
|
|
52
|
-
): NutritionRecordIngredient {
|
|
53
|
-
const updatedFields = { ...(ingredient.nutritionalFields ?? {}), [nutritionalField]: value };
|
|
54
|
-
return {
|
|
55
|
-
...ingredient,
|
|
56
|
-
nutritionalFields: updatedFields,
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
38
|
|
|
60
|
-
/**
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
const updatedFields = { ...ingredient.nutritionalFields };
|
|
75
|
-
delete updatedFields[nutritionalField];
|
|
76
|
-
return {
|
|
77
|
-
...ingredient,
|
|
78
|
-
nutritionalFields: Object.keys(updatedFields).length > 0 ? updatedFields : null,
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* Updates the serving size and proportionally scales all nutritional field values.
|
|
84
|
-
*
|
|
85
|
-
* If the current serving size is zero or negative, only the serving size is updated
|
|
86
|
-
* without scaling nutritional values. Otherwise, all nutritional field values are
|
|
87
|
-
* scaled by the ratio of the new serving size to the old serving size.
|
|
88
|
-
*
|
|
89
|
-
* @param ingredient - The ingredient to update.
|
|
90
|
-
* @param newServingSize - The new serving size in metric units.
|
|
91
|
-
* @returns A new NutritionRecordIngredient with the updated serving size and scaled nutritional fields.
|
|
92
|
-
*/
|
|
93
|
-
export function withScaledServingSize(
|
|
94
|
-
ingredient: NutritionRecordIngredient,
|
|
95
|
-
newServingSize: number
|
|
96
|
-
): NutritionRecordIngredient {
|
|
97
|
-
const oldServingSize = ingredient.servingSize;
|
|
98
|
-
if (oldServingSize <= 0) {
|
|
39
|
+
/**
|
|
40
|
+
* Sets the value for a specific nutritional field.
|
|
41
|
+
*
|
|
42
|
+
* @param ingredient - The ingredient to update.
|
|
43
|
+
* @param nutritionalField - The nutritional field to set.
|
|
44
|
+
* @param value - The value to set for the nutritional field.
|
|
45
|
+
* @returns A new NutritionRecordIngredient with the nutritional field set.
|
|
46
|
+
*/
|
|
47
|
+
withNutritionalField(
|
|
48
|
+
ingredient: NutritionRecordIngredient,
|
|
49
|
+
nutritionalField: NutritionalField,
|
|
50
|
+
value: number
|
|
51
|
+
): NutritionRecordIngredient {
|
|
52
|
+
const updatedFields = { ...(ingredient.nutritionalFields ?? {}), [nutritionalField]: value };
|
|
99
53
|
return {
|
|
100
54
|
...ingredient,
|
|
101
|
-
|
|
55
|
+
nutritionalFields: updatedFields,
|
|
102
56
|
};
|
|
103
|
-
}
|
|
57
|
+
},
|
|
104
58
|
|
|
105
|
-
|
|
59
|
+
/**
|
|
60
|
+
* Removes a nutritional field from the ingredient.
|
|
61
|
+
*
|
|
62
|
+
* @param ingredient - The ingredient to update.
|
|
63
|
+
* @param nutritionalField - The nutritional field to remove.
|
|
64
|
+
* @returns A new NutritionRecordIngredient with the nutritional field removed.
|
|
65
|
+
*/
|
|
66
|
+
withoutNutritionalField(
|
|
67
|
+
ingredient: NutritionRecordIngredient,
|
|
68
|
+
nutritionalField: NutritionalField
|
|
69
|
+
): NutritionRecordIngredient {
|
|
70
|
+
if (!ingredient.nutritionalFields) {
|
|
71
|
+
return ingredient;
|
|
72
|
+
}
|
|
73
|
+
const updatedFields = { ...ingredient.nutritionalFields };
|
|
74
|
+
delete updatedFields[nutritionalField];
|
|
75
|
+
return {
|
|
76
|
+
...ingredient,
|
|
77
|
+
nutritionalFields: Object.keys(updatedFields).length > 0 ? updatedFields : null,
|
|
78
|
+
};
|
|
79
|
+
},
|
|
106
80
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
81
|
+
/**
|
|
82
|
+
* Updates the serving size and proportionally scales all nutritional field values.
|
|
83
|
+
*
|
|
84
|
+
* If the current serving size is zero or negative, only the serving size is updated
|
|
85
|
+
* without scaling nutritional values. Otherwise, all nutritional field values are
|
|
86
|
+
* scaled by the ratio of the new serving size to the old serving size.
|
|
87
|
+
*
|
|
88
|
+
* @param ingredient - The ingredient to update.
|
|
89
|
+
* @param newServingSize - The new serving size in metric units.
|
|
90
|
+
* @returns A new NutritionRecordIngredient with the updated serving size and scaled nutritional fields.
|
|
91
|
+
*/
|
|
92
|
+
withScaledServingSize(
|
|
93
|
+
ingredient: NutritionRecordIngredient,
|
|
94
|
+
newServingSize: number
|
|
95
|
+
): NutritionRecordIngredient {
|
|
96
|
+
const oldServingSize = ingredient.servingSize;
|
|
97
|
+
if (oldServingSize <= 0) {
|
|
98
|
+
return {
|
|
99
|
+
...ingredient,
|
|
100
|
+
servingSize: newServingSize,
|
|
101
|
+
};
|
|
112
102
|
}
|
|
113
|
-
}
|
|
114
103
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
nutritionalFields
|
|
119
|
-
|
|
120
|
-
|
|
104
|
+
const ratio = newServingSize / oldServingSize;
|
|
105
|
+
|
|
106
|
+
let scaledFields: { [key: string]: number } | null = null;
|
|
107
|
+
if (ingredient.nutritionalFields) {
|
|
108
|
+
scaledFields = {};
|
|
109
|
+
for (const [key, value] of Object.entries(ingredient.nutritionalFields)) {
|
|
110
|
+
scaledFields[key] = value * ratio;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
121
113
|
|
|
114
|
+
return {
|
|
115
|
+
...ingredient,
|
|
116
|
+
servingSize: newServingSize,
|
|
117
|
+
nutritionalFields: scaledFields,
|
|
118
|
+
};
|
|
119
|
+
},
|
|
120
|
+
};
|