@leaflow/sdk 0.2.0 → 0.3.0

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 (378) hide show
  1. package/dist/generated/assistant/index.d.ts +53 -30
  2. package/dist/generated/assistant/index.js +87 -57
  3. package/dist/generated/assistant/models/checkSenderParams.d.ts +40 -0
  4. package/dist/generated/assistant/models/checkSenderParams.js +31 -0
  5. package/dist/generated/assistant/models/credentialFieldResource.d.ts +37 -0
  6. package/dist/generated/assistant/models/credentialFieldResource.js +31 -0
  7. package/dist/generated/assistant/models/earlierResponseBody.d.ts +36 -0
  8. package/dist/generated/assistant/models/earlierResponseBody.js +1 -0
  9. package/dist/generated/assistant/models/earlierResponseBodyItems.d.ts +32 -0
  10. package/dist/generated/assistant/models/earlierResponseBodyItems.js +1 -0
  11. package/dist/generated/assistant/models/index.d.ts +19 -5
  12. package/dist/generated/assistant/models/index.js +19 -5
  13. package/dist/generated/assistant/models/lengthAwarePageBindingResource.d.ts +41 -0
  14. package/dist/generated/assistant/models/lengthAwarePageBindingResource.js +1 -0
  15. package/dist/generated/assistant/models/lengthAwarePageChannelResource.d.ts +41 -0
  16. package/dist/generated/assistant/models/lengthAwarePageChannelResource.js +1 -0
  17. package/dist/generated/assistant/models/listBindingsParams.d.ts +10 -2
  18. package/dist/generated/assistant/models/listChannelsParams.d.ts +5 -2
  19. package/dist/generated/assistant/models/listEarlierItemsParams.d.ts +37 -0
  20. package/dist/generated/assistant/models/listEarlierItemsParams.js +31 -0
  21. package/dist/generated/assistant/models/listThreadsParams.d.ts +6 -1
  22. package/dist/generated/assistant/models/platformResource.d.ts +8 -0
  23. package/dist/generated/assistant/models/platformResourceCredentialFields.d.ts +32 -0
  24. package/dist/generated/assistant/models/platformResourceCredentialFields.js +1 -0
  25. package/dist/generated/assistant/models/platformResourceSecretSource.d.ts +36 -0
  26. package/dist/generated/assistant/models/platformResourceSecretSource.js +36 -0
  27. package/dist/generated/assistant/models/platformResourceSetupChallenge.d.ts +36 -0
  28. package/dist/generated/assistant/models/platformResourceSetupChallenge.js +36 -0
  29. package/dist/generated/assistant/models/platformResourceSetupMethod.d.ts +35 -0
  30. package/dist/generated/assistant/models/platformResourceSetupMethod.js +35 -0
  31. package/dist/generated/assistant/models/rejectionListResponseBodyRejections.d.ts +2 -2
  32. package/dist/generated/assistant/models/rejectionResource.d.ts +39 -0
  33. package/dist/generated/assistant/models/rejectionResource.js +31 -0
  34. package/dist/generated/assistant/models/rotateSecretRequestBody.d.ts +34 -0
  35. package/dist/generated/assistant/models/rotateSecretRequestBody.js +31 -0
  36. package/dist/generated/assistant/models/senderCheckResource.d.ts +40 -0
  37. package/dist/generated/assistant/models/senderCheckResource.js +1 -0
  38. package/dist/generated/assistant/models/senderCheckResourceAllowFrom.d.ts +31 -0
  39. package/dist/generated/assistant/models/senderCheckResourceAllowFrom.js +31 -0
  40. package/dist/generated/assistant/models/senderCheckResourceBindingId.d.ts +31 -0
  41. package/dist/generated/assistant/models/senderCheckResourceBindingId.js +31 -0
  42. package/dist/generated/assistant/models/senderCheckResourceVerdict.d.ts +37 -0
  43. package/dist/generated/assistant/models/senderCheckResourceVerdict.js +37 -0
  44. package/dist/generated/assistant/models/updateChannelRequestBody.d.ts +7 -0
  45. package/dist/generated/assistant/models/updateChannelRequestBodyAllowFrom.d.ts +34 -0
  46. package/dist/generated/assistant/models/updateChannelRequestBodyAllowFrom.js +31 -0
  47. package/dist/generated/assistant/models/updateChannelRequestBodyCredentials.d.ts +3 -0
  48. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.d.ts +38 -0
  49. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.js +35 -0
  50. package/dist/generated/compute/index.d.ts +234 -101
  51. package/dist/generated/compute/index.js +345 -164
  52. package/dist/generated/compute/models/actOnInstanceRequestBody.d.ts +7 -7
  53. package/dist/generated/compute/models/actOnInstanceRequestBodyAction.d.ts +5 -7
  54. package/dist/generated/compute/models/actOnInstanceRequestBodyAction.js +5 -7
  55. package/dist/generated/compute/models/allocateFloatingIPRequestBody.d.ts +5 -7
  56. package/dist/generated/compute/models/allocateFloatingIPRequestBody.js +5 -7
  57. package/dist/generated/compute/models/attachDiskRequestBody.d.ts +5 -7
  58. package/dist/generated/compute/models/attachDiskRequestBody.js +5 -7
  59. package/dist/generated/compute/models/attachFloatingIPRequestBody.d.ts +5 -7
  60. package/dist/generated/compute/models/attachFloatingIPRequestBody.js +5 -7
  61. package/dist/generated/compute/models/attachPortRequestBody.d.ts +5 -7
  62. package/dist/generated/compute/models/attachPortRequestBody.js +5 -7
  63. package/dist/generated/compute/models/backupListResponseBody.d.ts +27 -0
  64. package/dist/generated/compute/models/backupListResponseBody.js +1 -0
  65. package/dist/generated/compute/models/backupListResponseBodyItems.d.ts +25 -0
  66. package/dist/generated/compute/models/backupListResponseBodyItems.js +1 -0
  67. package/dist/generated/compute/models/backupResource.d.ts +37 -0
  68. package/dist/generated/compute/models/backupResource.js +1 -0
  69. package/dist/generated/compute/models/backupResourceStatus.d.ts +31 -0
  70. package/dist/generated/compute/models/backupResourceStatus.js +31 -0
  71. package/dist/generated/compute/models/bindFloatingIPRequestBody.d.ts +5 -7
  72. package/dist/generated/compute/models/bindFloatingIPRequestBody.js +5 -7
  73. package/dist/generated/compute/models/consoleOutputResponseBody.d.ts +27 -0
  74. package/dist/generated/compute/models/consoleOutputResponseBody.js +24 -0
  75. package/dist/generated/compute/models/consoleResponseBody.d.ts +7 -9
  76. package/dist/generated/compute/models/consoleResponseBody.js +5 -7
  77. package/dist/generated/compute/models/createBackupRequestBody.d.ts +28 -0
  78. package/dist/generated/compute/models/createBackupRequestBody.js +24 -0
  79. package/dist/generated/compute/models/createDiskRequestBody.d.ts +6 -8
  80. package/dist/generated/compute/models/createDiskRequestBody.js +5 -7
  81. package/dist/generated/compute/models/createPortRequestBody.d.ts +5 -7
  82. package/dist/generated/compute/models/createPortRequestBodySecurityGroupIds.d.ts +5 -7
  83. package/dist/generated/compute/models/createPortRequestBodySecurityGroupIds.js +5 -7
  84. package/dist/generated/compute/models/createPrivateImageRequestBody.d.ts +29 -0
  85. package/dist/generated/compute/models/createPrivateImageRequestBody.js +24 -0
  86. package/dist/generated/compute/models/createPrivateNetworkRequestBody.d.ts +5 -7
  87. package/dist/generated/compute/models/createPrivateNetworkRequestBody.js +5 -7
  88. package/dist/generated/compute/models/createRouteRequestBody.d.ts +5 -7
  89. package/dist/generated/compute/models/createRouteRequestBody.js +5 -7
  90. package/dist/generated/compute/models/createSecurityGroupRequestBody.d.ts +5 -7
  91. package/dist/generated/compute/models/createSecurityGroupRequestBody.js +5 -7
  92. package/dist/generated/compute/models/createSecurityRuleRequestBody.d.ts +7 -9
  93. package/dist/generated/compute/models/createSecurityRuleRequestBodyDirection.d.ts +5 -7
  94. package/dist/generated/compute/models/createSecurityRuleRequestBodyDirection.js +5 -7
  95. package/dist/generated/compute/models/createSecurityRuleRequestBodyEthertype.d.ts +5 -7
  96. package/dist/generated/compute/models/createSecurityRuleRequestBodyEthertype.js +5 -7
  97. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMax.d.ts +6 -8
  98. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMax.js +5 -7
  99. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMin.d.ts +6 -8
  100. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMin.js +5 -7
  101. package/dist/generated/compute/models/createSnapshotRequestBody.d.ts +5 -7
  102. package/dist/generated/compute/models/createSnapshotRequestBody.js +5 -7
  103. package/dist/generated/compute/models/createSubnetRequestBody.d.ts +5 -7
  104. package/dist/generated/compute/models/createSubnetRequestBody.js +5 -7
  105. package/dist/generated/compute/models/diskListResponseBody.d.ts +5 -7
  106. package/dist/generated/compute/models/diskListResponseBodyItems.d.ts +5 -7
  107. package/dist/generated/compute/models/diskResource.d.ts +9 -9
  108. package/dist/generated/compute/models/diskResourceAttachedInstanceId.d.ts +5 -7
  109. package/dist/generated/compute/models/diskResourceAttachedInstanceId.js +5 -7
  110. package/dist/generated/compute/models/diskResourceDevice.d.ts +5 -7
  111. package/dist/generated/compute/models/diskResourceDevice.js +5 -7
  112. package/dist/generated/compute/models/diskResourceStatus.d.ts +8 -7
  113. package/dist/generated/compute/models/diskResourceStatus.js +8 -7
  114. package/dist/generated/compute/models/diskTypeListResponseBody.d.ts +5 -7
  115. package/dist/generated/compute/models/diskTypeListResponseBodyItems.d.ts +5 -7
  116. package/dist/generated/compute/models/diskTypeResource.d.ts +6 -8
  117. package/dist/generated/compute/models/diskTypeResourceMedia.d.ts +5 -7
  118. package/dist/generated/compute/models/diskTypeResourceMedia.js +5 -7
  119. package/dist/generated/compute/models/error.d.ts +5 -7
  120. package/dist/generated/compute/models/errorMeta.d.ts +5 -7
  121. package/dist/generated/compute/models/errorMeta.js +5 -7
  122. package/dist/generated/compute/models/floatingIPListResponseBody.d.ts +5 -7
  123. package/dist/generated/compute/models/floatingIPListResponseBodyItems.d.ts +5 -7
  124. package/dist/generated/compute/models/floatingIPResource.d.ts +6 -7
  125. package/dist/generated/compute/models/floatingIPResourceAttachedFixedIp.d.ts +5 -7
  126. package/dist/generated/compute/models/floatingIPResourceAttachedFixedIp.js +5 -7
  127. package/dist/generated/compute/models/floatingIPResourceAttachedPortId.d.ts +5 -7
  128. package/dist/generated/compute/models/floatingIPResourceAttachedPortId.js +5 -7
  129. package/dist/generated/compute/models/floatingIPResourceBandwidthMbps.d.ts +5 -7
  130. package/dist/generated/compute/models/floatingIPResourceBandwidthMbps.js +5 -7
  131. package/dist/generated/compute/models/floatingIPResourceDetachedAt.d.ts +5 -7
  132. package/dist/generated/compute/models/floatingIPResourceDetachedAt.js +5 -7
  133. package/dist/generated/compute/models/floatingIPResourceStatus.d.ts +10 -11
  134. package/dist/generated/compute/models/floatingIPResourceStatus.js +7 -11
  135. package/dist/generated/compute/models/getInstanceConsoleOutputParams.d.ts +31 -0
  136. package/dist/generated/compute/models/getInstanceConsoleOutputParams.js +24 -0
  137. package/dist/generated/compute/models/iPv6ResponseBody.d.ts +5 -7
  138. package/dist/generated/compute/models/iPv6ResponseBodyStatus.d.ts +5 -7
  139. package/dist/generated/compute/models/iPv6ResponseBodyStatus.js +5 -7
  140. package/dist/generated/compute/models/imageListResponseBody.d.ts +5 -7
  141. package/dist/generated/compute/models/imageListResponseBodyItems.d.ts +5 -7
  142. package/dist/generated/compute/models/imageResource.d.ts +8 -8
  143. package/dist/generated/compute/models/imageResource.js +5 -7
  144. package/dist/generated/compute/models/index.d.ts +48 -9
  145. package/dist/generated/compute/models/index.js +48 -9
  146. package/dist/generated/compute/models/instanceListResponseBody.d.ts +5 -7
  147. package/dist/generated/compute/models/instanceListResponseBodyItems.d.ts +5 -7
  148. package/dist/generated/compute/models/instanceResource.d.ts +31 -9
  149. package/dist/generated/compute/models/instanceResourceImageId.d.ts +27 -0
  150. package/dist/generated/compute/models/instanceResourceImageId.js +24 -0
  151. package/dist/generated/compute/models/instanceResourceIpv6Address.d.ts +27 -0
  152. package/dist/generated/compute/models/instanceResourceIpv6Address.js +24 -0
  153. package/dist/generated/compute/models/instanceResourcePendingInstanceTypeId.d.ts +27 -0
  154. package/dist/generated/compute/models/instanceResourcePendingInstanceTypeId.js +24 -0
  155. package/dist/generated/compute/models/instanceResourcePrivateImageId.d.ts +27 -0
  156. package/dist/generated/compute/models/instanceResourcePrivateImageId.js +24 -0
  157. package/dist/generated/compute/models/instanceResourcePrivateIp.d.ts +27 -0
  158. package/dist/generated/compute/models/instanceResourcePrivateIp.js +24 -0
  159. package/dist/generated/compute/models/instanceResourcePrivateNetworkId.d.ts +27 -0
  160. package/dist/generated/compute/models/instanceResourcePrivateNetworkId.js +24 -0
  161. package/dist/generated/compute/models/instanceResourcePublicIps.d.ts +27 -0
  162. package/dist/generated/compute/models/instanceResourcePublicIps.js +24 -0
  163. package/dist/generated/compute/models/instanceResourceStatus.d.ts +6 -7
  164. package/dist/generated/compute/models/instanceResourceStatus.js +6 -7
  165. package/dist/generated/compute/models/instanceResourceSubnetId.d.ts +27 -0
  166. package/dist/generated/compute/models/instanceResourceSubnetId.js +24 -0
  167. package/dist/generated/compute/models/instanceResourceSuspendedAt.d.ts +5 -7
  168. package/dist/generated/compute/models/instanceResourceSuspendedAt.js +5 -7
  169. package/dist/generated/compute/models/instanceTypeListResponseBody.d.ts +5 -7
  170. package/dist/generated/compute/models/instanceTypeListResponseBodyItems.d.ts +5 -7
  171. package/dist/generated/compute/models/instanceTypeResource.d.ts +6 -8
  172. package/dist/generated/compute/models/instanceTypeResource.js +5 -7
  173. package/dist/generated/compute/models/launchInstanceRequestBody.d.ts +25 -10
  174. package/dist/generated/compute/models/launchInstanceRequestBodySecurityGroupIds.d.ts +5 -7
  175. package/dist/generated/compute/models/launchInstanceRequestBodySecurityGroupIds.js +5 -7
  176. package/dist/generated/compute/models/launchInstanceResponseBody.d.ts +12 -10
  177. package/dist/generated/compute/models/launchInstanceResponseBodyFailure.d.ts +27 -0
  178. package/dist/generated/compute/models/launchInstanceResponseBodyFailure.js +24 -0
  179. package/dist/generated/compute/models/launchInstanceResponseBodyInstances.d.ts +28 -0
  180. package/dist/generated/compute/models/launchInstanceResponseBodyInstances.js +1 -0
  181. package/dist/generated/compute/models/listBackupsParams.d.ts +29 -0
  182. package/dist/generated/compute/models/listBackupsParams.js +24 -0
  183. package/dist/generated/compute/models/listDiskTypesParams.d.ts +5 -7
  184. package/dist/generated/compute/models/listDiskTypesParams.js +5 -7
  185. package/dist/generated/compute/models/listDisksParams.d.ts +5 -7
  186. package/dist/generated/compute/models/listDisksParams.js +5 -7
  187. package/dist/generated/compute/models/listImagesParams.d.ts +5 -7
  188. package/dist/generated/compute/models/listImagesParams.js +5 -7
  189. package/dist/generated/compute/models/listInstanceTypesParams.d.ts +5 -7
  190. package/dist/generated/compute/models/listInstanceTypesParams.js +5 -7
  191. package/dist/generated/compute/models/listOperationLogsParams.d.ts +39 -0
  192. package/dist/generated/compute/models/listOperationLogsParams.js +24 -0
  193. package/dist/generated/compute/models/listPrivateImagesParams.d.ts +30 -0
  194. package/dist/generated/compute/models/listPrivateImagesParams.js +24 -0
  195. package/dist/generated/compute/models/listPrivateNetworksParams.d.ts +5 -7
  196. package/dist/generated/compute/models/listPrivateNetworksParams.js +5 -7
  197. package/dist/generated/compute/models/listSecurityGroupsParams.d.ts +5 -7
  198. package/dist/generated/compute/models/listSecurityGroupsParams.js +5 -7
  199. package/dist/generated/compute/models/listSnapshotsParams.d.ts +29 -0
  200. package/dist/generated/compute/models/listSnapshotsParams.js +24 -0
  201. package/dist/generated/compute/models/nextFreeCidrResponseBody.d.ts +5 -7
  202. package/dist/generated/compute/models/nextFreeCidrResponseBody.js +5 -7
  203. package/dist/generated/compute/models/operationLogListResponseBody.d.ts +28 -0
  204. package/dist/generated/compute/models/operationLogListResponseBody.js +1 -0
  205. package/dist/generated/compute/models/operationLogListResponseBodyItems.d.ts +25 -0
  206. package/dist/generated/compute/models/operationLogListResponseBodyItems.js +1 -0
  207. package/dist/generated/compute/models/operationLogResource.d.ts +46 -0
  208. package/dist/generated/compute/models/operationLogResource.js +1 -0
  209. package/dist/generated/compute/models/operationLogResourceActor.d.ts +27 -0
  210. package/dist/generated/compute/models/operationLogResourceActor.js +24 -0
  211. package/dist/generated/compute/models/operationLogResourceFailure.d.ts +27 -0
  212. package/dist/generated/compute/models/operationLogResourceFailure.js +24 -0
  213. package/dist/generated/compute/models/operationLogResourcePayload.d.ts +29 -0
  214. package/dist/generated/compute/models/operationLogResourcePayload.js +24 -0
  215. package/dist/generated/compute/models/operationLogResourceRegionCode.d.ts +24 -0
  216. package/dist/generated/compute/models/operationLogResourceRegionCode.js +24 -0
  217. package/dist/generated/compute/models/portListResponseBody.d.ts +5 -7
  218. package/dist/generated/compute/models/portListResponseBodyItems.d.ts +5 -7
  219. package/dist/generated/compute/models/portResource.d.ts +5 -7
  220. package/dist/generated/compute/models/portResourceAttachedInstanceId.d.ts +5 -7
  221. package/dist/generated/compute/models/portResourceAttachedInstanceId.js +5 -7
  222. package/dist/generated/compute/models/portResourceIpv6Address.d.ts +5 -7
  223. package/dist/generated/compute/models/portResourceIpv6Address.js +5 -7
  224. package/dist/generated/compute/models/portResourceMac.d.ts +5 -7
  225. package/dist/generated/compute/models/portResourceMac.js +5 -7
  226. package/dist/generated/compute/models/portResourcePrivateIp.d.ts +5 -7
  227. package/dist/generated/compute/models/portResourcePrivateIp.js +5 -7
  228. package/dist/generated/compute/models/privateImageListResponseBody.d.ts +27 -0
  229. package/dist/generated/compute/models/privateImageListResponseBody.js +1 -0
  230. package/dist/generated/compute/models/privateImageListResponseBodyItems.d.ts +25 -0
  231. package/dist/generated/compute/models/privateImageListResponseBodyItems.js +1 -0
  232. package/dist/generated/compute/models/privateImageResource.d.ts +49 -0
  233. package/dist/generated/compute/models/privateImageResource.js +1 -0
  234. package/dist/generated/compute/models/privateImageResourceFailure.d.ts +27 -0
  235. package/dist/generated/compute/models/privateImageResourceFailure.js +24 -0
  236. package/dist/generated/compute/models/privateImageResourceSourceInstanceId.d.ts +27 -0
  237. package/dist/generated/compute/models/privateImageResourceSourceInstanceId.js +24 -0
  238. package/dist/generated/compute/models/privateImageResourceStatus.d.ts +31 -0
  239. package/dist/generated/compute/models/privateImageResourceStatus.js +31 -0
  240. package/dist/generated/compute/models/privateNetworkListResponseBody.d.ts +5 -7
  241. package/dist/generated/compute/models/privateNetworkListResponseBodyItems.d.ts +5 -7
  242. package/dist/generated/compute/models/privateNetworkResource.d.ts +5 -7
  243. package/dist/generated/compute/models/privateNetworkResourceGatewayV4.d.ts +5 -7
  244. package/dist/generated/compute/models/privateNetworkResourceGatewayV4.js +5 -7
  245. package/dist/generated/compute/models/privateNetworkResourceGatewayV6.d.ts +5 -7
  246. package/dist/generated/compute/models/privateNetworkResourceGatewayV6.js +5 -7
  247. package/dist/generated/compute/models/privateNetworkResourceStatus.d.ts +5 -7
  248. package/dist/generated/compute/models/privateNetworkResourceStatus.js +5 -7
  249. package/dist/generated/compute/models/rebuildInstanceRequestBody.d.ts +12 -9
  250. package/dist/generated/compute/models/rebuildInstanceRequestBody.js +5 -7
  251. package/dist/generated/compute/models/rebuildInstanceResponseBody.d.ts +6 -8
  252. package/dist/generated/compute/models/regionListResponseBody.d.ts +5 -7
  253. package/dist/generated/compute/models/regionListResponseBodyItems.d.ts +5 -7
  254. package/dist/generated/compute/models/regionResource.d.ts +5 -7
  255. package/dist/generated/compute/models/regionResource.js +5 -7
  256. package/dist/generated/compute/models/renameBackupRequestBody.d.ts +27 -0
  257. package/dist/generated/compute/models/renameBackupRequestBody.js +24 -0
  258. package/dist/generated/compute/models/renameDiskRequestBody.d.ts +5 -7
  259. package/dist/generated/compute/models/renameDiskRequestBody.js +5 -7
  260. package/dist/generated/compute/models/renameInstanceRequestBody.d.ts +5 -7
  261. package/dist/generated/compute/models/renameInstanceRequestBody.js +5 -7
  262. package/dist/generated/compute/models/renamePrivateImageRequestBody.d.ts +27 -0
  263. package/dist/generated/compute/models/renamePrivateImageRequestBody.js +24 -0
  264. package/dist/generated/compute/models/renamePrivateNetworkRequestBody.d.ts +27 -0
  265. package/dist/generated/compute/models/renamePrivateNetworkRequestBody.js +24 -0
  266. package/dist/generated/compute/models/renameSnapshotRequestBody.d.ts +27 -0
  267. package/dist/generated/compute/models/renameSnapshotRequestBody.js +24 -0
  268. package/dist/generated/compute/models/resetPasswordRequestBody.d.ts +32 -0
  269. package/dist/generated/compute/models/resetPasswordRequestBody.js +24 -0
  270. package/dist/generated/compute/models/resetPasswordResponseBody.d.ts +27 -0
  271. package/dist/generated/compute/models/resetPasswordResponseBody.js +24 -0
  272. package/dist/generated/compute/models/resizeDiskRequestBody.d.ts +5 -7
  273. package/dist/generated/compute/models/resizeDiskRequestBody.js +5 -7
  274. package/dist/generated/compute/models/resizeInstanceRequestBody.d.ts +6 -8
  275. package/dist/generated/compute/models/resizeInstanceRequestBody.js +5 -7
  276. package/dist/generated/compute/models/restoreBackupRequestBody.d.ts +37 -0
  277. package/dist/generated/compute/models/restoreBackupRequestBody.js +24 -0
  278. package/dist/generated/compute/models/revertDiskRequestBody.d.ts +27 -0
  279. package/dist/generated/compute/models/revertDiskRequestBody.js +24 -0
  280. package/dist/generated/compute/models/routeListResponseBody.d.ts +5 -7
  281. package/dist/generated/compute/models/routeListResponseBodyItems.d.ts +5 -7
  282. package/dist/generated/compute/models/routeResource.d.ts +5 -7
  283. package/dist/generated/compute/models/routeResource.js +5 -7
  284. package/dist/generated/compute/models/securityGroupListResponseBody.d.ts +5 -7
  285. package/dist/generated/compute/models/securityGroupListResponseBodyItems.d.ts +5 -7
  286. package/dist/generated/compute/models/securityGroupResource.d.ts +5 -7
  287. package/dist/generated/compute/models/securityGroupResource.js +5 -7
  288. package/dist/generated/compute/models/securityRuleListResponseBody.d.ts +5 -7
  289. package/dist/generated/compute/models/securityRuleListResponseBodyItems.d.ts +5 -7
  290. package/dist/generated/compute/models/securityRuleResource.d.ts +5 -7
  291. package/dist/generated/compute/models/securityRuleResourceDirection.d.ts +5 -7
  292. package/dist/generated/compute/models/securityRuleResourceDirection.js +5 -7
  293. package/dist/generated/compute/models/securityRuleResourceEthertype.d.ts +5 -7
  294. package/dist/generated/compute/models/securityRuleResourceEthertype.js +5 -7
  295. package/dist/generated/compute/models/securityRuleResourcePortRangeMax.d.ts +5 -7
  296. package/dist/generated/compute/models/securityRuleResourcePortRangeMax.js +5 -7
  297. package/dist/generated/compute/models/securityRuleResourcePortRangeMin.d.ts +5 -7
  298. package/dist/generated/compute/models/securityRuleResourcePortRangeMin.js +5 -7
  299. package/dist/generated/compute/models/securityRuleResourceProtocol.d.ts +5 -7
  300. package/dist/generated/compute/models/securityRuleResourceProtocol.js +5 -7
  301. package/dist/generated/compute/models/securityRuleResourceRemoteIpPrefix.d.ts +5 -7
  302. package/dist/generated/compute/models/securityRuleResourceRemoteIpPrefix.js +5 -7
  303. package/dist/generated/compute/models/setBandwidthRequestBody.d.ts +6 -8
  304. package/dist/generated/compute/models/setBandwidthRequestBody.js +5 -7
  305. package/dist/generated/compute/models/snapshotListResponseBody.d.ts +5 -7
  306. package/dist/generated/compute/models/snapshotListResponseBodyItems.d.ts +5 -7
  307. package/dist/generated/compute/models/snapshotResource.d.ts +7 -7
  308. package/dist/generated/compute/models/snapshotResourceStatus.d.ts +6 -7
  309. package/dist/generated/compute/models/snapshotResourceStatus.js +6 -7
  310. package/dist/generated/compute/models/subnetListResponseBody.d.ts +5 -7
  311. package/dist/generated/compute/models/subnetListResponseBodyItems.d.ts +5 -7
  312. package/dist/generated/compute/models/subnetResource.d.ts +5 -7
  313. package/dist/generated/compute/models/subnetResourceGatewayIp.d.ts +5 -7
  314. package/dist/generated/compute/models/subnetResourceGatewayIp.js +5 -7
  315. package/dist/generated/compute/models/subnetResourceIpVersion.d.ts +5 -7
  316. package/dist/generated/compute/models/subnetResourceIpVersion.js +5 -7
  317. package/dist/generated/compute/models/suggestSubnetCidrParams.d.ts +5 -7
  318. package/dist/generated/compute/models/suggestSubnetCidrParams.js +5 -7
  319. package/dist/generated/compute/models/zoneListResponseBody.d.ts +5 -7
  320. package/dist/generated/compute/models/zoneListResponseBodyItems.d.ts +5 -7
  321. package/dist/generated/compute/models/zoneResource.d.ts +5 -7
  322. package/dist/generated/compute/models/zoneResource.js +5 -7
  323. package/dist/generated/iam/index.d.ts +53 -73
  324. package/dist/generated/iam/index.js +81 -119
  325. package/dist/generated/iam/models/createSSHKeyRequestBody.d.ts +39 -0
  326. package/dist/generated/iam/models/createSSHKeyRequestBody.js +1 -0
  327. package/dist/generated/iam/models/createSSHKeyRequestBodyOwner.d.ts +29 -0
  328. package/dist/generated/iam/models/createSSHKeyRequestBodyOwner.js +26 -0
  329. package/dist/generated/iam/models/createSSHKeyRequestBodyPurposes.d.ts +26 -0
  330. package/dist/generated/iam/models/createSSHKeyRequestBodyPurposes.js +22 -0
  331. package/dist/generated/iam/models/index.d.ts +11 -16
  332. package/dist/generated/iam/models/index.js +11 -16
  333. package/dist/generated/iam/models/lengthAwarePageInvitationResource.d.ts +32 -0
  334. package/dist/generated/iam/models/lengthAwarePageInvitationResource.js +1 -0
  335. package/dist/generated/iam/models/lengthAwarePageMemberResource.d.ts +32 -0
  336. package/dist/generated/iam/models/lengthAwarePageMemberResource.js +1 -0
  337. package/dist/generated/iam/models/lengthAwarePageProjectAccessResource.d.ts +32 -0
  338. package/dist/generated/iam/models/lengthAwarePageProjectAccessResource.js +1 -0
  339. package/dist/generated/iam/models/lengthAwarePageSSHKeyResource.d.ts +32 -0
  340. package/dist/generated/iam/models/lengthAwarePageSSHKeyResource.js +1 -0
  341. package/dist/generated/iam/models/listMembersParams.d.ts +5 -4
  342. package/dist/generated/iam/models/listMyInvitationsParams.d.ts +5 -4
  343. package/dist/generated/iam/models/listProjectInvitationsParams.d.ts +5 -4
  344. package/dist/generated/iam/models/listProjectsParams.d.ts +5 -4
  345. package/dist/generated/iam/models/listSshKeysParams.d.ts +45 -0
  346. package/dist/generated/iam/models/listSshKeysParams.js +1 -0
  347. package/dist/generated/iam/models/listSshKeysStatus.d.ts +26 -0
  348. package/dist/generated/iam/models/listSshKeysStatus.js +26 -0
  349. package/dist/generated/iam/models/renameSSHKeyRequestBody.d.ts +25 -0
  350. package/dist/generated/iam/models/renameSSHKeyRequestBody.js +22 -0
  351. package/dist/generated/iam/models/sSHKeyResource.d.ts +7 -0
  352. package/dist/generated/iam/models/sSHKeyResourcePurposes.d.ts +25 -0
  353. package/dist/generated/iam/models/sSHKeyResourcePurposes.js +22 -0
  354. package/dist/generated/monitoring/index.d.ts +38 -35
  355. package/dist/generated/monitoring/index.js +68 -68
  356. package/dist/generated/monitoring/models/cursorPageIncidentActivityResource.d.ts +31 -0
  357. package/dist/generated/monitoring/models/cursorPageIncidentActivityResource.js +1 -0
  358. package/dist/generated/monitoring/models/index.d.ts +3 -6
  359. package/dist/generated/monitoring/models/index.js +3 -6
  360. package/dist/generated/monitoring/models/lengthAwarePageIncidentResource.d.ts +35 -0
  361. package/dist/generated/monitoring/models/lengthAwarePageIncidentResource.js +1 -0
  362. package/dist/generated/monitoring/models/lengthAwarePageServerResource.d.ts +35 -0
  363. package/dist/generated/monitoring/models/lengthAwarePageServerResource.js +1 -0
  364. package/dist/generated/monitoring/models/listIncidentsParams.d.ts +5 -4
  365. package/dist/generated/monitoring/models/listServersParams.d.ts +5 -4
  366. package/dist/http.d.ts +76 -23
  367. package/dist/http.js +105 -24
  368. package/dist/index.d.ts +2 -2
  369. package/dist/index.js +5 -5
  370. package/openapi/assistant.version +1 -1
  371. package/openapi/assistant.yaml +351 -259
  372. package/openapi/compute.version +1 -1
  373. package/openapi/compute.yaml +1198 -761
  374. package/openapi/iam.version +1 -1
  375. package/openapi/iam.yaml +199 -318
  376. package/openapi/monitoring.version +1 -1
  377. package/openapi/monitoring.yaml +92 -305
  378. package/package.json +1 -1
@@ -28,6 +28,7 @@ export * from './assignIncidentRequestBody.js';
28
28
  export * from './closeIncidentRequestBody.js';
29
29
  export * from './closeIncidentRequestBodyReason.js';
30
30
  export * from './countResource.js';
31
+ export * from './cursorPageIncidentActivityResource.js';
31
32
  export * from './enableMonitoringRequestBody.js';
32
33
  export * from './enableMonitoringRequestBodyAddressKind.js';
33
34
  export * from './enableMonitoringRequestBodyAgentMode.js';
@@ -38,14 +39,10 @@ export * from './errorMeta.js';
38
39
  export * from './getServerMetricParams.js';
39
40
  export * from './getSliReportParams.js';
40
41
  export * from './hostInterfaceResource.js';
41
- export * from './incidentActivityListResponseBody.js';
42
- export * from './incidentActivityListResponseBodyItems.js';
43
42
  export * from './incidentActivityResource.js';
44
43
  export * from './incidentActivityResourceActivityType.js';
45
44
  export * from './incidentActivityResourceSource.js';
46
45
  export * from './incidentFollowerResource.js';
47
- export * from './incidentListResponseBody.js';
48
- export * from './incidentListResponseBodyItems.js';
49
46
  export * from './incidentResource.js';
50
47
  export * from './incidentResourceAcknowledgedAt.js';
51
48
  export * from './incidentResourceAssignedAt.js';
@@ -63,6 +60,8 @@ export * from './itemResourceLastCollectedAt.js';
63
60
  export * from './itemResourceTags.js';
64
61
  export * from './itemResourceValueType.js';
65
62
  export * from './itemThresholdResource.js';
63
+ export * from './lengthAwarePageIncidentResource.js';
64
+ export * from './lengthAwarePageServerResource.js';
66
65
  export * from './listIncidentTimelineParams.js';
67
66
  export * from './listIncidentsAcknowledged.js';
68
67
  export * from './listIncidentsClosed.js';
@@ -116,8 +115,6 @@ export * from './sLOResourceSyncStatus.js';
116
115
  export * from './scheduleWindowRequest.js';
117
116
  export * from './scheduleWindowResource.js';
118
117
  export * from './serverEnrollmentResponseBody.js';
119
- export * from './serverListResponseBody.js';
120
- export * from './serverListResponseBodyItems.js';
121
118
  export * from './serverResource.js';
122
119
  export * from './serverResourceAddressKind.js';
123
120
  export * from './serverResourceAgentMode.js';
@@ -28,6 +28,7 @@ export * from './assignIncidentRequestBody.js';
28
28
  export * from './closeIncidentRequestBody.js';
29
29
  export * from './closeIncidentRequestBodyReason.js';
30
30
  export * from './countResource.js';
31
+ export * from './cursorPageIncidentActivityResource.js';
31
32
  export * from './enableMonitoringRequestBody.js';
32
33
  export * from './enableMonitoringRequestBodyAddressKind.js';
33
34
  export * from './enableMonitoringRequestBodyAgentMode.js';
@@ -38,14 +39,10 @@ export * from './errorMeta.js';
38
39
  export * from './getServerMetricParams.js';
39
40
  export * from './getSliReportParams.js';
40
41
  export * from './hostInterfaceResource.js';
41
- export * from './incidentActivityListResponseBody.js';
42
- export * from './incidentActivityListResponseBodyItems.js';
43
42
  export * from './incidentActivityResource.js';
44
43
  export * from './incidentActivityResourceActivityType.js';
45
44
  export * from './incidentActivityResourceSource.js';
46
45
  export * from './incidentFollowerResource.js';
47
- export * from './incidentListResponseBody.js';
48
- export * from './incidentListResponseBodyItems.js';
49
46
  export * from './incidentResource.js';
50
47
  export * from './incidentResourceAcknowledgedAt.js';
51
48
  export * from './incidentResourceAssignedAt.js';
@@ -63,6 +60,8 @@ export * from './itemResourceLastCollectedAt.js';
63
60
  export * from './itemResourceTags.js';
64
61
  export * from './itemResourceValueType.js';
65
62
  export * from './itemThresholdResource.js';
63
+ export * from './lengthAwarePageIncidentResource.js';
64
+ export * from './lengthAwarePageServerResource.js';
66
65
  export * from './listIncidentTimelineParams.js';
67
66
  export * from './listIncidentsAcknowledged.js';
68
67
  export * from './listIncidentsClosed.js';
@@ -116,8 +115,6 @@ export * from './sLOResourceSyncStatus.js';
116
115
  export * from './scheduleWindowRequest.js';
117
116
  export * from './scheduleWindowResource.js';
118
117
  export * from './serverEnrollmentResponseBody.js';
119
- export * from './serverListResponseBody.js';
120
- export * from './serverListResponseBodyItems.js';
121
118
  export * from './serverResource.js';
122
119
  export * from './serverResourceAddressKind.js';
123
120
  export * from './serverResourceAgentMode.js';
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 监控 用户 API
5
+ * 用户自己项目里的监控:接入机器、看指标、处理告警、开维护窗口、定可用率目标。
6
+
7
+ ## 怎么带身份
8
+
9
+ 每个请求都要带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录拿到账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径上没有 `projectId`**:当前项目由令牌决定。
12
+
13
+ 失败时按出路区分:`IDENTITY_EXPIRED` 表示令牌过期,重新换取即可,无需重新登录;`PROJECT_FORBIDDEN` 表示当前账号不是该项目成员;`PROJECT_UNAVAILABLE` 表示项目欠费或正在删除。
14
+
15
+ ## 两组容易混淆的概念
16
+
17
+ - **停止监控不等于删除**:`POST /servers/{id}/disable` 可逆,历史数据完整保留;`DELETE /servers/{id}` 会连同监控主机、历史数据和这台机器名下的告警一并删除,不可恢复。
18
+ - **告警恢复不等于告警了结**:`incident_status` 表示监控系统是否判定已恢复,`closed_at` 表示是否有人完成了处理。尚未恢复的告警也可以按「已接受的风险」了结。
19
+
20
+ ## PSK 只返回一次
21
+
22
+ 接入和轮换的响应中包含 `tls_psk`,其他任何接口都不会再返回它,请及时保存。遗失后可再轮换一次,代价是被监控的机器需要同步更新一次 agent 配置。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ import type { IncidentResource } from './incidentResource.js';
26
+ export interface LengthAwarePageIncidentResource {
27
+ /** 这一页的内容 */
28
+ items: IncidentResource[];
29
+ /** 这一页最多几条,回显请求里的值 */
30
+ limit: number;
31
+ /** 跳过了多少条,回显请求里的值 */
32
+ offset: number;
33
+ /** 命中的总条数,不只是这一页 */
34
+ total: number;
35
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 监控 用户 API
5
+ * 用户自己项目里的监控:接入机器、看指标、处理告警、开维护窗口、定可用率目标。
6
+
7
+ ## 怎么带身份
8
+
9
+ 每个请求都要带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录拿到账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径上没有 `projectId`**:当前项目由令牌决定。
12
+
13
+ 失败时按出路区分:`IDENTITY_EXPIRED` 表示令牌过期,重新换取即可,无需重新登录;`PROJECT_FORBIDDEN` 表示当前账号不是该项目成员;`PROJECT_UNAVAILABLE` 表示项目欠费或正在删除。
14
+
15
+ ## 两组容易混淆的概念
16
+
17
+ - **停止监控不等于删除**:`POST /servers/{id}/disable` 可逆,历史数据完整保留;`DELETE /servers/{id}` 会连同监控主机、历史数据和这台机器名下的告警一并删除,不可恢复。
18
+ - **告警恢复不等于告警了结**:`incident_status` 表示监控系统是否判定已恢复,`closed_at` 表示是否有人完成了处理。尚未恢复的告警也可以按「已接受的风险」了结。
19
+
20
+ ## PSK 只返回一次
21
+
22
+ 接入和轮换的响应中包含 `tls_psk`,其他任何接口都不会再返回它,请及时保存。遗失后可再轮换一次,代价是被监控的机器需要同步更新一次 agent 配置。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ import type { ServerResource } from './serverResource.js';
26
+ export interface LengthAwarePageServerResource {
27
+ /** 这一页的内容 */
28
+ items: ServerResource[];
29
+ /** 这一页最多几条,回显请求里的值 */
30
+ limit: number;
31
+ /** 跳过了多少条,回显请求里的值 */
32
+ offset: number;
33
+ /** 命中的总条数,不只是这一页 */
34
+ total: number;
35
+ }
@@ -29,14 +29,15 @@ import type { ListIncidentsAcknowledged } from './listIncidentsAcknowledged.js';
29
29
  import type { ListIncidentsUnassigned } from './listIncidentsUnassigned.js';
30
30
  export type ListIncidentsParams = {
31
31
  /**
32
- * 这一页最多返回多少条,0 表示用默认值
33
- * @minimum 0
34
- * @maximum 500
32
+ * 这一页最多返回多少条
33
+ * @minimum 1
34
+ * @maximum 200
35
35
  */
36
36
  limit?: number;
37
37
  /**
38
- * 跳过多少条
38
+ * 跳过多少条。要翻得更深请改用游标翻页的接口
39
39
  * @minimum 0
40
+ * @maximum 10000
40
41
  */
41
42
  offset?: number;
42
43
  /**
@@ -25,14 +25,15 @@
25
25
  import type { ListServersMonitoringStatus } from './listServersMonitoringStatus.js';
26
26
  export type ListServersParams = {
27
27
  /**
28
- * 这一页最多返回多少条,0 表示用默认值
29
- * @minimum 0
30
- * @maximum 500
28
+ * 这一页最多返回多少条
29
+ * @minimum 1
30
+ * @maximum 200
31
31
  */
32
32
  limit?: number;
33
33
  /**
34
- * 跳过多少条
34
+ * 跳过多少条。要翻得更深请改用游标翻页的接口
35
35
  * @minimum 0
36
+ * @maximum 10000
36
37
  */
37
38
  offset?: number;
38
39
  /**
package/dist/http.d.ts CHANGED
@@ -1,36 +1,89 @@
1
1
  import { type AxiosRequestConfig } from 'axios';
2
2
  /** TokenProvider returns the current project token; an empty string sends no token. */
3
3
  export type TokenProvider = () => string | Promise<string>;
4
- /** BaseURLProvider returns the address the current request should go to. */
5
- export type BaseURLProvider = () => string | Promise<string>;
6
4
  export interface ClientOptions {
7
- /**
8
- * baseURL is the API address, for example https://api.leaflow.net.
9
- *
10
- * Optional only because getBaseURL may supply it instead; one of the two is
11
- * required.
12
- */
13
- baseURL?: string;
14
- /**
15
- * getBaseURL is called before every request, and takes precedence over baseURL.
16
- *
17
- * This package bundles several services, and they do not have to live behind one
18
- * address: in development each runs on its own port. A caller that knows which
19
- * service it is about to call resolves the address here rather than configuring
20
- * one client per service.
21
- */
22
- getBaseURL?: BaseURLProvider;
5
+ /** baseURL is one service's address, for example https://compute.leaflow.cloud. */
6
+ baseURL: string;
23
7
  /**
24
8
  * getToken is called before every request.
25
9
  *
26
- * Called each time rather than read once at setup: the project token expires and
27
- * is replaced when the active project changes.
10
+ * Called each time rather than read once at setup: the project token expires,
11
+ * it is replaced when the active project changes, and in a server it belongs
12
+ * to whoever is making the current request rather than to the process.
28
13
  */
29
14
  getToken?: TokenProvider;
30
15
  /** timeout in milliseconds. */
31
16
  timeout?: number;
32
17
  }
33
- /** configure initialises the SDK. Call it once before use. */
18
+ /** A configured connection to one service. */
19
+ export interface Client {
20
+ request<T>(config: AxiosRequestConfig): Promise<T>;
21
+ }
22
+ /**
23
+ * The second argument every generated operation accepts.
24
+ *
25
+ * `client` is what makes it possible to talk to more than one service, or to more
26
+ * than one caller's credentials, from a single process.
27
+ */
28
+ export interface RequestOptions {
29
+ client?: Client;
30
+ }
31
+ /**
32
+ * A connection to one service.
33
+ *
34
+ * # Why this exists rather than only `configure`
35
+ *
36
+ * `configure` sets module-level state, which quietly rules out two things this SDK
37
+ * is otherwise well suited to:
38
+ *
39
+ * - **More than one service.** The documents bundled here are separate
40
+ * deployments on separate addresses — one host per service through the
41
+ * gateway (`iam.leaflow.cloud`, `compute.leaflow.cloud`, …) — and their paths
42
+ * are bare `/api/v1/...` with no service prefix: `iam` and `monitoring` both
43
+ * own `/api/v1/projects/{id}/...`. One `baseURL` per process therefore means
44
+ * one service per process.
45
+ * - **More than one caller.** A server handles requests concurrently, and a
46
+ * single module-level `getToken` is read at await points interleaved across
47
+ * them. Two people signed in at once is enough for one to make a call with
48
+ * the other's project token — intermittently, under load, which is the worst
49
+ * possible way to find out.
50
+ *
51
+ * A client is an ordinary value, so both problems become "hold the right one".
52
+ *
53
+ * # Why there is no `getBaseURL` any more
54
+ *
55
+ * There was one, and it existed to let the single module-level instance point
56
+ * somewhere different per call — which is to say, to work around being a
57
+ * singleton. A client per service answers the same question by construction, and
58
+ * a resolver that runs before every request is one more place for the address to
59
+ * be wrong.
60
+ */
61
+ export declare function createClient(options: ClientOptions): Client;
62
+ /** configure initialises the process-wide fallback client. Call it once. */
34
63
  export declare function configure(options: ClientOptions): void;
35
- /** request is the entry point used by the generated code. */
36
- export declare function request<T>(config: AxiosRequestConfig): Promise<T>;
64
+ /**
65
+ * request is the entry point used by the generated code.
66
+ *
67
+ * The `options` argument is orval's mutator hook: every generated operation takes
68
+ * it as its last parameter and passes it straight through, which is what lets a
69
+ * caller say which client a call belongs to without this module holding any
70
+ * per-call state.
71
+ */
72
+ export declare function request<T>(config: AxiosRequestConfig, options?: RequestOptions): Promise<T>;
73
+ /**
74
+ * A generated namespace with a client already attached.
75
+ *
76
+ * `compute.listInstances(params, { client })` at every call site is correct and
77
+ * tiring, and the tiring part is what makes somebody eventually forget one — at
78
+ * which point the call silently falls through to the process-wide fallback,
79
+ * which in a multi-service process points at the wrong service.
80
+ *
81
+ * const compute = withClient(sdk.compute, createClient({ baseURL, getToken }));
82
+ * await compute.listInstances({});
83
+ *
84
+ * The binding is by position: orval emits `options` as the last declared
85
+ * parameter of every operation, so `fn.length - 1` is the slot. Arguments the
86
+ * caller omitted are filled with `undefined` to reach it, and an options object
87
+ * the caller did pass is merged rather than replaced.
88
+ */
89
+ export declare function withClient<T extends object>(api: T, client: Client): T;
package/dist/http.js CHANGED
@@ -4,35 +4,116 @@
4
4
  // the active project changes, so setting the Authorization header at each call site
5
5
  // would scatter the refresh logic and surface as intermittent 401s.
6
6
  import axios from 'axios';
7
- let instance;
8
- let provider;
9
- let baseURLProvider;
10
- /** configure initialises the SDK. Call it once before use. */
11
- export function configure(options) {
12
- if (!options.baseURL && !options.getBaseURL) {
13
- throw new Error('configure requires baseURL or getBaseURL');
14
- }
15
- provider = options.getToken;
16
- baseURLProvider = options.getBaseURL;
17
- instance = axios.create({
7
+ /**
8
+ * A connection to one service.
9
+ *
10
+ * # Why this exists rather than only `configure`
11
+ *
12
+ * `configure` sets module-level state, which quietly rules out two things this SDK
13
+ * is otherwise well suited to:
14
+ *
15
+ * - **More than one service.** The documents bundled here are separate
16
+ * deployments on separate addresses — one host per service through the
17
+ * gateway (`iam.leaflow.cloud`, `compute.leaflow.cloud`, …) — and their paths
18
+ * are bare `/api/v1/...` with no service prefix: `iam` and `monitoring` both
19
+ * own `/api/v1/projects/{id}/...`. One `baseURL` per process therefore means
20
+ * one service per process.
21
+ * - **More than one caller.** A server handles requests concurrently, and a
22
+ * single module-level `getToken` is read at await points interleaved across
23
+ * them. Two people signed in at once is enough for one to make a call with
24
+ * the other's project token — intermittently, under load, which is the worst
25
+ * possible way to find out.
26
+ *
27
+ * A client is an ordinary value, so both problems become "hold the right one".
28
+ *
29
+ * # Why there is no `getBaseURL` any more
30
+ *
31
+ * There was one, and it existed to let the single module-level instance point
32
+ * somewhere different per call — which is to say, to work around being a
33
+ * singleton. A client per service answers the same question by construction, and
34
+ * a resolver that runs before every request is one more place for the address to
35
+ * be wrong.
36
+ */
37
+ export function createClient(options) {
38
+ const instance = axios.create({
18
39
  baseURL: options.baseURL,
19
40
  timeout: options.timeout ?? 30_000,
20
41
  });
42
+ return {
43
+ async request(config) {
44
+ const token = options.getToken ? await options.getToken() : '';
45
+ const response = await instance.request({
46
+ ...config,
47
+ headers: {
48
+ ...config.headers,
49
+ ...(token ? { Authorization: `Bearer ${token}` } : {}),
50
+ },
51
+ });
52
+ return response.data;
53
+ },
54
+ };
21
55
  }
22
- /** request is the entry point used by the generated code. */
23
- export async function request(config) {
24
- if (!instance) {
25
- throw new Error('SDK not initialised: call configure({ baseURL }) first');
56
+ /**
57
+ * The client used when a call does not name one.
58
+ *
59
+ * Kept for single-service consumers a browser talking to one service, a script
60
+ * — for whom threading a client through every call is ceremony with no payoff. It
61
+ * is a fallback and not the default anyone should reach for in a server: see
62
+ * `createClient` for why.
63
+ */
64
+ let fallback;
65
+ /** configure initialises the process-wide fallback client. Call it once. */
66
+ export function configure(options) {
67
+ fallback = createClient(options);
68
+ }
69
+ /**
70
+ * request is the entry point used by the generated code.
71
+ *
72
+ * The `options` argument is orval's mutator hook: every generated operation takes
73
+ * it as its last parameter and passes it straight through, which is what lets a
74
+ * caller say which client a call belongs to without this module holding any
75
+ * per-call state.
76
+ */
77
+ export async function request(config, options) {
78
+ const client = options?.client ?? fallback;
79
+ if (!client) {
80
+ throw new Error('SDK not initialised: pass { client } from createClient(), or call configure({ baseURL }) once for a single-service process');
26
81
  }
27
- const token = provider ? await provider() : '';
28
- const baseURL = baseURLProvider ? await baseURLProvider() : undefined;
29
- const response = await instance.request({
30
- ...config,
31
- ...(baseURL ? { baseURL } : {}),
32
- headers: {
33
- ...config.headers,
34
- ...(token ? { Authorization: `Bearer ${token}` } : {}),
82
+ return client.request(config);
83
+ }
84
+ /**
85
+ * A generated namespace with a client already attached.
86
+ *
87
+ * `compute.listInstances(params, { client })` at every call site is correct and
88
+ * tiring, and the tiring part is what makes somebody eventually forget one — at
89
+ * which point the call silently falls through to the process-wide fallback,
90
+ * which in a multi-service process points at the wrong service.
91
+ *
92
+ * const compute = withClient(sdk.compute, createClient({ baseURL, getToken }));
93
+ * await compute.listInstances({});
94
+ *
95
+ * The binding is by position: orval emits `options` as the last declared
96
+ * parameter of every operation, so `fn.length - 1` is the slot. Arguments the
97
+ * caller omitted are filled with `undefined` to reach it, and an options object
98
+ * the caller did pass is merged rather than replaced.
99
+ */
100
+ export function withClient(api, client) {
101
+ return new Proxy(api, {
102
+ get(target, property, receiver) {
103
+ const value = Reflect.get(target, property, receiver);
104
+ if (typeof value !== 'function') {
105
+ return value;
106
+ }
107
+ const operation = value;
108
+ return (...args) => {
109
+ const slot = Math.max(operation.length - 1, 0);
110
+ const head = args.slice(0, slot);
111
+ while (head.length < slot) {
112
+ head.push(undefined);
113
+ }
114
+ const passed = args[slot];
115
+ return operation(...head, { ...passed, client });
116
+ };
35
117
  },
36
118
  });
37
- return response.data;
38
119
  }
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export { configure, request } from './http.js';
2
- export type { ClientOptions, TokenProvider } from './http.js';
1
+ export { configure, createClient, request, withClient } from './http.js';
2
+ export type { Client, ClientOptions, RequestOptions, TokenProvider } from './http.js';
3
3
  export * as assistant from './generated/assistant/index.js';
4
4
  export * as compute from './generated/compute/index.js';
5
5
  export * as iam from './generated/iam/index.js';
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
1
  // Generated by scripts/build-index.mjs. Do not edit.
2
- export { configure, request } from './http.js';
2
+ export { configure, createClient, request, withClient } from './http.js';
3
3
  export * as assistant from './generated/assistant/index.js';
4
4
  export * as compute from './generated/compute/index.js';
5
5
  export * as iam from './generated/iam/index.js';
6
6
  export * as monitoring from './generated/monitoring/index.js';
7
7
  /** Service versions the bundled specs were generated from. */
8
8
  export const SERVICE_VERSIONS = {
9
- assistant: "v0.5.0",
10
- compute: "v0.4.0",
11
- iam: "v0.22.0",
12
- monitoring: "v4.1.0",
9
+ assistant: "v2.1.1",
10
+ compute: "v2.1.1",
11
+ iam: "v0.30.0",
12
+ monitoring: "v9.0.2",
13
13
  };
@@ -1 +1 @@
1
- v0.5.0
1
+ v2.1.1