@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.
Files changed (183) hide show
  1. package/extension-utils-D_CXSnlW.cjs +2 -0
  2. package/extension-utils-D_CXSnlW.cjs.map +1 -0
  3. package/extension-utils-uYGl3TGm.js +201 -0
  4. package/extension-utils-uYGl3TGm.js.map +1 -0
  5. package/freestyle-registration-manager-pbtzJUqS.js +765 -0
  6. package/freestyle-registration-manager-pbtzJUqS.js.map +1 -0
  7. package/freestyle-registration-manager-yxRMbjlE.cjs +2 -0
  8. package/freestyle-registration-manager-yxRMbjlE.cjs.map +1 -0
  9. package/index.cjs +2 -0
  10. package/index.cjs.map +1 -0
  11. package/index.d.ts +3 -0
  12. package/index.d.ts.map +1 -0
  13. package/index.js +33 -0
  14. package/index.js.map +1 -0
  15. package/models/constants/index.d.ts +2 -0
  16. package/models/constants/index.d.ts.map +1 -0
  17. package/models/index.d.ts +6 -0
  18. package/models/index.d.ts.map +1 -0
  19. package/models/models/agitation-required-trouble/agitation-required-trouble-model.d.ts +23 -0
  20. package/models/models/agitation-required-trouble/agitation-required-trouble-model.d.ts.map +1 -0
  21. package/models/models/agitation-required-trouble/agitation-required-trouble-registration.d.ts +87 -0
  22. package/models/models/agitation-required-trouble/agitation-required-trouble-registration.d.ts.map +1 -0
  23. package/models/models/agitation-required-trouble/index.d.ts +4 -0
  24. package/models/models/agitation-required-trouble/index.d.ts.map +1 -0
  25. package/models/models/agitation-required-trouble/types/index.d.ts +8 -0
  26. package/models/models/carb-agitator/carb-agitator-model.d.ts +14 -0
  27. package/models/models/carb-agitator/carb-agitator-model.d.ts.map +1 -0
  28. package/models/models/carb-agitator/carb-agitator-registration.d.ts +84 -0
  29. package/models/models/carb-agitator/carb-agitator-registration.d.ts.map +1 -0
  30. package/models/models/carb-agitator/index.d.ts +3 -0
  31. package/models/models/carb-agitator/index.d.ts.map +1 -0
  32. package/models/models/carb-agitator/types/index.d.ts +14 -0
  33. package/models/models/cartridge-agitator/cartridge-agitator-container-model.d.ts +20 -0
  34. package/models/models/cartridge-agitator/cartridge-agitator-container-model.d.ts.map +1 -0
  35. package/models/models/cartridge-agitator/cartridge-agitator-container-registration.d.ts +87 -0
  36. package/models/models/cartridge-agitator/cartridge-agitator-container-registration.d.ts.map +1 -0
  37. package/models/models/cartridge-agitator/cartridge-agitator-model.d.ts +27 -0
  38. package/models/models/cartridge-agitator/cartridge-agitator-model.d.ts.map +1 -0
  39. package/models/models/cartridge-agitator/cartridge-agitator-registration.d.ts +87 -0
  40. package/models/models/cartridge-agitator/cartridge-agitator-registration.d.ts.map +1 -0
  41. package/models/models/cartridge-agitator/index.d.ts +6 -0
  42. package/models/models/cartridge-agitator/index.d.ts.map +1 -0
  43. package/models/models/cartridge-agitator/services/cartridge-agitator-services.d.ts +8 -0
  44. package/models/models/cartridge-agitator/services/cartridge-agitator-services.d.ts.map +1 -0
  45. package/models/models/cartridge-agitator/types/index.d.ts +14 -0
  46. package/models/models/freestyle-assembly/freestyle-assembly-model.d.ts +38 -0
  47. package/models/models/freestyle-assembly/freestyle-assembly-model.d.ts.map +1 -0
  48. package/models/models/freestyle-assembly/freestyle-assembly-registration.d.ts +89 -0
  49. package/models/models/freestyle-assembly/freestyle-assembly-registration.d.ts.map +1 -0
  50. package/models/models/freestyle-assembly/index.d.ts +4 -0
  51. package/models/models/freestyle-assembly/index.d.ts.map +1 -0
  52. package/models/models/freestyle-assembly/types/index.d.ts +8 -0
  53. package/models/models/freestyle-holder/freestyle-holder-model.d.ts +19 -0
  54. package/models/models/freestyle-holder/freestyle-holder-model.d.ts.map +1 -0
  55. package/models/models/freestyle-holder/freestyle-holder-registration.d.ts +87 -0
  56. package/models/models/freestyle-holder/freestyle-holder-registration.d.ts.map +1 -0
  57. package/models/models/freestyle-holder/index.d.ts +4 -0
  58. package/models/models/freestyle-holder/index.d.ts.map +1 -0
  59. package/models/models/freestyle-holder/types/index.d.ts +8 -0
  60. package/models/models/freestyle-nozzle/freestyle-nozzle-model.d.ts +21 -0
  61. package/models/models/freestyle-nozzle/freestyle-nozzle-model.d.ts.map +1 -0
  62. package/models/models/freestyle-nozzle/freestyle-nozzle-registration.d.ts +87 -0
  63. package/models/models/freestyle-nozzle/freestyle-nozzle-registration.d.ts.map +1 -0
  64. package/models/models/freestyle-nozzle/index.d.ts +5 -0
  65. package/models/models/freestyle-nozzle/index.d.ts.map +1 -0
  66. package/models/models/freestyle-nozzle/services/freestyle-nozzle-services.d.ts +32 -0
  67. package/models/models/freestyle-nozzle/services/freestyle-nozzle-services.d.ts.map +1 -0
  68. package/models/models/freestyle-nozzle/services/index.d.ts +2 -0
  69. package/models/models/freestyle-nozzle/services/index.d.ts.map +1 -0
  70. package/models/models/freestyle-nozzle/types/index.d.ts +8 -0
  71. package/models/models/freestyle-pump/freestyle-pump-model.d.ts +14 -0
  72. package/models/models/freestyle-pump/freestyle-pump-model.d.ts.map +1 -0
  73. package/models/models/freestyle-pump/freestyle-pump-registration.d.ts +87 -0
  74. package/models/models/freestyle-pump/freestyle-pump-registration.d.ts.map +1 -0
  75. package/models/models/freestyle-pump/index.d.ts +5 -0
  76. package/models/models/freestyle-pump/index.d.ts.map +1 -0
  77. package/models/models/freestyle-pump/services/freestyle-pump-services.d.ts +10 -0
  78. package/models/models/freestyle-pump/services/freestyle-pump-services.d.ts.map +1 -0
  79. package/models/models/freestyle-pump/services/index.d.ts +2 -0
  80. package/models/models/freestyle-pump/services/index.d.ts.map +1 -0
  81. package/models/models/freestyle-pump/types/index.d.ts +5 -0
  82. package/models/models/ice-agitator/ice-agitator-model.d.ts +28 -0
  83. package/models/models/ice-agitator/ice-agitator-model.d.ts.map +1 -0
  84. package/models/models/ice-agitator/ice-agitator-registration.d.ts +84 -0
  85. package/models/models/ice-agitator/ice-agitator-registration.d.ts.map +1 -0
  86. package/models/models/ice-agitator/index.d.ts +3 -0
  87. package/models/models/ice-agitator/index.d.ts.map +1 -0
  88. package/models/models/ice-agitator/services/ice-agitator-services.d.ts +8 -0
  89. package/models/models/ice-agitator/services/ice-agitator-services.d.ts.map +1 -0
  90. package/models/models/ice-agitator/services/index.d.ts +2 -0
  91. package/models/models/ice-agitator/services/index.d.ts.map +1 -0
  92. package/models/models/ice-agitator/types/index.d.ts +28 -0
  93. package/models/models/index.d.ts +11 -0
  94. package/models/models/index.d.ts.map +1 -0
  95. package/models/models/types/assembly.d.ts +16 -0
  96. package/models/models/types/assembly.d.ts.map +1 -0
  97. package/models/models/types/ingredients.d.ts +33 -0
  98. package/models/models/types/ingredients.d.ts.map +1 -0
  99. package/models/models/types/pumps.d.ts +6 -0
  100. package/models/models/types/pumps.d.ts.map +1 -0
  101. package/models/utils/extension-utils.d.ts +37 -0
  102. package/models/utils/extension-utils.d.ts.map +1 -0
  103. package/models/utils/extensions/assembly/assembly-data-mapper.d.ts +19 -0
  104. package/models/utils/extensions/assembly/assembly-data-mapper.d.ts.map +1 -0
  105. package/models/utils/extensions/assembly/types.d.ts +130 -0
  106. package/models/utils/extensions/assembly/types.d.ts.map +1 -0
  107. package/models/utils/extensions/availability/freestyle-loader.d.ts +31 -0
  108. package/models/utils/extensions/availability/freestyle-loader.d.ts.map +1 -0
  109. package/models/utils/extensions/availability/freestyle-mapper.d.ts +14 -0
  110. package/models/utils/extensions/availability/freestyle-mapper.d.ts.map +1 -0
  111. package/models/utils/extensions/availability/middleware/assets.d.ts +10 -0
  112. package/models/utils/extensions/availability/middleware/assets.d.ts.map +1 -0
  113. package/models/utils/extensions/availability/middleware/beverage-screen.d.ts +14 -0
  114. package/models/utils/extensions/availability/middleware/beverage-screen.d.ts.map +1 -0
  115. package/models/utils/extensions/availability/middleware/beverages.d.ts +10 -0
  116. package/models/utils/extensions/availability/middleware/beverages.d.ts.map +1 -0
  117. package/models/utils/extensions/availability/middleware/brand-screen.d.ts +5 -0
  118. package/models/utils/extensions/availability/middleware/brand-screen.d.ts.map +1 -0
  119. package/models/utils/extensions/availability/middleware/brands.d.ts +10 -0
  120. package/models/utils/extensions/availability/middleware/brands.d.ts.map +1 -0
  121. package/models/utils/extensions/availability/middleware/copy-input.d.ts +4 -0
  122. package/models/utils/extensions/availability/middleware/copy-input.d.ts.map +1 -0
  123. package/models/utils/extensions/availability/middleware/flavors.d.ts +10 -0
  124. package/models/utils/extensions/availability/middleware/flavors.d.ts.map +1 -0
  125. package/models/utils/extensions/availability/middleware/nutrition.d.ts +10 -0
  126. package/models/utils/extensions/availability/middleware/nutrition.d.ts.map +1 -0
  127. package/models/utils/extensions/availability/middleware/related-brands.d.ts +14 -0
  128. package/models/utils/extensions/availability/middleware/related-brands.d.ts.map +1 -0
  129. package/models/utils/extensions/availability/types.d.ts +251 -0
  130. package/models/utils/extensions/availability/types.d.ts.map +1 -0
  131. package/models/utils/extensions/availability/util/locate-brand.d.ts +2 -0
  132. package/models/utils/extensions/availability/util/locate-brand.d.ts.map +1 -0
  133. package/models/utils/extensions/availability/util/process-related-brand.d.ts +4 -0
  134. package/models/utils/extensions/availability/util/process-related-brand.d.ts.map +1 -0
  135. package/models/utils/extensions/ingredient/index.d.ts +2 -0
  136. package/models/utils/extensions/ingredient/index.d.ts.map +1 -0
  137. package/models/utils/extensions/ingredient/model-extension.d.ts +7 -0
  138. package/models/utils/extensions/ingredient/model-extension.d.ts.map +1 -0
  139. package/models/utils/extensions/pourable/select-pourable-mapper.d.ts +6 -0
  140. package/models/utils/extensions/pourable/select-pourable-mapper.d.ts.map +1 -0
  141. package/models/utils/freestyle-registration-manager.d.ts +39 -0
  142. package/models/utils/freestyle-registration-manager.d.ts.map +1 -0
  143. package/models/utils/index.d.ts +5 -0
  144. package/models/utils/index.d.ts.map +1 -0
  145. package/models.cjs +2 -0
  146. package/models.cjs.map +1 -0
  147. package/models.d.ts +1 -0
  148. package/models.js +25 -0
  149. package/models.js.map +1 -0
  150. package/package.json +37 -0
  151. package/ui/contexts/index.d.ts +2 -0
  152. package/ui/contexts/index.d.ts.map +1 -0
  153. package/ui/hooks/freestyle-assembly/index.d.ts +2 -0
  154. package/ui/hooks/freestyle-assembly/index.d.ts.map +1 -0
  155. package/ui/hooks/freestyle-assembly/use-freestyle-assembly.d.ts +4 -0
  156. package/ui/hooks/freestyle-assembly/use-freestyle-assembly.d.ts.map +1 -0
  157. package/ui/hooks/freestyle-nozzle/index.d.ts +2 -0
  158. package/ui/hooks/freestyle-nozzle/index.d.ts.map +1 -0
  159. package/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.d.ts +4 -0
  160. package/ui/hooks/freestyle-nozzle/use-freestyle-nozzle.d.ts.map +1 -0
  161. package/ui/hooks/ice-agitator/index.d.ts +3 -0
  162. package/ui/hooks/ice-agitator/index.d.ts.map +1 -0
  163. package/ui/hooks/ice-agitator/use-ice-agitator.d.ts +14 -0
  164. package/ui/hooks/ice-agitator/use-ice-agitator.d.ts.map +1 -0
  165. package/ui/hooks/ice-agitator/with-ice-agitator.d.ts +7 -0
  166. package/ui/hooks/ice-agitator/with-ice-agitator.d.ts.map +1 -0
  167. package/ui/hooks/index.d.ts +5 -0
  168. package/ui/hooks/index.d.ts.map +1 -0
  169. package/ui/hooks/nutrition/index.d.ts +2 -0
  170. package/ui/hooks/nutrition/index.d.ts.map +1 -0
  171. package/ui/hooks/nutrition/use-nutrition-info.d.ts +4 -0
  172. package/ui/hooks/nutrition/use-nutrition-info.d.ts.map +1 -0
  173. package/ui/index.d.ts +3 -0
  174. package/ui/index.d.ts.map +1 -0
  175. package/ui.cjs +2 -0
  176. package/ui.cjs.map +1 -0
  177. package/ui.d.ts +1 -0
  178. package/ui.js +14 -0
  179. package/ui.js.map +1 -0
  180. package/use-nutrition-info-CGrmEGIR.cjs +2 -0
  181. package/use-nutrition-info-CGrmEGIR.cjs.map +1 -0
  182. package/use-nutrition-info-D-wbfIlj.js +52 -0
  183. 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;"}