@kosdev-code/kos-freestyle-sdk 3.0.25 → 3.0.26

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/ui.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const useNutritionInfo = require("./use-nutrition-info-aDjHqQeW.cjs");
3
+ const useNutritionInfo = require("./use-nutrition-info-jT0h49sO.cjs");
4
4
  exports.useFreestyleAssemblyContext = useNutritionInfo.useFreestyleAssemblyContext;
5
5
  exports.useFreestyleNozzleContext = useNutritionInfo.useFreestyleNozzleContext;
6
6
  exports.useIceAgitator = useNutritionInfo.useIceAgitator;
package/ui.js CHANGED
@@ -1,4 +1,4 @@
1
- import { u, a, b, c, w } from "./use-nutrition-info-DaIOuGK6.js";
1
+ import { u, a, b, c, w } from "./use-nutrition-info-BCn3S1KP.js";
2
2
  export {
3
3
  u as useFreestyleAssemblyContext,
4
4
  a as useFreestyleNozzleContext,
@@ -1,6 +1,6 @@
1
1
  import { useAssemblyContext, useNozzleContext } from "@kosdev-code/kos-dispense-sdk";
2
2
  import { getKosCompanionModel, useKosModel, kosAutoEffect } from "@kosdev-code/kos-ui-sdk";
3
- import { h as FreestyleAssembly, j as FreestyleNozzle, I as IceAgitator } from "./service-eFbVjaFu.js";
3
+ import { h as FreestyleAssembly, j as FreestyleNozzle, I as IceAgitator } from "./service-BCeBcq6r.js";
4
4
  import { jsx } from "@emotion/react/jsx-runtime";
5
5
  import { useState, useRef, useEffect } from "react";
6
6
  const useFreestyleAssemblyContext = () => {
@@ -65,4 +65,4 @@ export {
65
65
  useFreestyleAssemblyContext as u,
66
66
  withIceAgitator as w
67
67
  };
68
- //# sourceMappingURL=use-nutrition-info-DaIOuGK6.js.map
68
+ //# sourceMappingURL=use-nutrition-info-BCn3S1KP.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-nutrition-info-DaIOuGK6.js","sources":["../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-assembly/use-freestyle-assembly.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/use-ice-agitator.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/with-ice-agitator.tsx","../../../packages/kos-freestyle-sdk/src/ui/hooks/nutrition/use-nutrition-info.ts"],"sourcesContent":["import { useAssemblyContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n FreestyleAssembly,\n type FreestyleAssemblyModel,\n} from \"../../../models\";\n\nexport const useFreestyleAssemblyContext =\n (): FreestyleAssemblyModel | null => {\n const { model } = useAssemblyContext();\n\n const freestyleAssembly = model\n ? getKosCompanionModel<FreestyleAssemblyModel>(\n model,\n FreestyleAssembly.type\n )\n : null;\n\n return freestyleAssembly;\n };\n","import { useNozzleContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { FreestyleNozzle, type FreestyleNozzleModel } from \"../../../models\";\n\nexport const useFreestyleNozzleContext = (): FreestyleNozzleModel | null => {\n const { model } = useNozzleContext();\n\n const freestyleNozzle = model\n ? getKosCompanionModel<FreestyleNozzleModel>(model, FreestyleNozzle.type)\n : null;\n\n return freestyleNozzle;\n};\n","import { useKosModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { IceAgitator, type IceAgitatorModel } from \"../../../models\";\n\nexport const useIceAgitator = (id: string) => {\n const modelId = id;\n const result = useKosModel<IceAgitatorModel>({\n modelId,\n modelType: IceAgitator.type,\n options: {},\n });\n\n return result;\n};\n","import { IceAgitatorModel } from \"../../../models\";\nimport { useIceAgitator } from \"./use-ice-agitator\";\n\nexport interface IceAgitatorProps {\n iceAgitator: IceAgitatorModel;\n}\n\nexport function withIceAgitator<T extends IceAgitatorProps = IceAgitatorProps>(\n WrappedComponent: React.ComponentType<T>\n) {\n return (id: string) => (props: Omit<T, keyof IceAgitatorProps>) => {\n const { model, status, KosModelLoader } = useIceAgitator(id);\n\n return (\n <KosModelLoader {...status}>\n <WrappedComponent {...(props as T)} iceAgitator={model} />\n </KosModelLoader>\n );\n };\n}\n","import { kosAutoEffect } from \"@kosdev-code/kos-ui-sdk\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type { FreestyleNozzleServices } from \"../../../models\";\nimport { useFreestyleNozzleContext } from \"../freestyle-nozzle\";\n\n// Custom function to check deep equality of two arrays\nconst arraysEqual = (a: number[], b: number[]): boolean => {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n};\n\nexport const useNutritionInfo = (cupSizes: number[]) => {\n const freestyleNozzle = useFreestyleNozzleContext();\n const [nutritionInfo, setNutritionInfo] =\n useState<FreestyleNozzleServices.FreestyleNutritionInfoResponse>();\n\n // Use a ref to keep track of the previous cupSizes value\n const prevCupSizesRef = useRef<number[]>([]);\n\n useEffect(() => {\n if (freestyleNozzle && !arraysEqual(cupSizes, prevCupSizesRef.current)) {\n freestyleNozzle.cupSizes = cupSizes;\n prevCupSizesRef.current = cupSizes;\n }\n const disposer = kosAutoEffect(() => {\n if (freestyleNozzle) {\n setNutritionInfo(freestyleNozzle.nutritionInfo);\n }\n });\n\n return () => {\n disposer();\n };\n }, [cupSizes, freestyleNozzle]);\n\n return nutritionInfo;\n};\n"],"names":[],"mappings":";;;;;AAOO,MAAM,8BACX,MAAqC;AACnC,QAAM,EAAE,MAAA,IAAU,mBAAA;AAElB,QAAM,oBAAoB,QACtB;AAAA,IACE;AAAA,IACA,kBAAkB;AAAA,EAAA,IAEpB;AAEJ,SAAO;AACT;ACfK,MAAM,4BAA4B,MAAmC;AAC1E,QAAM,EAAE,MAAA,IAAU,iBAAA;AAElB,QAAM,kBAAkB,QACpB,qBAA2C,OAAO,gBAAgB,IAAI,IACtE;AAEJ,SAAO;AACT;ACTO,MAAM,iBAAiB,CAAC,OAAe;AAC5C,QAAM,UAAU;AAChB,QAAM,SAAS,YAA8B;AAAA,IAC3C;AAAA,IACA,WAAW,YAAY;AAAA,IACvB,SAAS,CAAA;AAAA,EAAC,CACX;AAED,SAAO;AACT;ACLO,SAAS,gBACd,kBACA;AACA,SAAO,CAAC,OAAe,CAAC,UAA2C;AACjE,UAAM,EAAE,OAAO,QAAQ,eAAA,IAAmB,eAAe,EAAE;AAE3D,WACE,oBAAC,gBAAA,EAAgB,GAAG,QAClB,UAAA,oBAAC,oBAAkB,GAAI,OAAa,aAAa,MAAA,CAAO,EAAA,CAC1D;AAAA,EAEJ;AACF;ACZA,MAAM,cAAc,CAAC,GAAa,MAAyB;AACzD,MAAI,EAAE,WAAW,EAAE,OAAQ,QAAO;AAClC,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AACjC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,EAAG,QAAO;AAAA,EAC5B;AACA,SAAO;AACT;AAEO,MAAM,mBAAmB,CAAC,aAAuB;AACtD,QAAM,kBAAkB,0BAAA;AACxB,QAAM,CAAC,eAAe,gBAAgB,IACpC,SAAA;AAGF,QAAM,kBAAkB,OAAiB,EAAE;AAE3C,YAAU,MAAM;AACd,QAAI,mBAAmB,CAAC,YAAY,UAAU,gBAAgB,OAAO,GAAG;AACtE,sBAAgB,WAAW;AAC3B,sBAAgB,UAAU;AAAA,IAC5B;AACA,UAAM,WAAW,cAAc,MAAM;AACnC,UAAI,iBAAiB;AACnB,yBAAiB,gBAAgB,aAAa;AAAA,MAChD;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX,eAAA;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,eAAe,CAAC;AAE9B,SAAO;AACT;"}
1
+ {"version":3,"file":"use-nutrition-info-BCn3S1KP.js","sources":["../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-assembly/use-freestyle-assembly.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/use-ice-agitator.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/with-ice-agitator.tsx","../../../packages/kos-freestyle-sdk/src/ui/hooks/nutrition/use-nutrition-info.ts"],"sourcesContent":["import { useAssemblyContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n FreestyleAssembly,\n type FreestyleAssemblyModel,\n} from \"../../../models\";\n\nexport const useFreestyleAssemblyContext =\n (): FreestyleAssemblyModel | null => {\n const { model } = useAssemblyContext();\n\n const freestyleAssembly = model\n ? getKosCompanionModel<FreestyleAssemblyModel>(\n model,\n FreestyleAssembly.type\n )\n : null;\n\n return freestyleAssembly;\n };\n","import { useNozzleContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { FreestyleNozzle, type FreestyleNozzleModel } from \"../../../models\";\n\nexport const useFreestyleNozzleContext = (): FreestyleNozzleModel | null => {\n const { model } = useNozzleContext();\n\n const freestyleNozzle = model\n ? getKosCompanionModel<FreestyleNozzleModel>(model, FreestyleNozzle.type)\n : null;\n\n return freestyleNozzle;\n};\n","import { useKosModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { IceAgitator, type IceAgitatorModel } from \"../../../models\";\n\nexport const useIceAgitator = (id: string) => {\n const modelId = id;\n const result = useKosModel<IceAgitatorModel>({\n modelId,\n modelType: IceAgitator.type,\n options: {},\n });\n\n return result;\n};\n","import { IceAgitatorModel } from \"../../../models\";\nimport { useIceAgitator } from \"./use-ice-agitator\";\n\nexport interface IceAgitatorProps {\n iceAgitator: IceAgitatorModel;\n}\n\nexport function withIceAgitator<T extends IceAgitatorProps = IceAgitatorProps>(\n WrappedComponent: React.ComponentType<T>\n) {\n return (id: string) => (props: Omit<T, keyof IceAgitatorProps>) => {\n const { model, status, KosModelLoader } = useIceAgitator(id);\n\n return (\n <KosModelLoader {...status}>\n <WrappedComponent {...(props as T)} iceAgitator={model} />\n </KosModelLoader>\n );\n };\n}\n","import { kosAutoEffect } from \"@kosdev-code/kos-ui-sdk\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type { FreestyleNozzleServices } from \"../../../models\";\nimport { useFreestyleNozzleContext } from \"../freestyle-nozzle\";\n\n// Custom function to check deep equality of two arrays\nconst arraysEqual = (a: number[], b: number[]): boolean => {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n};\n\nexport const useNutritionInfo = (cupSizes: number[]) => {\n const freestyleNozzle = useFreestyleNozzleContext();\n const [nutritionInfo, setNutritionInfo] =\n useState<FreestyleNozzleServices.FreestyleNutritionInfoResponse>();\n\n // Use a ref to keep track of the previous cupSizes value\n const prevCupSizesRef = useRef<number[]>([]);\n\n useEffect(() => {\n if (freestyleNozzle && !arraysEqual(cupSizes, prevCupSizesRef.current)) {\n freestyleNozzle.cupSizes = cupSizes;\n prevCupSizesRef.current = cupSizes;\n }\n const disposer = kosAutoEffect(() => {\n if (freestyleNozzle) {\n setNutritionInfo(freestyleNozzle.nutritionInfo);\n }\n });\n\n return () => {\n disposer();\n };\n }, [cupSizes, freestyleNozzle]);\n\n return nutritionInfo;\n};\n"],"names":[],"mappings":";;;;;AAOO,MAAM,8BACX,MAAqC;AACnC,QAAM,EAAE,MAAA,IAAU,mBAAA;AAElB,QAAM,oBAAoB,QACtB;AAAA,IACE;AAAA,IACA,kBAAkB;AAAA,EAAA,IAEpB;AAEJ,SAAO;AACT;ACfK,MAAM,4BAA4B,MAAmC;AAC1E,QAAM,EAAE,MAAA,IAAU,iBAAA;AAElB,QAAM,kBAAkB,QACpB,qBAA2C,OAAO,gBAAgB,IAAI,IACtE;AAEJ,SAAO;AACT;ACTO,MAAM,iBAAiB,CAAC,OAAe;AAC5C,QAAM,UAAU;AAChB,QAAM,SAAS,YAA8B;AAAA,IAC3C;AAAA,IACA,WAAW,YAAY;AAAA,IACvB,SAAS,CAAA;AAAA,EAAC,CACX;AAED,SAAO;AACT;ACLO,SAAS,gBACd,kBACA;AACA,SAAO,CAAC,OAAe,CAAC,UAA2C;AACjE,UAAM,EAAE,OAAO,QAAQ,eAAA,IAAmB,eAAe,EAAE;AAE3D,WACE,oBAAC,gBAAA,EAAgB,GAAG,QAClB,UAAA,oBAAC,oBAAkB,GAAI,OAAa,aAAa,MAAA,CAAO,EAAA,CAC1D;AAAA,EAEJ;AACF;ACZA,MAAM,cAAc,CAAC,GAAa,MAAyB;AACzD,MAAI,EAAE,WAAW,EAAE,OAAQ,QAAO;AAClC,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AACjC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,EAAG,QAAO;AAAA,EAC5B;AACA,SAAO;AACT;AAEO,MAAM,mBAAmB,CAAC,aAAuB;AACtD,QAAM,kBAAkB,0BAAA;AACxB,QAAM,CAAC,eAAe,gBAAgB,IACpC,SAAA;AAGF,QAAM,kBAAkB,OAAiB,EAAE;AAE3C,YAAU,MAAM;AACd,QAAI,mBAAmB,CAAC,YAAY,UAAU,gBAAgB,OAAO,GAAG;AACtE,sBAAgB,WAAW;AAC3B,sBAAgB,UAAU;AAAA,IAC5B;AACA,UAAM,WAAW,cAAc,MAAM;AACnC,UAAI,iBAAiB;AACnB,yBAAiB,gBAAgB,aAAa;AAAA,MAChD;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX,eAAA;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,eAAe,CAAC;AAE9B,SAAO;AACT;"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  const kosDispenseSdk = require("@kosdev-code/kos-dispense-sdk");
3
3
  const kosUiSdk = require("@kosdev-code/kos-ui-sdk");
4
- const service = require("./service-D4aX0z2P.cjs");
4
+ const service = require("./service-DP30iIee.cjs");
5
5
  const jsxRuntime = require("@emotion/react/jsx-runtime");
6
6
  const react = require("react");
7
7
  const useFreestyleAssemblyContext = () => {
@@ -64,4 +64,4 @@ exports.useFreestyleNozzleContext = useFreestyleNozzleContext;
64
64
  exports.useIceAgitator = useIceAgitator;
65
65
  exports.useNutritionInfo = useNutritionInfo;
66
66
  exports.withIceAgitator = withIceAgitator;
67
- //# sourceMappingURL=use-nutrition-info-aDjHqQeW.cjs.map
67
+ //# sourceMappingURL=use-nutrition-info-jT0h49sO.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-nutrition-info-aDjHqQeW.cjs","sources":["../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-assembly/use-freestyle-assembly.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/use-ice-agitator.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/with-ice-agitator.tsx","../../../packages/kos-freestyle-sdk/src/ui/hooks/nutrition/use-nutrition-info.ts"],"sourcesContent":["import { useAssemblyContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n FreestyleAssembly,\n type FreestyleAssemblyModel,\n} from \"../../../models\";\n\nexport const useFreestyleAssemblyContext =\n (): FreestyleAssemblyModel | null => {\n const { model } = useAssemblyContext();\n\n const freestyleAssembly = model\n ? getKosCompanionModel<FreestyleAssemblyModel>(\n model,\n FreestyleAssembly.type\n )\n : null;\n\n return freestyleAssembly;\n };\n","import { useNozzleContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { FreestyleNozzle, type FreestyleNozzleModel } from \"../../../models\";\n\nexport const useFreestyleNozzleContext = (): FreestyleNozzleModel | null => {\n const { model } = useNozzleContext();\n\n const freestyleNozzle = model\n ? getKosCompanionModel<FreestyleNozzleModel>(model, FreestyleNozzle.type)\n : null;\n\n return freestyleNozzle;\n};\n","import { useKosModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { IceAgitator, type IceAgitatorModel } from \"../../../models\";\n\nexport const useIceAgitator = (id: string) => {\n const modelId = id;\n const result = useKosModel<IceAgitatorModel>({\n modelId,\n modelType: IceAgitator.type,\n options: {},\n });\n\n return result;\n};\n","import { IceAgitatorModel } from \"../../../models\";\nimport { useIceAgitator } from \"./use-ice-agitator\";\n\nexport interface IceAgitatorProps {\n iceAgitator: IceAgitatorModel;\n}\n\nexport function withIceAgitator<T extends IceAgitatorProps = IceAgitatorProps>(\n WrappedComponent: React.ComponentType<T>\n) {\n return (id: string) => (props: Omit<T, keyof IceAgitatorProps>) => {\n const { model, status, KosModelLoader } = useIceAgitator(id);\n\n return (\n <KosModelLoader {...status}>\n <WrappedComponent {...(props as T)} iceAgitator={model} />\n </KosModelLoader>\n );\n };\n}\n","import { kosAutoEffect } from \"@kosdev-code/kos-ui-sdk\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type { FreestyleNozzleServices } from \"../../../models\";\nimport { useFreestyleNozzleContext } from \"../freestyle-nozzle\";\n\n// Custom function to check deep equality of two arrays\nconst arraysEqual = (a: number[], b: number[]): boolean => {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n};\n\nexport const useNutritionInfo = (cupSizes: number[]) => {\n const freestyleNozzle = useFreestyleNozzleContext();\n const [nutritionInfo, setNutritionInfo] =\n useState<FreestyleNozzleServices.FreestyleNutritionInfoResponse>();\n\n // Use a ref to keep track of the previous cupSizes value\n const prevCupSizesRef = useRef<number[]>([]);\n\n useEffect(() => {\n if (freestyleNozzle && !arraysEqual(cupSizes, prevCupSizesRef.current)) {\n freestyleNozzle.cupSizes = cupSizes;\n prevCupSizesRef.current = cupSizes;\n }\n const disposer = kosAutoEffect(() => {\n if (freestyleNozzle) {\n setNutritionInfo(freestyleNozzle.nutritionInfo);\n }\n });\n\n return () => {\n disposer();\n };\n }, [cupSizes, freestyleNozzle]);\n\n return nutritionInfo;\n};\n"],"names":["useAssemblyContext","getKosCompanionModel","FreestyleAssembly","useNozzleContext","FreestyleNozzle","useKosModel","IceAgitator","jsx","useState","useRef","useEffect","kosAutoEffect"],"mappings":";;;;;;AAOO,MAAM,8BACX,MAAqC;AACnC,QAAM,EAAE,MAAA,IAAUA,kCAAA;AAElB,QAAM,oBAAoB,QACtBC,SAAAA;AAAAA,IACE;AAAA,IACAC,0BAAkB;AAAA,EAAA,IAEpB;AAEJ,SAAO;AACT;ACfK,MAAM,4BAA4B,MAAmC;AAC1E,QAAM,EAAE,MAAA,IAAUC,gCAAA;AAElB,QAAM,kBAAkB,QACpBF,SAAAA,qBAA2C,OAAOG,QAAAA,gBAAgB,IAAI,IACtE;AAEJ,SAAO;AACT;ACTO,MAAM,iBAAiB,CAAC,OAAe;AAC5C,QAAM,UAAU;AAChB,QAAM,SAASC,SAAAA,YAA8B;AAAA,IAC3C;AAAA,IACA,WAAWC,QAAAA,YAAY;AAAA,IACvB,SAAS,CAAA;AAAA,EAAC,CACX;AAED,SAAO;AACT;ACLO,SAAS,gBACd,kBACA;AACA,SAAO,CAAC,OAAe,CAAC,UAA2C;AACjE,UAAM,EAAE,OAAO,QAAQ,eAAA,IAAmB,eAAe,EAAE;AAE3D,WACEC,2BAAAA,IAAC,gBAAA,EAAgB,GAAG,QAClB,UAAAA,2BAAAA,IAAC,oBAAkB,GAAI,OAAa,aAAa,MAAA,CAAO,EAAA,CAC1D;AAAA,EAEJ;AACF;ACZA,MAAM,cAAc,CAAC,GAAa,MAAyB;AACzD,MAAI,EAAE,WAAW,EAAE,OAAQ,QAAO;AAClC,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AACjC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,EAAG,QAAO;AAAA,EAC5B;AACA,SAAO;AACT;AAEO,MAAM,mBAAmB,CAAC,aAAuB;AACtD,QAAM,kBAAkB,0BAAA;AACxB,QAAM,CAAC,eAAe,gBAAgB,IACpCC,eAAA;AAGF,QAAM,kBAAkBC,MAAAA,OAAiB,EAAE;AAE3CC,QAAAA,UAAU,MAAM;AACd,QAAI,mBAAmB,CAAC,YAAY,UAAU,gBAAgB,OAAO,GAAG;AACtE,sBAAgB,WAAW;AAC3B,sBAAgB,UAAU;AAAA,IAC5B;AACA,UAAM,WAAWC,SAAAA,cAAc,MAAM;AACnC,UAAI,iBAAiB;AACnB,yBAAiB,gBAAgB,aAAa;AAAA,MAChD;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX,eAAA;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,eAAe,CAAC;AAE9B,SAAO;AACT;;;;;;"}
1
+ {"version":3,"file":"use-nutrition-info-jT0h49sO.cjs","sources":["../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-assembly/use-freestyle-assembly.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/use-ice-agitator.ts","../../../packages/kos-freestyle-sdk/src/ui/hooks/ice-agitator/with-ice-agitator.tsx","../../../packages/kos-freestyle-sdk/src/ui/hooks/nutrition/use-nutrition-info.ts"],"sourcesContent":["import { useAssemblyContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n FreestyleAssembly,\n type FreestyleAssemblyModel,\n} from \"../../../models\";\n\nexport const useFreestyleAssemblyContext =\n (): FreestyleAssemblyModel | null => {\n const { model } = useAssemblyContext();\n\n const freestyleAssembly = model\n ? getKosCompanionModel<FreestyleAssemblyModel>(\n model,\n FreestyleAssembly.type\n )\n : null;\n\n return freestyleAssembly;\n };\n","import { useNozzleContext } from \"@kosdev-code/kos-dispense-sdk\";\nimport { getKosCompanionModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { FreestyleNozzle, type FreestyleNozzleModel } from \"../../../models\";\n\nexport const useFreestyleNozzleContext = (): FreestyleNozzleModel | null => {\n const { model } = useNozzleContext();\n\n const freestyleNozzle = model\n ? getKosCompanionModel<FreestyleNozzleModel>(model, FreestyleNozzle.type)\n : null;\n\n return freestyleNozzle;\n};\n","import { useKosModel } from \"@kosdev-code/kos-ui-sdk\";\nimport { IceAgitator, type IceAgitatorModel } from \"../../../models\";\n\nexport const useIceAgitator = (id: string) => {\n const modelId = id;\n const result = useKosModel<IceAgitatorModel>({\n modelId,\n modelType: IceAgitator.type,\n options: {},\n });\n\n return result;\n};\n","import { IceAgitatorModel } from \"../../../models\";\nimport { useIceAgitator } from \"./use-ice-agitator\";\n\nexport interface IceAgitatorProps {\n iceAgitator: IceAgitatorModel;\n}\n\nexport function withIceAgitator<T extends IceAgitatorProps = IceAgitatorProps>(\n WrappedComponent: React.ComponentType<T>\n) {\n return (id: string) => (props: Omit<T, keyof IceAgitatorProps>) => {\n const { model, status, KosModelLoader } = useIceAgitator(id);\n\n return (\n <KosModelLoader {...status}>\n <WrappedComponent {...(props as T)} iceAgitator={model} />\n </KosModelLoader>\n );\n };\n}\n","import { kosAutoEffect } from \"@kosdev-code/kos-ui-sdk\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport type { FreestyleNozzleServices } from \"../../../models\";\nimport { useFreestyleNozzleContext } from \"../freestyle-nozzle\";\n\n// Custom function to check deep equality of two arrays\nconst arraysEqual = (a: number[], b: number[]): boolean => {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n};\n\nexport const useNutritionInfo = (cupSizes: number[]) => {\n const freestyleNozzle = useFreestyleNozzleContext();\n const [nutritionInfo, setNutritionInfo] =\n useState<FreestyleNozzleServices.FreestyleNutritionInfoResponse>();\n\n // Use a ref to keep track of the previous cupSizes value\n const prevCupSizesRef = useRef<number[]>([]);\n\n useEffect(() => {\n if (freestyleNozzle && !arraysEqual(cupSizes, prevCupSizesRef.current)) {\n freestyleNozzle.cupSizes = cupSizes;\n prevCupSizesRef.current = cupSizes;\n }\n const disposer = kosAutoEffect(() => {\n if (freestyleNozzle) {\n setNutritionInfo(freestyleNozzle.nutritionInfo);\n }\n });\n\n return () => {\n disposer();\n };\n }, [cupSizes, freestyleNozzle]);\n\n return nutritionInfo;\n};\n"],"names":["useAssemblyContext","getKosCompanionModel","FreestyleAssembly","useNozzleContext","FreestyleNozzle","useKosModel","IceAgitator","jsx","useState","useRef","useEffect","kosAutoEffect"],"mappings":";;;;;;AAOO,MAAM,8BACX,MAAqC;AACnC,QAAM,EAAE,MAAA,IAAUA,kCAAA;AAElB,QAAM,oBAAoB,QACtBC,SAAAA;AAAAA,IACE;AAAA,IACAC,0BAAkB;AAAA,EAAA,IAEpB;AAEJ,SAAO;AACT;ACfK,MAAM,4BAA4B,MAAmC;AAC1E,QAAM,EAAE,MAAA,IAAUC,gCAAA;AAElB,QAAM,kBAAkB,QACpBF,SAAAA,qBAA2C,OAAOG,QAAAA,gBAAgB,IAAI,IACtE;AAEJ,SAAO;AACT;ACTO,MAAM,iBAAiB,CAAC,OAAe;AAC5C,QAAM,UAAU;AAChB,QAAM,SAASC,SAAAA,YAA8B;AAAA,IAC3C;AAAA,IACA,WAAWC,QAAAA,YAAY;AAAA,IACvB,SAAS,CAAA;AAAA,EAAC,CACX;AAED,SAAO;AACT;ACLO,SAAS,gBACd,kBACA;AACA,SAAO,CAAC,OAAe,CAAC,UAA2C;AACjE,UAAM,EAAE,OAAO,QAAQ,eAAA,IAAmB,eAAe,EAAE;AAE3D,WACEC,2BAAAA,IAAC,gBAAA,EAAgB,GAAG,QAClB,UAAAA,2BAAAA,IAAC,oBAAkB,GAAI,OAAa,aAAa,MAAA,CAAO,EAAA,CAC1D;AAAA,EAEJ;AACF;ACZA,MAAM,cAAc,CAAC,GAAa,MAAyB;AACzD,MAAI,EAAE,WAAW,EAAE,OAAQ,QAAO;AAClC,WAAS,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK;AACjC,QAAI,EAAE,CAAC,MAAM,EAAE,CAAC,EAAG,QAAO;AAAA,EAC5B;AACA,SAAO;AACT;AAEO,MAAM,mBAAmB,CAAC,aAAuB;AACtD,QAAM,kBAAkB,0BAAA;AACxB,QAAM,CAAC,eAAe,gBAAgB,IACpCC,eAAA;AAGF,QAAM,kBAAkBC,MAAAA,OAAiB,EAAE;AAE3CC,QAAAA,UAAU,MAAM;AACd,QAAI,mBAAmB,CAAC,YAAY,UAAU,gBAAgB,OAAO,GAAG;AACtE,sBAAgB,WAAW;AAC3B,sBAAgB,UAAU;AAAA,IAC5B;AACA,UAAM,WAAWC,SAAAA,cAAc,MAAM;AACnC,UAAI,iBAAiB;AACnB,yBAAiB,gBAAgB,aAAa;AAAA,MAChD;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX,eAAA;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,eAAe,CAAC;AAE9B,SAAO;AACT;;;;;;"}