@clarigen/core 1.0.11 → 1.0.12
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.
- package/dist/index.d.ts +13 -1
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -468,6 +468,18 @@ declare function broadcast(transaction: StacksTransaction, options: ApiOptions):
|
|
|
468
468
|
txId: string;
|
|
469
469
|
stacksTransaction: StacksTransaction;
|
|
470
470
|
}>;
|
|
471
|
+
type ClientOptions = Omit<ApiOptions, 'url'>;
|
|
472
|
+
type JsonIf<O extends ClientOptions, T> = JsonIfOption<O & {
|
|
473
|
+
url: string;
|
|
474
|
+
}, T>;
|
|
475
|
+
declare class ClarigenClient {
|
|
476
|
+
url: string;
|
|
477
|
+
constructor(networkOrUrl: StacksNetwork | string);
|
|
478
|
+
private roOptions;
|
|
479
|
+
ro<T, O extends ClientOptions>(tx: ContractCall<T>, options?: O): Promise<JsonIf<O, T>>;
|
|
480
|
+
roOk<T, O extends ClientOptions>(tx: ContractCall<Response<T, any>>, options?: O): Promise<JsonIf<O, T>>;
|
|
481
|
+
roErr<T, O extends ClientOptions>(tx: ContractCall<Response<any, T>>, options?: O): Promise<JsonIf<O, T>>;
|
|
482
|
+
}
|
|
471
483
|
|
|
472
484
|
interface EmulatedContractPublishTransaction {
|
|
473
485
|
'emulated-contract-publish': {
|
|
@@ -586,4 +598,4 @@ type MapFactory<M extends TypedAbiMap<K, V>, K, V> = {
|
|
|
586
598
|
};
|
|
587
599
|
declare function mapFactory<Key, Val>(map: TypedAbiMap<Key, Val>, key: Key): MapFactory<TypedAbiMap<Key, Val>, Key, Val>;
|
|
588
600
|
|
|
589
|
-
export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ApiOptions, ApiOptionsBase, ApiOptionsJsonize, ApiOptionsNetwork, ApiOptionsNoJson, ApiOptionsUrl, ArgsRecord, ArgsTuple, ArgsType, CVInput, ClarityAbi, ClarityAbiArg, ClarityAbiFunction, ClarityAbiMap, ClarityAbiType, ClarityAbiTypeBool, ClarityAbiTypeBuffer, ClarityAbiTypeFungibleToken, ClarityAbiTypeInt128, ClarityAbiTypeList, ClarityAbiTypeNonFungibleToken, ClarityAbiTypeNone, ClarityAbiTypeOptional, ClarityAbiTypePrimitive, ClarityAbiTypePrincipal, ClarityAbiTypeResponse, ClarityAbiTypeStringAscii, ClarityAbiTypeStringUtf8, ClarityAbiTypeTraitReference, ClarityAbiTypeTuple, ClarityAbiTypeUInt128, ClarityAbiVariable, Contract, ContractBuilder, ContractCall, ContractCallFunction, ContractCallTyped, ContractCalls, ContractDeployments, ContractFactory, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, ContractsToContractCalls, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, DEPLOYMENT_NETWORKS, DeploymentNetwork, DeploymentPlan, DeploymentsForContracts, ErrType, ExtractArgs, ExtractArgsRecord, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, FullContract, FullContractWithIdentifier, FunctionReturnType, FunctionsToContractCalls, JsonIfOption, Jsonize, Kebab, KebabObject, MAINNET_BURN_ADDRESS, MapFactory, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, OkType, Project, ProjectFactory, Response, ResponseErr, ResponseOk, ResultAssets, SimnetDeploymentPlan, SmartContractEvent, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TupleInput, TypedAbi, TypedAbiArg, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, UnionToIntersection, bootContractIdentifier, broadcast, contractFactory, contractsFactory, cvToJSON, cvToString, cvToValue, deploymentFactory, err, expectErr, expectOk, fetchMapGet, filterEvents, findJsTupleKey, functionsFactory, getApiUrl, getContractIdentifier, getContractNameFromPath, getContractPrincipalCV, hexToCvValue, makeContracts, mapFactory, ok, parseToCV, principalToString, projectFactory, pureProxy, ro, roErr, roOk, toCamelCase, toKebabCase, transformArgsArray, transformArgsToCV, transformObjectArgs };
|
|
601
|
+
export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ApiOptions, ApiOptionsBase, ApiOptionsJsonize, ApiOptionsNetwork, ApiOptionsNoJson, ApiOptionsUrl, ArgsRecord, ArgsTuple, ArgsType, CVInput, ClarigenClient, ClarityAbi, ClarityAbiArg, ClarityAbiFunction, ClarityAbiMap, ClarityAbiType, ClarityAbiTypeBool, ClarityAbiTypeBuffer, ClarityAbiTypeFungibleToken, ClarityAbiTypeInt128, ClarityAbiTypeList, ClarityAbiTypeNonFungibleToken, ClarityAbiTypeNone, ClarityAbiTypeOptional, ClarityAbiTypePrimitive, ClarityAbiTypePrincipal, ClarityAbiTypeResponse, ClarityAbiTypeStringAscii, ClarityAbiTypeStringUtf8, ClarityAbiTypeTraitReference, ClarityAbiTypeTuple, ClarityAbiTypeUInt128, ClarityAbiVariable, Contract, ContractBuilder, ContractCall, ContractCallFunction, ContractCallTyped, ContractCalls, ContractDeployments, ContractFactory, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, ContractsToContractCalls, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, DEPLOYMENT_NETWORKS, DeploymentNetwork, DeploymentPlan, DeploymentsForContracts, ErrType, ExtractArgs, ExtractArgsRecord, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, FullContract, FullContractWithIdentifier, FunctionReturnType, FunctionsToContractCalls, JsonIfOption, Jsonize, Kebab, KebabObject, MAINNET_BURN_ADDRESS, MapFactory, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, OkType, Project, ProjectFactory, Response, ResponseErr, ResponseOk, ResultAssets, SimnetDeploymentPlan, SmartContractEvent, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TupleInput, TypedAbi, TypedAbiArg, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, UnionToIntersection, bootContractIdentifier, broadcast, contractFactory, contractsFactory, cvToJSON, cvToString, cvToValue, deploymentFactory, err, expectErr, expectOk, fetchMapGet, filterEvents, findJsTupleKey, functionsFactory, getApiUrl, getContractIdentifier, getContractNameFromPath, getContractPrincipalCV, hexToCvValue, makeContracts, mapFactory, ok, parseToCV, principalToString, projectFactory, pureProxy, ro, roErr, roOk, toCamelCase, toKebabCase, transformArgsArray, transformArgsToCV, transformObjectArgs };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var W=Object.defineProperty,Z=Object.defineProperties;var Y=Object.getOwnPropertyDescriptors;var w=Object.getOwnPropertySymbols;var Q=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var S=(t,e,n)=>e in t?W(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,C=(t,e)=>{for(var n in e||(e={}))Q.call(e,n)&&S(t,n,e[n]);if(w)for(var n of w(e))X.call(e,n)&&S(t,n,e[n]);return t},m=(t,e)=>Z(t,Y(e));var _clarity = require('micro-stacks/clarity');var et="ST000000000000000000002AMW42H",nt= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",T= exports.toCamelCase =(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...a]=n.replace("!","").replace("?","").split("-"),c=`${e?r[0].toUpperCase():r[0].toLowerCase()}${r.slice(1)}`;return a.forEach(u=>{c+=u[0].toUpperCase()+u.slice(1)}),c};function P(t){let e=t.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return e?e.join("-").toLowerCase():t}var rt=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},jt= exports.getContractIdentifier =t=>`${t.address}.${t.name}`,Kt= exports.getContractPrincipalCV =t=>{let e=rt(t.contractFile);return _clarity.contractPrincipalCV.call(void 0, t.address,e)};function Jt(t,e){return`${e?nt:et}.${t}`}var ot=(s=>(s.ContractEvent="contract_event",s.StxTransferEvent="stx_transfer_event",s.StxMintEvent="stx_mint_event",s.StxBurnEvent="stx_burn_event",s.StxLockEvent="stx_lock_event",s.NftTransferEvent="nft_transfer_event",s.NftMintEvent="nft_mint_event",s.NftBurnEvent="nft_burn_event",s.FtTransferEvent="ft_transfer_event",s.FtMintEvent="ft_mint_event",s.FtBurnEvent="ft_burn_event",s))(ot||{});function qt(t,e){return t.filter(n=>n.type===e)}function Ht(t,e={}){let n={};for(let r in t){let a=t[r],i=e.deployerAddress||a.address,c=`${i}.${a.name}`,u=a.contract(i,a.name);n[r]={identifier:c,contract:u}}return n}var _transactions = require('micro-stacks/transactions');var _common = require('micro-stacks/common');function B(t){return{isOk:!0,value:t}}function $(t){return{isOk:!1,value:t}}function E(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 f(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 f(t.value);case _clarity.ClarityType.ResponseErr:return e?$(f(t.value)):f(t.value);case _clarity.ClarityType.ResponseOk:return e?B(f(t.value)):f(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return E(t);case _clarity.ClarityType.List:return t.list.map(r=>f(r));case _clarity.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=T(a);return m(C({},r),{[c]:f(i)})},{});case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function ae(t,e=!1){return f(_clarity.hexToCV.call(void 0, t),e)}function _(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function d(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 a=A(r.name,t),i=t[a];n[r.name]=d(i,r.type)}),_clarity.tupleCV.call(void 0, n)}else if(_transactions.isClarityAbiList.call(void 0, e)){let r=t.map(a=>d(a,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, d(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=_(t);return _clarity.uintCV.call(void 0, n.toString())}else if(e==="int128"){let n=_(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 x(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 ${x(t.value,e)})`;case _clarity.ClarityType.ResponseErr:return`(err ${x(t.value,e)})`;case _clarity.ClarityType.ResponseOk:return`(ok ${x(t.value,e)})`;case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return`'${E(t)}`;case _clarity.ClarityType.List:return`(list ${t.list.map(n=>x(n,e)).join(" ")})`;case _clarity.ClarityType.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${x(t.data[n],e)})`).join(" ")})`;case _clarity.ClarityType.StringASCII:return`"${t.data}"`;case _clarity.ClarityType.StringUTF8:return`u"${t.data}"`}}function y(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 _common.bytesToHex.call(void 0, t.buffer);case _clarity.ClarityType.OptionalNone:return null;case _clarity.ClarityType.OptionalSome:return y(t.value);case _clarity.ClarityType.ResponseErr:return e?$(y(t.value)):y(t.value);case _clarity.ClarityType.ResponseOk:return e?B(y(t.value)):y(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return E(t);case _clarity.ClarityType.List:return t.list.map(r=>y(r));case _clarity.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=T(a);return m(C({},r),{[c]:y(i)})},{});case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function I(t,e){return t.args.map(n=>{let r=A(n.name,e),a=e[r];return d(a,n.type)})}function At(t,e){return e.map((n,r)=>d(n,t.args[r].type))}function g(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return I(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(a=>{try{A(a.name,n)}catch (e2){r=!1}}),r)return I(t,n)}catch (e3){}return At(t,e)}function A(t,e){let n=Object.keys(e).find(r=>{let a=t===r,i=t===P(r);return a||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function M(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function D(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function ht(t,e){let n=t.abi.functions.find(a=>T(a.name)===e);if(n)return function(...a){return{functionArgs:g(n,a),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:a}};let r=t.abi.maps.find(a=>T(a.name)===e);if(r)return a=>{let i=d(a,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:a,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var Ot={get:ht},kt= exports.pureProxy =t=>new Proxy(t,Ot);var _api = require('micro-stacks/api');function Nt(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function U(t){return Nt(t).filter(h)}function j(t){if(!h(t))throw new Error("Unable to get path for tx type.");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 K(t){if(!h(t))throw new Error("Unable to get ID for tx type.");if("requirement-publish"in t){let e=t["requirement-publish"],[n,r]=e["contract-id"].split(".");return`${e["remap-sender"]}.${r}`}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 new Error("Unable to find ID for contract.")}function h(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var ve=["devnet","simnet","testnet","mainnet"];function Ee(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,a])=>{let i=t.deployments[r][e];return i&&n.push([r,J(a,i)]),!1}),Object.fromEntries(n)}function Ae(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=`${e}.${r.contractName}`;return[n,J(r,a)]}))}function wt(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=Object.assign((...i)=>{let c=g(r,i),[u,p]=e.split(".");return{functionArgs:c,contractAddress:u,contractName:p,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,a]}))}function J(t,e){let n=C({},t);return m(C(C({},wt(t.functions,e)),n),{identifier:e})}function he(t,e){let n={};return U(e.plan.batches).forEach(a=>{let i=K(a),[c,u]=i.split("."),p=T(u),b=t[p],l=t[p];if(typeof l>"u")throw new Error(`Clarigen error: mismatch for contract '${p}'`);n[p]=l,l.contractFile=j(a),l.identifier=i,Object.keys(t[p].functions).forEach(s=>{let v=s,G=(...k)=>{let N=b.functions[v];return{functionArgs:g(N,k),contractAddress:c,contractName:l.contractName,function:N,nativeArgs:k}};l[v]=G})}),n}function L(t,e){let n=d(e,t.key);return{key:e,keyCV:n,map:t}}async function q(t){let{contractName:e,contractAddress:n,functionName:r,functionArgs:a,senderAddress:i=n,tip:c,url:u}=t,p=`${u}/v2/contracts/call-read/${n}/${e}/${encodeURIComponent(r)}`;c&&(p+=`?tip=${c}`);let b=JSON.stringify({sender:i,arguments:a.map(s=>typeof s=="string"?s:_clarity.cvToHex.call(void 0, s))}),l=await _common.fetchPrivate.call(void 0, p,{method:"POST",body:b,headers:{"Content-Type":"application/json"}});if(!l.ok){let s="";try{s=await l.text()}catch (e4){}throw new Error(`Error calling read-only function. Response ${l.status}: ${l.statusText}. Attempted to fetch ${p} and failed with the message: "${s}"`)}return _api.parseReadOnlyResponse.call(void 0, await l.json())}function z(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function H(t,e){let n=z(e),r=await q({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:O(e)});return e.json?y(r):f(r,!0)}async function Ke(t,e){let n=await H(t,e);return M(n)}async function Je(t,e){let n=await H(t,e);return D(n)}function O(t){return"network"in t?t.network.getCoreApiUrl():t.url}async function Le(t,e,n,r){let a=L(e,n),i=JSON.stringify(_clarity.cvToHex.call(void 0, a.keyCV)),[c,u]=t.split("."),p=_api.generateUrl.call(void 0, `${_api.v2Endpoint.call(void 0, O(r))}/map_entry/${c}/${u}/${a.map.name}`,{proof:0,tip:z(r)}),l=await(await fetch(p,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),s=_clarity.hexToCV.call(void 0, l.data);return f(s,!0)}async function qe(t,e){let n=`${O(e)}/v2/transactions`,r=await _transactions.broadcastRawTransaction.call(void 0, t.serialize(),n);if("error"in r)throw new Error(`Error broadcasting tx: ${r.error} - ${r.reason} - ${JSON.stringify(r.reason_data)}`);return{txId:r.txid,stacksTransaction:t}}exports.CoreNodeEventType = ot; exports.DEPLOYMENT_NETWORKS = ve; exports.MAINNET_BURN_ADDRESS = nt; exports.TESTNET_BURN_ADDRESS = et; exports.bootContractIdentifier = Jt; exports.broadcast = qe; exports.contractFactory = J; exports.contractsFactory = Ae; exports.cvToJSON = y; exports.cvToString = x; exports.cvToValue = f; exports.deploymentFactory = he; exports.err = $; exports.expectErr = D; exports.expectOk = M; exports.fetchMapGet = Le; exports.filterEvents = qt; exports.findJsTupleKey = A; exports.functionsFactory = wt; exports.getApiUrl = O; exports.getContractIdentifier = jt; exports.getContractNameFromPath = rt; exports.getContractPrincipalCV = Kt; exports.hexToCvValue = ae; exports.makeContracts = Ht; exports.mapFactory = L; exports.ok = B; exports.parseToCV = d; exports.principalToString = E; exports.projectFactory = Ee; exports.pureProxy = kt; exports.ro = H; exports.roErr = Je; exports.roOk = Ke; exports.toCamelCase = T; exports.toKebabCase = P; exports.transformArgsArray = At; exports.transformArgsToCV = g; exports.transformObjectArgs = I;
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var Z=Object.defineProperty,Y=Object.defineProperties;var Q=Object.getOwnPropertyDescriptors;var S=Object.getOwnPropertySymbols;var X=Object.prototype.hasOwnProperty,tt=Object.prototype.propertyIsEnumerable;var P=(t,e,n)=>e in t?Z(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,y=(t,e)=>{for(var n in e||(e={}))X.call(e,n)&&P(t,n,e[n]);if(S)for(var n of S(e))tt.call(e,n)&&P(t,n,e[n]);return t},m=(t,e)=>Y(t,Q(e));var _clarity = require('micro-stacks/clarity');var nt="ST000000000000000000002AMW42H",rt= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",C= exports.toCamelCase =(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...a]=n.replace("!","").replace("?","").split("-"),c=`${e?r[0].toUpperCase():r[0].toLowerCase()}${r.slice(1)}`;return a.forEach(u=>{c+=u[0].toUpperCase()+u.slice(1)}),c};function R(t){let e=t.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return e?e.join("-").toLowerCase():t}var ot=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},Lt= exports.getContractIdentifier =t=>`${t.address}.${t.name}`,qt= exports.getContractPrincipalCV =t=>{let e=ot(t.contractFile);return _clarity.contractPrincipalCV.call(void 0, t.address,e)};function zt(t,e){return`${e?rt:nt}.${t}`}var at=(s=>(s.ContractEvent="contract_event",s.StxTransferEvent="stx_transfer_event",s.StxMintEvent="stx_mint_event",s.StxBurnEvent="stx_burn_event",s.StxLockEvent="stx_lock_event",s.NftTransferEvent="nft_transfer_event",s.NftMintEvent="nft_mint_event",s.NftBurnEvent="nft_burn_event",s.FtTransferEvent="ft_transfer_event",s.FtMintEvent="ft_mint_event",s.FtBurnEvent="ft_burn_event",s))(at||{});function Gt(t,e){return t.filter(n=>n.type===e)}function Zt(t,e={}){let n={};for(let r in t){let a=t[r],i=e.deployerAddress||a.address,c=`${i}.${a.name}`,u=a.contract(i,a.name);n[r]={identifier:c,contract:u}}return n}var _transactions = require('micro-stacks/transactions');var _common = require('micro-stacks/common');function $(t){return{isOk:!0,value:t}}function M(t){return{isOk:!1,value:t}}function E(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 f(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 f(t.value);case _clarity.ClarityType.ResponseErr:return e?M(f(t.value)):f(t.value);case _clarity.ClarityType.ResponseOk:return e?$(f(t.value)):f(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return E(t);case _clarity.ClarityType.List:return t.list.map(r=>f(r));case _clarity.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=C(a);return m(y({},r),{[c]:f(i)})},{});case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function ce(t,e=!1){return f(_clarity.hexToCV.call(void 0, t),e)}function _(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function T(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 a=A(r.name,t),i=t[a];n[r.name]=T(i,r.type)}),_clarity.tupleCV.call(void 0, n)}else if(_transactions.isClarityAbiList.call(void 0, e)){let r=t.map(a=>T(a,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, T(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=_(t);return _clarity.uintCV.call(void 0, n.toString())}else if(e==="int128"){let n=_(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 x(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 ${x(t.value,e)})`;case _clarity.ClarityType.ResponseErr:return`(err ${x(t.value,e)})`;case _clarity.ClarityType.ResponseOk:return`(ok ${x(t.value,e)})`;case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return`'${E(t)}`;case _clarity.ClarityType.List:return`(list ${t.list.map(n=>x(n,e)).join(" ")})`;case _clarity.ClarityType.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${x(t.data[n],e)})`).join(" ")})`;case _clarity.ClarityType.StringASCII:return`"${t.data}"`;case _clarity.ClarityType.StringUTF8:return`u"${t.data}"`}}function d(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 _common.bytesToHex.call(void 0, t.buffer);case _clarity.ClarityType.OptionalNone:return null;case _clarity.ClarityType.OptionalSome:return d(t.value);case _clarity.ClarityType.ResponseErr:return e?M(d(t.value)):d(t.value);case _clarity.ClarityType.ResponseOk:return e?$(d(t.value)):d(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return E(t);case _clarity.ClarityType.List:return t.list.map(r=>d(r));case _clarity.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=C(a);return m(y({},r),{[c]:d(i)})},{});case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function V(t,e){return t.args.map(n=>{let r=A(n.name,e),a=e[r];return T(a,n.type)})}function Ot(t,e){return e.map((n,r)=>T(n,t.args[r].type))}function g(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return V(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(a=>{try{A(a.name,n)}catch (e2){r=!1}}),r)return V(t,n)}catch (e3){}return Ot(t,e)}function A(t,e){let n=Object.keys(e).find(r=>{let a=t===r,i=t===R(r);return a||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function D(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function j(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function ht(t,e){let n=t.abi.functions.find(a=>C(a.name)===e);if(n)return function(...a){return{functionArgs:g(n,a),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:a}};let r=t.abi.maps.find(a=>C(a.name)===e);if(r)return a=>{let i=T(a,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:a,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var kt={get:ht},Nt= exports.pureProxy =t=>new Proxy(t,kt);var _api = require('micro-stacks/api');function wt(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function U(t){return wt(t).filter(O)}function J(t){if(!O(t))throw new Error("Unable to get path for tx type.");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 K(t){if(!O(t))throw new Error("Unable to get ID for tx type.");if("requirement-publish"in t){let e=t["requirement-publish"],[n,r]=e["contract-id"].split(".");return`${e["remap-sender"]}.${r}`}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 new Error("Unable to find ID for contract.")}function O(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var Oe=["devnet","simnet","testnet","mainnet"];function he(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,a])=>{let i=t.deployments[r][e];return i&&n.push([r,L(a,i)]),!1}),Object.fromEntries(n)}function ke(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=`${e}.${r.contractName}`;return[n,L(r,a)]}))}function St(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=Object.assign((...i)=>{let c=g(r,i),[u,p]=e.split(".");return{functionArgs:c,contractAddress:u,contractName:p,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,a]}))}function L(t,e){let n=y({},t);return m(y(y({},St(t.functions,e)),n),{identifier:e})}function Ne(t,e){let n={};return U(e.plan.batches).forEach(a=>{let i=K(a),[c,u]=i.split("."),p=C(u),b=t[p],l=t[p];if(typeof l>"u")throw new Error(`Clarigen error: mismatch for contract '${p}'`);n[p]=l,l.contractFile=J(a),l.identifier=i,Object.keys(t[p].functions).forEach(s=>{let v=s,W=(...N)=>{let w=b.functions[v];return{functionArgs:g(w,N),contractAddress:c,contractName:l.contractName,function:w,nativeArgs:N}};l[v]=W})}),n}function q(t,e){let n=T(e,t.key);return{key:e,keyCV:n,map:t}}async function z(t){let{contractName:e,contractAddress:n,functionName:r,functionArgs:a,senderAddress:i=n,tip:c,url:u}=t,p=`${u}/v2/contracts/call-read/${n}/${e}/${encodeURIComponent(r)}`;c&&(p+=`?tip=${c}`);let b=JSON.stringify({sender:i,arguments:a.map(s=>typeof s=="string"?s:_clarity.cvToHex.call(void 0, s))}),l=await _common.fetchPrivate.call(void 0, p,{method:"POST",body:b,headers:{"Content-Type":"application/json"}});if(!l.ok){let s="";try{s=await l.text()}catch (e4){}throw new Error(`Error calling read-only function. Response ${l.status}: ${l.statusText}. Attempted to fetch ${p} and failed with the message: "${s}"`)}return _api.parseReadOnlyResponse.call(void 0, await l.json())}function G(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function h(t,e){let n=G(e),r=await z({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:k(e)});return e.json?d(r):f(r,!0)}async function Mt(t,e){let n=await h(t,e);return D(n)}async function Dt(t,e){let n=await h(t,e);return j(n)}function k(t){return"network"in t?t.network.getCoreApiUrl():t.url}async function qe(t,e,n,r){let a=q(e,n),i=JSON.stringify(_clarity.cvToHex.call(void 0, a.keyCV)),[c,u]=t.split("."),p=_api.generateUrl.call(void 0, `${_api.v2Endpoint.call(void 0, k(r))}/map_entry/${c}/${u}/${a.map.name}`,{proof:0,tip:G(r)}),l=await(await fetch(p,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),s=_clarity.hexToCV.call(void 0, l.data);return f(s,!0)}async function ze(t,e){let n=`${k(e)}/v2/transactions`,r=await _transactions.broadcastRawTransaction.call(void 0, t.serialize(),n);if("error"in r)throw new Error(`Error broadcasting tx: ${r.error} - ${r.reason} - ${JSON.stringify(r.reason_data)}`);return{txId:r.txid,stacksTransaction:t}}var H=class{constructor(e){typeof e=="string"?this.url=e:this.url=e.getCoreApiUrl()}roOptions(e){return y({url:this.url},e)}ro(e,n){return h(e,this.roOptions(n||{}))}roOk(e,n){return Mt(e,this.roOptions(n||{}))}roErr(e,n){return Dt(e,this.roOptions(n||{}))}};exports.ClarigenClient = H; exports.CoreNodeEventType = at; exports.DEPLOYMENT_NETWORKS = Oe; exports.MAINNET_BURN_ADDRESS = rt; exports.TESTNET_BURN_ADDRESS = nt; exports.bootContractIdentifier = zt; exports.broadcast = ze; exports.contractFactory = L; exports.contractsFactory = ke; exports.cvToJSON = d; exports.cvToString = x; exports.cvToValue = f; exports.deploymentFactory = Ne; exports.err = M; exports.expectErr = j; exports.expectOk = D; exports.fetchMapGet = qe; exports.filterEvents = Gt; exports.findJsTupleKey = A; exports.functionsFactory = St; exports.getApiUrl = k; exports.getContractIdentifier = Lt; exports.getContractNameFromPath = ot; exports.getContractPrincipalCV = qt; exports.hexToCvValue = ce; exports.makeContracts = Zt; exports.mapFactory = q; exports.ok = $; exports.parseToCV = T; exports.principalToString = E; exports.projectFactory = he; exports.pureProxy = Nt; exports.ro = h; exports.roErr = Dt; exports.roOk = Mt; exports.toCamelCase = C; exports.toKebabCase = R; exports.transformArgsArray = Ot; exports.transformArgsToCV = g; exports.transformObjectArgs = V;
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var W=Object.defineProperty,Z=Object.defineProperties;var Y=Object.getOwnPropertyDescriptors;var w=Object.getOwnPropertySymbols;var Q=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var S=(t,e,n)=>e in t?W(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,C=(t,e)=>{for(var n in e||(e={}))Q.call(e,n)&&S(t,n,e[n]);if(w)for(var n of w(e))X.call(e,n)&&S(t,n,e[n]);return t},m=(t,e)=>Z(t,Y(e));import{contractPrincipalCV as tt}from"micro-stacks/clarity";var et="ST000000000000000000002AMW42H",nt="SP000000000000000000002Q6VF78",T=(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...a]=n.replace("!","").replace("?","").split("-"),c=`${e?r[0].toUpperCase():r[0].toLowerCase()}${r.slice(1)}`;return a.forEach(u=>{c+=u[0].toUpperCase()+u.slice(1)}),c};function P(t){let e=t.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return e?e.join("-").toLowerCase():t}var rt=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},jt=t=>`${t.address}.${t.name}`,Kt=t=>{let e=rt(t.contractFile);return tt(t.address,e)};function Jt(t,e){return`${e?nt:et}.${t}`}var ot=(s=>(s.ContractEvent="contract_event",s.StxTransferEvent="stx_transfer_event",s.StxMintEvent="stx_mint_event",s.StxBurnEvent="stx_burn_event",s.StxLockEvent="stx_lock_event",s.NftTransferEvent="nft_transfer_event",s.NftMintEvent="nft_mint_event",s.NftBurnEvent="nft_burn_event",s.FtTransferEvent="ft_transfer_event",s.FtMintEvent="ft_mint_event",s.FtBurnEvent="ft_burn_event",s))(ot||{});function qt(t,e){return t.filter(n=>n.type===e)}function Ht(t,e={}){let n={};for(let r in t){let a=t[r],i=e.deployerAddress||a.address,c=`${i}.${a.name}`,u=a.contract(i,a.name);n[r]={identifier:c,contract:u}}return n}import{addressToString as R,ClarityType as o,uintCV as at,contractPrincipalCV as it,intCV as st,stringAsciiCV as ct,stringUtf8CV as pt,noneCV as lt,someCV as ut,tupleCV as ft,listCV as yt,hexToCV as dt,bufferCV as Tt}from"micro-stacks/clarity";import{isClarityAbiList as Ct,isClarityAbiOptional as mt,isClarityAbiStringAscii as xt,isClarityAbiStringUtf8 as gt,isClarityAbiTuple as bt,isClarityAbiBuffer as vt,parseToCV as F}from"micro-stacks/transactions";import{bytesToAscii as Et,bytesToHex as V}from"micro-stacks/common";function B(t){return{isOk:!0,value:t}}function $(t){return{isOk:!1,value:t}}function E(t){if(t.type===o.PrincipalStandard)return R(t.address);if(t.type===o.PrincipalContract)return`${R(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function f(t,e=!1){switch(t.type){case o.BoolTrue:return!0;case o.BoolFalse:return!1;case o.Int:case o.UInt:return t.value;case o.Buffer:return t.buffer;case o.OptionalNone:return null;case o.OptionalSome:return f(t.value);case o.ResponseErr:return e?$(f(t.value)):f(t.value);case o.ResponseOk:return e?B(f(t.value)):f(t.value);case o.PrincipalStandard:case o.PrincipalContract:return E(t);case o.List:return t.list.map(r=>f(r));case o.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=T(a);return m(C({},r),{[c]:f(i)})},{});case o.StringASCII:return t.data;case o.StringUTF8:return t.data}}function ae(t,e=!1){return f(dt(t),e)}function _(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function d(t,e){if(bt(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let a=A(r.name,t),i=t[a];n[r.name]=d(i,r.type)}),ft(n)}else if(Ct(e)){let r=t.map(a=>d(a,e.list.type));return yt(r)}else{if(mt(e))return t?ut(d(t,e.optional)):lt();if(xt(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return ct(t)}else if(gt(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return pt(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return F(n,e)}else if(e==="uint128"){let n=_(t);return at(n.toString())}else if(e==="int128"){let n=_(t);return st(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 it(n,r)}else if(vt(e))return Tt(t)}return F(t,e)}function x(t,e="hex"){switch(t.type){case o.BoolTrue:return"true";case o.BoolFalse:return"false";case o.Int:return t.value.toString();case o.UInt:return`u${t.value.toString()}`;case o.Buffer:if(e==="tryAscii"){let n=Et(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${V(t.buffer)}`;case o.OptionalNone:return"none";case o.OptionalSome:return`(some ${x(t.value,e)})`;case o.ResponseErr:return`(err ${x(t.value,e)})`;case o.ResponseOk:return`(ok ${x(t.value,e)})`;case o.PrincipalStandard:case o.PrincipalContract:return`'${E(t)}`;case o.List:return`(list ${t.list.map(n=>x(n,e)).join(" ")})`;case o.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${x(t.data[n],e)})`).join(" ")})`;case o.StringASCII:return`"${t.data}"`;case o.StringUTF8:return`u"${t.data}"`}}function y(t,e=!1){switch(t.type){case o.BoolTrue:return!0;case o.BoolFalse:return!1;case o.Int:case o.UInt:return`${t.value}`;case o.Buffer:return V(t.buffer);case o.OptionalNone:return null;case o.OptionalSome:return y(t.value);case o.ResponseErr:return e?$(y(t.value)):y(t.value);case o.ResponseOk:return e?B(y(t.value)):y(t.value);case o.PrincipalStandard:case o.PrincipalContract:return E(t);case o.List:return t.list.map(r=>y(r));case o.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=T(a);return m(C({},r),{[c]:y(i)})},{});case o.StringASCII:return t.data;case o.StringUTF8:return t.data}}function I(t,e){return t.args.map(n=>{let r=A(n.name,e),a=e[r];return d(a,n.type)})}function At(t,e){return e.map((n,r)=>d(n,t.args[r].type))}function g(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return I(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(a=>{try{A(a.name,n)}catch{r=!1}}),r)return I(t,n)}catch{}return At(t,e)}function A(t,e){let n=Object.keys(e).find(r=>{let a=t===r,i=t===P(r);return a||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function M(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function D(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function ht(t,e){let n=t.abi.functions.find(a=>T(a.name)===e);if(n)return function(...a){return{functionArgs:g(n,a),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:a}};let r=t.abi.maps.find(a=>T(a.name)===e);if(r)return a=>{let i=d(a,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:a,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var Ot={get:ht},kt=t=>new Proxy(t,Ot);import{v2Endpoint as Ft,generateUrl as _t}from"micro-stacks/api";import{cvToHex as It,hexToCV as Vt}from"micro-stacks/clarity";import{broadcastRawTransaction as Bt}from"micro-stacks/transactions";function Nt(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function U(t){return Nt(t).filter(h)}function j(t){if(!h(t))throw new Error("Unable to get path for tx type.");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 K(t){if(!h(t))throw new Error("Unable to get ID for tx type.");if("requirement-publish"in t){let e=t["requirement-publish"],[n,r]=e["contract-id"].split(".");return`${e["remap-sender"]}.${r}`}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 new Error("Unable to find ID for contract.")}function h(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var ve=["devnet","simnet","testnet","mainnet"];function Ee(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,a])=>{let i=t.deployments[r][e];return i&&n.push([r,J(a,i)]),!1}),Object.fromEntries(n)}function Ae(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=`${e}.${r.contractName}`;return[n,J(r,a)]}))}function wt(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=Object.assign((...i)=>{let c=g(r,i),[u,p]=e.split(".");return{functionArgs:c,contractAddress:u,contractName:p,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,a]}))}function J(t,e){let n=C({},t);return m(C(C({},wt(t.functions,e)),n),{identifier:e})}function he(t,e){let n={};return U(e.plan.batches).forEach(a=>{let i=K(a),[c,u]=i.split("."),p=T(u),b=t[p],l=t[p];if(typeof l>"u")throw new Error(`Clarigen error: mismatch for contract '${p}'`);n[p]=l,l.contractFile=j(a),l.identifier=i,Object.keys(t[p].functions).forEach(s=>{let v=s,G=(...k)=>{let N=b.functions[v];return{functionArgs:g(N,k),contractAddress:c,contractName:l.contractName,function:N,nativeArgs:k}};l[v]=G})}),n}function L(t,e){let n=d(e,t.key);return{key:e,keyCV:n,map:t}}import{parseReadOnlyResponse as St}from"micro-stacks/api";import{cvToHex as Pt}from"micro-stacks/clarity";import{fetchPrivate as Rt}from"micro-stacks/common";async function q(t){let{contractName:e,contractAddress:n,functionName:r,functionArgs:a,senderAddress:i=n,tip:c,url:u}=t,p=`${u}/v2/contracts/call-read/${n}/${e}/${encodeURIComponent(r)}`;c&&(p+=`?tip=${c}`);let b=JSON.stringify({sender:i,arguments:a.map(s=>typeof s=="string"?s:Pt(s))}),l=await Rt(p,{method:"POST",body:b,headers:{"Content-Type":"application/json"}});if(!l.ok){let s="";try{s=await l.text()}catch{}throw new Error(`Error calling read-only function. Response ${l.status}: ${l.statusText}. Attempted to fetch ${p} and failed with the message: "${s}"`)}return St(await l.json())}function z(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function H(t,e){let n=z(e),r=await q({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:O(e)});return e.json?y(r):f(r,!0)}async function Ke(t,e){let n=await H(t,e);return M(n)}async function Je(t,e){let n=await H(t,e);return D(n)}function O(t){return"network"in t?t.network.getCoreApiUrl():t.url}async function Le(t,e,n,r){let a=L(e,n),i=JSON.stringify(It(a.keyCV)),[c,u]=t.split("."),p=_t(`${Ft(O(r))}/map_entry/${c}/${u}/${a.map.name}`,{proof:0,tip:z(r)}),l=await(await fetch(p,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),s=Vt(l.data);return f(s,!0)}async function qe(t,e){let n=`${O(e)}/v2/transactions`,r=await Bt(t.serialize(),n);if("error"in r)throw new Error(`Error broadcasting tx: ${r.error} - ${r.reason} - ${JSON.stringify(r.reason_data)}`);return{txId:r.txid,stacksTransaction:t}}export{ot as CoreNodeEventType,ve as DEPLOYMENT_NETWORKS,nt as MAINNET_BURN_ADDRESS,et as TESTNET_BURN_ADDRESS,Jt as bootContractIdentifier,qe as broadcast,J as contractFactory,Ae as contractsFactory,y as cvToJSON,x as cvToString,f as cvToValue,he as deploymentFactory,$ as err,D as expectErr,M as expectOk,Le as fetchMapGet,qt as filterEvents,A as findJsTupleKey,wt as functionsFactory,O as getApiUrl,jt as getContractIdentifier,rt as getContractNameFromPath,Kt as getContractPrincipalCV,ae as hexToCvValue,Ht as makeContracts,L as mapFactory,B as ok,d as parseToCV,E as principalToString,Ee as projectFactory,kt as pureProxy,H as ro,Je as roErr,Ke as roOk,T as toCamelCase,P as toKebabCase,At as transformArgsArray,g as transformArgsToCV,I as transformObjectArgs};
|
|
1
|
+
var Z=Object.defineProperty,Y=Object.defineProperties;var Q=Object.getOwnPropertyDescriptors;var S=Object.getOwnPropertySymbols;var X=Object.prototype.hasOwnProperty,tt=Object.prototype.propertyIsEnumerable;var P=(t,e,n)=>e in t?Z(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,y=(t,e)=>{for(var n in e||(e={}))X.call(e,n)&&P(t,n,e[n]);if(S)for(var n of S(e))tt.call(e,n)&&P(t,n,e[n]);return t},m=(t,e)=>Y(t,Q(e));import{contractPrincipalCV as et}from"micro-stacks/clarity";var nt="ST000000000000000000002AMW42H",rt="SP000000000000000000002Q6VF78",C=(t,e)=>{let n=typeof t=="string"?t:String(t),[r,...a]=n.replace("!","").replace("?","").split("-"),c=`${e?r[0].toUpperCase():r[0].toLowerCase()}${r.slice(1)}`;return a.forEach(u=>{c+=u[0].toUpperCase()+u.slice(1)}),c};function R(t){let e=t.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g);return e?e.join("-").toLowerCase():t}var ot=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},Lt=t=>`${t.address}.${t.name}`,qt=t=>{let e=ot(t.contractFile);return et(t.address,e)};function zt(t,e){return`${e?rt:nt}.${t}`}var at=(s=>(s.ContractEvent="contract_event",s.StxTransferEvent="stx_transfer_event",s.StxMintEvent="stx_mint_event",s.StxBurnEvent="stx_burn_event",s.StxLockEvent="stx_lock_event",s.NftTransferEvent="nft_transfer_event",s.NftMintEvent="nft_mint_event",s.NftBurnEvent="nft_burn_event",s.FtTransferEvent="ft_transfer_event",s.FtMintEvent="ft_mint_event",s.FtBurnEvent="ft_burn_event",s))(at||{});function Gt(t,e){return t.filter(n=>n.type===e)}function Zt(t,e={}){let n={};for(let r in t){let a=t[r],i=e.deployerAddress||a.address,c=`${i}.${a.name}`,u=a.contract(i,a.name);n[r]={identifier:c,contract:u}}return n}import{addressToString as F,ClarityType as o,uintCV as it,contractPrincipalCV as st,intCV as ct,stringAsciiCV as pt,stringUtf8CV as lt,noneCV as ut,someCV as ft,tupleCV as yt,listCV as dt,hexToCV as Tt,bufferCV as Ct}from"micro-stacks/clarity";import{isClarityAbiList as mt,isClarityAbiOptional as xt,isClarityAbiStringAscii as gt,isClarityAbiStringUtf8 as bt,isClarityAbiTuple as vt,isClarityAbiBuffer as Et,parseToCV as I}from"micro-stacks/transactions";import{bytesToAscii as At,bytesToHex as B}from"micro-stacks/common";function $(t){return{isOk:!0,value:t}}function M(t){return{isOk:!1,value:t}}function E(t){if(t.type===o.PrincipalStandard)return F(t.address);if(t.type===o.PrincipalContract)return`${F(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function f(t,e=!1){switch(t.type){case o.BoolTrue:return!0;case o.BoolFalse:return!1;case o.Int:case o.UInt:return t.value;case o.Buffer:return t.buffer;case o.OptionalNone:return null;case o.OptionalSome:return f(t.value);case o.ResponseErr:return e?M(f(t.value)):f(t.value);case o.ResponseOk:return e?$(f(t.value)):f(t.value);case o.PrincipalStandard:case o.PrincipalContract:return E(t);case o.List:return t.list.map(r=>f(r));case o.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=C(a);return m(y({},r),{[c]:f(i)})},{});case o.StringASCII:return t.data;case o.StringUTF8:return t.data}}function ce(t,e=!1){return f(Tt(t),e)}function _(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}function T(t,e){if(vt(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let a=A(r.name,t),i=t[a];n[r.name]=T(i,r.type)}),yt(n)}else if(mt(e)){let r=t.map(a=>T(a,e.list.type));return dt(r)}else{if(xt(e))return t?ft(T(t,e.optional)):ut();if(gt(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return pt(t)}else if(bt(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return lt(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return I(n,e)}else if(e==="uint128"){let n=_(t);return it(n.toString())}else if(e==="int128"){let n=_(t);return ct(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 st(n,r)}else if(Et(e))return Ct(t)}return I(t,e)}function x(t,e="hex"){switch(t.type){case o.BoolTrue:return"true";case o.BoolFalse:return"false";case o.Int:return t.value.toString();case o.UInt:return`u${t.value.toString()}`;case o.Buffer:if(e==="tryAscii"){let n=At(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${B(t.buffer)}`;case o.OptionalNone:return"none";case o.OptionalSome:return`(some ${x(t.value,e)})`;case o.ResponseErr:return`(err ${x(t.value,e)})`;case o.ResponseOk:return`(ok ${x(t.value,e)})`;case o.PrincipalStandard:case o.PrincipalContract:return`'${E(t)}`;case o.List:return`(list ${t.list.map(n=>x(n,e)).join(" ")})`;case o.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${x(t.data[n],e)})`).join(" ")})`;case o.StringASCII:return`"${t.data}"`;case o.StringUTF8:return`u"${t.data}"`}}function d(t,e=!1){switch(t.type){case o.BoolTrue:return!0;case o.BoolFalse:return!1;case o.Int:case o.UInt:return`${t.value}`;case o.Buffer:return B(t.buffer);case o.OptionalNone:return null;case o.OptionalSome:return d(t.value);case o.ResponseErr:return e?M(d(t.value)):d(t.value);case o.ResponseOk:return e?$(d(t.value)):d(t.value);case o.PrincipalStandard:case o.PrincipalContract:return E(t);case o.List:return t.list.map(r=>d(r));case o.Tuple:return Object.entries(t.data).reduce((r,[a,i])=>{let c=C(a);return m(y({},r),{[c]:d(i)})},{});case o.StringASCII:return t.data;case o.StringUTF8:return t.data}}function V(t,e){return t.args.map(n=>{let r=A(n.name,e),a=e[r];return T(a,n.type)})}function Ot(t,e){return e.map((n,r)=>T(n,t.args[r].type))}function g(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return V(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(a=>{try{A(a.name,n)}catch{r=!1}}),r)return V(t,n)}catch{}return Ot(t,e)}function A(t,e){let n=Object.keys(e).find(r=>{let a=t===r,i=t===R(r);return a||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function D(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function j(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function ht(t,e){let n=t.abi.functions.find(a=>C(a.name)===e);if(n)return function(...a){return{functionArgs:g(n,a),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:a}};let r=t.abi.maps.find(a=>C(a.name)===e);if(r)return a=>{let i=T(a,r.key);return{contractAddress:t.contractAddress,contractName:t.contractName,map:r,nativeKey:a,key:i}};throw new Error(`Invalid function call: no function exists for ${String(e)}`)}var kt={get:ht},Nt=t=>new Proxy(t,kt);import{v2Endpoint as It,generateUrl as _t}from"micro-stacks/api";import{cvToHex as Vt,hexToCV as Bt}from"micro-stacks/clarity";import{broadcastRawTransaction as $t}from"micro-stacks/transactions";function wt(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function U(t){return wt(t).filter(O)}function J(t){if(!O(t))throw new Error("Unable to get path for tx type.");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 K(t){if(!O(t))throw new Error("Unable to get ID for tx type.");if("requirement-publish"in t){let e=t["requirement-publish"],[n,r]=e["contract-id"].split(".");return`${e["remap-sender"]}.${r}`}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 new Error("Unable to find ID for contract.")}function O(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var Oe=["devnet","simnet","testnet","mainnet"];function he(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,a])=>{let i=t.deployments[r][e];return i&&n.push([r,L(a,i)]),!1}),Object.fromEntries(n)}function ke(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=`${e}.${r.contractName}`;return[n,L(r,a)]}))}function St(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let a=Object.assign((...i)=>{let c=g(r,i),[u,p]=e.split(".");return{functionArgs:c,contractAddress:u,contractName:p,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,a]}))}function L(t,e){let n=y({},t);return m(y(y({},St(t.functions,e)),n),{identifier:e})}function Ne(t,e){let n={};return U(e.plan.batches).forEach(a=>{let i=K(a),[c,u]=i.split("."),p=C(u),b=t[p],l=t[p];if(typeof l>"u")throw new Error(`Clarigen error: mismatch for contract '${p}'`);n[p]=l,l.contractFile=J(a),l.identifier=i,Object.keys(t[p].functions).forEach(s=>{let v=s,W=(...N)=>{let w=b.functions[v];return{functionArgs:g(w,N),contractAddress:c,contractName:l.contractName,function:w,nativeArgs:N}};l[v]=W})}),n}function q(t,e){let n=T(e,t.key);return{key:e,keyCV:n,map:t}}import{parseReadOnlyResponse as Pt}from"micro-stacks/api";import{cvToHex as Rt}from"micro-stacks/clarity";import{fetchPrivate as Ft}from"micro-stacks/common";async function z(t){let{contractName:e,contractAddress:n,functionName:r,functionArgs:a,senderAddress:i=n,tip:c,url:u}=t,p=`${u}/v2/contracts/call-read/${n}/${e}/${encodeURIComponent(r)}`;c&&(p+=`?tip=${c}`);let b=JSON.stringify({sender:i,arguments:a.map(s=>typeof s=="string"?s:Rt(s))}),l=await Ft(p,{method:"POST",body:b,headers:{"Content-Type":"application/json"}});if(!l.ok){let s="";try{s=await l.text()}catch{}throw new Error(`Error calling read-only function. Response ${l.status}: ${l.statusText}. Attempted to fetch ${p} and failed with the message: "${s}"`)}return Pt(await l.json())}function G(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function h(t,e){let n=G(e),r=await z({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:k(e)});return e.json?d(r):f(r,!0)}async function Mt(t,e){let n=await h(t,e);return D(n)}async function Dt(t,e){let n=await h(t,e);return j(n)}function k(t){return"network"in t?t.network.getCoreApiUrl():t.url}async function qe(t,e,n,r){let a=q(e,n),i=JSON.stringify(Vt(a.keyCV)),[c,u]=t.split("."),p=_t(`${It(k(r))}/map_entry/${c}/${u}/${a.map.name}`,{proof:0,tip:G(r)}),l=await(await fetch(p,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),s=Bt(l.data);return f(s,!0)}async function ze(t,e){let n=`${k(e)}/v2/transactions`,r=await $t(t.serialize(),n);if("error"in r)throw new Error(`Error broadcasting tx: ${r.error} - ${r.reason} - ${JSON.stringify(r.reason_data)}`);return{txId:r.txid,stacksTransaction:t}}var H=class{constructor(e){typeof e=="string"?this.url=e:this.url=e.getCoreApiUrl()}roOptions(e){return y({url:this.url},e)}ro(e,n){return h(e,this.roOptions(n||{}))}roOk(e,n){return Mt(e,this.roOptions(n||{}))}roErr(e,n){return Dt(e,this.roOptions(n||{}))}};export{H as ClarigenClient,at as CoreNodeEventType,Oe as DEPLOYMENT_NETWORKS,rt as MAINNET_BURN_ADDRESS,nt as TESTNET_BURN_ADDRESS,zt as bootContractIdentifier,ze as broadcast,L as contractFactory,ke as contractsFactory,d as cvToJSON,x as cvToString,f as cvToValue,Ne as deploymentFactory,M as err,j as expectErr,D as expectOk,qe as fetchMapGet,Gt as filterEvents,A as findJsTupleKey,St as functionsFactory,k as getApiUrl,Lt as getContractIdentifier,ot as getContractNameFromPath,qt as getContractPrincipalCV,ce as hexToCvValue,Zt as makeContracts,q as mapFactory,$ as ok,T as parseToCV,E as principalToString,he as projectFactory,Nt as pureProxy,h as ro,Dt as roErr,Mt as roOk,C as toCamelCase,R as toKebabCase,Ot as transformArgsArray,g as transformArgsToCV,V as transformObjectArgs};
|
package/package.json
CHANGED