@kosdev-code/kos-dispense-sdk 2.0.44 → 2.0.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/dispense-registration-manager-C7GGaZ47.js +2673 -0
  2. package/dispense-registration-manager-C7GGaZ47.js.map +1 -0
  3. package/dispense-registration-manager-lQhkTFKW.cjs +2671 -0
  4. package/dispense-registration-manager-lQhkTFKW.cjs.map +1 -0
  5. package/extension-utils-50g2ril2.cjs +500 -0
  6. package/extension-utils-50g2ril2.cjs.map +1 -0
  7. package/extension-utils-Dt00FOJq.js +501 -0
  8. package/extension-utils-Dt00FOJq.js.map +1 -0
  9. package/extensions/control-pour-extension.d.ts +70 -0
  10. package/extensions/control-pour-extension.d.ts.map +1 -0
  11. package/extensions/index.d.ts +2 -0
  12. package/extensions/index.d.ts.map +1 -0
  13. package/index.cjs +142 -1
  14. package/index.cjs.map +1 -1
  15. package/index.d.ts +2 -1
  16. package/index.d.ts.map +1 -1
  17. package/index.js +133 -103
  18. package/index.js.map +1 -1
  19. package/kos-models.json +180 -0
  20. package/models/models/assembly/assembly-model.d.ts +4 -0
  21. package/models/models/assembly/assembly-model.d.ts.map +1 -1
  22. package/models/models/assembly/pump-utils.d.ts.map +1 -1
  23. package/models/models/availability/availability-model.d.ts.map +1 -1
  24. package/models/models/board/board-container-model.d.ts +4 -0
  25. package/models/models/board/board-container-model.d.ts.map +1 -1
  26. package/models/models/board/board-model.d.ts +4 -0
  27. package/models/models/board/board-model.d.ts.map +1 -1
  28. package/models/models/device-assembly/device-assembly-model.d.ts +4 -0
  29. package/models/models/device-assembly/device-assembly-model.d.ts.map +1 -1
  30. package/models/models/generic-pour/generic-pour-model.d.ts +54 -13
  31. package/models/models/generic-pour/generic-pour-model.d.ts.map +1 -1
  32. package/models/models/generic-pour/index.d.ts +2 -2
  33. package/models/models/generic-pour/index.d.ts.map +1 -1
  34. package/models/models/generic-pour/types/index.d.ts +1 -0
  35. package/models/models/holder/holder-model.d.ts.map +1 -1
  36. package/models/models/holder-container/holder-container-model.d.ts.map +1 -1
  37. package/models/models/ingredient/ingredient-model.d.ts.map +1 -1
  38. package/models/models/ingredient-container/ingredient-container-model.d.ts.map +1 -1
  39. package/models/models/nozzle/index.d.ts +1 -1
  40. package/models/models/nozzle/index.d.ts.map +1 -1
  41. package/models/models/nozzle/nozzle-model.d.ts +28 -9
  42. package/models/models/nozzle/nozzle-model.d.ts.map +1 -1
  43. package/models/models/nozzle/types/index.d.ts +8 -0
  44. package/models/models/pump/pump-model.d.ts.map +1 -1
  45. package/models/models/pump/types/index.d.ts +7 -2
  46. package/models/models/pump-container/pump-container-model.d.ts.map +1 -1
  47. package/models/models/types/assembly.d.ts +4 -0
  48. package/models/models/types/assembly.d.ts.map +1 -1
  49. package/models/models/types/intent.d.ts +98 -0
  50. package/models/models/types/intent.d.ts.map +1 -1
  51. package/models/models/types/pouring.d.ts +1 -3
  52. package/models/models/types/pouring.d.ts.map +1 -1
  53. package/models/utils/dispense-registration-manager.d.ts +2 -2
  54. package/models/utils/extension-utils.d.ts +90 -18
  55. package/models/utils/extension-utils.d.ts.map +1 -1
  56. package/models/utils/openapi-index.d.ts +2 -0
  57. package/models/utils/openapi-index.d.ts.map +1 -0
  58. package/models/utils/service.d.ts +16 -12
  59. package/models/utils/service.d.ts.map +1 -1
  60. package/models/utils/services/dispense/1.6.5/openapi.d.ts +845 -0
  61. package/models/utils/services/dispense/1.6.5/service.d.ts +122 -0
  62. package/models/utils/services/dispense/1.6.5/service.d.ts.map +1 -0
  63. package/models/utils/services/dispense/1.8.1/openapi.d.ts +1653 -0
  64. package/models/utils/services/dispense/1.8.1/service.d.ts +122 -0
  65. package/models/utils/services/dispense/1.8.1/service.d.ts.map +1 -0
  66. package/models/utils/services/dispense/daily/openapi.d.ts +1820 -0
  67. package/models/utils/services/dispense/daily/service.d.ts +122 -0
  68. package/models/utils/services/dispense/daily/service.d.ts.map +1 -0
  69. package/models/utils/services-index.d.ts +4 -0
  70. package/models/utils/services-index.d.ts.map +1 -0
  71. package/models.cjs +47 -1
  72. package/models.cjs.map +1 -1
  73. package/models.js +40 -37
  74. package/package.json +19 -2
  75. package/pump-provider-CBFev3qg.cjs +1824 -0
  76. package/pump-provider-CBFev3qg.cjs.map +1 -0
  77. package/pump-provider-DyxEmFRT.js +1825 -0
  78. package/pump-provider-DyxEmFRT.js.map +1 -0
  79. package/ui/contexts/cui-kit/cui-kit.d.ts +4 -4
  80. package/ui/contexts/cui-kit/cui-kit.d.ts.map +1 -1
  81. package/ui/hooks/cui-kit/dispense-topics.d.ts +47 -0
  82. package/ui/hooks/cui-kit/dispense-topics.d.ts.map +1 -0
  83. package/ui/hooks/cui-kit/use-beverages.d.ts +3 -2
  84. package/ui/hooks/cui-kit/use-beverages.d.ts.map +1 -1
  85. package/ui/hooks/cui-kit/use-brands.d.ts +1 -1
  86. package/ui/hooks/cui-kit/use-brands.d.ts.map +1 -1
  87. package/ui/hooks/cui-kit/use-cui-kit.d.ts +3 -2
  88. package/ui/hooks/cui-kit/use-cui-kit.d.ts.map +1 -1
  89. package/ui/hooks/cui-kit/use-dispense-lifecycle.d.ts +2 -1
  90. package/ui/hooks/cui-kit/use-dispense-lifecycle.d.ts.map +1 -1
  91. package/ui/hooks/cui-kit/use-flavors.d.ts +1 -1
  92. package/ui/hooks/cui-kit/use-flavors.d.ts.map +1 -1
  93. package/ui/hooks/generic-pour/use-generic-pour.d.ts +3 -2
  94. package/ui/hooks/generic-pour/use-generic-pour.d.ts.map +1 -1
  95. package/ui/hooks/nozzle-pour/use-nozzle-pour.d.ts +6 -2
  96. package/ui/hooks/nozzle-pour/use-nozzle-pour.d.ts.map +1 -1
  97. package/ui/hooks/pour/use-pour.d.ts +8 -3
  98. package/ui/hooks/pour/use-pour.d.ts.map +1 -1
  99. package/ui/hooks/utils/pour-strategy/hold-to-pour-strategy.d.ts.map +1 -1
  100. package/ui/hooks/utils/pour-strategy/pour-strategy.d.ts +2 -9
  101. package/ui/hooks/utils/pour-strategy/pour-strategy.d.ts.map +1 -1
  102. package/ui/hooks/utils/pour-strategy/tap-to-pour-strategy.d.ts.map +1 -1
  103. package/ui/index.d.ts +1 -0
  104. package/ui/index.d.ts.map +1 -1
  105. package/ui/utils/pour-context.d.ts +8 -0
  106. package/ui/utils/pour-context.d.ts.map +1 -0
  107. package/ui.cjs +73 -1
  108. package/ui.cjs.map +1 -1
  109. package/ui.js +66 -65
  110. package/dispense-registration-manager-B6nEgoFC.js +0 -1960
  111. package/dispense-registration-manager-B6nEgoFC.js.map +0 -1
  112. package/dispense-registration-manager-CFnZNxso.cjs +0 -2
  113. package/dispense-registration-manager-CFnZNxso.cjs.map +0 -1
  114. package/extension-utils-CtCTSFBg.js +0 -381
  115. package/extension-utils-CtCTSFBg.js.map +0 -1
  116. package/extension-utils-DupW7Vca.cjs +0 -2
  117. package/extension-utils-DupW7Vca.cjs.map +0 -1
  118. package/pump-provider-BWzCQ8mL.js +0 -1238
  119. package/pump-provider-BWzCQ8mL.js.map +0 -1
  120. package/pump-provider-vk4pL4O3.cjs +0 -2
  121. package/pump-provider-vk4pL4O3.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"availability-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/availability/availability-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,wBAAwB,EAC9B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAgEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmFK;AACL,eAAO,MAAM,YAAY,EAAE,QAAQ,CACjC,wBAAwB,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAgBjE,CAAC"}
1
+ {"version":3,"file":"availability-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/availability/availability-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,wBAAwB,EAC9B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAoEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmFK;AACL,eAAO,MAAM,YAAY,EAAE,QAAQ,CACjC,wBAAwB,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAgBjE,CAAC"}
@@ -5,6 +5,10 @@ import { IKosDataModel, KosCreationContext } from '@kosdev-code/kos-ui-sdk';
5
5
  export declare const MODEL_TYPE = "board-container-model";
6
6
  export declare const TOPIC_BOARD_LINKED = "/kos/hardware/board/linked";
7
7
  export declare const TOPIC_BOARD_UNLINKED = "/kos/hardware/board/unlinked";
8
+ /**
9
+ * @kosService dispense.board
10
+ * @kosApiLevel 16
11
+ */
8
12
  export declare class BoardContainerModel implements IKosDataModel {
9
13
  id: string;
10
14
  private logger;
@@ -1 +1 @@
1
- {"version":3,"file":"board-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/board/board-container-model.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EAGb,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AASjC,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,UAAU,0BAA0B,CAAC;AAClD,eAAO,MAAM,kBAAkB,+BAA+B,CAAC;AAC/D,eAAO,MAAM,oBAAoB,iCAAiC,CAAC;AAEnE,qBACa,mBAAoB,YAAW,aAAa;IACvD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,MAAM,CAAmB;IACvB,OAAO,CAAC,MAAM,CAAiC;gBAEvD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,kBAAkB;IAa7B,IAAI,SAAS,qBAEZ;IAED,WAAW,IAAI,IAAI;IAInB,QAAQ,CAAC,KAAK,EAAE,UAAU;IAI1B,WAAW,CAAC,EAAE,EAAE,MAAM;IAItB,WAAW,CAAC,cAAc,EAAE,cAAc;IAiB1C,oBAAoB,CAAC,cAAc,EAAE,cAAc;IAenD,sBAAsB,CAAC,cAAc,EAAE,cAAc;CAWtD;AAED,MAAM,WAAW,mBAAmB;CAAG"}
1
+ {"version":3,"file":"board-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/board/board-container-model.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EAGb,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AASjC,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,UAAU,0BAA0B,CAAC;AAClD,eAAO,MAAM,kBAAkB,+BAA+B,CAAC;AAC/D,eAAO,MAAM,oBAAoB,iCAAiC,CAAC;AAEnE;;;GAGG;AACH,qBACa,mBAAoB,YAAW,aAAa;IACvD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,MAAM,CAAmB;IACvB,OAAO,CAAC,MAAM,CAAiC;gBAEvD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,kBAAkB;IAa7B,IAAI,SAAS,qBAEZ;IAED,WAAW,IAAI,IAAI;IAInB,QAAQ,CAAC,KAAK,EAAE,UAAU;IAI1B,WAAW,CAAC,EAAE,EAAE,MAAM;IAItB,WAAW,CAAC,cAAc,EAAE,cAAc;IAiB1C,oBAAoB,CAAC,cAAc,EAAE,cAAc;IAenD,sBAAsB,CAAC,cAAc,EAAE,cAAc;CAWtD;AAED,MAAM,WAAW,mBAAmB;CAAG"}
@@ -2,6 +2,10 @@ import { BoardModel, BoardOptions } from './types';
2
2
  import { IKosDataModel, KosCreationContext } from '@kosdev-code/kos-ui-sdk';
3
3
 
4
4
  export declare const MODEL_TYPE = "board-model";
5
+ /**
6
+ * @kosService dispense.board
7
+ * @kosApiLevel 2
8
+ */
5
9
  export declare class BoardModelImpl<AdditionalData extends object = {}> implements IKosDataModel, BoardModel<AdditionalData> {
6
10
  id: string;
7
11
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"board-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/board/board-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAOjC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAIxD,eAAO,MAAM,UAAU,gBAAgB,CAAC;AAwBxC,qBACa,cAAc,CAAC,cAAc,SAAS,MAAM,GAAG,EAAE,CAC5D,YAAW,aAAa,EAAE,UAAU,CAAC,cAAc,CAAC;IAEpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAG,MAAM,CAAC;IACd,IAAI,EAAG,MAAM,CAAC;IACd,IAAI,EAAG,MAAM,CAAC;IACd,MAAM,EAAG,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,MAAM,CAAmB;gBAE/B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,kBAAkB;IAQ7B,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAMlC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAG5B"}
1
+ {"version":3,"file":"board-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/board/board-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAOjC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAIxD,eAAO,MAAM,UAAU,gBAAgB,CAAC;AAwBxC;;;GAGG;AACH,qBACa,cAAc,CAAC,cAAc,SAAS,MAAM,GAAG,EAAE,CAC5D,YAAW,aAAa,EAAE,UAAU,CAAC,cAAc,CAAC;IAEpD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAG,MAAM,CAAC;IACd,IAAI,EAAG,MAAM,CAAC;IACd,IAAI,EAAG,MAAM,CAAC;IACd,MAAM,EAAG,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,MAAM,CAAmB;gBAE/B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,kBAAkB;IAQ7B,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAMlC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAG5B"}
@@ -4,6 +4,10 @@ import { IKosDataModel, IKosIdentifiable, KosCreationContext, PublicModelInterfa
4
4
 
5
5
  export declare const MODEL_TYPE = "device-assembly-model";
6
6
  export type DeviceAssemblyModel = PublicModelInterface<DeviceAssemblyModelImpl>;
7
+ /**
8
+ * @kosService dispense.device-assembly
9
+ * @kosApiLevel 2
10
+ */
7
11
  export declare class DeviceAssemblyModelImpl implements IKosDataModel, IKosIdentifiable {
8
12
  id: string;
9
13
  private deviceNozzles;
@@ -1 +1 @@
1
- {"version":3,"file":"device-assembly-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/device-assembly/device-assembly-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAGhB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD,eAAO,MAAM,UAAU,0BAA0B,CAAC;AAElD,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;AAEhF,qBACa,uBACX,YAAW,aAAa,EAAE,gBAAgB;IAE1C,EAAE,EAAE,MAAM,CAAC;IACD,OAAO,CAAC,aAAa,CAAkC;IACjE,OAAO,CAAC,MAAM,CAAmB;gBAE/B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,kBAAkB;IASvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIhD,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAwB5B"}
1
+ {"version":3,"file":"device-assembly-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/device-assembly/device-assembly-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAGhB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD,eAAO,MAAM,UAAU,0BAA0B,CAAC;AAElD,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;AAEhF;;;GAGG;AACH,qBACa,uBACX,YAAW,aAAa,EAAE,gBAAgB;IAE1C,EAAE,EAAE,MAAM,CAAC;IACD,OAAO,CAAC,aAAa,CAAkC;IACjE,OAAO,CAAC,MAAM,CAAmB;gBAE/B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,kBAAkB;IASvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIhD,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAwB5B"}
@@ -1,23 +1,66 @@
1
1
  import { GenericPourOptions } from './types';
2
2
  import { PourState } from '../types';
3
- import { PourStrategyAware } from '../../../ui/hooks/utils/pour-strategy';
4
- import { FutureAwareContainer, FutureContainer, IFutureModel, IKosDataModel, KosCreationContext, PublicModelInterface } from '@kosdev-code/kos-ui-sdk';
3
+ import { PourStrategyAware } from '../nozzle/types';
4
+ import { FutureContainer, IFutureModel, IKosDataModel, PublicModelInterface, KosData, KosFutureAwareFull, KosLoggerAware, KosStateMachineAware } from '@kosdev-code/kos-ui-sdk';
5
5
 
6
6
  export declare const MODEL_TYPE = "generic-pour-model";
7
7
  export type GenericPourModel = PublicModelInterface<GenericPourModelImpl>;
8
8
  export declare const TOPIC_GENERIC_POUR_STARTED = "/kos/generic/pour/started";
9
9
  export declare const TOPIC_GENERIC_POUR_PROGRESS = "/kos/generic/pour/progress";
10
10
  export declare const TOPIC_GENERIC_POUR_CANCEL = "/kos/generic/pour/cancel";
11
+ type PourEvent = "START_POUR" | "POUR_ACTIVE" | "CANCEL_POUR" | "POUR_CANCELED" | "POUR_COMPLETED";
12
+ export interface GenericPourModelImpl extends KosLoggerAware, KosFutureAwareFull<any>, KosStateMachineAware<PourState, PourEvent> {
13
+ }
14
+ /**
15
+ * @kosService dispense.generic-pour
16
+ * @kosApiLevel 4
17
+ */
11
18
  export declare class GenericPourModelImpl implements IKosDataModel, PourStrategyAware, FutureContainer {
12
19
  id: string;
13
- currentState: PourState;
14
- servicePathFactory: (selectedId: string) => string;
20
+ /**
21
+ * @kosApiLevel 5
22
+ */
23
+ servicePathFactory: (selectedId: string, context?: KosData<Record<string, any>>) => string;
15
24
  pourType: string;
16
- private logger;
17
- futureHandler: FutureAwareContainer;
25
+ /**
26
+ * @kosApiLevel 5
27
+ */
18
28
  selectedId?: string;
19
- constructor(modelId: string, options: GenericPourOptions, context: KosCreationContext);
29
+ private state;
30
+ constructor(modelId: string, options: GenericPourOptions);
20
31
  get servicePath(): string;
32
+ /**
33
+ * @kosApiLevel 12
34
+ */
35
+ updateContextData(key: string, value: any): void;
36
+ /**
37
+ * @kosApiLevel 12
38
+ */
39
+ removeContextData(key: string): void;
40
+ /**
41
+ * @kosApiLevel 12
42
+ */
43
+ clearContextData(): void;
44
+ /**
45
+ * @kosApiLevel 14
46
+ */
47
+ updateModel(options: GenericPourOptions): void;
48
+ /**
49
+ * @kosApiLevel 12
50
+ */
51
+ handlePouringStart(): void;
52
+ /**
53
+ * @kosApiLevel 12
54
+ */
55
+ handlePouringEnd(): void;
56
+ /**
57
+ * @kosApiLevel 12
58
+ */
59
+ handleCancelStart(): void;
60
+ /**
61
+ * @kosApiLevel 12
62
+ */
63
+ handleCanceled(): void;
21
64
  /**
22
65
  * An action that will initiate a pour for this nozzle.
23
66
  *
@@ -28,7 +71,6 @@ export declare class GenericPourModelImpl implements IKosDataModel, PourStrategy
28
71
  * */
29
72
  pour(tracker?: string): Promise<void>;
30
73
  cancelPour(): Promise<void>;
31
- private updateIfCurrent;
32
74
  /**
33
75
  * A derived value that indicates if the nozzle is currently pouring a beverage.
34
76
  * @readonly
@@ -37,16 +79,15 @@ export declare class GenericPourModelImpl implements IKosDataModel, PourStrategy
37
79
  /**
38
80
  * A derived value that indicates if the pour target is currently available to pour a beverage.
39
81
  *
40
- * Generally this means that the pour target is currently idle and not in the process of pouring, initiating a pour, or canceling a pour.
82
+ * Generally this means that the pour target is currently idle and not in the process of pouring,
83
+ * initiating a pour, or canceling a pour.
41
84
  * The value is observable and will change when the selected pourable changes or the pour target
42
85
  * starts or stops pouring.
43
86
  * @readonly
44
- * */
87
+ */
45
88
  get canPour(): boolean;
46
- get future(): IFutureModel<Record<string, unknown>> | undefined;
47
89
  get pourProgress(): number;
48
90
  onFutureUpdate(future: IFutureModel<any>): void;
49
- init(): Promise<void>;
50
- load(): Promise<void>;
51
91
  }
92
+ export {};
52
93
  //# sourceMappingURL=generic-pour-model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generic-pour-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/generic-pour/generic-pour-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EACpB,eAAe,EAGf,YAAY,EACZ,aAAa,EAEb,kBAAkB,EAClB,oBAAoB,EAKrB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAE/C,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAE1E,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,2BAA2B,+BAA+B,CAAC;AACxE,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AA2BpE,qBACa,oBACX,YAAW,aAAa,EAAE,iBAAiB,EAAE,eAAe;IAE5D,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,SAAS,CAAkB;IACzC,kBAAkB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,MAAM,CAAmB;IACjC,aAAa,EAAE,oBAAoB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAGlB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,kBAAkB;IAU7B,IAAI,WAAW,WAKd;IACD;;;;;;;SAOK;IAEQ,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM;IAyCrB,UAAU;IA2BvB,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACH,IAAI,SAAS,YAUZ;IAED;;;;;;;SAOK;IACL,IAAI,OAAO,YAEV;IAED,IAAI,MAAM,sDAET;IAED,IAAI,YAAY,WAEf;IAED,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC;IA6BlC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAG5B"}
1
+ {"version":3,"file":"generic-pour-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/generic-pour/generic-pour-model.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,eAAe,EAGf,YAAY,EACZ,aAAa,EAEb,oBAAoB,EAWpB,KAAK,OAAO,EACZ,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAa,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAE/C,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAE1E,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,2BAA2B,+BAA+B,CAAC;AACxE,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AAMpE,KAAK,SAAS,GACV,YAAY,GACZ,aAAa,GACb,aAAa,GACb,eAAe,GACf,gBAAgB,CAAC;AAqCrB,MAAM,WAAW,oBACf,SAAQ,cAAc,EACpB,kBAAkB,CAAC,GAAG,CAAC,EACvB,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC;CAAG;AAEjD;;;GAGG;AACH,qBAsCa,oBACX,YAAW,aAAa,EAAE,iBAAiB,EAAE,eAAe;IAE5D,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,kBAAkB,EAAE,CAClB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KACnC,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,KAAK,CAA+B;gBAEhC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB;IAUxD,IAAI,WAAW,WAKd;IAED;;OAEG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAIzC;;OAEG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM;IAI7B;;OAEG;IACH,gBAAgB;IAIhB;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAa9C;;OAEG;IAEH,kBAAkB,IAAI,IAAI;IAkB1B;;OAEG;IAEH,gBAAgB,IAAI,IAAI;IAIxB;;OAEG;IAEH,iBAAiB,IAAI,IAAI;IAIzB;;OAEG;IAEH,cAAc,IAAI,IAAI;IAqBtB;;;;;;;SAOK;IAGQ,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM;IA8BrB,UAAU;IAUvB;;;OAGG;IACH,IAAI,SAAS,YAOZ;IAED;;;;;;;;OAQG;IACH,IAAI,OAAO,YAEV;IAED,IAAI,YAAY,WAEf;IAMD,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC;CA6BzC"}
@@ -1,5 +1,5 @@
1
+ export { TOPIC_GENERIC_POUR_CANCEL, TOPIC_GENERIC_POUR_PROGRESS, TOPIC_GENERIC_POUR_STARTED, type GenericPourModel, } from './generic-pour-model';
1
2
  export { GenericPour } from './generic-pour-registration';
2
- export type * from './types';
3
- export type { GenericPourModel } from './generic-pour-model';
4
3
  export * as GenericPourServices from './services';
4
+ export type * from './types';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/generic-pour/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,mBAAmB,SAAS,CAAC;AAC7B,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,mBAAmB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/generic-pour/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,mBAAmB,MAAM,YAAY,CAAC;AAClD,mBAAmB,SAAS,CAAC"}
@@ -2,4 +2,5 @@ export interface GenericPourOptions {
2
2
  servicePathFactory: (selectedId: string) => string;
3
3
  selectedId?: string;
4
4
  pourType?: string;
5
+ initialData?: Record<string, any>;
5
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"holder-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/holder/holder-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,wBAAwB,EAGzB,MAAM,yBAAyB,CAAC;AAkCjC,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAM1D,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AA4ZD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+EK;AACL,eAAO,MAAM,MAAM,EAAE,QAAQ,CAC3B,wBAAwB,CAAC,WAAW,EAAE,aAAa,CAAC,CAWrD,CAAC"}
1
+ {"version":3,"file":"holder-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/holder/holder-model.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,wBAAwB,EAGzB,MAAM,yBAAyB,CAAC;AAiCjC,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAM1D,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAoZD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+EK;AACL,eAAO,MAAM,MAAM,EAAE,QAAQ,CAC3B,wBAAwB,CAAC,WAAW,EAAE,aAAa,CAAC,CAWrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"holder-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/holder-container/holder-container-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AAYjC,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EAGvB,MAAM,SAAS,CAAC;AAwHjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0EO;AACP,eAAO,MAAM,eAAe,EAAE,iCAAiC,CAC7D,oBAAoB,EACpB,sBAAsB,CAavB,CAAC"}
1
+ {"version":3,"file":"holder-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/holder-container/holder-container-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AAYjC,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EAGvB,MAAM,SAAS,CAAC;AA4HjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0EO;AACP,eAAO,MAAM,eAAe,EAAE,iCAAiC,CAC7D,oBAAoB,EACpB,sBAAsB,CAavB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ingredient-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/ingredient/ingredient-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,wBAAwB,EAGzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAmDlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgFK;AACL,eAAO,MAAM,UAAU,EAAE,QAAQ,CAC/B,wBAAwB,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAW7D,CAAC"}
1
+ {"version":3,"file":"ingredient-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/ingredient/ingredient-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,wBAAwB,EAGzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAuDlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgFK;AACL,eAAO,MAAM,UAAU,EAAE,QAAQ,CAC/B,wBAAwB,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAW7D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ingredient-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/ingredient-container/ingredient-container-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AAajC,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAoFjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0EO;AACP,eAAO,MAAM,mBAAmB,EAAE,iCAAiC,CACjE,wBAAwB,EACxB,0BAA0B,CAc3B,CAAC"}
1
+ {"version":3,"file":"ingredient-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/ingredient-container/ingredient-container-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AAajC,OAAO,KAAK,EACV,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAwFjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0EO;AACP,eAAO,MAAM,mBAAmB,EAAE,iCAAiC,CACjE,wBAAwB,EACxB,0BAA0B,CAc3B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export { Nozzle, type NozzleModel } from './nozzle-model';
2
- export type { NozzleOptions, SelectedPourable } from './types';
2
+ export type { NozzleOptions, PourStrategyAware, SelectedPourable, } from './types';
3
3
  /** @category KOS Services */
4
4
  export * as NozzleServices from './services';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/nozzle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC1D,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE/D,6BAA6B;AAC7B,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/nozzle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC1D,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAEjB,6BAA6B;AAC7B,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC"}
@@ -1,27 +1,31 @@
1
- import { NozzleOptions, SelectedPourable } from './types';
1
+ import { NozzleOptions, PourStrategyAware, SelectedPourable } from './types';
2
2
  import { AvailabilityResponse } from './services';
3
3
  import { PourState } from '../types/pouring';
4
4
  import { AvailabilityModel } from '../availability';
5
- import { FutureAwareContainer, FutureContainer, IFutureModel, IKosDataModel, IKosModelLogger, KosContext, KosContextLogger, KosCreationContext, KosModelRegistrationBean, PublicModelInterface } from '@kosdev-code/kos-ui-sdk';
5
+ import { FutureAwareContainer, FutureContainer, IFutureModel, IKosDataModel, IKosModelLogger, KosContext, KosLoggerAware, KosModelRegistrationBean, KosStateMachineAware, PublicModelInterface } from '@kosdev-code/kos-ui-sdk';
6
6
 
7
7
  export declare const TOPIC_NOZZLE_POUR_STARTED = "/kos/nozzle/pour/started";
8
8
  export declare const TOPIC_NOZZLE_POUR_PROGRESS = "/kos/nozzle/pour/progress";
9
9
  export declare const TOPIC_NOZZLE_POUR_CANCEL = "/kos/nozzle/pour/cancel";
10
+ type PourEvent = "START_POUR" | "POUR_ACTIVE" | "CANCEL_POUR" | "POUR_CANCELED" | "POUR_COMPLETED";
11
+ interface NozzleModelImpl extends IKosModelLogger, IKosDataModel, FutureContainer, KosLoggerAware, KosStateMachineAware<PourState, PourEvent> {
12
+ }
10
13
  /**
14
+ * Nozzle model -- manages nozzle state and pour operations.
11
15
  *
16
+ * @kosService dispense.nozzle
17
+ * @kosApiLevel 2
12
18
  */
13
- declare class NozzleModelImpl implements IKosModelLogger, IKosDataModel, FutureContainer {
19
+ declare class NozzleModelImpl implements PourStrategyAware {
14
20
  /** the unique identifier for this nozzle.*/
15
21
  id: string;
16
22
  path: string;
17
- logger: KosContextLogger;
18
23
  name: string;
19
24
  private _selectedBeverage?;
20
25
  private _selectedBrand?;
21
26
  private _additionalItems?;
22
27
  private _availabilityItems;
23
28
  futureHandler: FutureAwareContainer;
24
- currentState: PourState;
25
29
  beverageTopicPrefix: string;
26
30
  topicPrefix: string;
27
31
  urlPrefix: string;
@@ -66,9 +70,9 @@ declare class NozzleModelImpl implements IKosModelLogger, IKosDataModel, FutureC
66
70
  };
67
71
  get future(): IFutureModel<Record<string, unknown>> | undefined;
68
72
  get pourProgress(): number;
69
- constructor(modelId: string, options: NozzleOptions, context: KosCreationContext);
73
+ constructor(modelId: string, options: NozzleOptions);
70
74
  updateModel(): void;
71
- setSelectedBrand(brand?: AvailabilityModel): void;
75
+ setSelectedBrand(brand?: AvailabilityModel, _context?: Record<string, any>): void;
72
76
  get selectedBrand(): AvailabilityModel<any, Record<string, any>> | undefined;
73
77
  /**
74
78
  * Set the values used to determine the selected pourable for this nozzle.
@@ -78,7 +82,7 @@ declare class NozzleModelImpl implements IKosModelLogger, IKosDataModel, FutureC
78
82
  * @param pourable.additional The additional items such as flavors or other items that could be incorporated
79
83
  * into the pourable.
80
84
  * */
81
- setSelectedPourable({ beverage, additional, context, }: SelectedPourable): Promise<void>;
85
+ setSelectedPourable({ beverage, additional, context }: SelectedPourable, forceUpdate?: boolean): Promise<void>;
82
86
  /**
83
87
  * Utility method that will return the availability nodes that belong to the specified
84
88
  * group as defined in the dispenser beverage graph. For example, a dispenser
@@ -99,7 +103,22 @@ declare class NozzleModelImpl implements IKosModelLogger, IKosDataModel, FutureC
99
103
  * @returns the availability nodes that are tagged with the specified parent id.
100
104
  */
101
105
  getAvailabilityByParent<D extends object = any>(parentId: string): AvailabilityModel<D, Record<string, any>>[];
102
- private updateIfCurrent;
106
+ /**
107
+ * @kosApiLevel 12
108
+ */
109
+ handlePouringStart(): void;
110
+ /**
111
+ * @kosApiLevel 12
112
+ */
113
+ handlePouringEnd(): void;
114
+ /**
115
+ * @kosApiLevel 12
116
+ */
117
+ handleCancelStart(): void;
118
+ /**
119
+ * @kosApiLevel 12
120
+ */
121
+ handleCanceled(): void;
103
122
  onFutureUpdate(future: IFutureModel<any>): void;
104
123
  /**
105
124
  * An action that will initiate a pour for this nozzle.
@@ -1 +1 @@
1
- {"version":3,"file":"nozzle-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/nozzle/nozzle-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAiBL,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,aAAa,EAElB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAML,KAAK,oBAAoB,EAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,aAAa,EAKb,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAajB,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AACpE,eAAO,MAAM,0BAA0B,8BAA8B,CAAC;AACtE,eAAO,MAAM,wBAAwB,4BAA4B,CAAC;AAClE;;GAEG;AACH,cACM,eACJ,YAAW,eAAe,EAAE,aAAa,EAAE,eAAe;IAE1D,4CAA4C;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,gBAAgB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAC9C,OAAO,CAAC,cAAc,CAAC,CAAoB;IAC3C,OAAO,CAAC,gBAAgB,CAAC,CAAsB;IACrC,OAAO,CAAC,kBAAkB,CAAwC;IAC5E,aAAa,EAAE,oBAAoB,CAAC;IACpC,YAAY,EAAE,SAAS,CAAkB;IAEzC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,IAAI,SAAS,kDAEZ;IAED;;;OAGG;IACH,IAAI,MAAM,kDAET;IAED,IAAI,aAAa,kDAEhB;IAED,IAAI,gBAAgB,kDAEnB;IAED;;;OAGG;IACH,IAAI,SAAS,YAUZ;IAED;;;;;;;;;SASK;IACL,IAAI,OAAO,YAMV;IAED;;;;;SAKK;IACL,IAAI,gBAAgB;;;MAKnB;IAED,IAAI,MAAM,sDAET;IAED,IAAI,YAAY,WAEf;gBAGC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,kBAAkB;IAuB7B,WAAW,IAAI,IAAI;IAMnB,gBAAgB,CAAC,KAAK,CAAC,EAAE,iBAAiB;IAK1C,IAAI,aAAa,4DAEhB;IACD;;;;;;;SAOK;IACC,mBAAmB,CAAC,EACxB,QAAQ,EACR,UAAU,EACV,OAAO,GACR,EAAE,gBAAgB;IA4CnB;;;;;;;;SAQK;IACL,yBAAyB,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,MAAM;IAOjE;;;;;;;;OAQG;IACH,uBAAuB,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,EAAE,QAAQ,EAAE,MAAM;IAOhE,OAAO,CAAC,eAAe;IAQvB,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC;IA2BxC;;;;;;;SAOK;IAEQ,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM;IAuClC;;;;;;;;SAQK;IAEQ,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IA2CrD;;SAEK;IACQ,UAAU;IAwBvB,OAAO,CAAC,kBAAkB;IAe1B,gBAAgB;IACV,IAAI,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CzC,kBAAkB,CAAC,MAAM,EAAE,oBAAoB;CA0GtD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,MAAM,WAAW,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+EK;AACL,eAAO,MAAM,MAAM,EAAE,QAAQ,CAC3B,wBAAwB,CAAC,WAAW,EAAE,aAAa,CAAC,CAWrD,CAAC"}
1
+ {"version":3,"file":"nozzle-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/nozzle/nozzle-model.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import { AvailabilityModel } from '../../availability';
2
+ import { IKosIdentifiable } from '@kosdev-code/kos-ui-sdk';
2
3
 
3
4
 
5
+ export interface PourStrategyAware extends IKosIdentifiable {
6
+ canPour: boolean;
7
+ isPouring: boolean;
8
+ currentState: PourState;
9
+ pour: () => Promise<void>;
10
+ cancelPour: () => Promise<void>;
11
+ }
4
12
  /**
5
13
  * Options for a nozzle.
6
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pump-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/pump/pump-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,wBAAwB,EAIzB,MAAM,yBAAyB,CAAC;AAejC,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAkMtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAqFK;AACL,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,wBAAwB,CAAC,SAAS,EAAE,WAAW,CAAC,CAWzE,CAAC"}
1
+ {"version":3,"file":"pump-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/pump/pump-model.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,wBAAwB,EAEzB,MAAM,yBAAyB,CAAC;AAYjC,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA8LtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAqFK;AACL,eAAO,MAAM,IAAI,EAAE,QAAQ,CAAC,wBAAwB,CAAC,SAAS,EAAE,WAAW,CAAC,CAWzE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { IntentAware } from '../../types';
2
- import { IKosDataModel } from '@kosdev-code/kos-ui-sdk';
2
+ import { IKosDataModel, TroubleAware } from '@kosdev-code/kos-ui-sdk';
3
3
 
4
4
 
5
5
  export enum PourStatus {
@@ -18,6 +18,10 @@ export interface PumpOptions<AdditionalData extends object = any> {
18
18
  name: string;
19
19
  path: string;
20
20
  prevIngredientId?: string;
21
+ state?: {
22
+ path: string;
23
+ name: string;
24
+ };
21
25
  [key: keyof AdditionalData]: AdditionalData[key];
22
26
  }
23
27
 
@@ -32,7 +36,8 @@ interface IntentResponse {
32
36
  export interface PumpModel<AdditionalData extends object = any>
33
37
  extends IKosDataModel,
34
38
  IntentAware,
35
- AdditionalData {
39
+ AdditionalData,
40
+ TroubleAware {
36
41
  id: string;
37
42
  inserted: boolean;
38
43
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"pump-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/pump-container/pump-container-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AASjC,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAQxE,oBAAY,SAAS;IACnB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAiED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0EO;AACP,eAAO,MAAM,aAAa,EAAE,iCAAiC,CAC3D,kBAAkB,EAClB,oBAAoB,CAarB,CAAC"}
1
+ {"version":3,"file":"pump-container-model.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/pump-container/pump-container-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,iCAAiC,EAClC,MAAM,yBAAyB,CAAC;AASjC,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAQxE,oBAAY,SAAS;IACnB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,QAAQ,aAAa;CACtB;AAqED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0EO;AACP,eAAO,MAAM,aAAa,EAAE,iCAAiC,CAC3D,kBAAkB,EAClB,oBAAoB,CAarB,CAAC"}
@@ -42,6 +42,10 @@ export type AssemblyPump<PumpExt extends object = {}> = {
42
42
  holderPath: string;
43
43
  ingredientId?: string;
44
44
  prevIngredientId?: string;
45
+ state?: {
46
+ path: string;
47
+ name: string;
48
+ };
45
49
  };
46
50
  interface AssemblyPipeline {
47
51
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/types/assembly.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,QAAQ,SAAS,MAAM,GAAG,EAAE,IAAI;KACvD,GAAG,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;CACvC,GAAG;IACF,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AACD,MAAM,MAAM,cAAc,CAAC,SAAS,SAAS,MAAM,GAAG,EAAE,IAAI;KACzD,GAAG,IAAI,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC;CACzC,GAAG;IACF,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE;QACV,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH,CAAC;AACF,MAAM,MAAM,eAAe,CAAC,OAAO,SAAS,MAAM,GAAG,EAAE,IAAI,IAAI,CAC7D,YAAY,CAAC,OAAO,CAAC,EACrB,OAAO,CACR,CAAC;AACF,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,MAAM,GAAG,EAAE,IAAI;KACrD,GAAG,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;CACrC,GAAG;IACF,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AACD,MAAM,MAAM,cAAc,CACxB,SAAS,SAAS,MAAM,GAAG,EAAE,EAC7B,OAAO,SAAS,MAAM,GAAG,EAAE,IACzB;KACD,GAAG,IAAI,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC;CACzC,GAAG;IACF,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/B,SAAS,EAAE,gBAAgB,EAAE,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,QAAQ,CAClB,WAAW,SAAS,MAAM,GAAG,GAAG,EAChC,SAAS,SAAS,MAAM,GAAG,GAAG,EAC9B,SAAS,SAAS,MAAM,GAAG,GAAG,EAC9B,QAAQ,SAAS,MAAM,GAAG,GAAG,EAC7B,OAAO,SAAS,MAAM,GAAG,GAAG,IAC1B;KACD,GAAG,IAAI,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC;CAC7C,GAAG;IACF,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrD,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;IAC9C,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,MAAM,WAAW,oBAAoB,CACnC,WAAW,SAAS,MAAM,GAAG,GAAG,EAChC,SAAS,SAAS,MAAM,GAAG,GAAG,EAC9B,SAAS,SAAS,MAAM,GAAG,GAAG,EAC9B,QAAQ,SAAS,MAAM,GAAG,GAAG,EAC7B,OAAO,SAAS,MAAM,GAAG,GAAG;IAE5B,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;CAC9E;AAED,UAAU,oBAAoB;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,OAAO,CAAC,oBAAoB,CAAC,IAClE,oBAAoB,CAClB,CAAC,CAAC,aAAa,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,GAAG,EACxD,CAAC,CAAC,WAAW,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,GAAG,EACpD,CAAC,CAAC,WAAW,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,GAAG,EACpD,CAAC,CAAC,UAAU,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,GAAG,EAClD,CAAC,CAAC,SAAS,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,CACjD,CAAC"}
1
+ {"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/types/assembly.ts"],"names":[],"mappings":"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"}
@@ -16,4 +16,102 @@ export interface IntentAware extends IKosIdentifiable {
16
16
  cancelPour: () => Promise<void>;
17
17
  performIntent(props: IntentAwareProps | string): Promise<FutureResponse | undefined>;
18
18
  }
19
+ /**
20
+ * Interface for models that can resolve intent volumes for various operations.
21
+ *
22
+ * This interface extends intent-aware models with the ability to calculate
23
+ * appropriate volumes for specific intents (e.g., CALIBRATE, PRIME, FLUSH).
24
+ * Typically implemented by holder and pump models that have ingredient assignments
25
+ * and need to determine operation-specific volumes based on ingredient type,
26
+ * pump configuration, or operational requirements.
27
+ *
28
+ * Use this interface in combination with {@link IntentAware} to create models
29
+ * that can both determine appropriate volumes and execute the operations.
30
+ *
31
+ * @example
32
+ * Using IntentContainer for calibration:
33
+ * ```typescript
34
+ * async function calibratePump(holder: HolderModel & IntentContainer) {
35
+ * // Resolve appropriate calibration volume
36
+ * const result = await holder.resolveIntentVolume("CALIBRATE");
37
+ * console.log(`Calibration requires ${result.volume} oz`);
38
+ *
39
+ * // Execute calibration with resolved volume
40
+ * await holder.performIntent("CALIBRATE");
41
+ * }
42
+ * ```
43
+ *
44
+ * @example
45
+ * Checking for ingredient assignment:
46
+ * ```typescript
47
+ * function canResolveVolume(model: IntentContainer): boolean {
48
+ * return model.ingredientId !== undefined;
49
+ * }
50
+ * ```
51
+ *
52
+ * @category Model Interfaces
53
+ * @see {@link IntentAware} for intent execution capabilities
54
+ */
55
+ export interface IntentContainer {
56
+ /**
57
+ * Resolves the appropriate volume for a given intent operation.
58
+ *
59
+ * Different intents require different volumes based on operational requirements:
60
+ * - **CALIBRATE**: Standard calibration volume based on ingredient type and pump configuration
61
+ * - **PRIME**: Volume needed to prime the line from reservoir to dispense point
62
+ * - **FLUSH**: Cleaning volume to flush contaminants from the system
63
+ * - **PURGE**: Volume to completely clear the line
64
+ *
65
+ * The resolved volume is calculated based on:
66
+ * - Ingredient type and properties
67
+ * - Pump hardware configuration (line length, diameter)
68
+ * - Operational parameters (flow rates, pressure)
69
+ * - Device-specific calibration data
70
+ *
71
+ * @param intent - The intent string identifier (e.g., "CALIBRATE", "PRIME", "FLUSH")
72
+ * @returns Promise resolving to object with `volume` property in ounces (oz)
73
+ *
74
+ * @throws May reject if ingredient is not assigned or volume cannot be determined
75
+ *
76
+ * @example
77
+ * Resolving calibration volume:
78
+ * ```typescript
79
+ * const result = await holder.resolveIntentVolume("CALIBRATE");
80
+ * console.log(`Calibration: ${result.volume} oz`);
81
+ * ```
82
+ *
83
+ * @example
84
+ * Handling volume resolution errors:
85
+ * ```typescript
86
+ * try {
87
+ * const result = await holder.resolveIntentVolume("PRIME");
88
+ * displayVolume(result.volume);
89
+ * } catch (error) {
90
+ * console.error("Cannot resolve volume - ingredient may not be assigned");
91
+ * }
92
+ * ```
93
+ */
94
+ resolveIntentVolume(intent: string): Promise<{
95
+ volume: number;
96
+ }>;
97
+ /**
98
+ * Optional ingredient identifier for the assigned ingredient.
99
+ *
100
+ * When undefined, no ingredient is assigned to this holder/pump and volume
101
+ * resolution operations may fail or return default values. Check this property
102
+ * before calling {@link resolveIntentVolume} to ensure an ingredient is assigned.
103
+ *
104
+ * @example
105
+ * Checking for assignment before resolving volume:
106
+ * ```typescript
107
+ * if (holder.ingredientId) {
108
+ * const volume = await holder.resolveIntentVolume("CALIBRATE");
109
+ * // Use volume...
110
+ * } else {
111
+ * console.log("No ingredient assigned - cannot calibrate");
112
+ * }
113
+ * ```
114
+ */
115
+ ingredientId?: string;
116
+ }
19
117
  //# sourceMappingURL=intent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"intent.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/types/intent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACnD,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,aAAa,CACX,KAAK,EAAE,gBAAgB,GAAG,MAAM,GAC/B,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;CACxC"}
1
+ {"version":3,"file":"intent.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/types/intent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACnD,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,aAAa,CACX,KAAK,EAAE,gBAAgB,GAAG,MAAM,GAC/B,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEjE;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB"}
@@ -2,8 +2,6 @@ export declare enum PourState {
2
2
  IDLE = "IDLE",
3
3
  POURING = "POURING",
4
4
  POUR_STARTING = "POUR_STARTING",
5
- POUR_CANCELING = "POUR_CANCELING",
6
- POUR_CANCELED = "POUR_CANCELED",
7
- POUR_COMPLETE = "POUR_COMPLETE"
5
+ POUR_CANCELING = "POUR_CANCELING"
8
6
  }
9
7
  //# sourceMappingURL=pouring.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pouring.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/types/pouring.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS;IACnB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;CAChC"}
1
+ {"version":3,"file":"pouring.d.ts","sourceRoot":"","sources":["../../../../../../../packages/sdk/kos-dispense-sdk/src/models/models/types/pouring.ts"],"names":[],"mappings":"AAAA,oBAAY,SAAS;IACnB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;CAClC"}
@@ -2,7 +2,7 @@ import { KosModelRegistry as CoreKosModelRegistration, RegistrationManager, Regi
2
2
 
3
3
  export declare const registerDispenseModels: <R>(root: R) => () => {
4
4
  preload: (type: string) => RegistrationResult<R>;
5
- model: <T extends import('@kosdev-code/kos-ui-sdk').BaseKosModelRegistrationBean<any, any> | import('packages/sdk/kos-ui-sdk/src/core/core/registration/model-registration').KosModelRegistrationType<any, any>>(registration: T, preload?: boolean | undefined) => RegistrationResult<R>;
5
+ model: <T extends import('@kosdev-code/kos-ui-sdk').BaseKosModelRegistrationBean<any, any> | import('@kosdev-code/kos-ui-sdk').KosModelRegistrationType<any, any>>(registration: T, preload?: boolean | undefined) => RegistrationResult<R>;
6
6
  companion: (parentType: string, companion: import('@kosdev-code/kos-ui-sdk').KosCompanionModelType<any>) => RegistrationResult<R>;
7
7
  legacy: <T_1 extends import('@kosdev-code/kos-ui-sdk').IKosModelRegistration>(type: string, registration: T_1) => RegistrationResult<R>;
8
8
  };
@@ -19,7 +19,7 @@ declare const _KosModelRegistry: {
19
19
  models: () => RegistrationResult<{}>;
20
20
  };
21
21
  preload: (type: string) => RegistrationResult<unknown>;
22
- model: <T extends import('@kosdev-code/kos-ui-sdk').BaseKosModelRegistrationBean<any, any> | import('packages/sdk/kos-ui-sdk/src/core/core/registration/model-registration').KosModelRegistrationType<any, any>>(registration: T, preload?: boolean | undefined) => RegistrationResult<unknown>;
22
+ model: <T extends import('@kosdev-code/kos-ui-sdk').BaseKosModelRegistrationBean<any, any> | import('@kosdev-code/kos-ui-sdk').KosModelRegistrationType<any, any>>(registration: T, preload?: boolean | undefined) => RegistrationResult<unknown>;
23
23
  companion: (parentType: string, companion: import('@kosdev-code/kos-ui-sdk').KosCompanionModelType<any>) => RegistrationResult<unknown>;
24
24
  };
25
25
  type KosModelRegistryType = DispenseKosModelRegistration<typeof _KosModelRegistry>;