@hashgraphonline/standards-sdk 0.1.177 → 0.1.179

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 (140) hide show
  1. package/dist/browser/hcs-11/client.d.ts +30 -30
  2. package/dist/browser/hcs-21/types.d.ts +23 -23
  3. package/dist/browser/inscribe/inscriber.d.ts.map +1 -1
  4. package/dist/browser/services/registry-broker/client/base-client.d.ts +30 -1
  5. package/dist/browser/services/registry-broker/client/base-client.d.ts.map +1 -1
  6. package/dist/browser/services/registry-broker/client/credits.d.ts +6 -1
  7. package/dist/browser/services/registry-broker/client/credits.d.ts.map +1 -1
  8. package/dist/browser/services/registry-broker/client/guard.d.ts +27 -0
  9. package/dist/browser/services/registry-broker/client/guard.d.ts.map +1 -0
  10. package/dist/browser/services/registry-broker/client/skills.d.ts.map +1 -1
  11. package/dist/browser/services/registry-broker/schemas.d.ts +2079 -260
  12. package/dist/browser/services/registry-broker/schemas.d.ts.map +1 -1
  13. package/dist/browser/services/registry-broker/types.d.ts +89 -1
  14. package/dist/browser/services/registry-broker/types.d.ts.map +1 -1
  15. package/dist/browser/standards-sdk.browser.js +351 -6
  16. package/dist/browser/standards-sdk.browser.js.map +1 -1
  17. package/dist/browser/utils/dynamic-import.d.ts.map +1 -1
  18. package/dist/browser-root/hcs-11/client.d.ts +30 -30
  19. package/dist/browser-root/hcs-21/types.d.ts +23 -23
  20. package/dist/browser-root/inscribe/inscriber.d.ts.map +1 -1
  21. package/dist/browser-root/services/registry-broker/client/base-client.d.ts +30 -1
  22. package/dist/browser-root/services/registry-broker/client/base-client.d.ts.map +1 -1
  23. package/dist/browser-root/services/registry-broker/client/credits.d.ts +6 -1
  24. package/dist/browser-root/services/registry-broker/client/credits.d.ts.map +1 -1
  25. package/dist/browser-root/services/registry-broker/client/guard.d.ts +27 -0
  26. package/dist/browser-root/services/registry-broker/client/guard.d.ts.map +1 -0
  27. package/dist/browser-root/services/registry-broker/client/skills.d.ts.map +1 -1
  28. package/dist/browser-root/services/registry-broker/schemas.d.ts +2079 -260
  29. package/dist/browser-root/services/registry-broker/schemas.d.ts.map +1 -1
  30. package/dist/browser-root/services/registry-broker/types.d.ts +89 -1
  31. package/dist/browser-root/services/registry-broker/types.d.ts.map +1 -1
  32. package/dist/browser-root/standards-sdk.root-browser.js +800 -131
  33. package/dist/browser-root/standards-sdk.root-browser.js.map +1 -1
  34. package/dist/browser-root/utils/dynamic-import.d.ts.map +1 -1
  35. package/dist/cjs/hcs-11/client.d.ts +30 -30
  36. package/dist/cjs/inscribe/inscriber.d.ts.map +1 -1
  37. package/dist/cjs/services/registry-broker/client/base-client.d.ts +30 -1
  38. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
  39. package/dist/cjs/services/registry-broker/client/credits.d.ts +6 -1
  40. package/dist/cjs/services/registry-broker/client/credits.d.ts.map +1 -1
  41. package/dist/cjs/services/registry-broker/client/guard.d.ts +27 -0
  42. package/dist/cjs/services/registry-broker/client/guard.d.ts.map +1 -0
  43. package/dist/cjs/services/registry-broker/client/skills.d.ts.map +1 -1
  44. package/dist/cjs/services/registry-broker/schemas.d.ts +1827 -8
  45. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  46. package/dist/cjs/services/registry-broker/types.d.ts +89 -1
  47. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  48. package/dist/cjs/standards-sdk.cjs +2 -2
  49. package/dist/cjs/standards-sdk.cjs.map +1 -1
  50. package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
  51. package/dist/es/hcs-11/client.d.ts +30 -30
  52. package/dist/es/inscribe/inscriber.d.ts.map +1 -1
  53. package/dist/es/services/registry-broker/client/base-client.d.ts +30 -1
  54. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
  55. package/dist/es/services/registry-broker/client/credits.d.ts +6 -1
  56. package/dist/es/services/registry-broker/client/credits.d.ts.map +1 -1
  57. package/dist/es/services/registry-broker/client/guard.d.ts +27 -0
  58. package/dist/es/services/registry-broker/client/guard.d.ts.map +1 -0
  59. package/dist/es/services/registry-broker/client/skills.d.ts.map +1 -1
  60. package/dist/es/services/registry-broker/schemas.d.ts +1827 -8
  61. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  62. package/dist/es/services/registry-broker/types.d.ts +89 -1
  63. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  64. package/dist/es/standards-sdk.es116.js +1 -1
  65. package/dist/es/standards-sdk.es121.js +1 -1
  66. package/dist/es/standards-sdk.es127.js +1 -1
  67. package/dist/es/standards-sdk.es128.js +5 -5
  68. package/dist/es/standards-sdk.es138.js +1 -1
  69. package/dist/es/standards-sdk.es139.js +1 -1
  70. package/dist/es/standards-sdk.es140.js +5 -5
  71. package/dist/es/standards-sdk.es142.js +9 -6
  72. package/dist/es/standards-sdk.es142.js.map +1 -1
  73. package/dist/es/standards-sdk.es143.js +1 -1
  74. package/dist/es/standards-sdk.es145.js +89 -7
  75. package/dist/es/standards-sdk.es145.js.map +1 -1
  76. package/dist/es/standards-sdk.es147.js +2 -2
  77. package/dist/es/standards-sdk.es148.js +1 -1
  78. package/dist/es/standards-sdk.es16.js +1 -1
  79. package/dist/es/standards-sdk.es160.js +2147 -12461
  80. package/dist/es/standards-sdk.es160.js.map +1 -1
  81. package/dist/es/standards-sdk.es161.js +12461 -1773
  82. package/dist/es/standards-sdk.es161.js.map +1 -1
  83. package/dist/es/standards-sdk.es162.js +670 -15
  84. package/dist/es/standards-sdk.es162.js.map +1 -1
  85. package/dist/es/standards-sdk.es163.js +97 -158
  86. package/dist/es/standards-sdk.es163.js.map +1 -1
  87. package/dist/es/standards-sdk.es164.js +65 -314
  88. package/dist/es/standards-sdk.es164.js.map +1 -1
  89. package/dist/es/standards-sdk.es165.js +120 -294
  90. package/dist/es/standards-sdk.es165.js.map +1 -1
  91. package/dist/es/standards-sdk.es166.js +191 -322
  92. package/dist/es/standards-sdk.es166.js.map +1 -1
  93. package/dist/es/standards-sdk.es167.js +294 -279
  94. package/dist/es/standards-sdk.es167.js.map +1 -1
  95. package/dist/es/standards-sdk.es168.js +440 -63
  96. package/dist/es/standards-sdk.es168.js.map +1 -1
  97. package/dist/es/standards-sdk.es169.js +315 -742
  98. package/dist/es/standards-sdk.es169.js.map +1 -1
  99. package/dist/es/standards-sdk.es170.js +69 -49
  100. package/dist/es/standards-sdk.es170.js.map +1 -1
  101. package/dist/es/standards-sdk.es171.js +47 -95
  102. package/dist/es/standards-sdk.es171.js.map +1 -1
  103. package/dist/es/standards-sdk.es174.js +15 -71
  104. package/dist/es/standards-sdk.es174.js.map +1 -1
  105. package/dist/es/standards-sdk.es175.js +1 -1
  106. package/dist/es/standards-sdk.es176.js +2 -2
  107. package/dist/es/standards-sdk.es178.js +2 -2
  108. package/dist/es/standards-sdk.es179.js +2 -2
  109. package/dist/es/standards-sdk.es18.js +2 -2
  110. package/dist/es/standards-sdk.es180.js +1 -1
  111. package/dist/es/standards-sdk.es181.js +61 -3
  112. package/dist/es/standards-sdk.es181.js.map +1 -1
  113. package/dist/es/standards-sdk.es182.js +284 -167
  114. package/dist/es/standards-sdk.es182.js.map +1 -1
  115. package/dist/es/standards-sdk.es183.js +156 -206
  116. package/dist/es/standards-sdk.es183.js.map +1 -1
  117. package/dist/es/standards-sdk.es184.js +219 -223
  118. package/dist/es/standards-sdk.es184.js.map +1 -1
  119. package/dist/es/standards-sdk.es185.js +242 -0
  120. package/dist/es/standards-sdk.es185.js.map +1 -0
  121. package/dist/es/standards-sdk.es19.js +2 -2
  122. package/dist/es/standards-sdk.es27.js +2 -2
  123. package/dist/es/standards-sdk.es30.js +1 -1
  124. package/dist/es/standards-sdk.es31.js +1 -1
  125. package/dist/es/standards-sdk.es35.js +2 -2
  126. package/dist/es/standards-sdk.es36.js +1 -1
  127. package/dist/es/standards-sdk.es37.js +1 -1
  128. package/dist/es/standards-sdk.es56.js +1 -1
  129. package/dist/es/standards-sdk.es59.js +1 -1
  130. package/dist/es/standards-sdk.es60.js +1 -1
  131. package/dist/es/standards-sdk.es65.js +1 -1
  132. package/dist/es/standards-sdk.es66.js +1 -1
  133. package/dist/es/standards-sdk.es67.js +1 -1
  134. package/dist/es/standards-sdk.es69.js +1 -1
  135. package/dist/es/standards-sdk.es71.js +1 -1
  136. package/dist/es/standards-sdk.es72.js +1 -1
  137. package/dist/es/standards-sdk.es75.js +1 -1
  138. package/dist/es/standards-sdk.es84.js +1 -1
  139. package/dist/es/utils/dynamic-import.d.ts.map +1 -1
  140. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es174.js","sources":["../../src/inscribe/inscription-cost.ts"],"sourcesContent":["import BigNumber from 'bignumber.js';\nimport { Transaction } from '../services/types';\nimport { QuoteResult, InscriptionCostSummary } from './types';\n\nconst TINYBAR_DIVISOR = 100000000;\n\ntype MirrorNodeTransactionLike = Pick<\n Transaction,\n 'charged_tx_fee' | 'transfers'\n>;\n\ntype CostTransfer = QuoteResult['breakdown']['transfers'][number];\n\nfunction safePositiveTransfers(\n transfers: Transaction['transfers'] | undefined,\n): Array<{ account: string; amountTinybar: number }> {\n if (!Array.isArray(transfers)) {\n return [];\n }\n\n return transfers\n .filter(\n transfer => typeof transfer.amount === 'number' && transfer.amount > 0,\n )\n .map(transfer => ({\n account: transfer.account,\n amountTinybar: transfer.amount,\n }));\n}\n\nfunction resolvePayerDebitTinybar(\n transfers: Transaction['transfers'] | undefined,\n payerAccountId: string,\n): number | null {\n if (!Array.isArray(transfers)) {\n return null;\n }\n\n const payerDebit = transfers.find(\n transfer =>\n transfer.account === payerAccountId &&\n typeof transfer.amount === 'number' &&\n transfer.amount < 0,\n );\n\n if (!payerDebit || typeof payerDebit.amount !== 'number') {\n return null;\n }\n\n return Math.abs(payerDebit.amount);\n}\n\nfunction toHbarString(tinybar: number): string {\n return new BigNumber(tinybar).dividedBy(TINYBAR_DIVISOR).toFixed();\n}\n\nfunction fallbackFeeTinybar(chargedTxFee: unknown): number | null {\n if (typeof chargedTxFee !== 'number' || !Number.isFinite(chargedTxFee)) {\n return null;\n }\n if (chargedTxFee <= 0) {\n return null;\n }\n return chargedTxFee;\n}\n\nexport function computeInscriptionCostSummary(params: {\n txn: MirrorNodeTransactionLike;\n payerAccountId: string;\n}): { summary: InscriptionCostSummary; totalTinybar: number } | null {\n const { txn, payerAccountId } = params;\n\n const positiveTransfers = safePositiveTransfers(txn.transfers);\n const payerDebitTinybar = resolvePayerDebitTinybar(\n txn.transfers,\n payerAccountId,\n );\n\n const transferOutflowTinybar =\n payerDebitTinybar ??\n positiveTransfers.reduce((sum, t) => sum + t.amountTinybar, 0);\n const chargedFeeTinybar = fallbackFeeTinybar(txn.charged_tx_fee);\n\n const resolvedTotalTinybar =\n transferOutflowTinybar > 0 ? transferOutflowTinybar : chargedFeeTinybar;\n\n if (!resolvedTotalTinybar || resolvedTotalTinybar <= 0) {\n return null;\n }\n\n const totalCostHbar = toHbarString(resolvedTotalTinybar);\n\n const breakdownTransfers: CostTransfer[] =\n positiveTransfers.length > 0\n ? positiveTransfers.map(transfer => ({\n to: transfer.account,\n amount: toHbarString(transfer.amountTinybar),\n description: `HBAR transfer from ${payerAccountId}`,\n }))\n : [\n {\n to: 'Hedera network',\n amount: totalCostHbar,\n description: `Transaction fee debited from ${payerAccountId}`,\n },\n ];\n\n return {\n totalTinybar: resolvedTotalTinybar,\n summary: {\n totalCostHbar,\n breakdown: {\n transfers: breakdownTransfers,\n },\n },\n };\n}\n"],"names":[],"mappings":";AAIA,MAAM,kBAAkB;AASxB,SAAS,sBACP,WACmD;AACnD,MAAI,CAAC,MAAM,QAAQ,SAAS,GAAG;AAC7B,WAAO,CAAA;AAAA,EACT;AAEA,SAAO,UACJ;AAAA,IACC,cAAY,OAAO,SAAS,WAAW,YAAY,SAAS,SAAS;AAAA,EAAA,EAEtE,IAAI,CAAA,cAAa;AAAA,IAChB,SAAS,SAAS;AAAA,IAClB,eAAe,SAAS;AAAA,EAAA,EACxB;AACN;AAEA,SAAS,yBACP,WACA,gBACe;AACf,MAAI,CAAC,MAAM,QAAQ,SAAS,GAAG;AAC7B,WAAO;AAAA,EACT;AAEA,QAAM,aAAa,UAAU;AAAA,IAC3B,CAAA,aACE,SAAS,YAAY,kBACrB,OAAO,SAAS,WAAW,YAC3B,SAAS,SAAS;AAAA,EAAA;AAGtB,MAAI,CAAC,cAAc,OAAO,WAAW,WAAW,UAAU;AACxD,WAAO;AAAA,EACT;AAEA,SAAO,KAAK,IAAI,WAAW,MAAM;AACnC;AAEA,SAAS,aAAa,SAAyB;AAC7C,SAAO,IAAI,UAAU,OAAO,EAAE,UAAU,eAAe,EAAE,QAAA;AAC3D;AAEA,SAAS,mBAAmB,cAAsC;AAChE,MAAI,OAAO,iBAAiB,YAAY,CAAC,OAAO,SAAS,YAAY,GAAG;AACtE,WAAO;AAAA,EACT;AACA,MAAI,gBAAgB,GAAG;AACrB,WAAO;AAAA,EACT;AACA,SAAO;AACT;AAEO,SAAS,8BAA8B,QAGuB;AACnE,QAAM,EAAE,KAAK,eAAA,IAAmB;AAEhC,QAAM,oBAAoB,sBAAsB,IAAI,SAAS;AAC7D,QAAM,oBAAoB;AAAA,IACxB,IAAI;AAAA,IACJ;AAAA,EAAA;AAGF,QAAM,yBACJ,qBACA,kBAAkB,OAAO,CAAC,KAAK,MAAM,MAAM,EAAE,eAAe,CAAC;AAC/D,QAAM,oBAAoB,mBAAmB,IAAI,cAAc;AAE/D,QAAM,uBACJ,yBAAyB,IAAI,yBAAyB;AAExD,MAAI,CAAC,wBAAwB,wBAAwB,GAAG;AACtD,WAAO;AAAA,EACT;AAEA,QAAM,gBAAgB,aAAa,oBAAoB;AAEvD,QAAM,qBACJ,kBAAkB,SAAS,IACvB,kBAAkB,IAAI,CAAA,cAAa;AAAA,IACjC,IAAI,SAAS;AAAA,IACb,QAAQ,aAAa,SAAS,aAAa;AAAA,IAC3C,aAAa,sBAAsB,cAAc;AAAA,EAAA,EACjD,IACF;AAAA,IACE;AAAA,MACE,IAAI;AAAA,MACJ,QAAQ;AAAA,MACR,aAAa,gCAAgC,cAAc;AAAA,IAAA;AAAA,EAC7D;AAGR,SAAO;AAAA,IACL,cAAc;AAAA,IACd,SAAS;AAAA,MACP;AAAA,MACA,WAAW;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,IACb;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"standards-sdk.es174.js","sources":["../../src/hcs-5/base-client.ts"],"sourcesContent":["import { Logger, ILogger } from '../utils/logger';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { HCS5ClientConfig } from './types';\nimport { NetworkType } from '../utils/types';\n\n/**\n * Base client for HCS-5 operations\n */\nexport abstract class HCS5BaseClient {\n protected logger: ILogger;\n protected mirrorNode: HederaMirrorNode;\n protected network: NetworkType;\n\n /**\n * Create a new HCS-5 base client\n */\n constructor(config: HCS5ClientConfig) {\n this.network = config.network;\n this.logger =\n config.logger ||\n Logger.getInstance({\n level: config.logLevel || 'info',\n module: 'HCS5Client',\n silent: config.silent,\n });\n\n this.mirrorNode = new HederaMirrorNode(this.network, this.logger);\n }\n}\n"],"names":[],"mappings":";;AAQO,MAAe,eAAe;AAAA;AAAA;AAAA;AAAA,EAQnC,YAAY,QAA0B;AACpC,SAAK,UAAU,OAAO;AACtB,SAAK,SACH,OAAO,UACP,OAAO,YAAY;AAAA,MACjB,OAAO,OAAO,YAAY;AAAA,MAC1B,QAAQ;AAAA,MACR,QAAQ,OAAO;AAAA,IAAA,CAChB;AAEH,SAAK,aAAa,IAAI,iBAAiB,KAAK,SAAS,KAAK,MAAM;AAAA,EAClE;AACF;"}
@@ -1,5 +1,5 @@
1
1
  import { Buffer } from "buffer";
2
- import { chatHistorySnapshotResponseSchema } from "./standards-sdk.es161.js";
2
+ import { chatHistorySnapshotResponseSchema } from "./standards-sdk.es160.js";
3
3
  function identitiesMatch(a, b) {
4
4
  if (!a && !b) {
5
5
  return true;
@@ -1,5 +1,5 @@
1
- import { createSessionResponseSchema, chatHistoryCompactionResponseSchema, sessionEncryptionStatusResponseSchema, encryptionHandshakeResponseSchema, sendMessageResponseSchema } from "./standards-sdk.es161.js";
2
- import { serialiseAuthConfig, toJsonObject } from "./standards-sdk.es184.js";
1
+ import { createSessionResponseSchema, chatHistoryCompactionResponseSchema, sessionEncryptionStatusResponseSchema, encryptionHandshakeResponseSchema, sendMessageResponseSchema } from "./standards-sdk.es160.js";
2
+ import { serialiseAuthConfig, toJsonObject } from "./standards-sdk.es185.js";
3
3
  import { EncryptionUnavailableError } from "./standards-sdk.es177.js";
4
4
  function createChatApi(client, encryptedManager) {
5
5
  return {
@@ -1,7 +1,7 @@
1
1
  import { Buffer } from "buffer";
2
2
  import { secp256k1 } from "@noble/curves/secp256k1.js";
3
- import { registerEncryptionKeyResponseSchema } from "./standards-sdk.es161.js";
4
- import { optionalImport } from "./standards-sdk.es171.js";
3
+ import { registerEncryptionKeyResponseSchema } from "./standards-sdk.es160.js";
4
+ import { optionalImport } from "./standards-sdk.es163.js";
5
5
  const getFs = async () => {
6
6
  const fsModule = await optionalImport("node:fs") ?? await optionalImport("fs");
7
7
  if (fsModule && typeof fsModule.existsSync === "function" && typeof fsModule.readFileSync === "function" && typeof fsModule.writeFileSync === "function" && typeof fsModule.appendFileSync === "function") {
@@ -1,5 +1,5 @@
1
- import { adaptersResponseSchema, adapterDetailsResponseSchema, adapterRegistryCategoriesResponseSchema, adapterRegistryAdaptersResponseSchema, adapterRegistryCreateCategoryResponseSchema, adapterRegistrySubmitAdapterAcceptedResponseSchema, adapterRegistrySubmissionStatusResponseSchema } from "./standards-sdk.es161.js";
2
- import { toJsonObject } from "./standards-sdk.es184.js";
1
+ import { adaptersResponseSchema, adapterDetailsResponseSchema, adapterRegistryCategoriesResponseSchema, adapterRegistryAdaptersResponseSchema, adapterRegistryCreateCategoryResponseSchema, adapterRegistrySubmitAdapterAcceptedResponseSchema, adapterRegistrySubmissionStatusResponseSchema } from "./standards-sdk.es160.js";
2
+ import { toJsonObject } from "./standards-sdk.es185.js";
3
3
  async function adapters(client) {
4
4
  const raw = await client.requestJson("/adapters", {
5
5
  method: "GET"
@@ -1,6 +1,6 @@
1
1
  import { Client, PrivateKey, AccountCreateTransaction, Hbar, CustomFixedFee, AccountId, TokenId, KeyList, TopicMessageSubmitTransaction, Transaction, ScheduleCreateTransaction, Timestamp } from "@hashgraph/sdk";
2
2
  import { AccountCreationError, TopicCreationError, ConnectionConfirmationError, PayloadSizeError } from "./standards-sdk.es17.js";
3
- import { InscriptionSDK } from "./standards-sdk.es160.js";
3
+ import { InscriptionSDK } from "./standards-sdk.es161.js";
4
4
  import { Logger } from "./standards-sdk.es123.js";
5
5
  import { accountIdsToExemptKeys } from "./standards-sdk.es125.js";
6
6
  import { ProgressReporter } from "./standards-sdk.es126.js";
@@ -9,7 +9,7 @@ import "@hashgraph/proto";
9
9
  import "buffer";
10
10
  import "@noble/curves/secp256k1.js";
11
11
  import "zod";
12
- import "./standards-sdk.es161.js";
12
+ import "./standards-sdk.es160.js";
13
13
  import "./standards-sdk.es149.js";
14
14
  import "ethers";
15
15
  import "./standards-sdk.es140.js";
@@ -1,4 +1,4 @@
1
- import { registerStatusResponseSchema, moltbookOwnerRegistrationUpdateResponseSchema, verificationStatusResponseSchema, verificationChallengeResponseSchema, verificationChallengeDetailsResponseSchema, verificationVerifyResponseSchema, verificationOwnershipResponseSchema, verificationVerifySenderResponseSchema, verificationDnsStatusResponseSchema } from "./standards-sdk.es161.js";
1
+ import { registerStatusResponseSchema, moltbookOwnerRegistrationUpdateResponseSchema, verificationStatusResponseSchema, verificationChallengeResponseSchema, verificationChallengeDetailsResponseSchema, verificationVerifyResponseSchema, verificationOwnershipResponseSchema, verificationVerifySenderResponseSchema, verificationDnsStatusResponseSchema } from "./standards-sdk.es160.js";
2
2
  async function getVerificationStatus(client, uaid) {
3
3
  const raw = await client.requestJson(
4
4
  `/verification/status/${encodeURIComponent(uaid)}`,
@@ -1,6 +1,61 @@
1
- import { creditPurchaseResponseSchema, x402MinimumsResponseSchema, x402CreditPurchaseResponseSchema } from "./standards-sdk.es161.js";
2
- import { normalizeHexPrivateKey } from "./standards-sdk.es184.js";
3
- import { optionalImport } from "./standards-sdk.es171.js";
1
+ import { creditBalanceResponseSchema, creditProvidersResponseSchema, hbarPurchaseIntentResponseSchema, creditPurchaseResponseSchema, x402MinimumsResponseSchema, x402CreditPurchaseResponseSchema } from "./standards-sdk.es160.js";
2
+ import { normalizeHexPrivateKey } from "./standards-sdk.es185.js";
3
+ import { optionalImport } from "./standards-sdk.es163.js";
4
+ async function getCreditsBalance(client, params = {}) {
5
+ const query = new URLSearchParams();
6
+ const normalizedAccountId = params.accountId?.trim();
7
+ if (normalizedAccountId) {
8
+ query.set("accountId", normalizedAccountId);
9
+ }
10
+ const suffix = query.size > 0 ? `?${query.toString()}` : "";
11
+ const raw = await client.requestJson(`/credits/balance${suffix}`, {
12
+ method: "GET"
13
+ });
14
+ return client.parseWithSchema(
15
+ raw,
16
+ creditBalanceResponseSchema,
17
+ "credit balance response"
18
+ );
19
+ }
20
+ async function getCreditProviders(client) {
21
+ const raw = await client.requestJson("/credits/providers", {
22
+ method: "GET"
23
+ });
24
+ return client.parseWithSchema(
25
+ raw,
26
+ creditProvidersResponseSchema,
27
+ "credit providers response"
28
+ );
29
+ }
30
+ async function createHbarPurchaseIntent(client, payload) {
31
+ const body = {};
32
+ const normalizedAccountId = payload.accountId?.trim();
33
+ if (normalizedAccountId) {
34
+ body.accountId = normalizedAccountId;
35
+ }
36
+ if (payload.credits !== void 0) {
37
+ body.credits = payload.credits;
38
+ }
39
+ if (payload.hbarAmount !== void 0) {
40
+ body.hbarAmount = payload.hbarAmount;
41
+ }
42
+ if (payload.memo?.trim()) {
43
+ body.memo = payload.memo.trim();
44
+ }
45
+ const raw = await client.requestJson(
46
+ "/credits/payments/hbar/intent",
47
+ {
48
+ method: "POST",
49
+ headers: { "content-type": "application/json" },
50
+ body
51
+ }
52
+ );
53
+ return client.parseWithSchema(
54
+ raw,
55
+ hbarPurchaseIntentResponseSchema,
56
+ "hbar purchase intent response"
57
+ );
58
+ }
4
59
  async function loadX402Dependencies(client) {
5
60
  const [{ default: axios }, x402Axios, x402Types] = await Promise.all([
6
61
  import("axios"),
@@ -122,6 +177,9 @@ async function buyCreditsWithX402(client, params) {
122
177
  }
123
178
  export {
124
179
  buyCreditsWithX402,
180
+ createHbarPurchaseIntent,
181
+ getCreditProviders,
182
+ getCreditsBalance,
125
183
  getX402Minimums,
126
184
  purchaseCreditsWithHbar,
127
185
  purchaseCreditsWithX402
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es181.js","sources":["../../src/services/registry-broker/client/credits.ts"],"sourcesContent":["import type {\n CreditPurchaseResponse,\n JsonObject,\n JsonValue,\n X402CreditPurchaseResponse,\n X402MinimumsResponse,\n} from '../types';\nimport {\n creditPurchaseResponseSchema,\n x402CreditPurchaseResponseSchema,\n x402MinimumsResponseSchema,\n} from '../schemas';\nimport type { RegistryBrokerClient } from './base-client';\nimport { normalizeHexPrivateKey, type X402NetworkId } from './utils';\nimport { optionalImport } from '../../../utils/dynamic-import';\n\ntype PaymentHeaders = Record<string, string | string[] | undefined>;\ntype PaymentClient = {\n post: (\n url: string,\n body: JsonObject,\n ) => Promise<{ data: JsonValue; headers?: PaymentHeaders }>;\n};\n\nexport interface PurchaseCreditsWithX402Params {\n accountId: string;\n credits: number;\n usdAmount?: number;\n description?: string;\n metadata?: JsonObject;\n walletClient: object;\n}\n\nexport interface BuyCreditsWithX402Params {\n accountId: string;\n credits: number;\n usdAmount?: number;\n description?: string;\n metadata?: JsonObject;\n evmPrivateKey: string;\n network?: X402NetworkId;\n rpcUrl?: string;\n}\n\nexport type X402PurchaseResult = X402CreditPurchaseResponse & {\n paymentResponseHeader?: string;\n paymentResponse?: unknown;\n};\n\ntype LoadX402DependenciesResult = {\n createPaymentClient: (walletClient: object) => PaymentClient;\n decodePaymentResponse: (value: string) => unknown;\n createX402Signer: (\n network: X402NetworkId,\n privateKey: `0x${string}`,\n ) => Promise<object>;\n};\n\nasync function loadX402Dependencies(\n client: RegistryBrokerClient,\n): Promise<LoadX402DependenciesResult> {\n type X402AxiosModule = {\n withPaymentInterceptor: (client: unknown, walletClient: object) => unknown;\n decodeXPaymentResponse: (value: string) => unknown;\n };\n type X402TypesModule = {\n createSigner: (\n network: X402NetworkId,\n privateKey: `0x${string}`,\n ) => Promise<object>;\n };\n\n const [{ default: axios }, x402Axios, x402Types] = await Promise.all([\n import('axios'),\n optionalImport<X402AxiosModule>('x402-axios'),\n optionalImport<X402TypesModule>('x402/types'),\n ]);\n\n if (!x402Axios || !x402Types) {\n throw new Error(\n 'x402-axios and x402/types are required for X402 flows. Install them to enable ledger payments.',\n );\n }\n\n const withPaymentInterceptor = x402Axios.withPaymentInterceptor;\n const decodePaymentResponse = x402Axios.decodeXPaymentResponse;\n const createX402Signer = x402Types.createSigner;\n\n const createPaymentClient = (walletClient: object): PaymentClient => {\n const axiosClient = axios.create({\n baseURL: client.baseUrl,\n headers: {\n ...client.getDefaultHeaders(),\n 'content-type': 'application/json',\n },\n });\n const paymentClient = withPaymentInterceptor(axiosClient, walletClient);\n return paymentClient as PaymentClient;\n };\n\n return { createPaymentClient, decodePaymentResponse, createX402Signer };\n}\n\nfunction calculateHbarAmountParam(hbarAmount: number): number {\n const tinybars = Math.ceil(hbarAmount * 1e8);\n if (tinybars <= 0) {\n throw new Error('Calculated purchase amount must be positive');\n }\n return tinybars / 1e8;\n}\n\nexport async function purchaseCreditsWithHbar(\n client: RegistryBrokerClient,\n params: {\n accountId: string;\n privateKey: string;\n hbarAmount: number;\n memo?: string;\n metadata?: JsonObject;\n },\n): Promise<CreditPurchaseResponse> {\n const body: JsonObject = {\n accountId: params.accountId,\n payerKey: params.privateKey,\n hbarAmount: calculateHbarAmountParam(params.hbarAmount),\n };\n\n if (params.memo) {\n body.memo = params.memo;\n }\n\n if (params.metadata) {\n body.metadata = params.metadata;\n }\n\n const raw = await client.requestJson<JsonValue>('/credits/purchase', {\n method: 'POST',\n headers: { 'content-type': 'application/json' },\n body,\n });\n\n return client.parseWithSchema(\n raw,\n creditPurchaseResponseSchema,\n 'credit purchase response',\n );\n}\n\nexport async function getX402Minimums(\n client: RegistryBrokerClient,\n): Promise<X402MinimumsResponse> {\n const raw = await client.requestJson<JsonValue>(\n '/credits/purchase/x402/minimums',\n { method: 'GET' },\n );\n return client.parseWithSchema(\n raw,\n x402MinimumsResponseSchema,\n 'x402 minimums response',\n );\n}\n\nexport async function purchaseCreditsWithX402(\n client: RegistryBrokerClient,\n params: PurchaseCreditsWithX402Params,\n): Promise<X402PurchaseResult> {\n const { createPaymentClient, decodePaymentResponse } =\n await loadX402Dependencies(client);\n\n if (!Number.isFinite(params.credits) || params.credits <= 0) {\n throw new Error('credits must be a positive number');\n }\n if (\n params.usdAmount !== undefined &&\n (!Number.isFinite(params.usdAmount) || params.usdAmount <= 0)\n ) {\n throw new Error('usdAmount must be a positive number when provided');\n }\n\n const body: JsonObject = {\n accountId: params.accountId,\n credits: params.credits,\n };\n\n if (params.usdAmount !== undefined) {\n body.usdAmount = params.usdAmount;\n }\n if (params.description) {\n body.description = params.description;\n }\n if (params.metadata) {\n body.metadata = params.metadata;\n }\n\n const paymentClient = createPaymentClient(params.walletClient);\n\n const response = await paymentClient.post('/credits/purchase/x402', body);\n\n const parsed = client.parseWithSchema(\n response.data,\n x402CreditPurchaseResponseSchema,\n 'x402 credit purchase response',\n );\n\n const responseHeaders = response.headers ?? {};\n const paymentHeader =\n typeof responseHeaders['x-payment-response'] === 'string'\n ? responseHeaders['x-payment-response']\n : undefined;\n const decodedPayment =\n paymentHeader !== undefined\n ? decodePaymentResponse(paymentHeader)\n : undefined;\n\n return {\n ...parsed,\n paymentResponseHeader: paymentHeader,\n paymentResponse: decodedPayment,\n };\n}\n\nexport async function buyCreditsWithX402(\n client: RegistryBrokerClient,\n params: BuyCreditsWithX402Params,\n): Promise<X402PurchaseResult> {\n const network: X402NetworkId = params.network ?? 'base';\n const { createX402Signer } = await loadX402Dependencies(client);\n const normalizedKey = normalizeHexPrivateKey(params.evmPrivateKey);\n const walletClient = await createX402Signer(network, normalizedKey);\n\n return purchaseCreditsWithX402(client, {\n accountId: params.accountId,\n credits: params.credits,\n usdAmount: params.usdAmount,\n description: params.description,\n metadata: params.metadata,\n walletClient,\n });\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es181.js","sources":["../../src/services/registry-broker/client/credits.ts"],"sourcesContent":["import type {\n CreditBalanceResponse,\n CreditProvidersResponse,\n CreditPurchaseResponse,\n HbarPurchaseIntentRequest,\n HbarPurchaseIntentResponse,\n JsonObject,\n JsonValue,\n X402CreditPurchaseResponse,\n X402MinimumsResponse,\n} from '../types';\nimport {\n creditBalanceResponseSchema,\n creditProvidersResponseSchema,\n creditPurchaseResponseSchema,\n hbarPurchaseIntentResponseSchema,\n x402CreditPurchaseResponseSchema,\n x402MinimumsResponseSchema,\n} from '../schemas';\nimport type { RegistryBrokerClient } from './base-client';\nimport { normalizeHexPrivateKey, type X402NetworkId } from './utils';\nimport { optionalImport } from '../../../utils/dynamic-import';\n\ntype PaymentHeaders = Record<string, string | string[] | undefined>;\ntype PaymentClient = {\n post: (\n url: string,\n body: JsonObject,\n ) => Promise<{ data: JsonValue; headers?: PaymentHeaders }>;\n};\n\nexport interface PurchaseCreditsWithX402Params {\n accountId: string;\n credits: number;\n usdAmount?: number;\n description?: string;\n metadata?: JsonObject;\n walletClient: object;\n}\n\nexport interface BuyCreditsWithX402Params {\n accountId: string;\n credits: number;\n usdAmount?: number;\n description?: string;\n metadata?: JsonObject;\n evmPrivateKey: string;\n network?: X402NetworkId;\n rpcUrl?: string;\n}\n\nexport type X402PurchaseResult = X402CreditPurchaseResponse & {\n paymentResponseHeader?: string;\n paymentResponse?: unknown;\n};\n\nexport async function getCreditsBalance(\n client: RegistryBrokerClient,\n params: { accountId?: string } = {},\n): Promise<CreditBalanceResponse> {\n const query = new URLSearchParams();\n const normalizedAccountId = params.accountId?.trim();\n if (normalizedAccountId) {\n query.set('accountId', normalizedAccountId);\n }\n const suffix = query.size > 0 ? `?${query.toString()}` : '';\n const raw = await client.requestJson<JsonValue>(`/credits/balance${suffix}`, {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n creditBalanceResponseSchema,\n 'credit balance response',\n );\n}\n\nexport async function getCreditProviders(\n client: RegistryBrokerClient,\n): Promise<CreditProvidersResponse> {\n const raw = await client.requestJson<JsonValue>('/credits/providers', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n creditProvidersResponseSchema,\n 'credit providers response',\n );\n}\n\nexport async function createHbarPurchaseIntent(\n client: RegistryBrokerClient,\n payload: HbarPurchaseIntentRequest,\n): Promise<HbarPurchaseIntentResponse> {\n const body: JsonObject = {};\n const normalizedAccountId = payload.accountId?.trim();\n if (normalizedAccountId) {\n body.accountId = normalizedAccountId;\n }\n if (payload.credits !== undefined) {\n body.credits = payload.credits;\n }\n if (payload.hbarAmount !== undefined) {\n body.hbarAmount = payload.hbarAmount;\n }\n if (payload.memo?.trim()) {\n body.memo = payload.memo.trim();\n }\n\n const raw = await client.requestJson<JsonValue>(\n '/credits/payments/hbar/intent',\n {\n method: 'POST',\n headers: { 'content-type': 'application/json' },\n body,\n },\n );\n return client.parseWithSchema(\n raw,\n hbarPurchaseIntentResponseSchema,\n 'hbar purchase intent response',\n );\n}\n\ntype LoadX402DependenciesResult = {\n createPaymentClient: (walletClient: object) => PaymentClient;\n decodePaymentResponse: (value: string) => unknown;\n createX402Signer: (\n network: X402NetworkId,\n privateKey: `0x${string}`,\n ) => Promise<object>;\n};\n\nasync function loadX402Dependencies(\n client: RegistryBrokerClient,\n): Promise<LoadX402DependenciesResult> {\n type X402AxiosModule = {\n withPaymentInterceptor: (client: unknown, walletClient: object) => unknown;\n decodeXPaymentResponse: (value: string) => unknown;\n };\n type X402TypesModule = {\n createSigner: (\n network: X402NetworkId,\n privateKey: `0x${string}`,\n ) => Promise<object>;\n };\n\n const [{ default: axios }, x402Axios, x402Types] = await Promise.all([\n import('axios'),\n optionalImport<X402AxiosModule>('x402-axios'),\n optionalImport<X402TypesModule>('x402/types'),\n ]);\n\n if (!x402Axios || !x402Types) {\n throw new Error(\n 'x402-axios and x402/types are required for X402 flows. Install them to enable ledger payments.',\n );\n }\n\n const withPaymentInterceptor = x402Axios.withPaymentInterceptor;\n const decodePaymentResponse = x402Axios.decodeXPaymentResponse;\n const createX402Signer = x402Types.createSigner;\n\n const createPaymentClient = (walletClient: object): PaymentClient => {\n const axiosClient = axios.create({\n baseURL: client.baseUrl,\n headers: {\n ...client.getDefaultHeaders(),\n 'content-type': 'application/json',\n },\n });\n const paymentClient = withPaymentInterceptor(axiosClient, walletClient);\n return paymentClient as PaymentClient;\n };\n\n return { createPaymentClient, decodePaymentResponse, createX402Signer };\n}\n\nfunction calculateHbarAmountParam(hbarAmount: number): number {\n const tinybars = Math.ceil(hbarAmount * 1e8);\n if (tinybars <= 0) {\n throw new Error('Calculated purchase amount must be positive');\n }\n return tinybars / 1e8;\n}\n\nexport async function purchaseCreditsWithHbar(\n client: RegistryBrokerClient,\n params: {\n accountId: string;\n privateKey: string;\n hbarAmount: number;\n memo?: string;\n metadata?: JsonObject;\n },\n): Promise<CreditPurchaseResponse> {\n const body: JsonObject = {\n accountId: params.accountId,\n payerKey: params.privateKey,\n hbarAmount: calculateHbarAmountParam(params.hbarAmount),\n };\n\n if (params.memo) {\n body.memo = params.memo;\n }\n\n if (params.metadata) {\n body.metadata = params.metadata;\n }\n\n const raw = await client.requestJson<JsonValue>('/credits/purchase', {\n method: 'POST',\n headers: { 'content-type': 'application/json' },\n body,\n });\n\n return client.parseWithSchema(\n raw,\n creditPurchaseResponseSchema,\n 'credit purchase response',\n );\n}\n\nexport async function getX402Minimums(\n client: RegistryBrokerClient,\n): Promise<X402MinimumsResponse> {\n const raw = await client.requestJson<JsonValue>(\n '/credits/purchase/x402/minimums',\n { method: 'GET' },\n );\n return client.parseWithSchema(\n raw,\n x402MinimumsResponseSchema,\n 'x402 minimums response',\n );\n}\n\nexport async function purchaseCreditsWithX402(\n client: RegistryBrokerClient,\n params: PurchaseCreditsWithX402Params,\n): Promise<X402PurchaseResult> {\n const { createPaymentClient, decodePaymentResponse } =\n await loadX402Dependencies(client);\n\n if (!Number.isFinite(params.credits) || params.credits <= 0) {\n throw new Error('credits must be a positive number');\n }\n if (\n params.usdAmount !== undefined &&\n (!Number.isFinite(params.usdAmount) || params.usdAmount <= 0)\n ) {\n throw new Error('usdAmount must be a positive number when provided');\n }\n\n const body: JsonObject = {\n accountId: params.accountId,\n credits: params.credits,\n };\n\n if (params.usdAmount !== undefined) {\n body.usdAmount = params.usdAmount;\n }\n if (params.description) {\n body.description = params.description;\n }\n if (params.metadata) {\n body.metadata = params.metadata;\n }\n\n const paymentClient = createPaymentClient(params.walletClient);\n\n const response = await paymentClient.post('/credits/purchase/x402', body);\n\n const parsed = client.parseWithSchema(\n response.data,\n x402CreditPurchaseResponseSchema,\n 'x402 credit purchase response',\n );\n\n const responseHeaders = response.headers ?? {};\n const paymentHeader =\n typeof responseHeaders['x-payment-response'] === 'string'\n ? responseHeaders['x-payment-response']\n : undefined;\n const decodedPayment =\n paymentHeader !== undefined\n ? decodePaymentResponse(paymentHeader)\n : undefined;\n\n return {\n ...parsed,\n paymentResponseHeader: paymentHeader,\n paymentResponse: decodedPayment,\n };\n}\n\nexport async function buyCreditsWithX402(\n client: RegistryBrokerClient,\n params: BuyCreditsWithX402Params,\n): Promise<X402PurchaseResult> {\n const network: X402NetworkId = params.network ?? 'base';\n const { createX402Signer } = await loadX402Dependencies(client);\n const normalizedKey = normalizeHexPrivateKey(params.evmPrivateKey);\n const walletClient = await createX402Signer(network, normalizedKey);\n\n return purchaseCreditsWithX402(client, {\n accountId: params.accountId,\n credits: params.credits,\n usdAmount: params.usdAmount,\n description: params.description,\n metadata: params.metadata,\n walletClient,\n });\n}\n"],"names":[],"mappings":"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"}