@kosdev-code/kos-dispense-sdk 2.1.5 → 2.1.6
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/control-pour-extension-BAEKgAmw.cjs +2 -0
- package/control-pour-extension-BAEKgAmw.cjs.map +1 -0
- package/{control-pour-extension-BE0tHeaO.js → control-pour-extension-DLJOCOIC.js} +61 -57
- package/control-pour-extension-DLJOCOIC.js.map +1 -0
- package/index.cjs +1 -1
- package/index.js +54 -53
- package/package.json +3 -3
- package/ui/hooks/cui-kit/use-cui-kit.d.ts +2 -1
- package/ui/hooks/cui-kit/use-cui-kit.d.ts.map +1 -1
- package/ui/index.d.ts +1 -0
- package/ui/index.d.ts.map +1 -1
- package/ui.cjs +1 -1
- package/ui.js +52 -51
- package/control-pour-extension-6WFoj5jQ.cjs +0 -2
- package/control-pour-extension-6WFoj5jQ.cjs.map +0 -1
- package/control-pour-extension-BE0tHeaO.js.map +0 -1
package/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { A as t, b as n, e as u, d, B as l, C, a as P, f as v, D as A, k as g, E as y, G as m, H as p, g as I, I as T, h as D, K as S, N as c, l as E, P as B, i as N, j as
|
|
1
|
+
import { A as t, b as n, e as u, d, B as l, C, a as P, f as v, D as A, k as g, E as y, G as m, H as p, g as I, I as T, h as D, K as S, N as c, l as E, P as B, i as N, j as x, T as b, c as _, k as O, r as z } from "./dispense-registration-manager-pB5e_YT1.js";
|
|
2
2
|
import { i as h, f as K, D as R, a as w, b as G, c as M, K as f, d as L, e as U, g as k } from "./extension-utils-siWT4ZuD.js";
|
|
3
|
-
import { A as V, a as X, d as W, B as Y,
|
|
3
|
+
import { A as V, a as X, d as W, B as Y, ac as j, f as q, C as J, G as Q, F as Z, J as $, D as ee, ad as se, a4 as ae, a5 as re, j as oe, H as ie, m as te, I as ne, N as ue, ab as de, P as le, a6 as Ce, a7 as Pe, a8 as ve, i as Ae, q as ge, u as ye, r as me, b as pe, z as Ie, t as Te, x as De, e as Se, c as ce, E as Ee, K as Be, O as Ne, L as xe, R as be, g as _e, M as Oe, Q as ze, a9 as He, T as he, V as Ke, k as Re, h as we, X as Ge, _ as Me, n as fe, l as Le, Y as Ue, a0 as ke, o as Fe, a2 as Ve, a3 as Xe, p as We, w as Ye, s as je, v as qe, y as Je, S as Qe, aa as Ze, U as $e, W as es, Z as ss, $ as as, a1 as rs } from "./control-pour-extension-DLJOCOIC.js";
|
|
4
4
|
import "@kosdev-code/kos-ui-sdk";
|
|
5
5
|
import "react";
|
|
6
6
|
import "@emotion/react/jsx-runtime";
|
|
@@ -38,8 +38,8 @@ export {
|
|
|
38
38
|
re as HoldToPourStrategy,
|
|
39
39
|
p as Holder,
|
|
40
40
|
I as HolderContainer,
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
oe as HolderContainerProvider,
|
|
42
|
+
ie as HolderProvider,
|
|
43
43
|
G as HolderServices,
|
|
44
44
|
T as Ingredient,
|
|
45
45
|
D as IngredientContainer,
|
|
@@ -51,63 +51,64 @@ export {
|
|
|
51
51
|
c as Nozzle,
|
|
52
52
|
ue as NozzleProvider,
|
|
53
53
|
L as NozzleServices,
|
|
54
|
+
de as PourContext,
|
|
54
55
|
E as PourState,
|
|
55
56
|
B as Pump,
|
|
56
57
|
N as PumpContainer,
|
|
57
|
-
|
|
58
|
-
|
|
58
|
+
x as PumpIndex,
|
|
59
|
+
le as PumpProvider,
|
|
59
60
|
U as PumpServices,
|
|
60
|
-
|
|
61
|
+
b as TOPIC_BOARD_LINKED,
|
|
61
62
|
_ as TOPIC_BOARD_UNLINKED,
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
Ce as TapOrHoldIntentStrategy,
|
|
64
|
+
Pe as TapToPourIntentStrategy,
|
|
65
|
+
ve as TapToPourStrategy,
|
|
65
66
|
k as getFuelGaugeValue,
|
|
66
|
-
|
|
67
|
+
Ae as initializeCuiKit,
|
|
67
68
|
O as kosModels,
|
|
68
69
|
z as registerDispenseModels,
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
70
|
+
ge as useAssembly,
|
|
71
|
+
ye as useAssemblyContext,
|
|
72
|
+
me as useAvailability,
|
|
73
|
+
pe as useAvailabilityContext,
|
|
74
|
+
Ie as useBeverages,
|
|
75
|
+
Te as useBoard,
|
|
76
|
+
De as useBoardContainer,
|
|
77
|
+
Se as useBoardContainerContext,
|
|
78
|
+
ce as useBoardContext,
|
|
79
|
+
Ee as useBrands,
|
|
80
|
+
Be as useCuiKit,
|
|
81
|
+
Ne as useCuiKitTimers,
|
|
82
|
+
xe as useDefaultCuiKitLifecycle,
|
|
82
83
|
be as useDeviceAssembly,
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
84
|
+
_e as useDeviceAssemblyContext,
|
|
85
|
+
Oe as useDispenseLifecycle,
|
|
86
|
+
ze as useFlavors,
|
|
87
|
+
He as useGenericPour,
|
|
88
|
+
he as useHolder,
|
|
89
|
+
Ke as useHolderContainer,
|
|
90
|
+
Re as useHolderContainerContext,
|
|
91
|
+
we as useHolderContext,
|
|
92
|
+
Ge as useIngredient,
|
|
93
|
+
Me as useIngredientContainer,
|
|
94
|
+
fe as useIngredientContainerContext,
|
|
95
|
+
Le as useIngredientContext,
|
|
96
|
+
Ue as useIngredientPour,
|
|
97
|
+
ke as useNozzle,
|
|
98
|
+
Fe as useNozzleContext,
|
|
99
|
+
Ve as useNozzlePour,
|
|
100
|
+
Xe as usePourTarget,
|
|
101
|
+
We as usePumpContext,
|
|
102
|
+
Ye as withAssembly,
|
|
103
|
+
je as withBeverage,
|
|
104
|
+
qe as withBoard,
|
|
105
|
+
Je as withBoardContainer,
|
|
106
|
+
Qe as withDeviceAssembly,
|
|
107
|
+
Ze as withGenericPour,
|
|
108
|
+
$e as withHolder,
|
|
109
|
+
es as withHolderContainer,
|
|
110
|
+
ss as withIngredient,
|
|
111
|
+
as as withIngredientContainer,
|
|
112
|
+
rs as withNozzle
|
|
112
113
|
};
|
|
113
114
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kosdev-code/kos-dispense-sdk",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"types": "./index.d.ts",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -23,14 +23,14 @@
|
|
|
23
23
|
"./package.json": "./package.json"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@kosdev-code/kos-ui-sdk": "~2.1.
|
|
26
|
+
"@kosdev-code/kos-ui-sdk": "~2.1.6"
|
|
27
27
|
},
|
|
28
28
|
"publishConfig": {
|
|
29
29
|
"registry": "https://registry.npmjs.org/"
|
|
30
30
|
},
|
|
31
31
|
"kos": {
|
|
32
32
|
"build": {
|
|
33
|
-
"gitHash": "
|
|
33
|
+
"gitHash": "25b2fd8901604f4bcba7eb07dc94143f2feedd55"
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useNozzlePour } from '../nozzle-pour/use-nozzle-pour';
|
|
2
|
+
import { PourContext } from '../../utils/pour-context';
|
|
2
3
|
import { AvailabilityModel } from '../../../models';
|
|
3
4
|
import { IKosDataModel, KosTimer } from '@kosdev-code/kos-ui-sdk';
|
|
4
5
|
|
|
@@ -106,7 +107,7 @@ export interface CuiKitType<BrandData extends Record<string, any> = any, Beverag
|
|
|
106
107
|
* Provides functions and status related to the pour operation.
|
|
107
108
|
*/
|
|
108
109
|
pour: ReturnType<typeof useNozzlePour>;
|
|
109
|
-
updateOnBeforePour: (callback: () => Promise<boolean>) => void;
|
|
110
|
+
updateOnBeforePour: (callback: (context?: PourContext) => Promise<boolean>) => void;
|
|
110
111
|
/**
|
|
111
112
|
* The current selections of the cui kit.
|
|
112
113
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-cui-kit.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/ui/hooks/cui-kit/use-cui-kit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAI/D,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,eAAO,MAAM,uBAAuB,cAAc,CAAC;AACnD,eAAO,MAAM,qBAAqB,YAAY,CAAC;AAG/C,KAAK,YAAY,GACb,OAAO,oBAAoB,GAC3B,OAAO,uBAAuB,CAAC;AACnC,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,OAAO,CAAC,EAAE;QACR;;;;WAIG;QACH,cAAc,CAAC,EAAE;YACf;;eAEG;YACH,KAAK,CAAC,EAAE,MAAM,CAAC;YACf;;eAEG;YACH,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB;;eAEG;YACH,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED,UAAU,iBAAiB,CACzB,cAAc,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAChD,SAAS,SAAS,aAAa,GAAG,aAAa;IAE/C;;OAEG;IACH,MAAM,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC;IAE5C;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IAEzB;;OAEG;IACH,KAAK,EAAE,YAAY,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE;QACR;;WAEG;QACH,UAAU,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;KAChE,CAAC;CACH;AACD,MAAM,WAAW,UAAU,CACzB,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAC3C,YAAY,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAC9C,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAC5C,cAAc,SAAS,aAAa,GAAG,aAAa,EACpD,iBAAiB,SAAS,aAAa,GAAG,aAAa,EACvD,eAAe,SAAS,aAAa,GAAG,aAAa;IAErD;;OAEG;IACH,MAAM,EAAE;QACN;;;;;;WAMG;QACH,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;QACvC;;WAEG;QACH,KAAK,EAAE,YAAY,CAAC;QAEpB;;WAEG;QACH,OAAO,EAAE,YAAY,CAAC;KACvB,CAAC;IACF;;OAEG;IACH,GAAG,EAAE;QACH;;WAEG;QACH,YAAY,EAAE,MAAM,CAAC;QAErB;;WAEG;QACH,IAAI,EAAE,YAAY,CAAC;QAEnB;;WAEG;QACH,IAAI,EAAE,YAAY,CAAC;KACpB,CAAC;IAEF;;OAEG;IACH,IAAI,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IAEvC,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"use-cui-kit.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/ui/hooks/cui-kit/use-cui-kit.ts"],"names":[],"mappings":"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"}
|
package/ui/index.d.ts
CHANGED
package/ui/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/sdk/kos-dispense-sdk/src/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/sdk/kos-dispense-sdk/src/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC"}
|
package/ui.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./control-pour-extension-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./control-pour-extension-BAEKgAmw.cjs");require("@emotion/react/jsx-runtime");require("./dispense-registration-manager-DauhdXxX.cjs");require("@kosdev-code/kos-ui-sdk");require("react");require("zod");exports.AssemblyProvider=e.AssemblyProvider;exports.AvailabilityProvider=e.AvailabilityProvider;exports.BoardContainerProvider=e.BoardContainerProvider;exports.BoardProvider=e.BoardProvider;exports.CuiKit=e.CuiKit;exports.CuiKitWrapper=e.CuiKitWrapper;exports.DISPENSE_GROUP_BEVERAGE=e.DISPENSE_GROUP_BEVERAGE;exports.DISPENSE_GROUP_BRAND=e.DISPENSE_GROUP_BRAND;exports.DISPENSE_GROUP_FLAVOR=e.DISPENSE_GROUP_FLAVOR;exports.DeviceAssemblyProvider=e.DeviceAssemblyProvider;exports.HoldToPourIntentStrategy=e.HoldToPourIntentStrategy;exports.HoldToPourStrategy=e.HoldToPourStrategy;exports.HolderContainerProvider=e.HolderContainerProvider;exports.HolderProvider=e.HolderProvider;exports.IngredientContainerProvider=e.IngredientContainerProvider;exports.IngredientProvider=e.IngredientProvider;exports.NozzleProvider=e.NozzleProvider;exports.PourContext=e.PourContext;exports.PumpProvider=e.PumpProvider;exports.TapOrHoldIntentStrategy=e.TapOrHoldIntentStrategy;exports.TapToPourIntentStrategy=e.TapToPourIntentStrategy;exports.TapToPourStrategy=e.TapToPourStrategy;exports.initializeCuiKit=e.initializeCuiKit;exports.useAssembly=e.useAssembly;exports.useAssemblyContext=e.useAssemblyContext;exports.useAvailability=e.useAvailability;exports.useAvailabilityContext=e.useAvailabilityContext;exports.useBeverages=e.useBeverages;exports.useBoard=e.useBoard;exports.useBoardContainer=e.useBoardContainer;exports.useBoardContainerContext=e.useBoardContainerContext;exports.useBoardContext=e.useBoardContext;exports.useBrands=e.useBrands;exports.useCuiKit=e.useCuiKit;exports.useCuiKitTimers=e.useCuiKitTimers;exports.useDefaultCuiKitLifecycle=e.useDefaultCuiKitLifecycle;exports.useDeviceAssembly=e.useDeviceAssembly;exports.useDeviceAssemblyContext=e.useDeviceAssemblyContext;exports.useDispenseLifecycle=e.useDispenseLifecycle;exports.useFlavors=e.useFlavors;exports.useGenericPour=e.useGenericPour;exports.useHolder=e.useHolder;exports.useHolderContainer=e.useHolderContainer;exports.useHolderContainerContext=e.useHolderContainerContext;exports.useHolderContext=e.useHolderContext;exports.useIngredient=e.useIngredient;exports.useIngredientContainer=e.useIngredientContainer;exports.useIngredientContainerContext=e.useIngredientContainerContext;exports.useIngredientContext=e.useIngredientContext;exports.useIngredientPour=e.useIngredientPour;exports.useNozzle=e.useNozzle;exports.useNozzleContext=e.useNozzleContext;exports.useNozzlePour=e.useNozzlePour;exports.usePourTarget=e.usePourTarget;exports.usePumpContext=e.usePumpContext;exports.withAssembly=e.withAssembly;exports.withBeverage=e.withBeverage;exports.withBoard=e.withBoard;exports.withBoardContainer=e.withBoardContainer;exports.withDeviceAssembly=e.withDeviceAssembly;exports.withGenericPour=e.withGenericPour;exports.withHolder=e.withHolder;exports.withHolderContainer=e.withHolderContainer;exports.withIngredient=e.withIngredient;exports.withIngredientContainer=e.withIngredientContainer;exports.withNozzle=e.withNozzle;
|
|
2
2
|
//# sourceMappingURL=ui.cjs.map
|
package/ui.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as n, a as u, d, B as l, f as C, C as P, G as v, F as y, J as g, D as m, a4 as I, a5 as p, j as A, H as
|
|
1
|
+
import { A as n, a as u, d, B as l, f as C, C as P, G as v, F as y, J as g, D as m, a4 as I, a5 as p, j as A, H as x, m as B, I as b, N as h, ab as w, P as z, a6 as H, a7 as S, a8 as c, i as D, q as E, u as N, r as T, b as G, z as K, t as R, x as _, e as O, c as f, E as L, K as U, O as F, L as V, R as W, g as j, M as k, Q as q, a9 as J, T as M, V as Q, k as X, h as Y, X as Z, _ as $, n as ee, l as ae, Y as se, a0 as re, o as te, a2 as ie, a3 as oe, p as ne, w as ue, s as de, v as le, y as Ce, S as Pe, aa as ve, U as ye, W as ge, Z as me, $ as Ie, a1 as pe } from "./control-pour-extension-DLJOCOIC.js";
|
|
2
2
|
import "@emotion/react/jsx-runtime";
|
|
3
3
|
import "./dispense-registration-manager-pB5e_YT1.js";
|
|
4
4
|
import "@kosdev-code/kos-ui-sdk";
|
|
@@ -18,57 +18,58 @@ export {
|
|
|
18
18
|
I as HoldToPourIntentStrategy,
|
|
19
19
|
p as HoldToPourStrategy,
|
|
20
20
|
A as HolderContainerProvider,
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
x as HolderProvider,
|
|
22
|
+
B as IngredientContainerProvider,
|
|
23
23
|
b as IngredientProvider,
|
|
24
24
|
h as NozzleProvider,
|
|
25
|
-
w as
|
|
26
|
-
z as
|
|
27
|
-
H as
|
|
28
|
-
S as
|
|
29
|
-
c as
|
|
30
|
-
D as
|
|
31
|
-
E as
|
|
32
|
-
N as
|
|
33
|
-
T as
|
|
34
|
-
G as
|
|
35
|
-
K as
|
|
36
|
-
R as
|
|
37
|
-
_ as
|
|
38
|
-
O as
|
|
39
|
-
f as
|
|
40
|
-
L as
|
|
41
|
-
U as
|
|
42
|
-
F as
|
|
43
|
-
V as
|
|
44
|
-
W as
|
|
45
|
-
j as
|
|
46
|
-
k as
|
|
47
|
-
q as
|
|
48
|
-
J as
|
|
49
|
-
M as
|
|
50
|
-
Q as
|
|
51
|
-
X as
|
|
52
|
-
Y as
|
|
53
|
-
Z as
|
|
54
|
-
$ as
|
|
55
|
-
ee as
|
|
56
|
-
ae as
|
|
57
|
-
se as
|
|
58
|
-
re as
|
|
59
|
-
te as
|
|
60
|
-
ie as
|
|
61
|
-
oe as
|
|
62
|
-
ne as
|
|
63
|
-
ue as
|
|
64
|
-
de as
|
|
65
|
-
le as
|
|
66
|
-
Ce as
|
|
67
|
-
Pe as
|
|
68
|
-
ve as
|
|
69
|
-
ye as
|
|
70
|
-
ge as
|
|
71
|
-
me as
|
|
72
|
-
Ie as
|
|
25
|
+
w as PourContext,
|
|
26
|
+
z as PumpProvider,
|
|
27
|
+
H as TapOrHoldIntentStrategy,
|
|
28
|
+
S as TapToPourIntentStrategy,
|
|
29
|
+
c as TapToPourStrategy,
|
|
30
|
+
D as initializeCuiKit,
|
|
31
|
+
E as useAssembly,
|
|
32
|
+
N as useAssemblyContext,
|
|
33
|
+
T as useAvailability,
|
|
34
|
+
G as useAvailabilityContext,
|
|
35
|
+
K as useBeverages,
|
|
36
|
+
R as useBoard,
|
|
37
|
+
_ as useBoardContainer,
|
|
38
|
+
O as useBoardContainerContext,
|
|
39
|
+
f as useBoardContext,
|
|
40
|
+
L as useBrands,
|
|
41
|
+
U as useCuiKit,
|
|
42
|
+
F as useCuiKitTimers,
|
|
43
|
+
V as useDefaultCuiKitLifecycle,
|
|
44
|
+
W as useDeviceAssembly,
|
|
45
|
+
j as useDeviceAssemblyContext,
|
|
46
|
+
k as useDispenseLifecycle,
|
|
47
|
+
q as useFlavors,
|
|
48
|
+
J as useGenericPour,
|
|
49
|
+
M as useHolder,
|
|
50
|
+
Q as useHolderContainer,
|
|
51
|
+
X as useHolderContainerContext,
|
|
52
|
+
Y as useHolderContext,
|
|
53
|
+
Z as useIngredient,
|
|
54
|
+
$ as useIngredientContainer,
|
|
55
|
+
ee as useIngredientContainerContext,
|
|
56
|
+
ae as useIngredientContext,
|
|
57
|
+
se as useIngredientPour,
|
|
58
|
+
re as useNozzle,
|
|
59
|
+
te as useNozzleContext,
|
|
60
|
+
ie as useNozzlePour,
|
|
61
|
+
oe as usePourTarget,
|
|
62
|
+
ne as usePumpContext,
|
|
63
|
+
ue as withAssembly,
|
|
64
|
+
de as withBeverage,
|
|
65
|
+
le as withBoard,
|
|
66
|
+
Ce as withBoardContainer,
|
|
67
|
+
Pe as withDeviceAssembly,
|
|
68
|
+
ve as withGenericPour,
|
|
69
|
+
ye as withHolder,
|
|
70
|
+
ge as withHolderContainer,
|
|
71
|
+
me as withIngredient,
|
|
72
|
+
Ie as withIngredientContainer,
|
|
73
|
+
pe as withNozzle
|
|
73
74
|
};
|
|
74
75
|
//# sourceMappingURL=ui.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var lt=Object.defineProperty;var mt=(e,t,s)=>t in e?lt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s;var B=(e,t,s)=>(mt(e,typeof t!="symbol"?t+"":t,s),s);const b=require("@emotion/react/jsx-runtime"),P=require("./dispense-registration-manager-DauhdXxX.cjs"),l=require("@kosdev-code/kos-ui-sdk"),o=require("react"),D=require("zod"),Pe=()=>{const e=P.Assembly.type;return l.useKosModel({modelId:e,modelType:P.Assembly.type,options:{}})};function pt(e){return t=>{const{model:s,status:n,KosModelLoader:r}=Pe();return b.jsx(r,{...n,children:b.jsx(e,{...t,assembly:s})})}}const we=()=>{const e=P.Availability.type;return l.useKosModel({modelId:e,modelType:P.Availability.type,options:{}})};function ft(e){return t=>{const{model:s,status:n,KosModelLoader:r}=we();return b.jsx(r,{...n,children:b.jsx(e,{...t,beverage:s})})}}const Ie=e=>{const t=e;return l.useKosModel({modelId:t,modelType:P.Board.type,options:{}})};function ht(e){return t=>s=>{const{model:n,status:r,KosModelLoader:a}=Ie(t);return b.jsx(a,{...r,children:b.jsx(e,{...s,board:n})})}}const ke=()=>{const e=P.BoardContainer.type;return l.useKosModel({modelId:e,modelType:P.BoardContainer.type,options:{}})};function bt(e){return t=>{const{model:s,status:n,KosModelLoader:r}=ke();return b.jsx(r,{...n,children:b.jsx(e,{...t,boardContainer:s})})}}const Ee=e=>{const t=e;return l.useKosModel({modelId:t,modelType:P.Nozzle.type,options:{path:e}})},Le=o.createContext(void 0),He=({children:e,path:t})=>{const{model:s,ready:n}=Ee(t),r=o.useMemo(()=>n&&s?{model:s}:{},[n,s]);return b.jsx(Le.Provider,{value:r,children:e})},A=()=>{const e=o.useContext(Le);if(!e)throw new Error("useNozzleContext must be used within a NozzleProvider");return e},De=({onBeverageSelected:e,onClearBeverage:t,companionType:s})=>{const{model:n}=A(),[r,a]=o.useState([]),[i,c]=o.useState(null),f=o.useMemo(()=>s?r.map(m=>l.getKosCompanionModel(m,s)):[],[r,s]),p=o.useCallback(async m=>{c(m),await(n==null?void 0:n.setSelectedPourable({beverage:m})),e==null||e(m)},[n,e]),d=o.useCallback(async()=>{c(null),await(n==null?void 0:n.setSelectedPourable({beverage:void 0})),t==null||t()},[n,t]);return o.useEffect(()=>{const m=l.kosAutoEffect(()=>{if(!n)return;const C=n.selectedBrand;if(!C){const x=n.getGroupAvailabilityItems("beverages").filter(h=>h.visible);a(x??[]);return}const g=n.getAvailabilityByParent(C.id).filter(x=>x.visible);a(g??[])});return()=>{m()}},[n]),{beverages:r,beverageCompanions:f,selectBeverage:p,selectedBeverage:i,clearBeverage:d}},Oe=({onBrandSelected:e,onBrandCleared:t,companionType:s})=>{const{model:n}=A(),[r,a]=o.useState(null),[i,c]=o.useState([]),f=o.useMemo(()=>s?i.map(m=>l.getKosCompanionModel(m,s)):[],[i,s]),p=o.useCallback(async m=>{a(m),n==null||n.setSelectedBrand(m),e==null||e(m)},[n,e]),d=o.useCallback(()=>{a(null),n==null||n.setSelectedBrand(void 0),t==null||t()},[n,t]);return o.useEffect(()=>{const m=l.kosAutoEffect(()=>{n&&c(n.visibleBrands)});return()=>{m()}},[n]),{brands:i,brandCompanions:f,selectedBrand:r,selectBrand:p,clearBrand:d}};class Ue{constructor(){B(this,"_data",new Map)}get(t){return this._data.get(t)}set(t,s){this._data.set(t,s)}remove(t){this._data.delete(t)}has(t){return this._data.has(t)}}const vt=l.KosLog.createLogger({name:"HoldToPourStrategy",group:"kos-hooks"}),$e={name:"HoldToPourStrategy",async initiate(e){if(!(e!=null&&e.canPour)){vt.debug(`Nozzle ${e==null?void 0:e.id} cannot pour. Returning early.`);return}await(e==null?void 0:e.pour())},async initiateEnded(e){await(e==null?void 0:e.cancelPour())}},re=l.KosLog.createLogger({name:"useNozzlePour",group:"kos-hooks"}),Fe=({onPour:e,onPourCancel:t,onBeforePour:s,onBeforePourRejected:n,pourContext:r,strategy:a=$e})=>{const{model:i}=A(),[c,f]=o.useState(r||new Ue),p=o.useCallback(async()=>{(s?await(s==null?void 0:s(c)):!0)?(re.debug(`[${a==null?void 0:a.name}] - Pour initiated for nozzle ${i==null?void 0:i.id}.`),a==null||a.initiate(i),e==null||e()):(re.debug(`[${a==null?void 0:a.name}] - Did not pass onBeforePour gate for nozzle ${i==null?void 0:i.id}. Cancelling pour.`),n==null||n())},[e,i,a,s,t,c,n]),d=o.useCallback(()=>{var h;re.debug(`[${a==null?void 0:a.name}] - Pour initiate ended called for nozzle ${i==null?void 0:i.id}.`),(h=a==null?void 0:a.initiateEnded)==null||h.call(a,i),t==null||t()},[t,i,a]),m=o.useCallback(()=>{re.debug(`Force cancelling pour for nozzle ${i==null?void 0:i.id}.`),i==null||i.cancelPour(),t==null||t()},[t,i]),C=o.useCallback((h,u)=>{c.set(h,u)},[c]),g=o.useCallback(h=>{c.remove(h)},[c]);return{handlers:l.usePressGesture({onPressed:p,onRelease:d}).dom,cancel:m,updatePourContext:C,removeFromPourContext:g,status:i}},Ge=({onFlavorSelected:e,onFlavorCleared:t,companionType:s})=>{const{model:n}=A(),r=o.useMemo(()=>(n==null?void 0:n.getGroupAvailabilityItems("flavors").filter(d=>d.visible))??[],[n]),a=o.useMemo(()=>s?r.map(d=>l.getKosCompanionModel(d,s)):[],[r,s]),[i,c]=o.useState([]),f=o.useCallback(async d=>{if(c(m=>m!=null&&m.includes(d)?[...m.filter(C=>C!==d)]:[...m??[],d]),n!=null&&n.selectedPourable){const{beverage:m}=n.selectedPourable;await n.setSelectedPourable({beverage:m,additional:i??[]})}e==null||e(d,i??[])},[n,e,i]),p=o.useCallback(async()=>{if(c([]),n!=null&&n.selectedPourable){const{beverage:d}=n.selectedPourable;n.setSelectedPourable({beverage:d}),t==null||t()}},[n,t]);return{flavors:r,flavorCompanions:a,selectFlavor:f,selectedFlavors:i,clearFlavors:p}},Y="brands",z="beverages",q="flavors",N=l.KosLog.createLogger({name:"use-cui-kit"}),Ve=({initialGroup:e=Y,options:t={}})=>{var ee,te,se;const[s,n]=o.useState(e),{model:r}=A(),a=o.useRef([]),i=o.useRef(),c=o.useRef(),f=o.useCallback(v=>{n(q);const k=`/kos/dispense/${r==null?void 0:r.path}/brand/selected/`;l.EventBus.publish(k,v)},[r==null?void 0:r.path]),p=o.useCallback(()=>{const v=`/kos/dispense/${r==null?void 0:r.path}/brand/cleared/`;l.EventBus.publish(v,{})},[r==null?void 0:r.path]),d=o.useCallback(v=>{var Z;n(q),(Z=i.current)==null||Z.call(i,"selectedBeverage",v);const k=`/kos/dispense/${r==null?void 0:r.path}/beverage/selected/`;l.EventBus.publish(k,v)},[r==null?void 0:r.path]),m=o.useCallback(()=>{var k;const v=`/kos/dispense/${r==null?void 0:r.path}/beverage/cleared/`;(k=c.current)==null||k.call(c,"selectedBeverage"),l.EventBus.publish(v,{})},[r==null?void 0:r.path]),C=o.useCallback(v=>{const k=`/kos/dispense/${r==null?void 0:r.path}/flavor/selected/`;l.EventBus.publish(k,v)},[r==null?void 0:r.path]),g=o.useCallback(()=>{const v=`/kos/dispense/${r==null?void 0:r.path}/flavor/cleared/`;l.EventBus.publish(v,{})},[r==null?void 0:r.path]),x=o.useCallback(()=>{const v=`/kos/dispense/${r==null?void 0:r.path}/pour/`;l.EventBus.publish(v,{})},[r==null?void 0:r.path]),h=o.useCallback(async()=>{const v=`/kos/dispense/${r==null?void 0:r.path}/pre/pour/`;return l.EventBus.publish(v,{}),await(M==null?void 0:M())||!0},[r==null?void 0:r.path]),u=o.useCallback(async()=>{const v=`/kos/dispense/${r==null?void 0:r.path}/pre/pour/rejected/`;l.EventBus.publish(v,{})},[r==null?void 0:r.path]),O=o.useCallback(()=>{const v=`/kos/dispense/${r==null?void 0:r.path}/pour/cancel/`;l.EventBus.publish(v,{})},[r==null?void 0:r.path]),{brands:S,selectBrand:$,selectedBrand:W,clearBrand:_,brandCompanions:ie}=Oe({companionType:(ee=t.companionTypes)==null?void 0:ee.brand,onBrandSelected:f,onBrandCleared:p}),{beverages:ae,selectBeverage:R,selectedBeverage:K,clearBeverage:T,beverageCompanions:ce}=De({companionType:(te=t.companionTypes)==null?void 0:te.beverage,onBeverageSelected:d,onClearBeverage:m}),{clearFlavors:U,flavors:w,selectFlavor:y,selectedFlavors:F,flavorCompanions:I}=Ge({companionType:(se=t.companionTypes)==null?void 0:se.flavor,onFlavorSelected:C,onFlavorCleared:g}),[M,G]=o.useState(),V=o.useCallback(v=>{G(()=>v)},[]),X=Fe({onPour:x,onPourCancel:O,onBeforePour:h,onBeforePourRejected:u});i.current=X.updatePourContext,c.current=X.removeFromPourContext;const ue=o.useCallback(()=>{switch(N.debug(`Navigating back from group: ${s}`),s){case Y:T(),_();break;case z:case q:n(e),T(),_();break}},[T,_,s,e]),de=o.useCallback(()=>{const v=`/kos/dispense/${r==null?void 0:r.path}/home/`;l.EventBus.publish(v,{}),n(e),e===Y&&(T(),_()),e===z&&T()},[T,_,e]),le=o.useCallback(()=>{if(a.current.length===0){N.debug("No timers to pause.");return}N.debug(`Pausing ${a.current.length} timers.`),a.current.forEach(v=>{N.debug(`Pausing timer with id ${v.id}.`),v.pause()})},[]),me=o.useCallback(()=>{if(a.current.length===0){N.debug("No timers to restart.");return}N.debug(`Restarting ${a.current.length} timers.`),a.current.forEach(v=>{N.debug(`Restarting timer with id ${v.id}.`),v.restart()})},[]);return{timers:{add:o.useCallback(v=>{if(v){if(a.current.some(k=>k.id===v.id)){N.debug(`Timer with id ${v.id} already exists.`);return}a.current.push(v)}},[]),pause:le,restart:me},nav:{currentGroup:s,back:ue,home:de},pour:X,updateOnBeforePour:V,selections:{[Y]:W,[z]:K,[q]:F},[Y]:{models:S,companions:ie,clear:_,handlers:{onSelected:$}},[z]:{models:ae,companions:ce,clear:T,handlers:{onSelected:R}},[q]:{models:w,companions:I,clear:U,handlers:{onSelected:y}}}},xt=e=>{const{model:t}=A(),[s,n]=o.useState(null),{onAmbientTimer:r,onAttractTimer:a,onResetAttractTimer:i,onResumeAttractTimer:c,defaultAttractTime:f,defaultAmbientTime:p}=e,d=o.useCallback(()=>{r&&(l.KosLog.info("Ambient timer expired. Calling callback"),r==null||r())},[r]),m=o.useCallback(()=>{a&&(l.KosLog.info("Attract timer expired. Calling callback"),a==null||a())},[a]),C=o.useCallback(()=>{s&&(s.restart(),i==null||i())},[s,i]),g=o.useCallback(()=>{s&&(s.reset(),i==null||i())},[s,i]),x=o.useCallback(()=>{s&&(s.pause(),c==null||c())},[s,c]);return o.useEffect(()=>{if(t&&f){l.KosLog.info("Nozzle is available. Creating timers");const h=l.TimerManager.createTimer("attract-timer-"+t.path,f);return f&&(h==null||h.addTimeoutAction({name:"attract-timer",remainingTime:0,action:m})),p&&(h==null||h.addTimeoutAction({name:"ambient-timer",remainingTime:p,action:d})),f&&(h==null||h.start()),n(h??null),()=>{h==null||h.reset(),n(null)}}return()=>{l.KosLog.info("Nozzle is not available. No timers to clear")}},[p,f,d,m,t]),{attractTimer:s,restart:C,pause:g,resume:x}},Ct=(e,t)=>{if(t)return l.EventBus.subscribe(e,t).unsubscribe},Ye=({onInit:e,onBrandSelected:t,onBrandCleared:s,onBeverageCleared:n,onBeverageSelected:r,onFlavorCleared:a,onFlavorSelected:i,onReturnToHome:c,onPour:f,onPourCancel:p,onBeforePourRejected:d,onAmbientTimer:m,onAttractTimer:C,onResumeAttractTimer:g,onIdleTimeout:x,onAreYouThereTimeout:h})=>{const{model:u}=A();o.useEffect(()=>{const S=[{topic:`/kos/dispense/${u==null?void 0:u.path}/brand/selected/`,callback:t},{topic:`/kos/dispense/${u==null?void 0:u.path}/brand/cleared/`,callback:s},{topic:`/kos/dispense/${u==null?void 0:u.path}/beverage/selected/`,callback:r},{topic:`/kos/dispense/${u==null?void 0:u.path}/beverage/cleared/`,callback:n},{topic:`/kos/dispense/${u==null?void 0:u.path}/flavor/selected/`,callback:i},{topic:`/kos/dispense/${u==null?void 0:u.path}/flavor/cleared/`,callback:a},{topic:`/kos/dispense/${u==null?void 0:u.path}/pour/`,callback:f},{topic:`/kos/dispense/${u==null?void 0:u.path}/pour/cancel/`,callback:p},{topic:`/kos/dispense/${u==null?void 0:u.path}/pre/pour/rejected/`,callback:d},{topic:`/kos/dispense/${u==null?void 0:u.path}/ambient/start/`,callback:m},{topic:`/kos/dispense/${u==null?void 0:u.path}/attract/start/`,callback:C},{topic:`/kos/dispense/${u==null?void 0:u.path}/attract/resume/`,callback:g},{topic:`/kos/dispense/${u==null?void 0:u.path}/idle/timeout/`,callback:x},{topic:`/kos/dispense/${u==null?void 0:u.path}/are-you-there/timeout/`,callback:h},{topic:`/kos/dispense/${u==null?void 0:u.path}/init/`,callback:e},{topic:`/kos/dispense/${u==null?void 0:u.path}/home/`,callback:c}].map(({topic:$,callback:W})=>Ct($,W));return()=>{S.forEach($=>$==null?void 0:$())}},[u==null?void 0:u.path,m,C,n,r,s,t,a,i,f,p,g,x,h,e,c])},j=l.KosLog.createLogger({name:"useCuiKitTimers"}),xe=e=>{const{model:t}=A(),[s,n]=o.useState(null),{onAreYouThereTimer:r,onIdleTimer:a,onResetIdleTimer:i,defaultAreYouThereTime:c=10,defaultIdleTime:f=20}=e,p=o.useRef(!1),d=o.useCallback(()=>{!p.current&&r&&(l.KosLog.info("Are you there timer expired. Calling callback"),p.current=!0,r==null||r())},[r]),m=o.useCallback(()=>{j.debug("handleIdleTimer called in useCuiKitTimers, onIdleTimer exists:",!!a),a?(j.debug("Idle timer expired. Calling callback"),a==null||a()):j.debug("No onIdleTimer callback provided!")},[a]),C=o.useCallback(()=>{j.debug(`TIMER RESTART called for ${e.prefix??""}timer`),s&&(s.restart(),p.current=!1,i==null||i())},[s,i,e.prefix]),g=o.useCallback(()=>{j.debug(`TIMER PAUSE/RESET called for ${e.prefix??""}timer`),s&&(s.reset(),p.current=!1,i==null||i())},[s,i,e.prefix]);return o.useEffect(()=>{if(j.debug(`useCuiKitTimers effect triggered - nozzle: ${!!t}, path: ${t==null?void 0:t.path}, callbacks: handleIdle=${!!m}, handleAreYouThere=${!!d}`),t){j.info("Nozzle is available. Creating timers");const x=l.TimerManager.createTimer(`${e.prefix??""}idle-timer-${t.path}`,f);return j.debug(`Adding idle timer action for ${e.prefix??""}idle-timer-${t.path} with callback:`,!!m),x==null||x.addTimeoutAction({name:"idle-timer",remainingTime:0,action:m}),x==null||x.addTimeoutAction({name:"are-you-there-timer",remainingTime:c,action:d}),n(x??null),()=>{x==null||x.reset(),n(null)}}return()=>{j.info("Nozzle is not available. No timers to clear")}},[c,f,d,m,t,e.prefix]),{idleTimer:s,restart:C,pause:g}},H=l.KosLog.createLogger({name:"useDefaultCuiKitLifecycle"}),gt=({kit:e,inactivity:t,pour:s,screens:n,onBeforeAreYouThereTimer:r,areYouThereRejectionPolicy:a="pause"})=>{var k,Z,Me,Be;const[i,c]=o.useState(!1),[f,p]=o.useState(!1),{model:d}=A(),[m,C]=o.useState(!1),g=(t==null?void 0:t.idleTimeout)??15,x=(t==null?void 0:t.areYouThereTimeoutOffset)??10,h=(s==null?void 0:s.idleTimeout)??(t==null?void 0:t.idleTimeout)??10,u=(s==null?void 0:s.areYouThereTimeoutOffset)??(t==null?void 0:t.areYouThereTimeoutOffset)??5,O=n==null?void 0:n.ambientTimeoutOffset,S=n==null?void 0:n.attractTimeout,$=o.useCallback(()=>{if(H.info("handleIdleTimeout called - navigating home and publishing event"),U(!1),e==null||e.nav.home(),d){const E=`/kos/dispense/${d.path}/idle/timeout/`;l.EventBus.publish(E,{})}},[(k=e==null?void 0:e.nav)==null?void 0:k.home,d]),W=o.useCallback(()=>{H.info("handleResetIdleTimer called - resetting idle timer"),U(!1)},[]),_=o.useCallback(()=>{if(O&&(c(!0),p(!1),d)){const E=`/kos/dispense/${d.path}/ambient/start/`;l.EventBus.publish(E,{})}},[O,d]),ie=o.useCallback(()=>{if(S&&(p(!0),c(!1),d)){const E=`/kos/dispense/${d.path}/attract/start/`;l.EventBus.publish(E,{})}},[S,d]),ae=o.useCallback(()=>{if(S&&(p(!1),c(!1),e==null||e.nav.home(),d)){const E=`/kos/dispense/${d.path}/attract/resume/`;l.EventBus.publish(E,{})}},[e==null?void 0:e.nav,S,d]),{pause:R,restart:K,attractTimer:T}=xt({defaultAmbientTime:O,defaultAttractTime:S,onAmbientTimer:_,onAttractTimer:ie,onResumeAttractTimer:ae});(Z=e==null?void 0:e.timers)==null||Z.add(T);const[ce,U]=o.useState(!1);H.info("Creating idle timer with timeout:",g,"seconds and callback:",!!$);const{pause:w,restart:y,idleTimer:F}=xe({defaultAreYouThereTime:x,defaultIdleTime:g,onIdleTimer:$,onResetIdleTimer:W});H.info(`Creating pour timer with timeout: ${h} seconds and callback: ${!!$}`);const{pause:I,restart:M,idleTimer:G}=xe({defaultAreYouThereTime:u,defaultIdleTime:h,onIdleTimer:$,prefix:"pour-"}),V=o.useCallback(async()=>{let E=!0;if(r)try{E=await r()}catch(pe){H.error(`onBeforeAreYouThereTimer callback failed: ${pe}`),E=!1}if(E){if(d){const pe=`/kos/dispense/${d.path}/are-you-there/timeout/`;l.EventBus.publish(pe,{})}U(!0),m?I():w()}else switch(a){case"pause":m?I():w();break;case"restart":m?M():y();break}},[r,d,a,m]),X=o.useCallback(()=>{U(!1),R(),m?(M(),w()):(y(),I())},[m,w,I,y,M]);o.useEffect(()=>{F&&F.addTimeoutAction({name:"are-you-there-timer",remainingTime:x,action:V})},[F,x,V]),o.useEffect(()=>{G&&G.addTimeoutAction({name:"pour-are-you-there-timer",remainingTime:u,action:V})},[G,u,V]),(Me=e==null?void 0:e.timers)==null||Me.add(F),(Be=e==null?void 0:e.timers)==null||Be.add(G);const ue=o.useCallback(()=>{C(!1),I(),w(),R()},[w,I]),de=o.useCallback(()=>{C(!0),H.info("restarting pour timer"),M(),R(),w()},[w,M]),le=o.useCallback(()=>{C(!1),H.info("restarting pour timer on before pour rejected"),I(),y()},[]),me=o.useCallback(()=>{R(),p(!1),c(!1),y()},[R,y]),Ke=o.useCallback(()=>{p(!1),c(!1),C(!1),I(),K()},[K,I]),ee=o.useCallback(()=>{p(!1),c(!1),C(!1),R(),y()},[R,y]),te=o.useCallback(()=>{p(!1),c(!1),C(!1),K(),w(),I()},[K,w,I]),se=o.useCallback(()=>{p(!1),c(!1),K(),w()},[K,w]);Ye({onBrandSelected:me,onBrandCleared:Ke,onBeverageSelected:ee,onBeverageCleared:te,onPour:ue,onPourCancel:de,onBeforePourRejected:le,onInit:se});const v=m?u:x;return o.useEffect(()=>{if(d&&T){const E=`/kos/dispense/${d==null?void 0:d.path}/init/`;l.EventBus.publish(E,{})}},[d,T]),{showAreYouThere:ce,clearAreYouThere:X,pauseIdleTimer:w,restartIdleTimer:y,areYouThereCountdown:v,showAmbientScreen:i,showAttractScreen:f,pauseScreenTimer:R,restartScreenTimer:K}},Te=()=>{const e=P.DeviceAssembly.type;return l.useKosModel({modelId:e,modelType:P.DeviceAssembly.type,options:{}})};function Pt(e){return t=>{const{model:s,status:n,KosModelLoader:r}=Te();return b.jsx(r,{...n,children:b.jsx(e,{...t,deviceAssembly:s})})}}const ye=e=>{const t=e;return l.useKosModel({modelId:t,modelType:P.Holder.type,options:{}})};function wt(e,t){return s=>{const{model:n,status:r,KosModelLoader:a}=ye(e);return b.jsx(a,{...r,children:b.jsx(t,{...s,holder:n})})}}const Re=()=>{const e=P.HolderContainer.type;return l.useKosModel({modelId:e,modelType:P.HolderContainer.type,options:{}})};function It(e){return t=>{const{model:s,status:n,KosModelLoader:r}=Re();return b.jsx(r,{...n,children:b.jsx(e,{...t,holderContainer:s})})}}const Ae=()=>{const e=P.Ingredient.type;return l.useKosModel({modelId:e,modelType:P.Ingredient.type,options:{}})},fe=l.KosLog.createLogger({name:"HoldToPourIntentStrategy",group:"kos-hooks"}),qe={name:"HoldToPourIntentStrategy",async initiate(e,t){if(!(e!=null&&e.canPour)){fe.debug(`${e==null?void 0:e.id} cannot pour. Returning early.`);return}t?(fe.debug(`performing intent: ${t}`),await(e==null?void 0:e.performIntent(t))):fe.debug("no intent provided. Returning early.")},async initiateEnded(e){await(e==null?void 0:e.cancelPour())}},he=l.KosLog.createLogger({name:"useNozzlePour",group:"kos-hooks"}),kt=({onPour:e,onPourCancel:t,intentContainer:s,strategy:n=qe})=>{const r=o.useCallback(()=>{he.debug(`[${n==null?void 0:n.name}] - Pour initiated for model ${s==null?void 0:s.id}.`),n==null||n.initiate(s),e==null||e()},[e,s,n]),a=o.useCallback(()=>{var f;he.debug(`[${n==null?void 0:n.name}] - Pour initiate ended called for nozzle ${s==null?void 0:s.id}.`),(f=n==null?void 0:n.initiateEnded)==null||f.call(n,s),t==null||t()},[t,s,n]),i=o.useCallback(()=>{he.debug(`Force cancelling pour for nozzle ${s==null?void 0:s.id}.`),s==null||s.cancelPour(),t==null||t()},[t,s]);return{handlers:l.usePressGesture({onPressed:r,onRelease:a}).dom,cancel:i,status:s}};function Et(e){return t=>{const{model:s,status:n,KosModelLoader:r}=Ae();return b.jsx(r,{...n,children:b.jsx(e,{...t,ingredient:s})})}}const Se=()=>{const e=P.IngredientContainer.type;return l.useKosModel({modelId:e,modelType:P.IngredientContainer.type,options:{}})};function $t(e){return t=>{const{model:s,status:n,KosModelLoader:r}=Se();return b.jsx(r,{...n,children:b.jsx(e,{...t,ingredientContainer:s})})}}function Tt(e,t){return s=>{const{model:n,status:r,KosModelLoader:a}=Ee(e);return b.jsx(a,{...r,children:b.jsx(t,{...s,nozzle:n})})}}const J=l.KosLog.createLogger({name:"usePour",group:"kos-hooks"}),yt=({onBeforePour:e,onPour:t,onPourCancel:s,onPourAbort:n,pourTarget:r,pourContext:a,strategy:i=$e})=>{const[c,f]=o.useState(a||new Ue),p=o.useCallback(async()=>{J.debug(`[${i==null?void 0:i.name}] - calling before pour for pour target ${r==null?void 0:r.id}.`),(e?await(e==null?void 0:e(c)):!0)?(J.debug(`[${i==null?void 0:i.name}] - Pour initiated for pour target ${r==null?void 0:r.id}.`),await(i==null?void 0:i.initiate(r)),t==null||t(),r!=null&&r.isPouring||n==null||n()):(J.debug(`[${i==null?void 0:i.name}] - Pour cancelled for pour target ${r==null?void 0:r.id}.`),s==null||s())},[t,e,n,r,i,c]),d=o.useCallback(async()=>{var u;J.debug(`[${i==null?void 0:i.name}] - Pour initiate ended called for pour target ${r==null?void 0:r.id}.`),await((u=i==null?void 0:i.initiateEnded)==null?void 0:u.call(i,r))||s==null||s()},[s,r,i]),m=o.useCallback(async()=>{J.debug(`Force cancelling pour for pour target ${r==null?void 0:r.id}.`),await(r==null?void 0:r.cancelPour()),s==null||s()},[s,r]),C=o.useCallback((h,u)=>{c.set(h,u)},[c]),g=o.useCallback(h=>{c.remove(h)},[c]);return{handlers:l.usePressGesture({onPressed:p,onRelease:d}).dom,cancel:m,updatePourContext:C,removeFromPourContext:g,status:r}},Q=l.KosLog.createLogger({name:"TapOrHoldIntentStrategy",group:"kos-hooks"});class Rt{constructor(t){B(this,"intent");B(this,"name","TapOrHoldIntentStrategy");B(this,"isHold",!1);B(this,"disposer",null);this.intent=t}async initiate(t,s){if(this.disposer=setTimeout(()=>{this.isHold=!0},250),t!=null&&t.isPouring&&!this.isHold){Q.debug("additional tap detected. cancelling pour"),await t.cancelPour();return}if(!(t!=null&&t.canPour)){Q.debug(`${t==null?void 0:t.id} cannot pour. Returning early.`);return}s?(Q.debug(`performing intent: ${s}`),await(t==null?void 0:t.performIntent(s))):Q.debug("no intent provided. Returning early.")}async initiateEnded(t){return this.disposer&&clearTimeout(this.disposer),this.disposer=null,this.isHold?(await(t==null?void 0:t.cancelPour()),!1):(Q.debug("Tap detected. don't cancel and return."),!0)}}const ne=l.KosLog.createLogger({name:"TapToPourIntentStrategy",group:"kos-hooks"}),At={name:"TapToPourIntentStrategy",async initiate(e,t){if(e!=null&&e.isPouring){ne.debug(`Nozzle ${e==null?void 0:e.id} is already pouring. cancelling pour`),await e.cancelPour();return}if(!(e!=null&&e.canPour)){ne.debug(`Nozzle ${e==null?void 0:e.id} cannot pour. Returning early.`);return}t?(ne.debug(`performing intent: ${t}`),await(e==null?void 0:e.performIntent(t))):ne.debug("no intent provided. Returning early.")},async initiateEnded(e){return!0}},je=l.KosLog.createLogger({name:"HoldToPourStrategy",group:"kos-hooks"}),St={name:"TapToPourStrategy",async initiate(e){if(e!=null&&e.isPouring){je.debug(`Nozzle ${e==null?void 0:e.id} is already pouring. cancelling pour`),await e.cancelPour();return}if(!(e!=null&&e.canPour)){je.debug(`Nozzle ${e==null?void 0:e.id} cannot pour. Returning early.`);return}await(e==null?void 0:e.pour())},async initiateEnded(e){return!0}},We=(e,t,s)=>{const n=e;return l.useKosModel({modelId:n,modelType:P.GenericPour.type,options:{servicePathFactory:t,selectedId:s}})};function Kt(e){return t=>{const{model:s,status:n,KosModelLoader:r}=We(t.id,t.servicePathFactory,t.itemId);return b.jsx(r,{...n,children:b.jsx(e,{...t,genericPour:s})})}}const Xe=o.createContext(void 0),Mt=({children:e})=>{const{model:t,ready:s}=Pe(),n=o.useMemo(()=>s&&t?{model:t}:{},[s,t]);return b.jsx(Xe.Provider,{value:n,children:e})},Bt=()=>{const e=o.useContext(Xe);if(!e)throw new Error("useAssemblyContext must be used within a AssemblyProvider");return e},Ze=o.createContext(void 0),jt=({children:e})=>{const{model:t,ready:s}=we(),n=o.useMemo(()=>s&&t?{model:t}:{},[s,t]);return b.jsx(Ze.Provider,{value:n,children:e})},_t=()=>{const e=o.useContext(Ze);if(!e)throw new Error("useAvailabilityContext must be used within a AvailabilityProvider");return e},Je=o.createContext(void 0),Nt=({children:e,id:t})=>{const{model:s,ready:n}=Ie(t),r=o.useMemo(()=>n&&s?{model:s}:{},[n,s]);return b.jsx(Je.Provider,{value:r,children:e})},Lt=()=>{const e=o.useContext(Je);if(!e)throw new Error("useBoardContext must be used within a BoardProvider");return e},Qe=o.createContext(void 0),Ht=({children:e})=>{const{model:t,ready:s}=ke(),n=o.useMemo(()=>s&&t?{model:t}:{},[s,t]);return b.jsx(Qe.Provider,{value:n,children:e})},Dt=()=>{const e=o.useContext(Qe);if(!e)throw new Error("useBoardContainerContext must be used within a BoardContainerProvider");return e},ze=o.createContext(void 0),et=({children:e})=>{const{model:t,ready:s}=Te(),n=o.useMemo(()=>{if(s&&t){const a=t.nozzlePaths;return{model:t,nozzlePaths:a}}return{}},[s,t]),r=s&&t?e:null;return b.jsx(ze.Provider,{value:n,children:r})},tt=()=>{const e=o.useContext(ze);if(!e)throw new Error("useDeviceAssemblyContext must be used within a DeviceAssemblyProvider");return e};function Ot(){const e=o.createContext(null);return[()=>{const s=o.useContext(e);if(s===void 0)throw new Error("useDispenseKitContext must be used within a Provider");return s},e.Provider]}function st({children:e,provider:t,props:s,nozzleProps:n}){const r=Ve(s);return b.jsx(t,{value:r,children:e(n||{})})}function Ut({children:e,provider:t,props:s}){const{nozzlePaths:n}=tt(),r=(n==null?void 0:n.length)||0;return(n==null?void 0:n.map((i,c)=>b.jsx(He,{path:i,children:b.jsx(st,{provider:t,props:s,nozzleProps:{nozzleIndex:c,nozzlePath:i,totalNozzles:r,isFirstNozzle:c===0,isLastNozzle:c===r-1},children:e})},i)))||[]}function rt({provider:e,props:t}){return({children:s})=>e?b.jsx(et,{children:b.jsx(Ut,{provider:e,props:t,children:s})}):null}function Ft(e){const[t,s]=Ot();return[t,rt({provider:s,props:e})]}const nt=o.createContext(void 0),Gt=({children:e,id:t})=>{const{model:s,ready:n}=ye(t||""),r=o.useMemo(()=>n&&s?{model:s}:{},[n,s]);return b.jsx(nt.Provider,{value:r,children:e})},Vt=()=>{const e=o.useContext(nt);if(!e)throw new Error("useHolderContext must be used within a HolderProvider");return e},ot=o.createContext(void 0),Yt=({children:e})=>{const{model:t,ready:s}=Re(),n=o.useMemo(()=>s&&t?{model:t}:{},[s,t]);return b.jsx(ot.Provider,{value:n,children:e})},qt=()=>{const e=o.useContext(ot);if(!e)throw new Error("useHolderContainerContext must be used within a HolderContainerProvider");return e},it=o.createContext(void 0),Wt=({children:e})=>{const{model:t,ready:s}=Ae(),n=o.useMemo(()=>s&&t?{model:t}:{},[s,t]);return b.jsx(it.Provider,{value:n,children:e})},Xt=()=>{const e=o.useContext(it);if(!e)throw new Error("useIngredientContext must be used within a IngredientProvider");return e},at=o.createContext(void 0),Zt=({children:e})=>{const{model:t,ready:s}=Se(),n=o.useMemo(()=>s&&t?{model:t}:{},[s,t]);return b.jsx(at.Provider,{value:n,children:e})},Jt=()=>{const e=o.useContext(at);if(!e)throw new Error("useIngredientContainerContext must be used within a IngredientContainerProvider");return e},Qt=()=>{const e=P.Pump.type;return l.useKosModel({modelId:e,modelType:P.Pump.type,options:{}})},ct=o.createContext(void 0),zt=({children:e})=>{const{model:t,ready:s}=Qt(),n=o.useMemo(()=>s&&t?{model:t}:{},[s,t]);return b.jsx(ct.Provider,{value:n,children:e})},es=()=>{const e=o.useContext(ct);if(!e)throw new Error("usePumpContext must be used within a PumpProvider");return e};function ts(e){var t;try{if("shape"in e){const s=e,n=[];for(const[r,a]of Object.entries(s.shape)){const i=a,c={name:r,required:!i.isOptional()};if(i._def&&i._def.description&&(c.description=i._def.description),i._def){let f=i._def.typeName||"unknown";f==="ZodOptional"&&i._def.innerType&&(f=((t=i._def.innerType._def)==null?void 0:t.typeName)||"unknown"),c.type=f.replace("Zod","").toLowerCase()}n.push(c)}return n}return[]}catch(s){return console.warn("Failed to extract schema field info:",s),[]}}class ss{constructor(){B(this,"issues",[])}addError(t){this.issues.push({type:"error",message:t})}addWarning(t){this.issues.push({type:"warning",message:t})}addInfo(t){this.issues.push({type:"info",message:t})}hasErrors(){return this.issues.some(t=>t.type==="error")}hasIssues(){return this.issues.length>0}getIssues(){return[...this.issues]}}class rs{constructor(){B(this,"cache",new Map)}set(t,s){this.cache.set(t,s)}get(t){return this.cache.get(t)||[]}clear(){this.cache.clear()}}const be=new rs;class ns{constructor(){B(this,"extensionPoints",new Map)}define(t){if(this.extensionPoints.has(t.id))return console.warn(`Extension point ${t.id} is already defined`),this.extensionPoints.get(t.id);const s={config:t,id:t.id,isRegistered:!1,getExtensions:n=>n[t.id]||{},register:()=>{if(s.isRegistered){console.warn(`Extension point ${t.id} is already registered`);return}this.createReducer(t),s.isRegistered=!0}};return t.schema&&(s.getSchemaFieldInfo=()=>ts(t.schema)),this.extensionPoints.set(t.id,s),s}createReducer(t){return(s,n,r)=>{const a=n[t.contributionKey];return!a||typeof a!="object"||Object.entries(a).forEach(([i,c])=>{var m,C;if(!c)return;const f={remote:c.remote||"",sectionId:c.sectionId||i,experiences:r,contributions:n};if(t.validate){const g=new ss;if(t.validate(c,g)==="skip"){be.set(i,[{type:"warning",message:"Plugin marked to skip processing"}]);return}if(g.hasIssues()){const h=g.getIssues().map(u=>({...u,message:`Extension point validation: ${u.message}`}));if(be.set(i,h),g.hasErrors()){console.error(`Validation failed for ${t.id} contribution "${i}":`,h.filter(u=>u.type==="error").map(u=>u.message).join(", "));return}}else be.set(i,[])}const p=t.transform?t.transform(c,f):c;s[t.id]||(s[t.id]={});const d={id:i,type:t.contributionKey,data:p,remote:f.remote,sectionId:f.sectionId};if(t.isRankable&&typeof c.rank=="number"&&(d.rank=c.rank),p&&typeof p=="object"&&("component"in p&&(d.component=p.component),"view"in p&&(d.view=p.view),"location"in p&&(d.location=p.location)),s[t.id][i]=d,t.hasView&&((m=t.relatedPoints)!=null&&m.view)){const g=c.experienceId,x=r==null?void 0:r[g];x&&(s[t.relatedPoints.view]||(s[t.relatedPoints.view]={}),s[t.relatedPoints.view][i]={id:i,type:`${t.contributionKey}.view`,data:x,remote:f.remote,sectionId:f.sectionId})}(C=t.relatedPoints)!=null&&C.definition&&(s[t.relatedPoints.definition]||(s[t.relatedPoints.definition]={}),s[t.relatedPoints.definition][i]={id:i,type:`${t.contributionKey}.definition`,data:p,remote:f.remote,sectionId:f.sectionId})}),s}}getAllExtensionPoints(){return Array.from(this.extensionPoints.values()).filter(t=>t.isRegistered)}getAllDefinedExtensionPoints(){return Array.from(this.extensionPoints.values())}getExtensionPoint(t){return this.extensionPoints.get(t)}hasExtensionPoint(t){return this.extensionPoints.has(t)}}const os=new ns;var is={},L={};Object.defineProperty(L,"__esModule",{value:!0});L.loadRemoteModule=L.setRemoteDefinitions=L.setRemoteUrlResolver=void 0;let oe,Ce;const ve=new Map,ge=new Map;let _e=!1;function as(e){Ce=e}L.setRemoteUrlResolver=as;function cs(e){oe=e}L.setRemoteDefinitions=cs;async function us(e,t){const s=`${e}:${t}`;if(ve.has(s))return ve.get(s);const a=(await(ge.has(e)?ge.get(e):await ls(e)).get(t))();return ve.set(s,a),a}L.loadRemoteModule=us;const ds=(e,t)=>new Promise((s,n)=>{const r=document.createElement("script");r.src=e,r.type="text/javascript",r.async=!0,r.onload=()=>{s({get:i=>window[t].get(i),init:i=>{try{window[t].init(i)}catch(c){console.error(`Failed to initialize remote ${t}`,c),n(c)}}})},r.onerror=()=>n(new Error(`Remote ${t} not found`)),document.head.appendChild(r)});async function ls(e){if(!Ce&&!oe)throw new Error("Call setRemoteDefinitions or setRemoteUrlResolver to allow Dynamic Federation to find the remote apps correctly.");_e||(_e=!0,await __webpack_init_sharing__("default"));const t=oe?oe[e]:await Ce(e);let s=t;!t.endsWith(".mjs")&&!t.endsWith(".js")&&(s=`${t}${t.endsWith("/")?"":"/"}remoteEntry.js`);const n=await ds(s,e);return await n.init(__webpack_share_scopes__.default),ge.set(e,n),n}(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.setRemoteUrlResolver=e.setRemoteDefinitions=e.loadRemoteModule=void 0;var t=L;Object.defineProperty(e,"loadRemoteModule",{enumerable:!0,get:function(){return t.loadRemoteModule}}),Object.defineProperty(e,"setRemoteDefinitions",{enumerable:!0,get:function(){return t.setRemoteDefinitions}}),Object.defineProperty(e,"setRemoteUrlResolver",{enumerable:!0,get:function(){return t.setRemoteUrlResolver}})})(is);function ms(e,t,...s){return[e,t,...s].filter(Boolean).join(".")}function ps(e={}){const{experienceIdProperty:t="experienceId",flattenComponentProperties:s=!0,customTransform:n}=e;return(r,a)=>{var p;const i=r[t],c=i?((p=a.experiences)==null?void 0:p[i])||{}:{};let f={...r,view:c};return s&&c&&(c.component&&(f.component=c.component),c.location&&(f.location=c.location)),n&&(f=n(r,c,a)||f),f}}function fs(e){return os.define(e)}const ut=D.z.object({id:D.z.string().min(1,"ID is required").describe("Unique identifier for this extension"),title:D.z.string().min(1,"Title is required").describe("Display title shown in the interface"),namespace:D.z.string().min(1,"Namespace is required").describe("Namespace for organizing related extensions"),experienceId:D.z.string().min(1,"Experience ID is required").describe("Reference to the UI component experience for rendering")}),hs=ut.extend({rank:D.z.number().int().min(0).optional().describe("Optional ranking for ordering (higher = preferred)")});function bs(e,t,s){const n=e.safeParse(t);return n.success?!0:(n.error.errors.forEach(r=>{s.addError(`${r.path.join(".")}: ${r.message}`)}),!1)}function vs(e,t={}){return(t.rankable?hs:ut).extend(e)}const Ne=vs({type:D.z.literal("control.pour").describe("Type identifier for control pour extensions")},{rankable:!1}),dt=ms("cui","control","pour"),xs=fs({id:dt,contributionKey:"controlPour",displayName:"Control Pour",description:"Extension point for controlled pour plugin configurations with view support",hasView:!0,isRankable:!1,schema:Ne,metadata:{exportName:"ControlPourExtension",category:"Dispense",tags:["pour","control","beverage"]},validate:(e,t)=>{bs(Ne,e,t)},transform:ps()}),Cs=dt;exports.AssemblyProvider=Mt;exports.AvailabilityProvider=jt;exports.BoardContainerProvider=Ht;exports.BoardProvider=Nt;exports.ControlPourExtension=xs;exports.CuiKit=rt;exports.CuiKitWrapper=st;exports.DISPENSE_GROUP_BEVERAGE=z;exports.DISPENSE_GROUP_BRAND=Y;exports.DISPENSE_GROUP_FLAVOR=q;exports.DeviceAssemblyProvider=et;exports.EXTENSION_POINT_CONTROL_POUR=Cs;exports.HoldToPourIntentStrategy=qe;exports.HoldToPourStrategy=$e;exports.HolderContainerProvider=Yt;exports.HolderProvider=Gt;exports.IngredientContainerProvider=Zt;exports.IngredientProvider=Wt;exports.NozzleProvider=He;exports.PumpProvider=zt;exports.TapOrHoldIntentStrategy=Rt;exports.TapToPourIntentStrategy=At;exports.TapToPourStrategy=St;exports.initializeCuiKit=Ft;exports.useAssembly=Pe;exports.useAssemblyContext=Bt;exports.useAvailability=we;exports.useAvailabilityContext=_t;exports.useBeverages=De;exports.useBoard=Ie;exports.useBoardContainer=ke;exports.useBoardContainerContext=Dt;exports.useBoardContext=Lt;exports.useBrands=Oe;exports.useCuiKit=Ve;exports.useCuiKitTimers=xe;exports.useDefaultCuiKitLifecycle=gt;exports.useDeviceAssembly=Te;exports.useDeviceAssemblyContext=tt;exports.useDispenseLifecycle=Ye;exports.useFlavors=Ge;exports.useGenericPour=We;exports.useHolder=ye;exports.useHolderContainer=Re;exports.useHolderContainerContext=qt;exports.useHolderContext=Vt;exports.useIngredient=Ae;exports.useIngredientContainer=Se;exports.useIngredientContainerContext=Jt;exports.useIngredientContext=Xt;exports.useIngredientPour=kt;exports.useNozzle=Ee;exports.useNozzleContext=A;exports.useNozzlePour=Fe;exports.usePourTarget=yt;exports.usePumpContext=es;exports.withAssembly=pt;exports.withBeverage=ft;exports.withBoard=ht;exports.withBoardContainer=bt;exports.withDeviceAssembly=Pt;exports.withGenericPour=Kt;exports.withHolder=wt;exports.withHolderContainer=It;exports.withIngredient=Et;exports.withIngredientContainer=$t;exports.withNozzle=Tt;
|
|
2
|
-
//# sourceMappingURL=control-pour-extension-6WFoj5jQ.cjs.map
|