@kohost/api-client 3.0.0-beta.56 → 3.0.0-beta.58

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 (37) hide show
  1. package/dist/cjs/Client/index.js +120 -0
  2. package/dist/cjs/Models/Order.js +54 -5
  3. package/dist/cjs/schemas/AlarmSchema.d.ts +3 -0
  4. package/dist/cjs/schemas/CameraSchema.d.ts +3 -0
  5. package/dist/cjs/schemas/CourtesySchema.d.ts +3 -0
  6. package/dist/cjs/schemas/CredentialSchema.d.ts +2 -0
  7. package/dist/cjs/schemas/DimmerSchema.d.ts +3 -0
  8. package/dist/cjs/schemas/GatewaySchema.d.ts +3 -0
  9. package/dist/cjs/schemas/LockSchema.d.ts +3 -0
  10. package/dist/cjs/schemas/MediaSourceSchema.d.ts +3 -0
  11. package/dist/cjs/schemas/MotionSensorSchema.d.ts +3 -0
  12. package/dist/cjs/schemas/OrderSchema.d.ts +1 -0
  13. package/dist/cjs/schemas/ProductSchema.d.ts +3 -0
  14. package/dist/cjs/schemas/ReservationSchema.d.ts +3 -0
  15. package/dist/cjs/schemas/RoomSchema.d.ts +30 -0
  16. package/dist/cjs/schemas/SpaceSchema.d.ts +3 -0
  17. package/dist/cjs/schemas/SpaceTypeSchema.d.ts +3 -0
  18. package/dist/cjs/schemas/SwitchSchema.d.ts +3 -0
  19. package/dist/cjs/schemas/SystemUserSchema.d.ts +3 -0
  20. package/dist/cjs/schemas/ThermostatSchema.d.ts +3 -0
  21. package/dist/cjs/schemas/TicketSchema.d.ts +1 -1
  22. package/dist/cjs/schemas/UserSchema.d.ts +3 -0
  23. package/dist/cjs/schemas/WindowCoveringSchema.d.ts +3 -0
  24. package/dist/cjs/schemas/credential.json +6 -0
  25. package/dist/cjs/schemas/definitions.json +3 -0
  26. package/dist/cjs/schemas/order.json +3 -0
  27. package/dist/cjs/schemas/ticket.json +1 -1
  28. package/dist/esm/Client.js +120 -0
  29. package/dist/esm/Client.js.map +3 -3
  30. package/dist/esm/Models.js +60 -4
  31. package/dist/esm/Models.js.map +3 -3
  32. package/dist/esm/utils.js +3 -0
  33. package/dist/esm/utils.js.map +2 -2
  34. package/dist/useCases/ListMyOrders.js +32 -0
  35. package/dist/useCases/ListOrders.js +32 -0
  36. package/dist/useCases/ListUserOrders.js +32 -0
  37. package/package.json +1 -2
@@ -689,6 +689,44 @@ var require_ListUserSpaces = __commonJS({
689
689
  }
690
690
  });
691
691
 
692
+ // dist/useCases/ListUserOrders.js
693
+ var require_ListUserOrders = __commonJS({
694
+ "dist/useCases/ListUserOrders.js"(exports2, module2) {
695
+ module2.exports = /* @__PURE__ */ __name(function ListUserOrders2(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
696
+ if (!requestData)
697
+ requestData = {};
698
+ const pathParams = [":id"];
699
+ const { data, query, headers } = requestData;
700
+ let url = "/users/:id/orders";
701
+ if (pathParams && data) {
702
+ for (const param of pathParams) {
703
+ const paramName = param.replace(":", "");
704
+ url = url.replace(param, data[paramName]);
705
+ }
706
+ }
707
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
708
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
709
+ const missing = missingParams.map((param) => param.replace(":", ""));
710
+ return Promise.reject(
711
+ new Error("Missing parameters: " + missing.join(", "))
712
+ );
713
+ }
714
+ const config = {
715
+ method: "get",
716
+ url,
717
+ ...httpConfigOptions
718
+ };
719
+ if (data)
720
+ config.data = data;
721
+ if (query)
722
+ config.params = query;
723
+ if (headers)
724
+ config.headers = headers;
725
+ return this._http.request(config);
726
+ }, "ListUserOrders");
727
+ }
728
+ });
729
+
692
730
  // dist/useCases/ListTeam.js
693
731
  var require_ListTeam = __commonJS({
694
732
  "dist/useCases/ListTeam.js"(exports2, module2) {
@@ -5629,6 +5667,82 @@ var require_DescribeProduct = __commonJS({
5629
5667
  }
5630
5668
  });
5631
5669
 
5670
+ // dist/useCases/ListOrders.js
5671
+ var require_ListOrders = __commonJS({
5672
+ "dist/useCases/ListOrders.js"(exports2, module2) {
5673
+ module2.exports = /* @__PURE__ */ __name(function ListOrders2(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
5674
+ if (!requestData)
5675
+ requestData = {};
5676
+ const pathParams = null;
5677
+ const { data, query, headers } = requestData;
5678
+ let url = "/orders";
5679
+ if (pathParams && data) {
5680
+ for (const param of pathParams) {
5681
+ const paramName = param.replace(":", "");
5682
+ url = url.replace(param, data[paramName]);
5683
+ }
5684
+ }
5685
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
5686
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
5687
+ const missing = missingParams.map((param) => param.replace(":", ""));
5688
+ return Promise.reject(
5689
+ new Error("Missing parameters: " + missing.join(", "))
5690
+ );
5691
+ }
5692
+ const config = {
5693
+ method: "get",
5694
+ url,
5695
+ ...httpConfigOptions
5696
+ };
5697
+ if (data)
5698
+ config.data = data;
5699
+ if (query)
5700
+ config.params = query;
5701
+ if (headers)
5702
+ config.headers = headers;
5703
+ return this._http.request(config);
5704
+ }, "ListOrders");
5705
+ }
5706
+ });
5707
+
5708
+ // dist/useCases/ListMyOrders.js
5709
+ var require_ListMyOrders = __commonJS({
5710
+ "dist/useCases/ListMyOrders.js"(exports2, module2) {
5711
+ module2.exports = /* @__PURE__ */ __name(function ListMyOrders2(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
5712
+ if (!requestData)
5713
+ requestData = {};
5714
+ const pathParams = null;
5715
+ const { data, query, headers } = requestData;
5716
+ let url = "/orders/mine";
5717
+ if (pathParams && data) {
5718
+ for (const param of pathParams) {
5719
+ const paramName = param.replace(":", "");
5720
+ url = url.replace(param, data[paramName]);
5721
+ }
5722
+ }
5723
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
5724
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
5725
+ const missing = missingParams.map((param) => param.replace(":", ""));
5726
+ return Promise.reject(
5727
+ new Error("Missing parameters: " + missing.join(", "))
5728
+ );
5729
+ }
5730
+ const config = {
5731
+ method: "get",
5732
+ url,
5733
+ ...httpConfigOptions
5734
+ };
5735
+ if (data)
5736
+ config.data = data;
5737
+ if (query)
5738
+ config.params = query;
5739
+ if (headers)
5740
+ config.headers = headers;
5741
+ return this._http.request(config);
5742
+ }, "ListMyOrders");
5743
+ }
5744
+ });
5745
+
5632
5746
  // src/Client/index.js
5633
5747
  var LoginUser = require_LoginUser();
5634
5748
  var RefreshToken = require_RefreshToken();
@@ -5648,6 +5762,7 @@ var CheckVerificationCode = require_CheckVerificationCode();
5648
5762
  var MatchUserIdentification = require_MatchUserIdentification();
5649
5763
  var ListUserReservations = require_ListUserReservations();
5650
5764
  var ListUserSpaces = require_ListUserSpaces();
5765
+ var ListUserOrders = require_ListUserOrders();
5651
5766
  var ListTeam = require_ListTeam();
5652
5767
  var DescribeMyAccessCredentials = require_DescribeMyAccessCredentials();
5653
5768
  var ListSpaces = require_ListSpaces();
@@ -5778,6 +5893,8 @@ var CreateImageUploadEndpoint = require_CreateImageUploadEndpoint();
5778
5893
  var DeleteMediaFile = require_DeleteMediaFile();
5779
5894
  var UploadImage = require_UploadImage();
5780
5895
  var DescribeProduct = require_DescribeProduct();
5896
+ var ListOrders = require_ListOrders();
5897
+ var ListMyOrders = require_ListMyOrders();
5781
5898
  var { EventEmitter } = require("events");
5782
5899
  var axios = require("axios");
5783
5900
  var KohostApiClient = class _KohostApiClient extends EventEmitter {
@@ -5908,6 +6025,7 @@ KohostApiClient.prototype.CheckVerificationCode = CheckVerificationCode;
5908
6025
  KohostApiClient.prototype.MatchUserIdentification = MatchUserIdentification;
5909
6026
  KohostApiClient.prototype.ListUserReservations = ListUserReservations;
5910
6027
  KohostApiClient.prototype.ListUserSpaces = ListUserSpaces;
6028
+ KohostApiClient.prototype.ListUserOrders = ListUserOrders;
5911
6029
  KohostApiClient.prototype.ListTeam = ListTeam;
5912
6030
  KohostApiClient.prototype.DescribeMyAccessCredentials = DescribeMyAccessCredentials;
5913
6031
  KohostApiClient.prototype.ListSpaces = ListSpaces;
@@ -6038,4 +6156,6 @@ KohostApiClient.prototype.CreateImageUploadEndpoint = CreateImageUploadEndpoint;
6038
6156
  KohostApiClient.prototype.DeleteMediaFile = DeleteMediaFile;
6039
6157
  KohostApiClient.prototype.UploadImage = UploadImage;
6040
6158
  KohostApiClient.prototype.DescribeProduct = DescribeProduct;
6159
+ KohostApiClient.prototype.ListOrders = ListOrders;
6160
+ KohostApiClient.prototype.ListMyOrders = ListMyOrders;
6041
6161
  module.exports = KohostApiClient;
@@ -18,17 +18,66 @@ class Order extends Kohost {
18
18
 
19
19
  getSubTotal() {
20
20
  return this.items.reduce((acc, item) => {
21
- return acc + item.price;
21
+ const qty = item.quantity || 1;
22
+ return acc + item.price * qty;
22
23
  }, 0);
23
24
  }
24
25
 
25
- getTaxTotal() {}
26
+ getTaxTotal() {
27
+ const taxes = this.taxes;
28
+ if (!taxes) return 0;
29
+ return this.items.reduce((acc, item) => {
30
+ if (!item.taxClass) return acc;
31
+ const tax = taxes.find((t) => t.class === item.taxClass);
32
+ if (!tax) return acc;
33
+ const { rateType, rate } = tax;
34
+ if (rateType === "percentage") {
35
+ return acc + item.price * rate;
36
+ }
37
+ return acc + rate;
38
+ }, 0);
39
+ }
40
+
41
+ getDeliveryTotal() {
42
+ const delivery = this.delivery;
43
+ if (!delivery) return 0;
44
+ return this.items.reduce((acc, item) => {
45
+ if (!item.deliveryClass) return acc;
46
+ const d = delivery.find((d) => d.class === item.deliveryClass);
47
+ if (!d) return acc;
48
+ const { rateType, rate } = d;
49
+ if (rateType === "percentage") {
50
+ return acc + item.price * rate;
51
+ }
52
+ return acc + rate;
53
+ }, 0);
54
+ }
26
55
 
27
- getTotal() {}
56
+ getFeesTotal() {
57
+ const fees = this.fees;
58
+ return fees.reduce((acc, fee) => {
59
+ return acc + fee.price;
60
+ }, 0);
61
+ }
28
62
 
29
- getDeliveryTotal() {}
63
+ getTotal() {
64
+ return (
65
+ this.getSubTotal() +
66
+ this.getTaxTotal() +
67
+ this.getDeliveryTotal() +
68
+ this.getFeesTotal()
69
+ );
70
+ }
30
71
 
31
- getFeesTotal() {}
72
+ getPaymentsTotal() {
73
+ return this.payments.reduce((acc, payment) => {
74
+ return acc + payment.amount;
75
+ }, 0);
76
+ }
77
+
78
+ getBalance() {
79
+ return this.getTotal() - this.getPaymentsTotal();
80
+ }
32
81
  }
33
82
 
34
83
  Object.defineProperty(Order.prototype, "schema", {
@@ -111,6 +111,9 @@ export interface Alarm {
111
111
  | "aws-kinesis"
112
112
  | "butler"
113
113
  | "crestron"
114
+ | "dmp"
115
+ | "dormakaba"
116
+ | "dsc"
114
117
  | "ecobee"
115
118
  | "igor"
116
119
  | "inncom"
@@ -109,6 +109,9 @@ export interface Camera {
109
109
  | "aws-kinesis"
110
110
  | "butler"
111
111
  | "crestron"
112
+ | "dmp"
113
+ | "dormakaba"
114
+ | "dsc"
112
115
  | "ecobee"
113
116
  | "igor"
114
117
  | "inncom"
@@ -109,6 +109,9 @@ export interface Courtesy {
109
109
  | "aws-kinesis"
110
110
  | "butler"
111
111
  | "crestron"
112
+ | "dmp"
113
+ | "dormakaba"
114
+ | "dsc"
112
115
  | "ecobee"
113
116
  | "igor"
114
117
  | "inncom"
@@ -10,6 +10,8 @@ export interface Credential {
10
10
  type: "verificationCode" | "token" | "mobileKey";
11
11
  credential: string;
12
12
  user?: string;
13
+ organization?: string;
14
+ property?: string;
13
15
  userAgent?: string;
14
16
  expires: {
15
17
  [k: string]: unknown;
@@ -110,6 +110,9 @@ export interface Dimmer {
110
110
  | "aws-kinesis"
111
111
  | "butler"
112
112
  | "crestron"
113
+ | "dmp"
114
+ | "dormakaba"
115
+ | "dsc"
113
116
  | "ecobee"
114
117
  | "igor"
115
118
  | "inncom"
@@ -110,6 +110,9 @@ export interface IoTGateway {
110
110
  | "aws-kinesis"
111
111
  | "butler"
112
112
  | "crestron"
113
+ | "dmp"
114
+ | "dormakaba"
115
+ | "dsc"
113
116
  | "ecobee"
114
117
  | "igor"
115
118
  | "inncom"
@@ -110,6 +110,9 @@ export interface Lock {
110
110
  | "aws-kinesis"
111
111
  | "butler"
112
112
  | "crestron"
113
+ | "dmp"
114
+ | "dormakaba"
115
+ | "dsc"
113
116
  | "ecobee"
114
117
  | "igor"
115
118
  | "inncom"
@@ -90,6 +90,9 @@ export interface MediaSource {
90
90
  | "aws-kinesis"
91
91
  | "butler"
92
92
  | "crestron"
93
+ | "dmp"
94
+ | "dormakaba"
95
+ | "dsc"
93
96
  | "ecobee"
94
97
  | "igor"
95
98
  | "inncom"
@@ -106,6 +106,9 @@ export interface MotionSensor {
106
106
  | "aws-kinesis"
107
107
  | "butler"
108
108
  | "crestron"
109
+ | "dmp"
110
+ | "dormakaba"
111
+ | "dsc"
109
112
  | "ecobee"
110
113
  | "igor"
111
114
  | "inncom"
@@ -17,6 +17,7 @@ export type Date =
17
17
  export interface Order {
18
18
  id?: string;
19
19
  type: string;
20
+ orderNumber?: string;
20
21
  status:
21
22
  | "draft"
22
23
  | "pendingPayment"
@@ -13,6 +13,9 @@ export interface Product {
13
13
  | "aws-kinesis"
14
14
  | "butler"
15
15
  | "crestron"
16
+ | "dmp"
17
+ | "dormakaba"
18
+ | "dsc"
16
19
  | "ecobee"
17
20
  | "igor"
18
21
  | "inncom"
@@ -11,6 +11,9 @@ export interface Reservation {
11
11
  | "aws-kinesis"
12
12
  | "butler"
13
13
  | "crestron"
14
+ | "dmp"
15
+ | "dormakaba"
16
+ | "dsc"
14
17
  | "ecobee"
15
18
  | "igor"
16
19
  | "inncom"
@@ -141,6 +141,9 @@ export interface Dimmer {
141
141
  | "aws-kinesis"
142
142
  | "butler"
143
143
  | "crestron"
144
+ | "dmp"
145
+ | "dormakaba"
146
+ | "dsc"
144
147
  | "ecobee"
145
148
  | "igor"
146
149
  | "inncom"
@@ -225,6 +228,9 @@ export interface Switch {
225
228
  | "aws-kinesis"
226
229
  | "butler"
227
230
  | "crestron"
231
+ | "dmp"
232
+ | "dormakaba"
233
+ | "dsc"
228
234
  | "ecobee"
229
235
  | "igor"
230
236
  | "inncom"
@@ -278,6 +284,9 @@ export interface Thermostat {
278
284
  | "aws-kinesis"
279
285
  | "butler"
280
286
  | "crestron"
287
+ | "dmp"
288
+ | "dormakaba"
289
+ | "dsc"
281
290
  | "ecobee"
282
291
  | "igor"
283
292
  | "inncom"
@@ -418,6 +427,9 @@ export interface Lock {
418
427
  | "aws-kinesis"
419
428
  | "butler"
420
429
  | "crestron"
430
+ | "dmp"
431
+ | "dormakaba"
432
+ | "dsc"
421
433
  | "ecobee"
422
434
  | "igor"
423
435
  | "inncom"
@@ -498,6 +510,9 @@ export interface WindowCovering {
498
510
  | "aws-kinesis"
499
511
  | "butler"
500
512
  | "crestron"
513
+ | "dmp"
514
+ | "dormakaba"
515
+ | "dsc"
501
516
  | "ecobee"
502
517
  | "igor"
503
518
  | "inncom"
@@ -578,6 +593,9 @@ export interface Courtesy {
578
593
  | "aws-kinesis"
579
594
  | "butler"
580
595
  | "crestron"
596
+ | "dmp"
597
+ | "dormakaba"
598
+ | "dsc"
581
599
  | "ecobee"
582
600
  | "igor"
583
601
  | "inncom"
@@ -659,6 +677,9 @@ export interface Camera {
659
677
  | "aws-kinesis"
660
678
  | "butler"
661
679
  | "crestron"
680
+ | "dmp"
681
+ | "dormakaba"
682
+ | "dsc"
662
683
  | "ecobee"
663
684
  | "igor"
664
685
  | "inncom"
@@ -698,6 +719,9 @@ export interface MediaSource {
698
719
  | "aws-kinesis"
699
720
  | "butler"
700
721
  | "crestron"
722
+ | "dmp"
723
+ | "dormakaba"
724
+ | "dsc"
701
725
  | "ecobee"
702
726
  | "igor"
703
727
  | "inncom"
@@ -892,6 +916,9 @@ export interface MotionSensor {
892
916
  | "aws-kinesis"
893
917
  | "butler"
894
918
  | "crestron"
919
+ | "dmp"
920
+ | "dormakaba"
921
+ | "dsc"
895
922
  | "ecobee"
896
923
  | "igor"
897
924
  | "inncom"
@@ -999,6 +1026,9 @@ export interface Alarm {
999
1026
  | "aws-kinesis"
1000
1027
  | "butler"
1001
1028
  | "crestron"
1029
+ | "dmp"
1030
+ | "dormakaba"
1031
+ | "dsc"
1002
1032
  | "ecobee"
1003
1033
  | "igor"
1004
1034
  | "inncom"
@@ -23,6 +23,9 @@ export interface Space {
23
23
  | "aws-kinesis"
24
24
  | "butler"
25
25
  | "crestron"
26
+ | "dmp"
27
+ | "dormakaba"
28
+ | "dsc"
26
29
  | "ecobee"
27
30
  | "igor"
28
31
  | "inncom"
@@ -19,6 +19,9 @@ export interface SpaceType {
19
19
  | "aws-kinesis"
20
20
  | "butler"
21
21
  | "crestron"
22
+ | "dmp"
23
+ | "dormakaba"
24
+ | "dsc"
22
25
  | "ecobee"
23
26
  | "igor"
24
27
  | "inncom"
@@ -110,6 +110,9 @@ export interface Switch {
110
110
  | "aws-kinesis"
111
111
  | "butler"
112
112
  | "crestron"
113
+ | "dmp"
114
+ | "dormakaba"
115
+ | "dsc"
113
116
  | "ecobee"
114
117
  | "igor"
115
118
  | "inncom"
@@ -39,6 +39,9 @@ export interface SystemUser {
39
39
  | "aws-kinesis"
40
40
  | "butler"
41
41
  | "crestron"
42
+ | "dmp"
43
+ | "dormakaba"
44
+ | "dsc"
42
45
  | "ecobee"
43
46
  | "igor"
44
47
  | "inncom"
@@ -109,6 +109,9 @@ export interface Thermostat {
109
109
  | "aws-kinesis"
110
110
  | "butler"
111
111
  | "crestron"
112
+ | "dmp"
113
+ | "dormakaba"
114
+ | "dsc"
112
115
  | "ecobee"
113
116
  | "igor"
114
117
  | "inncom"
@@ -28,7 +28,7 @@ export interface Ticket {
28
28
  timestamp: CreatedAt;
29
29
  body: string;
30
30
  readBy?: string[];
31
- media?: MediaFile;
31
+ media?: MediaFile | null;
32
32
  }[];
33
33
  requester: string;
34
34
  assignedTo?: string | null;
@@ -184,6 +184,9 @@ export interface Reservation {
184
184
  | "aws-kinesis"
185
185
  | "butler"
186
186
  | "crestron"
187
+ | "dmp"
188
+ | "dormakaba"
189
+ | "dsc"
187
190
  | "ecobee"
188
191
  | "igor"
189
192
  | "inncom"
@@ -109,6 +109,9 @@ export interface WindowCovering {
109
109
  | "aws-kinesis"
110
110
  | "butler"
111
111
  | "crestron"
112
+ | "dmp"
113
+ | "dormakaba"
114
+ | "dsc"
112
115
  | "ecobee"
113
116
  | "igor"
114
117
  | "inncom"
@@ -18,6 +18,12 @@
18
18
  "user": {
19
19
  "type": "string"
20
20
  },
21
+ "organization": {
22
+ "type": "string"
23
+ },
24
+ "property": {
25
+ "type": "string"
26
+ },
21
27
  "userAgent": {
22
28
  "type": "string"
23
29
  },
@@ -84,6 +84,9 @@
84
84
  "aws-kinesis",
85
85
  "butler",
86
86
  "crestron",
87
+ "dmp",
88
+ "dormakaba",
89
+ "dsc",
87
90
  "ecobee",
88
91
  "igor",
89
92
  "inncom",
@@ -13,6 +13,9 @@
13
13
  "type": "string",
14
14
  "default": "order"
15
15
  },
16
+ "orderNumber": {
17
+ "type": "string"
18
+ },
16
19
  "status": {
17
20
  "type": "string",
18
21
  "enum": [
@@ -38,7 +38,7 @@
38
38
  }
39
39
  },
40
40
  "media": {
41
- "$ref": "mediaFile.json"
41
+ "anyOf": [{ "$ref": "mediaFile.json" }, { "type": "null" }]
42
42
  }
43
43
  },
44
44
  "required": ["userId", "id", "timestamp", "body"]