@nosana/api 2.6.0 → 2.7.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 (259) hide show
  1. package/README.md +128 -4
  2. package/dist/client/blockchain-indexer/index.d.ts +7 -0
  3. package/dist/client/blockchain-indexer/index.d.ts.map +1 -0
  4. package/dist/client/blockchain-indexer/index.js +7 -0
  5. package/dist/client/blockchain-indexer/index.js.map +1 -0
  6. package/dist/client/blockchain-indexer/schema.d.ts +774 -0
  7. package/dist/client/blockchain-indexer/schema.d.ts.map +1 -0
  8. package/dist/client/blockchain-indexer/schema.js.map +1 -0
  9. package/dist/client/client-manager/index.d.ts +6 -0
  10. package/dist/client/client-manager/index.d.ts.map +1 -0
  11. package/dist/client/{clientManagerClient.js → client-manager/index.js} +2 -2
  12. package/dist/client/client-manager/index.js.map +1 -0
  13. package/dist/client/{clientManagerSchema.d.ts → client-manager/schema.d.ts} +16 -11
  14. package/dist/client/client-manager/schema.d.ts.map +1 -0
  15. package/dist/client/{clientManagerSchema.js → client-manager/schema.js} +1 -1
  16. package/dist/client/client-manager/schema.js.map +1 -0
  17. package/dist/client/createClient.d.ts +8 -0
  18. package/dist/client/createClient.d.ts.map +1 -0
  19. package/dist/client/{dashboardClient.js → createClient.js} +8 -5
  20. package/dist/client/createClient.js.map +1 -0
  21. package/dist/client/deployment-manager/index.d.ts +6 -0
  22. package/dist/client/deployment-manager/index.d.ts.map +1 -0
  23. package/dist/client/deployment-manager/index.js +8 -0
  24. package/dist/client/deployment-manager/index.js.map +1 -0
  25. package/dist/client/{deployment-manager-schema.d.ts → deployment-manager/schema.d.ts} +400 -138
  26. package/dist/client/deployment-manager/schema.d.ts.map +1 -0
  27. package/dist/client/{deployment-manager-schema.js → deployment-manager/schema.js} +1 -1
  28. package/dist/client/deployment-manager/schema.js.map +1 -0
  29. package/dist/client/host-manager/index.d.ts +6 -0
  30. package/dist/client/host-manager/index.d.ts.map +1 -0
  31. package/dist/client/host-manager/index.js +7 -0
  32. package/dist/client/host-manager/index.js.map +1 -0
  33. package/dist/client/host-manager/schema.d.ts +9746 -0
  34. package/dist/client/host-manager/schema.d.ts.map +1 -0
  35. package/dist/client/host-manager/schema.js +6 -0
  36. package/dist/client/host-manager/schema.js.map +1 -0
  37. package/dist/client/index.d.ts +6 -2
  38. package/dist/client/index.d.ts.map +1 -1
  39. package/dist/client/index.js +5 -2
  40. package/dist/client/index.js.map +1 -1
  41. package/dist/client/type.utils.d.ts +8 -5
  42. package/dist/client/type.utils.d.ts.map +1 -1
  43. package/dist/defaults/index.d.ts.map +1 -1
  44. package/dist/defaults/index.js +10 -4
  45. package/dist/defaults/index.js.map +1 -1
  46. package/dist/index.d.ts +32 -4
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +38 -11
  49. package/dist/index.js.map +1 -1
  50. package/dist/routes/auth/index.d.ts +1 -1
  51. package/dist/routes/auth/index.d.ts.map +1 -1
  52. package/dist/routes/auth/index.js +18 -0
  53. package/dist/routes/auth/index.js.map +1 -1
  54. package/dist/routes/auth/types.d.ts +5 -0
  55. package/dist/routes/auth/types.d.ts.map +1 -1
  56. package/dist/routes/benchmarks/index.d.ts +7 -0
  57. package/dist/routes/benchmarks/index.d.ts.map +1 -0
  58. package/dist/routes/benchmarks/index.js +116 -0
  59. package/dist/routes/benchmarks/index.js.map +1 -0
  60. package/dist/routes/benchmarks/types.d.ts +24 -0
  61. package/dist/routes/benchmarks/types.d.ts.map +1 -0
  62. package/dist/routes/benchmarks/types.js +2 -0
  63. package/dist/routes/benchmarks/types.js.map +1 -0
  64. package/dist/routes/credits/index.d.ts +5 -3
  65. package/dist/routes/credits/index.d.ts.map +1 -1
  66. package/dist/routes/credits/index.js +73 -4
  67. package/dist/routes/credits/index.js.map +1 -1
  68. package/dist/routes/credits/types.d.ts +13 -2
  69. package/dist/routes/credits/types.d.ts.map +1 -1
  70. package/dist/routes/deployments/deployment/actions/deploymentArchive.d.ts +2 -2
  71. package/dist/routes/deployments/deployment/actions/deploymentArchive.d.ts.map +1 -1
  72. package/dist/routes/deployments/deployment/actions/deploymentArchive.js +1 -1
  73. package/dist/routes/deployments/deployment/actions/deploymentArchive.js.map +1 -1
  74. package/dist/routes/deployments/deployment/actions/deploymentCreateNewRevision.d.ts +3 -3
  75. package/dist/routes/deployments/deployment/actions/deploymentCreateNewRevision.d.ts.map +1 -1
  76. package/dist/routes/deployments/deployment/actions/deploymentCreateNewRevision.js +3 -3
  77. package/dist/routes/deployments/deployment/actions/deploymentCreateNewRevision.js.map +1 -1
  78. package/dist/routes/deployments/deployment/actions/deploymentDelete.d.ts +2 -2
  79. package/dist/routes/deployments/deployment/actions/deploymentDelete.d.ts.map +1 -1
  80. package/dist/routes/deployments/deployment/actions/deploymentDelete.js +1 -1
  81. package/dist/routes/deployments/deployment/actions/deploymentDelete.js.map +1 -1
  82. package/dist/routes/deployments/deployment/actions/deploymentGenerateAuthHeader.d.ts +2 -2
  83. package/dist/routes/deployments/deployment/actions/deploymentGenerateAuthHeader.d.ts.map +1 -1
  84. package/dist/routes/deployments/deployment/actions/deploymentGenerateAuthHeader.js +1 -1
  85. package/dist/routes/deployments/deployment/actions/deploymentGenerateAuthHeader.js.map +1 -1
  86. package/dist/routes/deployments/deployment/actions/deploymentGetEvents.d.ts +2 -2
  87. package/dist/routes/deployments/deployment/actions/deploymentGetEvents.d.ts.map +1 -1
  88. package/dist/routes/deployments/deployment/actions/deploymentGetEvents.js +1 -1
  89. package/dist/routes/deployments/deployment/actions/deploymentGetEvents.js.map +1 -1
  90. package/dist/routes/deployments/deployment/actions/deploymentGetJob.d.ts +3 -5
  91. package/dist/routes/deployments/deployment/actions/deploymentGetJob.d.ts.map +1 -1
  92. package/dist/routes/deployments/deployment/actions/deploymentGetJob.js +2 -2
  93. package/dist/routes/deployments/deployment/actions/deploymentGetJob.js.map +1 -1
  94. package/dist/routes/deployments/deployment/actions/deploymentGetJobs.d.ts +2 -2
  95. package/dist/routes/deployments/deployment/actions/deploymentGetJobs.d.ts.map +1 -1
  96. package/dist/routes/deployments/deployment/actions/deploymentGetJobs.js +1 -1
  97. package/dist/routes/deployments/deployment/actions/deploymentGetJobs.js.map +1 -1
  98. package/dist/routes/deployments/deployment/actions/deploymentGetRevisions.d.ts +2 -2
  99. package/dist/routes/deployments/deployment/actions/deploymentGetRevisions.d.ts.map +1 -1
  100. package/dist/routes/deployments/deployment/actions/deploymentGetRevisions.js +1 -1
  101. package/dist/routes/deployments/deployment/actions/deploymentGetRevisions.js.map +1 -1
  102. package/dist/routes/deployments/deployment/actions/deploymentGetTasks.d.ts +2 -2
  103. package/dist/routes/deployments/deployment/actions/deploymentGetTasks.d.ts.map +1 -1
  104. package/dist/routes/deployments/deployment/actions/deploymentGetTasks.js +1 -1
  105. package/dist/routes/deployments/deployment/actions/deploymentGetTasks.js.map +1 -1
  106. package/dist/routes/deployments/deployment/actions/deploymentStart.d.ts +2 -2
  107. package/dist/routes/deployments/deployment/actions/deploymentStart.d.ts.map +1 -1
  108. package/dist/routes/deployments/deployment/actions/deploymentStart.js +1 -1
  109. package/dist/routes/deployments/deployment/actions/deploymentStart.js.map +1 -1
  110. package/dist/routes/deployments/deployment/actions/deploymentStop.d.ts +2 -2
  111. package/dist/routes/deployments/deployment/actions/deploymentStop.d.ts.map +1 -1
  112. package/dist/routes/deployments/deployment/actions/deploymentStop.js +1 -1
  113. package/dist/routes/deployments/deployment/actions/deploymentStop.js.map +1 -1
  114. package/dist/routes/deployments/deployment/actions/deploymentUpdateActiveRevision.d.ts +3 -3
  115. package/dist/routes/deployments/deployment/actions/deploymentUpdateActiveRevision.d.ts.map +1 -1
  116. package/dist/routes/deployments/deployment/actions/deploymentUpdateActiveRevision.js +3 -3
  117. package/dist/routes/deployments/deployment/actions/deploymentUpdateActiveRevision.js.map +1 -1
  118. package/dist/routes/deployments/deployment/actions/deploymentUpdateName.d.ts +10 -0
  119. package/dist/routes/deployments/deployment/actions/deploymentUpdateName.d.ts.map +1 -0
  120. package/dist/routes/deployments/deployment/actions/deploymentUpdateName.js +21 -0
  121. package/dist/routes/deployments/deployment/actions/deploymentUpdateName.js.map +1 -0
  122. package/dist/routes/deployments/deployment/actions/deploymentUpdateReplicaCount.d.ts +2 -2
  123. package/dist/routes/deployments/deployment/actions/deploymentUpdateReplicaCount.d.ts.map +1 -1
  124. package/dist/routes/deployments/deployment/actions/deploymentUpdateReplicaCount.js +1 -1
  125. package/dist/routes/deployments/deployment/actions/deploymentUpdateReplicaCount.js.map +1 -1
  126. package/dist/routes/deployments/deployment/actions/deploymentUpdateSchedule.d.ts +3 -3
  127. package/dist/routes/deployments/deployment/actions/deploymentUpdateSchedule.d.ts.map +1 -1
  128. package/dist/routes/deployments/deployment/actions/deploymentUpdateSchedule.js +3 -3
  129. package/dist/routes/deployments/deployment/actions/deploymentUpdateSchedule.js.map +1 -1
  130. package/dist/routes/deployments/deployment/actions/deploymentUpdateTimeout.d.ts +2 -2
  131. package/dist/routes/deployments/deployment/actions/deploymentUpdateTimeout.d.ts.map +1 -1
  132. package/dist/routes/deployments/deployment/actions/deploymentUpdateTimeout.js +1 -1
  133. package/dist/routes/deployments/deployment/actions/deploymentUpdateTimeout.js.map +1 -1
  134. package/dist/routes/deployments/deployment/actions/index.d.ts +1 -0
  135. package/dist/routes/deployments/deployment/actions/index.d.ts.map +1 -1
  136. package/dist/routes/deployments/deployment/actions/index.js +1 -0
  137. package/dist/routes/deployments/deployment/actions/index.js.map +1 -1
  138. package/dist/routes/deployments/deployment/actions/vaultGetBalance.d.ts +2 -2
  139. package/dist/routes/deployments/deployment/actions/vaultGetBalance.d.ts.map +1 -1
  140. package/dist/routes/deployments/deployment/actions/vaultGetBalance.js.map +1 -1
  141. package/dist/routes/deployments/deployment/actions/vaultTopup.d.ts +2 -2
  142. package/dist/routes/deployments/deployment/actions/vaultTopup.d.ts.map +1 -1
  143. package/dist/routes/deployments/deployment/actions/vaultTopup.js.map +1 -1
  144. package/dist/routes/deployments/deployment/actions/vaultWithdraw.d.ts +3 -3
  145. package/dist/routes/deployments/deployment/actions/vaultWithdraw.d.ts.map +1 -1
  146. package/dist/routes/deployments/deployment/actions/vaultWithdraw.js +3 -3
  147. package/dist/routes/deployments/deployment/actions/vaultWithdraw.js.map +1 -1
  148. package/dist/routes/deployments/deployment/createDeployment.d.ts +4 -4
  149. package/dist/routes/deployments/deployment/createDeployment.d.ts.map +1 -1
  150. package/dist/routes/deployments/deployment/createDeployment.js +42 -29
  151. package/dist/routes/deployments/deployment/createDeployment.js.map +1 -1
  152. package/dist/routes/deployments/deployment/createVault.d.ts +3 -3
  153. package/dist/routes/deployments/deployment/createVault.d.ts.map +1 -1
  154. package/dist/routes/deployments/deployment/createVault.js +5 -5
  155. package/dist/routes/deployments/deployment/createVault.js.map +1 -1
  156. package/dist/routes/deployments/index.d.ts +3 -3
  157. package/dist/routes/deployments/index.d.ts.map +1 -1
  158. package/dist/routes/deployments/index.js +41 -18
  159. package/dist/routes/deployments/index.js.map +1 -1
  160. package/dist/routes/deployments/types.d.ts +17 -10
  161. package/dist/routes/deployments/types.d.ts.map +1 -1
  162. package/dist/routes/hosts/index.d.ts +7 -0
  163. package/dist/routes/hosts/index.d.ts.map +1 -0
  164. package/dist/routes/hosts/index.js +213 -0
  165. package/dist/routes/hosts/index.js.map +1 -0
  166. package/dist/routes/hosts/types.d.ts +40 -0
  167. package/dist/routes/hosts/types.d.ts.map +1 -0
  168. package/dist/routes/hosts/types.js +2 -0
  169. package/dist/routes/hosts/types.js.map +1 -0
  170. package/dist/routes/index.d.ts +7 -0
  171. package/dist/routes/index.d.ts.map +1 -1
  172. package/dist/routes/index.js +7 -0
  173. package/dist/routes/index.js.map +1 -1
  174. package/dist/routes/jobs/index.d.ts +6 -2
  175. package/dist/routes/jobs/index.d.ts.map +1 -1
  176. package/dist/routes/jobs/index.js +99 -21
  177. package/dist/routes/jobs/index.js.map +1 -1
  178. package/dist/routes/jobs/types.d.ts +40 -11
  179. package/dist/routes/jobs/types.d.ts.map +1 -1
  180. package/dist/routes/markets/index.d.ts +4 -2
  181. package/dist/routes/markets/index.d.ts.map +1 -1
  182. package/dist/routes/markets/index.js +58 -10
  183. package/dist/routes/markets/index.js.map +1 -1
  184. package/dist/routes/markets/types.d.ts +10 -3
  185. package/dist/routes/markets/types.d.ts.map +1 -1
  186. package/dist/routes/newsletter/index.d.ts +7 -0
  187. package/dist/routes/newsletter/index.d.ts.map +1 -0
  188. package/dist/routes/newsletter/index.js +17 -0
  189. package/dist/routes/newsletter/index.js.map +1 -0
  190. package/dist/routes/newsletter/types.d.ts +6 -0
  191. package/dist/routes/newsletter/types.d.ts.map +1 -0
  192. package/dist/routes/newsletter/types.js +2 -0
  193. package/dist/routes/newsletter/types.js.map +1 -0
  194. package/dist/routes/payments/index.d.ts +7 -0
  195. package/dist/routes/payments/index.d.ts.map +1 -0
  196. package/dist/routes/payments/index.js +58 -0
  197. package/dist/routes/payments/index.js.map +1 -0
  198. package/dist/routes/payments/types.d.ts +12 -0
  199. package/dist/routes/payments/types.d.ts.map +1 -0
  200. package/dist/routes/payments/types.js +2 -0
  201. package/dist/routes/payments/types.js.map +1 -0
  202. package/dist/routes/stats/index.d.ts +8 -0
  203. package/dist/routes/stats/index.d.ts.map +1 -0
  204. package/dist/routes/stats/index.js +41 -0
  205. package/dist/routes/stats/index.js.map +1 -0
  206. package/dist/routes/stats/types.d.ts +11 -0
  207. package/dist/routes/stats/types.d.ts.map +1 -0
  208. package/dist/routes/stats/types.js +2 -0
  209. package/dist/routes/stats/types.js.map +1 -0
  210. package/dist/routes/templates/index.d.ts +7 -0
  211. package/dist/routes/templates/index.d.ts.map +1 -0
  212. package/dist/routes/templates/index.js +48 -0
  213. package/dist/routes/templates/index.js.map +1 -0
  214. package/dist/routes/templates/types.d.ts +9 -0
  215. package/dist/routes/templates/types.d.ts.map +1 -0
  216. package/dist/routes/templates/types.js +2 -0
  217. package/dist/routes/templates/types.js.map +1 -0
  218. package/dist/routes/user/index.d.ts +7 -0
  219. package/dist/routes/user/index.d.ts.map +1 -0
  220. package/dist/routes/user/index.js +61 -0
  221. package/dist/routes/user/index.js.map +1 -0
  222. package/dist/routes/user/types.d.ts +20 -0
  223. package/dist/routes/user/types.d.ts.map +1 -0
  224. package/dist/routes/user/types.js +2 -0
  225. package/dist/routes/user/types.js.map +1 -0
  226. package/dist/types.d.ts +22 -6
  227. package/dist/types.d.ts.map +1 -1
  228. package/dist/types.js.map +1 -1
  229. package/dist/utils/errorFormatter.d.ts +19 -2
  230. package/dist/utils/errorFormatter.d.ts.map +1 -1
  231. package/dist/utils/errorFormatter.js +17 -0
  232. package/dist/utils/errorFormatter.js.map +1 -1
  233. package/dist/utils/idempotency.d.ts +2 -5
  234. package/dist/utils/idempotency.d.ts.map +1 -1
  235. package/dist/utils/idempotency.js +2 -5
  236. package/dist/utils/idempotency.js.map +1 -1
  237. package/package.json +17 -7
  238. package/dist/client/clientManagerClient.d.ts +0 -31
  239. package/dist/client/clientManagerClient.d.ts.map +0 -1
  240. package/dist/client/clientManagerClient.js.map +0 -1
  241. package/dist/client/clientManagerSchema.d.ts.map +0 -1
  242. package/dist/client/clientManagerSchema.js.map +0 -1
  243. package/dist/client/clientManagerSchema.lockstep.d.ts +0 -19
  244. package/dist/client/clientManagerSchema.lockstep.d.ts.map +0 -1
  245. package/dist/client/clientManagerSchema.lockstep.js +0 -2
  246. package/dist/client/clientManagerSchema.lockstep.js.map +0 -1
  247. package/dist/client/dashboardClient.d.ts +0 -10
  248. package/dist/client/dashboardClient.d.ts.map +0 -1
  249. package/dist/client/dashboardClient.js.map +0 -1
  250. package/dist/client/deployment-manager-schema.d.ts.map +0 -1
  251. package/dist/client/deployment-manager-schema.js.map +0 -1
  252. package/dist/client/jobsBatch.d.ts +0 -66
  253. package/dist/client/jobsBatch.d.ts.map +0 -1
  254. package/dist/client/jobsBatch.js +0 -10
  255. package/dist/client/jobsBatch.js.map +0 -1
  256. package/dist/client/schema.d.ts +0 -3167
  257. package/dist/client/schema.d.ts.map +0 -1
  258. package/dist/client/schema.js.map +0 -1
  259. /package/dist/client/{schema.js → blockchain-indexer/schema.js} +0 -0
@@ -0,0 +1,8 @@
1
+ import type { BlockchainIndexerClient } from '../../client/blockchain-indexer/index.js';
2
+ import type { NosanaStatsApi } from './types.js';
3
+ export type { NosanaStatsApi } from './types.js';
4
+ interface StatsRouteClients {
5
+ blockchainIndexer: BlockchainIndexerClient;
6
+ }
7
+ export declare function createNosanaStatsApi(clients: StatsRouteClients): NosanaStatsApi;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/stats/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,UAAU,iBAAiB;IACzB,iBAAiB,EAAE,uBAAuB,CAAC;CAC5C;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,iBAAiB,GACzB,cAAc,CAgDhB"}
@@ -0,0 +1,41 @@
1
+ import { errorFormatter } from '../../utils/errorFormatter.js';
2
+ export function createNosanaStatsApi(clients) {
3
+ const { blockchainIndexer } = clients;
4
+ return {
5
+ get: async () => {
6
+ const { data, error } = await blockchainIndexer.GET('/stats/');
7
+ if (error || !data) {
8
+ throw errorFormatter('Error fetching stats', error);
9
+ }
10
+ return data;
11
+ },
12
+ getPrice: async (request) => {
13
+ const { data, error } = await blockchainIndexer.GET('/stats/price', {
14
+ params: { query: request ?? {} },
15
+ });
16
+ if (error || !data) {
17
+ throw errorFormatter('Error fetching NOS price', error);
18
+ }
19
+ return data;
20
+ },
21
+ getSpendingHistory: async (request) => {
22
+ const { data, error } = await blockchainIndexer.GET('/stats/spending-history', {
23
+ params: { query: request },
24
+ });
25
+ if (error || !data) {
26
+ throw errorFormatter('Error fetching spending history', error);
27
+ }
28
+ return data;
29
+ },
30
+ getEarningHistory: async (request) => {
31
+ const { data, error } = await blockchainIndexer.GET('/stats/earning-history', {
32
+ params: { query: request },
33
+ });
34
+ if (error || !data) {
35
+ throw errorFormatter('Error fetching earning history', error);
36
+ }
37
+ return data;
38
+ },
39
+ };
40
+ }
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/routes/stats/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAc/D,MAAM,UAAU,oBAAoB,CAClC,OAA0B;IAE1B,MAAM,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IAEtC,OAAO;QACL,GAAG,EAAE,KAAK,IAAI,EAAE;YACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC/D,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,IAA0C,CAAC;QACpD,CAAC;QAED,QAAQ,EAAE,KAAK,EAAE,OAA2B,EAAE,EAAE;YAC9C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,cAAc,EAAE;gBAClE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,IAAI,EAAE,EAAE;aACjC,CAAC,CAAC;YACH,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAC1D,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,kBAAkB,EAAE,KAAK,EAAE,OAA4B,EAAE,EAAE;YACzD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,iBAAiB,CAAC,GAAG,CACjD,yBAAyB,EACzB;gBACE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;aAC3B,CACF,CAAC;YACF,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,IAA0C,CAAC;QACpD,CAAC;QAED,iBAAiB,EAAE,KAAK,EAAE,OAA4B,EAAE,EAAE;YACxD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,iBAAiB,CAAC,GAAG,CACjD,wBAAwB,EACxB;gBACE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;aAC3B,CACF,CAAC;YACF,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;YACD,OAAO,IAA0C,CAAC;QACpD,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { operations } from '../../client/blockchain-indexer/schema.js';
2
+ export type StatsPriceRequest = operations['getStatsPrice']['parameters']['query'];
3
+ export type StatsPriceResponse = operations['getStatsPrice']['responses']['200']['content']['application/json'];
4
+ export type StatsHistoryRequest = operations['getStatsSpending-history']['parameters']['query'];
5
+ export interface NosanaStatsApi {
6
+ get: () => Promise<Record<string, unknown>>;
7
+ getPrice: (request?: StatsPriceRequest) => Promise<StatsPriceResponse>;
8
+ getSpendingHistory: (request: StatsHistoryRequest) => Promise<Record<string, unknown>>;
9
+ getEarningHistory: (request: StatsHistoryRequest) => Promise<Record<string, unknown>>;
10
+ }
11
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/routes/stats/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AAE5E,MAAM,MAAM,iBAAiB,GAC3B,UAAU,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC;AAErD,MAAM,MAAM,kBAAkB,GAC5B,UAAU,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAEjF,MAAM,MAAM,mBAAmB,GAC7B,UAAU,CAAC,0BAA0B,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC;AAEhE,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5C,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvE,kBAAkB,EAAE,CAClB,OAAO,EAAE,mBAAmB,KACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtC,iBAAiB,EAAE,CACjB,OAAO,EAAE,mBAAmB,KACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/routes/stats/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { ClientManagerClient } from '../../client/client-manager/index.js';
2
+ import type { NosanaTemplatesApi } from './types.js';
3
+ export * from './types.js';
4
+ export declare function createNosanaTemplatesApi(clients: {
5
+ clientManager: ClientManagerClient;
6
+ }): NosanaTemplatesApi;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/templates/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAY,MAAM,YAAY,CAAC;AAE/D,cAAc,YAAY,CAAC;AAE3B,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAChD,aAAa,EAAE,mBAAmB,CAAC;CACpC,GAAG,kBAAkB,CAoDrB"}
@@ -0,0 +1,48 @@
1
+ import { errorFormatter } from '../../utils/errorFormatter.js';
2
+ export * from './types.js';
3
+ export function createNosanaTemplatesApi(clients) {
4
+ const { clientManager: client } = clients;
5
+ return {
6
+ async list() {
7
+ const { data, error } = await client.GET('/templates/', {});
8
+ if (error || !data) {
9
+ throw errorFormatter('Failed to list templates', error);
10
+ }
11
+ return data;
12
+ },
13
+ async getAllGrouped() {
14
+ const { data, error } = await client.GET('/templates/grouped', {});
15
+ if (error || !data) {
16
+ throw errorFormatter('Failed to get grouped templates', error);
17
+ }
18
+ return data;
19
+ },
20
+ async get(id) {
21
+ const { data, error } = await client.GET('/templates/{id}', {
22
+ params: {
23
+ path: { id },
24
+ },
25
+ });
26
+ if (error || !data) {
27
+ throw errorFormatter('Failed to get template', error);
28
+ }
29
+ return data;
30
+ },
31
+ async getVariant(id, variantId) {
32
+ const { data, error } = await client.GET('/templates/{id}/{variantId}', {
33
+ params: {
34
+ path: { id, variantId },
35
+ },
36
+ });
37
+ if (error || !data) {
38
+ throw errorFormatter('Failed to get template variant', error);
39
+ }
40
+ // The CM OpenAPI spec does not (yet) declare a response schema for
41
+ // `/templates/{id}/{variantId}`, so `data` comes through untyped. It
42
+ // returns the same shape as `GET /templates/{id}`; once the backend spec
43
+ // declares the response, this assertion can be removed.
44
+ return data;
45
+ },
46
+ };
47
+ }
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/routes/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAK/D,cAAc,YAAY,CAAC;AAE3B,MAAM,UAAU,wBAAwB,CAAC,OAExC;IACC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC1C,OAAO;QACL,KAAK,CAAC,IAAI;YACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YAE5D,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAC1D,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,aAAa;YACjB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;YAEnE,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YACjE,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,EAAU;YAClB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE;gBAC1D,MAAM,EAAE;oBACN,IAAI,EAAE,EAAE,EAAE,EAAE;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YACxD,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,EAAU,EAAE,SAAiB;YAC5C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,6BAA6B,EAAE;gBACtE,MAAM,EAAE;oBACN,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;iBACxB;aACF,CAAC,CAAC;YAEH,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;YAED,mEAAmE;YACnE,qEAAqE;YACrE,yEAAyE;YACzE,wDAAwD;YACxD,OAAO,IAAgB,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { operations } from '../../client/client-manager/schema.js';
2
+ export type Template = operations['getTemplatesById']['responses'][200]['content']['application/json'];
3
+ export interface NosanaTemplatesApi {
4
+ list: () => Promise<Template[]>;
5
+ getAllGrouped: () => Promise<Record<string, unknown>>;
6
+ get: (id: string) => Promise<Template>;
7
+ getVariant: (id: string, variantId: string) => Promise<Template>;
8
+ }
9
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/routes/templates/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAMxE,MAAM,MAAM,QAAQ,GAClB,UAAU,CAAC,kBAAkB,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAElF,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChC,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAClE"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/routes/templates/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { ClientManagerClient } from '../../client/client-manager/index.js';
2
+ import type { NosanaUserApi } from './types.js';
3
+ export * from './types.js';
4
+ export declare function createNosanaUserApi(clients: {
5
+ clientManager: ClientManagerClient;
6
+ }): NosanaUserApi;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/user/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,KAAK,EACV,aAAa,EAKd,MAAM,YAAY,CAAC;AAEpB,cAAc,YAAY,CAAC;AAE3B,wBAAgB,mBAAmB,CAAC,OAAO,EAAE;IAC3C,aAAa,EAAE,mBAAmB,CAAC;CACpC,GAAG,aAAa,CAmEhB"}
@@ -0,0 +1,61 @@
1
+ import { errorFormatter } from '../../utils/errorFormatter.js';
2
+ export * from './types.js';
3
+ export function createNosanaUserApi(clients) {
4
+ const { clientManager: client } = clients;
5
+ return {
6
+ apiKeys: {
7
+ async create(request) {
8
+ const { data, error } = await client.POST('/api-keys/', {
9
+ body: request,
10
+ });
11
+ if (error || !data) {
12
+ throw errorFormatter('Failed to create API key', error);
13
+ }
14
+ return data;
15
+ },
16
+ async list() {
17
+ const { data, error } = await client.GET('/api-keys/', {});
18
+ if (error || !data) {
19
+ throw errorFormatter('Failed to list API keys', error);
20
+ }
21
+ return data;
22
+ },
23
+ async get(id) {
24
+ const { data, error } = await client.GET('/api-keys/{id}', {
25
+ params: {
26
+ path: { id },
27
+ },
28
+ });
29
+ if (error || !data) {
30
+ throw errorFormatter('Failed to get API key', error);
31
+ }
32
+ return data;
33
+ },
34
+ async update(id, request) {
35
+ const { data, error } = await client.POST('/api-keys/{id}/update', {
36
+ params: {
37
+ path: { id },
38
+ },
39
+ body: request,
40
+ });
41
+ if (error || !data) {
42
+ throw errorFormatter('Failed to update API key', error);
43
+ }
44
+ return data;
45
+ },
46
+ async delete(id) {
47
+ const { data, error } = await client.POST('/api-keys/{id}/delete', {
48
+ params: {
49
+ path: { id },
50
+ },
51
+ body: undefined,
52
+ });
53
+ if (error || !data) {
54
+ throw errorFormatter('Failed to delete API key', error);
55
+ }
56
+ return data;
57
+ },
58
+ },
59
+ };
60
+ }
61
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/routes/user/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAW/D,cAAc,YAAY,CAAC;AAE3B,MAAM,UAAU,mBAAmB,CAAC,OAEnC;IACC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC1C,OAAO;QACL,OAAO,EAAE;YACP,KAAK,CAAC,MAAM,CAAC,OAA4B;gBACvC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE;oBACtD,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC;gBAEH,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnB,MAAM,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;gBAC1D,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;YACD,KAAK,CAAC,IAAI;gBACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;gBAE3D,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnB,MAAM,cAAc,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;gBACzD,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;YACD,KAAK,CAAC,GAAG,CAAC,EAAU;gBAClB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE;oBACzD,MAAM,EAAE;wBACN,IAAI,EAAE,EAAE,EAAE,EAAE;qBACb;iBACF,CAAC,CAAC;gBAEH,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnB,MAAM,cAAc,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;gBACvD,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;YACD,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,OAA4B;gBACnD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;oBACjE,MAAM,EAAE;wBACN,IAAI,EAAE,EAAE,EAAE,EAAE;qBACb;oBACD,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC;gBAEH,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnB,MAAM,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;gBAC1D,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;YACD,KAAK,CAAC,MAAM,CAAC,EAAU;gBACrB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;oBACjE,MAAM,EAAE;wBACN,IAAI,EAAE,EAAE,EAAE,EAAE;qBACb;oBACD,IAAI,EAAE,SAAS;iBAChB,CAAC,CAAC;gBAEH,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnB,MAAM,cAAc,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;gBAC1D,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { operations, paths } from '../../client/client-manager/schema.js';
2
+ export type ApiKey = operations['getApi-keysById']['responses'][200]['content']['application/json'];
3
+ export type ApiKeyCreated = operations['postApi-keys']['responses'][200]['content']['application/json'];
4
+ export type CreateApiKeyRequest = paths['/api-keys/']['post']['requestBody']['content']['application/json'];
5
+ export type UpdateApiKeyRequest = paths['/api-keys/{id}/update']['post']['requestBody']['content']['application/json'];
6
+ export interface NosanaUserApi {
7
+ apiKeys: {
8
+ create: (request: CreateApiKeyRequest) => Promise<ApiKeyCreated>;
9
+ list: () => Promise<{
10
+ keys: ApiKey[];
11
+ total: number;
12
+ }>;
13
+ get: (id: string) => Promise<ApiKey>;
14
+ update: (id: string, request: UpdateApiKeyRequest) => Promise<ApiKey>;
15
+ delete: (id: string) => Promise<{
16
+ success: boolean;
17
+ }>;
18
+ };
19
+ }
20
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/routes/user/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,uCAAuC,CAAC;AAE/E,MAAM,MAAM,MAAM,GAChB,UAAU,CAAC,iBAAiB,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACjF,MAAM,MAAM,aAAa,GACvB,UAAU,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAE9E,MAAM,MAAM,mBAAmB,GAC7B,KAAK,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAC5E,MAAM,MAAM,mBAAmB,GAC7B,KAAK,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAEvF,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE;QACP,MAAM,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;QACjE,IAAI,EAAE,MAAM,OAAO,CAAC;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACvD,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;QACtE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;YAAE,OAAO,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KACvD,CAAC;CACH"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/routes/user/types.ts"],"names":[],"mappings":""}
package/dist/types.d.ts CHANGED
@@ -1,4 +1,7 @@
1
- import { QueryClient } from './client/index.js';
1
+ import type { ClientManagerClient } from './client/client-manager/index.js';
2
+ import type { BlockchainIndexerClient } from './client/blockchain-indexer/index.js';
3
+ import type { HostManagerClient } from './client/host-manager/index.js';
4
+ import type { DeploymentManagerClient } from './client/deployment-manager/index.js';
2
5
  import { TopupVaultOptions } from './routes/deployments/types.js';
3
6
  export { NosanaNetwork } from '@nosana/types';
4
7
  export type { NosanaNetwork as NosanaNetworkType } from '@nosana/types';
@@ -27,19 +30,32 @@ export type SignerAuth = {
27
30
  solana: ExternalSolanaFunctions;
28
31
  };
29
32
  export type CreateNosanaApiOptions = Partial<{
30
- backend_url: string;
31
33
  client_manager_url: string;
34
+ host_manager_url: string;
35
+ blockchain_indexer_url: string;
36
+ deployment_manager_url: string;
32
37
  include_credentials: boolean;
33
38
  }>;
34
39
  export interface Config {
35
- backend_url: string;
36
40
  client_manager_url: string;
41
+ host_manager_url: string;
42
+ blockchain_indexer_url: string;
43
+ deployment_manager_url: string;
37
44
  nos_address: string;
38
45
  }
39
- export interface RouteOptions {
40
- client: QueryClient;
46
+ /**
47
+ * All available API clients, organized by service.
48
+ */
49
+ export interface NosanaClients {
50
+ clientManager: ClientManagerClient;
51
+ hostManager: HostManagerClient;
52
+ blockchainIndexer: BlockchainIndexerClient;
53
+ deploymentManager: DeploymentManagerClient;
54
+ }
55
+ export interface DeploymentRouteClients {
56
+ deploymentManager: DeploymentManagerClient;
41
57
  }
42
- export type RouteOptionsWithSigner = RouteOptions & {
58
+ export type DeploymentRouteClientsWithSigner = DeploymentRouteClients & {
43
59
  solana: ExternalSolanaFunctions;
44
60
  };
45
61
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,CAAA;AAE/B;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,iEAAiE;IACjE,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEvE,0EAA0E;IAC1E,yBAAyB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3F,oEAAoE;IACpE,wCAAwC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACpF,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,EAAE,uBAAuB,CAAC;CACjC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC,CAAA;AAEF,MAAM,WAAW,MAAM;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,WAAW,CAAA;CACpB;AAED,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG;IAClD,MAAM,EAAE,uBAAuB,CAAA;CAChC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,CAAA;AAE/B;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,iEAAiE;IACjE,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEvE,0EAA0E;IAC1E,yBAAyB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3F,oEAAoE;IACpE,wCAAwC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACpF,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,EAAE,uBAAuB,CAAC;CACjC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;IAC3C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC,CAAA;AAEF,MAAM,WAAW,MAAM;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,mBAAmB,CAAC;IACnC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,iBAAiB,EAAE,uBAAuB,CAAC;CAC5C;AAED,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,EAAE,uBAAuB,CAAC;CAC5C;AAED,MAAM,MAAM,gCAAgC,GAAG,sBAAsB,GAAG;IACtE,MAAM,EAAE,uBAAuB,CAAC;CACjC,CAAA"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAGA,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAMA,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { IdempotencyCode } from './idempotency.js';
1
2
  /**
2
3
  * Error shape every kit request rejects with, once it has reached the server
3
4
  * and come back with a status. `statusCode` is guaranteed (it comes from the
@@ -6,8 +7,10 @@
6
7
  */
7
8
  export interface NosanaApiError extends Error {
8
9
  /**
9
- * Server machine code, when present — one of {@link IdempotencyCode}, or
10
- * another domain code. Branch on this before `statusCode`.
10
+ * Free-form server machine code, when present. May be an {@link IdempotencyCode}
11
+ * (a control signal) or another domain code — so do not assume it is one of the
12
+ * idempotency codes. Use {@link isIdempotencyControlSignal} to detect and narrow
13
+ * to the idempotency control codes.
11
14
  */
12
15
  code?: string;
13
16
  /** HTTP status (`body.statusCode ?? response.status`). */
@@ -40,6 +43,20 @@ interface ErrorResponse {
40
43
  * letting callers treat those separately from server responses.
41
44
  */
42
45
  export declare function isNosanaApiError(err: unknown): err is NosanaApiError;
46
+ /**
47
+ * Narrows a caught value to a coded idempotency **control signal** — a `409`
48
+ * whose body carries a known {@link IdempotencyCode} (`IN_PROGRESS` → retry the
49
+ * same key, `EXPIRED` → fresh key, `PAYLOAD_MISMATCH` → fatal).
50
+ *
51
+ * The membership check is what makes the `code: IdempotencyCode` narrowing
52
+ * sound: `NosanaApiError.code` is a free-form server code, so this returns
53
+ * `false` for a code-less error, a network failure, *and* any non-idempotency
54
+ * code — all of which the caller should treat as ordinary rejections. An
55
+ * exhaustive `switch` over the narrowed `code` is therefore genuinely exhaustive.
56
+ */
57
+ export declare function isIdempotencyControlSignal(err: unknown): err is NosanaApiError & {
58
+ code: IdempotencyCode;
59
+ };
43
60
  /**
44
61
  * Builds an {@link ApiError} from an openapi-fetch failure.
45
62
  *
@@ -1 +1 @@
1
- {"version":3,"file":"errorFormatter.d.ts","sourceRoot":"","sources":["../../src/utils/errorFormatter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,KAAK;IAC3C;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAS,SAAQ,KAAK;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAyBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,cAAc,CAKpE;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,aAAa,EAAE,MAAM,EACrB,WAAW,CAAC,EAAE,aAAa,GAAG,OAAO,EACrC,QAAQ,CAAC,EAAE,QAAQ,GAClB,QAAQ,CAsCV"}
1
+ {"version":3,"file":"errorFormatter.d.ts","sourceRoot":"","sources":["../../src/utils/errorFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKnD;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,KAAK;IAC3C;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAS,SAAQ,KAAK;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAyBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,cAAc,CAKpE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,OAAO,GACX,GAAG,IAAI,cAAc,GAAG;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,CAEnD;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,aAAa,EAAE,MAAM,EACrB,WAAW,CAAC,EAAE,aAAa,GAAG,OAAO,EACrC,QAAQ,CAAC,EAAE,QAAQ,GAClB,QAAQ,CAsCV"}
@@ -1,3 +1,6 @@
1
+ import { IdempotencyCode } from './idempotency.js';
2
+ /** The known idempotency control codes, for a sound runtime membership check. */
3
+ const IDEMPOTENCY_CODES = new Set(Object.values(IdempotencyCode));
1
4
  /**
2
5
  * Parses a `Retry-After` header into a non-negative number of seconds. Handles
3
6
  * both the delta-seconds form (`"5"`) and the HTTP-date form; returns
@@ -26,6 +29,20 @@ export function isNosanaApiError(err) {
26
29
  return (err instanceof Error &&
27
30
  typeof err.statusCode === 'number');
28
31
  }
32
+ /**
33
+ * Narrows a caught value to a coded idempotency **control signal** — a `409`
34
+ * whose body carries a known {@link IdempotencyCode} (`IN_PROGRESS` → retry the
35
+ * same key, `EXPIRED` → fresh key, `PAYLOAD_MISMATCH` → fatal).
36
+ *
37
+ * The membership check is what makes the `code: IdempotencyCode` narrowing
38
+ * sound: `NosanaApiError.code` is a free-form server code, so this returns
39
+ * `false` for a code-less error, a network failure, *and* any non-idempotency
40
+ * code — all of which the caller should treat as ordinary rejections. An
41
+ * exhaustive `switch` over the narrowed `code` is therefore genuinely exhaustive.
42
+ */
43
+ export function isIdempotencyControlSignal(err) {
44
+ return isNosanaApiError(err) && err.code != null && IDEMPOTENCY_CODES.has(err.code);
45
+ }
29
46
  /**
30
47
  * Builds an {@link ApiError} from an openapi-fetch failure.
31
48
  *
@@ -1 +1 @@
1
- {"version":3,"file":"errorFormatter.js","sourceRoot":"","sources":["../../src/utils/errorFormatter.ts"],"names":[],"mappings":"AAuCA;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAgC;IACvD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAY;IAC3C,OAAO,CACL,GAAG,YAAY,KAAK;QACpB,OAAQ,GAA+B,CAAC,UAAU,KAAK,QAAQ,CAChE,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAC5B,aAAqB,EACrB,WAAqC,EACrC,QAAmB;IAEnB,MAAM,GAAG,GAAG,IAAI,KAAK,EAAc,CAAC;IAEpC,8DAA8D;IAC9D,MAAM,UAAU,GACd,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,IAAI;QACrD,CAAC,CAAE,WAA6B,CAAC,UAAU;QAC3C,CAAC,CAAC,SAAS,CAAC;IAChB,GAAG,CAAC,UAAU,GAAG,UAAU,IAAI,QAAQ,EAAE,MAAM,CAAC;IAEhD,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IAC1E,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,GAAG,CAAC,OAAO,GAAG,aAAa,CAAC;QAC5B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QAC5D,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,WAA4B,CAAC;QAE9D,GAAG,CAAC,OAAO,GAAG,GAAG,aAAa,KAAK,KAAK,IAAI,OAAO,IAAI,eAAe,EAAE,CAAC;QACzE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAChB,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC;QAE1B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,GAAG,CAAC,OAAO,GAAG,GAAG,aAAa,KAAK,WAAW,EAAE,CAAC;QACjD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,GAAG,CAAC,OAAO,GAAG,aAAa,CAAC;IAC5B,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC;IAC1B,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"errorFormatter.js","sourceRoot":"","sources":["../../src/utils/errorFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,iFAAiF;AACjF,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;AA2CvF;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAgC;IACvD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAY;IAC3C,OAAO,CACL,GAAG,YAAY,KAAK;QACpB,OAAQ,GAA+B,CAAC,UAAU,KAAK,QAAQ,CAChE,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0BAA0B,CACxC,GAAY;IAEZ,OAAO,gBAAgB,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACtF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAC5B,aAAqB,EACrB,WAAqC,EACrC,QAAmB;IAEnB,MAAM,GAAG,GAAG,IAAI,KAAK,EAAc,CAAC;IAEpC,8DAA8D;IAC9D,MAAM,UAAU,GACd,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,IAAI;QACrD,CAAC,CAAE,WAA6B,CAAC,UAAU;QAC3C,CAAC,CAAC,SAAS,CAAC;IAChB,GAAG,CAAC,UAAU,GAAG,UAAU,IAAI,QAAQ,EAAE,MAAM,CAAC;IAEhD,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IAC1E,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,GAAG,CAAC,OAAO,GAAG,aAAa,CAAC;QAC5B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QAC5D,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,WAA4B,CAAC;QAE9D,GAAG,CAAC,OAAO,GAAG,GAAG,aAAa,KAAK,KAAK,IAAI,OAAO,IAAI,eAAe,EAAE,CAAC;QACzE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAChB,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC;QAE1B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,GAAG,CAAC,OAAO,GAAG,GAAG,aAAa,KAAK,WAAW,EAAE,CAAC;QACjD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,GAAG,CAAC,OAAO,GAAG,aAAa,CAAC;IAC5B,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC;IAC1B,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -6,11 +6,8 @@
6
6
  * fresh-key is the caller's policy. Removing or renaming a member is a breaking
7
7
  * change, so consumers branching on these get a compile signal if they drift.
8
8
  *
9
- * These constants are kept in lockstep with the client-manager OpenAPI spec by a
10
- * compile-time assertion in `../client/clientManagerSchema.lockstep.ts` (which
11
- * is intentionally *not* part of the public import graph, so the large generated
12
- * schema stays out of consumers' type graph). Regenerate the schema with
13
- * `pnpm generate:types:client-manager:dev`.
9
+ * These constants mirror the `IdempotencyCode` enum in the client-manager
10
+ * OpenAPI spec; keep them in sync when the spec changes.
14
11
  *
15
12
  * - `IN_PROGRESS` — a matching request is still in flight; retry the same key
16
13
  * later (honouring `retryAfter`).
@@ -1 +1 @@
1
- {"version":3,"file":"idempotency.d.ts","sourceRoot":"","sources":["../../src/utils/idempotency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
1
+ {"version":3,"file":"idempotency.d.ts","sourceRoot":"","sources":["../../src/utils/idempotency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
@@ -6,11 +6,8 @@
6
6
  * fresh-key is the caller's policy. Removing or renaming a member is a breaking
7
7
  * change, so consumers branching on these get a compile signal if they drift.
8
8
  *
9
- * These constants are kept in lockstep with the client-manager OpenAPI spec by a
10
- * compile-time assertion in `../client/clientManagerSchema.lockstep.ts` (which
11
- * is intentionally *not* part of the public import graph, so the large generated
12
- * schema stays out of consumers' type graph). Regenerate the schema with
13
- * `pnpm generate:types:client-manager:dev`.
9
+ * These constants mirror the `IdempotencyCode` enum in the client-manager
10
+ * OpenAPI spec; keep them in sync when the spec changes.
14
11
  *
15
12
  * - `IN_PROGRESS` — a matching request is still in flight; retry the same key
16
13
  * later (honouring `retryAfter`).
@@ -1 +1 @@
1
- {"version":3,"file":"idempotency.js","sourceRoot":"","sources":["../../src/utils/idempotency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,WAAW,EAAE,6BAA6B;IAC1C,OAAO,EAAE,yBAAyB;IAClC,gBAAgB,EAAE,kCAAkC;CAC5C,CAAC;AAIX;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"idempotency.js","sourceRoot":"","sources":["../../src/utils/idempotency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,WAAW,EAAE,6BAA6B;IAC1C,OAAO,EAAE,yBAAyB;IAClC,gBAAgB,EAAE,kCAAkC;CAC5C,CAAC;AAIX;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;AACxC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nosana/api",
3
- "version": "2.6.0",
3
+ "version": "2.7.0",
4
4
  "description": "Nosana API module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -21,11 +21,21 @@
21
21
  "dev": "tsc --watch",
22
22
  "dev:with-deps": "pnpm --filter $npm_package_name... --parallel run dev",
23
23
  "clean": "rm -rf dist",
24
- "generate:types:dev": "openapi-typescript https://dashboard.k8s.dev.nos.ci/api/swagger/json -o src/client/schema.ts",
25
- "generate:types:prd": "openapi-typescript https://dashboard.k8s.prd.nos.ci/api/swagger/json -o src/client/schema.ts",
26
- "generate:types:local": "openapi-typescript http://localhost:3000/api/swagger/json -o src/client/schema.ts",
27
- "generate:types:client-manager:dev": "openapi-typescript https://client-manager.k8s.dev.nos.ci/swagger/json -o src/client/clientManagerSchema.ts",
28
- "generate:types:client-manager:prd": "openapi-typescript https://client-manager.k8s.prd.nos.ci/swagger/json -o src/client/clientManagerSchema.ts",
24
+ "generate:types:blockchain-indexer": "openapi-typescript ${BLOCKCHAIN_INDEXER_URL:-http://localhost:3003}/swagger/json -o src/client/blockchain-indexer/schema.ts",
25
+ "generate:types:deployment-manager": "openapi-typescript ${DEPLOYMENT_MANAGER_URL:-http://localhost:3001}/documentation/json -o src/client/deployment-manager/schema.ts",
26
+ "generate:types:host-manager": "openapi-typescript ${HOST_MANAGER_URL:-http://localhost:3004}/swagger/json -o src/client/host-manager/schema.ts",
27
+ "generate:types:client-manager": "openapi-typescript ${CLIENT_MANAGER_URL:-http://localhost:3002}/swagger/json -o src/client/client-manager/schema.ts",
28
+ "generate:types": "pnpm generate:types:blockchain-indexer && pnpm generate:types:deployment-manager && pnpm generate:types:host-manager && pnpm generate:types:client-manager",
29
+ "generate:types:blockchain-indexer:dev": "openapi-typescript https://blockchain-indexer.k8s.dev.nos.ci/swagger/json -o src/client/blockchain-indexer/schema.ts",
30
+ "generate:types:blockchain-indexer:prd": "openapi-typescript https://blockchain-indexer.k8s.prd.nos.ci/swagger/json -o src/client/blockchain-indexer/schema.ts",
31
+ "generate:types:deployment-manager:dev": "openapi-typescript https://deployment-manager.k8s.dev.nos.ci/documentation/json -o src/client/deployment-manager/schema.ts",
32
+ "generate:types:deployment-manager:prd": "openapi-typescript https://deployment-manager.k8s.prd.nos.ci/documentation/json -o src/client/deployment-manager/schema.ts",
33
+ "generate:types:host-manager:dev": "openapi-typescript https://host-manager.k8s.dev.nos.ci/swagger/json -o src/client/host-manager/schema.ts",
34
+ "generate:types:host-manager:prd": "openapi-typescript https://host-manager.k8s.prd.nos.ci/swagger/json -o src/client/host-manager/schema.ts",
35
+ "generate:types:client-manager:dev": "openapi-typescript https://client-manager.k8s.dev.nos.ci/swagger/json -o src/client/client-manager/schema.ts",
36
+ "generate:types:client-manager:prd": "openapi-typescript https://client-manager.k8s.prd.nos.ci/swagger/json -o src/client/client-manager/schema.ts",
37
+ "generate:types:dev": "pnpm generate:types:blockchain-indexer:dev && pnpm generate:types:deployment-manager:dev && pnpm generate:types:host-manager:dev && pnpm generate:types:client-manager:dev",
38
+ "generate:types:prd": "pnpm generate:types:blockchain-indexer:prd && pnpm generate:types:deployment-manager:prd && pnpm generate:types:host-manager:prd && pnpm generate:types:client-manager:prd",
29
39
  "test": "vitest run",
30
40
  "test:watch": "vitest",
31
41
  "test:coverage": "vitest run --coverage",
@@ -54,5 +64,5 @@
54
64
  "engines": {
55
65
  "node": ">=20.18.0"
56
66
  },
57
- "gitHead": "1da5818229bc4480b4cf1e8697c0196ee9600b6b"
67
+ "gitHead": "55ade010b5408266af52912fefbf17f402d37997"
58
68
  }
@@ -1,31 +0,0 @@
1
- import { Client } from 'openapi-fetch';
2
- import type { NosanaNetwork, ApiKeyAuth, SignerAuth, CreateNosanaApiOptions } from '../types.js';
3
- export interface SignMessageExternalRequest {
4
- message: string;
5
- }
6
- export interface SignMessageExternalResponse {
7
- message: string;
8
- userAddress: string;
9
- signature: string;
10
- }
11
- export interface ClientManagerApi {
12
- '/auth/sign-message/external': {
13
- post: {
14
- requestBody: {
15
- content: {
16
- 'application/json': SignMessageExternalRequest;
17
- };
18
- };
19
- responses: {
20
- 200: {
21
- content: {
22
- 'application/json': SignMessageExternalResponse;
23
- };
24
- };
25
- };
26
- };
27
- };
28
- }
29
- export type ClientManagerClient = Client<ClientManagerApi>;
30
- export declare function createNosanaClientManagerApiClient(environment: NosanaNetwork, authParams: ApiKeyAuth | SignerAuth | undefined, options: CreateNosanaApiOptions | undefined): Client<ClientManagerApi, `${string}/${string}`>;
31
- //# sourceMappingURL=clientManagerClient.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"clientManagerClient.d.ts","sourceRoot":"","sources":["../../src/client/clientManagerClient.ts"],"names":[],"mappings":"AAAA,OAAqB,EAAE,MAAM,EAAmB,MAAM,eAAe,CAAC;AAItE,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,UAAU,EACV,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,6BAA6B,EAAE;QAC7B,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE,0BAA0B,CAAC;iBAChD,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,kBAAkB,EAAE,2BAA2B,CAAC;qBACjD,CAAC;iBACH,CAAC;aACH,CAAC;SACH,CAAC;KACH,CAAC;CACH;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE3D,wBAAgB,kCAAkC,CAChD,WAAW,EAAE,aAAa,EAC1B,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,EAC/C,OAAO,EAAE,sBAAsB,GAAG,SAAS,mDA4B5C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"clientManagerClient.js","sourceRoot":"","sources":["../../src/client/clientManagerClient.ts"],"names":[],"mappings":"AAAA,OAAO,YAAyC,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAyCrD,MAAM,UAAU,kCAAkC,CAChD,WAA0B,EAC1B,UAA+C,EAC/C,OAA2C;IAE3C,MAAM,OAAO,GACX,OAAO,EAAE,kBAAkB;QAC3B,aAAa,CAAC,WAAW,CAAC,CAAC,kBAAkB,CAAC;IAEhD,MAAM,cAAc,GAAe;QACjC,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE;YACzB,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,UAAU,EAAE,CAAC,CAAC;QAC/D,CAAC;KACF,CAAC;IAEF,MAAM,MAAM,GAAG,YAAY,CAAmB;QAC5C,OAAO;QACP,GAAG,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpE,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}