@kosdev-code/kos-freestyle-sdk 2.0.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.
- package/extension-utils-D_CXSnlW.cjs +2 -0
- package/extension-utils-D_CXSnlW.cjs.map +1 -0
- package/extension-utils-uYGl3TGm.js +201 -0
- package/extension-utils-uYGl3TGm.js.map +1 -0
- package/freestyle-registration-manager-pbtzJUqS.js +765 -0
- package/freestyle-registration-manager-pbtzJUqS.js.map +1 -0
- package/freestyle-registration-manager-yxRMbjlE.cjs +2 -0
- package/freestyle-registration-manager-yxRMbjlE.cjs.map +1 -0
- package/index.cjs +2 -0
- package/index.cjs.map +1 -0
- package/index.d.ts +3 -0
- package/index.d.ts.map +1 -0
- package/index.js +33 -0
- package/index.js.map +1 -0
- package/models/constants/index.d.ts +2 -0
- package/models/constants/index.d.ts.map +1 -0
- package/models/index.d.ts +6 -0
- package/models/index.d.ts.map +1 -0
- package/models/models/agitation-required-trouble/agitation-required-trouble-model.d.ts +23 -0
- package/models/models/agitation-required-trouble/agitation-required-trouble-model.d.ts.map +1 -0
- package/models/models/agitation-required-trouble/agitation-required-trouble-registration.d.ts +87 -0
- package/models/models/agitation-required-trouble/agitation-required-trouble-registration.d.ts.map +1 -0
- package/models/models/agitation-required-trouble/index.d.ts +4 -0
- package/models/models/agitation-required-trouble/index.d.ts.map +1 -0
- package/models/models/agitation-required-trouble/types/index.d.ts +8 -0
- package/models/models/carb-agitator/carb-agitator-model.d.ts +14 -0
- package/models/models/carb-agitator/carb-agitator-model.d.ts.map +1 -0
- package/models/models/carb-agitator/carb-agitator-registration.d.ts +84 -0
- package/models/models/carb-agitator/carb-agitator-registration.d.ts.map +1 -0
- package/models/models/carb-agitator/index.d.ts +3 -0
- package/models/models/carb-agitator/index.d.ts.map +1 -0
- package/models/models/carb-agitator/types/index.d.ts +14 -0
- package/models/models/cartridge-agitator/cartridge-agitator-container-model.d.ts +20 -0
- package/models/models/cartridge-agitator/cartridge-agitator-container-model.d.ts.map +1 -0
- package/models/models/cartridge-agitator/cartridge-agitator-container-registration.d.ts +87 -0
- package/models/models/cartridge-agitator/cartridge-agitator-container-registration.d.ts.map +1 -0
- package/models/models/cartridge-agitator/cartridge-agitator-model.d.ts +27 -0
- package/models/models/cartridge-agitator/cartridge-agitator-model.d.ts.map +1 -0
- package/models/models/cartridge-agitator/cartridge-agitator-registration.d.ts +87 -0
- package/models/models/cartridge-agitator/cartridge-agitator-registration.d.ts.map +1 -0
- package/models/models/cartridge-agitator/index.d.ts +6 -0
- package/models/models/cartridge-agitator/index.d.ts.map +1 -0
- package/models/models/cartridge-agitator/services/cartridge-agitator-services.d.ts +8 -0
- package/models/models/cartridge-agitator/services/cartridge-agitator-services.d.ts.map +1 -0
- package/models/models/cartridge-agitator/types/index.d.ts +14 -0
- package/models/models/freestyle-assembly/freestyle-assembly-model.d.ts +38 -0
- package/models/models/freestyle-assembly/freestyle-assembly-model.d.ts.map +1 -0
- package/models/models/freestyle-assembly/freestyle-assembly-registration.d.ts +89 -0
- package/models/models/freestyle-assembly/freestyle-assembly-registration.d.ts.map +1 -0
- package/models/models/freestyle-assembly/index.d.ts +4 -0
- package/models/models/freestyle-assembly/index.d.ts.map +1 -0
- package/models/models/freestyle-assembly/types/index.d.ts +8 -0
- package/models/models/freestyle-holder/freestyle-holder-model.d.ts +19 -0
- package/models/models/freestyle-holder/freestyle-holder-model.d.ts.map +1 -0
- package/models/models/freestyle-holder/freestyle-holder-registration.d.ts +87 -0
- package/models/models/freestyle-holder/freestyle-holder-registration.d.ts.map +1 -0
- package/models/models/freestyle-holder/index.d.ts +4 -0
- package/models/models/freestyle-holder/index.d.ts.map +1 -0
- package/models/models/freestyle-holder/types/index.d.ts +8 -0
- package/models/models/freestyle-nozzle/freestyle-nozzle-model.d.ts +21 -0
- package/models/models/freestyle-nozzle/freestyle-nozzle-model.d.ts.map +1 -0
- package/models/models/freestyle-nozzle/freestyle-nozzle-registration.d.ts +87 -0
- package/models/models/freestyle-nozzle/freestyle-nozzle-registration.d.ts.map +1 -0
- package/models/models/freestyle-nozzle/index.d.ts +5 -0
- package/models/models/freestyle-nozzle/index.d.ts.map +1 -0
- package/models/models/freestyle-nozzle/services/freestyle-nozzle-services.d.ts +32 -0
- package/models/models/freestyle-nozzle/services/freestyle-nozzle-services.d.ts.map +1 -0
- package/models/models/freestyle-nozzle/services/index.d.ts +2 -0
- package/models/models/freestyle-nozzle/services/index.d.ts.map +1 -0
- package/models/models/freestyle-nozzle/types/index.d.ts +8 -0
- package/models/models/freestyle-pump/freestyle-pump-model.d.ts +14 -0
- package/models/models/freestyle-pump/freestyle-pump-model.d.ts.map +1 -0
- package/models/models/freestyle-pump/freestyle-pump-registration.d.ts +87 -0
- package/models/models/freestyle-pump/freestyle-pump-registration.d.ts.map +1 -0
- package/models/models/freestyle-pump/index.d.ts +5 -0
- package/models/models/freestyle-pump/index.d.ts.map +1 -0
- package/models/models/freestyle-pump/services/freestyle-pump-services.d.ts +10 -0
- package/models/models/freestyle-pump/services/freestyle-pump-services.d.ts.map +1 -0
- package/models/models/freestyle-pump/services/index.d.ts +2 -0
- package/models/models/freestyle-pump/services/index.d.ts.map +1 -0
- package/models/models/freestyle-pump/types/index.d.ts +5 -0
- package/models/models/ice-agitator/ice-agitator-model.d.ts +28 -0
- package/models/models/ice-agitator/ice-agitator-model.d.ts.map +1 -0
- package/models/models/ice-agitator/ice-agitator-registration.d.ts +84 -0
- package/models/models/ice-agitator/ice-agitator-registration.d.ts.map +1 -0
- package/models/models/ice-agitator/index.d.ts +3 -0
- package/models/models/ice-agitator/index.d.ts.map +1 -0
- package/models/models/ice-agitator/services/ice-agitator-services.d.ts +8 -0
- package/models/models/ice-agitator/services/ice-agitator-services.d.ts.map +1 -0
- package/models/models/ice-agitator/services/index.d.ts +2 -0
- package/models/models/ice-agitator/services/index.d.ts.map +1 -0
- package/models/models/ice-agitator/types/index.d.ts +28 -0
- package/models/models/index.d.ts +11 -0
- package/models/models/index.d.ts.map +1 -0
- package/models/models/types/assembly.d.ts +16 -0
- package/models/models/types/assembly.d.ts.map +1 -0
- package/models/models/types/ingredients.d.ts +33 -0
- package/models/models/types/ingredients.d.ts.map +1 -0
- package/models/models/types/pumps.d.ts +6 -0
- package/models/models/types/pumps.d.ts.map +1 -0
- package/models/utils/extension-utils.d.ts +37 -0
- package/models/utils/extension-utils.d.ts.map +1 -0
- package/models/utils/extensions/assembly/assembly-data-mapper.d.ts +19 -0
- package/models/utils/extensions/assembly/assembly-data-mapper.d.ts.map +1 -0
- package/models/utils/extensions/assembly/types.d.ts +130 -0
- package/models/utils/extensions/assembly/types.d.ts.map +1 -0
- package/models/utils/extensions/availability/freestyle-loader.d.ts +31 -0
- package/models/utils/extensions/availability/freestyle-loader.d.ts.map +1 -0
- package/models/utils/extensions/availability/freestyle-mapper.d.ts +14 -0
- package/models/utils/extensions/availability/freestyle-mapper.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/assets.d.ts +10 -0
- package/models/utils/extensions/availability/middleware/assets.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/beverage-screen.d.ts +14 -0
- package/models/utils/extensions/availability/middleware/beverage-screen.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/beverages.d.ts +10 -0
- package/models/utils/extensions/availability/middleware/beverages.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/brand-screen.d.ts +5 -0
- package/models/utils/extensions/availability/middleware/brand-screen.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/brands.d.ts +10 -0
- package/models/utils/extensions/availability/middleware/brands.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/copy-input.d.ts +4 -0
- package/models/utils/extensions/availability/middleware/copy-input.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/flavors.d.ts +10 -0
- package/models/utils/extensions/availability/middleware/flavors.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/nutrition.d.ts +10 -0
- package/models/utils/extensions/availability/middleware/nutrition.d.ts.map +1 -0
- package/models/utils/extensions/availability/middleware/related-brands.d.ts +14 -0
- package/models/utils/extensions/availability/middleware/related-brands.d.ts.map +1 -0
- package/models/utils/extensions/availability/types.d.ts +251 -0
- package/models/utils/extensions/availability/types.d.ts.map +1 -0
- package/models/utils/extensions/availability/util/locate-brand.d.ts +2 -0
- package/models/utils/extensions/availability/util/locate-brand.d.ts.map +1 -0
- package/models/utils/extensions/availability/util/process-related-brand.d.ts +4 -0
- package/models/utils/extensions/availability/util/process-related-brand.d.ts.map +1 -0
- package/models/utils/extensions/ingredient/index.d.ts +2 -0
- package/models/utils/extensions/ingredient/index.d.ts.map +1 -0
- package/models/utils/extensions/ingredient/model-extension.d.ts +7 -0
- package/models/utils/extensions/ingredient/model-extension.d.ts.map +1 -0
- package/models/utils/extensions/pourable/select-pourable-mapper.d.ts +6 -0
- package/models/utils/extensions/pourable/select-pourable-mapper.d.ts.map +1 -0
- package/models/utils/freestyle-registration-manager.d.ts +39 -0
- package/models/utils/freestyle-registration-manager.d.ts.map +1 -0
- package/models/utils/index.d.ts +5 -0
- package/models/utils/index.d.ts.map +1 -0
- package/models.cjs +2 -0
- package/models.cjs.map +1 -0
- package/models.d.ts +1 -0
- package/models.js +25 -0
- package/models.js.map +1 -0
- package/package.json +37 -0
- package/ui/contexts/index.d.ts +2 -0
- package/ui/contexts/index.d.ts.map +1 -0
- package/ui/hooks/freestyle-assembly/index.d.ts +2 -0
- package/ui/hooks/freestyle-assembly/index.d.ts.map +1 -0
- package/ui/hooks/freestyle-assembly/use-freestyle-assembly.d.ts +4 -0
- package/ui/hooks/freestyle-assembly/use-freestyle-assembly.d.ts.map +1 -0
- package/ui/hooks/freestyle-nozzle/index.d.ts +2 -0
- package/ui/hooks/freestyle-nozzle/index.d.ts.map +1 -0
- package/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.d.ts +4 -0
- package/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.d.ts.map +1 -0
- package/ui/hooks/ice-agitator/index.d.ts +3 -0
- package/ui/hooks/ice-agitator/index.d.ts.map +1 -0
- package/ui/hooks/ice-agitator/use-ice-agitator.d.ts +14 -0
- package/ui/hooks/ice-agitator/use-ice-agitator.d.ts.map +1 -0
- package/ui/hooks/ice-agitator/with-ice-agitator.d.ts +7 -0
- package/ui/hooks/ice-agitator/with-ice-agitator.d.ts.map +1 -0
- package/ui/hooks/index.d.ts +5 -0
- package/ui/hooks/index.d.ts.map +1 -0
- package/ui/hooks/nutrition/index.d.ts +2 -0
- package/ui/hooks/nutrition/index.d.ts.map +1 -0
- package/ui/hooks/nutrition/use-nutrition-info.d.ts +4 -0
- package/ui/hooks/nutrition/use-nutrition-info.d.ts.map +1 -0
- package/ui/index.d.ts +3 -0
- package/ui/index.d.ts.map +1 -0
- package/ui.cjs +2 -0
- package/ui.cjs.map +1 -0
- package/ui.d.ts +1 -0
- package/ui.js +14 -0
- package/ui.js.map +1 -0
- package/use-nutrition-info-CGrmEGIR.cjs +2 -0
- package/use-nutrition-info-CGrmEGIR.cjs.map +1 -0
- package/use-nutrition-info-D-wbfIlj.js +52 -0
- package/use-nutrition-info-D-wbfIlj.js.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-nutrition-info-CGrmEGIR.cjs","sources":["../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/freestyle-assembly/use-freestyle-assembly.ts","../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.ts","../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/ice-agitator/use-ice-agitator.ts","../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/ice-agitator/with-ice-agitator.tsx","../../../../packages/sdk/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":["useFreestyleAssemblyContext","model","useAssemblyContext","getKosCompanionModel","FreestyleAssembly","useFreestyleNozzleContext","useNozzleContext","FreestyleNozzle","useIceAgitator","id","modelId","useKosModel","IceAgitator","withIceAgitator","WrappedComponent","props","status","KosModelLoader","jsx","arraysEqual","a","b","i","useNutritionInfo","cupSizes","freestyleNozzle","nutritionInfo","setNutritionInfo","useState","prevCupSizesRef","useRef","useEffect","disposer","kosAutoEffect"],"mappings":"yNAOaA,EACX,IAAqC,CAC7B,KAAA,CAAE,MAAAC,GAAUC,EAAAA,qBASX,OAPmBD,EACtBE,EAAA,qBACEF,EACAG,EAAAA,kBAAkB,IAEpB,EAAA,IAGN,ECfWC,EAA4B,IAAmC,CACpE,KAAA,CAAE,MAAAJ,GAAUK,EAAAA,mBAMX,OAJiBL,EACpBE,EAAA,qBAA2CF,EAAOM,kBAAgB,IAAI,EACtE,IAGN,ECTaC,EAAkBC,GAAe,CAC5C,MAAMC,EAAUD,EAOT,OANQE,EAAAA,YAA8B,CAC3C,QAAAD,EACA,UAAWE,EAAY,YAAA,KACvB,QAAS,CAAC,CAAA,CACX,CAGH,ECLO,SAASC,EACdC,EACA,CACO,OAACL,GAAgBM,GAA2C,CACjE,KAAM,CAAE,MAAAd,EAAO,OAAAe,EAAQ,eAAAC,CAAe,EAAIT,EAAeC,CAAE,EAGzD,OAAAS,EAAA,IAACD,EAAgB,CAAA,GAAGD,EAClB,SAAAE,EAAA,IAACJ,GAAkB,GAAIC,EAAa,YAAad,CAAO,CAAA,CAC1D,CAAA,CAAA,CAGN,CCZA,MAAMkB,EAAc,CAACC,EAAaC,IAAyB,CACrD,GAAAD,EAAE,SAAWC,EAAE,OAAe,MAAA,GAClC,QAASC,EAAI,EAAGA,EAAIF,EAAE,OAAQE,IAC5B,GAAIF,EAAEE,CAAC,IAAMD,EAAEC,CAAC,EAAU,MAAA,GAErB,MAAA,EACT,EAEaC,EAAoBC,GAAuB,CACtD,MAAMC,EAAkBpB,IAClB,CAACqB,EAAeC,CAAgB,EACpCC,EAAiE,SAAA,EAG7DC,EAAkBC,SAAiB,CAAA,CAAE,EAE3CC,OAAAA,EAAAA,UAAU,IAAM,CACVN,GAAmB,CAACN,EAAYK,EAAUK,EAAgB,OAAO,IACnEJ,EAAgB,SAAWD,EAC3BK,EAAgB,QAAUL,GAEtB,MAAAQ,EAAWC,EAAAA,cAAc,IAAM,CAC/BR,GACFE,EAAiBF,EAAgB,aAAa,CAChD,CACD,EAED,MAAO,IAAM,CACFO,GAAA,CACX,EACC,CAACR,EAAUC,CAAe,CAAC,EAEvBC,CACT"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { useAssemblyContext as f, useNozzleContext as i } from "@kosdev-code/kos-dispense-sdk";
|
|
2
|
+
import { getKosCompanionModel as u, useKosModel as c, kosAutoEffect as m } from "@kosdev-code/kos-ui-sdk";
|
|
3
|
+
import { F as a, e as y, I as d } from "./freestyle-registration-manager-pbtzJUqS.js";
|
|
4
|
+
import { jsx as l } from "@emotion/react/jsx-runtime";
|
|
5
|
+
import { useState as p, useRef as z, useEffect as A } from "react";
|
|
6
|
+
const E = () => {
|
|
7
|
+
const { model: e } = f();
|
|
8
|
+
return e ? u(
|
|
9
|
+
e,
|
|
10
|
+
a.type
|
|
11
|
+
) : null;
|
|
12
|
+
}, I = () => {
|
|
13
|
+
const { model: e } = i();
|
|
14
|
+
return e ? u(e, y.type) : null;
|
|
15
|
+
}, g = (e) => c({
|
|
16
|
+
modelId: e,
|
|
17
|
+
modelType: d.type,
|
|
18
|
+
options: {}
|
|
19
|
+
});
|
|
20
|
+
function K(e) {
|
|
21
|
+
return (t) => (o) => {
|
|
22
|
+
const { model: r, status: s, KosModelLoader: n } = g(t);
|
|
23
|
+
return /* @__PURE__ */ l(n, { ...s, children: /* @__PURE__ */ l(e, { ...o, iceAgitator: r }) });
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
const N = (e, t) => {
|
|
27
|
+
if (e.length !== t.length)
|
|
28
|
+
return !1;
|
|
29
|
+
for (let o = 0; o < e.length; o++)
|
|
30
|
+
if (e[o] !== t[o])
|
|
31
|
+
return !1;
|
|
32
|
+
return !0;
|
|
33
|
+
}, M = (e) => {
|
|
34
|
+
const t = I(), [o, r] = p(), s = z([]);
|
|
35
|
+
return A(() => {
|
|
36
|
+
t && !N(e, s.current) && (t.cupSizes = e, s.current = e);
|
|
37
|
+
const n = m(() => {
|
|
38
|
+
t && r(t.nutritionInfo);
|
|
39
|
+
});
|
|
40
|
+
return () => {
|
|
41
|
+
n();
|
|
42
|
+
};
|
|
43
|
+
}, [e, t]), o;
|
|
44
|
+
};
|
|
45
|
+
export {
|
|
46
|
+
I as a,
|
|
47
|
+
g as b,
|
|
48
|
+
M as c,
|
|
49
|
+
E as u,
|
|
50
|
+
K as w
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=use-nutrition-info-D-wbfIlj.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-nutrition-info-D-wbfIlj.js","sources":["../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/freestyle-assembly/use-freestyle-assembly.ts","../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.ts","../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/ice-agitator/use-ice-agitator.ts","../../../../packages/sdk/kos-freestyle-sdk/src/ui/hooks/ice-agitator/with-ice-agitator.tsx","../../../../packages/sdk/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":["useFreestyleAssemblyContext","model","useAssemblyContext","getKosCompanionModel","FreestyleAssembly","useFreestyleNozzleContext","useNozzleContext","FreestyleNozzle","useIceAgitator","id","useKosModel","IceAgitator","withIceAgitator","WrappedComponent","props","status","KosModelLoader","jsx","arraysEqual","a","b","i","useNutritionInfo","cupSizes","freestyleNozzle","nutritionInfo","setNutritionInfo","useState","prevCupSizesRef","useRef","useEffect","disposer","kosAutoEffect"],"mappings":";;;;;AAOO,MAAMA,IACX,MAAqC;AAC7B,QAAA,EAAE,OAAAC,MAAUC;AASX,SAPmBD,IACtBE;AAAA,IACEF;AAAA,IACAG,EAAkB;AAAA,EAEpB,IAAA;AAGN,GCfWC,IAA4B,MAAmC;AACpE,QAAA,EAAE,OAAAJ,MAAUK;AAMX,SAJiBL,IACpBE,EAA2CF,GAAOM,EAAgB,IAAI,IACtE;AAGN,GCTaC,IAAiB,CAACC,MAEdC,EAA8B;AAAA,EAC3C,SAFcD;AAAA,EAGd,WAAWE,EAAY;AAAA,EACvB,SAAS,CAAC;AAAA,CACX;ACFI,SAASC,EACdC,GACA;AACO,SAAA,CAACJ,MAAe,CAACK,MAA2C;AACjE,UAAM,EAAE,OAAAb,GAAO,QAAAc,GAAQ,gBAAAC,EAAe,IAAIR,EAAeC,CAAE;AAGzD,WAAA,gBAAAQ,EAACD,GAAgB,EAAA,GAAGD,GAClB,UAAA,gBAAAE,EAACJ,KAAkB,GAAIC,GAAa,aAAab,EAAO,CAAA,EAC1D,CAAA;AAAA,EAAA;AAGN;ACZA,MAAMiB,IAAc,CAACC,GAAaC,MAAyB;AACrD,MAAAD,EAAE,WAAWC,EAAE;AAAe,WAAA;AAClC,WAASC,IAAI,GAAGA,IAAIF,EAAE,QAAQE;AAC5B,QAAIF,EAAEE,CAAC,MAAMD,EAAEC,CAAC;AAAU,aAAA;AAErB,SAAA;AACT,GAEaC,IAAmB,CAACC,MAAuB;AACtD,QAAMC,IAAkBnB,KAClB,CAACoB,GAAeC,CAAgB,IACpCC,EAAiE,GAG7DC,IAAkBC,EAAiB,CAAA,CAAE;AAE3C,SAAAC,EAAU,MAAM;AACd,IAAIN,KAAmB,CAACN,EAAYK,GAAUK,EAAgB,OAAO,MACnEJ,EAAgB,WAAWD,GAC3BK,EAAgB,UAAUL;AAEtB,UAAAQ,IAAWC,EAAc,MAAM;AACnC,MAAIR,KACFE,EAAiBF,EAAgB,aAAa;AAAA,IAChD,CACD;AAED,WAAO,MAAM;AACF,MAAAO;IAAA;AAAA,EACX,GACC,CAACR,GAAUC,CAAe,CAAC,GAEvBC;AACT;"}
|