hcloud-sdk 0.0.16 → 14.13.2

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 (305) hide show
  1. package/README.md +1 -0
  2. package/changelog.md +809 -0
  3. package/index.d.ts +3 -2
  4. package/index.js +5 -2
  5. package/lib/Base.d.ts +26 -0
  6. package/lib/Base.js +12 -0
  7. package/lib/Hcloud.d.ts +80 -0
  8. package/lib/Hcloud.js +134 -0
  9. package/lib/helper/ErrorHelper.d.ts +7 -0
  10. package/lib/helper/ErrorHelper.js +19 -0
  11. package/lib/helper/paginatedResponseHelper.d.ts +3 -0
  12. package/lib/helper/paginatedResponseHelper.js +9 -0
  13. package/lib/helper/searchFilter.d.ts +9 -0
  14. package/lib/helper/searchFilter.js +12 -0
  15. package/lib/interfaces/agent/bundle/dev/index.d.ts +3 -0
  16. package/lib/interfaces/agent/context/index.d.ts +19 -0
  17. package/lib/interfaces/agent/index.d.ts +21 -0
  18. package/lib/interfaces/agent/index.js +2 -0
  19. package/lib/interfaces/{Auditor.d.ts → auditor/index.d.ts} +31 -5
  20. package/lib/interfaces/{Auditor.js → auditor/index.js} +15 -5
  21. package/lib/interfaces/axios/index.d.ts +5 -0
  22. package/lib/interfaces/axios/index.js +8 -0
  23. package/lib/interfaces/bouncer/features/index.d.ts +10 -0
  24. package/lib/interfaces/bouncer/features/index.js +2 -0
  25. package/lib/interfaces/bouncer/index.d.ts +6 -0
  26. package/lib/interfaces/bouncer/index.js +17 -0
  27. package/lib/interfaces/dali/index.d.ts +3 -0
  28. package/lib/interfaces/dali/index.js +2 -0
  29. package/lib/interfaces/frontend/config/index.d.ts +33 -0
  30. package/lib/interfaces/frontend/config/index.js +10 -0
  31. package/lib/interfaces/fuse/index.d.ts +3 -0
  32. package/lib/interfaces/fuse/index.js +19 -0
  33. package/lib/interfaces/fuse/space/cronjob/Cronjob.d.ts +38 -0
  34. package/lib/interfaces/fuse/space/cronjob/Cronjob.js +8 -0
  35. package/lib/interfaces/fuse/space/cronjob/CronjobLog.d.ts +16 -0
  36. package/lib/interfaces/fuse/space/cronjob/CronjobLog.js +2 -0
  37. package/lib/interfaces/fuse/space/index.d.ts +21 -0
  38. package/lib/interfaces/fuse/space/index.js +11 -0
  39. package/lib/interfaces/global/HCloudError.d.ts +8 -0
  40. package/lib/interfaces/global/HCloudError.js +13 -0
  41. package/lib/interfaces/global/Header.d.ts +4 -0
  42. package/lib/interfaces/global/Header.js +2 -0
  43. package/lib/interfaces/global/HttpMethod.d.ts +7 -0
  44. package/lib/interfaces/global/HttpMethod.js +11 -0
  45. package/lib/interfaces/global/PaginatedResponse.d.ts +4 -0
  46. package/lib/interfaces/global/PaginatedResponse.js +2 -0
  47. package/lib/interfaces/global/Products.d.ts +11 -0
  48. package/lib/interfaces/global/Products.js +15 -0
  49. package/lib/interfaces/global/SearchFilters.d.ts +86 -0
  50. package/lib/interfaces/global/SearchFilters.js +49 -0
  51. package/lib/interfaces/global/Space.d.ts +20 -0
  52. package/lib/interfaces/global/Space.js +8 -0
  53. package/lib/interfaces/global/Version.d.ts +3 -0
  54. package/lib/interfaces/global/Version.js +2 -0
  55. package/lib/interfaces/global/Views.d.ts +8 -0
  56. package/lib/interfaces/global/Views.js +12 -0
  57. package/lib/interfaces/global/index.d.ts +9 -0
  58. package/lib/interfaces/global/index.js +25 -0
  59. package/lib/interfaces/high5/index.d.ts +16 -0
  60. package/lib/interfaces/high5/index.js +32 -0
  61. package/lib/interfaces/high5/joinToken/index.d.ts +10 -0
  62. package/lib/interfaces/high5/joinToken/index.js +2 -0
  63. package/lib/interfaces/high5/space/event/index.d.ts +15 -0
  64. package/lib/interfaces/high5/space/event/index.js +2 -0
  65. package/lib/interfaces/high5/space/event/stream/design/DesignOperation.d.ts +68 -0
  66. package/lib/interfaces/high5/space/event/stream/design/DesignOperation.js +20 -0
  67. package/lib/interfaces/high5/space/event/stream/design/StreamDesign.d.ts +92 -0
  68. package/lib/interfaces/high5/space/event/stream/design/StreamDesign.js +20 -0
  69. package/lib/interfaces/high5/space/event/stream/design/index.d.ts +22 -0
  70. package/lib/interfaces/high5/space/event/stream/design/index.js +2 -0
  71. package/lib/interfaces/high5/space/event/stream/design/snapshot/index.d.ts +30 -0
  72. package/lib/interfaces/high5/space/event/stream/design/snapshot/index.js +8 -0
  73. package/lib/interfaces/high5/space/event/stream/index.d.ts +77 -0
  74. package/lib/interfaces/high5/space/event/stream/index.js +13 -0
  75. package/lib/interfaces/high5/space/event/stream/node/index.d.ts +60 -0
  76. package/lib/interfaces/high5/space/event/stream/node/index.js +7 -0
  77. package/lib/interfaces/high5/space/execution/index.d.ts +137 -0
  78. package/lib/interfaces/high5/space/execution/index.js +21 -0
  79. package/lib/interfaces/high5/space/index.d.ts +23 -0
  80. package/lib/interfaces/high5/space/index.js +12 -0
  81. package/lib/interfaces/high5/space/secret/index.d.ts +12 -0
  82. package/lib/interfaces/high5/space/secret/index.js +2 -0
  83. package/lib/interfaces/high5/space/webhook/index.d.ts +75 -0
  84. package/lib/interfaces/high5/space/webhook/index.js +9 -0
  85. package/lib/interfaces/high5/wave/index.d.ts +171 -0
  86. package/lib/interfaces/high5/wave/index.js +52 -0
  87. package/lib/interfaces/idp/index.d.ts +26 -0
  88. package/lib/interfaces/idp/index.js +38 -0
  89. package/lib/interfaces/idp/oauth/index.d.ts +19 -0
  90. package/lib/interfaces/idp/oauth/index.js +8 -0
  91. package/lib/interfaces/idp/organization/index.d.ts +32 -0
  92. package/lib/interfaces/idp/organization/index.js +25 -0
  93. package/lib/interfaces/idp/organization/license/index.d.ts +84 -0
  94. package/lib/interfaces/idp/organization/license/index.js +15 -0
  95. package/lib/interfaces/idp/organization/member/index.d.ts +15 -0
  96. package/lib/interfaces/idp/organization/member/index.js +2 -0
  97. package/lib/interfaces/idp/organization/member/invitations/index.d.ts +26 -0
  98. package/lib/interfaces/idp/organization/member/invitations/index.js +18 -0
  99. package/lib/interfaces/idp/organization/settings/domain/index.d.ts +19 -0
  100. package/lib/interfaces/idp/organization/settings/domain/index.js +8 -0
  101. package/lib/interfaces/idp/organization/settings/domain/saml/index.d.ts +10 -0
  102. package/lib/interfaces/idp/organization/settings/domain/saml/index.js +2 -0
  103. package/lib/interfaces/idp/organization/settings/oauthApp/index.d.ts +37 -0
  104. package/lib/interfaces/idp/organization/settings/oauthApp/index.js +2 -0
  105. package/lib/interfaces/idp/organization/team/index.d.ts +24 -0
  106. package/lib/interfaces/idp/organization/team/index.js +9 -0
  107. package/lib/interfaces/idp/user/ConnectionSettings.d.ts +6 -0
  108. package/lib/interfaces/idp/user/ConnectionSettings.js +2 -0
  109. package/lib/interfaces/idp/user/GeneralSettings.d.ts +44 -0
  110. package/lib/interfaces/idp/user/GeneralSettings.js +38 -0
  111. package/lib/interfaces/idp/user/NotificationSettings.d.ts +8 -0
  112. package/lib/interfaces/idp/user/NotificationSettings.js +2 -0
  113. package/lib/interfaces/idp/user/Pat.d.ts +19 -0
  114. package/lib/interfaces/idp/user/Pat.js +2 -0
  115. package/lib/interfaces/idp/user/Scopes.d.ts +40 -0
  116. package/lib/interfaces/idp/user/Scopes.js +50 -0
  117. package/lib/interfaces/idp/user/SuccessfulAuth.d.ts +5 -0
  118. package/lib/interfaces/idp/user/SuccessfulAuth.js +2 -0
  119. package/lib/interfaces/idp/user/Totp.d.ts +20 -0
  120. package/lib/interfaces/idp/user/Totp.js +2 -0
  121. package/lib/interfaces/idp/user/index.d.ts +23 -0
  122. package/lib/interfaces/idp/user/index.js +2 -0
  123. package/lib/interfaces/mailer/index.d.ts +66 -0
  124. package/lib/interfaces/mailer/index.js +81 -0
  125. package/lib/interfaces/mothership/index.d.ts +27 -0
  126. package/lib/interfaces/mothership/index.js +8 -0
  127. package/lib/interfaces/nats/index.d.ts +252 -0
  128. package/lib/interfaces/nats/index.js +334 -0
  129. package/lib/service/agent/bundle/dev/index.d.ts +17 -0
  130. package/lib/service/agent/bundle/dev/index.js +40 -0
  131. package/lib/service/agent/bundle/index.d.ts +11 -0
  132. package/lib/service/agent/bundle/index.js +55 -0
  133. package/lib/service/agent/context/index.d.ts +37 -0
  134. package/lib/service/agent/context/index.js +81 -0
  135. package/lib/service/agent/index.d.ts +14 -0
  136. package/lib/service/agent/index.js +20 -0
  137. package/lib/service/agent/installer/index.d.ts +15 -0
  138. package/lib/service/agent/installer/index.js +97 -0
  139. package/lib/service/auditor/index.d.ts +26 -0
  140. package/lib/service/auditor/index.js +49 -0
  141. package/lib/service/auditor/internal/index.d.ts +27 -0
  142. package/lib/service/{AuditorInternal.js → auditor/internal/index.js} +20 -24
  143. package/lib/service/bouncer/features/index.d.ts +8 -0
  144. package/lib/service/bouncer/features/index.js +25 -0
  145. package/lib/service/bouncer/index.d.ts +14 -0
  146. package/lib/service/bouncer/index.js +31 -0
  147. package/lib/service/dali/DaliAvatar.d.ts +36 -0
  148. package/lib/service/dali/DaliAvatar.js +25 -0
  149. package/lib/service/dali/avatar/DaliFuseSpace.d.ts +28 -0
  150. package/lib/service/dali/avatar/DaliFuseSpace.js +55 -0
  151. package/lib/service/dali/avatar/DaliHigh5Space.d.ts +28 -0
  152. package/lib/service/dali/avatar/DaliHigh5Space.js +55 -0
  153. package/lib/service/dali/avatar/DaliOAuthApp.d.ts +28 -0
  154. package/lib/service/dali/avatar/DaliOAuthApp.js +55 -0
  155. package/lib/service/dali/avatar/DaliOrganization.d.ts +25 -0
  156. package/lib/service/dali/avatar/DaliOrganization.js +52 -0
  157. package/lib/service/dali/avatar/DaliTeam.d.ts +28 -0
  158. package/lib/service/dali/avatar/DaliTeam.js +55 -0
  159. package/lib/service/dali/avatar/DaliUser.d.ts +22 -0
  160. package/lib/service/dali/avatar/DaliUser.js +49 -0
  161. package/lib/service/dali/index.d.ts +16 -0
  162. package/lib/service/dali/index.js +30 -0
  163. package/lib/service/fuse/index.d.ts +17 -0
  164. package/lib/service/fuse/index.js +34 -0
  165. package/lib/service/fuse/internal/index.d.ts +9 -0
  166. package/lib/service/fuse/internal/index.js +29 -0
  167. package/lib/service/fuse/internal/space/cronjob/index.d.ts +8 -0
  168. package/lib/service/fuse/internal/space/cronjob/index.js +15 -0
  169. package/lib/service/fuse/internal/space/cronjob/log/index.d.ts +17 -0
  170. package/lib/service/fuse/internal/space/cronjob/log/index.js +35 -0
  171. package/lib/service/fuse/internal/space/index.d.ts +23 -0
  172. package/lib/service/fuse/internal/space/index.js +43 -0
  173. package/lib/service/fuse/space/cronjob/index.d.ts +123 -0
  174. package/lib/service/fuse/space/cronjob/index.js +175 -0
  175. package/lib/service/fuse/space/cronjob/log/index.d.ts +31 -0
  176. package/lib/service/fuse/space/cronjob/log/index.js +57 -0
  177. package/lib/service/fuse/space/index.d.ts +82 -0
  178. package/lib/service/fuse/space/index.js +134 -0
  179. package/lib/service/high5/execution/index.d.ts +10 -0
  180. package/lib/service/high5/execution/index.js +17 -0
  181. package/lib/service/high5/execution/log/index.d.ts +19 -0
  182. package/lib/service/high5/execution/log/index.js +41 -0
  183. package/lib/service/high5/execution/status/index.d.ts +18 -0
  184. package/lib/service/high5/execution/status/index.js +41 -0
  185. package/lib/service/high5/index.d.ts +22 -0
  186. package/lib/service/high5/index.js +39 -0
  187. package/lib/service/high5/internal/index.d.ts +9 -0
  188. package/lib/service/high5/internal/index.js +29 -0
  189. package/lib/service/high5/internal/space/index.d.ts +21 -0
  190. package/lib/service/high5/internal/space/index.js +41 -0
  191. package/lib/service/high5/joinToken/index.d.ts +40 -0
  192. package/lib/service/high5/joinToken/index.js +64 -0
  193. package/lib/service/high5/space/event/index.d.ts +56 -0
  194. package/lib/service/high5/space/event/index.js +89 -0
  195. package/lib/service/high5/space/event/stream/design/DesignOperations.d.ts +31 -0
  196. package/lib/service/high5/space/event/stream/design/DesignOperations.js +117 -0
  197. package/lib/service/high5/space/event/stream/design/index.d.ts +38 -0
  198. package/lib/service/high5/space/event/stream/design/index.js +56 -0
  199. package/lib/service/high5/space/event/stream/design/snapshot/index.d.ts +62 -0
  200. package/lib/service/high5/space/event/stream/design/snapshot/index.js +100 -0
  201. package/lib/service/high5/space/event/stream/index.d.ts +114 -0
  202. package/lib/service/high5/space/event/stream/index.js +164 -0
  203. package/lib/service/high5/space/execution/index.d.ts +48 -0
  204. package/lib/service/high5/space/execution/index.js +74 -0
  205. package/lib/service/high5/space/execution/log/index.d.ts +31 -0
  206. package/lib/service/high5/space/execution/log/index.js +57 -0
  207. package/lib/service/high5/space/execution/status/index.d.ts +16 -0
  208. package/lib/service/high5/space/execution/status/index.js +34 -0
  209. package/lib/service/high5/space/index.d.ts +107 -0
  210. package/lib/service/high5/space/index.js +160 -0
  211. package/lib/service/high5/space/node/index.d.ts +58 -0
  212. package/lib/service/high5/space/node/index.js +116 -0
  213. package/lib/service/high5/space/secret/index.d.ts +60 -0
  214. package/lib/service/high5/space/secret/index.js +92 -0
  215. package/lib/service/high5/space/wave/index.d.ts +38 -0
  216. package/lib/service/high5/space/wave/index.js +66 -0
  217. package/lib/service/high5/space/webhook/index.d.ts +83 -0
  218. package/lib/service/high5/space/webhook/index.js +132 -0
  219. package/lib/service/high5/space/webhook/log/index.d.ts +18 -0
  220. package/lib/service/high5/space/webhook/log/index.js +38 -0
  221. package/lib/service/high5/wave/index.d.ts +8 -0
  222. package/lib/service/high5/wave/index.js +15 -0
  223. package/lib/service/high5/wave/s3/index.d.ts +48 -0
  224. package/lib/service/high5/wave/s3/index.js +88 -0
  225. package/lib/service/idp/index.d.ts +82 -0
  226. package/lib/service/idp/index.js +137 -0
  227. package/lib/service/idp/internal/index.d.ts +19 -0
  228. package/lib/service/idp/internal/index.js +34 -0
  229. package/lib/service/idp/oauth/index.d.ts +45 -0
  230. package/lib/service/idp/oauth/index.js +105 -0
  231. package/lib/service/idp/organization/index.d.ts +54 -0
  232. package/lib/service/idp/organization/index.js +79 -0
  233. package/lib/service/idp/organization/license/index.d.ts +7 -0
  234. package/lib/service/idp/organization/license/index.js +30 -0
  235. package/lib/service/idp/organization/member/index.d.ts +58 -0
  236. package/lib/service/idp/organization/member/index.js +96 -0
  237. package/lib/service/idp/organization/member/invitations/index.d.ts +79 -0
  238. package/lib/service/idp/organization/member/invitations/index.js +118 -0
  239. package/lib/service/idp/organization/settings/domain/index.d.ts +38 -0
  240. package/lib/service/idp/organization/settings/domain/index.js +63 -0
  241. package/lib/service/idp/organization/settings/domain/saml/index.d.ts +43 -0
  242. package/lib/service/idp/organization/settings/domain/saml/index.js +88 -0
  243. package/lib/service/idp/organization/settings/index.d.ts +16 -0
  244. package/lib/service/idp/organization/settings/index.js +16 -0
  245. package/lib/service/idp/organization/settings/oauth/index.d.ts +64 -0
  246. package/lib/service/idp/organization/settings/oauth/index.js +106 -0
  247. package/lib/service/idp/organization/team/index.d.ts +72 -0
  248. package/lib/service/idp/organization/team/index.js +115 -0
  249. package/lib/service/idp/registration/index.d.ts +39 -0
  250. package/lib/service/idp/registration/index.js +84 -0
  251. package/lib/service/idp/user/index.d.ts +82 -0
  252. package/lib/service/idp/user/index.js +125 -0
  253. package/lib/service/idp/user/license/index.d.ts +7 -0
  254. package/lib/service/idp/user/license/index.js +30 -0
  255. package/lib/service/idp/user/password/index.d.ts +19 -0
  256. package/lib/service/idp/user/password/index.js +52 -0
  257. package/lib/service/idp/user/settings/connections/index.d.ts +15 -0
  258. package/lib/service/idp/user/settings/connections/index.js +33 -0
  259. package/lib/service/idp/user/settings/general/index.d.ts +18 -0
  260. package/lib/service/idp/user/settings/general/index.js +39 -0
  261. package/lib/service/idp/user/settings/index.d.ts +36 -0
  262. package/lib/service/idp/user/settings/index.js +25 -0
  263. package/lib/service/idp/user/settings/notifications/index.d.ts +18 -0
  264. package/lib/service/idp/user/settings/notifications/index.js +39 -0
  265. package/lib/service/idp/user/settings/oauthApps/index.d.ts +22 -0
  266. package/lib/service/idp/user/settings/oauthApps/index.js +54 -0
  267. package/lib/service/idp/user/settings/pats/index.d.ts +50 -0
  268. package/lib/service/idp/user/settings/pats/index.js +93 -0
  269. package/lib/service/idp/user/settings/twoFactor/index.d.ts +11 -0
  270. package/lib/service/idp/user/settings/twoFactor/index.js +15 -0
  271. package/lib/service/idp/user/settings/twoFactor/totp/index.d.ts +34 -0
  272. package/lib/service/idp/user/settings/twoFactor/totp/index.js +65 -0
  273. package/lib/service/mailer/index.d.ts +14 -0
  274. package/lib/service/{Mailer.js → mailer/index.js} +9 -12
  275. package/lib/service/mailer/internal/index.d.ts +36 -0
  276. package/lib/service/mailer/internal/index.js +64 -0
  277. package/lib/service/mothership/index.d.ts +97 -0
  278. package/lib/service/mothership/index.js +136 -0
  279. package/lib/service/nats/index.d.ts +51 -0
  280. package/lib/service/nats/index.js +138 -0
  281. package/lib/utils/Types.d.ts +1 -0
  282. package/lib/utils/Types.js +2 -0
  283. package/lib/utils/bouncer/features/Provider.d.ts +16 -0
  284. package/lib/utils/bouncer/features/Provider.js +83 -0
  285. package/package.json +37 -29
  286. package/lib/base.d.ts +0 -12
  287. package/lib/base.js +0 -8
  288. package/lib/hcloud.d.ts +0 -13
  289. package/lib/hcloud.js +0 -29
  290. package/lib/interfaces/Global.d.ts +0 -8
  291. package/lib/interfaces/IDP.d.ts +0 -9
  292. package/lib/interfaces/Mail.d.ts +0 -29
  293. package/lib/interfaces/Mail.js +0 -8
  294. package/lib/service/Auditor.d.ts +0 -22
  295. package/lib/service/Auditor.js +0 -61
  296. package/lib/service/AuditorInternal.d.ts +0 -28
  297. package/lib/service/High5.d.ts +0 -4
  298. package/lib/service/High5.js +0 -9
  299. package/lib/service/IDP.d.ts +0 -39
  300. package/lib/service/IDP.js +0 -84
  301. package/lib/service/Mailer.d.ts +0 -13
  302. package/lib/service/MailerInternal.d.ts +0 -32
  303. package/lib/service/MailerInternal.js +0 -64
  304. /package/lib/interfaces/{Global.js → agent/bundle/dev/index.js} +0 -0
  305. /package/lib/interfaces/{IDP.js → agent/context/index.js} +0 -0
package/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- import hcloud from "./lib/hcloud";
2
- export default hcloud;
1
+ import { HCloud } from "./lib/Hcloud";
2
+ import { isHCloudError } from "./lib/helper/ErrorHelper";
3
+ export { HCloud as default, isHCloudError };
package/index.js CHANGED
@@ -1,4 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const hcloud_1 = require("./lib/hcloud");
4
- exports.default = hcloud_1.default;
3
+ exports.isHCloudError = exports.default = void 0;
4
+ const Hcloud_1 = require("./lib/Hcloud");
5
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return Hcloud_1.HCloud; } });
6
+ const ErrorHelper_1 = require("./lib/helper/ErrorHelper");
7
+ Object.defineProperty(exports, "isHCloudError", { enumerable: true, get: function () { return ErrorHelper_1.isHCloudError; } });
package/lib/Base.d.ts ADDED
@@ -0,0 +1,26 @@
1
+ import { AxiosInstance } from "axios";
2
+ export interface HcloudLogger {
3
+ info(msg: string, ...args: any): void;
4
+ debug(msg: string, ...args: any): void;
5
+ warn(msg: string, ...args: any): void;
6
+ error(msg: string, ...args: any): void;
7
+ }
8
+ export interface Options {
9
+ server: string;
10
+ auditor?: {
11
+ queue?: {
12
+ executionInterval?: number;
13
+ };
14
+ };
15
+ agent?: {
16
+ server: string;
17
+ };
18
+ logger?: HcloudLogger;
19
+ }
20
+ export default abstract class Base {
21
+ protected options: Options;
22
+ protected axios: AxiosInstance;
23
+ constructor(options: Options, axios: AxiosInstance);
24
+ protected abstract getEndpoint(endpoint: string): string;
25
+ protected get logger(): HcloudLogger | undefined;
26
+ }
package/lib/Base.js ADDED
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class Base {
4
+ constructor(options, axios) {
5
+ this.options = options;
6
+ this.axios = axios;
7
+ }
8
+ get logger() {
9
+ return this.options.logger;
10
+ }
11
+ }
12
+ exports.default = Base;
@@ -0,0 +1,80 @@
1
+ import { AxiosInstance } from "axios";
2
+ import { HcloudLogger, Options } from "./Base";
3
+ import AgentService from "./service/agent";
4
+ import AuditorService from "./service/auditor";
5
+ import BouncerService from "./service/bouncer";
6
+ import DaliService from "./service/dali";
7
+ import FuseService from "./service/fuse";
8
+ import High5Service from "./service/high5";
9
+ import IdpService from "./service/idp";
10
+ import MailerService from "./service/mailer";
11
+ import MothershipService from "./service/mothership";
12
+ import NatsService from "./service/nats";
13
+ export declare class HCloud {
14
+ Agent: AgentService;
15
+ Auditor: AuditorService;
16
+ Bouncer: BouncerService;
17
+ High5: High5Service;
18
+ Idp: IdpService;
19
+ Fuse: FuseService;
20
+ Dali: DaliService;
21
+ Mailer: MailerService;
22
+ Mothership: MothershipService;
23
+ Nats: NatsService;
24
+ private options;
25
+ private axios;
26
+ constructor(options: Options);
27
+ /**
28
+ * Sets the server url that the SDK shall do a request to.
29
+ */
30
+ setServer(server: string): HCloud;
31
+ /**
32
+ * Returns the currently set server url that the SDK will make requests to.
33
+ */
34
+ getServer(): string;
35
+ /**
36
+ * Authenticate against hcloud with username and password, as an alternative to using a bearer auth token.
37
+ */
38
+ setBasicAuth(username: string, password: string): HCloud;
39
+ /**
40
+ * Sets the auth token used for authentication against hcloud. The provided token must be a bearer token.
41
+ */
42
+ setAuthToken(token: string): HCloud;
43
+ /**
44
+ * Returns the currently set auth token.
45
+ */
46
+ getAuthToken(): string | undefined;
47
+ /**
48
+ * Sets the correlationID which will be sent to hcloud with each request and appears in all
49
+ * logs that are made on behalf of this request, making it easier to debug the application.
50
+ */
51
+ setCorrelationId(correlationId: string): HCloud;
52
+ /**
53
+ * Returns the currently set correlationID.
54
+ */
55
+ getCorrelationId(): string | undefined;
56
+ /**
57
+ * Returns the currently set logger.
58
+ */
59
+ getLogger(): HcloudLogger | undefined;
60
+ /**
61
+ * Sets a logger used to receive logs from hcloud.
62
+ */
63
+ setLogger(logger: HcloudLogger): this;
64
+ /**
65
+ * Send various no-cache headers globally with every request
66
+ */
67
+ disableCachingGlobally(): HCloud;
68
+ /**
69
+ * getAxios returns the active axios instance
70
+ * Use it to add additional request/response interceptors
71
+ * @returns {AxiosInstance} AxiosInstance
72
+ */
73
+ getAxios(): AxiosInstance;
74
+ /**
75
+ * setAxios overwrites the existing axios instance
76
+ * Use it to add a caching layer to axios
77
+ * @returns {AxiosInstance} The new AxiosInstance
78
+ */
79
+ setAxios(axios: AxiosInstance): AxiosInstance;
80
+ }
package/lib/Hcloud.js ADDED
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HCloud = void 0;
4
+ const axios_1 = require("axios");
5
+ const package_json_1 = require("../package.json");
6
+ const ErrorHelper_1 = require("./helper/ErrorHelper");
7
+ const axios_2 = require("./interfaces/axios");
8
+ const agent_1 = require("./service/agent");
9
+ const auditor_1 = require("./service/auditor");
10
+ const bouncer_1 = require("./service/bouncer");
11
+ const dali_1 = require("./service/dali");
12
+ const fuse_1 = require("./service/fuse");
13
+ const high5_1 = require("./service/high5");
14
+ const idp_1 = require("./service/idp");
15
+ const mailer_1 = require("./service/mailer");
16
+ const mothership_1 = require("./service/mothership");
17
+ const nats_1 = require("./service/nats");
18
+ // tslint:disable-next-line
19
+ class HCloud {
20
+ constructor(options) {
21
+ this.options = options;
22
+ this.axios = axios_1.default.create({
23
+ transformRequest: axios_1.default.defaults.transformRequest,
24
+ transformResponse: axios_1.default.defaults.transformResponse,
25
+ });
26
+ // we set a custom header here as chrome does not allow to set the 'user-agent' header
27
+ this.axios.defaults.headers.common["x-hcloud-user-agent"] = "hcloud-sdk-js/v" + package_json_1.version;
28
+ if (typeof window === "undefined") {
29
+ // also set 'user-agent' header in non-browser environments
30
+ this.axios.defaults.headers.common["user-agent"] = "hcloud-sdk-js/v" + package_json_1.version;
31
+ }
32
+ this.axios.interceptors.response.use(response => response, error => {
33
+ var _a;
34
+ (_a = this.options.logger) === null || _a === void 0 ? void 0 : _a.error(String(error), error);
35
+ return Promise.reject((0, ErrorHelper_1.default)(error));
36
+ });
37
+ this.Agent = new agent_1.default(this.options, this.axios);
38
+ this.Auditor = new auditor_1.default(this.options, this.axios);
39
+ this.Bouncer = new bouncer_1.default(this.options, this.axios);
40
+ this.High5 = new high5_1.default(this.options, this.axios);
41
+ this.Idp = new idp_1.default(this.options, this.axios);
42
+ this.Fuse = new fuse_1.default(this.options, this.axios);
43
+ this.Dali = new dali_1.default(this.options, this.axios);
44
+ this.Mailer = new mailer_1.default(this.options, this.axios);
45
+ this.Mothership = new mothership_1.default(this.options, this.axios);
46
+ this.Nats = new nats_1.default(this.options, this.axios);
47
+ }
48
+ /**
49
+ * Sets the server url that the SDK shall do a request to.
50
+ */
51
+ setServer(server) {
52
+ this.options.server = server;
53
+ return this;
54
+ }
55
+ /**
56
+ * Returns the currently set server url that the SDK will make requests to.
57
+ */
58
+ getServer() {
59
+ return this.options.server;
60
+ }
61
+ /**
62
+ * Authenticate against hcloud with username and password, as an alternative to using a bearer auth token.
63
+ */
64
+ setBasicAuth(username, password) {
65
+ this.axios.defaults.headers.common["authorization"] = `Basic ${Buffer.from(username + ":" + password).toString("base64")}`;
66
+ return this;
67
+ }
68
+ /**
69
+ * Sets the auth token used for authentication against hcloud. The provided token must be a bearer token.
70
+ */
71
+ setAuthToken(token) {
72
+ this.axios.defaults.headers.common["authorization"] = token;
73
+ return this;
74
+ }
75
+ /**
76
+ * Returns the currently set auth token.
77
+ */
78
+ getAuthToken() {
79
+ var _a;
80
+ return (_a = this.axios.defaults.headers.common["authorization"]) === null || _a === void 0 ? void 0 : _a.toString();
81
+ }
82
+ /**
83
+ * Sets the correlationID which will be sent to hcloud with each request and appears in all
84
+ * logs that are made on behalf of this request, making it easier to debug the application.
85
+ */
86
+ setCorrelationId(correlationId) {
87
+ this.axios.defaults.headers.common["X-Hcloud-Correlation-ID"] = correlationId;
88
+ return this;
89
+ }
90
+ /**
91
+ * Returns the currently set correlationID.
92
+ */
93
+ getCorrelationId() {
94
+ var _a;
95
+ return (_a = this.axios.defaults.headers.common["X-Hcloud-Correlation-ID"]) === null || _a === void 0 ? void 0 : _a.toString();
96
+ }
97
+ /**
98
+ * Returns the currently set logger.
99
+ */
100
+ getLogger() {
101
+ return this.options.logger;
102
+ }
103
+ /**
104
+ * Sets a logger used to receive logs from hcloud.
105
+ */
106
+ setLogger(logger) {
107
+ this.options.logger = logger;
108
+ return this;
109
+ }
110
+ /**
111
+ * Send various no-cache headers globally with every request
112
+ */
113
+ disableCachingGlobally() {
114
+ this.axios.defaults.headers.common = Object.assign(Object.assign({}, this.axios.defaults.headers.common), axios_2.disableCacheHeaders);
115
+ return this;
116
+ }
117
+ /**
118
+ * getAxios returns the active axios instance
119
+ * Use it to add additional request/response interceptors
120
+ * @returns {AxiosInstance} AxiosInstance
121
+ */
122
+ getAxios() {
123
+ return this.axios;
124
+ }
125
+ /**
126
+ * setAxios overwrites the existing axios instance
127
+ * Use it to add a caching layer to axios
128
+ * @returns {AxiosInstance} The new AxiosInstance
129
+ */
130
+ setAxios(axios) {
131
+ return (this.axios = axios);
132
+ }
133
+ }
134
+ exports.HCloud = HCloud;
@@ -0,0 +1,7 @@
1
+ import HCloudError from "../interfaces/global/HCloudError";
2
+ export default function wrapError<T>(error: T): T | HCloudError;
3
+ /**
4
+ * Checks if error is of type HCloudError. An HCloudError is comming from the SDK and holds
5
+ * the information of a custom error that was initially thrown in a hcloud backend.
6
+ */
7
+ export declare function isHCloudError(obj: unknown): obj is HCloudError;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = wrapError;
4
+ exports.isHCloudError = isHCloudError;
5
+ const axios_1 = require("axios");
6
+ const HCloudError_1 = require("../interfaces/global/HCloudError");
7
+ function wrapError(error) {
8
+ if (axios_1.default.isAxiosError(error) && error.response) {
9
+ return new HCloudError_1.default(error.response.status, error.response.statusText, error.response.data.code, error.response.data.error, error.response.data.message);
10
+ }
11
+ return error;
12
+ }
13
+ /**
14
+ * Checks if error is of type HCloudError. An HCloudError is comming from the SDK and holds
15
+ * the information of a custom error that was initially thrown in a hcloud backend.
16
+ */
17
+ function isHCloudError(obj) {
18
+ return typeof obj === "object" && obj instanceof HCloudError_1.default;
19
+ }
@@ -0,0 +1,3 @@
1
+ import { AxiosResponse } from "axios";
2
+ import { PaginatedResponse } from "../interfaces/global/PaginatedResponse";
3
+ export declare function createPaginatedResponse<T>(response: AxiosResponse<T[]>): PaginatedResponse<T>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createPaginatedResponse = createPaginatedResponse;
4
+ function createPaginatedResponse(response) {
5
+ return {
6
+ items: response.data,
7
+ total: parseInt(String(response.headers["total"]), 10),
8
+ };
9
+ }
@@ -0,0 +1,9 @@
1
+ import { SearchFilter } from "../interfaces/global/SearchFilters";
2
+ declare class SearchFilterDTO {
3
+ private type;
4
+ private key;
5
+ private comparator;
6
+ private value;
7
+ constructor(searchFilter: SearchFilter);
8
+ }
9
+ export { SearchFilterDTO };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SearchFilterDTO = void 0;
4
+ class SearchFilterDTO {
5
+ constructor(searchFilter) {
6
+ this.type = searchFilter.type;
7
+ this.key = searchFilter.key;
8
+ this.comparator = searchFilter.comparator;
9
+ this.value = searchFilter.value;
10
+ }
11
+ }
12
+ exports.SearchFilterDTO = SearchFilterDTO;
@@ -0,0 +1,3 @@
1
+ export interface ToggleDevBundle {
2
+ allowDev: boolean;
3
+ }
@@ -0,0 +1,19 @@
1
+ import { ReducedOrganization } from "../../idp";
2
+ export interface Context {
3
+ uuid: string;
4
+ email: string;
5
+ server: string;
6
+ enabled: boolean;
7
+ connections: (ActiveConnection | InactiveConnection)[];
8
+ busy: boolean;
9
+ }
10
+ export type ActiveConnection = {
11
+ connected: true;
12
+ organization: ReducedOrganization;
13
+ runningStreams: string[];
14
+ };
15
+ export type InactiveConnection = {
16
+ connected: false;
17
+ organization: ReducedOrganization;
18
+ cause: string;
19
+ };
@@ -0,0 +1,21 @@
1
+ export interface Version {
2
+ path: string;
3
+ md5: string;
4
+ "dev-release": boolean;
5
+ date: number;
6
+ }
7
+ export interface InstallerVersion {
8
+ path: string;
9
+ published_date: number;
10
+ version: string;
11
+ os: "darwin" | "windows";
12
+ dev: boolean;
13
+ }
14
+ export interface AgentVersions {
15
+ latest: string;
16
+ versions: Record<string, Version>;
17
+ }
18
+ export interface AgentInstallerVersions {
19
+ latest: string;
20
+ versions: Record<string, InstallerVersion[]>;
21
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +1,4 @@
1
+ import { Organization } from "../idp";
1
2
  export declare enum Level {
2
3
  INFO = "info",
3
4
  WARN = "warn",
@@ -8,17 +9,27 @@ export declare enum Origin {
8
9
  IDP = "idp",
9
10
  High5 = "high5",
10
11
  Auditor = "auditor",
11
- Mailer = "mailer"
12
+ Mailer = "mailer",
13
+ Fuse = "fuse",
14
+ Mothership = "mothership",
15
+ Dali = "dali"
12
16
  }
13
17
  export declare enum Event {
14
18
  Login = "login",
15
19
  Logout = "logout",
16
20
  User = "user",
17
21
  Organization = "organization",
18
- App = "app",
22
+ OrganizationMember = "organizationMember",
23
+ Team = "team",
24
+ Space = "space",
19
25
  Event = "event",
20
26
  Stream = "stream",
21
- Mail = "mail"
27
+ Mail = "mail",
28
+ Webhook = "webhook",
29
+ Cronjob = "cronjob",
30
+ Secret = "secret",
31
+ Agent = "agent",
32
+ Avatar = "avatar"
22
33
  }
23
34
  export declare enum Type {
24
35
  Read = "read",
@@ -35,12 +46,27 @@ export declare enum Type {
35
46
  Receive = "receive"
36
47
  }
37
48
  export interface AuditLog {
49
+ _id: string;
50
+ correlationId: string;
38
51
  level: Level;
39
52
  origin: Origin;
40
- organization?: string;
53
+ organizationId: string;
41
54
  event: Event;
55
+ space?: string;
42
56
  user: string;
43
57
  type?: Type;
44
58
  timestamp: number;
45
- message?: any;
59
+ message?: unknown;
60
+ expireAt: Date;
61
+ requestorIp: string;
62
+ }
63
+ export interface AuditLogCreate {
64
+ level: Level;
65
+ origin: Origin;
66
+ organization: Pick<Organization, "_id" | "name">;
67
+ event: Event;
68
+ space?: string;
69
+ type?: Type;
70
+ message?: unknown;
71
+ requestorIp: string;
46
72
  }
@@ -7,25 +7,35 @@ var Level;
7
7
  Level["WARN"] = "warn";
8
8
  Level["ERROR"] = "error";
9
9
  Level["DEBUG"] = "debug";
10
- })(Level = exports.Level || (exports.Level = {}));
10
+ })(Level || (exports.Level = Level = {}));
11
11
  var Origin;
12
12
  (function (Origin) {
13
13
  Origin["IDP"] = "idp";
14
14
  Origin["High5"] = "high5";
15
15
  Origin["Auditor"] = "auditor";
16
16
  Origin["Mailer"] = "mailer";
17
- })(Origin = exports.Origin || (exports.Origin = {}));
17
+ Origin["Fuse"] = "fuse";
18
+ Origin["Mothership"] = "mothership";
19
+ Origin["Dali"] = "dali";
20
+ })(Origin || (exports.Origin = Origin = {}));
18
21
  var Event;
19
22
  (function (Event) {
20
23
  Event["Login"] = "login";
21
24
  Event["Logout"] = "logout";
22
25
  Event["User"] = "user";
23
26
  Event["Organization"] = "organization";
24
- Event["App"] = "app";
27
+ Event["OrganizationMember"] = "organizationMember";
28
+ Event["Team"] = "team";
29
+ Event["Space"] = "space";
25
30
  Event["Event"] = "event";
26
31
  Event["Stream"] = "stream";
27
32
  Event["Mail"] = "mail";
28
- })(Event = exports.Event || (exports.Event = {}));
33
+ Event["Webhook"] = "webhook";
34
+ Event["Cronjob"] = "cronjob";
35
+ Event["Secret"] = "secret";
36
+ Event["Agent"] = "agent";
37
+ Event["Avatar"] = "avatar";
38
+ })(Event || (exports.Event = Event = {}));
29
39
  var Type;
30
40
  (function (Type) {
31
41
  Type["Read"] = "read";
@@ -40,4 +50,4 @@ var Type;
40
50
  Type["Remove"] = "remove";
41
51
  Type["Send"] = "send";
42
52
  Type["Receive"] = "receive";
43
- })(Type = exports.Type || (exports.Type = {}));
53
+ })(Type || (exports.Type = Type = {}));
@@ -0,0 +1,5 @@
1
+ export declare const disableCacheHeaders: {
2
+ "Cache-Control": string;
3
+ Pragma: string;
4
+ Expires: string;
5
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.disableCacheHeaders = void 0;
4
+ exports.disableCacheHeaders = {
5
+ "Cache-Control": "no-cache",
6
+ Pragma: "no-cache",
7
+ Expires: "0",
8
+ };
@@ -0,0 +1,10 @@
1
+ export interface HcloudFeature {
2
+ feature: {
3
+ name: string;
4
+ enabled: boolean;
5
+ };
6
+ id?: string;
7
+ regions: string[];
8
+ users: string[];
9
+ organizations: string[];
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,6 @@
1
+ export * from "./features";
2
+ export interface BouncerContext {
3
+ email?: string;
4
+ organization?: string;
5
+ region?: string;
6
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./features"), exports);
@@ -0,0 +1,3 @@
1
+ export interface AvatarCreated {
2
+ url: string;
3
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,33 @@
1
+ export declare enum AnnouncementType {
2
+ INFO = "info",
3
+ SUCCESS = "success",
4
+ WARNING = "warning",
5
+ ERROR = "error"
6
+ }
7
+ export interface OIDCProvider {
8
+ identifier: "github" | "microsoft" | "google" | "discord" | "apple";
9
+ icon: string;
10
+ enabled: boolean;
11
+ }
12
+ export interface Announcement {
13
+ type: AnnouncementType;
14
+ message: string;
15
+ showWarning?: boolean;
16
+ }
17
+ export interface Region {
18
+ name: string;
19
+ id: string;
20
+ server: string;
21
+ icon?: string;
22
+ enabled?: boolean;
23
+ dev?: boolean;
24
+ umami?: {
25
+ id: string;
26
+ };
27
+ announcement?: Announcement;
28
+ }
29
+ export interface Config {
30
+ reCAPTCHA: string;
31
+ regions: Region[];
32
+ oidc: OIDCProvider[];
33
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AnnouncementType = void 0;
4
+ var AnnouncementType;
5
+ (function (AnnouncementType) {
6
+ AnnouncementType["INFO"] = "info";
7
+ AnnouncementType["SUCCESS"] = "success";
8
+ AnnouncementType["WARNING"] = "warning";
9
+ AnnouncementType["ERROR"] = "error";
10
+ })(AnnouncementType || (exports.AnnouncementType = AnnouncementType = {}));
@@ -0,0 +1,3 @@
1
+ export * from "./space";
2
+ export * from "./space/cronjob/Cronjob";
3
+ export * from "./space/cronjob/CronjobLog";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./space"), exports);
18
+ __exportStar(require("./space/cronjob/Cronjob"), exports);
19
+ __exportStar(require("./space/cronjob/CronjobLog"), exports);