@kohost/api-client 3.0.0-beta.7 → 3.0.0-beta.71

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 (264) hide show
  1. package/README.md +71 -0
  2. package/dist/cjs/AMQPClient/index.js +298 -0
  3. package/dist/cjs/{Client.js → Client/index.js} +1535 -586
  4. package/dist/cjs/Commands/CheckInReservationCommand.js +19 -0
  5. package/dist/cjs/Commands/Command.js +34 -0
  6. package/dist/cjs/Commands/CreateImageUploadEndpointCommand.js +17 -0
  7. package/dist/cjs/Commands/CreateShortLinkCommand.js +20 -0
  8. package/dist/cjs/Commands/DiscoverCategoriesCommand.js +20 -0
  9. package/dist/cjs/Commands/DiscoverReservationSpaceCategoryAvailabilitiesCommand.js +20 -0
  10. package/dist/cjs/Commands/DiscoverReservationsCommand.js +20 -0
  11. package/dist/cjs/Commands/DiscoverRoomsCommand.js +37 -0
  12. package/dist/cjs/Commands/DiscoverUsersCommand.js +19 -0
  13. package/dist/cjs/Commands/GetMobileKeyCommand.js +24 -0
  14. package/dist/cjs/Commands/GetProductsCommand.js +17 -0
  15. package/dist/cjs/Commands/OCRDocumentCommand.js +15 -0
  16. package/dist/cjs/Commands/SellProductsCommand.js +17 -0
  17. package/dist/cjs/Commands/SendEmailCommand.js +24 -0
  18. package/dist/cjs/Commands/SendSMSCommand.js +21 -0
  19. package/dist/cjs/Commands/SetAlarmCommand.js +17 -0
  20. package/dist/cjs/Commands/SetCourtesyCommand.js +17 -0
  21. package/dist/cjs/Commands/SetDimmerCommand.js +17 -0
  22. package/dist/cjs/Commands/SetLockCommand.js +17 -0
  23. package/dist/cjs/Commands/SetMediaCommand.js +17 -0
  24. package/dist/cjs/Commands/SetSceneCommand.js +17 -0
  25. package/dist/cjs/Commands/SetSwitchCommand.js +17 -0
  26. package/dist/cjs/Commands/SetThermostatCommand.js +17 -0
  27. package/dist/cjs/Commands/SetWindowCoveringCommand.js +17 -0
  28. package/dist/cjs/Commands/UpdateReservationCommand.js +19 -0
  29. package/dist/cjs/Commands/UpdateUserCommand.js +41 -0
  30. package/dist/cjs/Commands/UploadImageCommand.js +17 -0
  31. package/dist/cjs/Commands/index.js +55 -0
  32. package/dist/cjs/Errors/AppError.js +8 -0
  33. package/dist/cjs/Errors/AuthenticationError.js +9 -0
  34. package/dist/cjs/Errors/AuthorizationError.js +9 -0
  35. package/dist/cjs/Errors/ConflictError.js +9 -0
  36. package/dist/cjs/Errors/DeviceCommError.js +9 -0
  37. package/dist/cjs/Errors/LoginError.js +9 -0
  38. package/dist/cjs/Errors/NotFoundError.js +9 -0
  39. package/dist/cjs/Errors/RequestError.js +9 -0
  40. package/dist/cjs/Errors/SystemCommError.js +9 -0
  41. package/dist/cjs/Errors/TokenExpiredError.js +9 -0
  42. package/dist/cjs/Errors/UnprocessableRequestError.js +9 -0
  43. package/dist/cjs/Errors/ValidationError.js +9 -0
  44. package/dist/cjs/Errors/index.js +16 -0
  45. package/dist/cjs/Events/ApplicationInUseEvent.js +21 -0
  46. package/dist/cjs/Events/ApplicationOutOfUseEvent.js +21 -0
  47. package/dist/cjs/Events/EmailEvent.js +18 -0
  48. package/dist/cjs/Events/Event.js +55 -0
  49. package/dist/cjs/Events/SMSEvent.js +18 -0
  50. package/dist/cjs/Events/SMSSentEvent.js +17 -0
  51. package/dist/cjs/Events/SceneSetEvent.js +17 -0
  52. package/dist/cjs/Events/ShortLinkCreatedEvent.js +17 -0
  53. package/dist/cjs/Events/SystemAlarmUpdatedEvent.js +17 -0
  54. package/dist/cjs/Events/SystemCameraUpdatedEvent.js +17 -0
  55. package/dist/cjs/Events/SystemCategoryUpdatedEvent.js +17 -0
  56. package/dist/cjs/Events/SystemCourtesyUpdatedEvent.js +17 -0
  57. package/dist/cjs/Events/SystemDimmerUpdatedEvent.js +17 -0
  58. package/dist/cjs/Events/SystemEntityDeletedEvent.js +17 -0
  59. package/dist/cjs/Events/SystemGatewayUpdatedEvent.js +17 -0
  60. package/dist/cjs/Events/SystemLockUpdatedEvent.js +17 -0
  61. package/dist/cjs/Events/SystemMediaSourceUpdatedEvent.js +17 -0
  62. package/dist/cjs/Events/SystemMotionSensorUpdatedEvent.js +17 -0
  63. package/dist/cjs/Events/SystemOrganizationUpdatedEvent.js +17 -0
  64. package/dist/cjs/Events/SystemProductUpdatedEvent.js +17 -0
  65. package/dist/cjs/Events/SystemPropertyUpdatedEvent.js +17 -0
  66. package/dist/cjs/Events/SystemReservationUpdatedEvent.js +17 -0
  67. package/dist/cjs/Events/SystemSceneControllerUpdatedEvent.js +17 -0
  68. package/dist/cjs/Events/SystemSpaceUpdatedEvent.js +17 -0
  69. package/dist/cjs/Events/SystemSwitchUpdatedEvent.js +17 -0
  70. package/dist/cjs/Events/SystemThermostatUpdatedEvent.js +17 -0
  71. package/dist/cjs/Events/SystemUserUpdatedEvent.js +17 -0
  72. package/dist/cjs/Events/SystemWindowCoveringUpdatedEvent.js +17 -0
  73. package/dist/cjs/Events/index.js +63 -0
  74. package/dist/cjs/Models/Alarm.js +35 -0
  75. package/dist/cjs/Models/Camera.js +35 -0
  76. package/dist/cjs/Models/Category.js +36 -0
  77. package/dist/cjs/Models/Courtesy.js +39 -0
  78. package/dist/cjs/Models/Credential.js +35 -0
  79. package/dist/cjs/Models/Dimmer.js +61 -0
  80. package/dist/cjs/Models/DiscoveredDevice.js +36 -0
  81. package/dist/cjs/Models/EmailMessage.js +35 -0
  82. package/dist/cjs/Models/EnergyReport.js +35 -0
  83. package/dist/cjs/Models/EnergyReportShard.js +35 -0
  84. package/dist/cjs/Models/Gateway.js +35 -0
  85. package/dist/cjs/Models/Identification.js +38 -0
  86. package/dist/cjs/Models/Kohost.js +96 -0
  87. package/dist/cjs/Models/Lock.js +39 -0
  88. package/dist/cjs/Models/MediaFile.js +48 -0
  89. package/dist/cjs/Models/MediaSource.js +35 -0
  90. package/dist/cjs/Models/MotionSensor.js +35 -0
  91. package/dist/cjs/Models/Notification.js +34 -0
  92. package/dist/cjs/Models/Order.js +97 -0
  93. package/dist/cjs/Models/Organization.js +34 -0
  94. package/dist/cjs/Models/Product.js +35 -0
  95. package/dist/cjs/Models/Property.js +34 -0
  96. package/dist/cjs/Models/Reservation.js +114 -0
  97. package/dist/cjs/Models/Room.js +218 -0
  98. package/dist/cjs/Models/Scene.js +169 -0
  99. package/dist/cjs/Models/ShortLink.js +35 -0
  100. package/dist/cjs/Models/SmsMessage.js +35 -0
  101. package/dist/cjs/Models/Space.js +97 -0
  102. package/dist/cjs/Models/Switch.js +39 -0
  103. package/dist/cjs/Models/SystemUser.js +55 -0
  104. package/dist/cjs/Models/Thermostat.js +86 -0
  105. package/dist/cjs/Models/Ticket.js +112 -0
  106. package/dist/cjs/Models/User.js +115 -0
  107. package/dist/cjs/Models/WindowCovering.js +55 -0
  108. package/dist/cjs/Models/index.js +72 -0
  109. package/dist/cjs/SocketIoClient/index.js +74 -0
  110. package/dist/cjs/defs/deviceTypes.js +15 -0
  111. package/dist/cjs/defs/formalDeviceTypes.js +6 -0
  112. package/dist/cjs/defs/index.js +11 -0
  113. package/dist/cjs/{index.cjs.js → index.js} +7 -1
  114. package/dist/cjs/schemas/AlarmSchema.d.ts +151 -0
  115. package/dist/cjs/schemas/CameraSchema.d.ts +142 -0
  116. package/dist/cjs/schemas/CategorySchema.d.ts +81 -0
  117. package/dist/cjs/schemas/CourtesySchema.d.ts +141 -0
  118. package/dist/cjs/schemas/CredentialSchema.d.ts +21 -0
  119. package/dist/cjs/schemas/DefinitionsSchema.d.ts +10 -0
  120. package/dist/cjs/schemas/DimmerSchema.d.ts +141 -0
  121. package/dist/cjs/schemas/DiscoveredDeviceSchema.d.ts +39 -0
  122. package/dist/cjs/schemas/EmailMessageSchema.d.ts +49 -0
  123. package/dist/cjs/schemas/EnergyReportSchema.d.ts +57 -0
  124. package/dist/cjs/schemas/EnergyReportShardSchema.d.ts +61 -0
  125. package/dist/cjs/schemas/GatewaySchema.d.ts +138 -0
  126. package/dist/cjs/schemas/IdentificationSchema.d.ts +45 -0
  127. package/dist/cjs/schemas/LockSchema.d.ts +141 -0
  128. package/dist/cjs/schemas/MediaFileSchema.d.ts +43 -0
  129. package/dist/cjs/schemas/MediaSourceSchema.d.ts +237 -0
  130. package/dist/cjs/schemas/MotionSensorSchema.d.ts +136 -0
  131. package/dist/cjs/schemas/NotificationSchema.d.ts +54 -0
  132. package/dist/cjs/schemas/OrderSchema.d.ts +91 -0
  133. package/dist/cjs/schemas/OrganizationSchema.d.ts +34 -0
  134. package/dist/cjs/schemas/PaymentSchema.d.ts +33 -0
  135. package/dist/cjs/schemas/ProductSchema.d.ts +65 -0
  136. package/dist/cjs/schemas/PropertySchema.d.ts +38 -0
  137. package/dist/cjs/schemas/ReservationSchema.d.ts +112 -0
  138. package/dist/cjs/schemas/RoomSchema.d.ts +1066 -0
  139. package/dist/cjs/schemas/SceneSchema.d.ts +57 -0
  140. package/dist/cjs/schemas/ShortLinkSchema.d.ts +20 -0
  141. package/dist/cjs/schemas/SmsMessageSchema.d.ts +40 -0
  142. package/dist/cjs/schemas/SpaceSchema.d.ts +58 -0
  143. package/dist/cjs/schemas/SwitchSchema.d.ts +141 -0
  144. package/dist/cjs/schemas/SystemUserSchema.d.ts +192 -0
  145. package/dist/cjs/schemas/ThermostatSchema.d.ts +171 -0
  146. package/dist/cjs/schemas/TicketSchema.d.ts +88 -0
  147. package/dist/cjs/schemas/UserSchema.d.ts +280 -0
  148. package/dist/cjs/schemas/WindowCoveringSchema.d.ts +140 -0
  149. package/dist/cjs/schemas/alarm.json +81 -0
  150. package/dist/cjs/schemas/camera.json +50 -0
  151. package/dist/cjs/schemas/category.json +42 -0
  152. package/dist/cjs/schemas/courtesy.json +48 -0
  153. package/dist/cjs/schemas/credential.json +37 -0
  154. package/dist/cjs/schemas/definitions.json +217 -0
  155. package/dist/cjs/schemas/dimmer.json +45 -0
  156. package/dist/cjs/schemas/discoveredDevice.json +31 -0
  157. package/dist/cjs/schemas/emailMessage.json +71 -0
  158. package/dist/cjs/schemas/energyReport.json +86 -0
  159. package/dist/cjs/schemas/energyReportShard.json +75 -0
  160. package/dist/cjs/schemas/gateway.json +34 -0
  161. package/dist/cjs/schemas/identification.json +61 -0
  162. package/dist/cjs/schemas/lock.json +44 -0
  163. package/dist/cjs/schemas/mediaFile.json +70 -0
  164. package/dist/cjs/schemas/mediaSource.json +187 -0
  165. package/dist/cjs/schemas/motionSensor.json +32 -0
  166. package/dist/cjs/schemas/notification.json +29 -0
  167. package/dist/cjs/schemas/order.json +182 -0
  168. package/dist/cjs/schemas/organization.json +40 -0
  169. package/dist/cjs/schemas/payment.json +47 -0
  170. package/dist/cjs/schemas/product.json +41 -0
  171. package/dist/cjs/schemas/property.json +333 -0
  172. package/dist/cjs/schemas/reservation.json +130 -0
  173. package/dist/cjs/schemas/room.json +98 -0
  174. package/dist/cjs/schemas/scene.json +121 -0
  175. package/dist/cjs/schemas/shortLink.json +30 -0
  176. package/dist/cjs/schemas/smsMessage.json +61 -0
  177. package/dist/cjs/schemas/space.json +118 -0
  178. package/dist/cjs/schemas/switch.json +44 -0
  179. package/dist/cjs/schemas/systemUser.json +98 -0
  180. package/dist/cjs/schemas/thermostat.json +150 -0
  181. package/dist/cjs/schemas/ticket.json +141 -0
  182. package/dist/cjs/schemas/user.json +170 -0
  183. package/dist/cjs/schemas/windowCovering.json +42 -0
  184. package/dist/cjs/utils/errorFactory.js +8 -0
  185. package/dist/cjs/utils/eventFactory.js +10 -0
  186. package/dist/cjs/utils/getDeviceTypes.js +7 -0
  187. package/dist/cjs/utils/getFormalDeviceType.js +5 -0
  188. package/dist/cjs/utils/index.js +11 -0
  189. package/dist/cjs/utils/schema.js +25 -0
  190. package/dist/esm/Client.js +1632 -627
  191. package/dist/esm/Client.js.map +4 -4
  192. package/dist/esm/Commands.js +521 -113
  193. package/dist/esm/Commands.js.map +3 -3
  194. package/dist/esm/Errors.js +73 -22
  195. package/dist/esm/Errors.js.map +3 -3
  196. package/dist/esm/Events.js +390 -73
  197. package/dist/esm/Events.js.map +3 -3
  198. package/dist/esm/Models.js +3292 -1186
  199. package/dist/esm/Models.js.map +4 -4
  200. package/dist/esm/SocketIoClient.js +4846 -0
  201. package/dist/esm/SocketIoClient.js.map +7 -0
  202. package/dist/esm/defs.js +146 -101
  203. package/dist/esm/defs.js.map +4 -4
  204. package/dist/esm/index.js +17 -10
  205. package/dist/esm/utils.js +445 -73
  206. package/dist/esm/utils.js.map +3 -3
  207. package/dist/useCases/AdminUpdateCustomer.js +1 -1
  208. package/dist/useCases/AssignSpaceToReservation.js +32 -0
  209. package/dist/useCases/{AdminCreateProperty.js → BatchNotifyCheckIn.js} +2 -2
  210. package/dist/useCases/{AdminCreateCustomer.js → CreateCateory.js} +2 -2
  211. package/dist/useCases/CreateImageUploadEndpoint.js +32 -0
  212. package/dist/useCases/{DeleteIntegration.js → CreateMediaSource.js} +4 -4
  213. package/dist/useCases/{AdminListCustomers.js → CreateOrganization.js} +3 -3
  214. package/dist/useCases/{AdminLoginUser.js → CreateProperty.js} +2 -2
  215. package/dist/useCases/DeleteCategory.js +32 -0
  216. package/dist/useCases/DeleteMediaFile.js +32 -0
  217. package/dist/useCases/DeleteMediaSource.js +32 -0
  218. package/dist/useCases/{ListIntegrations.js → DescribeCategory.js} +3 -3
  219. package/dist/useCases/{DeleteSource.js → DescribeLockCredential.js} +3 -3
  220. package/dist/useCases/{AdminListAdminUsers.js → DescribeMediaSource.js} +3 -3
  221. package/dist/useCases/DescribeMyAccessCredentials.js +32 -0
  222. package/dist/useCases/{AdminCreateAdminUser.js → DescribeOrganization.js} +4 -4
  223. package/dist/useCases/{DescribeIntegration.js → DescribeProduct.js} +2 -2
  224. package/dist/useCases/{AdminDescribeCustomer.js → DescribeProperty.js} +2 -2
  225. package/dist/useCases/DescribeReservationEarlyCheckInProducts.js +32 -0
  226. package/dist/useCases/DescribeReservationLateCheckOutProducts.js +32 -0
  227. package/dist/useCases/{AdminDescribeProperty.js → DescribeReservationRoomUpgrades.js} +2 -2
  228. package/dist/useCases/ListCategories.js +32 -0
  229. package/dist/useCases/ListMediaSources.js +32 -0
  230. package/dist/useCases/{CreateSource.js → ListMyOrders.js} +4 -4
  231. package/dist/useCases/{AdminListProperties.js → ListMyTickets.js} +2 -2
  232. package/dist/useCases/ListOrders.js +32 -0
  233. package/dist/useCases/{AdminRefreshToken.js → ListOrganizations.js} +3 -3
  234. package/dist/useCases/ListProperties.js +32 -0
  235. package/dist/useCases/ListScenes.js +32 -0
  236. package/dist/useCases/ListTeam.js +32 -0
  237. package/dist/useCases/ListUserOrders.js +32 -0
  238. package/dist/useCases/ListUserSpaces.js +32 -0
  239. package/dist/useCases/LogoutUser.js +32 -0
  240. package/dist/useCases/PurchaseReservationEarlyCheckInProducts.js +32 -0
  241. package/dist/useCases/PurchaseReservationLateCheckOutProducts.js +32 -0
  242. package/dist/useCases/{CreateIntegrationDeviceMapEntry.js → PurchaseReservationRoomUpgrades.js} +2 -2
  243. package/dist/useCases/RequestLoginLink.js +1 -1
  244. package/dist/useCases/{CreateIntegration.js → RequestMyKeyToken.js} +2 -2
  245. package/dist/useCases/RequestPWAToken.js +32 -0
  246. package/dist/useCases/SendCheckInSMS.js +32 -0
  247. package/dist/useCases/{SetSource.js → SetDimmer.js} +2 -2
  248. package/dist/useCases/{DescribeSource.js → SetMediaSource.js} +3 -3
  249. package/dist/useCases/{UpdateSource.js → SetRoomScene.js} +3 -3
  250. package/dist/useCases/SetSpaceScene.js +32 -0
  251. package/dist/useCases/TipUser.js +32 -0
  252. package/dist/useCases/{AdminUpdateProperty.js → UpdateCategory.js} +2 -2
  253. package/dist/useCases/{UpdateIntegration.js → UpdateMediaSource.js} +3 -3
  254. package/dist/useCases/UpdateProperty.js +32 -0
  255. package/dist/useCases/UpdateReservationExpectedArrivalTime.js +32 -0
  256. package/dist/useCases/{ListSources.js → UploadImage.js} +4 -4
  257. package/package.json +36 -10
  258. package/dist/cjs/Commands.js +0 -585
  259. package/dist/cjs/Errors.js +0 -176
  260. package/dist/cjs/Events.js +0 -387
  261. package/dist/cjs/Models.js +0 -3612
  262. package/dist/cjs/defs.js +0 -178
  263. package/dist/cjs/utils.js +0 -250
  264. package/dist/useCases/AdminRequestLoginLink.js +0 -32
package/dist/esm/defs.js CHANGED
@@ -14,12 +14,12 @@ var require_deviceTypes = __commonJS({
14
14
  "thermostat",
15
15
  "lock",
16
16
  "windowCovering",
17
- "sceneController",
18
17
  "courtesy",
19
18
  "alarm",
20
19
  "camera",
21
- "source",
22
- "motionSensor"
20
+ "mediaSource",
21
+ "motionSensor",
22
+ "gateway"
23
23
  ];
24
24
  module.exports = types;
25
25
  }
@@ -481,8 +481,9 @@ var require_axios = __commonJS({
481
481
  var isFileList = kindOfTest("FileList");
482
482
  var isStream = /* @__PURE__ */ __name((val) => isObject(val) && isFunction(val.pipe), "isStream");
483
483
  var isFormData = /* @__PURE__ */ __name((thing) => {
484
- const pattern = "[object FormData]";
485
- return thing && (typeof FormData === "function" && thing instanceof FormData || toString.call(thing) === pattern || isFunction(thing.toString) && thing.toString() === pattern);
484
+ let kind;
485
+ return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance
486
+ kind === "object" && isFunction(thing.toString) && thing.toString() === "[object FormData]"));
486
487
  }, "isFormData");
487
488
  var isURLSearchParams = kindOfTest("URLSearchParams");
488
489
  var trim = /* @__PURE__ */ __name((str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""), "trim");
@@ -645,7 +646,7 @@ var require_axios = __commonJS({
645
646
  var isHTMLForm = kindOfTest("HTMLFormElement");
646
647
  var toCamelCase = /* @__PURE__ */ __name((str) => {
647
648
  return str.toLowerCase().replace(
648
- /[_-\s]([a-z\d])(\w*)/g,
649
+ /[-_\s]([a-z\d])(\w*)/g,
649
650
  /* @__PURE__ */ __name(function replacer(m, p1, p2) {
650
651
  return p1.toUpperCase() + p2;
651
652
  }, "replacer")
@@ -657,8 +658,9 @@ var require_axios = __commonJS({
657
658
  const descriptors2 = Object.getOwnPropertyDescriptors(obj);
658
659
  const reducedDescriptors = {};
659
660
  forEach(descriptors2, (descriptor, name) => {
660
- if (reducer(descriptor, name, obj) !== false) {
661
- reducedDescriptors[name] = descriptor;
661
+ let ret;
662
+ if ((ret = reducer(descriptor, name, obj)) !== false) {
663
+ reducedDescriptors[name] = ret || descriptor;
662
664
  }
663
665
  });
664
666
  Object.defineProperties(obj, reducedDescriptors);
@@ -699,6 +701,25 @@ var require_axios = __commonJS({
699
701
  value = +value;
700
702
  return Number.isFinite(value) ? value : defaultValue;
701
703
  }, "toFiniteNumber");
704
+ var ALPHA = "abcdefghijklmnopqrstuvwxyz";
705
+ var DIGIT = "0123456789";
706
+ var ALPHABET = {
707
+ DIGIT,
708
+ ALPHA,
709
+ ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT
710
+ };
711
+ var generateString = /* @__PURE__ */ __name((size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {
712
+ let str = "";
713
+ const { length } = alphabet;
714
+ while (size--) {
715
+ str += alphabet[Math.random() * length | 0];
716
+ }
717
+ return str;
718
+ }, "generateString");
719
+ function isSpecCompliantForm(thing) {
720
+ return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator]);
721
+ }
722
+ __name(isSpecCompliantForm, "isSpecCompliantForm");
702
723
  var toJSONObject = /* @__PURE__ */ __name((obj) => {
703
724
  const stack = new Array(10);
704
725
  const visit = /* @__PURE__ */ __name((source, i) => {
@@ -721,6 +742,8 @@ var require_axios = __commonJS({
721
742
  }, "visit");
722
743
  return visit(obj, 0);
723
744
  }, "toJSONObject");
745
+ var isAsyncFn = kindOfTest("AsyncFunction");
746
+ var isThenable = /* @__PURE__ */ __name((thing) => thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch), "isThenable");
724
747
  var utils = {
725
748
  isArray,
726
749
  isArrayBuffer,
@@ -768,7 +791,12 @@ var require_axios = __commonJS({
768
791
  findKey,
769
792
  global: _global,
770
793
  isContextDefined,
771
- toJSONObject
794
+ ALPHABET,
795
+ generateString,
796
+ isSpecCompliantForm,
797
+ toJSONObject,
798
+ isAsyncFn,
799
+ isThenable
772
800
  };
773
801
  function AxiosError(message, code, config, request, response) {
774
802
  Error.call(this);
@@ -840,8 +868,7 @@ var require_axios = __commonJS({
840
868
  customProps && Object.assign(axiosError, customProps);
841
869
  return axiosError;
842
870
  };
843
- var browser = typeof self == "object" ? self.FormData : window.FormData;
844
- var FormData$2 = browser;
871
+ var httpAdapter = null;
845
872
  function isVisitable(thing) {
846
873
  return utils.isPlainObject(thing) || utils.isArray(thing);
847
874
  }
@@ -866,15 +893,11 @@ var require_axios = __commonJS({
866
893
  var predicates = utils.toFlatObject(utils, {}, null, /* @__PURE__ */ __name(function filter(prop) {
867
894
  return /^is[A-Z]/.test(prop);
868
895
  }, "filter"));
869
- function isSpecCompliant(thing) {
870
- return thing && utils.isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator];
871
- }
872
- __name(isSpecCompliant, "isSpecCompliant");
873
896
  function toFormData(obj, formData, options) {
874
897
  if (!utils.isObject(obj)) {
875
898
  throw new TypeError("target must be an object");
876
899
  }
877
- formData = formData || new (FormData$2 || FormData)();
900
+ formData = formData || new FormData();
878
901
  options = utils.toFlatObject(options, {
879
902
  metaTokens: true,
880
903
  dots: false,
@@ -887,7 +910,7 @@ var require_axios = __commonJS({
887
910
  const dots = options.dots;
888
911
  const indexes = options.indexes;
889
912
  const _Blob = options.Blob || typeof Blob !== "undefined" && Blob;
890
- const useBlob = _Blob && isSpecCompliant(formData);
913
+ const useBlob = _Blob && utils.isSpecCompliantForm(formData);
891
914
  if (!utils.isFunction(visitor)) {
892
915
  throw new TypeError("visitor must be a function");
893
916
  }
@@ -912,7 +935,7 @@ var require_axios = __commonJS({
912
935
  if (utils.endsWith(key, "{}")) {
913
936
  key = metaTokens ? key : key.slice(0, -2);
914
937
  value = JSON.stringify(value);
915
- } else if (utils.isArray(value) && isFlatArray(value) || (utils.isFileList(value) || utils.endsWith(key, "[]") && (arr = utils.toArray(value)))) {
938
+ } else if (utils.isArray(value) && isFlatArray(value) || (utils.isFileList(value) || utils.endsWith(key, "[]")) && (arr = utils.toArray(value))) {
916
939
  key = removeBrackets(key);
917
940
  arr.forEach(/* @__PURE__ */ __name(function each(el, index) {
918
941
  !(utils.isUndefined(el) || el === null) && formData.append(
@@ -1025,6 +1048,9 @@ var require_axios = __commonJS({
1025
1048
  }
1026
1049
  __name(buildURL, "buildURL");
1027
1050
  var InterceptorManager = class {
1051
+ static {
1052
+ __name(this, "InterceptorManager");
1053
+ }
1028
1054
  constructor() {
1029
1055
  this.handlers = [];
1030
1056
  }
@@ -1085,7 +1111,6 @@ var require_axios = __commonJS({
1085
1111
  }, "forEachHandler"));
1086
1112
  }
1087
1113
  };
1088
- __name(InterceptorManager, "InterceptorManager");
1089
1114
  var InterceptorManager$1 = InterceptorManager;
1090
1115
  var transitionalDefaults = {
1091
1116
  silentJSONParsing: true,
@@ -1093,7 +1118,8 @@ var require_axios = __commonJS({
1093
1118
  clarifyTimeoutError: false
1094
1119
  };
1095
1120
  var URLSearchParams$1 = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams;
1096
- var FormData$1 = FormData;
1121
+ var FormData$1 = typeof FormData !== "undefined" ? FormData : null;
1122
+ var Blob$1 = typeof Blob !== "undefined" ? Blob : null;
1097
1123
  var isStandardBrowserEnv = (() => {
1098
1124
  let product;
1099
1125
  if (typeof navigator !== "undefined" && ((product = navigator.product) === "ReactNative" || product === "NativeScript" || product === "NS")) {
@@ -1110,7 +1136,7 @@ var require_axios = __commonJS({
1110
1136
  classes: {
1111
1137
  URLSearchParams: URLSearchParams$1,
1112
1138
  FormData: FormData$1,
1113
- Blob
1139
+ Blob: Blob$1
1114
1140
  },
1115
1141
  isStandardBrowserEnv,
1116
1142
  isStandardBrowserWebWorkerEnv,
@@ -1181,9 +1207,6 @@ var require_axios = __commonJS({
1181
1207
  return null;
1182
1208
  }
1183
1209
  __name(formDataToJSON, "formDataToJSON");
1184
- var DEFAULT_CONTENT_TYPE = {
1185
- "Content-Type": void 0
1186
- };
1187
1210
  function stringifySafely(rawValue, parser, encoder) {
1188
1211
  if (utils.isString(rawValue)) {
1189
1212
  try {
@@ -1200,7 +1223,7 @@ var require_axios = __commonJS({
1200
1223
  __name(stringifySafely, "stringifySafely");
1201
1224
  var defaults = {
1202
1225
  transitional: transitionalDefaults,
1203
- adapter: ["xhr", "http"],
1226
+ adapter: platform.isNode ? "http" : "xhr",
1204
1227
  transformRequest: [/* @__PURE__ */ __name(function transformRequest(data, headers) {
1205
1228
  const contentType = headers.getContentType() || "";
1206
1229
  const hasJSONContentType = contentType.indexOf("application/json") > -1;
@@ -1283,16 +1306,14 @@ var require_axios = __commonJS({
1283
1306
  }, "validateStatus"),
1284
1307
  headers: {
1285
1308
  common: {
1286
- "Accept": "application/json, text/plain, */*"
1309
+ "Accept": "application/json, text/plain, */*",
1310
+ "Content-Type": void 0
1287
1311
  }
1288
1312
  }
1289
1313
  };
1290
- utils.forEach(["delete", "get", "head"], /* @__PURE__ */ __name(function forEachMethodNoData(method) {
1314
+ utils.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => {
1291
1315
  defaults.headers[method] = {};
1292
- }, "forEachMethodNoData"));
1293
- utils.forEach(["post", "put", "patch"], /* @__PURE__ */ __name(function forEachMethodWithData(method) {
1294
- defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);
1295
- }, "forEachMethodWithData"));
1316
+ });
1296
1317
  var defaults$1 = defaults;
1297
1318
  var ignoreDuplicateOf = utils.toObjectSet([
1298
1319
  "age",
@@ -1359,14 +1380,14 @@ var require_axios = __commonJS({
1359
1380
  return tokens;
1360
1381
  }
1361
1382
  __name(parseTokens, "parseTokens");
1362
- function isValidHeaderName(str) {
1363
- return /^[-_a-zA-Z]+$/.test(str.trim());
1364
- }
1365
- __name(isValidHeaderName, "isValidHeaderName");
1366
- function matchHeaderValue(context, value, header, filter) {
1383
+ var isValidHeaderName = /* @__PURE__ */ __name((str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()), "isValidHeaderName");
1384
+ function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {
1367
1385
  if (utils.isFunction(filter)) {
1368
1386
  return filter.call(this, value, header);
1369
1387
  }
1388
+ if (isHeaderNameFilter) {
1389
+ value = header;
1390
+ }
1370
1391
  if (!utils.isString(value))
1371
1392
  return;
1372
1393
  if (utils.isString(filter)) {
@@ -1396,6 +1417,9 @@ var require_axios = __commonJS({
1396
1417
  }
1397
1418
  __name(buildAccessors, "buildAccessors");
1398
1419
  var AxiosHeaders = class {
1420
+ static {
1421
+ __name(this, "AxiosHeaders");
1422
+ }
1399
1423
  constructor(headers) {
1400
1424
  headers && this.set(headers);
1401
1425
  }
@@ -1448,7 +1472,7 @@ var require_axios = __commonJS({
1448
1472
  header = normalizeHeader(header);
1449
1473
  if (header) {
1450
1474
  const key = utils.findKey(this, header);
1451
- return !!(key && (!matcher || matchHeaderValue(this, this[key], key, matcher)));
1475
+ return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher)));
1452
1476
  }
1453
1477
  return false;
1454
1478
  }
@@ -1473,8 +1497,18 @@ var require_axios = __commonJS({
1473
1497
  }
1474
1498
  return deleted;
1475
1499
  }
1476
- clear() {
1477
- return Object.keys(this).forEach(this.delete.bind(this));
1500
+ clear(matcher) {
1501
+ const keys = Object.keys(this);
1502
+ let i = keys.length;
1503
+ let deleted = false;
1504
+ while (i--) {
1505
+ const key = keys[i];
1506
+ if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {
1507
+ delete this[key];
1508
+ deleted = true;
1509
+ }
1510
+ }
1511
+ return deleted;
1478
1512
  }
1479
1513
  normalize(format) {
1480
1514
  const self2 = this;
@@ -1540,9 +1574,16 @@ var require_axios = __commonJS({
1540
1574
  return this;
1541
1575
  }
1542
1576
  };
1543
- __name(AxiosHeaders, "AxiosHeaders");
1544
- AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent"]);
1545
- utils.freezeMethods(AxiosHeaders.prototype);
1577
+ AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]);
1578
+ utils.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => {
1579
+ let mapped = key[0].toUpperCase() + key.slice(1);
1580
+ return {
1581
+ get: () => value,
1582
+ set(headerValue) {
1583
+ this[mapped] = headerValue;
1584
+ }
1585
+ };
1586
+ });
1546
1587
  utils.freezeMethods(AxiosHeaders);
1547
1588
  var AxiosHeaders$1 = AxiosHeaders;
1548
1589
  function transformData(fns, response) {
@@ -1569,7 +1610,6 @@ var require_axios = __commonJS({
1569
1610
  utils.inherits(CanceledError, AxiosError, {
1570
1611
  __CANCEL__: true
1571
1612
  });
1572
- var httpAdapter = null;
1573
1613
  function settle(resolve, reject, response) {
1574
1614
  const validateStatus = response.config.validateStatus;
1575
1615
  if (!response.status || !validateStatus || validateStatus(response.status)) {
@@ -1763,8 +1803,12 @@ var require_axios = __commonJS({
1763
1803
  }
1764
1804
  }
1765
1805
  __name(done, "done");
1766
- if (utils.isFormData(requestData) && (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv)) {
1767
- requestHeaders.setContentType(false);
1806
+ if (utils.isFormData(requestData)) {
1807
+ if (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv) {
1808
+ requestHeaders.setContentType(false);
1809
+ } else {
1810
+ requestHeaders.setContentType("multipart/form-data;", false);
1811
+ }
1768
1812
  }
1769
1813
  let request = new XMLHttpRequest();
1770
1814
  if (config.auth) {
@@ -2048,7 +2092,7 @@ var require_axios = __commonJS({
2048
2092
  validateStatus: mergeDirectKeys,
2049
2093
  headers: (a, b) => mergeDeepProperties(headersToObject(a), headersToObject(b), true)
2050
2094
  };
2051
- utils.forEach(Object.keys(config1).concat(Object.keys(config2)), /* @__PURE__ */ __name(function computeConfigValue(prop) {
2095
+ utils.forEach(Object.keys(Object.assign({}, config1, config2)), /* @__PURE__ */ __name(function computeConfigValue(prop) {
2052
2096
  const merge2 = mergeMap[prop] || mergeDeepProperties;
2053
2097
  const configValue = merge2(config1[prop], config2[prop], prop);
2054
2098
  utils.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue);
@@ -2056,7 +2100,7 @@ var require_axios = __commonJS({
2056
2100
  return config;
2057
2101
  }
2058
2102
  __name(mergeConfig, "mergeConfig");
2059
- var VERSION = "1.2.3";
2103
+ var VERSION = "1.5.0";
2060
2104
  var validators$1 = {};
2061
2105
  ["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => {
2062
2106
  validators$1[type] = /* @__PURE__ */ __name(function validator2(thing) {
@@ -2117,6 +2161,9 @@ var require_axios = __commonJS({
2117
2161
  };
2118
2162
  var validators = validator.validators;
2119
2163
  var Axios = class {
2164
+ static {
2165
+ __name(this, "Axios");
2166
+ }
2120
2167
  constructor(instanceConfig) {
2121
2168
  this.defaults = instanceConfig;
2122
2169
  this.interceptors = {
@@ -2148,19 +2195,24 @@ var require_axios = __commonJS({
2148
2195
  clarifyTimeoutError: validators.transitional(validators.boolean)
2149
2196
  }, false);
2150
2197
  }
2151
- if (paramsSerializer !== void 0) {
2152
- validator.assertOptions(paramsSerializer, {
2153
- encode: validators.function,
2154
- serialize: validators.function
2155
- }, true);
2198
+ if (paramsSerializer != null) {
2199
+ if (utils.isFunction(paramsSerializer)) {
2200
+ config.paramsSerializer = {
2201
+ serialize: paramsSerializer
2202
+ };
2203
+ } else {
2204
+ validator.assertOptions(paramsSerializer, {
2205
+ encode: validators.function,
2206
+ serialize: validators.function
2207
+ }, true);
2208
+ }
2156
2209
  }
2157
2210
  config.method = (config.method || this.defaults.method || "get").toLowerCase();
2158
- let contextHeaders;
2159
- contextHeaders = headers && utils.merge(
2211
+ let contextHeaders = headers && utils.merge(
2160
2212
  headers.common,
2161
2213
  headers[config.method]
2162
2214
  );
2163
- contextHeaders && utils.forEach(
2215
+ headers && utils.forEach(
2164
2216
  ["delete", "get", "head", "post", "put", "patch", "common"],
2165
2217
  (method) => {
2166
2218
  delete headers[method];
@@ -2225,7 +2277,6 @@ var require_axios = __commonJS({
2225
2277
  return buildURL(fullPath, config.params, config.paramsSerializer);
2226
2278
  }
2227
2279
  };
2228
- __name(Axios, "Axios");
2229
2280
  utils.forEach(["delete", "get", "head", "options"], /* @__PURE__ */ __name(function forEachMethodNoData(method) {
2230
2281
  Axios.prototype[method] = function(url, config) {
2231
2282
  return this.request(mergeConfig(config || {}, {
@@ -2253,7 +2304,10 @@ var require_axios = __commonJS({
2253
2304
  Axios.prototype[method + "Form"] = generateHTTPMethod(true);
2254
2305
  }, "forEachMethodWithData"));
2255
2306
  var Axios$1 = Axios;
2256
- var CancelToken = class {
2307
+ var CancelToken = class _CancelToken {
2308
+ static {
2309
+ __name(this, "CancelToken");
2310
+ }
2257
2311
  constructor(executor) {
2258
2312
  if (typeof executor !== "function") {
2259
2313
  throw new TypeError("executor must be a function.");
@@ -2331,7 +2385,7 @@ var require_axios = __commonJS({
2331
2385
  */
2332
2386
  static source() {
2333
2387
  let cancel;
2334
- const token = new CancelToken(/* @__PURE__ */ __name(function executor(c) {
2388
+ const token = new _CancelToken(/* @__PURE__ */ __name(function executor(c) {
2335
2389
  cancel = c;
2336
2390
  }, "executor"));
2337
2391
  return {
@@ -2340,7 +2394,6 @@ var require_axios = __commonJS({
2340
2394
  };
2341
2395
  }
2342
2396
  };
2343
- __name(CancelToken, "CancelToken");
2344
2397
  var CancelToken$1 = CancelToken;
2345
2398
  function spread(callback) {
2346
2399
  return /* @__PURE__ */ __name(function wrap(arr) {
@@ -2449,6 +2502,7 @@ var require_axios = __commonJS({
2449
2502
  axios.mergeConfig = mergeConfig;
2450
2503
  axios.AxiosHeaders = AxiosHeaders$1;
2451
2504
  axios.formToJSON = (thing) => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);
2505
+ axios.getAdapter = adapters.getAdapter;
2452
2506
  axios.HttpStatusCode = HttpStatusCode$1;
2453
2507
  axios.default = axios;
2454
2508
  module.exports = axios;
@@ -2460,7 +2514,10 @@ var require_Client = __commonJS({
2460
2514
  "src/Client/index.js"(exports, module) {
2461
2515
  var { EventEmitter } = require_events();
2462
2516
  var axios = require_axios();
2463
- var KohostApiClient = class extends EventEmitter {
2517
+ var KohostApiClient = class _KohostApiClient extends EventEmitter {
2518
+ static {
2519
+ __name(this, "KohostApiClient");
2520
+ }
2464
2521
  /*
2465
2522
  @param {Object} options - The options to create the client
2466
2523
  @param {String} options.propertyId - The property ID
@@ -2471,6 +2528,8 @@ var require_Client = __commonJS({
2471
2528
  constructor(options = {
2472
2529
  url: "",
2473
2530
  propertyId: "",
2531
+ organizationId: "",
2532
+ apiKey: "",
2474
2533
  headers: {}
2475
2534
  }) {
2476
2535
  super();
@@ -2480,32 +2539,30 @@ var require_Client = __commonJS({
2480
2539
  throw new Error("options.property is required");
2481
2540
  this.options = options;
2482
2541
  this.isBrowser = typeof window !== "undefined";
2483
- this._http = axios.create({
2542
+ this.isRefreshingToken = false;
2543
+ const config = {
2484
2544
  baseURL: options.url,
2485
2545
  responseType: "json",
2486
2546
  withCredentials: true,
2487
2547
  headers: {
2488
2548
  "Content-Type": "application/json",
2489
2549
  Accept: "application/json",
2490
- [KohostApiClient.defs.propertyHeader]: options.propertyId,
2550
+ [_KohostApiClient.defs.propertyHeader]: options.propertyId,
2491
2551
  ...options.headers
2492
2552
  }
2493
- });
2553
+ };
2554
+ if (options.apiKey) {
2555
+ config.headers[_KohostApiClient.defs.apiKeyHeader] = options.apiKey;
2556
+ }
2557
+ this._http = axios.create(config);
2494
2558
  this._http.interceptors.response.use(
2495
2559
  this._handleResponse.bind(this),
2496
2560
  this._handleResponseError.bind(this)
2497
2561
  );
2498
- this._http.interceptors.request.use((config) => {
2499
- if (!this.isBrowser) {
2500
- config.headers[KohostApiClient.defs.authTokenHeader] = this.authToken;
2501
- }
2502
- return config;
2503
- });
2504
2562
  }
2505
2563
  static get defs() {
2506
2564
  return {
2507
- authTokenHeader: "X-Auth-Token",
2508
- refreshTokenHeader: "X-Refresh-Token",
2565
+ apiKeyHeader: "X-Api-Key",
2509
2566
  propertyHeader: "X-Property-Id"
2510
2567
  };
2511
2568
  }
@@ -2516,12 +2573,6 @@ var require_Client = __commonJS({
2516
2573
  response.pagination = response.data.pagination;
2517
2574
  response.data = response.data.data;
2518
2575
  }
2519
- if (!this.isBrowser && response.headers[this.authTokenHeaderKey]) {
2520
- this.authToken = response.headers[this.authTokenHeaderKey];
2521
- }
2522
- if (!this.isBrowser && response.headers[this.refreshTokenHeaderKey]) {
2523
- this.refreshToken = response.headers[this.refreshTokenHeaderKey];
2524
- }
2525
2576
  return response;
2526
2577
  } catch (error) {
2527
2578
  return Promise.reject(error);
@@ -2537,48 +2588,42 @@ var require_Client = __commonJS({
2537
2588
  try {
2538
2589
  const expectedError = status >= 400 && status < 500;
2539
2590
  const newTokensNeeded = expectedError && errorType === "TokenExpiredError";
2591
+ if (expectedError && errorMessage === "Phone Verification is required") {
2592
+ this._onPhoneVerificationRequired();
2593
+ return Promise.reject(error);
2594
+ }
2540
2595
  if (expectedError && errorMessage === "Login Required") {
2541
2596
  this._onLoginRequired();
2542
2597
  return Promise.reject(error);
2543
2598
  }
2544
- if (expectedError && errorMessage === "No token provided") {
2599
+ if (expectedError && errorMessage === "No auth header or cookie provided") {
2545
2600
  this._onLoginRequired();
2546
2601
  return Promise.reject(error);
2547
2602
  }
2548
2603
  if (expectedError && newTokensNeeded) {
2549
- return this.RefreshToken().then(() => {
2550
- return this._http(originalReq);
2551
- });
2604
+ while (!this.isRefreshingToken) {
2605
+ this.isRefreshingToken = true;
2606
+ return this.RefreshToken().then(() => {
2607
+ this.isRefreshingToken = false;
2608
+ return this._http(originalReq);
2609
+ }).catch((err) => {
2610
+ this.isRefreshingToken = false;
2611
+ return Promise.reject(err);
2612
+ });
2613
+ }
2552
2614
  }
2553
2615
  } catch (error2) {
2554
2616
  console.log(error2);
2555
2617
  }
2556
2618
  return Promise.reject(error);
2557
2619
  }
2558
- get authTokenHeaderKey() {
2559
- return KohostApiClient.defs.authTokenHeader.toLowerCase();
2560
- }
2561
- get refreshTokenHeaderKey() {
2562
- return KohostApiClient.defs.refreshTokenHeader.toLowerCase();
2563
- }
2564
- get lsTokenKey() {
2565
- return `${this.options.propertyId}_${KohostApiClient.defs.authTokenHeader}`;
2566
- }
2567
- get authToken() {
2568
- return this._authToken;
2569
- }
2570
- /*
2571
- @param {String} token - The token to set
2572
- @returns undefined
2573
- */
2574
- set authToken(token) {
2575
- this._authToken = token;
2576
- }
2577
2620
  _onLoginRequired() {
2578
2621
  this.emit("LoginRequired");
2579
2622
  }
2623
+ _onPhoneVerificationRequired() {
2624
+ this.emit("PhoneVerificationRequired");
2625
+ }
2580
2626
  };
2581
- __name(KohostApiClient, "KohostApiClient");
2582
2627
  module.exports = KohostApiClient;
2583
2628
  }
2584
2629
  });