@clarigen/core 1.0.0-next.18 → 1.0.0-next.19
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/deno/index.d.ts +13 -15
- package/dist/deno/index.js +1 -1
- package/dist/index.d.ts +13 -15
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +2 -2
package/dist/deno/index.d.ts
CHANGED
|
@@ -103,18 +103,18 @@ declare type TypedAbi = Readonly<{
|
|
|
103
103
|
contractName: string;
|
|
104
104
|
contractFile?: string;
|
|
105
105
|
}>;
|
|
106
|
-
interface ResponseOk<T> {
|
|
106
|
+
interface ResponseOk<T, E> {
|
|
107
107
|
value: T;
|
|
108
108
|
isOk: true;
|
|
109
109
|
}
|
|
110
|
-
interface ResponseErr<T> {
|
|
111
|
-
value:
|
|
110
|
+
interface ResponseErr<T, E> {
|
|
111
|
+
value: E;
|
|
112
112
|
isOk: false;
|
|
113
113
|
}
|
|
114
|
-
declare type Response<Ok, Err> = ResponseOk<Ok> | ResponseErr<Err>;
|
|
114
|
+
declare type Response<Ok, Err> = ResponseOk<Ok, Err> | ResponseErr<Ok, Err>;
|
|
115
115
|
|
|
116
|
-
declare function ok<T>(value: T): ResponseOk<T>;
|
|
117
|
-
declare function err<T>(value: T): ResponseErr<T>;
|
|
116
|
+
declare function ok<T, Err = never>(value: T): ResponseOk<T, Err>;
|
|
117
|
+
declare function err<Ok = never, T = unknown>(value: T): ResponseErr<Ok, T>;
|
|
118
118
|
interface ClarityAbi extends Omit<ClarityAbi$1, 'maps'> {
|
|
119
119
|
maps: ClarityAbiMap[];
|
|
120
120
|
clarity_version?: string;
|
|
@@ -345,21 +345,19 @@ interface ContractCallTyped<Args, R> extends Omit<ContractCall<R>, 'nativeArgs'>
|
|
|
345
345
|
declare type ContractFunctions = {
|
|
346
346
|
[key: string]: TypedAbiFunction<unknown[], unknown>;
|
|
347
347
|
};
|
|
348
|
-
declare type AllContracts =
|
|
349
|
-
[contractName: string]: {
|
|
350
|
-
functions: ContractFunctions;
|
|
351
|
-
[key: string]: any;
|
|
352
|
-
};
|
|
353
|
-
};
|
|
348
|
+
declare type AllContracts = Record<string, TypedAbi>;
|
|
354
349
|
declare type ContractCallFunction<Args extends any[], R> = (...args: Args) => ContractCallTyped<Args, R>;
|
|
355
350
|
declare type FnToContractCall<T> = T extends TypedAbiFunction<infer Arg, infer R> ? ContractCallFunction<Arg, R> : never;
|
|
356
351
|
declare type FunctionsToContractCalls<T> = T extends ContractFunctions ? {
|
|
357
352
|
[key in keyof T]: FnToContractCall<T[key]>;
|
|
358
353
|
} : never;
|
|
354
|
+
declare type FullContract<T> = T extends TypedAbi ? T & FunctionsToContractCalls<T['functions']> & {
|
|
355
|
+
identifier: string;
|
|
356
|
+
} : never;
|
|
359
357
|
declare type ContractsToContractCalls<T> = T extends AllContracts ? {
|
|
360
|
-
[key in keyof T]:
|
|
358
|
+
[key in keyof T]: FullContract<T[key]>;
|
|
361
359
|
} : never;
|
|
362
|
-
declare function contractFactory<T extends AllContracts>(contracts: T): ContractsToContractCalls<T>;
|
|
360
|
+
declare function contractFactory<T extends AllContracts>(contracts: T, deployer: string): ContractsToContractCalls<T>;
|
|
363
361
|
|
|
364
362
|
interface PureContractInfo {
|
|
365
363
|
abi: ClarityAbi;
|
|
@@ -397,4 +395,4 @@ declare function broadcast(transaction: StacksTransaction, options: ApiOptions):
|
|
|
397
395
|
stacksTransaction: StacksTransaction;
|
|
398
396
|
}>;
|
|
399
397
|
|
|
400
|
-
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, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, ContractsToContractCalls, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, 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 };
|
|
398
|
+
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, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, ContractsToContractCalls, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, 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 };
|
package/dist/deno/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/// <reference path="./index.d.ts" />
|
|
2
|
-
import{contractPrincipalCV as
|
|
2
|
+
import{contractPrincipalCV as N}from"https://deno.land/x/microstacks/clarity.js";var S="ST000000000000000000002AMW42H",_="SP000000000000000000002Q6VF78",C=(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},w=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},ct=t=>`${t.address}.${t.name}`,pt=t=>{let e=w(t.contractFile);return N(t.address,e)};function lt(t,e){return`${e?_:S}.${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 ft(t,e){return t.filter(n=>n.type===e)}function Ct(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 T,ClarityType as a,uintCV as R,contractPrincipalCV as F,intCV as V,stringAsciiCV as B,stringUtf8CV as P,noneCV as I,someCV as h,tupleCV as $,listCV as M,hexToCV as U,bufferCV as j}from"https://deno.land/x/microstacks/clarity.js";import{isClarityAbiList as L,isClarityAbiOptional as K,isClarityAbiStringAscii as H,isClarityAbiStringUtf8 as G,isClarityAbiTuple as D,isClarityAbiBuffer as J,parseToCV as x}from"https://deno.land/x/microstacks/transactions.js";import{bytesToAscii as z,bytesToHex as Q}from"https://deno.land/x/microstacks/common.js";function W(t){return{isOk:!0,value:t}}function Z(t){return{isOk:!1,value:t}}function m(t){if(t.type===a.PrincipalStandard)return T(t.address);if(t.type===a.PrincipalContract)return`${T(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?Z(p(t.value)):p(t.value);case a.ResponseOk:return e?W(p(t.value)):p(t.value);case a.PrincipalStandard:case a.PrincipalContract:return m(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 St(t,e=!1){return p(U(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(D(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)}),$(n)}else if(L(e)){let r=t.map(o=>u(o,e.list.type));return M(r)}else{if(K(e))return t?h(u(t,e.optional)):I();if(H(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return B(t)}else if(G(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return P(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return x(n,e)}else if(e==="uint128"){let n=v(t);return R(n.toString())}else if(e==="int128"){let n=v(t);return V(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 F(n,r)}else if(J(e))return j(t)}return x(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=z(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${Q(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`'${m(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 g(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${t.value}`)}function A(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${t.value}`)}function d(t,e){return E(t,e)}function q(t,e){let n=t.abi.functions.find(o=>C(o.name)===e);if(n)return function(...o){return{functionArgs:d(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>C(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 X={get:q},Y=t=>new Proxy(t,X);import{parseReadOnlyResponse as tt,fetchContractDataMapEntry as et}from"https://deno.land/x/microstacks/api.js";import{cvToHex as b,hexToCV as nt}from"https://deno.land/x/microstacks/clarity.js";import{fetchPrivate as rt}from"https://deno.land/x/microstacks/common.js";import{broadcastTransaction as ot}from"https://deno.land/x/microstacks/transactions.js";async function k(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:b(s))}),i=await rt(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=tt(await i.json());return p(l,!0)}async function Ut(t,e){let n=await k(t,e);return g(n)}async function jt(t,e){let n=await k(t,e);return A(n)}async function Lt(t,e){let n=b(t.key),r=await et({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=nt(r.data);return p(o,!0)}async function Kt(t,e){let n=await ot(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 Dt(t,e){let n=t;return Object.keys(t).forEach(r=>{n[r].identifier=`${e}.${r}`;let o=t[r];Object.keys(t[r].functions).forEach(i=>{let l=(...s)=>{let y=o.functions[i];return{functionArgs:d(y,s),contractAddress:"",contractName:o.contractName,function:y,nativeArgs:s}};n[r][i]=l})}),n}export{O as CoreNodeEventType,_ as MAINNET_BURN_ADDRESS,S as TESTNET_BURN_ADDRESS,lt as bootContractIdentifier,Kt as broadcast,Dt as contractFactory,f as cvToString,p as cvToValue,Z as err,A as expectErr,g as expectOk,Lt as fetchMapGet,ft as filterEvents,ct as getContractIdentifier,w as getContractNameFromPath,pt as getContractPrincipalCV,St as hexToCvValue,Ct as makeContracts,W as ok,u as parseToCV,Y as pureProxy,k as ro,jt as roErr,Ut as roOk,C as toCamelCase,E as transformArgsToCV};
|
package/dist/index.d.ts
CHANGED
|
@@ -103,18 +103,18 @@ declare type TypedAbi = Readonly<{
|
|
|
103
103
|
contractName: string;
|
|
104
104
|
contractFile?: string;
|
|
105
105
|
}>;
|
|
106
|
-
interface ResponseOk<T> {
|
|
106
|
+
interface ResponseOk<T, E> {
|
|
107
107
|
value: T;
|
|
108
108
|
isOk: true;
|
|
109
109
|
}
|
|
110
|
-
interface ResponseErr<T> {
|
|
111
|
-
value:
|
|
110
|
+
interface ResponseErr<T, E> {
|
|
111
|
+
value: E;
|
|
112
112
|
isOk: false;
|
|
113
113
|
}
|
|
114
|
-
declare type Response<Ok, Err> = ResponseOk<Ok> | ResponseErr<Err>;
|
|
114
|
+
declare type Response<Ok, Err> = ResponseOk<Ok, Err> | ResponseErr<Ok, Err>;
|
|
115
115
|
|
|
116
|
-
declare function ok<T>(value: T): ResponseOk<T>;
|
|
117
|
-
declare function err<T>(value: T): ResponseErr<T>;
|
|
116
|
+
declare function ok<T, Err = never>(value: T): ResponseOk<T, Err>;
|
|
117
|
+
declare function err<Ok = never, T = unknown>(value: T): ResponseErr<Ok, T>;
|
|
118
118
|
interface ClarityAbi extends Omit<ClarityAbi$1, 'maps'> {
|
|
119
119
|
maps: ClarityAbiMap[];
|
|
120
120
|
clarity_version?: string;
|
|
@@ -345,21 +345,19 @@ interface ContractCallTyped<Args, R> extends Omit<ContractCall<R>, 'nativeArgs'>
|
|
|
345
345
|
declare type ContractFunctions = {
|
|
346
346
|
[key: string]: TypedAbiFunction<unknown[], unknown>;
|
|
347
347
|
};
|
|
348
|
-
declare type AllContracts =
|
|
349
|
-
[contractName: string]: {
|
|
350
|
-
functions: ContractFunctions;
|
|
351
|
-
[key: string]: any;
|
|
352
|
-
};
|
|
353
|
-
};
|
|
348
|
+
declare type AllContracts = Record<string, TypedAbi>;
|
|
354
349
|
declare type ContractCallFunction<Args extends any[], R> = (...args: Args) => ContractCallTyped<Args, R>;
|
|
355
350
|
declare type FnToContractCall<T> = T extends TypedAbiFunction<infer Arg, infer R> ? ContractCallFunction<Arg, R> : never;
|
|
356
351
|
declare type FunctionsToContractCalls<T> = T extends ContractFunctions ? {
|
|
357
352
|
[key in keyof T]: FnToContractCall<T[key]>;
|
|
358
353
|
} : never;
|
|
354
|
+
declare type FullContract<T> = T extends TypedAbi ? T & FunctionsToContractCalls<T['functions']> & {
|
|
355
|
+
identifier: string;
|
|
356
|
+
} : never;
|
|
359
357
|
declare type ContractsToContractCalls<T> = T extends AllContracts ? {
|
|
360
|
-
[key in keyof T]:
|
|
358
|
+
[key in keyof T]: FullContract<T[key]>;
|
|
361
359
|
} : never;
|
|
362
|
-
declare function contractFactory<T extends AllContracts>(contracts: T): ContractsToContractCalls<T>;
|
|
360
|
+
declare function contractFactory<T extends AllContracts>(contracts: T, deployer: string): ContractsToContractCalls<T>;
|
|
363
361
|
|
|
364
362
|
interface PureContractInfo {
|
|
365
363
|
abi: ClarityAbi;
|
|
@@ -397,4 +395,4 @@ declare function broadcast(transaction: StacksTransaction, options: ApiOptions):
|
|
|
397
395
|
stacksTransaction: StacksTransaction;
|
|
398
396
|
}>;
|
|
399
397
|
|
|
400
|
-
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, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, ContractsToContractCalls, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, FnToContractCall, FtBurnEvent, FtMintEvent, FtTransferEvent, 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 };
|
|
398
|
+
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, ContractFn, ContractFunctions, ContractInstance, ContractInstances, ContractReturn, ContractReturnErr, ContractReturnOk, Contracts, ContractsToContractCalls, CoreNodeEvent, CoreNodeEventBase, CoreNodeEventType, 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 };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _clarity = require('micro-stacks/clarity');var S="ST000000000000000000002AMW42H",_= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _clarity = require('micro-stacks/clarity');var S="ST000000000000000000002AMW42H",_= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",C= 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},w= exports.getContractNameFromPath =t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},ct= exports.getContractIdentifier =t=>`${t.address}.${t.name}`,pt= exports.getContractPrincipalCV =t=>{let e=w(t.contractFile);return _clarity.contractPrincipalCV.call(void 0, t.address,e)};function lt(t,e){return`${e?_:S}.${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 ft(t,e){return t.filter(n=>n.type===e)}function Ct(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 W(t){return{isOk:!0,value:t}}function Z(t){return{isOk:!1,value:t}}function m(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?Z(p(t.value)):p(t.value);case _clarity.ClarityType.ResponseOk:return e?W(p(t.value)):p(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return m(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 St(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`'${m(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 g(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${t.value}`)}function A(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${t.value}`)}function d(t,e){return E(t,e)}function q(t,e){let n=t.abi.functions.find(o=>C(o.name)===e);if(n)return function(...o){return{functionArgs:d(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>C(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 X={get:q},Y= exports.pureProxy =t=>new Proxy(t,X);var _api = require('micro-stacks/api');async function k(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 Ut(t,e){let n=await k(t,e);return g(n)}async function jt(t,e){let n=await k(t,e);return A(n)}async function Lt(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 Kt(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 Dt(t,e){let n=t;return Object.keys(t).forEach(r=>{n[r].identifier=`${e}.${r}`;let o=t[r];Object.keys(t[r].functions).forEach(i=>{let l=(...s)=>{let y=o.functions[i];return{functionArgs:d(y,s),contractAddress:"",contractName:o.contractName,function:y,nativeArgs:s}};n[r][i]=l})}),n}exports.CoreNodeEventType = O; exports.MAINNET_BURN_ADDRESS = _; exports.TESTNET_BURN_ADDRESS = S; exports.bootContractIdentifier = lt; exports.broadcast = Kt; exports.contractFactory = Dt; exports.cvToString = f; exports.cvToValue = p; exports.err = Z; exports.expectErr = A; exports.expectOk = g; exports.fetchMapGet = Lt; exports.filterEvents = ft; exports.getContractIdentifier = ct; exports.getContractNameFromPath = w; exports.getContractPrincipalCV = pt; exports.hexToCvValue = St; exports.makeContracts = Ct; exports.ok = W; exports.parseToCV = u; exports.pureProxy = Y; exports.ro = k; exports.roErr = jt; exports.roOk = Ut; exports.toCamelCase = C; exports.transformArgsToCV = E;
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{contractPrincipalCV as
|
|
1
|
+
import{contractPrincipalCV as N}from"micro-stacks/clarity";var S="ST000000000000000000002AMW42H",_="SP000000000000000000002Q6VF78",C=(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},w=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},ct=t=>`${t.address}.${t.name}`,pt=t=>{let e=w(t.contractFile);return N(t.address,e)};function lt(t,e){return`${e?_:S}.${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 ft(t,e){return t.filter(n=>n.type===e)}function Ct(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 T,ClarityType as a,uintCV as R,contractPrincipalCV as F,intCV as V,stringAsciiCV as B,stringUtf8CV as P,noneCV as I,someCV as h,tupleCV as $,listCV as M,hexToCV as U,bufferCV as j}from"micro-stacks/clarity";import{isClarityAbiList as L,isClarityAbiOptional as K,isClarityAbiStringAscii as H,isClarityAbiStringUtf8 as G,isClarityAbiTuple as D,isClarityAbiBuffer as J,parseToCV as x}from"micro-stacks/transactions";import{bytesToAscii as z,bytesToHex as Q}from"micro-stacks/common";function W(t){return{isOk:!0,value:t}}function Z(t){return{isOk:!1,value:t}}function m(t){if(t.type===a.PrincipalStandard)return T(t.address);if(t.type===a.PrincipalContract)return`${T(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?Z(p(t.value)):p(t.value);case a.ResponseOk:return e?W(p(t.value)):p(t.value);case a.PrincipalStandard:case a.PrincipalContract:return m(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 St(t,e=!1){return p(U(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(D(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)}),$(n)}else if(L(e)){let r=t.map(o=>u(o,e.list.type));return M(r)}else{if(K(e))return t?h(u(t,e.optional)):I();if(H(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return B(t)}else if(G(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return P(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return x(n,e)}else if(e==="uint128"){let n=v(t);return R(n.toString())}else if(e==="int128"){let n=v(t);return V(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 F(n,r)}else if(J(e))return j(t)}return x(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=z(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${Q(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`'${m(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 g(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${t.value}`)}function A(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${t.value}`)}function d(t,e){return E(t,e)}function q(t,e){let n=t.abi.functions.find(o=>C(o.name)===e);if(n)return function(...o){return{functionArgs:d(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,nativeArgs:o}};let r=t.abi.maps.find(o=>C(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 X={get:q},Y=t=>new Proxy(t,X);import{parseReadOnlyResponse as tt,fetchContractDataMapEntry as et}from"micro-stacks/api";import{cvToHex as b,hexToCV as nt}from"micro-stacks/clarity";import{fetchPrivate as rt}from"micro-stacks/common";import{broadcastTransaction as ot}from"micro-stacks/transactions";async function k(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:b(s))}),i=await rt(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=tt(await i.json());return p(l,!0)}async function Ut(t,e){let n=await k(t,e);return g(n)}async function jt(t,e){let n=await k(t,e);return A(n)}async function Lt(t,e){let n=b(t.key),r=await et({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=nt(r.data);return p(o,!0)}async function Kt(t,e){let n=await ot(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 Dt(t,e){let n=t;return Object.keys(t).forEach(r=>{n[r].identifier=`${e}.${r}`;let o=t[r];Object.keys(t[r].functions).forEach(i=>{let l=(...s)=>{let y=o.functions[i];return{functionArgs:d(y,s),contractAddress:"",contractName:o.contractName,function:y,nativeArgs:s}};n[r][i]=l})}),n}export{O as CoreNodeEventType,_ as MAINNET_BURN_ADDRESS,S as TESTNET_BURN_ADDRESS,lt as bootContractIdentifier,Kt as broadcast,Dt as contractFactory,f as cvToString,p as cvToValue,Z as err,A as expectErr,g as expectOk,Lt as fetchMapGet,ft as filterEvents,ct as getContractIdentifier,w as getContractNameFromPath,pt as getContractPrincipalCV,St as hexToCvValue,Ct as makeContracts,W as ok,u as parseToCV,Y as pureProxy,k as ro,jt as roErr,Ut as roOk,C as toCamelCase,E as transformArgsToCV};
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.0.0-next.
|
|
2
|
+
"version": "1.0.0-next.19",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"types": "./dist/index.d.ts",
|
|
5
5
|
"main": "./dist/index.js",
|
|
@@ -29,5 +29,5 @@
|
|
|
29
29
|
"publishConfig": {
|
|
30
30
|
"access": "public"
|
|
31
31
|
},
|
|
32
|
-
"gitHead": "
|
|
32
|
+
"gitHead": "d6b6fc199e367698d566f38ee3343b04a418c829"
|
|
33
33
|
}
|