@kosdev-code/kos-dispense-sdk 0.1.0-dev.5840 → 0.1.0-next.719
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/{dispense-registration-manager-C7GGaZ47.js → dispense-registration-manager-DNibbp5F.js} +218 -266
- package/dispense-registration-manager-DNibbp5F.js.map +1 -0
- package/{dispense-registration-manager-lQhkTFKW.cjs → dispense-registration-manager-FTLZRpFt.cjs} +201 -249
- package/dispense-registration-manager-FTLZRpFt.cjs.map +1 -0
- package/{extension-utils-50g2ril2.cjs → extension-utils-Bh989x8z.cjs} +14 -25
- package/extension-utils-Bh989x8z.cjs.map +1 -0
- package/{extension-utils-Dt00FOJq.js → extension-utils-DkeldSBo.js} +20 -31
- package/extension-utils-DkeldSBo.js.map +1 -0
- package/extensions/control-pour-extension.d.ts +8 -9
- package/extensions/control-pour-extension.d.ts.map +1 -1
- package/extensions/index.d.ts.map +1 -1
- package/index.cjs +3 -6
- package/index.cjs.map +1 -1
- package/index.d.ts.map +1 -1
- package/index.js +89 -92
- package/index.js.map +1 -1
- package/models/constants/constants.d.ts.map +1 -1
- package/models/constants/index.d.ts.map +1 -1
- package/models/index.d.ts.map +1 -1
- package/models/models/assembly/assembly-model.d.ts +4 -5
- package/models/models/assembly/assembly-model.d.ts.map +1 -1
- package/models/models/assembly/assembly-registration.d.ts +1 -2
- package/models/models/assembly/assembly-registration.d.ts.map +1 -1
- package/models/models/assembly/board-utils.d.ts +1 -2
- package/models/models/assembly/board-utils.d.ts.map +1 -1
- package/models/models/assembly/holder-utils.d.ts +1 -2
- package/models/models/assembly/holder-utils.d.ts.map +1 -1
- package/models/models/assembly/index.d.ts.map +1 -1
- package/models/models/assembly/nozzle-utils.d.ts +1 -2
- package/models/models/assembly/nozzle-utils.d.ts.map +1 -1
- package/models/models/assembly/pump-utils.d.ts +2 -3
- package/models/models/assembly/pump-utils.d.ts.map +1 -1
- package/models/models/assembly/services/assembly-services.d.ts +0 -1
- package/models/models/assembly/services/assembly-services.d.ts.map +1 -1
- package/models/models/assembly/services/index.d.ts.map +1 -1
- package/models/models/assembly/types/index.d.ts +2 -3
- package/models/models/availability/availability-model.d.ts +1 -2
- package/models/models/availability/availability-model.d.ts.map +1 -1
- package/models/models/availability/index.d.ts.map +1 -1
- package/models/models/availability/types/index.d.ts +0 -1
- package/models/models/board/board-container-model.d.ts +2 -3
- package/models/models/board/board-container-model.d.ts.map +1 -1
- package/models/models/board/board-container-registration.d.ts +2 -3
- package/models/models/board/board-container-registration.d.ts.map +1 -1
- package/models/models/board/board-model.d.ts +1 -2
- package/models/models/board/board-model.d.ts.map +1 -1
- package/models/models/board/board-registration.d.ts +1 -2
- package/models/models/board/board-registration.d.ts.map +1 -1
- package/models/models/board/index.d.ts.map +1 -1
- package/models/models/board/types/index.d.ts +0 -2
- package/models/models/board/types/services.d.ts.map +1 -1
- package/models/models/board/utils/board-trouble-data-mapper.d.ts +1 -2
- package/models/models/board/utils/board-trouble-data-mapper.d.ts.map +1 -1
- package/models/models/board/utils/board-trouble-resolver.d.ts +0 -1
- package/models/models/board/utils/board-trouble-resolver.d.ts.map +1 -1
- package/models/models/device-assembly/device-assembly-model.d.ts +2 -3
- package/models/models/device-assembly/device-assembly-model.d.ts.map +1 -1
- package/models/models/device-assembly/device-assembly-registration.d.ts +2 -3
- package/models/models/device-assembly/device-assembly-registration.d.ts.map +1 -1
- package/models/models/device-assembly/index.d.ts.map +1 -1
- package/models/models/generic-pour/generic-pour-model.d.ts +3 -4
- package/models/models/generic-pour/generic-pour-model.d.ts.map +1 -1
- package/models/models/generic-pour/generic-pour-registration.d.ts +2 -3
- package/models/models/generic-pour/generic-pour-registration.d.ts.map +1 -1
- package/models/models/generic-pour/index.d.ts.map +1 -1
- package/models/models/generic-pour/services/generic-pour-services.d.ts.map +1 -1
- package/models/models/generic-pour/services/index.d.ts.map +1 -1
- package/models/models/holder/holder-model.d.ts +1 -2
- package/models/models/holder/holder-model.d.ts.map +1 -1
- package/models/models/holder/index.d.ts.map +1 -1
- package/models/models/holder/services/assignment-services.d.ts.map +1 -1
- package/models/models/holder/services/holder-services.d.ts.map +1 -1
- package/models/models/holder/services/index.d.ts.map +1 -1
- package/models/models/holder/types/index.d.ts +5 -7
- package/models/models/holder/utils/holder-utils.d.ts +0 -1
- package/models/models/holder/utils/holder-utils.d.ts.map +1 -1
- package/models/models/holder-container/holder-container-model.d.ts +1 -2
- package/models/models/holder-container/holder-container-model.d.ts.map +1 -1
- package/models/models/holder-container/index.d.ts.map +1 -1
- package/models/models/holder-container/types/index.d.ts +1 -3
- package/models/models/index.d.ts.map +1 -1
- package/models/models/ingredient/index.d.ts.map +1 -1
- package/models/models/ingredient/ingredient-model.d.ts +1 -2
- package/models/models/ingredient/ingredient-model.d.ts.map +1 -1
- package/models/models/ingredient/services/index.d.ts.map +1 -1
- package/models/models/ingredient/services/ingredient-services.d.ts.map +1 -1
- package/models/models/ingredient/types/index.d.ts +0 -2
- package/models/models/ingredient-container/index.d.ts.map +1 -1
- package/models/models/ingredient-container/ingredient-container-model.d.ts +1 -2
- package/models/models/ingredient-container/ingredient-container-model.d.ts.map +1 -1
- package/models/models/ingredient-container/types/index.d.ts +1 -3
- package/models/models/nozzle/index.d.ts.map +1 -1
- package/models/models/nozzle/nozzle-model.d.ts +6 -7
- package/models/models/nozzle/nozzle-model.d.ts.map +1 -1
- package/models/models/nozzle/services/index.d.ts.map +1 -1
- package/models/models/nozzle/services/nozzle-services.d.ts.map +1 -1
- package/models/models/nozzle/types/index.d.ts +1 -3
- package/models/models/pump/index.d.ts.map +1 -1
- package/models/models/pump/pump-model.d.ts +1 -2
- package/models/models/pump/pump-model.d.ts.map +1 -1
- package/models/models/pump/services/index.d.ts.map +1 -1
- package/models/models/pump/services/pump-services.d.ts +3 -5
- package/models/models/pump/services/pump-services.d.ts.map +1 -1
- package/models/models/pump/types/index.d.ts +1 -3
- package/models/models/pump/utils/pump-trouble-resolver.d.ts +0 -1
- package/models/models/pump/utils/pump-trouble-resolver.d.ts.map +1 -1
- package/models/models/pump-container/index.d.ts.map +1 -1
- package/models/models/pump-container/pump-container-model.d.ts +1 -2
- package/models/models/pump-container/pump-container-model.d.ts.map +1 -1
- package/models/models/pump-container/types/index.d.ts +1 -3
- package/models/models/types/assembly.d.ts.map +1 -1
- package/models/models/types/index.d.ts.map +1 -1
- package/models/models/types/intent.d.ts +0 -1
- package/models/models/types/intent.d.ts.map +1 -1
- package/models/models/types/pouring.d.ts.map +1 -1
- package/models/utils/dispense-registration-manager.d.ts +5 -6
- package/models/utils/dispense-registration-manager.d.ts.map +1 -1
- package/models/utils/extension-utils.d.ts +6 -7
- package/models/utils/extension-utils.d.ts.map +1 -1
- package/models/utils/openapi-index.d.ts.map +1 -1
- package/models/utils/registration.d.ts +0 -1
- package/models/utils/registration.d.ts.map +1 -1
- package/models/utils/service.d.ts +34 -35
- package/models/utils/service.d.ts.map +1 -1
- package/models/utils/services/dispense/1.6.5/service.d.ts +34 -35
- package/models/utils/services/dispense/1.6.5/service.d.ts.map +1 -1
- package/models/utils/services/dispense/1.8.1/service.d.ts +34 -35
- package/models/utils/services/dispense/1.8.1/service.d.ts.map +1 -1
- package/models/utils/services/dispense/daily/service.d.ts +34 -35
- package/models/utils/services/dispense/daily/service.d.ts.map +1 -1
- package/models/utils/services-index.d.ts.map +1 -1
- package/models.cjs +2 -4
- package/models.cjs.map +1 -1
- package/models.d.ts +1 -0
- package/models.js +25 -27
- package/models.js.map +1 -1
- package/package.json +10 -11
- package/{pump-provider-CBFev3qg.cjs → pump-provider-Coy43LDF.cjs} +154 -175
- package/pump-provider-Coy43LDF.cjs.map +1 -0
- package/{pump-provider-DyxEmFRT.js → pump-provider-DEbqbOnK.js} +217 -238
- package/pump-provider-DEbqbOnK.js.map +1 -0
- package/ui/contexts/assembly/assembly-provider.d.ts +1 -2
- package/ui/contexts/assembly/assembly-provider.d.ts.map +1 -1
- package/ui/contexts/assembly/index.d.ts.map +1 -1
- package/ui/contexts/availability/availability-provider.d.ts +1 -2
- package/ui/contexts/availability/availability-provider.d.ts.map +1 -1
- package/ui/contexts/availability/index.d.ts.map +1 -1
- package/ui/contexts/board/board-provider.d.ts +1 -2
- package/ui/contexts/board/board-provider.d.ts.map +1 -1
- package/ui/contexts/board/index.d.ts.map +1 -1
- package/ui/contexts/board-container/board-container-provider.d.ts +1 -2
- package/ui/contexts/board-container/board-container-provider.d.ts.map +1 -1
- package/ui/contexts/board-container/index.d.ts.map +1 -1
- package/ui/contexts/cui-kit/cui-kit.d.ts +1 -2
- package/ui/contexts/cui-kit/cui-kit.d.ts.map +1 -1
- package/ui/contexts/cui-kit/index.d.ts.map +1 -1
- package/ui/contexts/device-assembly/device-assembly-provider.d.ts +1 -2
- package/ui/contexts/device-assembly/device-assembly-provider.d.ts.map +1 -1
- package/ui/contexts/device-assembly/index.d.ts.map +1 -1
- package/ui/contexts/holder/holder-provider.d.ts +1 -2
- package/ui/contexts/holder/holder-provider.d.ts.map +1 -1
- package/ui/contexts/holder/index.d.ts.map +1 -1
- package/ui/contexts/holder-container/holder-container-provider.d.ts +1 -2
- package/ui/contexts/holder-container/holder-container-provider.d.ts.map +1 -1
- package/ui/contexts/holder-container/index.d.ts.map +1 -1
- package/ui/contexts/index.d.ts.map +1 -1
- package/ui/contexts/ingredient/index.d.ts.map +1 -1
- package/ui/contexts/ingredient/ingredient-provider.d.ts +1 -2
- package/ui/contexts/ingredient/ingredient-provider.d.ts.map +1 -1
- package/ui/contexts/ingredient-container/index.d.ts.map +1 -1
- package/ui/contexts/ingredient-container/ingredient-container-provider.d.ts +1 -2
- package/ui/contexts/ingredient-container/ingredient-container-provider.d.ts.map +1 -1
- package/ui/contexts/nozzle/index.d.ts.map +1 -1
- package/ui/contexts/nozzle/nozzle-provider.d.ts +1 -2
- package/ui/contexts/nozzle/nozzle-provider.d.ts.map +1 -1
- package/ui/contexts/pump/index.d.ts.map +1 -1
- package/ui/contexts/pump/pump-provider.d.ts +1 -2
- package/ui/contexts/pump/pump-provider.d.ts.map +1 -1
- package/ui/hooks/assembly/index.d.ts.map +1 -1
- package/ui/hooks/assembly/use-assembly.d.ts +1 -2
- package/ui/hooks/assembly/use-assembly.d.ts.map +1 -1
- package/ui/hooks/assembly/with-assembly.d.ts +0 -1
- package/ui/hooks/assembly/with-assembly.d.ts.map +1 -1
- package/ui/hooks/availability/index.d.ts.map +1 -1
- package/ui/hooks/availability/use-availability.d.ts +1 -2
- package/ui/hooks/availability/use-availability.d.ts.map +1 -1
- package/ui/hooks/availability/with-availability.d.ts +0 -1
- package/ui/hooks/availability/with-availability.d.ts.map +1 -1
- package/ui/hooks/board/index.d.ts.map +1 -1
- package/ui/hooks/board/use-board.d.ts +1 -2
- package/ui/hooks/board/use-board.d.ts.map +1 -1
- package/ui/hooks/board/with-board.d.ts +0 -1
- package/ui/hooks/board/with-board.d.ts.map +1 -1
- package/ui/hooks/board-container/index.d.ts.map +1 -1
- package/ui/hooks/board-container/use-board-container.d.ts +1 -2
- package/ui/hooks/board-container/use-board-container.d.ts.map +1 -1
- package/ui/hooks/board-container/with-board-container.d.ts +0 -1
- package/ui/hooks/board-container/with-board-container.d.ts.map +1 -1
- package/ui/hooks/cui-kit/dispense-topics.d.ts +0 -1
- package/ui/hooks/cui-kit/dispense-topics.d.ts.map +1 -1
- package/ui/hooks/cui-kit/index.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-ambient-attract-timers.d.ts +0 -1
- package/ui/hooks/cui-kit/use-ambient-attract-timers.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-beverages.d.ts +1 -2
- package/ui/hooks/cui-kit/use-beverages.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-brands.d.ts +1 -2
- package/ui/hooks/cui-kit/use-brands.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-cui-kit.d.ts +3 -4
- package/ui/hooks/cui-kit/use-cui-kit.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-default-cui-kit-lifecycle.d.ts +0 -1
- package/ui/hooks/cui-kit/use-default-cui-kit-lifecycle.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-dispense-lifecycle.d.ts +0 -1
- package/ui/hooks/cui-kit/use-dispense-lifecycle.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-dispense-timers.d.ts +0 -1
- package/ui/hooks/cui-kit/use-dispense-timers.d.ts.map +1 -1
- package/ui/hooks/cui-kit/use-flavors.d.ts +1 -2
- package/ui/hooks/cui-kit/use-flavors.d.ts.map +1 -1
- package/ui/hooks/device-assembly/index.d.ts.map +1 -1
- package/ui/hooks/device-assembly/use-device-assembly.d.ts +1 -2
- package/ui/hooks/device-assembly/use-device-assembly.d.ts.map +1 -1
- package/ui/hooks/device-assembly/with-device-assembly.d.ts +0 -1
- package/ui/hooks/device-assembly/with-device-assembly.d.ts.map +1 -1
- package/ui/hooks/generic-pour/index.d.ts.map +1 -1
- package/ui/hooks/generic-pour/use-generic-pour.d.ts +2 -3
- package/ui/hooks/generic-pour/use-generic-pour.d.ts.map +1 -1
- package/ui/hooks/generic-pour/with-generic-pour.d.ts +0 -1
- package/ui/hooks/generic-pour/with-generic-pour.d.ts.map +1 -1
- package/ui/hooks/holder/index.d.ts.map +1 -1
- package/ui/hooks/holder/use-holder.d.ts +1 -2
- package/ui/hooks/holder/use-holder.d.ts.map +1 -1
- package/ui/hooks/holder/with-holder.d.ts +0 -1
- package/ui/hooks/holder/with-holder.d.ts.map +1 -1
- package/ui/hooks/holder-container/index.d.ts.map +1 -1
- package/ui/hooks/holder-container/use-holder-container.d.ts +1 -2
- package/ui/hooks/holder-container/use-holder-container.d.ts.map +1 -1
- package/ui/hooks/holder-container/with-holder-container.d.ts +0 -1
- package/ui/hooks/holder-container/with-holder-container.d.ts.map +1 -1
- package/ui/hooks/index.d.ts.map +1 -1
- package/ui/hooks/ingredient/index.d.ts.map +1 -1
- package/ui/hooks/ingredient/use-ingredient-pour.d.ts +2 -3
- package/ui/hooks/ingredient/use-ingredient-pour.d.ts.map +1 -1
- package/ui/hooks/ingredient/use-ingredient.d.ts +1 -2
- package/ui/hooks/ingredient/use-ingredient.d.ts.map +1 -1
- package/ui/hooks/ingredient/with-ingredient.d.ts +0 -1
- package/ui/hooks/ingredient/with-ingredient.d.ts.map +1 -1
- package/ui/hooks/ingredient-container/index.d.ts.map +1 -1
- package/ui/hooks/ingredient-container/use-ingredient-container.d.ts +1 -2
- package/ui/hooks/ingredient-container/use-ingredient-container.d.ts.map +1 -1
- package/ui/hooks/ingredient-container/with-ingredient-container.d.ts +0 -1
- package/ui/hooks/ingredient-container/with-ingredient-container.d.ts.map +1 -1
- package/ui/hooks/nozzle/index.d.ts.map +1 -1
- package/ui/hooks/nozzle/use-dispense-kit.d.ts +0 -1
- package/ui/hooks/nozzle/use-dispense-kit.d.ts.map +1 -1
- package/ui/hooks/nozzle/use-nozzle.d.ts +1 -2
- package/ui/hooks/nozzle/use-nozzle.d.ts.map +1 -1
- package/ui/hooks/nozzle/with-nozzle.d.ts +0 -1
- package/ui/hooks/nozzle/with-nozzle.d.ts.map +1 -1
- package/ui/hooks/nozzle-pour/index.d.ts.map +1 -1
- package/ui/hooks/nozzle-pour/use-nozzle-pour.d.ts +3 -4
- package/ui/hooks/nozzle-pour/use-nozzle-pour.d.ts.map +1 -1
- package/ui/hooks/pour/index.d.ts.map +1 -1
- package/ui/hooks/pour/use-pour.d.ts +4 -5
- package/ui/hooks/pour/use-pour.d.ts.map +1 -1
- package/ui/hooks/pump/index.d.ts.map +1 -1
- package/ui/hooks/pump/use-pump.d.ts +1 -2
- package/ui/hooks/pump/use-pump.d.ts.map +1 -1
- package/ui/hooks/pump/with-pump.d.ts +0 -1
- package/ui/hooks/pump/with-pump.d.ts.map +1 -1
- package/ui/hooks/utils/pour-strategy/hold-to-pour-intent-strategy.d.ts +1 -2
- package/ui/hooks/utils/pour-strategy/hold-to-pour-intent-strategy.d.ts.map +1 -1
- package/ui/hooks/utils/pour-strategy/hold-to-pour-strategy.d.ts +0 -1
- package/ui/hooks/utils/pour-strategy/hold-to-pour-strategy.d.ts.map +1 -1
- package/ui/hooks/utils/pour-strategy/index.d.ts.map +1 -1
- package/ui/hooks/utils/pour-strategy/pour-strategy.d.ts +1 -2
- package/ui/hooks/utils/pour-strategy/pour-strategy.d.ts.map +1 -1
- package/ui/hooks/utils/pour-strategy/tap-or-hold-to-pour-intent-strategy.d.ts +1 -2
- package/ui/hooks/utils/pour-strategy/tap-or-hold-to-pour-intent-strategy.d.ts.map +1 -1
- package/ui/hooks/utils/pour-strategy/tap-to-pour-intent-strategy.d.ts +1 -2
- package/ui/hooks/utils/pour-strategy/tap-to-pour-intent-strategy.d.ts.map +1 -1
- package/ui/hooks/utils/pour-strategy/tap-to-pour-strategy.d.ts +0 -1
- package/ui/hooks/utils/pour-strategy/tap-to-pour-strategy.d.ts.map +1 -1
- package/ui/index.d.ts.map +1 -1
- package/ui/utils/pour-context.d.ts.map +1 -1
- package/ui.cjs +1 -5
- package/ui.cjs.map +1 -1
- package/ui.d.ts +1 -0
- package/ui.js +64 -68
- package/ui.js.map +1 -1
- package/dispense-registration-manager-C7GGaZ47.js.map +0 -1
- package/dispense-registration-manager-lQhkTFKW.cjs.map +0 -1
- package/extension-utils-50g2ril2.cjs.map +0 -1
- package/extension-utils-Dt00FOJq.js.map +0 -1
- package/kos-models.json +0 -180
- package/pump-provider-CBFev3qg.cjs.map +0 -1
- package/pump-provider-DyxEmFRT.js.map +0 -1
package/{dispense-registration-manager-C7GGaZ47.js → dispense-registration-manager-DNibbp5F.js}
RENAMED
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
-
var __publicField = (obj, key, value) => {
|
|
4
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
-
return value;
|
|
6
|
-
};
|
|
7
1
|
import { kosModel, Kos, isKosModel, resolveServiceUrl, ServiceFactory, KosLog, KosModelContainer, KosExtensionUtils, kosChild, FetchError, ExtensionManager, EXTENSION_TROUBLE_MAPPER, EXTENSION_TROUBLE_DATA_MAPPER, getKosModelSync, kosDependency, kosTroubleAware, kosAction, kosTopicHandler, DependencyLifecycle, getKosModel, FutureManager, kosFuture, FutureHandler, EXTENSION_FEATURE_FLAG_RESOLVER, isKosDataModel, ChildModels, KosFeatureFlags, kosParentAware, createPropKey, kosStateEntry, kosStateExit, kosStateGuard, kosLoggerAware, kosStateMachine, MultipleFutureHandler, arraysEqual, getAllKosCompanionModels, EventBus, KosContextManager, destroyKosModel, SingletonKosModelRegistrationFactory, kosFutureAware, ObservableData, KosModelRegistrationFactory, KosModelRegistry as KosModelRegistry$1, RegistrationManager, registerCoreModels, registerLegacyModel } from "@kosdev-code/kos-ui-sdk";
|
|
8
2
|
import "react";
|
|
9
3
|
var ExtensionType = /* @__PURE__ */ ((ExtensionType2) => {
|
|
@@ -46,6 +40,11 @@ var __decorateClass$c = (decorators, target, key, kind) => {
|
|
|
46
40
|
};
|
|
47
41
|
const MODEL_TYPE$c = "ingredient-model";
|
|
48
42
|
let IngredientModelImpl = class {
|
|
43
|
+
id;
|
|
44
|
+
ingredientId;
|
|
45
|
+
name;
|
|
46
|
+
type;
|
|
47
|
+
data;
|
|
49
48
|
constructor(modelId, {
|
|
50
49
|
name,
|
|
51
50
|
type,
|
|
@@ -53,11 +52,6 @@ let IngredientModelImpl = class {
|
|
|
53
52
|
ingredientId,
|
|
54
53
|
...rest
|
|
55
54
|
}) {
|
|
56
|
-
__publicField(this, "id");
|
|
57
|
-
__publicField(this, "ingredientId");
|
|
58
|
-
__publicField(this, "name");
|
|
59
|
-
__publicField(this, "type");
|
|
60
|
-
__publicField(this, "data");
|
|
61
55
|
this.id = modelId;
|
|
62
56
|
this.ingredientId = ingredientId;
|
|
63
57
|
this.name = name;
|
|
@@ -112,16 +106,15 @@ var __decorateClass$b = (decorators, target, key, kind) => {
|
|
|
112
106
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
113
107
|
if (decorator = decorators[i])
|
|
114
108
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
115
|
-
if (kind && result)
|
|
116
|
-
__defProp$9(target, key, result);
|
|
109
|
+
if (kind && result) __defProp$9(target, key, result);
|
|
117
110
|
return result;
|
|
118
111
|
};
|
|
119
112
|
const MODEL_TYPE$b = "ingredient-container-model";
|
|
120
113
|
const log$3 = KosLog.createLogger({ name: "ingredient-container-model" });
|
|
121
114
|
let IngredientContainerModelImpl = class {
|
|
115
|
+
id;
|
|
116
|
+
ingredients;
|
|
122
117
|
constructor(modelId, options) {
|
|
123
|
-
__publicField(this, "id");
|
|
124
|
-
__publicField(this, "ingredients");
|
|
125
118
|
this.id = modelId;
|
|
126
119
|
this.ingredients = new KosModelContainer({
|
|
127
120
|
indexMap: {
|
|
@@ -138,19 +131,18 @@ let IngredientContainerModelImpl = class {
|
|
|
138
131
|
return this.ingredients.getIndexByKey("ingredientType", type);
|
|
139
132
|
}
|
|
140
133
|
async load(context) {
|
|
141
|
-
var _a;
|
|
142
134
|
log$3.debug(`loading ingredient container ${this.id}`);
|
|
143
135
|
const allIngredients = await getIngredients();
|
|
144
|
-
if (
|
|
136
|
+
if (allIngredients?.status !== 200) {
|
|
145
137
|
throw new Error("Failed to load ingredients");
|
|
146
138
|
}
|
|
147
139
|
const ingredientContext = await KosExtensionUtils.executeLoaderExtension({
|
|
148
140
|
context,
|
|
149
141
|
extension: ExtensionType.IngredientLoader
|
|
150
142
|
});
|
|
151
|
-
const ingredientData =
|
|
143
|
+
const ingredientData = allIngredients?.data ?? {};
|
|
152
144
|
for (const key of Object.keys(ingredientData)) {
|
|
153
|
-
for (const ingredientData2 of
|
|
145
|
+
for (const ingredientData2 of allIngredients?.data?.[key] || []) {
|
|
154
146
|
const data = await KosExtensionUtils.executeDataMapperExtension({
|
|
155
147
|
extension: ExtensionType.IngredientMapper,
|
|
156
148
|
data: ingredientData2,
|
|
@@ -226,8 +218,7 @@ const unassignHolderIngredient = async (holderPath) => {
|
|
|
226
218
|
return response;
|
|
227
219
|
};
|
|
228
220
|
const replaceLine = async (holderPath) => {
|
|
229
|
-
if (!holderPath)
|
|
230
|
-
throw new Error("Missing holderPath");
|
|
221
|
+
if (!holderPath) throw new Error("Missing holderPath");
|
|
231
222
|
log$2.debug(
|
|
232
223
|
`sending POST request to /api/ext/dispense/pumpEvents/replaceLine/${holderPath}`
|
|
233
224
|
);
|
|
@@ -248,7 +239,6 @@ const getAssignments = async () => {
|
|
|
248
239
|
return response;
|
|
249
240
|
};
|
|
250
241
|
const sendRfidOverride = async (holderPath, overrides) => {
|
|
251
|
-
var _a, _b, _c, _d;
|
|
252
242
|
const factoryJson = JSON.stringify(overrides);
|
|
253
243
|
const url = `${URL$4}/api/ext/dispense/assignments`;
|
|
254
244
|
try {
|
|
@@ -256,15 +246,15 @@ const sendRfidOverride = async (holderPath, overrides) => {
|
|
|
256
246
|
model: { holderPath, factoryJson },
|
|
257
247
|
urlOverride: url
|
|
258
248
|
});
|
|
259
|
-
if (
|
|
249
|
+
if (response?.status === 200 && response?.data?.error) {
|
|
260
250
|
return [response.data.error || "unknownError", response.data];
|
|
261
251
|
}
|
|
262
|
-
return [void 0, response
|
|
252
|
+
return [void 0, response?.data];
|
|
263
253
|
} catch (error) {
|
|
264
254
|
if (error instanceof FetchError) {
|
|
265
255
|
return [
|
|
266
|
-
|
|
267
|
-
|
|
256
|
+
error.payload?.data?.error || "unknownError",
|
|
257
|
+
error.payload?.data
|
|
268
258
|
];
|
|
269
259
|
}
|
|
270
260
|
}
|
|
@@ -290,8 +280,7 @@ var __decorateClass$a = (decorators, target, key, kind) => {
|
|
|
290
280
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
291
281
|
if (decorator = decorators[i])
|
|
292
282
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
293
|
-
if (kind && result)
|
|
294
|
-
__defProp$8(target, key, result);
|
|
283
|
+
if (kind && result) __defProp$8(target, key, result);
|
|
295
284
|
return result;
|
|
296
285
|
};
|
|
297
286
|
const MODEL_TYPE$a = DispenseModelType.Holder;
|
|
@@ -315,7 +304,7 @@ ExtensionManager[EXTENSION_TROUBLE_DATA_MAPPER].register(
|
|
|
315
304
|
const ingredientModel = pumpModel.ingredientId ? getKosModelSync(pumpModel.ingredientId).model : void 0;
|
|
316
305
|
return {
|
|
317
306
|
ingredientId: pumpModel.ingredientId,
|
|
318
|
-
ingredientName:
|
|
307
|
+
ingredientName: ingredientModel?.displayName ?? (ingredientModel?.name || ""),
|
|
319
308
|
childPumpName: pumpModel.name
|
|
320
309
|
};
|
|
321
310
|
}
|
|
@@ -342,7 +331,7 @@ ExtensionManager[EXTENSION_TROUBLE_DATA_MAPPER].register(
|
|
|
342
331
|
const ingredientId = trouble.data.ingredients[0];
|
|
343
332
|
const { model } = getKosModelSync(ingredientId);
|
|
344
333
|
return {
|
|
345
|
-
ingredientName:
|
|
334
|
+
ingredientName: model?.displayName ?? (model?.name || ""),
|
|
346
335
|
ingredients: trouble.data.ingredients ? trouble.data.ingredients : [],
|
|
347
336
|
unknonwnIngredientId: trouble.data.unknonwnIngredientId ?? ""
|
|
348
337
|
};
|
|
@@ -351,14 +340,27 @@ ExtensionManager[EXTENSION_TROUBLE_DATA_MAPPER].register(
|
|
|
351
340
|
}
|
|
352
341
|
);
|
|
353
342
|
class AssignmentError extends Error {
|
|
343
|
+
type;
|
|
354
344
|
constructor(type, message) {
|
|
355
345
|
super(message);
|
|
356
|
-
__publicField(this, "type");
|
|
357
346
|
this.name = "AssignmentError";
|
|
358
347
|
this.type = type;
|
|
359
348
|
}
|
|
360
349
|
}
|
|
361
350
|
let HolderModelImpl = class {
|
|
351
|
+
id;
|
|
352
|
+
path;
|
|
353
|
+
name;
|
|
354
|
+
ingredientId;
|
|
355
|
+
ingredientType;
|
|
356
|
+
ingredientSource;
|
|
357
|
+
group;
|
|
358
|
+
slice;
|
|
359
|
+
logger;
|
|
360
|
+
data;
|
|
361
|
+
enjoyByDate;
|
|
362
|
+
pumps;
|
|
363
|
+
ingredientContainer;
|
|
362
364
|
constructor(modelId, {
|
|
363
365
|
path,
|
|
364
366
|
name,
|
|
@@ -370,19 +372,6 @@ let HolderModelImpl = class {
|
|
|
370
372
|
data,
|
|
371
373
|
enjoyByDate
|
|
372
374
|
}, context) {
|
|
373
|
-
__publicField(this, "id");
|
|
374
|
-
__publicField(this, "path");
|
|
375
|
-
__publicField(this, "name");
|
|
376
|
-
__publicField(this, "ingredientId");
|
|
377
|
-
__publicField(this, "ingredientType");
|
|
378
|
-
__publicField(this, "ingredientSource");
|
|
379
|
-
__publicField(this, "group");
|
|
380
|
-
__publicField(this, "slice");
|
|
381
|
-
__publicField(this, "logger");
|
|
382
|
-
__publicField(this, "data");
|
|
383
|
-
__publicField(this, "enjoyByDate");
|
|
384
|
-
__publicField(this, "pumps");
|
|
385
|
-
__publicField(this, "ingredientContainer");
|
|
386
375
|
this.id = modelId;
|
|
387
376
|
this.path = path;
|
|
388
377
|
this.name = name;
|
|
@@ -424,8 +413,7 @@ let HolderModelImpl = class {
|
|
|
424
413
|
return !!this.enjoyByDate && !this.unassigned;
|
|
425
414
|
}
|
|
426
415
|
get hasEnjoyByWarning() {
|
|
427
|
-
|
|
428
|
-
return ((_a = this.troublesByType["EnjoyByTrouble"]) == null ? void 0 : _a.length) > 0;
|
|
416
|
+
return this.troublesByType["EnjoyByTrouble"]?.length > 0;
|
|
429
417
|
}
|
|
430
418
|
get nozzlePaths() {
|
|
431
419
|
return this.pumps.data.map((pump) => pump.nozzlePath);
|
|
@@ -447,7 +435,7 @@ let HolderModelImpl = class {
|
|
|
447
435
|
const intent = typeof props === "string" ? props : props.intent;
|
|
448
436
|
const pumpPath = typeof props === "string" ? void 0 : props.pumpPath;
|
|
449
437
|
const pump = pumpPath ? this.pumps.getModel(pumpPath) : this.pumps.data[0];
|
|
450
|
-
return pump
|
|
438
|
+
return pump?.performIntent({ intent });
|
|
451
439
|
}
|
|
452
440
|
get pourState() {
|
|
453
441
|
const state = this.pumps.data.reduce((resolvedState, pump) => {
|
|
@@ -459,8 +447,7 @@ let HolderModelImpl = class {
|
|
|
459
447
|
return state;
|
|
460
448
|
}
|
|
461
449
|
get nozzlePath() {
|
|
462
|
-
|
|
463
|
-
return (_a = this.pumps.data[0]) == null ? void 0 : _a.nozzlePath;
|
|
450
|
+
return this.pumps.data[0]?.nozzlePath;
|
|
464
451
|
}
|
|
465
452
|
get pumpPaths() {
|
|
466
453
|
return this.pumps.data.map((pump) => pump.id);
|
|
@@ -477,11 +464,10 @@ let HolderModelImpl = class {
|
|
|
477
464
|
});
|
|
478
465
|
}
|
|
479
466
|
get ingredient() {
|
|
480
|
-
var _a;
|
|
481
467
|
if (!this.ingredientId) {
|
|
482
468
|
return void 0;
|
|
483
469
|
}
|
|
484
|
-
const ingredient =
|
|
470
|
+
const ingredient = this.ingredientContainer?.ingredients.getModel(
|
|
485
471
|
this.ingredientId
|
|
486
472
|
);
|
|
487
473
|
return ingredient;
|
|
@@ -496,11 +482,10 @@ let HolderModelImpl = class {
|
|
|
496
482
|
}
|
|
497
483
|
}
|
|
498
484
|
get previousIngredient() {
|
|
499
|
-
var _a;
|
|
500
485
|
if (!this.prevIngredientId) {
|
|
501
486
|
return void 0;
|
|
502
487
|
}
|
|
503
|
-
const ingredient =
|
|
488
|
+
const ingredient = this.ingredientContainer?.ingredients.getModel(
|
|
504
489
|
this.prevIngredientId
|
|
505
490
|
);
|
|
506
491
|
return ingredient;
|
|
@@ -515,8 +500,7 @@ let HolderModelImpl = class {
|
|
|
515
500
|
}
|
|
516
501
|
}
|
|
517
502
|
get prevIngredientId() {
|
|
518
|
-
|
|
519
|
-
return (_b = (_a = this.pumps.data) == null ? void 0 : _a[0]) == null ? void 0 : _b.prevIngredientId;
|
|
503
|
+
return this.pumps.data?.[0]?.prevIngredientId;
|
|
520
504
|
}
|
|
521
505
|
get unassigned() {
|
|
522
506
|
return (!this.ingredientId || this.ingredientId === "0") && (!this.prevIngredientId || this.prevIngredientId === "0");
|
|
@@ -570,7 +554,7 @@ let HolderModelImpl = class {
|
|
|
570
554
|
);
|
|
571
555
|
}
|
|
572
556
|
kosAction(() => {
|
|
573
|
-
this.ingredientId = result
|
|
557
|
+
this.ingredientId = result?.ingredientId;
|
|
574
558
|
});
|
|
575
559
|
return result;
|
|
576
560
|
} catch (e) {
|
|
@@ -645,7 +629,6 @@ const Holder = {
|
|
|
645
629
|
factory: Kos.Factory.create(MODEL_TYPE$a)
|
|
646
630
|
};
|
|
647
631
|
const mapAssemblyHolderToModel = async (group, holderData) => {
|
|
648
|
-
var _a;
|
|
649
632
|
const _ingredientId = ExtensionManager.propertyMapper.executeMapper(
|
|
650
633
|
ExtensionType.HolderIngredientMapper,
|
|
651
634
|
holderData
|
|
@@ -668,7 +651,7 @@ const mapAssemblyHolderToModel = async (group, holderData) => {
|
|
|
668
651
|
ingredientId: _ingredientId || ingredientId,
|
|
669
652
|
ingredientType: type || ingType,
|
|
670
653
|
ingredientSource: ingSource,
|
|
671
|
-
enjoyByDate:
|
|
654
|
+
enjoyByDate: holderData.container?.enjoyByDate ? new Date(holderData.container.enjoyByDate) : void 0,
|
|
672
655
|
slice: sliceData,
|
|
673
656
|
group,
|
|
674
657
|
data: extData
|
|
@@ -696,18 +679,17 @@ var __decorateClass$9 = (decorators, target, key, kind) => {
|
|
|
696
679
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
697
680
|
if (decorator = decorators[i])
|
|
698
681
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
699
|
-
if (kind && result)
|
|
700
|
-
__defProp$7(target, key, result);
|
|
682
|
+
if (kind && result) __defProp$7(target, key, result);
|
|
701
683
|
return result;
|
|
702
684
|
};
|
|
703
685
|
const MODEL_TYPE$9 = "board-container-model";
|
|
704
686
|
const TOPIC_BOARD_LINKED = "/kos/hardware/board/linked";
|
|
705
687
|
const TOPIC_BOARD_UNLINKED = "/kos/hardware/board/unlinked";
|
|
706
688
|
let BoardContainerModel = class {
|
|
689
|
+
id;
|
|
690
|
+
logger;
|
|
691
|
+
models;
|
|
707
692
|
constructor(modelId, options, context) {
|
|
708
|
-
__publicField(this, "id");
|
|
709
|
-
__publicField(this, "logger");
|
|
710
|
-
__publicField(this, "models");
|
|
711
693
|
this.id = modelId;
|
|
712
694
|
this.logger = context.logger;
|
|
713
695
|
this.models = new KosModelContainer({
|
|
@@ -778,7 +760,7 @@ const boardTroubleDataMapper = async (trouble) => {
|
|
|
778
760
|
const boardPath = trouble.data.boardPath;
|
|
779
761
|
const { model } = getKosModelSync(boardPath);
|
|
780
762
|
return {
|
|
781
|
-
boardName:
|
|
763
|
+
boardName: model?.name || ""
|
|
782
764
|
};
|
|
783
765
|
};
|
|
784
766
|
var __defProp$6 = Object.defineProperty;
|
|
@@ -788,8 +770,7 @@ var __decorateClass$8 = (decorators, target, key, kind) => {
|
|
|
788
770
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
789
771
|
if (decorator = decorators[i])
|
|
790
772
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
791
|
-
if (kind && result)
|
|
792
|
-
__defProp$6(target, key, result);
|
|
773
|
+
if (kind && result) __defProp$6(target, key, result);
|
|
793
774
|
return result;
|
|
794
775
|
};
|
|
795
776
|
const MODEL_TYPE$8 = DispenseModelType.PumpContainer;
|
|
@@ -800,9 +781,9 @@ var PumpIndex = /* @__PURE__ */ ((PumpIndex2) => {
|
|
|
800
781
|
return PumpIndex2;
|
|
801
782
|
})(PumpIndex || {});
|
|
802
783
|
let PumpContainerModelImpl = class {
|
|
784
|
+
id;
|
|
785
|
+
pumps;
|
|
803
786
|
constructor(modelId, options) {
|
|
804
|
-
__publicField(this, "id");
|
|
805
|
-
__publicField(this, "pumps");
|
|
806
787
|
this.id = modelId;
|
|
807
788
|
this.pumps = new KosModelContainer({
|
|
808
789
|
indexMap: {
|
|
@@ -891,7 +872,7 @@ const boardTroubleResolver = async (trouble) => {
|
|
|
891
872
|
const pumpContainer = await getKosModel(
|
|
892
873
|
PumpContainer.type
|
|
893
874
|
);
|
|
894
|
-
if (pumpContainer
|
|
875
|
+
if (pumpContainer?.model) {
|
|
895
876
|
const boardPumps = pumpContainer.model.models.getIndexByKey(
|
|
896
877
|
PumpIndex.byBoard,
|
|
897
878
|
boardPath
|
|
@@ -936,14 +917,14 @@ ExtensionManager[EXTENSION_TROUBLE_DATA_MAPPER].register(
|
|
|
936
917
|
boardTroubleDataMapper
|
|
937
918
|
);
|
|
938
919
|
let BoardModelImpl = class {
|
|
920
|
+
id;
|
|
921
|
+
type;
|
|
922
|
+
name;
|
|
923
|
+
path;
|
|
924
|
+
linked;
|
|
925
|
+
instanceId;
|
|
926
|
+
logger;
|
|
939
927
|
constructor(modelId, options, context) {
|
|
940
|
-
__publicField(this, "id");
|
|
941
|
-
__publicField(this, "type");
|
|
942
|
-
__publicField(this, "name");
|
|
943
|
-
__publicField(this, "path");
|
|
944
|
-
__publicField(this, "linked");
|
|
945
|
-
__publicField(this, "instanceId");
|
|
946
|
-
__publicField(this, "logger");
|
|
947
928
|
this.id = modelId;
|
|
948
929
|
this.logger = context.logger;
|
|
949
930
|
mapOptionsToModel(options, this);
|
|
@@ -994,8 +975,7 @@ var __decorateClass$6 = (decorators, target, key, kind) => {
|
|
|
994
975
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
995
976
|
if (decorator = decorators[i])
|
|
996
977
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
997
|
-
if (kind && result)
|
|
998
|
-
__defProp$5(target, key, result);
|
|
978
|
+
if (kind && result) __defProp$5(target, key, result);
|
|
999
979
|
return result;
|
|
1000
980
|
};
|
|
1001
981
|
const MODEL_TYPE$6 = DispenseModelType.HolderContainer;
|
|
@@ -1006,10 +986,10 @@ const TOPIC_REMOVE = "/kos/insertion/remove";
|
|
|
1006
986
|
const TOPIC_REPLACE_LINE = "/kos/pumpEvent/replaceLine";
|
|
1007
987
|
const TOPIC_HOLDER_CHANGED = "/kos/handle/*";
|
|
1008
988
|
let HolderContainerModelImpl = class {
|
|
989
|
+
id;
|
|
990
|
+
holders;
|
|
991
|
+
logger;
|
|
1009
992
|
constructor(modelId, _options, context) {
|
|
1010
|
-
__publicField(this, "id");
|
|
1011
|
-
__publicField(this, "holders");
|
|
1012
|
-
__publicField(this, "logger");
|
|
1013
993
|
this.id = modelId;
|
|
1014
994
|
this.holders = new KosModelContainer({
|
|
1015
995
|
indexMap: {
|
|
@@ -1024,7 +1004,6 @@ let HolderContainerModelImpl = class {
|
|
|
1024
1004
|
updateModel() {
|
|
1025
1005
|
}
|
|
1026
1006
|
handleHolderEvents(event) {
|
|
1027
|
-
var _a, _b, _c;
|
|
1028
1007
|
KosLog.ifDebug(
|
|
1029
1008
|
() => this.logger.debug("Received holder change event", JSON.stringify(event))
|
|
1030
1009
|
);
|
|
@@ -1033,9 +1012,9 @@ let HolderContainerModelImpl = class {
|
|
|
1033
1012
|
this.logger.info(
|
|
1034
1013
|
`Received change event for holder ${holder.path}. Updating fuel gauge data.`
|
|
1035
1014
|
);
|
|
1036
|
-
holder.slice.currentVolMl =
|
|
1037
|
-
holder.slice.maxVolMl =
|
|
1038
|
-
if (
|
|
1015
|
+
holder.slice.currentVolMl = event.slice?.currentVolMl;
|
|
1016
|
+
holder.slice.maxVolMl = event.slice?.maxVolMl;
|
|
1017
|
+
if (event?.container?.enjoyByDate) {
|
|
1039
1018
|
holder.enjoyByDate = new Date(event.container.enjoyByDate);
|
|
1040
1019
|
} else {
|
|
1041
1020
|
holder.enjoyByDate = void 0;
|
|
@@ -1049,7 +1028,6 @@ let HolderContainerModelImpl = class {
|
|
|
1049
1028
|
const wrappedData = Array.isArray(data) ? data : [data];
|
|
1050
1029
|
wrappedData.forEach((event) => {
|
|
1051
1030
|
kosAction(() => {
|
|
1052
|
-
var _a, _b, _c;
|
|
1053
1031
|
const ingredientId = event.ingredientId;
|
|
1054
1032
|
const holder = this.holders.getModel(event.path);
|
|
1055
1033
|
if (holder) {
|
|
@@ -1057,9 +1035,9 @@ let HolderContainerModelImpl = class {
|
|
|
1057
1035
|
`Received insertion event for holder ${holder.path}`
|
|
1058
1036
|
);
|
|
1059
1037
|
holder.updateIngredient(ingredientId);
|
|
1060
|
-
holder.slice.currentVolMl =
|
|
1061
|
-
holder.slice.maxVolMl =
|
|
1062
|
-
if (
|
|
1038
|
+
holder.slice.currentVolMl = event.slice?.currentVolMl;
|
|
1039
|
+
holder.slice.maxVolMl = event.slice?.maxVolMl;
|
|
1040
|
+
if (event?.container?.enjoyByDate) {
|
|
1063
1041
|
holder.enjoyByDate = new Date(event.container.enjoyByDate);
|
|
1064
1042
|
} else {
|
|
1065
1043
|
holder.enjoyByDate = void 0;
|
|
@@ -1166,7 +1144,7 @@ const sendIntent = async ({
|
|
|
1166
1144
|
}) => {
|
|
1167
1145
|
const url = `${URL$2}/api/ext/dispense/nozzle/nozzle/pipeline/ingredient/pour/${pumpId}/${intent}`;
|
|
1168
1146
|
const response = await postModel$2({ model: {}, urlOverride: url, tracker });
|
|
1169
|
-
if (response
|
|
1147
|
+
if (response?.data) {
|
|
1170
1148
|
FutureManager.initiateFuture(response.data);
|
|
1171
1149
|
}
|
|
1172
1150
|
return response;
|
|
@@ -1174,7 +1152,7 @@ const sendIntent = async ({
|
|
|
1174
1152
|
const getIntentVolume = async (pumpId, intent) => {
|
|
1175
1153
|
const url = `${URL$2}/api/ext/dispense/nozzle/nozzle/pipeline/ingredient/intent/${pumpId}/${intent}/volume`;
|
|
1176
1154
|
const response = await getOne$1({ urlOverride: url });
|
|
1177
|
-
if (!
|
|
1155
|
+
if (!response?.data) {
|
|
1178
1156
|
return { volume: -1 };
|
|
1179
1157
|
}
|
|
1180
1158
|
return response.data;
|
|
@@ -1186,8 +1164,7 @@ var __decorateClass$5 = (decorators, target, key, kind) => {
|
|
|
1186
1164
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
1187
1165
|
if (decorator = decorators[i])
|
|
1188
1166
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
1189
|
-
if (kind && result)
|
|
1190
|
-
__defProp$4(target, key, result);
|
|
1167
|
+
if (kind && result) __defProp$4(target, key, result);
|
|
1191
1168
|
return result;
|
|
1192
1169
|
};
|
|
1193
1170
|
const MODEL_TYPE$5 = DispenseModelType.Pump;
|
|
@@ -1196,25 +1173,25 @@ ExtensionManager[EXTENSION_TROUBLE_MAPPER].register(
|
|
|
1196
1173
|
pumpTroubleResolver
|
|
1197
1174
|
);
|
|
1198
1175
|
let PumpModelImpl = class {
|
|
1176
|
+
id;
|
|
1177
|
+
inserted;
|
|
1178
|
+
type;
|
|
1179
|
+
virtual;
|
|
1180
|
+
ingredientId;
|
|
1181
|
+
holderPath;
|
|
1182
|
+
boardPath;
|
|
1183
|
+
nozzlePath;
|
|
1184
|
+
childPump;
|
|
1185
|
+
name;
|
|
1186
|
+
path;
|
|
1187
|
+
prevIngredientId;
|
|
1188
|
+
/**
|
|
1189
|
+
* @kosApiLevel 12
|
|
1190
|
+
*/
|
|
1191
|
+
state;
|
|
1192
|
+
futureHandler;
|
|
1193
|
+
currentState = PourState.IDLE;
|
|
1199
1194
|
constructor(modelId, options) {
|
|
1200
|
-
__publicField(this, "id");
|
|
1201
|
-
__publicField(this, "inserted");
|
|
1202
|
-
__publicField(this, "type");
|
|
1203
|
-
__publicField(this, "virtual");
|
|
1204
|
-
__publicField(this, "ingredientId");
|
|
1205
|
-
__publicField(this, "holderPath");
|
|
1206
|
-
__publicField(this, "boardPath");
|
|
1207
|
-
__publicField(this, "nozzlePath");
|
|
1208
|
-
__publicField(this, "childPump");
|
|
1209
|
-
__publicField(this, "name");
|
|
1210
|
-
__publicField(this, "path");
|
|
1211
|
-
__publicField(this, "prevIngredientId");
|
|
1212
|
-
/**
|
|
1213
|
-
* @kosApiLevel 12
|
|
1214
|
-
*/
|
|
1215
|
-
__publicField(this, "state");
|
|
1216
|
-
__publicField(this, "futureHandler");
|
|
1217
|
-
__publicField(this, "currentState", PourState.IDLE);
|
|
1218
1195
|
this.id = modelId;
|
|
1219
1196
|
const {
|
|
1220
1197
|
inserted,
|
|
@@ -1269,12 +1246,10 @@ let PumpModelImpl = class {
|
|
|
1269
1246
|
}
|
|
1270
1247
|
// -------------------LIFECYCLE----------------------------
|
|
1271
1248
|
get pouringState() {
|
|
1272
|
-
|
|
1273
|
-
return ((_a = this.future) == null ? void 0 : _a.endState) || "";
|
|
1249
|
+
return this.future?.endState || "";
|
|
1274
1250
|
}
|
|
1275
1251
|
get isPouring() {
|
|
1276
|
-
|
|
1277
|
-
return !!(this.future && !((_a = this.future) == null ? void 0 : _a.endState)) || this.currentState === PourState.POUR_STARTING || this.currentState === PourState.POURING;
|
|
1252
|
+
return !!(this.future && !this.future?.endState) || this.currentState === PourState.POUR_STARTING || this.currentState === PourState.POURING;
|
|
1278
1253
|
}
|
|
1279
1254
|
get canPour() {
|
|
1280
1255
|
return !!this.ingredientId && !this.isPouring;
|
|
@@ -1287,10 +1262,9 @@ let PumpModelImpl = class {
|
|
|
1287
1262
|
}
|
|
1288
1263
|
}
|
|
1289
1264
|
async cancelPour() {
|
|
1290
|
-
var _a;
|
|
1291
1265
|
if (this.currentState === PourState.POURING || this.currentState === PourState.POUR_STARTING) {
|
|
1292
1266
|
this.currentState = PourState.POUR_CANCELING;
|
|
1293
|
-
await
|
|
1267
|
+
await this.future?.cancelFuture();
|
|
1294
1268
|
kosAction(() => {
|
|
1295
1269
|
this.currentState = PourState.IDLE;
|
|
1296
1270
|
});
|
|
@@ -1325,7 +1299,7 @@ let PumpModelImpl = class {
|
|
|
1325
1299
|
this.currentState = PourState.POURING;
|
|
1326
1300
|
});
|
|
1327
1301
|
}
|
|
1328
|
-
return result
|
|
1302
|
+
return result?.data;
|
|
1329
1303
|
} else {
|
|
1330
1304
|
throw new Error(`Cannot pour in state ${this.currentState}`);
|
|
1331
1305
|
}
|
|
@@ -1376,18 +1350,17 @@ const mapAssemblyPumpToModel = (nozzlePath, pump) => {
|
|
|
1376
1350
|
return pumpModel;
|
|
1377
1351
|
};
|
|
1378
1352
|
const assemblyPumpMap = (pumpContainer) => (holderContainer) => (nozzle) => (assemblyPump) => {
|
|
1379
|
-
var _a;
|
|
1380
1353
|
try {
|
|
1381
1354
|
Logger.debug(`adding pump ${assemblyPump.name}`);
|
|
1382
1355
|
const pump = mapAssemblyPumpToModel(nozzle.path, assemblyPump);
|
|
1383
1356
|
pumpContainer.addModel(pump);
|
|
1384
1357
|
const holderPath = pump.holderPath;
|
|
1385
1358
|
const holder = holderContainer.holders.getModel(holderPath);
|
|
1386
|
-
holder
|
|
1387
|
-
if (!
|
|
1388
|
-
holder
|
|
1359
|
+
holder?.pumps.addModel(pump);
|
|
1360
|
+
if (!holder?.nozzlePaths.includes(nozzle.path)) {
|
|
1361
|
+
holder?.nozzlePaths.push(nozzle.path);
|
|
1389
1362
|
}
|
|
1390
|
-
|
|
1363
|
+
assemblyPump?.pumps?.forEach((subPump) => {
|
|
1391
1364
|
const subHolderPath = pump.holderPath;
|
|
1392
1365
|
const subPumpData = {
|
|
1393
1366
|
...subPump,
|
|
@@ -1409,22 +1382,21 @@ var __decorateClass$4 = (decorators, target, key, kind) => {
|
|
|
1409
1382
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
1410
1383
|
if (decorator = decorators[i])
|
|
1411
1384
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
1412
|
-
if (kind && result)
|
|
1413
|
-
__defProp$3(target, key, result);
|
|
1385
|
+
if (kind && result) __defProp$3(target, key, result);
|
|
1414
1386
|
return result;
|
|
1415
1387
|
};
|
|
1416
1388
|
const MODEL_TYPE$4 = "assembly-model";
|
|
1417
1389
|
const CONTEXT_ASSEMBLY_DATA = "assembly-data";
|
|
1418
1390
|
const CONTEXT_ASSEMBLY_RAW_DATA = "assembly-raw-data";
|
|
1419
1391
|
let AssemblyModelImpl = class {
|
|
1392
|
+
id;
|
|
1393
|
+
_nozzlePaths = /* @__PURE__ */ new Set();
|
|
1394
|
+
troubleContainer;
|
|
1395
|
+
holderContainer;
|
|
1396
|
+
boardContainer;
|
|
1397
|
+
pumpContainer;
|
|
1398
|
+
logger;
|
|
1420
1399
|
constructor(modelId, _options, context) {
|
|
1421
|
-
__publicField(this, "id");
|
|
1422
|
-
__publicField(this, "_nozzlePaths", /* @__PURE__ */ new Set());
|
|
1423
|
-
__publicField(this, "troubleContainer");
|
|
1424
|
-
__publicField(this, "holderContainer");
|
|
1425
|
-
__publicField(this, "boardContainer");
|
|
1426
|
-
__publicField(this, "pumpContainer");
|
|
1427
|
-
__publicField(this, "logger");
|
|
1428
1400
|
this.id = modelId;
|
|
1429
1401
|
this.holderContainer = HolderContainer.factory({});
|
|
1430
1402
|
this.boardContainer = BoardContainer.factory({});
|
|
@@ -1471,8 +1443,7 @@ let AssemblyModelImpl = class {
|
|
|
1471
1443
|
this.logger.debug(`initializing assembly ${this.id}`);
|
|
1472
1444
|
}
|
|
1473
1445
|
async ready() {
|
|
1474
|
-
|
|
1475
|
-
(_a = this.troubleContainer) == null ? void 0 : _a.troubles.increment();
|
|
1446
|
+
this.troubleContainer?.troubles.increment();
|
|
1476
1447
|
ExtensionManager[EXTENSION_FEATURE_FLAG_RESOLVER].execute(
|
|
1477
1448
|
ExtensionType.AssemblyFeatureFlags,
|
|
1478
1449
|
this
|
|
@@ -1481,7 +1452,7 @@ let AssemblyModelImpl = class {
|
|
|
1481
1452
|
async load(context) {
|
|
1482
1453
|
this.logger.debug(`loading assembly ${this.id}`);
|
|
1483
1454
|
const result = await getAssembly();
|
|
1484
|
-
if (
|
|
1455
|
+
if (result?.status === 200) {
|
|
1485
1456
|
const data = await KosExtensionUtils.executeDataMapperExtension({
|
|
1486
1457
|
extension: ExtensionType.AssemblyMapper,
|
|
1487
1458
|
data: result.data,
|
|
@@ -1509,11 +1480,10 @@ let AssemblyModelImpl = class {
|
|
|
1509
1480
|
this.logger.debug(`adding assembly ${name}`);
|
|
1510
1481
|
this.logger.warn(`Assembly rest keys: ${Object.keys(rest).join(", ")}`);
|
|
1511
1482
|
Object.keys(rest).forEach((key) => {
|
|
1512
|
-
var _a;
|
|
1513
1483
|
this.logger.warn(`Enabling feature flag: ${key}`);
|
|
1514
1484
|
KosFeatureFlags.enableFeature(key);
|
|
1515
1485
|
context.set(`assembly-feature-${key}`, rest[key]);
|
|
1516
|
-
if (
|
|
1486
|
+
if (rest[key]["state"]?.["path"] !== void 0) {
|
|
1517
1487
|
const statePath = rest[key]["state"]["path"];
|
|
1518
1488
|
this.logger.warn(`Feature flag ${key} state path: ${statePath}`);
|
|
1519
1489
|
context.set(`assembly-state-path-${key}`, statePath);
|
|
@@ -1583,20 +1553,20 @@ var __decorateClass$3 = (decorators, target, key, kind) => {
|
|
|
1583
1553
|
};
|
|
1584
1554
|
const MODEL_TYPE$3 = DispenseModelType.Availability;
|
|
1585
1555
|
let AvailabilityModelImpl = class {
|
|
1556
|
+
id;
|
|
1557
|
+
data;
|
|
1558
|
+
properties;
|
|
1559
|
+
available;
|
|
1560
|
+
visible;
|
|
1561
|
+
groupId;
|
|
1562
|
+
rawId;
|
|
1563
|
+
altId;
|
|
1564
|
+
type;
|
|
1565
|
+
note;
|
|
1566
|
+
taggedIds;
|
|
1567
|
+
parentId;
|
|
1568
|
+
logger;
|
|
1586
1569
|
constructor(modelId, options, context) {
|
|
1587
|
-
__publicField(this, "id");
|
|
1588
|
-
__publicField(this, "data");
|
|
1589
|
-
__publicField(this, "properties");
|
|
1590
|
-
__publicField(this, "available");
|
|
1591
|
-
__publicField(this, "visible");
|
|
1592
|
-
__publicField(this, "groupId");
|
|
1593
|
-
__publicField(this, "rawId");
|
|
1594
|
-
__publicField(this, "altId");
|
|
1595
|
-
__publicField(this, "type");
|
|
1596
|
-
__publicField(this, "note");
|
|
1597
|
-
__publicField(this, "taggedIds");
|
|
1598
|
-
__publicField(this, "parentId");
|
|
1599
|
-
__publicField(this, "logger");
|
|
1600
1570
|
this.id = modelId;
|
|
1601
1571
|
this.taggedIds = options.taggedIds || [];
|
|
1602
1572
|
this.logger = context.logger;
|
|
@@ -1651,11 +1621,11 @@ const { postModel: postModel$1, deleteModel, getOne } = ServiceFactory.build({
|
|
|
1651
1621
|
const pourPourable = async (nozzleId, tracker) => {
|
|
1652
1622
|
const response = await postModel$1({
|
|
1653
1623
|
model: {},
|
|
1654
|
-
urlOverride: `${URL$1}/api/ext/dispense/nozzle/${nozzleId}/pipeline/beverage/pour`,
|
|
1624
|
+
urlOverride: `${URL$1}/api/ext/dispense/nozzle/${nozzleId}/pipeline/beverage/pour/selected/maxVolume`,
|
|
1655
1625
|
ordered: true,
|
|
1656
1626
|
tracker
|
|
1657
1627
|
});
|
|
1658
|
-
if (response
|
|
1628
|
+
if (response?.data) {
|
|
1659
1629
|
FutureManager.initiateFuture(response.data);
|
|
1660
1630
|
}
|
|
1661
1631
|
return response;
|
|
@@ -1667,7 +1637,7 @@ const pourNamedPourable = async (name, nozzleId, tracker) => {
|
|
|
1667
1637
|
ordered: true,
|
|
1668
1638
|
tracker
|
|
1669
1639
|
});
|
|
1670
|
-
if (response
|
|
1640
|
+
if (response?.data) {
|
|
1671
1641
|
FutureManager.initiateFuture(response.data);
|
|
1672
1642
|
}
|
|
1673
1643
|
return response;
|
|
@@ -1699,8 +1669,7 @@ var __decorateClass$2 = (decorators, target, key, kind) => {
|
|
|
1699
1669
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
1700
1670
|
if (decorator = decorators[i])
|
|
1701
1671
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
1702
|
-
if (kind && result)
|
|
1703
|
-
__defProp$2(target, key, result);
|
|
1672
|
+
if (kind && result) __defProp$2(target, key, result);
|
|
1704
1673
|
return result;
|
|
1705
1674
|
};
|
|
1706
1675
|
const MODEL_TYPE$2 = DispenseModelType.Nozzle;
|
|
@@ -1712,37 +1681,18 @@ const TOPIC_NOZZLE_POUR_STARTED = "/kos/nozzle/pour/started";
|
|
|
1712
1681
|
const TOPIC_NOZZLE_POUR_PROGRESS = "/kos/nozzle/pour/progress";
|
|
1713
1682
|
const TOPIC_NOZZLE_POUR_CANCEL = "/kos/nozzle/pour/cancel";
|
|
1714
1683
|
let NozzleModelImpl = class {
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
__publicField(this, "urlPrefix");
|
|
1728
|
-
this.id = modelId;
|
|
1729
|
-
this.path = options.path;
|
|
1730
|
-
this.name = options.name;
|
|
1731
|
-
this.beverageTopicPrefix = options.beverageTopicPrefix;
|
|
1732
|
-
this.topicPrefix = options.topicPrefix;
|
|
1733
|
-
this.urlPrefix = options.urlPrefix;
|
|
1734
|
-
this._selectedBeverage = void 0;
|
|
1735
|
-
this._selectedBrand = void 0;
|
|
1736
|
-
this._additionalItems = [];
|
|
1737
|
-
this.futureHandler = new MultipleFutureHandler(this);
|
|
1738
|
-
this._availabilityItems = new KosModelContainer({
|
|
1739
|
-
indexMap: {
|
|
1740
|
-
byGroup: "groupId",
|
|
1741
|
-
byParent: "parentId"
|
|
1742
|
-
},
|
|
1743
|
-
parentId: modelId
|
|
1744
|
-
});
|
|
1745
|
-
}
|
|
1684
|
+
/** the unique identifier for this nozzle.*/
|
|
1685
|
+
id;
|
|
1686
|
+
path;
|
|
1687
|
+
name;
|
|
1688
|
+
_selectedBeverage;
|
|
1689
|
+
_selectedBrand;
|
|
1690
|
+
_additionalItems;
|
|
1691
|
+
_availabilityItems;
|
|
1692
|
+
futureHandler;
|
|
1693
|
+
beverageTopicPrefix;
|
|
1694
|
+
topicPrefix;
|
|
1695
|
+
urlPrefix;
|
|
1746
1696
|
/**
|
|
1747
1697
|
* The availability nodes that can be dispensed from this nozzle.
|
|
1748
1698
|
* This is a subset of the availability for the entire dispenser
|
|
@@ -1769,8 +1719,7 @@ let NozzleModelImpl = class {
|
|
|
1769
1719
|
* @readonly
|
|
1770
1720
|
*/
|
|
1771
1721
|
get isPouring() {
|
|
1772
|
-
|
|
1773
|
-
return !!(this.futureHandler.getFuture() && !((_a = this.futureHandler.getFuture()) == null ? void 0 : _a.endState)) || this.currentState === PourState.POUR_STARTING || this.currentState === PourState.POURING || this.currentState === PourState.POUR_CANCELING;
|
|
1722
|
+
return !!(this.futureHandler.getFuture() && !this.futureHandler.getFuture()?.endState) || this.currentState === PourState.POUR_STARTING || this.currentState === PourState.POURING || this.currentState === PourState.POUR_CANCELING;
|
|
1774
1723
|
}
|
|
1775
1724
|
/**
|
|
1776
1725
|
* A derived value that indicates if the nozzle is currently available to pour a beverage.
|
|
@@ -1801,8 +1750,26 @@ let NozzleModelImpl = class {
|
|
|
1801
1750
|
return this.futureHandler.getFuture();
|
|
1802
1751
|
}
|
|
1803
1752
|
get pourProgress() {
|
|
1804
|
-
|
|
1805
|
-
|
|
1753
|
+
return this.future?.progress ?? 0;
|
|
1754
|
+
}
|
|
1755
|
+
constructor(modelId, options) {
|
|
1756
|
+
this.id = modelId;
|
|
1757
|
+
this.path = options.path;
|
|
1758
|
+
this.name = options.name;
|
|
1759
|
+
this.beverageTopicPrefix = options.beverageTopicPrefix;
|
|
1760
|
+
this.topicPrefix = options.topicPrefix;
|
|
1761
|
+
this.urlPrefix = options.urlPrefix;
|
|
1762
|
+
this._selectedBeverage = void 0;
|
|
1763
|
+
this._selectedBrand = void 0;
|
|
1764
|
+
this._additionalItems = [];
|
|
1765
|
+
this.futureHandler = new MultipleFutureHandler(this);
|
|
1766
|
+
this._availabilityItems = new KosModelContainer({
|
|
1767
|
+
indexMap: {
|
|
1768
|
+
byGroup: "groupId",
|
|
1769
|
+
byParent: "parentId"
|
|
1770
|
+
},
|
|
1771
|
+
parentId: modelId
|
|
1772
|
+
});
|
|
1806
1773
|
}
|
|
1807
1774
|
updateModel() {
|
|
1808
1775
|
}
|
|
@@ -1828,7 +1795,7 @@ let NozzleModelImpl = class {
|
|
|
1828
1795
|
async setSelectedPourable({ beverage, additional, context }, forceUpdate = false) {
|
|
1829
1796
|
if (!beverage) {
|
|
1830
1797
|
const response2 = await clearPourable(this.name);
|
|
1831
|
-
if (
|
|
1798
|
+
if (response2?.status !== 200) {
|
|
1832
1799
|
throw new Error("Failed to clear pourable");
|
|
1833
1800
|
}
|
|
1834
1801
|
this._selectedBeverage = void 0;
|
|
@@ -1867,7 +1834,7 @@ let NozzleModelImpl = class {
|
|
|
1867
1834
|
}
|
|
1868
1835
|
const payload = selectedPayload ?? defaultPayload;
|
|
1869
1836
|
const response = await selectPourable(this.name, payload);
|
|
1870
|
-
if (
|
|
1837
|
+
if (response?.status !== 200) {
|
|
1871
1838
|
throw new Error("Failed to select pourable");
|
|
1872
1839
|
}
|
|
1873
1840
|
}
|
|
@@ -1904,9 +1871,8 @@ let NozzleModelImpl = class {
|
|
|
1904
1871
|
handlePouringStart() {
|
|
1905
1872
|
this.logger.info("Pour started");
|
|
1906
1873
|
getAllKosCompanionModels(this).forEach((model) => {
|
|
1907
|
-
var _a;
|
|
1908
1874
|
if (isPourAware$1(model)) {
|
|
1909
|
-
|
|
1875
|
+
model.onPourStart?.();
|
|
1910
1876
|
}
|
|
1911
1877
|
});
|
|
1912
1878
|
}
|
|
@@ -1919,9 +1885,8 @@ let NozzleModelImpl = class {
|
|
|
1919
1885
|
handleCanceled() {
|
|
1920
1886
|
this.logger.info("Pour canceled");
|
|
1921
1887
|
getAllKosCompanionModels(this).forEach((model) => {
|
|
1922
|
-
var _a;
|
|
1923
1888
|
if (isPourAware$1(model)) {
|
|
1924
|
-
|
|
1889
|
+
model.onPourCancel?.();
|
|
1925
1890
|
}
|
|
1926
1891
|
});
|
|
1927
1892
|
const evt = {
|
|
@@ -1961,7 +1926,6 @@ let NozzleModelImpl = class {
|
|
|
1961
1926
|
}
|
|
1962
1927
|
// Inherits throwOnInvalid: false from class
|
|
1963
1928
|
async pour(tracker) {
|
|
1964
|
-
var _a;
|
|
1965
1929
|
try {
|
|
1966
1930
|
this.transition("START_POUR");
|
|
1967
1931
|
if (!tracker) {
|
|
@@ -1974,7 +1938,7 @@ let NozzleModelImpl = class {
|
|
|
1974
1938
|
type: "free"
|
|
1975
1939
|
};
|
|
1976
1940
|
EventBus.publish(TOPIC_NOZZLE_POUR_STARTED, evt);
|
|
1977
|
-
if (
|
|
1941
|
+
if (result?.data?.endState) {
|
|
1978
1942
|
this.transition("POUR_COMPLETED");
|
|
1979
1943
|
}
|
|
1980
1944
|
return result;
|
|
@@ -1988,7 +1952,6 @@ let NozzleModelImpl = class {
|
|
|
1988
1952
|
}
|
|
1989
1953
|
// Inherits throwOnInvalid: false from class
|
|
1990
1954
|
async fixedPour(name, tracker) {
|
|
1991
|
-
var _a;
|
|
1992
1955
|
try {
|
|
1993
1956
|
this.transition("START_POUR");
|
|
1994
1957
|
if (!tracker) {
|
|
@@ -2001,7 +1964,7 @@ let NozzleModelImpl = class {
|
|
|
2001
1964
|
type: "fixed"
|
|
2002
1965
|
};
|
|
2003
1966
|
EventBus.publish(TOPIC_NOZZLE_POUR_STARTED, evt);
|
|
2004
|
-
if (
|
|
1967
|
+
if (result?.data?.endState) {
|
|
2005
1968
|
this.transition("POUR_COMPLETED");
|
|
2006
1969
|
}
|
|
2007
1970
|
return result;
|
|
@@ -2015,9 +1978,8 @@ let NozzleModelImpl = class {
|
|
|
2015
1978
|
}
|
|
2016
1979
|
// Inherits throwOnInvalid: false - silently ignore if already idle
|
|
2017
1980
|
async cancelPour() {
|
|
2018
|
-
var _a;
|
|
2019
1981
|
this.transition("CANCEL_POUR");
|
|
2020
|
-
await
|
|
1982
|
+
await this.futureHandler.getFuture()?.cancelFuture();
|
|
2021
1983
|
this.transition("POUR_CANCELED");
|
|
2022
1984
|
}
|
|
2023
1985
|
updateGroupMembers() {
|
|
@@ -2036,20 +1998,19 @@ let NozzleModelImpl = class {
|
|
|
2036
1998
|
}
|
|
2037
1999
|
/** @internal */
|
|
2038
2000
|
async load(context) {
|
|
2039
|
-
var _a, _b;
|
|
2040
2001
|
this.logger.debug(`loading nozzle ${this.id}`);
|
|
2041
2002
|
const availability = await getAvailability(this.urlPrefix);
|
|
2042
|
-
if (
|
|
2003
|
+
if (availability?.status !== 200) {
|
|
2043
2004
|
throw new Error("Failed to load nozzle availability");
|
|
2044
2005
|
}
|
|
2045
2006
|
const beverageContext = await ExtensionManager.loader.executeLoader(
|
|
2046
2007
|
ExtensionType.AvailabilityLoader,
|
|
2047
2008
|
{}
|
|
2048
2009
|
);
|
|
2049
|
-
context
|
|
2050
|
-
context
|
|
2051
|
-
for (const group of Object.keys(
|
|
2052
|
-
for (const beverageData of
|
|
2010
|
+
context?.set(ExtensionType.AvailabilityLoader, beverageContext);
|
|
2011
|
+
context?.set(Nozzle.type, this);
|
|
2012
|
+
for (const group of Object.keys(availability.data?.groups) || []) {
|
|
2013
|
+
for (const beverageData of availability.data?.groups[group] || []) {
|
|
2053
2014
|
const extensionData = await ExtensionManager.dataMapper.executeMapper(
|
|
2054
2015
|
ExtensionType.AvailabilityMapper,
|
|
2055
2016
|
{ ...beverageData, groupId: group },
|
|
@@ -2074,9 +2035,9 @@ let NozzleModelImpl = class {
|
|
|
2074
2035
|
}
|
|
2075
2036
|
async updateAvailability(update) {
|
|
2076
2037
|
const context = KosContextManager.getContext(this.id);
|
|
2077
|
-
const beverageContext =
|
|
2038
|
+
const beverageContext = context?.get(ExtensionType.AvailabilityLoader) || {};
|
|
2078
2039
|
if (update.rebuild) {
|
|
2079
|
-
for (const group of Object.keys(update
|
|
2040
|
+
for (const group of Object.keys(update?.groups) || []) {
|
|
2080
2041
|
const deletedBeverages = this._availabilityItems.getIndexByKey("group", group).filter(
|
|
2081
2042
|
(beverage) => !update.groups[group].find(
|
|
2082
2043
|
(b) => `${this.id}-${group}-${b.id}` === beverage.id
|
|
@@ -2086,7 +2047,7 @@ let NozzleModelImpl = class {
|
|
|
2086
2047
|
this._availabilityItems.removeModel(beverage.id);
|
|
2087
2048
|
destroyKosModel(beverage);
|
|
2088
2049
|
});
|
|
2089
|
-
for (const beverageData of
|
|
2050
|
+
for (const beverageData of update?.groups[group] || []) {
|
|
2090
2051
|
const extensionData = await ExtensionManager.dataMapper.executeMapper(
|
|
2091
2052
|
ExtensionType.AvailabilityMapper,
|
|
2092
2053
|
{ ...beverageData, groupId: group },
|
|
@@ -2116,8 +2077,8 @@ let NozzleModelImpl = class {
|
|
|
2116
2077
|
}
|
|
2117
2078
|
}
|
|
2118
2079
|
} else {
|
|
2119
|
-
for (const group of Object.keys(update
|
|
2120
|
-
for (const beverageData of
|
|
2080
|
+
for (const group of Object.keys(update?.groups) || []) {
|
|
2081
|
+
for (const beverageData of update?.groups[group] || []) {
|
|
2121
2082
|
const extensionData = await ExtensionManager.dataMapper.executeMapper(
|
|
2122
2083
|
ExtensionType.AvailabilityMapper,
|
|
2123
2084
|
{ ...beverageData, groupId: group },
|
|
@@ -2239,16 +2200,15 @@ var __decorateClass$1 = (decorators, target, key, kind) => {
|
|
|
2239
2200
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
2240
2201
|
if (decorator = decorators[i])
|
|
2241
2202
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
2242
|
-
if (kind && result)
|
|
2243
|
-
__defProp$1(target, key, result);
|
|
2203
|
+
if (kind && result) __defProp$1(target, key, result);
|
|
2244
2204
|
return result;
|
|
2245
2205
|
};
|
|
2246
2206
|
const MODEL_TYPE$1 = "device-assembly-model";
|
|
2247
2207
|
let DeviceAssemblyModelImpl = class {
|
|
2208
|
+
id;
|
|
2209
|
+
deviceNozzles;
|
|
2210
|
+
logger;
|
|
2248
2211
|
constructor(modelId, _options, context) {
|
|
2249
|
-
__publicField(this, "id");
|
|
2250
|
-
__publicField(this, "deviceNozzles");
|
|
2251
|
-
__publicField(this, "logger");
|
|
2252
2212
|
this.id = modelId;
|
|
2253
2213
|
this.logger = context.logger;
|
|
2254
2214
|
this.deviceNozzles = new KosModelContainer();
|
|
@@ -2266,12 +2226,11 @@ let DeviceAssemblyModelImpl = class {
|
|
|
2266
2226
|
async load() {
|
|
2267
2227
|
this.logger.debug(`loading device-assembly ${this.id}`);
|
|
2268
2228
|
const result = await getAssembly();
|
|
2269
|
-
if (
|
|
2229
|
+
if (result?.status === 200) {
|
|
2270
2230
|
const nozzles = result.data.assemblies.map((assembly) => assembly.nozzles ?? []).flat();
|
|
2271
2231
|
nozzles.forEach((nozzleData) => {
|
|
2272
|
-
var _a;
|
|
2273
2232
|
const nozzleId = nozzleData.path;
|
|
2274
|
-
const beverageTopicPrefix =
|
|
2233
|
+
const beverageTopicPrefix = nozzleData.pipelines.find((pipeline) => pipeline.name === "beverage")?.topicPrefix || "";
|
|
2275
2234
|
const nozzle = Nozzle.factory(nozzleId)({
|
|
2276
2235
|
path: nozzleData.path,
|
|
2277
2236
|
name: nozzleData.name,
|
|
@@ -2305,20 +2264,19 @@ const pourOnTarget = async (path, tracker) => {
|
|
|
2305
2264
|
ordered: true,
|
|
2306
2265
|
tracker
|
|
2307
2266
|
});
|
|
2308
|
-
if (response
|
|
2267
|
+
if (response?.data) {
|
|
2309
2268
|
FutureManager.initiateFuture(response.data);
|
|
2310
2269
|
}
|
|
2311
2270
|
return response;
|
|
2312
2271
|
};
|
|
2313
|
-
var
|
|
2272
|
+
var __defProp = Object.defineProperty;
|
|
2314
2273
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
2315
2274
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
2316
2275
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
2317
2276
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
2318
2277
|
if (decorator = decorators[i])
|
|
2319
2278
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
2320
|
-
if (kind && result)
|
|
2321
|
-
__defProp2(target, key, result);
|
|
2279
|
+
if (kind && result) __defProp(target, key, result);
|
|
2322
2280
|
return result;
|
|
2323
2281
|
};
|
|
2324
2282
|
const MODEL_TYPE = "generic-pour-model";
|
|
@@ -2327,18 +2285,18 @@ const TOPIC_GENERIC_POUR_PROGRESS = "/kos/generic/pour/progress";
|
|
|
2327
2285
|
const TOPIC_GENERIC_POUR_CANCEL = "/kos/generic/pour/cancel";
|
|
2328
2286
|
const isPourAware = (model) => model.onPourStart !== void 0 && model.onPourCancel !== void 0 && model.onPourProgress !== void 0;
|
|
2329
2287
|
let GenericPourModelImpl = class {
|
|
2288
|
+
id;
|
|
2289
|
+
/**
|
|
2290
|
+
* @kosApiLevel 5
|
|
2291
|
+
*/
|
|
2292
|
+
servicePathFactory;
|
|
2293
|
+
pourType;
|
|
2294
|
+
/**
|
|
2295
|
+
* @kosApiLevel 5
|
|
2296
|
+
*/
|
|
2297
|
+
selectedId;
|
|
2298
|
+
state;
|
|
2330
2299
|
constructor(modelId, options) {
|
|
2331
|
-
__publicField(this, "id");
|
|
2332
|
-
/**
|
|
2333
|
-
* @kosApiLevel 5
|
|
2334
|
-
*/
|
|
2335
|
-
__publicField(this, "servicePathFactory");
|
|
2336
|
-
__publicField(this, "pourType");
|
|
2337
|
-
/**
|
|
2338
|
-
* @kosApiLevel 5
|
|
2339
|
-
*/
|
|
2340
|
-
__publicField(this, "selectedId");
|
|
2341
|
-
__publicField(this, "state");
|
|
2342
2300
|
this.id = modelId;
|
|
2343
2301
|
this.futureHandler = new FutureHandler(this);
|
|
2344
2302
|
this.servicePathFactory = options.servicePathFactory;
|
|
@@ -2384,9 +2342,8 @@ let GenericPourModelImpl = class {
|
|
|
2384
2342
|
handlePouringStart() {
|
|
2385
2343
|
this.logger.info("Pour started");
|
|
2386
2344
|
getAllKosCompanionModels(this).forEach((model) => {
|
|
2387
|
-
var _a;
|
|
2388
2345
|
if (isPourAware(model)) {
|
|
2389
|
-
|
|
2346
|
+
model.onPourStart?.();
|
|
2390
2347
|
}
|
|
2391
2348
|
});
|
|
2392
2349
|
const evt = {
|
|
@@ -2404,9 +2361,8 @@ let GenericPourModelImpl = class {
|
|
|
2404
2361
|
handleCanceled() {
|
|
2405
2362
|
this.logger.info("Pour canceled");
|
|
2406
2363
|
getAllKosCompanionModels(this).forEach((model) => {
|
|
2407
|
-
var _a;
|
|
2408
2364
|
if (isPourAware(model)) {
|
|
2409
|
-
|
|
2365
|
+
model.onPourCancel?.();
|
|
2410
2366
|
}
|
|
2411
2367
|
});
|
|
2412
2368
|
const evt = {
|
|
@@ -2416,7 +2372,6 @@ let GenericPourModelImpl = class {
|
|
|
2416
2372
|
}
|
|
2417
2373
|
// Inherits throwOnInvalid: false from class
|
|
2418
2374
|
async pour(tracker) {
|
|
2419
|
-
var _a;
|
|
2420
2375
|
try {
|
|
2421
2376
|
this.transition("START_POUR");
|
|
2422
2377
|
if (!tracker) {
|
|
@@ -2424,7 +2379,7 @@ let GenericPourModelImpl = class {
|
|
|
2424
2379
|
}
|
|
2425
2380
|
const result = await pourOnTarget(this.servicePath, tracker);
|
|
2426
2381
|
this.transition("POUR_ACTIVE");
|
|
2427
|
-
if (
|
|
2382
|
+
if (result?.data?.endState) {
|
|
2428
2383
|
this.transition("POUR_COMPLETED");
|
|
2429
2384
|
}
|
|
2430
2385
|
return result;
|
|
@@ -2438,9 +2393,8 @@ let GenericPourModelImpl = class {
|
|
|
2438
2393
|
}
|
|
2439
2394
|
// Inherits throwOnInvalid: false - silently ignore if already idle
|
|
2440
2395
|
async cancelPour() {
|
|
2441
|
-
var _a;
|
|
2442
2396
|
this.transition("CANCEL_POUR");
|
|
2443
|
-
await
|
|
2397
|
+
await this.futureHandler.getFuture()?.cancelFuture();
|
|
2444
2398
|
this.transition("POUR_CANCELED");
|
|
2445
2399
|
}
|
|
2446
2400
|
// ============================================================================
|
|
@@ -2451,8 +2405,7 @@ let GenericPourModelImpl = class {
|
|
|
2451
2405
|
* @readonly
|
|
2452
2406
|
*/
|
|
2453
2407
|
get isPouring() {
|
|
2454
|
-
|
|
2455
|
-
return !!(this.future && !((_a = this.future) == null ? void 0 : _a.endState)) || this.currentState === PourState.POUR_STARTING || this.currentState === PourState.POURING || this.currentState === PourState.POUR_CANCELING;
|
|
2408
|
+
return !!(this.future && !this.future?.endState) || this.currentState === PourState.POUR_STARTING || this.currentState === PourState.POURING || this.currentState === PourState.POUR_CANCELING;
|
|
2456
2409
|
}
|
|
2457
2410
|
/**
|
|
2458
2411
|
* A derived value that indicates if the pour target is currently available to pour a beverage.
|
|
@@ -2587,8 +2540,7 @@ const registerDispenseModels = (root) => () => {
|
|
|
2587
2540
|
ExtensionManager[EXTENSION_TROUBLE_DATA_MAPPER].register(
|
|
2588
2541
|
"FirmwareUpdateInProgressTrouble",
|
|
2589
2542
|
async (trouble) => {
|
|
2590
|
-
|
|
2591
|
-
if ((_a = trouble.data) == null ? void 0 : _a.deviceId) {
|
|
2543
|
+
if (trouble.data?.deviceId) {
|
|
2592
2544
|
const { model: assemblyModel } = getKosModelSync(
|
|
2593
2545
|
Assembly.type
|
|
2594
2546
|
);
|
|
@@ -2624,9 +2576,9 @@ _KosModelRegistry.legacy = RegistrationManager.model.registerLegacyModel(_KosMod
|
|
|
2624
2576
|
const KosModelRegistry = _KosModelRegistry;
|
|
2625
2577
|
export {
|
|
2626
2578
|
Assembly as A,
|
|
2627
|
-
|
|
2579
|
+
Board as B,
|
|
2628
2580
|
CONTEXT_ASSEMBLY_DATA as C,
|
|
2629
|
-
|
|
2581
|
+
DeviceAssembly as D,
|
|
2630
2582
|
ExtensionType as E,
|
|
2631
2583
|
getIntentVolume as F,
|
|
2632
2584
|
GenericPour as G,
|
|
@@ -2638,25 +2590,25 @@ export {
|
|
|
2638
2590
|
getAvailability as M,
|
|
2639
2591
|
Nozzle as N,
|
|
2640
2592
|
pourNamedPourable as O,
|
|
2641
|
-
|
|
2593
|
+
PourState as P,
|
|
2642
2594
|
pourPourable as Q,
|
|
2643
2595
|
selectPourable as R,
|
|
2644
2596
|
pourOnTarget as S,
|
|
2645
2597
|
TOPIC_BOARD_LINKED as T,
|
|
2646
|
-
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2652
|
-
|
|
2653
|
-
|
|
2654
|
-
|
|
2655
|
-
|
|
2656
|
-
|
|
2657
|
-
|
|
2658
|
-
|
|
2659
|
-
|
|
2598
|
+
Availability as a,
|
|
2599
|
+
BoardContainer as b,
|
|
2600
|
+
BoardContainerModel as c,
|
|
2601
|
+
CONTEXT_ASSEMBLY_RAW_DATA as d,
|
|
2602
|
+
DispenseModelType as e,
|
|
2603
|
+
HolderContainer as f,
|
|
2604
|
+
IngredientContainer as g,
|
|
2605
|
+
Pump as h,
|
|
2606
|
+
PumpContainer as i,
|
|
2607
|
+
PumpIndex as j,
|
|
2608
|
+
TOPIC_BOARD_UNLINKED as k,
|
|
2609
|
+
TOPIC_GENERIC_POUR_CANCEL as l,
|
|
2610
|
+
TOPIC_GENERIC_POUR_PROGRESS as m,
|
|
2611
|
+
TOPIC_GENERIC_POUR_STARTED as n,
|
|
2660
2612
|
kosModels as o,
|
|
2661
2613
|
getIngredients as p,
|
|
2662
2614
|
addAssignment as q,
|
|
@@ -2670,4 +2622,4 @@ export {
|
|
|
2670
2622
|
unassignHolderIngredient as y,
|
|
2671
2623
|
getAssembly as z
|
|
2672
2624
|
};
|
|
2673
|
-
//# sourceMappingURL=dispense-registration-manager-
|
|
2625
|
+
//# sourceMappingURL=dispense-registration-manager-DNibbp5F.js.map
|