@clarigen/core 1.0.0-next.22 → 1.0.0-next.25

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.
@@ -391,6 +391,7 @@ interface ContractCall<T> {
391
391
  functionArgs: ClarityValue[];
392
392
  contractAddress: string;
393
393
  contractName: string;
394
+ _r?: T;
394
395
  }
395
396
  interface ContractCallTyped<Args, R> extends Omit<ContractCall<R>, 'nativeArgs'> {
396
397
  nativeArgs: Args;
@@ -406,11 +407,14 @@ declare type FunctionsToContractCalls<T> = T extends ContractFunctions ? {
406
407
  } : never;
407
408
  declare type FullContract<T> = T extends TypedAbi ? T & FunctionsToContractCalls<T['functions']> & {
408
409
  identifier: string;
410
+ } & {
411
+ contractFile: string;
409
412
  } : never;
410
413
  declare type ContractFactory<T extends AllContracts> = {
411
414
  [key in keyof T]: FullContract<T[key]>;
412
415
  };
413
416
  declare function contractFactory<T extends AllContracts>(contracts: T, deployer: string | DeploymentPlan): ContractFactory<T>;
417
+ declare function deploymentFactory<T extends AllContracts>(contracts: T, deployer: DeploymentPlan): ContractFactory<T>;
414
418
 
415
419
  interface PureContractInfo {
416
420
  abi: ClarityAbi;
@@ -448,4 +452,4 @@ declare function broadcast(transaction: StacksTransaction, options: ApiOptions):
448
452
  stacksTransaction: StacksTransaction;
449
453
  }>;
450
454
 
451
- export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ClarityAbi, ClarityAbiFunction, ClarityAbiMap, ClarityAbiType, ClarityAbiTypeBool, ClarityAbiTypeBuffer, ClarityAbiTypeFungibleToken, ClarityAbiTypeInt128, ClarityAbiTypeList, ClarityAbiTypeNonFungibleToken, ClarityAbiTypeNone, ClarityAbiTypeOptional, ClarityAbiTypePrimitive, ClarityAbiTypePrincipal, ClarityAbiTypeResponse, ClarityAbiTypeStringAscii, ClarityAbiTypeStringUtf8, ClarityAbiTypeTraitReference, ClarityAbiTypeTuple, ClarityAbiTypeUInt128, ClarityAbiVariable, Compact, Contract, ContractBuilder, ContractCall, ContractCallFunction, ContractCallTyped, ContractCalls, ContractFactory, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, DeploymentPlan, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, FullContract, FunctionsToContractCalls, MAINNET_BURN_ADDRESS, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, Response, ResponseErr, ResponseOk, ResultAssets, SmartContractEvent, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TypedAbi, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, bootContractIdentifier, broadcast, contractFactory, cvToString, cvToValue, err, expectErr, expectOk, fetchMapGet, filterEvents, getContractIdentifier, getContractNameFromPath, getContractPrincipalCV, hexToCvValue, makeContracts, ok, parseToCV, pureProxy, ro, roErr, roOk, toCamelCase, transformArgsToCV };
455
+ export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ClarityAbi, ClarityAbiFunction, ClarityAbiMap, ClarityAbiType, ClarityAbiTypeBool, ClarityAbiTypeBuffer, ClarityAbiTypeFungibleToken, ClarityAbiTypeInt128, ClarityAbiTypeList, ClarityAbiTypeNonFungibleToken, ClarityAbiTypeNone, ClarityAbiTypeOptional, ClarityAbiTypePrimitive, ClarityAbiTypePrincipal, ClarityAbiTypeResponse, ClarityAbiTypeStringAscii, ClarityAbiTypeStringUtf8, ClarityAbiTypeTraitReference, ClarityAbiTypeTuple, ClarityAbiTypeUInt128, ClarityAbiVariable, Compact, Contract, ContractBuilder, ContractCall, ContractCallFunction, ContractCallTyped, ContractCalls, ContractFactory, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, DeploymentPlan, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, FullContract, FunctionsToContractCalls, MAINNET_BURN_ADDRESS, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, Response, ResponseErr, ResponseOk, ResultAssets, SimnetDeploymentPlan, SmartContractEvent, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TypedAbi, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, bootContractIdentifier, broadcast, contractFactory, cvToString, cvToValue, deploymentFactory, err, expectErr, expectOk, fetchMapGet, filterEvents, getContractIdentifier, getContractNameFromPath, getContractPrincipalCV, hexToCvValue, makeContracts, ok, parseToCV, pureProxy, ro, roErr, roOk, toCamelCase, transformArgsToCV };
@@ -1,2 +1,2 @@
1
1
  /// <reference path="./index.d.ts" />
2
- import{contractPrincipalCV as _}from"https://deno.land/x/microstacks/clarity.js";var R="ST000000000000000000002AMW42H",w="SP000000000000000000002Q6VF78",d=(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...o]=n.replace("!","").replace("?","").split("-"),i=e?`${r[0].toUpperCase()}${r.slice(1)}`:r;return o.forEach(l=>{i+=l[0].toUpperCase()+l.slice(1)}),i},h=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},ut=t=>`${t.address}.${t.name}`,ft=t=>{let e=h(t.contractFile);return _(t.address,e)};function yt(t,e){return`${e?w:R}.${t}`}var O=(c=>(c.ContractEvent="contract_event",c.StxTransferEvent="stx_transfer_event",c.StxMintEvent="stx_mint_event",c.StxBurnEvent="stx_burn_event",c.StxLockEvent="stx_lock_event",c.NftTransferEvent="nft_transfer_event",c.NftMintEvent="nft_mint_event",c.NftBurnEvent="nft_burn_event",c.FtTransferEvent="ft_transfer_event",c.FtMintEvent="ft_mint_event",c.FtBurnEvent="ft_burn_event",c))(O||{});function Ct(t,e){return t.filter(n=>n.type===e)}function xt(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,l=`${i}.${o.name}`,s=o.contract(i,o.name);n[r]={identifier:l,contract:s}}return n}import{addressToString as x,ClarityType as a,uintCV as F,contractPrincipalCV as P,intCV as B,stringAsciiCV as V,stringUtf8CV as I,noneCV as $,someCV as M,tupleCV as U,listCV as D,hexToCV as j,bufferCV as L}from"https://deno.land/x/microstacks/clarity.js";import{isClarityAbiList as K,isClarityAbiOptional as H,isClarityAbiStringAscii as q,isClarityAbiStringUtf8 as G,isClarityAbiTuple as J,isClarityAbiBuffer as z,parseToCV as m}from"https://deno.land/x/microstacks/transactions.js";import{bytesToAscii as Q,bytesToHex as W}from"https://deno.land/x/microstacks/common.js";function Z(t){return{isOk:!0,value:t}}function X(t){return{isOk:!1,value:t}}function g(t){if(t.type===a.PrincipalStandard)return x(t.address);if(t.type===a.PrincipalContract)return`${x(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function p(t,e=!1){switch(t.type){case a.BoolTrue:return!0;case a.BoolFalse:return!1;case a.Int:case a.UInt:return t.value;case a.Buffer:return t.buffer;case a.OptionalNone:return null;case a.OptionalSome:return p(t.value);case a.ResponseErr:return e?X(p(t.value)):p(t.value);case a.ResponseOk:return e?Z(p(t.value)):p(t.value);case a.PrincipalStandard:case a.PrincipalContract:return g(t);case a.List:return t.list.map(o=>p(o));case a.Tuple:let n={};return Object.keys(t.data).map(o=>[o,p(t.data[o])]).forEach(([o,i])=>{n[o]=i}),n;case a.StringASCII:return t.data;case a.StringUTF8:return t.data}}function wt(t,e=!1){return p(j(t),e)}function v(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function u(t,e){if(J(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=t[r.name];n[r.name]=u(o,r.type)}),U(n)}else if(K(e)){let r=t.map(o=>u(o,e.list.type));return D(r)}else{if(H(e))return t?M(u(t,e.optional)):$();if(q(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return V(t)}else if(G(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return I(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return m(n,e)}else if(e==="uint128"){let n=v(t);return F(n.toString())}else if(e==="int128"){let n=v(t);return B(n.toString())}else if(e==="trait_reference"){if(typeof t!="string")throw new Error("Invalid input for trait_reference");let[n,r]=t.split(".");return P(n,r)}else if(z(e))return L(t)}return m(t,e)}function f(t,e="hex"){switch(t.type){case a.BoolTrue:return"true";case a.BoolFalse:return"false";case a.Int:return t.value.toString();case a.UInt:return`u${t.value.toString()}`;case a.Buffer:if(e==="tryAscii"){let n=Q(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${W(t.buffer)}`;case a.OptionalNone:return"none";case a.OptionalSome:return`(some ${f(t.value,e)})`;case a.ResponseErr:return`(err ${f(t.value,e)})`;case a.ResponseOk:return`(ok ${f(t.value,e)})`;case a.PrincipalStandard:case a.PrincipalContract:return`'${g(t)}`;case a.List:return`(list ${t.list.map(n=>f(n,e)).join(" ")})`;case a.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${f(t.data[n],e)})`).join(" ")})`;case a.StringASCII:return`"${t.data}"`;case a.StringUTF8:return`u"${t.data}"`}}function E(t,e){return e.map((n,r)=>u(n,t.args[r].type))}function b(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function A(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function C(t,e){return E(t,e)}function Y(t,e){let n=t.abi.functions.find(o=>d(o.name)===e);if(n)return function(...o){return{functionArgs:C(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>d(o.name)===e);if(r)return o=>{let i=u(o,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:o,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var tt={get:Y},et=t=>new Proxy(t,tt);import{parseReadOnlyResponse as nt,fetchContractDataMapEntry as rt}from"https://deno.land/x/microstacks/api.js";import{cvToHex as k,hexToCV as ot}from"https://deno.land/x/microstacks/clarity.js";import{fetchPrivate as at}from"https://deno.land/x/microstacks/common.js";import{broadcastTransaction as it}from"https://deno.land/x/microstacks/transactions.js";async function S(t,e){let r=`${e.network.getReadOnlyFunctionCallApiUrl(t.contractAddress,t.contractName,t.function.name)}?tip=latest`,o=JSON.stringify({sender:t.contractAddress,arguments:t.functionArgs.map(s=>typeof s=="string"?s:k(s))}),i=await at(r,{method:"POST",body:o,headers:{"Content-Type":"application/json"}});if(!i.ok){let s="";try{s=await i.text()}catch{}throw new Error(`Error calling read-only function. Response ${i.status}: ${i.statusText}. Attempted to fetch ${r} and failed with the message: "${s}"`)}let l=nt(await i.json());return p(l,!0)}async function Lt(t,e){let n=await S(t,e);return b(n)}async function Kt(t,e){let n=await S(t,e);return A(n)}async function Ht(t,e){let n=k(t.key),r=await rt({contract_address:t.contractAddress,contract_name:t.contractName,map_name:t.map.name,lookup_key:n,tip:"latest",url:e.network.getCoreApiUrl(),proof:0}),o=ot(r.data);return p(o,!0)}async function qt(t,e){let n=await it(t,e.network);if("error"in n)throw new Error(`Error broadcasting tx: ${n.error} - ${n.reason} - ${n.reason_data}`);return{txId:n.txid,stacksTransaction:t}}function st(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function N(t,e){let n=st(e.plan.batches);for(let r of n)if("requirement-publish"in r){let[o,i]=r["requirement-publish"]["contract-id"].split(".");if(i===t)return r["requirement-publish"]["contract-id"]}else if("emulated-contract-publish"in r){if(r["emulated-contract-publish"]["contract-name"]===t)return`${r["emulated-contract-publish"]["emulated-sender"]}.${t}`}else if("contract-publish"in r){let o=r["contract-publish"];if(o["contract-name"]===t)return`${o["expected-sender"]}.${o["contract-name"]}`}throw new Error(`Unable to find ID for contract '${t}'`)}function Zt(t,e){let n=t;return Object.keys(t).forEach(r=>{typeof e=="string"?n[r].identifier=`${e}.${r}`:n[r].identifier=N(r,e);let o=t[r];Object.keys(t[r].functions).forEach(i=>{let l=i,s=(...y)=>{let T=o.functions[l];return{functionArgs:C(T,y),contractAddress:e,contractName:o.contractName,function:T,nativeArgs:y}};n[r][l]=s})}),n}export{O as CoreNodeEventType,w as MAINNET_BURN_ADDRESS,R as TESTNET_BURN_ADDRESS,yt as bootContractIdentifier,qt as broadcast,Zt as contractFactory,f as cvToString,p as cvToValue,X as err,A as expectErr,b as expectOk,Ht as fetchMapGet,Ct as filterEvents,ut as getContractIdentifier,h as getContractNameFromPath,ft as getContractPrincipalCV,wt as hexToCvValue,xt as makeContracts,Z as ok,u as parseToCV,et as pureProxy,S as ro,Kt as roErr,Lt as roOk,d as toCamelCase,E as transformArgsToCV};
2
+ import{contractPrincipalCV as V}from"https://deno.land/x/microstacks/clarity.js";var I="ST000000000000000000002AMW42H",$="SP000000000000000000002Q6VF78",d=(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...o]=n.replace("!","").replace("?","").split("-"),p=`${e?r[0].toUpperCase():r[0].toLowerCase()}${r.slice(1)}`;return o.forEach(s=>{p+=s[0].toUpperCase()+s.slice(1)}),p},M=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},xt=t=>`${t.address}.${t.name}`,vt=t=>{let e=M(t.contractFile);return V(t.address,e)};function gt(t,e){return`${e?$:I}.${t}`}var U=(c=>(c.ContractEvent="contract_event",c.StxTransferEvent="stx_transfer_event",c.StxMintEvent="stx_mint_event",c.StxBurnEvent="stx_burn_event",c.StxLockEvent="stx_lock_event",c.NftTransferEvent="nft_transfer_event",c.NftMintEvent="nft_mint_event",c.NftBurnEvent="nft_burn_event",c.FtTransferEvent="ft_transfer_event",c.FtMintEvent="ft_mint_event",c.FtBurnEvent="ft_burn_event",c))(U||{});function bt(t,e){return t.filter(n=>n.type===e)}function kt(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,p=`${i}.${o.name}`,s=o.contract(i,o.name);n[r]={identifier:p,contract:s}}return n}import{addressToString as k,ClarityType as a,uintCV as D,contractPrincipalCV as j,intCV as L,stringAsciiCV as q,stringUtf8CV as K,noneCV as H,someCV as G,tupleCV as J,listCV as z,hexToCV as Q,bufferCV as W}from"https://deno.land/x/microstacks/clarity.js";import{isClarityAbiList as Z,isClarityAbiOptional as X,isClarityAbiStringAscii as Y,isClarityAbiStringUtf8 as tt,isClarityAbiTuple as et,isClarityAbiBuffer as nt,parseToCV as h}from"https://deno.land/x/microstacks/transactions.js";import{bytesToAscii as rt,bytesToHex as ot}from"https://deno.land/x/microstacks/common.js";function at(t){return{isOk:!0,value:t}}function it(t){return{isOk:!1,value:t}}function N(t){if(t.type===a.PrincipalStandard)return k(t.address);if(t.type===a.PrincipalContract)return`${k(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function l(t,e=!1){switch(t.type){case a.BoolTrue:return!0;case a.BoolFalse:return!1;case a.Int:case a.UInt:return t.value;case a.Buffer:return t.buffer;case a.OptionalNone:return null;case a.OptionalSome:return l(t.value);case a.ResponseErr:return e?it(l(t.value)):l(t.value);case a.ResponseOk:return e?at(l(t.value)):l(t.value);case a.PrincipalStandard:case a.PrincipalContract:return N(t);case a.List:return t.list.map(o=>l(o));case a.Tuple:let n={};return Object.keys(t.data).map(o=>[o,l(t.data[o])]).forEach(([o,i])=>{n[o]=i}),n;case a.StringASCII:return t.data;case a.StringUTF8:return t.data}}function It(t,e=!1){return l(Q(t),e)}function S(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function y(t,e){if(et(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=t[r.name];n[r.name]=y(o,r.type)}),J(n)}else if(Z(e)){let r=t.map(o=>y(o,e.list.type));return z(r)}else{if(X(e))return t?G(y(t,e.optional)):H();if(Y(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return q(t)}else if(tt(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return K(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return h(n,e)}else if(e==="uint128"){let n=S(t);return D(n.toString())}else if(e==="int128"){let n=S(t);return L(n.toString())}else if(e==="trait_reference"){if(typeof t!="string")throw new Error("Invalid input for trait_reference");let[n,r]=t.split(".");return j(n,r)}else if(nt(e))return W(t)}return h(t,e)}function C(t,e="hex"){switch(t.type){case a.BoolTrue:return"true";case a.BoolFalse:return"false";case a.Int:return t.value.toString();case a.UInt:return`u${t.value.toString()}`;case a.Buffer:if(e==="tryAscii"){let n=rt(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${ot(t.buffer)}`;case a.OptionalNone:return"none";case a.OptionalSome:return`(some ${C(t.value,e)})`;case a.ResponseErr:return`(err ${C(t.value,e)})`;case a.ResponseOk:return`(ok ${C(t.value,e)})`;case a.PrincipalStandard:case a.PrincipalContract:return`'${N(t)}`;case a.List:return`(list ${t.list.map(n=>C(n,e)).join(" ")})`;case a.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${C(t.data[n],e)})`).join(" ")})`;case a.StringASCII:return`"${t.data}"`;case a.StringUTF8:return`u"${t.data}"`}}function w(t,e){return e.map((n,r)=>y(n,t.args[r].type))}function _(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function F(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function m(t,e){return w(t,e)}function st(t,e){let n=t.abi.functions.find(o=>d(o.name)===e);if(n)return function(...o){return{functionArgs:m(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>d(o.name)===e);if(r)return o=>{let i=y(o,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:o,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var ct={get:st},pt=t=>new Proxy(t,ct);import{parseReadOnlyResponse as lt,fetchContractDataMapEntry as ut}from"https://deno.land/x/microstacks/api.js";import{cvToHex as R,hexToCV as ft}from"https://deno.land/x/microstacks/clarity.js";import{fetchPrivate as yt}from"https://deno.land/x/microstacks/common.js";import{broadcastTransaction as dt}from"https://deno.land/x/microstacks/transactions.js";async function P(t,e){let r=`${e.network.getReadOnlyFunctionCallApiUrl(t.contractAddress,t.contractName,t.function.name)}?tip=latest`,o=JSON.stringify({sender:t.contractAddress,arguments:t.functionArgs.map(s=>typeof s=="string"?s:R(s))}),i=await yt(r,{method:"POST",body:o,headers:{"Content-Type":"application/json"}});if(!i.ok){let s="";try{s=await i.text()}catch{}throw new Error(`Error calling read-only function. Response ${i.status}: ${i.statusText}. Attempted to fetch ${r} and failed with the message: "${s}"`)}let p=lt(await i.json());return l(p,!0)}async function Qt(t,e){let n=await P(t,e);return _(n)}async function Wt(t,e){let n=await P(t,e);return F(n)}async function Zt(t,e){let n=R(t.key),r=await ut({contract_address:t.contractAddress,contract_name:t.contractName,map_name:t.map.name,lookup_key:n,tip:"latest",url:e.network.getCoreApiUrl(),proof:0}),o=ft(r.data);return l(o,!0)}async function Xt(t,e){let n=await dt(t,e.network);if("error"in n)throw new Error(`Error broadcasting tx: ${n.error} - ${n.reason} - ${n.reason_data}`);return{txId:n.txid,stacksTransaction:t}}function x(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function O(t,e){let n=x(e.plan.batches);for(let r of n)if("requirement-publish"in r){let[o,i]=r["requirement-publish"]["contract-id"].split(".");if(i===t)return r}else if("emulated-contract-publish"in r){if(r["emulated-contract-publish"]["contract-name"]===t)return r}else if("contract-publish"in r&&r["contract-publish"]["contract-name"]===t)return r;throw new Error(`Unable to find deployment tx for contract '${t}'`)}function v(t){if("requirement-publish"in t)return t["requirement-publish"].path;if("emulated-contract-publish"in t)return t["emulated-contract-publish"].path;if("contract-publish"in t)return t["contract-publish"].path;throw new Error("Couldnt get path for deployment tx.")}function g(t){if("requirement-publish"in t){let[e,n]=t["requirement-publish"]["contract-id"].split(".");return t["requirement-publish"]["contract-id"]}else if("emulated-contract-publish"in t){let e=t["emulated-contract-publish"];return`${e["emulated-sender"]}.${e["contract-name"]}`}else if("contract-publish"in t){let e=t["contract-publish"];return`${e["expected-sender"]}.${e["contract-name"]}`}throw console.log(t),new Error("Unable to find ID for contract.")}function se(t,e){let n=t;return Object.keys(t).forEach(r=>{let o=t[r];if(typeof e=="string")n[r].identifier=`${e}.${r}`;else{let i=O(o.contractName,e);n[r].contractFile=v(i),n[r].identifier=g(i)}Object.keys(t[r].functions).forEach(i=>{let p=i,s=(...u)=>{let T=o.functions[p];return{functionArgs:m(T,u),contractAddress:e,contractName:o.contractName,function:T,nativeArgs:u}};n[r][p]=s})}),n}function ce(t,e){let n={};return x(e.plan.batches).forEach(o=>{let i=g(o),[p,s]=i.split("."),u=d(s),T=t[u],f=t[u];n[u]=f,f.contractFile=v(o),f.identifier=i,Object.keys(t[u].functions).forEach(c=>{let E=c,B=(...b)=>{let A=T.functions[E];return{functionArgs:m(A,b),contractAddress:p,contractName:f.contractName,function:A,nativeArgs:b}};f[E]=B})}),n}export{U as CoreNodeEventType,$ as MAINNET_BURN_ADDRESS,I as TESTNET_BURN_ADDRESS,gt as bootContractIdentifier,Xt as broadcast,se as contractFactory,C as cvToString,l as cvToValue,ce as deploymentFactory,it as err,F as expectErr,_ as expectOk,Zt as fetchMapGet,bt as filterEvents,xt as getContractIdentifier,M as getContractNameFromPath,vt as getContractPrincipalCV,It as hexToCvValue,kt as makeContracts,at as ok,y as parseToCV,pt as pureProxy,P as ro,Wt as roErr,Qt as roOk,d as toCamelCase,w as transformArgsToCV};
package/dist/index.d.ts CHANGED
@@ -391,6 +391,7 @@ interface ContractCall<T> {
391
391
  functionArgs: ClarityValue[];
392
392
  contractAddress: string;
393
393
  contractName: string;
394
+ _r?: T;
394
395
  }
395
396
  interface ContractCallTyped<Args, R> extends Omit<ContractCall<R>, 'nativeArgs'> {
396
397
  nativeArgs: Args;
@@ -406,11 +407,14 @@ declare type FunctionsToContractCalls<T> = T extends ContractFunctions ? {
406
407
  } : never;
407
408
  declare type FullContract<T> = T extends TypedAbi ? T & FunctionsToContractCalls<T['functions']> & {
408
409
  identifier: string;
410
+ } & {
411
+ contractFile: string;
409
412
  } : never;
410
413
  declare type ContractFactory<T extends AllContracts> = {
411
414
  [key in keyof T]: FullContract<T[key]>;
412
415
  };
413
416
  declare function contractFactory<T extends AllContracts>(contracts: T, deployer: string | DeploymentPlan): ContractFactory<T>;
417
+ declare function deploymentFactory<T extends AllContracts>(contracts: T, deployer: DeploymentPlan): ContractFactory<T>;
414
418
 
415
419
  interface PureContractInfo {
416
420
  abi: ClarityAbi;
@@ -448,4 +452,4 @@ declare function broadcast(transaction: StacksTransaction, options: ApiOptions):
448
452
  stacksTransaction: StacksTransaction;
449
453
  }>;
450
454
 
451
- export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ClarityAbi, ClarityAbiFunction, ClarityAbiMap, ClarityAbiType, ClarityAbiTypeBool, ClarityAbiTypeBuffer, ClarityAbiTypeFungibleToken, ClarityAbiTypeInt128, ClarityAbiTypeList, ClarityAbiTypeNonFungibleToken, ClarityAbiTypeNone, ClarityAbiTypeOptional, ClarityAbiTypePrimitive, ClarityAbiTypePrincipal, ClarityAbiTypeResponse, ClarityAbiTypeStringAscii, ClarityAbiTypeStringUtf8, ClarityAbiTypeTraitReference, ClarityAbiTypeTuple, ClarityAbiTypeUInt128, ClarityAbiVariable, Compact, Contract, ContractBuilder, ContractCall, ContractCallFunction, ContractCallTyped, ContractCalls, ContractFactory, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, DeploymentPlan, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, FullContract, FunctionsToContractCalls, MAINNET_BURN_ADDRESS, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, Response, ResponseErr, ResponseOk, ResultAssets, SmartContractEvent, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TypedAbi, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, bootContractIdentifier, broadcast, contractFactory, cvToString, cvToValue, err, expectErr, expectOk, fetchMapGet, filterEvents, getContractIdentifier, getContractNameFromPath, getContractPrincipalCV, hexToCvValue, makeContracts, ok, parseToCV, pureProxy, ro, roErr, roOk, toCamelCase, transformArgsToCV };
455
+ export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ClarityAbi, ClarityAbiFunction, ClarityAbiMap, ClarityAbiType, ClarityAbiTypeBool, ClarityAbiTypeBuffer, ClarityAbiTypeFungibleToken, ClarityAbiTypeInt128, ClarityAbiTypeList, ClarityAbiTypeNonFungibleToken, ClarityAbiTypeNone, ClarityAbiTypeOptional, ClarityAbiTypePrimitive, ClarityAbiTypePrincipal, ClarityAbiTypeResponse, ClarityAbiTypeStringAscii, ClarityAbiTypeStringUtf8, ClarityAbiTypeTraitReference, ClarityAbiTypeTuple, ClarityAbiTypeUInt128, ClarityAbiVariable, Compact, Contract, ContractBuilder, ContractCall, ContractCallFunction, ContractCallTyped, ContractCalls, ContractFactory, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, DeploymentPlan, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, FullContract, FunctionsToContractCalls, MAINNET_BURN_ADDRESS, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, Response, ResponseErr, ResponseOk, ResultAssets, SimnetDeploymentPlan, SmartContractEvent, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TypedAbi, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, bootContractIdentifier, broadcast, contractFactory, cvToString, cvToValue, deploymentFactory, err, expectErr, expectOk, fetchMapGet, filterEvents, getContractIdentifier, getContractNameFromPath, getContractPrincipalCV, hexToCvValue, makeContracts, ok, parseToCV, pureProxy, ro, roErr, roOk, toCamelCase, transformArgsToCV };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _clarity = require('micro-stacks/clarity');var R="ST000000000000000000002AMW42H",w= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",d= exports.toCamelCase =(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...o]=n.replace("!","").replace("?","").split("-"),i=e?`${r[0].toUpperCase()}${r.slice(1)}`:r;return o.forEach(l=>{i+=l[0].toUpperCase()+l.slice(1)}),i},h= exports.getContractNameFromPath =t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},ut= exports.getContractIdentifier =t=>`${t.address}.${t.name}`,ft= exports.getContractPrincipalCV =t=>{let e=h(t.contractFile);return _clarity.contractPrincipalCV.call(void 0, t.address,e)};function yt(t,e){return`${e?w:R}.${t}`}var O=(c=>(c.ContractEvent="contract_event",c.StxTransferEvent="stx_transfer_event",c.StxMintEvent="stx_mint_event",c.StxBurnEvent="stx_burn_event",c.StxLockEvent="stx_lock_event",c.NftTransferEvent="nft_transfer_event",c.NftMintEvent="nft_mint_event",c.NftBurnEvent="nft_burn_event",c.FtTransferEvent="ft_transfer_event",c.FtMintEvent="ft_mint_event",c.FtBurnEvent="ft_burn_event",c))(O||{});function Ct(t,e){return t.filter(n=>n.type===e)}function xt(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,l=`${i}.${o.name}`,s=o.contract(i,o.name);n[r]={identifier:l,contract:s}}return n}var _transactions = require('micro-stacks/transactions');var _common = require('micro-stacks/common');function Z(t){return{isOk:!0,value:t}}function X(t){return{isOk:!1,value:t}}function g(t){if(t.type===_clarity.ClarityType.PrincipalStandard)return _clarity.addressToString.call(void 0, t.address);if(t.type===_clarity.ClarityType.PrincipalContract)return`${_clarity.addressToString.call(void 0, t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function p(t,e=!1){switch(t.type){case _clarity.ClarityType.BoolTrue:return!0;case _clarity.ClarityType.BoolFalse:return!1;case _clarity.ClarityType.Int:case _clarity.ClarityType.UInt:return t.value;case _clarity.ClarityType.Buffer:return t.buffer;case _clarity.ClarityType.OptionalNone:return null;case _clarity.ClarityType.OptionalSome:return p(t.value);case _clarity.ClarityType.ResponseErr:return e?X(p(t.value)):p(t.value);case _clarity.ClarityType.ResponseOk:return e?Z(p(t.value)):p(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return g(t);case _clarity.ClarityType.List:return t.list.map(o=>p(o));case _clarity.ClarityType.Tuple:let n={};return Object.keys(t.data).map(o=>[o,p(t.data[o])]).forEach(([o,i])=>{n[o]=i}),n;case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function wt(t,e=!1){return p(_clarity.hexToCV.call(void 0, t),e)}function v(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function u(t,e){if(_transactions.isClarityAbiTuple.call(void 0, e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=t[r.name];n[r.name]=u(o,r.type)}),_clarity.tupleCV.call(void 0, n)}else if(_transactions.isClarityAbiList.call(void 0, e)){let r=t.map(o=>u(o,e.list.type));return _clarity.listCV.call(void 0, r)}else{if(_transactions.isClarityAbiOptional.call(void 0, e))return t?_clarity.someCV.call(void 0, u(t,e.optional)):_clarity.noneCV.call(void 0, );if(_transactions.isClarityAbiStringAscii.call(void 0, e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return _clarity.stringAsciiCV.call(void 0, t)}else if(_transactions.isClarityAbiStringUtf8.call(void 0, e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return _clarity.stringUtf8CV.call(void 0, t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return _transactions.parseToCV.call(void 0, n,e)}else if(e==="uint128"){let n=v(t);return _clarity.uintCV.call(void 0, n.toString())}else if(e==="int128"){let n=v(t);return _clarity.intCV.call(void 0, n.toString())}else if(e==="trait_reference"){if(typeof t!="string")throw new Error("Invalid input for trait_reference");let[n,r]=t.split(".");return _clarity.contractPrincipalCV.call(void 0, n,r)}else if(_transactions.isClarityAbiBuffer.call(void 0, e))return _clarity.bufferCV.call(void 0, t)}return _transactions.parseToCV.call(void 0, t,e)}function f(t,e="hex"){switch(t.type){case _clarity.ClarityType.BoolTrue:return"true";case _clarity.ClarityType.BoolFalse:return"false";case _clarity.ClarityType.Int:return t.value.toString();case _clarity.ClarityType.UInt:return`u${t.value.toString()}`;case _clarity.ClarityType.Buffer:if(e==="tryAscii"){let n=_common.bytesToAscii.call(void 0, t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${_common.bytesToHex.call(void 0, t.buffer)}`;case _clarity.ClarityType.OptionalNone:return"none";case _clarity.ClarityType.OptionalSome:return`(some ${f(t.value,e)})`;case _clarity.ClarityType.ResponseErr:return`(err ${f(t.value,e)})`;case _clarity.ClarityType.ResponseOk:return`(ok ${f(t.value,e)})`;case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return`'${g(t)}`;case _clarity.ClarityType.List:return`(list ${t.list.map(n=>f(n,e)).join(" ")})`;case _clarity.ClarityType.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${f(t.data[n],e)})`).join(" ")})`;case _clarity.ClarityType.StringASCII:return`"${t.data}"`;case _clarity.ClarityType.StringUTF8:return`u"${t.data}"`}}function E(t,e){return e.map((n,r)=>u(n,t.args[r].type))}function b(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function A(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function C(t,e){return E(t,e)}function Y(t,e){let n=t.abi.functions.find(o=>d(o.name)===e);if(n)return function(...o){return{functionArgs:C(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>d(o.name)===e);if(r)return o=>{let i=u(o,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:o,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var tt={get:Y},et= exports.pureProxy =t=>new Proxy(t,tt);var _api = require('micro-stacks/api');async function S(t,e){let r=`${e.network.getReadOnlyFunctionCallApiUrl(t.contractAddress,t.contractName,t.function.name)}?tip=latest`,o=JSON.stringify({sender:t.contractAddress,arguments:t.functionArgs.map(s=>typeof s=="string"?s:_clarity.cvToHex.call(void 0, s))}),i=await _common.fetchPrivate.call(void 0, r,{method:"POST",body:o,headers:{"Content-Type":"application/json"}});if(!i.ok){let s="";try{s=await i.text()}catch (e2){}throw new Error(`Error calling read-only function. Response ${i.status}: ${i.statusText}. Attempted to fetch ${r} and failed with the message: "${s}"`)}let l=_api.parseReadOnlyResponse.call(void 0, await i.json());return p(l,!0)}async function Lt(t,e){let n=await S(t,e);return b(n)}async function Kt(t,e){let n=await S(t,e);return A(n)}async function Ht(t,e){let n=_clarity.cvToHex.call(void 0, t.key),r=await _api.fetchContractDataMapEntry.call(void 0, {contract_address:t.contractAddress,contract_name:t.contractName,map_name:t.map.name,lookup_key:n,tip:"latest",url:e.network.getCoreApiUrl(),proof:0}),o=_clarity.hexToCV.call(void 0, r.data);return p(o,!0)}async function qt(t,e){let n=await _transactions.broadcastTransaction.call(void 0, t,e.network);if("error"in n)throw new Error(`Error broadcasting tx: ${n.error} - ${n.reason} - ${n.reason_data}`);return{txId:n.txid,stacksTransaction:t}}function st(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function N(t,e){let n=st(e.plan.batches);for(let r of n)if("requirement-publish"in r){let[o,i]=r["requirement-publish"]["contract-id"].split(".");if(i===t)return r["requirement-publish"]["contract-id"]}else if("emulated-contract-publish"in r){if(r["emulated-contract-publish"]["contract-name"]===t)return`${r["emulated-contract-publish"]["emulated-sender"]}.${t}`}else if("contract-publish"in r){let o=r["contract-publish"];if(o["contract-name"]===t)return`${o["expected-sender"]}.${o["contract-name"]}`}throw new Error(`Unable to find ID for contract '${t}'`)}function Zt(t,e){let n=t;return Object.keys(t).forEach(r=>{typeof e=="string"?n[r].identifier=`${e}.${r}`:n[r].identifier=N(r,e);let o=t[r];Object.keys(t[r].functions).forEach(i=>{let l=i,s=(...y)=>{let T=o.functions[l];return{functionArgs:C(T,y),contractAddress:e,contractName:o.contractName,function:T,nativeArgs:y}};n[r][l]=s})}),n}exports.CoreNodeEventType = O; exports.MAINNET_BURN_ADDRESS = w; exports.TESTNET_BURN_ADDRESS = R; exports.bootContractIdentifier = yt; exports.broadcast = qt; exports.contractFactory = Zt; exports.cvToString = f; exports.cvToValue = p; exports.err = X; exports.expectErr = A; exports.expectOk = b; exports.fetchMapGet = Ht; exports.filterEvents = Ct; exports.getContractIdentifier = ut; exports.getContractNameFromPath = h; exports.getContractPrincipalCV = ft; exports.hexToCvValue = wt; exports.makeContracts = xt; exports.ok = Z; exports.parseToCV = u; exports.pureProxy = et; exports.ro = S; exports.roErr = Kt; exports.roOk = Lt; exports.toCamelCase = d; exports.transformArgsToCV = E;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _clarity = require('micro-stacks/clarity');var I="ST000000000000000000002AMW42H",$= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",d= exports.toCamelCase =(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...o]=n.replace("!","").replace("?","").split("-"),p=`${e?r[0].toUpperCase():r[0].toLowerCase()}${r.slice(1)}`;return o.forEach(s=>{p+=s[0].toUpperCase()+s.slice(1)}),p},M= exports.getContractNameFromPath =t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},xt= exports.getContractIdentifier =t=>`${t.address}.${t.name}`,vt= exports.getContractPrincipalCV =t=>{let e=M(t.contractFile);return _clarity.contractPrincipalCV.call(void 0, t.address,e)};function gt(t,e){return`${e?$:I}.${t}`}var U=(c=>(c.ContractEvent="contract_event",c.StxTransferEvent="stx_transfer_event",c.StxMintEvent="stx_mint_event",c.StxBurnEvent="stx_burn_event",c.StxLockEvent="stx_lock_event",c.NftTransferEvent="nft_transfer_event",c.NftMintEvent="nft_mint_event",c.NftBurnEvent="nft_burn_event",c.FtTransferEvent="ft_transfer_event",c.FtMintEvent="ft_mint_event",c.FtBurnEvent="ft_burn_event",c))(U||{});function bt(t,e){return t.filter(n=>n.type===e)}function kt(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,p=`${i}.${o.name}`,s=o.contract(i,o.name);n[r]={identifier:p,contract:s}}return n}var _transactions = require('micro-stacks/transactions');var _common = require('micro-stacks/common');function at(t){return{isOk:!0,value:t}}function it(t){return{isOk:!1,value:t}}function N(t){if(t.type===_clarity.ClarityType.PrincipalStandard)return _clarity.addressToString.call(void 0, t.address);if(t.type===_clarity.ClarityType.PrincipalContract)return`${_clarity.addressToString.call(void 0, t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function l(t,e=!1){switch(t.type){case _clarity.ClarityType.BoolTrue:return!0;case _clarity.ClarityType.BoolFalse:return!1;case _clarity.ClarityType.Int:case _clarity.ClarityType.UInt:return t.value;case _clarity.ClarityType.Buffer:return t.buffer;case _clarity.ClarityType.OptionalNone:return null;case _clarity.ClarityType.OptionalSome:return l(t.value);case _clarity.ClarityType.ResponseErr:return e?it(l(t.value)):l(t.value);case _clarity.ClarityType.ResponseOk:return e?at(l(t.value)):l(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return N(t);case _clarity.ClarityType.List:return t.list.map(o=>l(o));case _clarity.ClarityType.Tuple:let n={};return Object.keys(t.data).map(o=>[o,l(t.data[o])]).forEach(([o,i])=>{n[o]=i}),n;case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function It(t,e=!1){return l(_clarity.hexToCV.call(void 0, t),e)}function S(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function y(t,e){if(_transactions.isClarityAbiTuple.call(void 0, e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=t[r.name];n[r.name]=y(o,r.type)}),_clarity.tupleCV.call(void 0, n)}else if(_transactions.isClarityAbiList.call(void 0, e)){let r=t.map(o=>y(o,e.list.type));return _clarity.listCV.call(void 0, r)}else{if(_transactions.isClarityAbiOptional.call(void 0, e))return t?_clarity.someCV.call(void 0, y(t,e.optional)):_clarity.noneCV.call(void 0, );if(_transactions.isClarityAbiStringAscii.call(void 0, e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return _clarity.stringAsciiCV.call(void 0, t)}else if(_transactions.isClarityAbiStringUtf8.call(void 0, e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return _clarity.stringUtf8CV.call(void 0, t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return _transactions.parseToCV.call(void 0, n,e)}else if(e==="uint128"){let n=S(t);return _clarity.uintCV.call(void 0, n.toString())}else if(e==="int128"){let n=S(t);return _clarity.intCV.call(void 0, n.toString())}else if(e==="trait_reference"){if(typeof t!="string")throw new Error("Invalid input for trait_reference");let[n,r]=t.split(".");return _clarity.contractPrincipalCV.call(void 0, n,r)}else if(_transactions.isClarityAbiBuffer.call(void 0, e))return _clarity.bufferCV.call(void 0, t)}return _transactions.parseToCV.call(void 0, t,e)}function C(t,e="hex"){switch(t.type){case _clarity.ClarityType.BoolTrue:return"true";case _clarity.ClarityType.BoolFalse:return"false";case _clarity.ClarityType.Int:return t.value.toString();case _clarity.ClarityType.UInt:return`u${t.value.toString()}`;case _clarity.ClarityType.Buffer:if(e==="tryAscii"){let n=_common.bytesToAscii.call(void 0, t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${_common.bytesToHex.call(void 0, t.buffer)}`;case _clarity.ClarityType.OptionalNone:return"none";case _clarity.ClarityType.OptionalSome:return`(some ${C(t.value,e)})`;case _clarity.ClarityType.ResponseErr:return`(err ${C(t.value,e)})`;case _clarity.ClarityType.ResponseOk:return`(ok ${C(t.value,e)})`;case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return`'${N(t)}`;case _clarity.ClarityType.List:return`(list ${t.list.map(n=>C(n,e)).join(" ")})`;case _clarity.ClarityType.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${C(t.data[n],e)})`).join(" ")})`;case _clarity.ClarityType.StringASCII:return`"${t.data}"`;case _clarity.ClarityType.StringUTF8:return`u"${t.data}"`}}function w(t,e){return e.map((n,r)=>y(n,t.args[r].type))}function _(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function F(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function m(t,e){return w(t,e)}function st(t,e){let n=t.abi.functions.find(o=>d(o.name)===e);if(n)return function(...o){return{functionArgs:m(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>d(o.name)===e);if(r)return o=>{let i=y(o,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:o,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var ct={get:st},pt= exports.pureProxy =t=>new Proxy(t,ct);var _api = require('micro-stacks/api');async function P(t,e){let r=`${e.network.getReadOnlyFunctionCallApiUrl(t.contractAddress,t.contractName,t.function.name)}?tip=latest`,o=JSON.stringify({sender:t.contractAddress,arguments:t.functionArgs.map(s=>typeof s=="string"?s:_clarity.cvToHex.call(void 0, s))}),i=await _common.fetchPrivate.call(void 0, r,{method:"POST",body:o,headers:{"Content-Type":"application/json"}});if(!i.ok){let s="";try{s=await i.text()}catch (e2){}throw new Error(`Error calling read-only function. Response ${i.status}: ${i.statusText}. Attempted to fetch ${r} and failed with the message: "${s}"`)}let p=_api.parseReadOnlyResponse.call(void 0, await i.json());return l(p,!0)}async function Qt(t,e){let n=await P(t,e);return _(n)}async function Wt(t,e){let n=await P(t,e);return F(n)}async function Zt(t,e){let n=_clarity.cvToHex.call(void 0, t.key),r=await _api.fetchContractDataMapEntry.call(void 0, {contract_address:t.contractAddress,contract_name:t.contractName,map_name:t.map.name,lookup_key:n,tip:"latest",url:e.network.getCoreApiUrl(),proof:0}),o=_clarity.hexToCV.call(void 0, r.data);return l(o,!0)}async function Xt(t,e){let n=await _transactions.broadcastTransaction.call(void 0, t,e.network);if("error"in n)throw new Error(`Error broadcasting tx: ${n.error} - ${n.reason} - ${n.reason_data}`);return{txId:n.txid,stacksTransaction:t}}function x(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function O(t,e){let n=x(e.plan.batches);for(let r of n)if("requirement-publish"in r){let[o,i]=r["requirement-publish"]["contract-id"].split(".");if(i===t)return r}else if("emulated-contract-publish"in r){if(r["emulated-contract-publish"]["contract-name"]===t)return r}else if("contract-publish"in r&&r["contract-publish"]["contract-name"]===t)return r;throw new Error(`Unable to find deployment tx for contract '${t}'`)}function v(t){if("requirement-publish"in t)return t["requirement-publish"].path;if("emulated-contract-publish"in t)return t["emulated-contract-publish"].path;if("contract-publish"in t)return t["contract-publish"].path;throw new Error("Couldnt get path for deployment tx.")}function g(t){if("requirement-publish"in t){let[e,n]=t["requirement-publish"]["contract-id"].split(".");return t["requirement-publish"]["contract-id"]}else if("emulated-contract-publish"in t){let e=t["emulated-contract-publish"];return`${e["emulated-sender"]}.${e["contract-name"]}`}else if("contract-publish"in t){let e=t["contract-publish"];return`${e["expected-sender"]}.${e["contract-name"]}`}throw console.log(t),new Error("Unable to find ID for contract.")}function se(t,e){let n=t;return Object.keys(t).forEach(r=>{let o=t[r];if(typeof e=="string")n[r].identifier=`${e}.${r}`;else{let i=O(o.contractName,e);n[r].contractFile=v(i),n[r].identifier=g(i)}Object.keys(t[r].functions).forEach(i=>{let p=i,s=(...u)=>{let T=o.functions[p];return{functionArgs:m(T,u),contractAddress:e,contractName:o.contractName,function:T,nativeArgs:u}};n[r][p]=s})}),n}function ce(t,e){let n={};return x(e.plan.batches).forEach(o=>{let i=g(o),[p,s]=i.split("."),u=d(s),T=t[u],f=t[u];n[u]=f,f.contractFile=v(o),f.identifier=i,Object.keys(t[u].functions).forEach(c=>{let E=c,B=(...b)=>{let A=T.functions[E];return{functionArgs:m(A,b),contractAddress:p,contractName:f.contractName,function:A,nativeArgs:b}};f[E]=B})}),n}exports.CoreNodeEventType = U; exports.MAINNET_BURN_ADDRESS = $; exports.TESTNET_BURN_ADDRESS = I; exports.bootContractIdentifier = gt; exports.broadcast = Xt; exports.contractFactory = se; exports.cvToString = C; exports.cvToValue = l; exports.deploymentFactory = ce; exports.err = it; exports.expectErr = F; exports.expectOk = _; exports.fetchMapGet = Zt; exports.filterEvents = bt; exports.getContractIdentifier = xt; exports.getContractNameFromPath = M; exports.getContractPrincipalCV = vt; exports.hexToCvValue = It; exports.makeContracts = kt; exports.ok = at; exports.parseToCV = y; exports.pureProxy = pt; exports.ro = P; exports.roErr = Wt; exports.roOk = Qt; exports.toCamelCase = d; exports.transformArgsToCV = w;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{contractPrincipalCV as _}from"micro-stacks/clarity";var R="ST000000000000000000002AMW42H",w="SP000000000000000000002Q6VF78",d=(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...o]=n.replace("!","").replace("?","").split("-"),i=e?`${r[0].toUpperCase()}${r.slice(1)}`:r;return o.forEach(l=>{i+=l[0].toUpperCase()+l.slice(1)}),i},h=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},ut=t=>`${t.address}.${t.name}`,ft=t=>{let e=h(t.contractFile);return _(t.address,e)};function yt(t,e){return`${e?w:R}.${t}`}var O=(c=>(c.ContractEvent="contract_event",c.StxTransferEvent="stx_transfer_event",c.StxMintEvent="stx_mint_event",c.StxBurnEvent="stx_burn_event",c.StxLockEvent="stx_lock_event",c.NftTransferEvent="nft_transfer_event",c.NftMintEvent="nft_mint_event",c.NftBurnEvent="nft_burn_event",c.FtTransferEvent="ft_transfer_event",c.FtMintEvent="ft_mint_event",c.FtBurnEvent="ft_burn_event",c))(O||{});function Ct(t,e){return t.filter(n=>n.type===e)}function xt(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,l=`${i}.${o.name}`,s=o.contract(i,o.name);n[r]={identifier:l,contract:s}}return n}import{addressToString as x,ClarityType as a,uintCV as F,contractPrincipalCV as P,intCV as B,stringAsciiCV as V,stringUtf8CV as I,noneCV as $,someCV as M,tupleCV as U,listCV as D,hexToCV as j,bufferCV as L}from"micro-stacks/clarity";import{isClarityAbiList as K,isClarityAbiOptional as H,isClarityAbiStringAscii as q,isClarityAbiStringUtf8 as G,isClarityAbiTuple as J,isClarityAbiBuffer as z,parseToCV as m}from"micro-stacks/transactions";import{bytesToAscii as Q,bytesToHex as W}from"micro-stacks/common";function Z(t){return{isOk:!0,value:t}}function X(t){return{isOk:!1,value:t}}function g(t){if(t.type===a.PrincipalStandard)return x(t.address);if(t.type===a.PrincipalContract)return`${x(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function p(t,e=!1){switch(t.type){case a.BoolTrue:return!0;case a.BoolFalse:return!1;case a.Int:case a.UInt:return t.value;case a.Buffer:return t.buffer;case a.OptionalNone:return null;case a.OptionalSome:return p(t.value);case a.ResponseErr:return e?X(p(t.value)):p(t.value);case a.ResponseOk:return e?Z(p(t.value)):p(t.value);case a.PrincipalStandard:case a.PrincipalContract:return g(t);case a.List:return t.list.map(o=>p(o));case a.Tuple:let n={};return Object.keys(t.data).map(o=>[o,p(t.data[o])]).forEach(([o,i])=>{n[o]=i}),n;case a.StringASCII:return t.data;case a.StringUTF8:return t.data}}function wt(t,e=!1){return p(j(t),e)}function v(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function u(t,e){if(J(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=t[r.name];n[r.name]=u(o,r.type)}),U(n)}else if(K(e)){let r=t.map(o=>u(o,e.list.type));return D(r)}else{if(H(e))return t?M(u(t,e.optional)):$();if(q(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return V(t)}else if(G(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return I(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return m(n,e)}else if(e==="uint128"){let n=v(t);return F(n.toString())}else if(e==="int128"){let n=v(t);return B(n.toString())}else if(e==="trait_reference"){if(typeof t!="string")throw new Error("Invalid input for trait_reference");let[n,r]=t.split(".");return P(n,r)}else if(z(e))return L(t)}return m(t,e)}function f(t,e="hex"){switch(t.type){case a.BoolTrue:return"true";case a.BoolFalse:return"false";case a.Int:return t.value.toString();case a.UInt:return`u${t.value.toString()}`;case a.Buffer:if(e==="tryAscii"){let n=Q(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${W(t.buffer)}`;case a.OptionalNone:return"none";case a.OptionalSome:return`(some ${f(t.value,e)})`;case a.ResponseErr:return`(err ${f(t.value,e)})`;case a.ResponseOk:return`(ok ${f(t.value,e)})`;case a.PrincipalStandard:case a.PrincipalContract:return`'${g(t)}`;case a.List:return`(list ${t.list.map(n=>f(n,e)).join(" ")})`;case a.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${f(t.data[n],e)})`).join(" ")})`;case a.StringASCII:return`"${t.data}"`;case a.StringUTF8:return`u"${t.data}"`}}function E(t,e){return e.map((n,r)=>u(n,t.args[r].type))}function b(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function A(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function C(t,e){return E(t,e)}function Y(t,e){let n=t.abi.functions.find(o=>d(o.name)===e);if(n)return function(...o){return{functionArgs:C(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>d(o.name)===e);if(r)return o=>{let i=u(o,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:o,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var tt={get:Y},et=t=>new Proxy(t,tt);import{parseReadOnlyResponse as nt,fetchContractDataMapEntry as rt}from"micro-stacks/api";import{cvToHex as k,hexToCV as ot}from"micro-stacks/clarity";import{fetchPrivate as at}from"micro-stacks/common";import{broadcastTransaction as it}from"micro-stacks/transactions";async function S(t,e){let r=`${e.network.getReadOnlyFunctionCallApiUrl(t.contractAddress,t.contractName,t.function.name)}?tip=latest`,o=JSON.stringify({sender:t.contractAddress,arguments:t.functionArgs.map(s=>typeof s=="string"?s:k(s))}),i=await at(r,{method:"POST",body:o,headers:{"Content-Type":"application/json"}});if(!i.ok){let s="";try{s=await i.text()}catch{}throw new Error(`Error calling read-only function. Response ${i.status}: ${i.statusText}. Attempted to fetch ${r} and failed with the message: "${s}"`)}let l=nt(await i.json());return p(l,!0)}async function Lt(t,e){let n=await S(t,e);return b(n)}async function Kt(t,e){let n=await S(t,e);return A(n)}async function Ht(t,e){let n=k(t.key),r=await rt({contract_address:t.contractAddress,contract_name:t.contractName,map_name:t.map.name,lookup_key:n,tip:"latest",url:e.network.getCoreApiUrl(),proof:0}),o=ot(r.data);return p(o,!0)}async function qt(t,e){let n=await it(t,e.network);if("error"in n)throw new Error(`Error broadcasting tx: ${n.error} - ${n.reason} - ${n.reason_data}`);return{txId:n.txid,stacksTransaction:t}}function st(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function N(t,e){let n=st(e.plan.batches);for(let r of n)if("requirement-publish"in r){let[o,i]=r["requirement-publish"]["contract-id"].split(".");if(i===t)return r["requirement-publish"]["contract-id"]}else if("emulated-contract-publish"in r){if(r["emulated-contract-publish"]["contract-name"]===t)return`${r["emulated-contract-publish"]["emulated-sender"]}.${t}`}else if("contract-publish"in r){let o=r["contract-publish"];if(o["contract-name"]===t)return`${o["expected-sender"]}.${o["contract-name"]}`}throw new Error(`Unable to find ID for contract '${t}'`)}function Zt(t,e){let n=t;return Object.keys(t).forEach(r=>{typeof e=="string"?n[r].identifier=`${e}.${r}`:n[r].identifier=N(r,e);let o=t[r];Object.keys(t[r].functions).forEach(i=>{let l=i,s=(...y)=>{let T=o.functions[l];return{functionArgs:C(T,y),contractAddress:e,contractName:o.contractName,function:T,nativeArgs:y}};n[r][l]=s})}),n}export{O as CoreNodeEventType,w as MAINNET_BURN_ADDRESS,R as TESTNET_BURN_ADDRESS,yt as bootContractIdentifier,qt as broadcast,Zt as contractFactory,f as cvToString,p as cvToValue,X as err,A as expectErr,b as expectOk,Ht as fetchMapGet,Ct as filterEvents,ut as getContractIdentifier,h as getContractNameFromPath,ft as getContractPrincipalCV,wt as hexToCvValue,xt as makeContracts,Z as ok,u as parseToCV,et as pureProxy,S as ro,Kt as roErr,Lt as roOk,d as toCamelCase,E as transformArgsToCV};
1
+ import{contractPrincipalCV as V}from"micro-stacks/clarity";var I="ST000000000000000000002AMW42H",$="SP000000000000000000002Q6VF78",d=(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...o]=n.replace("!","").replace("?","").split("-"),p=`${e?r[0].toUpperCase():r[0].toLowerCase()}${r.slice(1)}`;return o.forEach(s=>{p+=s[0].toUpperCase()+s.slice(1)}),p},M=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},xt=t=>`${t.address}.${t.name}`,vt=t=>{let e=M(t.contractFile);return V(t.address,e)};function gt(t,e){return`${e?$:I}.${t}`}var U=(c=>(c.ContractEvent="contract_event",c.StxTransferEvent="stx_transfer_event",c.StxMintEvent="stx_mint_event",c.StxBurnEvent="stx_burn_event",c.StxLockEvent="stx_lock_event",c.NftTransferEvent="nft_transfer_event",c.NftMintEvent="nft_mint_event",c.NftBurnEvent="nft_burn_event",c.FtTransferEvent="ft_transfer_event",c.FtMintEvent="ft_mint_event",c.FtBurnEvent="ft_burn_event",c))(U||{});function bt(t,e){return t.filter(n=>n.type===e)}function kt(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,p=`${i}.${o.name}`,s=o.contract(i,o.name);n[r]={identifier:p,contract:s}}return n}import{addressToString as k,ClarityType as a,uintCV as D,contractPrincipalCV as j,intCV as L,stringAsciiCV as q,stringUtf8CV as K,noneCV as H,someCV as G,tupleCV as J,listCV as z,hexToCV as Q,bufferCV as W}from"micro-stacks/clarity";import{isClarityAbiList as Z,isClarityAbiOptional as X,isClarityAbiStringAscii as Y,isClarityAbiStringUtf8 as tt,isClarityAbiTuple as et,isClarityAbiBuffer as nt,parseToCV as h}from"micro-stacks/transactions";import{bytesToAscii as rt,bytesToHex as ot}from"micro-stacks/common";function at(t){return{isOk:!0,value:t}}function it(t){return{isOk:!1,value:t}}function N(t){if(t.type===a.PrincipalStandard)return k(t.address);if(t.type===a.PrincipalContract)return`${k(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function l(t,e=!1){switch(t.type){case a.BoolTrue:return!0;case a.BoolFalse:return!1;case a.Int:case a.UInt:return t.value;case a.Buffer:return t.buffer;case a.OptionalNone:return null;case a.OptionalSome:return l(t.value);case a.ResponseErr:return e?it(l(t.value)):l(t.value);case a.ResponseOk:return e?at(l(t.value)):l(t.value);case a.PrincipalStandard:case a.PrincipalContract:return N(t);case a.List:return t.list.map(o=>l(o));case a.Tuple:let n={};return Object.keys(t.data).map(o=>[o,l(t.data[o])]).forEach(([o,i])=>{n[o]=i}),n;case a.StringASCII:return t.data;case a.StringUTF8:return t.data}}function It(t,e=!1){return l(Q(t),e)}function S(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function y(t,e){if(et(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=t[r.name];n[r.name]=y(o,r.type)}),J(n)}else if(Z(e)){let r=t.map(o=>y(o,e.list.type));return z(r)}else{if(X(e))return t?G(y(t,e.optional)):H();if(Y(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return q(t)}else if(tt(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return K(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return h(n,e)}else if(e==="uint128"){let n=S(t);return D(n.toString())}else if(e==="int128"){let n=S(t);return L(n.toString())}else if(e==="trait_reference"){if(typeof t!="string")throw new Error("Invalid input for trait_reference");let[n,r]=t.split(".");return j(n,r)}else if(nt(e))return W(t)}return h(t,e)}function C(t,e="hex"){switch(t.type){case a.BoolTrue:return"true";case a.BoolFalse:return"false";case a.Int:return t.value.toString();case a.UInt:return`u${t.value.toString()}`;case a.Buffer:if(e==="tryAscii"){let n=rt(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${ot(t.buffer)}`;case a.OptionalNone:return"none";case a.OptionalSome:return`(some ${C(t.value,e)})`;case a.ResponseErr:return`(err ${C(t.value,e)})`;case a.ResponseOk:return`(ok ${C(t.value,e)})`;case a.PrincipalStandard:case a.PrincipalContract:return`'${N(t)}`;case a.List:return`(list ${t.list.map(n=>C(n,e)).join(" ")})`;case a.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${C(t.data[n],e)})`).join(" ")})`;case a.StringASCII:return`"${t.data}"`;case a.StringUTF8:return`u"${t.data}"`}}function w(t,e){return e.map((n,r)=>y(n,t.args[r].type))}function _(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function F(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function m(t,e){return w(t,e)}function st(t,e){let n=t.abi.functions.find(o=>d(o.name)===e);if(n)return function(...o){return{functionArgs:m(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>d(o.name)===e);if(r)return o=>{let i=y(o,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:o,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var ct={get:st},pt=t=>new Proxy(t,ct);import{parseReadOnlyResponse as lt,fetchContractDataMapEntry as ut}from"micro-stacks/api";import{cvToHex as R,hexToCV as ft}from"micro-stacks/clarity";import{fetchPrivate as yt}from"micro-stacks/common";import{broadcastTransaction as dt}from"micro-stacks/transactions";async function P(t,e){let r=`${e.network.getReadOnlyFunctionCallApiUrl(t.contractAddress,t.contractName,t.function.name)}?tip=latest`,o=JSON.stringify({sender:t.contractAddress,arguments:t.functionArgs.map(s=>typeof s=="string"?s:R(s))}),i=await yt(r,{method:"POST",body:o,headers:{"Content-Type":"application/json"}});if(!i.ok){let s="";try{s=await i.text()}catch{}throw new Error(`Error calling read-only function. Response ${i.status}: ${i.statusText}. Attempted to fetch ${r} and failed with the message: "${s}"`)}let p=lt(await i.json());return l(p,!0)}async function Qt(t,e){let n=await P(t,e);return _(n)}async function Wt(t,e){let n=await P(t,e);return F(n)}async function Zt(t,e){let n=R(t.key),r=await ut({contract_address:t.contractAddress,contract_name:t.contractName,map_name:t.map.name,lookup_key:n,tip:"latest",url:e.network.getCoreApiUrl(),proof:0}),o=ft(r.data);return l(o,!0)}async function Xt(t,e){let n=await dt(t,e.network);if("error"in n)throw new Error(`Error broadcasting tx: ${n.error} - ${n.reason} - ${n.reason_data}`);return{txId:n.txid,stacksTransaction:t}}function x(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function O(t,e){let n=x(e.plan.batches);for(let r of n)if("requirement-publish"in r){let[o,i]=r["requirement-publish"]["contract-id"].split(".");if(i===t)return r}else if("emulated-contract-publish"in r){if(r["emulated-contract-publish"]["contract-name"]===t)return r}else if("contract-publish"in r&&r["contract-publish"]["contract-name"]===t)return r;throw new Error(`Unable to find deployment tx for contract '${t}'`)}function v(t){if("requirement-publish"in t)return t["requirement-publish"].path;if("emulated-contract-publish"in t)return t["emulated-contract-publish"].path;if("contract-publish"in t)return t["contract-publish"].path;throw new Error("Couldnt get path for deployment tx.")}function g(t){if("requirement-publish"in t){let[e,n]=t["requirement-publish"]["contract-id"].split(".");return t["requirement-publish"]["contract-id"]}else if("emulated-contract-publish"in t){let e=t["emulated-contract-publish"];return`${e["emulated-sender"]}.${e["contract-name"]}`}else if("contract-publish"in t){let e=t["contract-publish"];return`${e["expected-sender"]}.${e["contract-name"]}`}throw console.log(t),new Error("Unable to find ID for contract.")}function se(t,e){let n=t;return Object.keys(t).forEach(r=>{let o=t[r];if(typeof e=="string")n[r].identifier=`${e}.${r}`;else{let i=O(o.contractName,e);n[r].contractFile=v(i),n[r].identifier=g(i)}Object.keys(t[r].functions).forEach(i=>{let p=i,s=(...u)=>{let T=o.functions[p];return{functionArgs:m(T,u),contractAddress:e,contractName:o.contractName,function:T,nativeArgs:u}};n[r][p]=s})}),n}function ce(t,e){let n={};return x(e.plan.batches).forEach(o=>{let i=g(o),[p,s]=i.split("."),u=d(s),T=t[u],f=t[u];n[u]=f,f.contractFile=v(o),f.identifier=i,Object.keys(t[u].functions).forEach(c=>{let E=c,B=(...b)=>{let A=T.functions[E];return{functionArgs:m(A,b),contractAddress:p,contractName:f.contractName,function:A,nativeArgs:b}};f[E]=B})}),n}export{U as CoreNodeEventType,$ as MAINNET_BURN_ADDRESS,I as TESTNET_BURN_ADDRESS,gt as bootContractIdentifier,Xt as broadcast,se as contractFactory,C as cvToString,l as cvToValue,ce as deploymentFactory,it as err,F as expectErr,_ as expectOk,Zt as fetchMapGet,bt as filterEvents,xt as getContractIdentifier,M as getContractNameFromPath,vt as getContractPrincipalCV,It as hexToCvValue,kt as makeContracts,at as ok,y as parseToCV,pt as pureProxy,P as ro,Wt as roErr,Qt as roOk,d as toCamelCase,w as transformArgsToCV};
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.0-next.22",
2
+ "version": "1.0.0-next.25",
3
3
  "license": "MIT",
4
4
  "types": "./dist/index.d.ts",
5
5
  "main": "./dist/index.js",
@@ -26,6 +26,7 @@
26
26
  "build": "shx rm -rf ./dist && tsup && node make-deno.js",
27
27
  "test": "jest",
28
28
  "lint": "eslint \"src/**/*.{ts,tsx}\" && prettier --check src/**/*.ts",
29
- "typecheck": "tsc --noEmit"
29
+ "typecheck": "tsc --noEmit",
30
+ "publish:dev": "pnpm build && yalc publish --push"
30
31
  }
31
32
  }