@secondlayer/stacks 0.0.4 → 0.2.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 (113) hide show
  1. package/dist/shared/{stacks-zm0b3tgy.js → stacks-0hqzpm29.js} +7 -7
  2. package/dist/shared/{stacks-zm0b3tgy.js.map → stacks-0hqzpm29.js.map} +2 -2
  3. package/dist/shared/{stacks-bnvfmt7y.cjs → stacks-2gdt3aqj.cjs} +15 -2
  4. package/dist/shared/{stacks-8m9byk2j.js.map → stacks-2gdt3aqj.cjs.map} +1 -1
  5. package/dist/shared/stacks-61rvzkz1.cjs.map +1 -1
  6. package/dist/shared/stacks-709tra19.js.map +2 -2
  7. package/dist/shared/{stacks-n2g56wgg.js → stacks-8qhfd37f.js} +13 -13
  8. package/dist/shared/{stacks-n2g56wgg.js.map → stacks-8qhfd37f.js.map} +3 -3
  9. package/dist/shared/stacks-9g0jhab3.cjs.map +2 -2
  10. package/dist/shared/stacks-an5k8n4t.cjs.map +2 -2
  11. package/dist/shared/stacks-b008c3w8.cjs.map +2 -2
  12. package/dist/shared/stacks-gck1sq7h.cjs.map +2 -2
  13. package/dist/shared/stacks-gjvbq6w7.js.map +2 -2
  14. package/dist/shared/{stacks-74k8cxgb.cjs → stacks-hfem9dck.cjs} +46 -2
  15. package/dist/shared/stacks-hfem9dck.cjs.map +13 -0
  16. package/dist/shared/stacks-j2cy7qtt.js.map +2 -2
  17. package/dist/shared/stacks-k58k970n.js.map +2 -2
  18. package/dist/shared/{stacks-zyv9qqme.cjs → stacks-kgesjxq4.cjs} +3 -5
  19. package/dist/shared/stacks-kgesjxq4.cjs.map +11 -0
  20. package/dist/shared/{stacks-f7wdrzs3.js → stacks-nbz193yk.js} +18 -21
  21. package/dist/shared/stacks-nbz193yk.js.map +11 -0
  22. package/dist/shared/stacks-njvyj3ab.js +23 -0
  23. package/dist/shared/{stacks-bnvfmt7y.cjs.map → stacks-njvyj3ab.js.map} +1 -1
  24. package/dist/shared/{stacks-dxhntr76.js → stacks-ph4a6322.js} +54 -11
  25. package/dist/shared/stacks-ph4a6322.js.map +10 -0
  26. package/dist/shared/stacks-qvg7c24g.cjs.map +2 -2
  27. package/dist/shared/{stacks-4py5pm0r.cjs → stacks-v3zy6zds.cjs} +42 -2
  28. package/dist/shared/stacks-v3zy6zds.cjs.map +10 -0
  29. package/dist/shared/stacks-v9jqcpd4.js.map +2 -2
  30. package/dist/shared/stacks-vdfag81a.cjs.map +2 -2
  31. package/dist/shared/{stacks-yfgsm6ap.js → stacks-xtz0n62y.js} +58 -3
  32. package/dist/shared/stacks-xtz0n62y.js.map +13 -0
  33. package/dist/shared/stacks-ya3x01yd.cjs.map +2 -2
  34. package/dist/shared/{stacks-vdfs3e5v.js → stacks-zhd20wgz.js} +2 -2
  35. package/dist/shared/stacks-zhd20wgz.js.map +10 -0
  36. package/dist/src/accounts/index.js +1 -1
  37. package/dist/src/actions/index.d.cts +46 -7
  38. package/dist/src/actions/index.d.ts +46 -7
  39. package/dist/src/actions/index.js +7 -7
  40. package/dist/src/bns/index.cjs +13 -13
  41. package/dist/src/bns/index.cjs.map +3 -3
  42. package/dist/src/bns/index.js +22 -22
  43. package/dist/src/bns/index.js.map +3 -3
  44. package/dist/src/chains/index.js +1 -1
  45. package/dist/src/clarity/index.cjs +326 -1
  46. package/dist/src/clarity/index.cjs.map +5 -3
  47. package/dist/src/clarity/index.d.cts +24 -5
  48. package/dist/src/clarity/index.d.ts +24 -5
  49. package/dist/src/clarity/index.js +264 -13
  50. package/dist/src/clarity/index.js.map +5 -3
  51. package/dist/src/connect/index.cjs.map +2 -2
  52. package/dist/src/connect/index.d.cts +7 -1
  53. package/dist/src/connect/index.d.ts +7 -1
  54. package/dist/src/connect/index.js.map +2 -2
  55. package/dist/src/connect/walletconnect/index.cjs +4 -4
  56. package/dist/src/connect/walletconnect/index.cjs.map +7 -7
  57. package/dist/src/connect/walletconnect/index.d.cts +5 -5
  58. package/dist/src/connect/walletconnect/index.d.ts +5 -5
  59. package/dist/src/connect/walletconnect/index.js +4 -4
  60. package/dist/src/connect/walletconnect/index.js.map +7 -7
  61. package/dist/src/index.cjs +1 -1
  62. package/dist/src/index.cjs.map +4 -4
  63. package/dist/src/index.d.cts +44 -3
  64. package/dist/src/index.d.ts +44 -3
  65. package/dist/src/index.js +12 -11
  66. package/dist/src/index.js.map +5 -5
  67. package/dist/src/postconditions/index.cjs +117 -1
  68. package/dist/src/postconditions/index.cjs.map +4 -3
  69. package/dist/src/postconditions/index.js +119 -6
  70. package/dist/src/postconditions/index.js.map +4 -3
  71. package/dist/src/pox/index.cjs +9 -9
  72. package/dist/src/pox/index.cjs.map +4 -4
  73. package/dist/src/pox/index.js +17 -17
  74. package/dist/src/pox/index.js.map +4 -4
  75. package/dist/src/stackingdao/index.cjs +13 -13
  76. package/dist/src/stackingdao/index.cjs.map +4 -4
  77. package/dist/src/stackingdao/index.d.cts +18 -7
  78. package/dist/src/stackingdao/index.d.ts +18 -7
  79. package/dist/src/stackingdao/index.js +21 -21
  80. package/dist/src/stackingdao/index.js.map +4 -4
  81. package/dist/src/subscriptions/index.js +1 -1
  82. package/dist/src/transactions/index.cjs +5 -1
  83. package/dist/src/transactions/index.cjs.map +1 -1
  84. package/dist/src/transactions/index.d.cts +40 -2
  85. package/dist/src/transactions/index.d.ts +40 -2
  86. package/dist/src/transactions/index.js +18 -10
  87. package/dist/src/transactions/index.js.map +1 -1
  88. package/dist/src/utils/index.cjs.map +2 -2
  89. package/dist/src/utils/index.d.cts +4 -4
  90. package/dist/src/utils/index.d.ts +4 -4
  91. package/dist/src/utils/index.js +5 -5
  92. package/dist/src/utils/index.js.map +3 -3
  93. package/package.json +1 -1
  94. package/dist/shared/stacks-2ar4prfz.cjs +0 -328
  95. package/dist/shared/stacks-2ar4prfz.cjs.map +0 -11
  96. package/dist/shared/stacks-4py5pm0r.cjs.map +0 -10
  97. package/dist/shared/stacks-74k8cxgb.cjs.map +0 -13
  98. package/dist/shared/stacks-8m9byk2j.js +0 -7
  99. package/dist/shared/stacks-dr5en54r.cjs +0 -119
  100. package/dist/shared/stacks-dr5en54r.cjs.map +0 -10
  101. package/dist/shared/stacks-dxhntr76.js.map +0 -10
  102. package/dist/shared/stacks-f3tk2k5s.js +0 -27
  103. package/dist/shared/stacks-f3tk2k5s.js.map +0 -9
  104. package/dist/shared/stacks-f7wdrzs3.js.map +0 -11
  105. package/dist/shared/stacks-g9mcjcqg.cjs +0 -3
  106. package/dist/shared/stacks-g9mcjcqg.cjs.map +0 -9
  107. package/dist/shared/stacks-tjxmrssa.js +0 -282
  108. package/dist/shared/stacks-tjxmrssa.js.map +0 -11
  109. package/dist/shared/stacks-vdfs3e5v.js.map +0 -10
  110. package/dist/shared/stacks-yfgsm6ap.js.map +0 -13
  111. package/dist/shared/stacks-yfveb68e.js +0 -121
  112. package/dist/shared/stacks-yfveb68e.js.map +0 -10
  113. package/dist/shared/stacks-zyv9qqme.cjs.map +0 -11
@@ -1,9 +1,11 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [],
3
+ "sources": ["../src/clarity/prettyPrint.ts", "../src/clarity/abi/converters.ts"],
4
4
  "sourcesContent": [
5
+ "import { hexToBytes, bytesToAscii, asciiToBytes, utf8ToBytes } from \"../utils/encoding.ts\";\nimport type { ClarityValue } from \"./types.ts\";\n\nexport function prettyPrint(val: ClarityValue, encoding: \"tryAscii\" | \"hex\" = \"hex\"): string | undefined {\n switch (val.type) {\n case \"true\":\n return \"true\";\n case \"false\":\n return \"false\";\n case \"int\":\n return val.value.toString();\n case \"uint\":\n return `u${val.value.toString()}`;\n case \"buffer\":\n if (encoding === \"tryAscii\") {\n const str = bytesToAscii(hexToBytes(val.value));\n if (/^[ -~]*$/.test(str)) return JSON.stringify(str);\n }\n return `0x${val.value}`;\n case \"none\":\n return \"none\";\n case \"some\":\n return `(some ${prettyPrint(val.value, encoding)})`;\n case \"ok\":\n return `(ok ${prettyPrint(val.value, encoding)})`;\n case \"err\":\n return `(err ${prettyPrint(val.value, encoding)})`;\n case \"address\":\n case \"contract\":\n return val.value;\n case \"list\":\n return `(list ${val.value.map((v) => prettyPrint(v, encoding)).join(\" \")})`;\n case \"tuple\":\n return `(tuple ${Object.keys(val.value)\n .map((key) => `(${key} ${prettyPrint(val.value[key]!, encoding)})`)\n .join(\" \")})`;\n case \"ascii\":\n return `\"${val.value}\"`;\n case \"utf8\":\n return `u\"${val.value}\"`;\n }\n}\n\nexport function cvToJSON(val: ClarityValue): any {\n switch (val.type) {\n case \"true\":\n return { type: \"bool\", value: true };\n case \"false\":\n return { type: \"bool\", value: false };\n case \"int\":\n return { type: \"int\", value: val.value.toString() };\n case \"uint\":\n return { type: \"uint\", value: val.value.toString() };\n case \"buffer\":\n return { type: `(buff ${Math.ceil(val.value.length / 2)})`, value: `0x${val.value}` };\n case \"none\":\n return { type: \"(optional none)\", value: null };\n case \"some\":\n return { type: `(optional)`, value: cvToJSON(val.value) };\n case \"ok\":\n return { type: \"(response)\", value: cvToJSON(val.value), success: true };\n case \"err\":\n return { type: \"(response)\", value: cvToJSON(val.value), success: false };\n case \"address\":\n case \"contract\":\n return { type: \"principal\", value: val.value };\n case \"list\":\n return { type: \"(list)\", value: val.value.map(cvToJSON) };\n case \"tuple\": {\n const result: Record<string, any> = {};\n for (const key of Object.keys(val.value)) {\n result[key] = cvToJSON(val.value[key]!);\n }\n return { type: \"(tuple)\", value: result };\n }\n case \"ascii\":\n return { type: `(string-ascii ${asciiToBytes(val.value).length})`, value: val.value };\n case \"utf8\":\n return { type: `(string-utf8 ${utf8ToBytes(val.value).length})`, value: val.value };\n }\n}\n\nexport function cvToValue(val: ClarityValue): any {\n switch (val.type) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n case \"int\":\n case \"uint\":\n return val.value;\n case \"buffer\":\n return `0x${val.value}`;\n case \"none\":\n return null;\n case \"some\":\n return cvToValue(val.value);\n case \"ok\":\n case \"err\":\n return cvToValue(val.value);\n case \"address\":\n case \"contract\":\n return val.value;\n case \"list\":\n return val.value.map(cvToValue);\n case \"tuple\": {\n const result: Record<string, any> = {};\n for (const key of Object.keys(val.value)) {\n result[key] = cvToValue(val.value[key]!);\n }\n return result;\n }\n case \"ascii\":\n case \"utf8\":\n return val.value;\n }\n}\n",
6
+ "import type { AbiType } from \"./types.ts\";\nimport type { AbiFunction } from \"./contract.ts\";\nimport {\n isUint128,\n isInt128,\n isBool,\n isPrincipal,\n isString,\n isUint8Array,\n isAbiList,\n isAbiTuple,\n isAbiOptional,\n isAbiResponse,\n isAbiBuffer,\n isAbiStringAscii,\n isAbiStringUtf8,\n} from \"./guards.ts\";\nimport { toCamelCase } from \"./utils.ts\";\n\nexport class ClarityConversionError extends Error {\n constructor(\n message: string,\n public readonly type: AbiType,\n public readonly value: unknown,\n ) {\n super(message);\n this.name = \"ClarityConversionError\";\n }\n}\n\nexport function jsToClarity(type: AbiType, value: unknown): unknown {\n if (type === \"none\") return null;\n\n if (type === \"uint128\") {\n if (!isUint128(value))\n throw new ClarityConversionError(\"Invalid uint128 value\", type, value);\n return value;\n }\n\n if (type === \"int128\") {\n if (!isInt128(value))\n throw new ClarityConversionError(\"Invalid int128 value\", type, value);\n return value;\n }\n\n if (type === \"bool\") {\n if (!isBool(value))\n throw new ClarityConversionError(\"Invalid bool value\", type, value);\n return value;\n }\n\n if (type === \"principal\") {\n if (!isPrincipal(value))\n throw new ClarityConversionError(\"Invalid principal value\", type, value);\n return value;\n }\n\n if (type === \"trait_reference\") {\n if (!isPrincipal(value))\n throw new ClarityConversionError(\n \"Invalid trait_reference value\",\n type,\n value,\n );\n return value;\n }\n\n if (isAbiStringAscii(type)) {\n if (!isString(value))\n throw new ClarityConversionError(\n \"Invalid string-ascii value\",\n type,\n value,\n );\n const str = value as string;\n for (let i = 0; i < str.length; i++) {\n if (str.charCodeAt(i) > 127) {\n throw new ClarityConversionError(\n `Non-ASCII character at position ${i}: '${str[i]}' (code ${str.charCodeAt(i)})`,\n type,\n value,\n );\n }\n }\n if (str.length > type[\"string-ascii\"].length) {\n throw new ClarityConversionError(\n `String length ${str.length} exceeds max ${type[\"string-ascii\"].length}`,\n type,\n value,\n );\n }\n return value;\n }\n\n if (isAbiStringUtf8(type)) {\n if (!isString(value))\n throw new ClarityConversionError(\n \"Invalid string-utf8 value\",\n type,\n value,\n );\n const str = value as string;\n const byteLength = new TextEncoder().encode(str).length;\n if (byteLength > type[\"string-utf8\"].length) {\n throw new ClarityConversionError(\n `String byte length ${byteLength} exceeds max ${type[\"string-utf8\"].length}`,\n type,\n value,\n );\n }\n return value;\n }\n\n if (isAbiBuffer(type)) {\n if (!isUint8Array(value))\n throw new ClarityConversionError(\"Invalid buffer value\", type, value);\n const buff = value as Uint8Array;\n if (buff.length > type.buff.length) {\n throw new ClarityConversionError(\n `Buffer length ${buff.length} exceeds max ${type.buff.length}`,\n type,\n value,\n );\n }\n return value;\n }\n\n if (isAbiList(type)) {\n if (!Array.isArray(value))\n throw new ClarityConversionError(\n \"Expected array for list type\",\n type,\n value,\n );\n if (value.length > type.list.length) {\n throw new ClarityConversionError(\n `List length ${value.length} exceeds max ${type.list.length}`,\n type,\n value,\n );\n }\n return value.map((item) => jsToClarity(type.list.type, item));\n }\n\n if (isAbiTuple(type)) {\n if (typeof value !== \"object\" || value === null)\n throw new ClarityConversionError(\n \"Expected object for tuple type\",\n type,\n value,\n );\n const result: Record<string, unknown> = {};\n for (const field of type.tuple) {\n const camelKey = toCamelCase(field.name);\n const hasOriginal = field.name in (value as object);\n const hasCamel = camelKey in (value as object);\n if (!hasOriginal && !hasCamel) {\n throw new ClarityConversionError(\n `Missing tuple field: ${field.name}`,\n type,\n value,\n );\n }\n const fieldValue = hasOriginal\n ? (value as Record<string, unknown>)[field.name]\n : (value as Record<string, unknown>)[camelKey];\n result[field.name] = jsToClarity(field.type, fieldValue);\n }\n return result;\n }\n\n if (isAbiOptional(type)) {\n if (value === null || value === undefined) return null;\n return jsToClarity(type.optional, value);\n }\n\n if (isAbiResponse(type)) {\n if (typeof value !== \"object\" || value === null)\n throw new ClarityConversionError(\n \"Expected object for response type\",\n type,\n value,\n );\n const hasOk = \"ok\" in value;\n const hasErr = \"err\" in value;\n if (hasOk && !hasErr) {\n return {\n ok: jsToClarity(type.response.ok, (value as { ok: unknown }).ok),\n };\n }\n if (hasErr && !hasOk) {\n return {\n err: jsToClarity(\n type.response.error,\n (value as { err: unknown }).err,\n ),\n };\n }\n throw new ClarityConversionError(\n \"Response must have exactly 'ok' or 'err' property\",\n type,\n value,\n );\n }\n\n throw new ClarityConversionError(`Unknown Clarity type`, type, value);\n}\n\nexport function prepareArgs<F extends AbiFunction>(\n func: F,\n args: Record<string, unknown>,\n): unknown[] {\n return func.args.map((arg) => {\n if (!(arg.name in args)) {\n throw new ClarityConversionError(\n `Missing argument: ${arg.name}`,\n arg.type,\n undefined,\n );\n }\n return jsToClarity(arg.type, args[arg.name]);\n });\n}\n\nexport function validateArgs<F extends AbiFunction>(\n func: F,\n args: Record<string, unknown>,\n): void {\n for (const arg of func.args) {\n if (!(arg.name in args)) {\n throw new ClarityConversionError(\n `Missing argument: ${arg.name}`,\n arg.type,\n undefined,\n );\n }\n jsToClarity(arg.type, args[arg.name]);\n }\n}\n\nexport function validateArgsArray<F extends AbiFunction>(\n func: F,\n args: unknown[],\n): void {\n if (args.length !== func.args.length) {\n throw new ClarityConversionError(\n `Expected ${func.args.length} arguments, got ${args.length}`,\n func.args[0]?.type ?? \"bool\",\n args,\n );\n }\n func.args.forEach((arg, i) => {\n jsToClarity(arg.type, args[i]);\n });\n}\n"
5
7
  ],
6
- "mappings": "",
7
- "debugId": "DDDF1E5FDE06A0EC64756E2164756E21",
8
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,SAAS,WAAW,CAAC,KAAmB,WAA+B,OAA2B;AAAA,EACvG,QAAQ,IAAI;AAAA,SACL;AAAA,MACH,OAAO;AAAA,SACJ;AAAA,MACH,OAAO;AAAA,SACJ;AAAA,MACH,OAAO,IAAI,MAAM,SAAS;AAAA,SACvB;AAAA,MACH,OAAO,IAAI,IAAI,MAAM,SAAS;AAAA,SAC3B;AAAA,MACH,IAAI,aAAa,YAAY;AAAA,QAC3B,MAAM,MAAM,aAAa,WAAW,IAAI,KAAK,CAAC;AAAA,QAC9C,IAAI,WAAW,KAAK,GAAG;AAAA,UAAG,OAAO,KAAK,UAAU,GAAG;AAAA,MACrD;AAAA,MACA,OAAO,KAAK,IAAI;AAAA,SACb;AAAA,MACH,OAAO;AAAA,SACJ;AAAA,MACH,OAAO,SAAS,YAAY,IAAI,OAAO,QAAQ;AAAA,SAC5C;AAAA,MACH,OAAO,OAAO,YAAY,IAAI,OAAO,QAAQ;AAAA,SAC1C;AAAA,MACH,OAAO,QAAQ,YAAY,IAAI,OAAO,QAAQ;AAAA,SAC3C;AAAA,SACA;AAAA,MACH,OAAO,IAAI;AAAA,SACR;AAAA,MACH,OAAO,SAAS,IAAI,MAAM,IAAI,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,KAAK,GAAG;AAAA,SACpE;AAAA,MACH,OAAO,UAAU,OAAO,KAAK,IAAI,KAAK,EACnC,IAAI,CAAC,QAAQ,IAAI,OAAO,YAAY,IAAI,MAAM,MAAO,QAAQ,IAAI,EACjE,KAAK,GAAG;AAAA,SACR;AAAA,MACH,OAAO,IAAI,IAAI;AAAA,SACZ;AAAA,MACH,OAAO,KAAK,IAAI;AAAA;AAAA;AAIf,SAAS,QAAQ,CAAC,KAAwB;AAAA,EAC/C,QAAQ,IAAI;AAAA,SACL;AAAA,MACH,OAAO,EAAE,MAAM,QAAQ,OAAO,KAAK;AAAA,SAChC;AAAA,MACH,OAAO,EAAE,MAAM,QAAQ,OAAO,MAAM;AAAA,SACjC;AAAA,MACH,OAAO,EAAE,MAAM,OAAO,OAAO,IAAI,MAAM,SAAS,EAAE;AAAA,SAC/C;AAAA,MACH,OAAO,EAAE,MAAM,QAAQ,OAAO,IAAI,MAAM,SAAS,EAAE;AAAA,SAChD;AAAA,MACH,OAAO,EAAE,MAAM,SAAS,KAAK,KAAK,IAAI,MAAM,SAAS,CAAC,MAAM,OAAO,KAAK,IAAI,QAAQ;AAAA,SACjF;AAAA,MACH,OAAO,EAAE,MAAM,mBAAmB,OAAO,KAAK;AAAA,SAC3C;AAAA,MACH,OAAO,EAAE,MAAM,cAAc,OAAO,SAAS,IAAI,KAAK,EAAE;AAAA,SACrD;AAAA,MACH,OAAO,EAAE,MAAM,cAAc,OAAO,SAAS,IAAI,KAAK,GAAG,SAAS,KAAK;AAAA,SACpE;AAAA,MACH,OAAO,EAAE,MAAM,cAAc,OAAO,SAAS,IAAI,KAAK,GAAG,SAAS,MAAM;AAAA,SACrE;AAAA,SACA;AAAA,MACH,OAAO,EAAE,MAAM,aAAa,OAAO,IAAI,MAAM;AAAA,SAC1C;AAAA,MACH,OAAO,EAAE,MAAM,UAAU,OAAO,IAAI,MAAM,IAAI,QAAQ,EAAE;AAAA,SACrD,SAAS;AAAA,MACZ,MAAM,SAA8B,CAAC;AAAA,MACrC,WAAW,OAAO,OAAO,KAAK,IAAI,KAAK,GAAG;AAAA,QACxC,OAAO,OAAO,SAAS,IAAI,MAAM,IAAK;AAAA,MACxC;AAAA,MACA,OAAO,EAAE,MAAM,WAAW,OAAO,OAAO;AAAA,IAC1C;AAAA,SACK;AAAA,MACH,OAAO,EAAE,MAAM,iBAAiB,aAAa,IAAI,KAAK,EAAE,WAAW,OAAO,IAAI,MAAM;AAAA,SACjF;AAAA,MACH,OAAO,EAAE,MAAM,gBAAgB,YAAY,IAAI,KAAK,EAAE,WAAW,OAAO,IAAI,MAAM;AAAA;AAAA;AAIjF,SAAS,SAAS,CAAC,KAAwB;AAAA,EAChD,QAAQ,IAAI;AAAA,SACL;AAAA,MACH,OAAO;AAAA,SACJ;AAAA,MACH,OAAO;AAAA,SACJ;AAAA,SACA;AAAA,MACH,OAAO,IAAI;AAAA,SACR;AAAA,MACH,OAAO,KAAK,IAAI;AAAA,SACb;AAAA,MACH,OAAO;AAAA,SACJ;AAAA,MACH,OAAO,UAAU,IAAI,KAAK;AAAA,SACvB;AAAA,SACA;AAAA,MACH,OAAO,UAAU,IAAI,KAAK;AAAA,SACvB;AAAA,SACA;AAAA,MACH,OAAO,IAAI;AAAA,SACR;AAAA,MACH,OAAO,IAAI,MAAM,IAAI,SAAS;AAAA,SAC3B,SAAS;AAAA,MACZ,MAAM,SAA8B,CAAC;AAAA,MACrC,WAAW,OAAO,OAAO,KAAK,IAAI,KAAK,GAAG;AAAA,QACxC,OAAO,OAAO,UAAU,IAAI,MAAM,IAAK;AAAA,MACzC;AAAA,MACA,OAAO;AAAA,IACT;AAAA,SACK;AAAA,SACA;AAAA,MACH,OAAO,IAAI;AAAA;AAAA;;AC/FV,MAAM,+BAA+B,MAAM;AAAA,EAG9B;AAAA,EACA;AAAA,EAHlB,WAAW,CACT,SACgB,MACA,OAChB;AAAA,IACA,MAAM,OAAO;AAAA,IAHG;AAAA,IACA;AAAA,IAGhB,KAAK,OAAO;AAAA;AAEhB;AAEO,SAAS,WAAW,CAAC,MAAe,OAAyB;AAAA,EAClE,IAAI,SAAS;AAAA,IAAQ,OAAO;AAAA,EAE5B,IAAI,SAAS,WAAW;AAAA,IACtB,IAAI,CAAC,UAAU,KAAK;AAAA,MAClB,MAAM,IAAI,uBAAuB,yBAAyB,MAAM,KAAK;AAAA,IACvE,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,SAAS,UAAU;AAAA,IACrB,IAAI,CAAC,SAAS,KAAK;AAAA,MACjB,MAAM,IAAI,uBAAuB,wBAAwB,MAAM,KAAK;AAAA,IACtE,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,SAAS,QAAQ;AAAA,IACnB,IAAI,CAAC,OAAO,KAAK;AAAA,MACf,MAAM,IAAI,uBAAuB,sBAAsB,MAAM,KAAK;AAAA,IACpE,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,SAAS,aAAa;AAAA,IACxB,IAAI,CAAC,YAAY,KAAK;AAAA,MACpB,MAAM,IAAI,uBAAuB,2BAA2B,MAAM,KAAK;AAAA,IACzE,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,SAAS,mBAAmB;AAAA,IAC9B,IAAI,CAAC,YAAY,KAAK;AAAA,MACpB,MAAM,IAAI,uBACR,iCACA,MACA,KACF;AAAA,IACF,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,iBAAiB,IAAI,GAAG;AAAA,IAC1B,IAAI,CAAC,SAAS,KAAK;AAAA,MACjB,MAAM,IAAI,uBACR,8BACA,MACA,KACF;AAAA,IACF,MAAM,MAAM;AAAA,IACZ,SAAS,IAAI,EAAG,IAAI,IAAI,QAAQ,KAAK;AAAA,MACnC,IAAI,IAAI,WAAW,CAAC,IAAI,KAAK;AAAA,QAC3B,MAAM,IAAI,uBACR,mCAAmC,OAAO,IAAI,aAAa,IAAI,WAAW,CAAC,MAC3E,MACA,KACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,IAAI,IAAI,SAAS,KAAK,gBAAgB,QAAQ;AAAA,MAC5C,MAAM,IAAI,uBACR,iBAAiB,IAAI,sBAAsB,KAAK,gBAAgB,UAChE,MACA,KACF;AAAA,IACF;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,gBAAgB,IAAI,GAAG;AAAA,IACzB,IAAI,CAAC,SAAS,KAAK;AAAA,MACjB,MAAM,IAAI,uBACR,6BACA,MACA,KACF;AAAA,IACF,MAAM,MAAM;AAAA,IACZ,MAAM,aAAa,IAAI,YAAY,EAAE,OAAO,GAAG,EAAE;AAAA,IACjD,IAAI,aAAa,KAAK,eAAe,QAAQ;AAAA,MAC3C,MAAM,IAAI,uBACR,sBAAsB,0BAA0B,KAAK,eAAe,UACpE,MACA,KACF;AAAA,IACF;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,YAAY,IAAI,GAAG;AAAA,IACrB,IAAI,CAAC,aAAa,KAAK;AAAA,MACrB,MAAM,IAAI,uBAAuB,wBAAwB,MAAM,KAAK;AAAA,IACtE,MAAM,OAAO;AAAA,IACb,IAAI,KAAK,SAAS,KAAK,KAAK,QAAQ;AAAA,MAClC,MAAM,IAAI,uBACR,iBAAiB,KAAK,sBAAsB,KAAK,KAAK,UACtD,MACA,KACF;AAAA,IACF;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,UAAU,IAAI,GAAG;AAAA,IACnB,IAAI,CAAC,MAAM,QAAQ,KAAK;AAAA,MACtB,MAAM,IAAI,uBACR,gCACA,MACA,KACF;AAAA,IACF,IAAI,MAAM,SAAS,KAAK,KAAK,QAAQ;AAAA,MACnC,MAAM,IAAI,uBACR,eAAe,MAAM,sBAAsB,KAAK,KAAK,UACrD,MACA,KACF;AAAA,IACF;AAAA,IACA,OAAO,MAAM,IAAI,CAAC,SAAS,YAAY,KAAK,KAAK,MAAM,IAAI,CAAC;AAAA,EAC9D;AAAA,EAEA,IAAI,WAAW,IAAI,GAAG;AAAA,IACpB,IAAI,OAAO,UAAU,YAAY,UAAU;AAAA,MACzC,MAAM,IAAI,uBACR,kCACA,MACA,KACF;AAAA,IACF,MAAM,SAAkC,CAAC;AAAA,IACzC,WAAW,SAAS,KAAK,OAAO;AAAA,MAC9B,MAAM,WAAW,YAAY,MAAM,IAAI;AAAA,MACvC,MAAM,cAAc,MAAM,QAAS;AAAA,MACnC,MAAM,WAAW,YAAa;AAAA,MAC9B,IAAI,CAAC,eAAe,CAAC,UAAU;AAAA,QAC7B,MAAM,IAAI,uBACR,wBAAwB,MAAM,QAC9B,MACA,KACF;AAAA,MACF;AAAA,MACA,MAAM,aAAa,cACd,MAAkC,MAAM,QACxC,MAAkC;AAAA,MACvC,OAAO,MAAM,QAAQ,YAAY,MAAM,MAAM,UAAU;AAAA,IACzD;AAAA,IACA,OAAO;AAAA,EACT;AAAA,EAEA,IAAI,cAAc,IAAI,GAAG;AAAA,IACvB,IAAI,UAAU,QAAQ,UAAU;AAAA,MAAW,OAAO;AAAA,IAClD,OAAO,YAAY,KAAK,UAAU,KAAK;AAAA,EACzC;AAAA,EAEA,IAAI,cAAc,IAAI,GAAG;AAAA,IACvB,IAAI,OAAO,UAAU,YAAY,UAAU;AAAA,MACzC,MAAM,IAAI,uBACR,qCACA,MACA,KACF;AAAA,IACF,MAAM,QAAQ,QAAQ;AAAA,IACtB,MAAM,SAAS,SAAS;AAAA,IACxB,IAAI,SAAS,CAAC,QAAQ;AAAA,MACpB,OAAO;AAAA,QACL,IAAI,YAAY,KAAK,SAAS,IAAK,MAA0B,EAAE;AAAA,MACjE;AAAA,IACF;AAAA,IACA,IAAI,UAAU,CAAC,OAAO;AAAA,MACpB,OAAO;AAAA,QACL,KAAK,YACH,KAAK,SAAS,OACb,MAA2B,GAC9B;AAAA,MACF;AAAA,IACF;AAAA,IACA,MAAM,IAAI,uBACR,qDACA,MACA,KACF;AAAA,EACF;AAAA,EAEA,MAAM,IAAI,uBAAuB,wBAAwB,MAAM,KAAK;AAAA;AAG/D,SAAS,WAAkC,CAChD,MACA,MACW;AAAA,EACX,OAAO,KAAK,KAAK,IAAI,CAAC,QAAQ;AAAA,IAC5B,IAAI,EAAE,IAAI,QAAQ,OAAO;AAAA,MACvB,MAAM,IAAI,uBACR,qBAAqB,IAAI,QACzB,IAAI,MACJ,SACF;AAAA,IACF;AAAA,IACA,OAAO,YAAY,IAAI,MAAM,KAAK,IAAI,KAAK;AAAA,GAC5C;AAAA;AAGI,SAAS,YAAmC,CACjD,MACA,MACM;AAAA,EACN,WAAW,OAAO,KAAK,MAAM;AAAA,IAC3B,IAAI,EAAE,IAAI,QAAQ,OAAO;AAAA,MACvB,MAAM,IAAI,uBACR,qBAAqB,IAAI,QACzB,IAAI,MACJ,SACF;AAAA,IACF;AAAA,IACA,YAAY,IAAI,MAAM,KAAK,IAAI,KAAK;AAAA,EACtC;AAAA;AAGK,SAAS,iBAAwC,CACtD,MACA,MACM;AAAA,EACN,IAAI,KAAK,WAAW,KAAK,KAAK,QAAQ;AAAA,IACpC,MAAM,IAAI,uBACR,YAAY,KAAK,KAAK,yBAAyB,KAAK,UACpD,KAAK,KAAK,IAAI,QAAQ,QACtB,IACF;AAAA,EACF;AAAA,EACA,KAAK,KAAK,QAAQ,CAAC,KAAK,MAAM;AAAA,IAC5B,YAAY,IAAI,MAAM,KAAK,EAAE;AAAA,GAC9B;AAAA;",
9
+ "debugId": "2002F9940E8CCE2964756E2164756E21",
8
10
  "names": []
9
11
  }
@@ -101,8 +101,27 @@ declare function tupleCV(data: TupleData): TupleCV;
101
101
  declare function stringAsciiCV(value: string): StringAsciiCV;
102
102
  declare function stringUtf8CV(value: string): StringUtf8CV;
103
103
  declare const Cl: {
104
- readonly principal: (address: string) => StandardPrincipalCV | ContractPrincipalCV
105
- readonly serialize: (value: ClarityValue) => string
104
+ readonly int: (value: IntegerType) => IntCV
105
+ readonly uint: (value: IntegerType) => UIntCV
106
+ readonly bool: (v: boolean) => BooleanCV
107
+ principal(address: string): StandardPrincipalCV | ContractPrincipalCV
108
+ address(address: string): StandardPrincipalCV | ContractPrincipalCV
109
+ readonly contractPrincipal: (address: string, contractName: string) => ContractPrincipalCV
110
+ readonly standardPrincipal: (address: string) => StandardPrincipalCV
111
+ readonly buffer: (buffer: Uint8Array) => BufferCV
112
+ readonly bufferFromHex: (hex: string) => BufferCV
113
+ readonly bufferFromAscii: (ascii: string) => BufferCV
114
+ readonly bufferFromUtf8: (utf8: string) => BufferCV
115
+ readonly none: () => NoneCV
116
+ readonly some: (value: ClarityValue) => SomeCV
117
+ readonly ok: (value: ClarityValue) => ResponseOkCV
118
+ readonly error: (value: ClarityValue) => ResponseErrorCV
119
+ readonly list: (values: ClarityValue[]) => ListCV
120
+ readonly tuple: (data: TupleData) => TupleCV
121
+ readonly stringAscii: (value: string) => StringAsciiCV
122
+ readonly stringUtf8: (value: string) => StringUtf8CV
123
+ serialize(value: ClarityValue): string
124
+ readonly deserialize: (bytes: Uint8Array) => ClarityValue
106
125
  };
107
126
  declare function serializeCVBytes(value: ClarityValue): Uint8Array;
108
127
  declare function serializeCV(value: ClarityValue): string;
@@ -807,9 +826,9 @@ declare const SIP013_ABI: {
807
826
  readonly fungible_tokens: readonly []
808
827
  readonly non_fungible_tokens: readonly []
809
828
  };
810
- declare const sip010Abi: unknown;
811
- declare const sip009Abi: unknown;
812
- declare const sip013Abi: unknown;
829
+ declare const sip010Abi: AbiContract;
830
+ declare const sip009Abi: AbiContract;
831
+ declare const sip013Abi: AbiContract;
813
832
  /**
814
833
  * Convert a JS value to a ClarityValue using ABI type information.
815
834
  */
@@ -101,8 +101,27 @@ declare function tupleCV(data: TupleData): TupleCV;
101
101
  declare function stringAsciiCV(value: string): StringAsciiCV;
102
102
  declare function stringUtf8CV(value: string): StringUtf8CV;
103
103
  declare const Cl: {
104
- readonly principal: (address: string) => StandardPrincipalCV | ContractPrincipalCV
105
- readonly serialize: (value: ClarityValue) => string
104
+ readonly int: (value: IntegerType) => IntCV
105
+ readonly uint: (value: IntegerType) => UIntCV
106
+ readonly bool: (v: boolean) => BooleanCV
107
+ principal(address: string): StandardPrincipalCV | ContractPrincipalCV
108
+ address(address: string): StandardPrincipalCV | ContractPrincipalCV
109
+ readonly contractPrincipal: (address: string, contractName: string) => ContractPrincipalCV
110
+ readonly standardPrincipal: (address: string) => StandardPrincipalCV
111
+ readonly buffer: (buffer: Uint8Array) => BufferCV
112
+ readonly bufferFromHex: (hex: string) => BufferCV
113
+ readonly bufferFromAscii: (ascii: string) => BufferCV
114
+ readonly bufferFromUtf8: (utf8: string) => BufferCV
115
+ readonly none: () => NoneCV
116
+ readonly some: (value: ClarityValue) => SomeCV
117
+ readonly ok: (value: ClarityValue) => ResponseOkCV
118
+ readonly error: (value: ClarityValue) => ResponseErrorCV
119
+ readonly list: (values: ClarityValue[]) => ListCV
120
+ readonly tuple: (data: TupleData) => TupleCV
121
+ readonly stringAscii: (value: string) => StringAsciiCV
122
+ readonly stringUtf8: (value: string) => StringUtf8CV
123
+ serialize(value: ClarityValue): string
124
+ readonly deserialize: (bytes: Uint8Array) => ClarityValue
106
125
  };
107
126
  declare function serializeCVBytes(value: ClarityValue): Uint8Array;
108
127
  declare function serializeCV(value: ClarityValue): string;
@@ -807,9 +826,9 @@ declare const SIP013_ABI: {
807
826
  readonly fungible_tokens: readonly []
808
827
  readonly non_fungible_tokens: readonly []
809
828
  };
810
- declare const sip010Abi: unknown;
811
- declare const sip009Abi: unknown;
812
- declare const sip013Abi: unknown;
829
+ declare const sip010Abi: AbiContract;
830
+ declare const sip009Abi: AbiContract;
831
+ declare const sip013Abi: AbiContract;
813
832
  /**
814
833
  * Convert a JS value to a ClarityValue using ABI type information.
815
834
  */
@@ -1,13 +1,3 @@
1
- import {
2
- ClarityConversionError,
3
- cvToJSON,
4
- cvToValue,
5
- jsToClarity,
6
- prepareArgs,
7
- prettyPrint,
8
- validateArgs,
9
- validateArgsArray
10
- } from "../../shared/stacks-tjxmrssa.js";
11
1
  import {
12
2
  SIP009_ABI,
13
3
  SIP010_ABI,
@@ -73,8 +63,269 @@ import {
73
63
  } from "../../shared/stacks-8yykgdww.js";
74
64
  import"../../shared/stacks-v9jqcpd4.js";
75
65
  import"../../shared/stacks-gjvbq6w7.js";
76
- import"../../shared/stacks-nqytwfcc.js";
77
- import"../../shared/stacks-8m9byk2j.js";
66
+ import {
67
+ asciiToBytes,
68
+ bytesToAscii,
69
+ hexToBytes,
70
+ utf8ToBytes
71
+ } from "../../shared/stacks-nqytwfcc.js";
72
+ import"../../shared/stacks-njvyj3ab.js";
73
+ // src/clarity/prettyPrint.ts
74
+ function prettyPrint(val, encoding = "hex") {
75
+ switch (val.type) {
76
+ case "true":
77
+ return "true";
78
+ case "false":
79
+ return "false";
80
+ case "int":
81
+ return val.value.toString();
82
+ case "uint":
83
+ return `u${val.value.toString()}`;
84
+ case "buffer":
85
+ if (encoding === "tryAscii") {
86
+ const str = bytesToAscii(hexToBytes(val.value));
87
+ if (/^[ -~]*$/.test(str))
88
+ return JSON.stringify(str);
89
+ }
90
+ return `0x${val.value}`;
91
+ case "none":
92
+ return "none";
93
+ case "some":
94
+ return `(some ${prettyPrint(val.value, encoding)})`;
95
+ case "ok":
96
+ return `(ok ${prettyPrint(val.value, encoding)})`;
97
+ case "err":
98
+ return `(err ${prettyPrint(val.value, encoding)})`;
99
+ case "address":
100
+ case "contract":
101
+ return val.value;
102
+ case "list":
103
+ return `(list ${val.value.map((v) => prettyPrint(v, encoding)).join(" ")})`;
104
+ case "tuple":
105
+ return `(tuple ${Object.keys(val.value).map((key) => `(${key} ${prettyPrint(val.value[key], encoding)})`).join(" ")})`;
106
+ case "ascii":
107
+ return `"${val.value}"`;
108
+ case "utf8":
109
+ return `u"${val.value}"`;
110
+ }
111
+ }
112
+ function cvToJSON(val) {
113
+ switch (val.type) {
114
+ case "true":
115
+ return { type: "bool", value: true };
116
+ case "false":
117
+ return { type: "bool", value: false };
118
+ case "int":
119
+ return { type: "int", value: val.value.toString() };
120
+ case "uint":
121
+ return { type: "uint", value: val.value.toString() };
122
+ case "buffer":
123
+ return { type: `(buff ${Math.ceil(val.value.length / 2)})`, value: `0x${val.value}` };
124
+ case "none":
125
+ return { type: "(optional none)", value: null };
126
+ case "some":
127
+ return { type: `(optional)`, value: cvToJSON(val.value) };
128
+ case "ok":
129
+ return { type: "(response)", value: cvToJSON(val.value), success: true };
130
+ case "err":
131
+ return { type: "(response)", value: cvToJSON(val.value), success: false };
132
+ case "address":
133
+ case "contract":
134
+ return { type: "principal", value: val.value };
135
+ case "list":
136
+ return { type: "(list)", value: val.value.map(cvToJSON) };
137
+ case "tuple": {
138
+ const result = {};
139
+ for (const key of Object.keys(val.value)) {
140
+ result[key] = cvToJSON(val.value[key]);
141
+ }
142
+ return { type: "(tuple)", value: result };
143
+ }
144
+ case "ascii":
145
+ return { type: `(string-ascii ${asciiToBytes(val.value).length})`, value: val.value };
146
+ case "utf8":
147
+ return { type: `(string-utf8 ${utf8ToBytes(val.value).length})`, value: val.value };
148
+ }
149
+ }
150
+ function cvToValue(val) {
151
+ switch (val.type) {
152
+ case "true":
153
+ return true;
154
+ case "false":
155
+ return false;
156
+ case "int":
157
+ case "uint":
158
+ return val.value;
159
+ case "buffer":
160
+ return `0x${val.value}`;
161
+ case "none":
162
+ return null;
163
+ case "some":
164
+ return cvToValue(val.value);
165
+ case "ok":
166
+ case "err":
167
+ return cvToValue(val.value);
168
+ case "address":
169
+ case "contract":
170
+ return val.value;
171
+ case "list":
172
+ return val.value.map(cvToValue);
173
+ case "tuple": {
174
+ const result = {};
175
+ for (const key of Object.keys(val.value)) {
176
+ result[key] = cvToValue(val.value[key]);
177
+ }
178
+ return result;
179
+ }
180
+ case "ascii":
181
+ case "utf8":
182
+ return val.value;
183
+ }
184
+ }
185
+ // src/clarity/abi/converters.ts
186
+ class ClarityConversionError extends Error {
187
+ type;
188
+ value;
189
+ constructor(message, type, value) {
190
+ super(message);
191
+ this.type = type;
192
+ this.value = value;
193
+ this.name = "ClarityConversionError";
194
+ }
195
+ }
196
+ function jsToClarity(type, value) {
197
+ if (type === "none")
198
+ return null;
199
+ if (type === "uint128") {
200
+ if (!isUint128(value))
201
+ throw new ClarityConversionError("Invalid uint128 value", type, value);
202
+ return value;
203
+ }
204
+ if (type === "int128") {
205
+ if (!isInt128(value))
206
+ throw new ClarityConversionError("Invalid int128 value", type, value);
207
+ return value;
208
+ }
209
+ if (type === "bool") {
210
+ if (!isBool(value))
211
+ throw new ClarityConversionError("Invalid bool value", type, value);
212
+ return value;
213
+ }
214
+ if (type === "principal") {
215
+ if (!isPrincipal(value))
216
+ throw new ClarityConversionError("Invalid principal value", type, value);
217
+ return value;
218
+ }
219
+ if (type === "trait_reference") {
220
+ if (!isPrincipal(value))
221
+ throw new ClarityConversionError("Invalid trait_reference value", type, value);
222
+ return value;
223
+ }
224
+ if (isAbiStringAscii(type)) {
225
+ if (!isString(value))
226
+ throw new ClarityConversionError("Invalid string-ascii value", type, value);
227
+ const str = value;
228
+ for (let i = 0;i < str.length; i++) {
229
+ if (str.charCodeAt(i) > 127) {
230
+ throw new ClarityConversionError(`Non-ASCII character at position ${i}: '${str[i]}' (code ${str.charCodeAt(i)})`, type, value);
231
+ }
232
+ }
233
+ if (str.length > type["string-ascii"].length) {
234
+ throw new ClarityConversionError(`String length ${str.length} exceeds max ${type["string-ascii"].length}`, type, value);
235
+ }
236
+ return value;
237
+ }
238
+ if (isAbiStringUtf8(type)) {
239
+ if (!isString(value))
240
+ throw new ClarityConversionError("Invalid string-utf8 value", type, value);
241
+ const str = value;
242
+ const byteLength = new TextEncoder().encode(str).length;
243
+ if (byteLength > type["string-utf8"].length) {
244
+ throw new ClarityConversionError(`String byte length ${byteLength} exceeds max ${type["string-utf8"].length}`, type, value);
245
+ }
246
+ return value;
247
+ }
248
+ if (isAbiBuffer(type)) {
249
+ if (!isUint8Array(value))
250
+ throw new ClarityConversionError("Invalid buffer value", type, value);
251
+ const buff = value;
252
+ if (buff.length > type.buff.length) {
253
+ throw new ClarityConversionError(`Buffer length ${buff.length} exceeds max ${type.buff.length}`, type, value);
254
+ }
255
+ return value;
256
+ }
257
+ if (isAbiList(type)) {
258
+ if (!Array.isArray(value))
259
+ throw new ClarityConversionError("Expected array for list type", type, value);
260
+ if (value.length > type.list.length) {
261
+ throw new ClarityConversionError(`List length ${value.length} exceeds max ${type.list.length}`, type, value);
262
+ }
263
+ return value.map((item) => jsToClarity(type.list.type, item));
264
+ }
265
+ if (isAbiTuple(type)) {
266
+ if (typeof value !== "object" || value === null)
267
+ throw new ClarityConversionError("Expected object for tuple type", type, value);
268
+ const result = {};
269
+ for (const field of type.tuple) {
270
+ const camelKey = toCamelCase(field.name);
271
+ const hasOriginal = field.name in value;
272
+ const hasCamel = camelKey in value;
273
+ if (!hasOriginal && !hasCamel) {
274
+ throw new ClarityConversionError(`Missing tuple field: ${field.name}`, type, value);
275
+ }
276
+ const fieldValue = hasOriginal ? value[field.name] : value[camelKey];
277
+ result[field.name] = jsToClarity(field.type, fieldValue);
278
+ }
279
+ return result;
280
+ }
281
+ if (isAbiOptional(type)) {
282
+ if (value === null || value === undefined)
283
+ return null;
284
+ return jsToClarity(type.optional, value);
285
+ }
286
+ if (isAbiResponse(type)) {
287
+ if (typeof value !== "object" || value === null)
288
+ throw new ClarityConversionError("Expected object for response type", type, value);
289
+ const hasOk = "ok" in value;
290
+ const hasErr = "err" in value;
291
+ if (hasOk && !hasErr) {
292
+ return {
293
+ ok: jsToClarity(type.response.ok, value.ok)
294
+ };
295
+ }
296
+ if (hasErr && !hasOk) {
297
+ return {
298
+ err: jsToClarity(type.response.error, value.err)
299
+ };
300
+ }
301
+ throw new ClarityConversionError("Response must have exactly 'ok' or 'err' property", type, value);
302
+ }
303
+ throw new ClarityConversionError(`Unknown Clarity type`, type, value);
304
+ }
305
+ function prepareArgs(func, args) {
306
+ return func.args.map((arg) => {
307
+ if (!(arg.name in args)) {
308
+ throw new ClarityConversionError(`Missing argument: ${arg.name}`, arg.type, undefined);
309
+ }
310
+ return jsToClarity(arg.type, args[arg.name]);
311
+ });
312
+ }
313
+ function validateArgs(func, args) {
314
+ for (const arg of func.args) {
315
+ if (!(arg.name in args)) {
316
+ throw new ClarityConversionError(`Missing argument: ${arg.name}`, arg.type, undefined);
317
+ }
318
+ jsToClarity(arg.type, args[arg.name]);
319
+ }
320
+ }
321
+ function validateArgsArray(func, args) {
322
+ if (args.length !== func.args.length) {
323
+ throw new ClarityConversionError(`Expected ${func.args.length} arguments, got ${args.length}`, func.args[0]?.type ?? "bool", args);
324
+ }
325
+ func.args.forEach((arg, i) => {
326
+ jsToClarity(arg.type, args[i]);
327
+ });
328
+ }
78
329
  export {
79
330
  validateArgsArray,
80
331
  validateArgs,
@@ -141,5 +392,5 @@ export {
141
392
  CONTRACT_NAME_REGEX
142
393
  };
143
394
 
144
- //# debugId=565CB95AB940D0B164756E2164756E21
395
+ //# debugId=B39F9F506C00CB8064756E2164756E21
145
396
  //# sourceMappingURL=index.js.map
@@ -1,9 +1,11 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [],
3
+ "sources": ["../src/clarity/prettyPrint.ts", "../src/clarity/abi/converters.ts"],
4
4
  "sourcesContent": [
5
+ "import { hexToBytes, bytesToAscii, asciiToBytes, utf8ToBytes } from \"../utils/encoding.ts\";\nimport type { ClarityValue } from \"./types.ts\";\n\nexport function prettyPrint(val: ClarityValue, encoding: \"tryAscii\" | \"hex\" = \"hex\"): string | undefined {\n switch (val.type) {\n case \"true\":\n return \"true\";\n case \"false\":\n return \"false\";\n case \"int\":\n return val.value.toString();\n case \"uint\":\n return `u${val.value.toString()}`;\n case \"buffer\":\n if (encoding === \"tryAscii\") {\n const str = bytesToAscii(hexToBytes(val.value));\n if (/^[ -~]*$/.test(str)) return JSON.stringify(str);\n }\n return `0x${val.value}`;\n case \"none\":\n return \"none\";\n case \"some\":\n return `(some ${prettyPrint(val.value, encoding)})`;\n case \"ok\":\n return `(ok ${prettyPrint(val.value, encoding)})`;\n case \"err\":\n return `(err ${prettyPrint(val.value, encoding)})`;\n case \"address\":\n case \"contract\":\n return val.value;\n case \"list\":\n return `(list ${val.value.map((v) => prettyPrint(v, encoding)).join(\" \")})`;\n case \"tuple\":\n return `(tuple ${Object.keys(val.value)\n .map((key) => `(${key} ${prettyPrint(val.value[key]!, encoding)})`)\n .join(\" \")})`;\n case \"ascii\":\n return `\"${val.value}\"`;\n case \"utf8\":\n return `u\"${val.value}\"`;\n }\n}\n\nexport function cvToJSON(val: ClarityValue): any {\n switch (val.type) {\n case \"true\":\n return { type: \"bool\", value: true };\n case \"false\":\n return { type: \"bool\", value: false };\n case \"int\":\n return { type: \"int\", value: val.value.toString() };\n case \"uint\":\n return { type: \"uint\", value: val.value.toString() };\n case \"buffer\":\n return { type: `(buff ${Math.ceil(val.value.length / 2)})`, value: `0x${val.value}` };\n case \"none\":\n return { type: \"(optional none)\", value: null };\n case \"some\":\n return { type: `(optional)`, value: cvToJSON(val.value) };\n case \"ok\":\n return { type: \"(response)\", value: cvToJSON(val.value), success: true };\n case \"err\":\n return { type: \"(response)\", value: cvToJSON(val.value), success: false };\n case \"address\":\n case \"contract\":\n return { type: \"principal\", value: val.value };\n case \"list\":\n return { type: \"(list)\", value: val.value.map(cvToJSON) };\n case \"tuple\": {\n const result: Record<string, any> = {};\n for (const key of Object.keys(val.value)) {\n result[key] = cvToJSON(val.value[key]!);\n }\n return { type: \"(tuple)\", value: result };\n }\n case \"ascii\":\n return { type: `(string-ascii ${asciiToBytes(val.value).length})`, value: val.value };\n case \"utf8\":\n return { type: `(string-utf8 ${utf8ToBytes(val.value).length})`, value: val.value };\n }\n}\n\nexport function cvToValue(val: ClarityValue): any {\n switch (val.type) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n case \"int\":\n case \"uint\":\n return val.value;\n case \"buffer\":\n return `0x${val.value}`;\n case \"none\":\n return null;\n case \"some\":\n return cvToValue(val.value);\n case \"ok\":\n case \"err\":\n return cvToValue(val.value);\n case \"address\":\n case \"contract\":\n return val.value;\n case \"list\":\n return val.value.map(cvToValue);\n case \"tuple\": {\n const result: Record<string, any> = {};\n for (const key of Object.keys(val.value)) {\n result[key] = cvToValue(val.value[key]!);\n }\n return result;\n }\n case \"ascii\":\n case \"utf8\":\n return val.value;\n }\n}\n",
6
+ "import type { AbiType } from \"./types.ts\";\nimport type { AbiFunction } from \"./contract.ts\";\nimport {\n isUint128,\n isInt128,\n isBool,\n isPrincipal,\n isString,\n isUint8Array,\n isAbiList,\n isAbiTuple,\n isAbiOptional,\n isAbiResponse,\n isAbiBuffer,\n isAbiStringAscii,\n isAbiStringUtf8,\n} from \"./guards.ts\";\nimport { toCamelCase } from \"./utils.ts\";\n\nexport class ClarityConversionError extends Error {\n constructor(\n message: string,\n public readonly type: AbiType,\n public readonly value: unknown,\n ) {\n super(message);\n this.name = \"ClarityConversionError\";\n }\n}\n\nexport function jsToClarity(type: AbiType, value: unknown): unknown {\n if (type === \"none\") return null;\n\n if (type === \"uint128\") {\n if (!isUint128(value))\n throw new ClarityConversionError(\"Invalid uint128 value\", type, value);\n return value;\n }\n\n if (type === \"int128\") {\n if (!isInt128(value))\n throw new ClarityConversionError(\"Invalid int128 value\", type, value);\n return value;\n }\n\n if (type === \"bool\") {\n if (!isBool(value))\n throw new ClarityConversionError(\"Invalid bool value\", type, value);\n return value;\n }\n\n if (type === \"principal\") {\n if (!isPrincipal(value))\n throw new ClarityConversionError(\"Invalid principal value\", type, value);\n return value;\n }\n\n if (type === \"trait_reference\") {\n if (!isPrincipal(value))\n throw new ClarityConversionError(\n \"Invalid trait_reference value\",\n type,\n value,\n );\n return value;\n }\n\n if (isAbiStringAscii(type)) {\n if (!isString(value))\n throw new ClarityConversionError(\n \"Invalid string-ascii value\",\n type,\n value,\n );\n const str = value as string;\n for (let i = 0; i < str.length; i++) {\n if (str.charCodeAt(i) > 127) {\n throw new ClarityConversionError(\n `Non-ASCII character at position ${i}: '${str[i]}' (code ${str.charCodeAt(i)})`,\n type,\n value,\n );\n }\n }\n if (str.length > type[\"string-ascii\"].length) {\n throw new ClarityConversionError(\n `String length ${str.length} exceeds max ${type[\"string-ascii\"].length}`,\n type,\n value,\n );\n }\n return value;\n }\n\n if (isAbiStringUtf8(type)) {\n if (!isString(value))\n throw new ClarityConversionError(\n \"Invalid string-utf8 value\",\n type,\n value,\n );\n const str = value as string;\n const byteLength = new TextEncoder().encode(str).length;\n if (byteLength > type[\"string-utf8\"].length) {\n throw new ClarityConversionError(\n `String byte length ${byteLength} exceeds max ${type[\"string-utf8\"].length}`,\n type,\n value,\n );\n }\n return value;\n }\n\n if (isAbiBuffer(type)) {\n if (!isUint8Array(value))\n throw new ClarityConversionError(\"Invalid buffer value\", type, value);\n const buff = value as Uint8Array;\n if (buff.length > type.buff.length) {\n throw new ClarityConversionError(\n `Buffer length ${buff.length} exceeds max ${type.buff.length}`,\n type,\n value,\n );\n }\n return value;\n }\n\n if (isAbiList(type)) {\n if (!Array.isArray(value))\n throw new ClarityConversionError(\n \"Expected array for list type\",\n type,\n value,\n );\n if (value.length > type.list.length) {\n throw new ClarityConversionError(\n `List length ${value.length} exceeds max ${type.list.length}`,\n type,\n value,\n );\n }\n return value.map((item) => jsToClarity(type.list.type, item));\n }\n\n if (isAbiTuple(type)) {\n if (typeof value !== \"object\" || value === null)\n throw new ClarityConversionError(\n \"Expected object for tuple type\",\n type,\n value,\n );\n const result: Record<string, unknown> = {};\n for (const field of type.tuple) {\n const camelKey = toCamelCase(field.name);\n const hasOriginal = field.name in (value as object);\n const hasCamel = camelKey in (value as object);\n if (!hasOriginal && !hasCamel) {\n throw new ClarityConversionError(\n `Missing tuple field: ${field.name}`,\n type,\n value,\n );\n }\n const fieldValue = hasOriginal\n ? (value as Record<string, unknown>)[field.name]\n : (value as Record<string, unknown>)[camelKey];\n result[field.name] = jsToClarity(field.type, fieldValue);\n }\n return result;\n }\n\n if (isAbiOptional(type)) {\n if (value === null || value === undefined) return null;\n return jsToClarity(type.optional, value);\n }\n\n if (isAbiResponse(type)) {\n if (typeof value !== \"object\" || value === null)\n throw new ClarityConversionError(\n \"Expected object for response type\",\n type,\n value,\n );\n const hasOk = \"ok\" in value;\n const hasErr = \"err\" in value;\n if (hasOk && !hasErr) {\n return {\n ok: jsToClarity(type.response.ok, (value as { ok: unknown }).ok),\n };\n }\n if (hasErr && !hasOk) {\n return {\n err: jsToClarity(\n type.response.error,\n (value as { err: unknown }).err,\n ),\n };\n }\n throw new ClarityConversionError(\n \"Response must have exactly 'ok' or 'err' property\",\n type,\n value,\n );\n }\n\n throw new ClarityConversionError(`Unknown Clarity type`, type, value);\n}\n\nexport function prepareArgs<F extends AbiFunction>(\n func: F,\n args: Record<string, unknown>,\n): unknown[] {\n return func.args.map((arg) => {\n if (!(arg.name in args)) {\n throw new ClarityConversionError(\n `Missing argument: ${arg.name}`,\n arg.type,\n undefined,\n );\n }\n return jsToClarity(arg.type, args[arg.name]);\n });\n}\n\nexport function validateArgs<F extends AbiFunction>(\n func: F,\n args: Record<string, unknown>,\n): void {\n for (const arg of func.args) {\n if (!(arg.name in args)) {\n throw new ClarityConversionError(\n `Missing argument: ${arg.name}`,\n arg.type,\n undefined,\n );\n }\n jsToClarity(arg.type, args[arg.name]);\n }\n}\n\nexport function validateArgsArray<F extends AbiFunction>(\n func: F,\n args: unknown[],\n): void {\n if (args.length !== func.args.length) {\n throw new ClarityConversionError(\n `Expected ${func.args.length} arguments, got ${args.length}`,\n func.args[0]?.type ?? \"bool\",\n args,\n );\n }\n func.args.forEach((arg, i) => {\n jsToClarity(arg.type, args[i]);\n });\n}\n"
5
7
  ],
6
- "mappings": "",
7
- "debugId": "565CB95AB940D0B164756E2164756E21",
8
+ "mappings": "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",
9
+ "debugId": "B39F9F506C00CB8064756E2164756E21",
8
10
  "names": []
9
11
  }
@@ -2,7 +2,7 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/errors/base.ts", "../../../src/connect/errors.ts", "../../../src/connect/provider.ts", "../../../src/connect/storage.ts", "../../../src/utils/encoding.ts", "../../../src/utils/c32.ts", "../../../src/clarity/types.ts", "../../../src/clarity/serialize.ts", "../../../src/connect/request.ts", "../../../src/connect/actions.ts"],
4
4
  "sourcesContent": [
5
- "export class BaseError extends Error {\n override name = \"StacksError\";\n shortMessage: string;\n details?: string;\n\n constructor(shortMessage: string, options?: { cause?: Error; details?: string }) {\n const message = [\n shortMessage,\n options?.details ? `\\n${options.details}` : \"\",\n ].join(\"\");\n\n super(message, { cause: options?.cause });\n this.shortMessage = shortMessage;\n this.details = options?.details;\n }\n\n toJSON() {\n return {\n name: this.name,\n message: this.message,\n shortMessage: this.shortMessage,\n details: this.details,\n cause: this.cause instanceof Error ? this.cause.message : undefined,\n };\n }\n}\n",
5
+ "export class BaseError extends Error {\n override name = \"StacksError\";\n shortMessage: string;\n details?: string;\n\n constructor(shortMessage: string, options?: { cause?: Error; details?: string }) {\n const message = [\n shortMessage,\n options?.details ? `\\n${options.details}` : \"\",\n ].join(\"\");\n\n super(message, { cause: options?.cause });\n this.shortMessage = shortMessage;\n this.details = options?.details;\n }\n\n toJSON(): { name: string; message: string; shortMessage: string; details: string | undefined; cause: string | undefined } {\n return {\n name: this.name,\n message: this.message,\n shortMessage: this.shortMessage,\n details: this.details,\n cause: this.cause instanceof Error ? this.cause.message : undefined,\n };\n }\n}\n",
6
6
  "import { BaseError } from \"../errors/base.ts\";\n\nexport class ConnectError extends BaseError {\n override name = \"ConnectError\";\n}\n\nexport enum JsonRpcErrorCode {\n ParseError = -32700,\n InvalidRequest = -32600,\n MethodNotFound = -32601,\n InvalidParams = -32602,\n InternalError = -32603,\n UserRejection = -31001,\n}\n\nexport class JsonRpcError extends ConnectError {\n override name = \"JsonRpcError\";\n code: number;\n data?: unknown;\n\n constructor(\n message: string,\n code: number,\n options?: { data?: unknown; cause?: Error }\n ) {\n const details =\n options?.data !== undefined\n ? typeof options.data === \"string\"\n ? options.data\n : JSON.stringify(options.data)\n : undefined;\n super(message, { cause: options?.cause, details });\n this.code = code;\n this.data = options?.data;\n }\n}\n",
7
7
  "import type { WalletProvider } from \"./types.ts\";\nimport { ConnectError } from \"./errors.ts\";\n\ndeclare const window:\n | {\n StacksProvider?: WalletProvider;\n LeatherProvider?: WalletProvider;\n XverseProvider?: WalletProvider;\n HiroWalletProvider?: WalletProvider;\n }\n | undefined;\n\nlet customProvider: WalletProvider | null = null;\n\n/** Set a custom provider (e.g. WalletConnectProvider). Pass null to clear. */\nexport function setProvider(provider: WalletProvider | null): void {\n customProvider = provider;\n}\n\nexport function getProvider(): WalletProvider {\n if (customProvider) return customProvider;\n\n if (typeof window === \"undefined\") {\n throw new ConnectError(\"No Stacks wallet found\");\n }\n\n const provider =\n window.StacksProvider ??\n window.LeatherProvider ??\n window.XverseProvider ??\n window.HiroWalletProvider;\n\n if (!provider) throw new ConnectError(\"No Stacks wallet found\");\n return provider;\n}\n\nexport function isWalletInstalled(): boolean {\n return (\n typeof window !== \"undefined\" &&\n !!(\n window.StacksProvider ||\n window.LeatherProvider ||\n window.XverseProvider ||\n window.HiroWalletProvider\n )\n );\n}\n",
8
8
  "import type { AddressEntry } from \"./types.ts\";\n\nconst STORAGE_KEY = \"@secondlayer/connect\";\n\nexport interface StorageData {\n addresses: {\n stx: AddressEntry[];\n btc: AddressEntry[];\n };\n version: string;\n updatedAt: number;\n}\n\nfunction toHex(str: string): string {\n return Array.from(new TextEncoder().encode(str))\n .map((b) => b.toString(16).padStart(2, \"0\"))\n .join(\"\");\n}\n\nfunction fromHex(hex: string): string {\n const bytes = new Uint8Array(\n hex.match(/.{1,2}/g)!.map((byte) => parseInt(byte, 16))\n );\n return new TextDecoder().decode(bytes);\n}\n\ninterface SimpleStorage {\n getItem(key: string): string | null;\n setItem(key: string, value: string): void;\n removeItem(key: string): void;\n}\n\ndeclare const localStorage: SimpleStorage | undefined;\n\nfunction getLocalStorage(): SimpleStorage | undefined {\n return typeof localStorage !== \"undefined\" ? localStorage : undefined;\n}\n\nexport function getStorageData(): StorageData | null {\n try {\n const raw = getLocalStorage()?.getItem(STORAGE_KEY);\n if (!raw) return null;\n return JSON.parse(fromHex(raw)) as StorageData;\n } catch {\n return null;\n }\n}\n\nexport function setStorageData(data: StorageData): void {\n const encoded = toHex(JSON.stringify(data));\n getLocalStorage()?.setItem(STORAGE_KEY, encoded);\n}\n\nexport function clearStorage(): void {\n getLocalStorage()?.removeItem(STORAGE_KEY);\n}\n\nexport function cacheAddresses(addresses: AddressEntry[]): void {\n const stx = addresses.filter(\n (a) => a.address.startsWith(\"SP\") || a.address.startsWith(\"ST\")\n );\n const btc = addresses.filter(\n (a) => !a.address.startsWith(\"SP\") && !a.address.startsWith(\"ST\")\n );\n\n setStorageData({\n addresses: { stx, btc },\n version: \"0.0.1\",\n updatedAt: Date.now(),\n });\n}\n",
@@ -13,7 +13,7 @@
13
13
  "import type { Methods, MethodParams, MethodResult } from \"./types.ts\";\nimport { getProvider } from \"./provider.ts\";\nimport { ConnectError, JsonRpcError } from \"./errors.ts\";\nimport { cacheAddresses } from \"./storage.ts\";\nimport { serializeCVBytes } from \"../clarity/serialize.ts\";\nimport { bytesToHex } from \"../utils/encoding.ts\";\n\nconst POST_CONDITION_TYPES = new Set([\n \"stx-postcondition\",\n \"ft-postcondition\",\n \"nft-postcondition\",\n]);\n\nfunction isClarityValue(obj: unknown): obj is { type: string } {\n return (\n typeof obj === \"object\" &&\n obj !== null &&\n \"type\" in obj &&\n typeof (obj as any).type === \"string\" &&\n !POST_CONDITION_TYPES.has((obj as any).type)\n );\n}\n\nfunction serializeParams(value: unknown): unknown {\n if (value === null || value === undefined) return value;\n if (typeof value === \"bigint\") return value.toString();\n if (Array.isArray(value)) return value.map(serializeParams);\n\n if (typeof value === \"object\") {\n if (value instanceof Uint8Array) return value;\n\n if (POST_CONDITION_TYPES.has((value as any).type)) return value;\n\n if (isClarityValue(value)) {\n return bytesToHex(serializeCVBytes(value as any));\n }\n\n const result: Record<string, unknown> = {};\n for (const [k, v] of Object.entries(value)) {\n result[k] = serializeParams(v);\n }\n return result;\n }\n\n return value;\n}\n\nconst ADDRESS_METHODS = new Set([\"getAddresses\", \"stx_getAddresses\"]);\n\nexport async function request<M extends keyof Methods>(\n method: M,\n ...args: MethodParams<M> extends undefined\n ? []\n : [params: MethodParams<M>]\n): Promise<MethodResult<M>> {\n const provider = getProvider();\n\n const params = args[0];\n const serialized = params ? serializeParams(params) : undefined;\n\n let result: any;\n try {\n result = await provider.request(method as string, serialized);\n } catch (err: any) {\n if (err?.code !== undefined) {\n throw new JsonRpcError(err.message ?? String(err), err.code, {\n data: err.data,\n });\n }\n throw new ConnectError(err?.message ?? \"Wallet request failed\", {\n cause: err instanceof Error ? err : undefined,\n });\n }\n\n if (ADDRESS_METHODS.has(method as string) && result?.addresses) {\n cacheAddresses(result.addresses);\n }\n\n return result as MethodResult<M>;\n}\n",
14
14
  "import type { AddressesResult } from \"./types.ts\";\nimport { request } from \"./request.ts\";\nimport { getProvider } from \"./provider.ts\";\nimport { clearStorage, getStorageData } from \"./storage.ts\";\n\nexport async function connect(): Promise<AddressesResult> {\n return request(\"getAddresses\");\n}\n\nexport function disconnect(): void {\n clearStorage();\n try {\n getProvider().disconnect?.();\n } catch {\n // provider may not exist — that's fine\n }\n}\n\nexport function isConnected(): boolean {\n const data = getStorageData();\n return (data?.addresses?.stx?.length ?? 0) > 0;\n}\n"
15
15
  ],
16
- "mappings": "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",
16
+ "mappings": "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",
17
17
  "debugId": "94114852344D7D1664756E2164756E21",
18
18
  "names": []
19
19
  }
@@ -85,7 +85,13 @@ declare class BaseError extends Error {
85
85
  cause?: Error
86
86
  details?: string
87
87
  });
88
- toJSON(): {};
88
+ toJSON(): {
89
+ name: string
90
+ message: string
91
+ shortMessage: string
92
+ details: string | undefined
93
+ cause: string | undefined
94
+ };
89
95
  }
90
96
  declare class ConnectError extends BaseError {
91
97
  name: string;
@@ -85,7 +85,13 @@ declare class BaseError extends Error {
85
85
  cause?: Error
86
86
  details?: string
87
87
  });
88
- toJSON(): {};
88
+ toJSON(): {
89
+ name: string
90
+ message: string
91
+ shortMessage: string
92
+ details: string | undefined
93
+ cause: string | undefined
94
+ };
89
95
  }
90
96
  declare class ConnectError extends BaseError {
91
97
  name: string;