@clarigen/core 1.0.16-alpha.6 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/index.d.ts +30 -16
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +10 -7
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
For documentation, visit [clarigen.dev](https://clarigen.dev)
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ClarityAbi as ClarityAbi$1, PrincipalCV, ClarityValue, ClarityAbiTypeTuple as ClarityAbiTypeTuple$1, ContractPrincipalCV, AssetInfo } from '
|
|
2
|
-
import {
|
|
3
|
-
import { IntegerType } from '
|
|
1
|
+
import { ClarityAbi as ClarityAbi$1, PrincipalCV, ClarityValue, ClarityAbiTypeTuple as ClarityAbiTypeTuple$1, ContractPrincipalCV, StacksTransaction, AssetInfo, NonFungibleConditionCode, PostCondition, FungibleConditionCode } from '@stacks/transactions';
|
|
2
|
+
import { StacksNetwork, StacksNetworkName } from '@stacks/network';
|
|
3
|
+
import { IntegerType } from '@stacks/common';
|
|
4
4
|
|
|
5
5
|
type ClarityAbiTypeBuffer = {
|
|
6
6
|
buffer: {
|
|
@@ -27,7 +27,7 @@ type ClarityAbiTypeOptional = {
|
|
|
27
27
|
optional: ClarityAbiType;
|
|
28
28
|
};
|
|
29
29
|
type ClarityAbiTypeTuple = {
|
|
30
|
-
tuple:
|
|
30
|
+
tuple: {
|
|
31
31
|
name: string;
|
|
32
32
|
type: ClarityAbiType;
|
|
33
33
|
}[];
|
|
@@ -91,6 +91,8 @@ interface ClarityAbiTypeNonFungibleToken<T = unknown> {
|
|
|
91
91
|
type: ClarityAbiType;
|
|
92
92
|
_t?: T;
|
|
93
93
|
}
|
|
94
|
+
type StacksEpochId = 'Epoch10' | 'Epoch20' | 'Epoch2_05' | 'Epoch21' | 'Epoch22' | 'Epoch23' | 'Epoch24' | 'Epoch25' | 'Epoch30';
|
|
95
|
+
type ClarityVersion = 'Clarity1' | 'Clarity2';
|
|
94
96
|
type TypedAbi = Readonly<{
|
|
95
97
|
functions: {
|
|
96
98
|
[key: string]: TypedAbiFunction<TypedAbiArg<unknown, string>[], unknown>;
|
|
@@ -126,9 +128,9 @@ type ErrType<R> = R extends ResponseErr<unknown, infer V> ? V : never;
|
|
|
126
128
|
declare function ok<T, Err = never>(value: T): ResponseOk<T, Err>;
|
|
127
129
|
declare function err<Ok = never, T = unknown>(value: T): ResponseErr<Ok, T>;
|
|
128
130
|
declare function isResponse<T>(value: Response<T, T> | T): value is Response<T, T>;
|
|
129
|
-
interface ClarityAbi extends
|
|
130
|
-
|
|
131
|
-
clarity_version
|
|
131
|
+
interface ClarityAbi extends ClarityAbi$1 {
|
|
132
|
+
epoch: StacksEpochId;
|
|
133
|
+
clarity_version: ClarityVersion;
|
|
132
134
|
}
|
|
133
135
|
declare function principalToString(principal: PrincipalCV): string;
|
|
134
136
|
/**
|
|
@@ -153,6 +155,7 @@ declare const isClarityAbiResponse: (val: ClarityAbiType) => val is ClarityAbiTy
|
|
|
153
155
|
declare const isClarityAbiOptional: (val: ClarityAbiType) => val is ClarityAbiTypeOptional;
|
|
154
156
|
declare const isClarityAbiTuple: (val: ClarityAbiType) => val is ClarityAbiTypeTuple$1;
|
|
155
157
|
declare const isClarityAbiList: (val: ClarityAbiType) => val is ClarityAbiTypeList;
|
|
158
|
+
declare const isClarityAbiTraitReference: (val: ClarityAbiType) => val is "trait_reference";
|
|
156
159
|
declare function parseToCV(input: CVInput, type: ClarityAbiType): ClarityValue;
|
|
157
160
|
declare function cvToString(val: ClarityValue, encoding?: 'tryAscii' | 'hex'): string;
|
|
158
161
|
/**
|
|
@@ -274,10 +277,15 @@ declare const TESTNET_BURN_ADDRESS = "ST000000000000000000002AMW42H";
|
|
|
274
277
|
declare const MAINNET_BURN_ADDRESS = "SP000000000000000000002Q6VF78";
|
|
275
278
|
declare const toCamelCase: (input: string | number | symbol, titleCase?: boolean) => string;
|
|
276
279
|
declare function toKebabCase(input: string): string;
|
|
280
|
+
declare function getContractName(identifier: string, camelCase?: boolean): string;
|
|
277
281
|
declare const getContractNameFromPath: (path: string) => string;
|
|
278
282
|
declare const getContractIdentifier: <T>(contract: Contract<T>) => string;
|
|
279
283
|
declare const getContractPrincipalCV: <T>(contract: Contract<T>) => ContractPrincipalCV;
|
|
280
284
|
declare function bootContractIdentifier(name: string, mainnet: boolean): string;
|
|
285
|
+
declare function bytesToHex(bytes: Uint8Array): string;
|
|
286
|
+
declare function hexToBytes(hexString: string): Uint8Array;
|
|
287
|
+
declare function bytesToAscii(bytes: Uint8Array): string;
|
|
288
|
+
declare const isNumber: (value: number | string) => value is number;
|
|
281
289
|
|
|
282
290
|
declare enum CoreNodeEventType {
|
|
283
291
|
ContractEvent = "contract_event",
|
|
@@ -451,12 +459,12 @@ declare const pureProxy: <T extends object>(target: PureContractInfo) => T;
|
|
|
451
459
|
|
|
452
460
|
interface ApiOptionsUrl {
|
|
453
461
|
url: string;
|
|
462
|
+
network?: undefined;
|
|
454
463
|
}
|
|
455
|
-
type Network =
|
|
456
|
-
getCoreApiUrl: () => string;
|
|
457
|
-
};
|
|
464
|
+
type Network = StacksNetwork | StacksNetworkName;
|
|
458
465
|
interface ApiOptionsNetwork {
|
|
459
|
-
network:
|
|
466
|
+
network: StacksNetworkName | StacksNetwork;
|
|
467
|
+
url?: undefined;
|
|
460
468
|
}
|
|
461
469
|
type ApiOptionsBase = (ApiOptionsUrl | ApiOptionsNetwork) & {
|
|
462
470
|
tip?: string;
|
|
@@ -481,10 +489,8 @@ declare function broadcast(transaction: StacksTransaction, options: ApiOptions):
|
|
|
481
489
|
txId: string;
|
|
482
490
|
stacksTransaction: StacksTransaction;
|
|
483
491
|
}>;
|
|
484
|
-
type ClientOptions = Omit<ApiOptions, 'url'>;
|
|
485
|
-
type JsonIf<O extends ClientOptions, T> = JsonIfOption<O &
|
|
486
|
-
url: string;
|
|
487
|
-
}, T>;
|
|
492
|
+
type ClientOptions = Omit<ApiOptions, 'url' | 'network'>;
|
|
493
|
+
type JsonIf<O extends ClientOptions, T> = JsonIfOption<O & (ApiOptionsUrl | ApiOptionsNetwork), T>;
|
|
488
494
|
declare class ClarigenClient {
|
|
489
495
|
url: string;
|
|
490
496
|
constructor(networkOrUrl: Network | string);
|
|
@@ -602,6 +608,14 @@ type ProjectFactory<P extends Project<any, any>, N extends DeploymentNetwork> =
|
|
|
602
608
|
declare function projectFactory<P extends Project<C, D>, N extends DeploymentNetwork, C extends AllContracts, D extends DeploymentsForContracts<C>>(project: P, network: N): ProjectFactory<P, N>;
|
|
603
609
|
declare function contractsFactory<T extends AllContracts>(contracts: T, deployer: string): ContractFactory<T>;
|
|
604
610
|
declare function functionsFactory<T extends ContractFunctions>(functions: T, identifier: string): FunctionsToContractCalls<T>;
|
|
611
|
+
/**
|
|
612
|
+
* Provide a contract's types and it's contract identifier to generate
|
|
613
|
+
* a full contract object with all functions available.
|
|
614
|
+
*
|
|
615
|
+
* @param abi - The Clarigen-generated contract types
|
|
616
|
+
* @param identifier - The contract's identifier, like `SP000000000000000000002Q6VF78.bns`
|
|
617
|
+
* @returns
|
|
618
|
+
*/
|
|
605
619
|
declare function contractFactory<T extends TypedAbi, Id extends string>(abi: T, identifier: Id): FullContractWithIdentifier<T, Id>;
|
|
606
620
|
declare function deploymentFactory<T extends AllContracts>(contracts: T, deployer: DeploymentPlan): ContractFactory<T>;
|
|
607
621
|
type MapFactory<M extends TypedAbiMap<K, V>, K, V> = {
|
|
@@ -625,4 +639,4 @@ type RawClarityTypeTo<T extends ClarityAbiType, A = any> = T extends ClarityAbiT
|
|
|
625
639
|
type ResponseType<F extends TypedAbiFunction<UnknownArgs, any>> = F extends TypedAbiFunction<infer A, infer R> ? R : never;
|
|
626
640
|
declare function rawClarityToValue<T = any>(input: string, type: ClarityAbiType): T;
|
|
627
641
|
|
|
628
|
-
export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ApiOptions, ApiOptionsBase, ApiOptionsJsonize, ApiOptionsNetwork, ApiOptionsNoJson, ApiOptionsUrl, ArgsRecord, ArgsTuple, ArgsType, AssetNames, 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, Network, NftAssetType, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, OkType, Project, ProjectFactory, RawClarityTypeTo, ReadonlyTuple, Response, ResponseErr, ResponseOk, ResponseType, ResultAssets, SimnetDeploymentPlan, SmartContractEvent, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TupleInput, TypedAbi, TypedAbiArg, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, UnionToIntersection, UnknownArg, UnknownArgs, bootContractIdentifier, broadcast, contractFactory, contractsFactory, createAssetInfo, cvToJSON, cvToString, cvToValue, deploymentFactory, err, expectErr, expectOk, fetchMapGet, filterEvents, findJsTupleKey, functionsFactory, getApiUrl, getContractIdentifier, getContractNameFromPath, getContractPrincipalCV, hexToCvValue, isClarityAbiBuffer, isClarityAbiList, isClarityAbiOptional, isClarityAbiPrimitive, isClarityAbiResponse, isClarityAbiStringAscii, isClarityAbiStringUtf8, isClarityAbiTuple, isResponse, makeContracts, makeFungiblePostCondition, makeNonFungiblePostCondition, mapFactory, ok, parseToCV, principalToString, projectFactory, pureProxy, rawClarityToValue, ro, roErr, roOk, toCamelCase, toKebabCase, transformArgsArray, transformArgsToCV, transformObjectArgs };
|
|
642
|
+
export { AbiPrimitiveTo, AbiTupleTo, AbiTypeTo, AllContracts, ApiOptions, ApiOptionsBase, ApiOptionsJsonize, ApiOptionsNetwork, ApiOptionsNoJson, ApiOptionsUrl, ArgsRecord, ArgsTuple, ArgsType, AssetNames, CVInput, ClarigenClient, ClarityAbi, ClarityAbiArg, ClarityAbiFunction, ClarityAbiMap, ClarityAbiType, ClarityAbiTypeBool, ClarityAbiTypeBuffer, ClarityAbiTypeFungibleToken, ClarityAbiTypeInt128, ClarityAbiTypeList, ClarityAbiTypeNonFungibleToken, ClarityAbiTypeNone, ClarityAbiTypeOptional, ClarityAbiTypePrimitive, ClarityAbiTypePrincipal, ClarityAbiTypeResponse, ClarityAbiTypeStringAscii, ClarityAbiTypeStringUtf8, ClarityAbiTypeTraitReference, ClarityAbiTypeTuple, ClarityAbiTypeUInt128, ClarityAbiVariable, ClarityVersion, 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, Network, NftAssetType, NftBurnEvent, NftMintEvent, NftTransferEvent, NonStandardClarityValue, OkType, Project, ProjectFactory, RawClarityTypeTo, ReadonlyTuple, Response, ResponseErr, ResponseOk, ResponseType, ResultAssets, SimnetDeploymentPlan, SmartContractEvent, StacksEpochId, StxBurnEvent, StxLockEvent, StxMintEvent, StxTransferEvent, TESTNET_BURN_ADDRESS, TupleInput, TypedAbi, TypedAbiArg, TypedAbiFunction, TypedAbiMap, TypedAbiVariable, UnionToIntersection, UnknownArg, UnknownArgs, bootContractIdentifier, broadcast, bytesToAscii, bytesToHex, contractFactory, contractsFactory, createAssetInfo, cvToJSON, cvToString, cvToValue, deploymentFactory, err, expectErr, expectOk, fetchMapGet, filterEvents, findJsTupleKey, functionsFactory, getApiUrl, getContractIdentifier, getContractName, getContractNameFromPath, getContractPrincipalCV, hexToBytes, hexToCvValue, isClarityAbiBuffer, isClarityAbiList, isClarityAbiOptional, isClarityAbiPrimitive, isClarityAbiResponse, isClarityAbiStringAscii, isClarityAbiStringUtf8, isClarityAbiTraitReference, isClarityAbiTuple, isNumber, isResponse, makeContracts, makeFungiblePostCondition, makeNonFungiblePostCondition, mapFactory, ok, parseToCV, principalToString, projectFactory, pureProxy, rawClarityToValue, 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 at=Object.defineProperty,ct=Object.defineProperties;var lt=Object.getOwnPropertyDescriptors;var D=Object.getOwnPropertySymbols;var pt=Object.prototype.hasOwnProperty,ut=Object.prototype.propertyIsEnumerable;var M=(t,e,n)=>e in t?at(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,f=(t,e)=>{for(var n in e||(e={}))pt.call(e,n)&&M(t,n,e[n]);if(D)for(var n of D(e))ut.call(e,n)&&M(t,n,e[n]);return t},g=(t,e)=>ct(t,lt(e));var _clarity = require('micro-stacks/clarity');var yt="ST000000000000000000002AMW42H",dt= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",C= exports.toCamelCase =(t,e)=>{let n=typeof t=="string"?t:String(t);if(/^[A-Z_]+$/.test(n))return n;let[o,...i]=n.replace("!","").replace("?","").split("-"),c=`${e?o[0].toUpperCase():o[0].toLowerCase()}${o.slice(1)}`;return i.forEach(l=>{c+=l[0].toUpperCase()+l.slice(1)}),c};function j(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 Tt=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},re= exports.getContractIdentifier =t=>`${t.address}.${t.name}`,oe= exports.getContractPrincipalCV =t=>{let e=Tt(t.contractFile);return _clarity.contractPrincipalCV.call(void 0, t.address,e)};function ie(t,e){return`${e?dt:yt}.${t}`}var Ct=(p=>(p.ContractEvent="contract_event",p.StxTransferEvent="stx_transfer_event",p.StxMintEvent="stx_mint_event",p.StxBurnEvent="stx_burn_event",p.StxLockEvent="stx_lock_event",p.NftTransferEvent="nft_transfer_event",p.NftMintEvent="nft_mint_event",p.NftBurnEvent="nft_burn_event",p.FtTransferEvent="ft_transfer_event",p.FtMintEvent="ft_mint_event",p.FtBurnEvent="ft_burn_event",p))(Ct||{});function ae(t,e){return t.filter(n=>n.type===e)}function le(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,a=`${i}.${o.name}`,c=o.contract(i,o.name);n[r]={identifier:a,contract:c}}return n}var _transactions = require('micro-stacks/transactions');var _common = require('micro-stacks/common');function h(t){return{isOk:!0,value:t}}function v(t){return{isOk:!1,value:t}}function be(t){return typeof t=="object"&&t!==null&&"isOk"in t}function k(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 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 t.buffer;case _clarity.ClarityType.OptionalNone:return null;case _clarity.ClarityType.OptionalSome:return y(t.value);case _clarity.ClarityType.ResponseErr:return e?v(y(t.value)):y(t.value);case _clarity.ClarityType.ResponseOk:return e?h(y(t.value)):y(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return k(t);case _clarity.ClarityType.List:return t.list.map(r=>y(r));case _clarity.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=C(o);return g(f({},r),{[a]:y(i)})},{});case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function Ae(t,e=!1){return y(_clarity.hexToCV.call(void 0, t),e)}function L(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}var he=t=>typeof t=="string",O= exports.isClarityAbiBuffer =t=>t.buffer!==void 0,w= exports.isClarityAbiStringAscii =t=>t["string-ascii"]!==void 0,N= exports.isClarityAbiStringUtf8 =t=>t["string-utf8"]!==void 0,W= exports.isClarityAbiResponse =t=>t.response!==void 0,P= exports.isClarityAbiOptional =t=>t.optional!==void 0,S= exports.isClarityAbiTuple =t=>t.tuple!==void 0,R= exports.isClarityAbiList =t=>t.list!==void 0;function d(t,e){if(S(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=F(r.name,t),i=t[o];n[r.name]=d(i,r.type)}),_clarity.tupleCV.call(void 0, n)}else if(R(e)){let r=t.map(o=>d(o,e.list.type));return _clarity.listCV.call(void 0, r)}else{if(P(e))return t===null?_clarity.noneCV.call(void 0, ):_clarity.someCV.call(void 0, d(t,e.optional));if(w(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return _clarity.stringAsciiCV.call(void 0, t)}else if(N(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=L(t);return _clarity.uintCV.call(void 0, n.toString())}else if(e==="int128"){let n=L(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(O(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`'${k(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 m(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 m(t.value);case _clarity.ClarityType.ResponseErr:return e?v(m(t.value)):m(t.value);case _clarity.ClarityType.ResponseOk:return e?h(m(t.value)):m(t.value);case _clarity.ClarityType.PrincipalStandard:case _clarity.ClarityType.PrincipalContract:return k(t);case _clarity.ClarityType.List:return t.list.map(r=>m(r));case _clarity.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=C(o);return g(f({},r),{[a]:m(i)})},{});case _clarity.ClarityType.StringASCII:return t.data;case _clarity.ClarityType.StringUTF8:return t.data}}function q(t,e){return t.args.map(n=>{let r=F(n.name,e),o=e[r];return d(o,n.type)})}function Pt(t,e){return e.map((n,r)=>d(n,t.args[r].type))}function b(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return q(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(o=>{try{F(o.name,n)}catch (e2){r=!1}}),r)return q(t,n)}catch (e3){}return Pt(t,e)}function F(t,e){let n=Object.keys(e).find(r=>{let o=t===r,i=t===j(r);return o||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function H(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function G(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function St(t,e){let n=t.abi.functions.find(o=>C(o.name)===e);if(n)return function(...o){return{functionArgs:b(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:o}};let r=t.abi.maps.find(o=>C(o.name)===e);if(r)return o=>{let i=d(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 Rt={get:St},Ft= exports.pureProxy =t=>new Proxy(t,Rt);var _api = require('micro-stacks/api');function It(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function Z(t){return It(t).filter(I)}function Y(t){if(!I(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 Q(t){if(!I(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 I(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var Ue=["devnet","simnet","testnet","mainnet"];function De(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,o])=>{let i=t.deployments[r][e];return i&&n.push([r,X(o,i)]),!1}),Object.fromEntries(n)}function Me(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=`${e}.${r.contractName}`;return[n,X(r,o)]}))}function _t(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=Object.assign((...i)=>{let a=b(r,i),[c,l]=e.split(".");return{functionArgs:a,contractAddress:c,contractName:l,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,o]}))}function X(t,e){let n=f({},t);return g(f(f({},_t(t.functions,e)),n),{identifier:e})}function je(t,e){let n={};return Z(e.plan.batches).forEach(o=>{let i=Q(o),[a,c]=i.split("."),l=C(c),T=t[l],u=t[l];if(typeof u>"u")throw new Error(`Clarigen error: mismatch for contract '${l}'`);n[l]=u,u.contractFile=Y(o),u.identifier=i,Object.keys(t[l].functions).forEach(p=>{let E=p,st=(...$)=>{let U=T.functions[E];return{functionArgs:b(U,$),contractAddress:a,contractName:u.contractName,function:U,nativeArgs:$}};u[E]=st})}),n}function tt(t,e){let n=d(e,t.key);return{key:e,keyCV:n,map:t}}async function et(t){let{contractName:e,contractAddress:n,functionName:r,functionArgs:o,senderAddress:i=n,tip:a,url:c}=t,l=`${c}/v2/contracts/call-read/${n}/${e}/${encodeURIComponent(r)}`;a&&(l+=`?tip=${a}`);let T=JSON.stringify({sender:i,arguments:o.map(p=>typeof p=="string"?p:_clarity.cvToHex.call(void 0, p))}),u=await _common.fetchPrivate.call(void 0, l,{method:"POST",body:T,headers:{"Content-Type":"application/json"}});if(!u.ok){let p="";try{p=await u.text()}catch (e4){}throw new Error(`Error calling read-only function. Response ${u.status}: ${u.statusText}. Attempted to fetch ${l} and failed with the message: "${p}"`)}return _api.parseReadOnlyResponse.call(void 0, await u.json())}function rt(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function _(t,e){let n=rt(e),r=await et({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:B(e)});return e.json?m(r):y(r,!0)}async function Kt(t,e){let n=await _(t,e);return H(n)}async function Lt(t,e){let n=await _(t,e);return G(n)}function B(t){return"network"in t?t.network.getCoreApiUrl():t.url}async function sn(t,e,n,r){let o=tt(e,n),i=JSON.stringify(_clarity.cvToHex.call(void 0, o.keyCV)),[a,c]=t.split("."),l=_api.generateUrl.call(void 0, `${_api.v2Endpoint.call(void 0, B(r))}/map_entry/${a}/${c}/${o.map.name}`,{proof:0,tip:rt(r)}),u=await(await fetch(l,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),p=_clarity.hexToCV.call(void 0, u.data);return y(p,!0)}async function an(t,e){let n=`${B(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 nt=class{constructor(e){typeof e=="string"?this.url=e:this.url=e.getCoreApiUrl()}roOptions(e){return f({url:this.url},e)}ro(e,n){return _(e,this.roOptions(n||{}))}roOk(e,n){return Kt(e,this.roOptions(n||{}))}roErr(e,n){return Lt(e,this.roOptions(n||{}))}};function it(t,e){if(!("identifier"in t))throw new Error("Invalid contract");let[n,r]=t.identifier.split(".");for(let o of t.non_fungible_tokens)if(o.name===e)return _transactions.createAssetInfo.call(void 0, n,r,o.name);for(let o of t.fungible_tokens)if(o.name===e)return _transactions.createAssetInfo.call(void 0, n,r,o.name);throw new Error(`Invalid asset: "${e}" is not an asset in contract.`)}function mn(t,e,n,r){let[o,i]=e.split("."),[a]=t.non_fungible_tokens,c=it(t,a.name),l=a.type,T=d(r,l);return typeof i>"u"?_transactions.makeStandardNonFungiblePostCondition.call(void 0, o,n,c,T):_transactions.makeContractNonFungiblePostCondition.call(void 0, o,i,n,c,T)}function gn(t,e,n,r){let[o,i]=e.split("."),[a]=t.fungible_tokens,c=it(t,a.name);return typeof i>"u"?_transactions.makeStandardFungiblePostCondition.call(void 0, o,n,r,c):_transactions.makeContractFungiblePostCondition.call(void 0, o,i,n,r,c)}function V(t,e=""){return t.slice(e.length+2,-1)}function A(t,e){if(S(e)){let n=Qt(t),r={},o=Object.entries(n).reduce((i,[a,c])=>{let l=a.trim();return g(f({},i),{[l]:c.trim()})},{});return e.tuple.forEach(({name:i,type:a})=>{let c=C(i);r[c]=A(o[i],a)}),r}else{if(R(e))return Yt(t).map(r=>A(r,e.list.type));if(P(e))return t==="none"?null:A(V(t,"some"),e.optional);if(w(e))return t.slice(1,-1);if(N(e))return t.slice(2,-1);if(e==="bool")return t==="true";if(e==="uint128")return BigInt(t.slice(1));if(e==="int128")return BigInt(t);if(e==="trait_reference")return t.replace(/^\'/,"");if(e==="principal")return t.replace(/^\'/,"");if(e==="none")return null;if(O(e))return _common.hexToBytes.call(void 0, t.slice(2));if(W(e)){if(t.startsWith("(ok")){let r=V(t,"ok");return h(A(r,e.response.ok))}let n=V(t,"err");return v(A(n,e.response.error))}}throw new Error(`Unable to parse cv string to value: ${t} ${JSON.stringify(e,null,2)}`)}var Zt=new Array(255);for(let t=0;t<=255;++t)Zt[t]=t.toString(16).padStart(2,"0");function Yt(t){if(t.charAt(0)!=="["||t.charAt(t.length-1)!=="]")throw new Error(`Expected (list ..), got ${t.toString()}`);let e=[],n=[],r=1;for(let i=0;i<t.length;i++)t.charAt(i)===","&&e.length==1&&(n.push(t.substring(r,i)),r=i+2),["(","[","{"].includes(t.charAt(i))&&e.push(t.charAt(i)),t.charAt(i)===")"&&e[e.length-1]==="("&&e.pop(),t.charAt(i)==="}"&&e[e.length-1]==="{"&&e.pop(),t.charAt(i)==="]"&&e[e.length-1]==="["&&e.pop();let o=t.substring(r,t.length-1);return o.length>0&&n.push(o),n}function Qt(t){if(t.charAt(0)!=="{"||t.charAt(t.length-1)!=="}")throw new Error(`Expected '(tuple ..)', got ${t.toString()}`);let e=1,n=[],r=[];for(let a=0;a<t.length;a++)t.charAt(a)===","&&n.length==1&&(r.push(t.substring(e,a)),e=a+2),["(","[","{"].includes(t.charAt(a))&&n.push(t.charAt(a)),t.charAt(a)===")"&&n[n.length-1]==="("&&n.pop(),t.charAt(a)==="}"&&n[n.length-1]==="{"&&n.pop(),t.charAt(a)==="]"&&n[n.length-1]==="["&&n.pop();let o=t.substring(e,t.length-1);o.length>0&&r.push(o);let i={};for(let a of r)for(let c=0;c<a.length;c++)if(a.charAt(c)===":"){let l=a.substring(0,c),T=a.substring(c+2,a.length);i[l]=T;break}return i}exports.ClarigenClient = nt; exports.CoreNodeEventType = Ct; exports.DEPLOYMENT_NETWORKS = Ue; exports.MAINNET_BURN_ADDRESS = dt; exports.TESTNET_BURN_ADDRESS = yt; exports.bootContractIdentifier = ie; exports.broadcast = an; exports.contractFactory = X; exports.contractsFactory = Me; exports.createAssetInfo = it; exports.cvToJSON = m; exports.cvToString = x; exports.cvToValue = y; exports.deploymentFactory = je; exports.err = v; exports.expectErr = G; exports.expectOk = H; exports.fetchMapGet = sn; exports.filterEvents = ae; exports.findJsTupleKey = F; exports.functionsFactory = _t; exports.getApiUrl = B; exports.getContractIdentifier = re; exports.getContractNameFromPath = Tt; exports.getContractPrincipalCV = oe; exports.hexToCvValue = Ae; exports.isClarityAbiBuffer = O; exports.isClarityAbiList = R; exports.isClarityAbiOptional = P; exports.isClarityAbiPrimitive = he; exports.isClarityAbiResponse = W; exports.isClarityAbiStringAscii = w; exports.isClarityAbiStringUtf8 = N; exports.isClarityAbiTuple = S; exports.isResponse = be; exports.makeContracts = le; exports.makeFungiblePostCondition = gn; exports.makeNonFungiblePostCondition = mn; exports.mapFactory = tt; exports.ok = h; exports.parseToCV = d; exports.principalToString = k; exports.projectFactory = De; exports.pureProxy = Ft; exports.rawClarityToValue = A; exports.ro = _; exports.roErr = Lt; exports.roOk = Kt; exports.toCamelCase = C; exports.toKebabCase = j; exports.transformArgsArray = Pt; exports.transformArgsToCV = b; exports.transformObjectArgs = q;
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var Tt=Object.defineProperty,Ct=Object.defineProperties;var mt=Object.getOwnPropertyDescriptors;var M=Object.getOwnPropertySymbols;var gt=Object.prototype.hasOwnProperty,xt=Object.prototype.propertyIsEnumerable;var j=(t,e,n)=>e in t?Tt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>{for(var n in e||(e={}))gt.call(e,n)&&j(t,n,e[n]);if(M)for(var n of M(e))xt.call(e,n)&&j(t,n,e[n]);return t},T=(t,e)=>Ct(t,mt(e));var _transactions = require('@stacks/transactions');var _base = require('@scure/base');var At="ST000000000000000000002AMW42H",ht= exports.MAINNET_BURN_ADDRESS ="SP000000000000000000002Q6VF78",f= exports.toCamelCase =(t,e)=>{let n=typeof t=="string"?t:String(t);if(/^[A-Z_]+$/.test(n))return n;let[o,...i]=n.replace("!","_x").replace("?","_q").split("-"),c=`${e?o[0].toUpperCase():o[0].toLowerCase()}${o.slice(1)}`;return i.forEach(l=>{c+=l[0].toUpperCase()+l.slice(1)}),c};function K(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}function ue(t,e=!0){let n=t.split(".")[1];return e?f(n):n}var Et=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},fe= exports.getContractIdentifier =t=>`${t.address}.${t.name}`,ye= exports.getContractPrincipalCV =t=>{let e=Et(t.contractFile);return _transactions.contractPrincipalCV.call(void 0, t.address,e)};function de(t,e){return`${e?ht:At}.${t}`}function v(t){return _base.hex.encode(t)}function L(t){return _base.hex.decode(t)}function q(t){let e=Array.from(t);return String.fromCharCode.apply(null,e)}var W=t=>typeof t=="number";var vt=(p=>(p.ContractEvent="contract_event",p.StxTransferEvent="stx_transfer_event",p.StxMintEvent="stx_mint_event",p.StxBurnEvent="stx_burn_event",p.StxLockEvent="stx_lock_event",p.NftTransferEvent="nft_transfer_event",p.NftMintEvent="nft_mint_event",p.NftBurnEvent="nft_burn_event",p.FtTransferEvent="ft_transfer_event",p.FtMintEvent="ft_mint_event",p.FtBurnEvent="ft_burn_event",p))(vt||{});function Ce(t,e){return t.filter(n=>n.type===e)}function ge(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,a=`${i}.${o.name}`,c=o.contract(i,o.name);n[r]={identifier:a,contract:c}}return n}function h(t){return{isOk:!0,value:t}}function E(t){return{isOk:!1,value:t}}function Oe(t){return typeof t=="object"&&t!==null&&"isOk"in t}function k(t){if(t.type===_transactions.ClarityType.PrincipalStandard)return _transactions.addressToString.call(void 0, t.address);if(t.type===_transactions.ClarityType.PrincipalContract)return`${_transactions.addressToString.call(void 0, t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function y(t,e=!1){switch(t.type){case _transactions.ClarityType.BoolTrue:return!0;case _transactions.ClarityType.BoolFalse:return!1;case _transactions.ClarityType.Int:case _transactions.ClarityType.UInt:return t.value;case _transactions.ClarityType.Buffer:return t.buffer;case _transactions.ClarityType.OptionalNone:return null;case _transactions.ClarityType.OptionalSome:return y(t.value);case _transactions.ClarityType.ResponseErr:return e?E(y(t.value)):y(t.value);case _transactions.ClarityType.ResponseOk:return e?h(y(t.value)):y(t.value);case _transactions.ClarityType.PrincipalStandard:case _transactions.ClarityType.PrincipalContract:return k(t);case _transactions.ClarityType.List:return t.list.map(r=>y(r));case _transactions.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=f(o);return T(u({},r),{[a]:y(i,e)})},{});case _transactions.ClarityType.StringASCII:return t.data;case _transactions.ClarityType.StringUTF8:return t.data}}function Ne(t,e=!1){return y(_transactions.hexToCV.call(void 0, t),e)}function G(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}var Se=t=>typeof t=="string",w= exports.isClarityAbiBuffer =t=>t.buffer!==void 0,O= exports.isClarityAbiStringAscii =t=>t["string-ascii"]!==void 0,N= exports.isClarityAbiStringUtf8 =t=>t["string-utf8"]!==void 0,Q= exports.isClarityAbiResponse =t=>t.response!==void 0,S= exports.isClarityAbiOptional =t=>t.optional!==void 0,P= exports.isClarityAbiTuple =t=>t.tuple!==void 0,R= exports.isClarityAbiList =t=>t.list!==void 0,Pe= exports.isClarityAbiTraitReference =t=>t==="trait_reference";function d(t,e){if(P(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=F(r.name,t),i=t[o];n[r.name]=d(i,r.type)}),_transactions.tupleCV.call(void 0, n)}else if(R(e)){let r=t.map(o=>d(o,e.list.type));return _transactions.listCV.call(void 0, r)}else{if(S(e))return t===null?_transactions.noneCV.call(void 0, ):_transactions.someCV.call(void 0, d(t,e.optional));if(O(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return _transactions.stringAsciiCV.call(void 0, t)}else if(N(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return _transactions.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=G(t);return _transactions.uintCV.call(void 0, n.toString())}else if(e==="int128"){let n=G(t);return _transactions.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 _transactions.contractPrincipalCV.call(void 0, n,r)}else if(w(e))return _transactions.bufferCV.call(void 0, t)}return _transactions.parseToCV.call(void 0, t,e)}function x(t,e="hex"){switch(t.type){case _transactions.ClarityType.BoolTrue:return"true";case _transactions.ClarityType.BoolFalse:return"false";case _transactions.ClarityType.Int:return t.value.toString();case _transactions.ClarityType.UInt:return`u${t.value.toString()}`;case _transactions.ClarityType.Buffer:if(e==="tryAscii"){let n=q(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${v(t.buffer)}`;case _transactions.ClarityType.OptionalNone:return"none";case _transactions.ClarityType.OptionalSome:return`(some ${x(t.value,e)})`;case _transactions.ClarityType.ResponseErr:return`(err ${x(t.value,e)})`;case _transactions.ClarityType.ResponseOk:return`(ok ${x(t.value,e)})`;case _transactions.ClarityType.PrincipalStandard:case _transactions.ClarityType.PrincipalContract:return`'${k(t)}`;case _transactions.ClarityType.List:return`(list ${t.list.map(n=>x(n,e)).join(" ")})`;case _transactions.ClarityType.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${x(t.data[n],e)})`).join(" ")})`;case _transactions.ClarityType.StringASCII:return`"${t.data}"`;case _transactions.ClarityType.StringUTF8:return`u"${t.data}"`}}function C(t,e=!1){switch(t.type){case _transactions.ClarityType.BoolTrue:return!0;case _transactions.ClarityType.BoolFalse:return!1;case _transactions.ClarityType.Int:case _transactions.ClarityType.UInt:return`${t.value}`;case _transactions.ClarityType.Buffer:return v(t.buffer);case _transactions.ClarityType.OptionalNone:return null;case _transactions.ClarityType.OptionalSome:return C(t.value);case _transactions.ClarityType.ResponseErr:return e?E(C(t.value)):C(t.value);case _transactions.ClarityType.ResponseOk:return e?h(C(t.value)):C(t.value);case _transactions.ClarityType.PrincipalStandard:case _transactions.ClarityType.PrincipalContract:return k(t);case _transactions.ClarityType.List:return t.list.map(r=>C(r));case _transactions.ClarityType.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=f(o);return T(u({},r),{[a]:C(i)})},{});case _transactions.ClarityType.StringASCII:return t.data;case _transactions.ClarityType.StringUTF8:return t.data}}function Z(t,e){return t.args.map(n=>{let r=F(n.name,e),o=e[r];return d(o,n.type)})}function Bt(t,e){return e.map((n,r)=>d(n,t.args[r].type))}function b(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return Z(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(o=>{try{F(o.name,n)}catch (e2){r=!1}}),r)return Z(t,n)}catch (e3){}return Bt(t,e)}function F(t,e){let n=Object.keys(e).find(r=>{let o=t===r,i=t===K(r);return o||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function Y(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function X(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function $t(t,e){let n=t.abi.functions.find(o=>f(o.name)===e);if(n)return function(...o){return{functionArgs:b(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:o}};let r=t.abi.maps.find(o=>f(o.name)===e);if(r)return o=>{let i=d(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 Ut={get:$t},Dt= exports.pureProxy =t=>new Proxy(t,Ut);function Mt(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function tt(t){return Mt(t).filter(I)}function et(t){if(!I(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 nt(t){if(!I(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 I(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var We=["devnet","simnet","testnet","mainnet"];function ze(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,o])=>{let i=t.deployments[r][e];return i&&n.push([r,rt(o,i)]),!1}),Object.fromEntries(n)}function He(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=`${e}.${r.contractName}`;return[n,rt(r,o)]}))}function jt(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=Object.assign((...i)=>{let a=b(r,i),[c,l]=e.split(".");return{functionArgs:a,contractAddress:c,contractName:l,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,o]}))}function rt(t,e){let n=u({},t);return T(u(u({},jt(t.functions,e)),n),{identifier:e})}function Ge(t,e){let n={};return tt(e.plan.batches).forEach(o=>{let i=nt(o),[a,c]=i.split("."),l=f(c),m=t[l],g=t[l];if(typeof g>"u")throw new Error(`Clarigen error: mismatch for contract '${l}'`);n[l]=g,g.contractFile=et(o),g.identifier=i,Object.keys(t[l].functions).forEach(p=>{let $=p,dt=(...U)=>{let D=m.functions[$];return{functionArgs:b(D,U),contractAddress:a,contractName:g.contractName,function:D,nativeArgs:U}};g[$]=dt})}),n}function ot(t,e){let n=d(e,t.key);return{key:e,keyCV:n,map:t}}var _blockchainapiclient = require('@stacks/blockchain-api-client');function it(t){return new (0, _blockchainapiclient.SmartContractsApi)(new (0, _blockchainapiclient.Configuration)({basePath:t}))}function st(t){return`${t}/v2`}var at=(t,e)=>{try{let n=new URL(t);return Object.keys(e).forEach(r=>{let o=e[r];if(!!o){if(Array.isArray(o))return o.length===0?void 0:n.searchParams.set(`${r}[]`,Lt(r,o));if(typeof o=="boolean"||W(o))return n.searchParams.set(r,String(o));n.searchParams.set(r,o)}}),n.toString()}catch(n){return console.error("generateUrl"),console.error(n),t}},Lt=(t,e)=>e!=null&&e.length?`${e.map((n,r)=>`${r>0?encodeURIComponent(`${t}[]`):""}=${encodeURIComponent(n)}`).join("&")}`:"";function zt(t){if(t.okay)return _transactions.hexToCV.call(void 0, t.result);throw new Error(t.cause)}async function ct(t){let{contractAddress:e,functionArgs:n,senderAddress:r=e,url:o}=t,i=await it(o).callReadOnlyFunction(T(u({},t),{readOnlyFunctionArgs:{sender:r,arguments:n.map(c=>typeof c=="string"?c:_transactions.cvToHex.call(void 0, c))}}));return zt(i)}var _network = require('@stacks/network');function pt(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function V(t,e){let n=pt(e),r=await ct({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:ut(e)});return e.json?C(r):y(r,!0)}async function Qt(t,e){let n=await V(t,e);return Y(n)}async function Yt(t,e){let n=await V(t,e);return X(n)}function ut(t){return t.network?_network.StacksNetwork.fromNameOrNetwork(t.network).coreApiUrl:t.url}async function gn(t,e,n,r){let o=ot(e,n),i=JSON.stringify(_transactions.cvToHex.call(void 0, o.keyCV)),[a,c]=t.split("."),l=at(`${st(ut(r))}/map_entry/${a}/${c}/${o.map.name}`,{proof:0,tip:pt(r)}),g=await(await fetch(l,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),p=_transactions.hexToCV.call(void 0, g.data);return y(p,!0)}async function xn(t,e){let n="network"in e?e.network:new (0, _network.StacksNetwork)({url:e.url}),r=await _transactions.broadcastTransaction.call(void 0, t,n);if(r.error)throw new Error(`Error broadcasting tx: ${r.error} - ${r.reason} - ${JSON.stringify(r.reason_data)}`);return{txId:r.txid,stacksTransaction:t}}var lt=class{constructor(e){typeof e=="string"?this.url=e:this.url=_network.StacksNetwork.fromNameOrNetwork(e).coreApiUrl}roOptions(e){return u({url:this.url},e)}ro(e,n){return V(e,this.roOptions(n||{}))}roOk(e,n){return Qt(e,this.roOptions(n||{}))}roErr(e,n){return Yt(e,this.roOptions(n||{}))}};function yt(t,e){if(!("identifier"in t))throw new Error("Invalid contract");let[n,r]=t.identifier.split(".");for(let o of t.non_fungible_tokens)if(o.name===e)return _transactions.createAssetInfo.call(void 0, n,r,o.name);for(let o of t.fungible_tokens)if(o.name===e)return _transactions.createAssetInfo.call(void 0, n,r,o.name);throw new Error(`Invalid asset: "${e}" is not an asset in contract.`)}function Sn(t,e,n,r){let[o,i]=e.split("."),[a]=t.non_fungible_tokens,c=yt(t,a.name),l=a.type,m=d(r,l);return typeof i>"u"?_transactions.makeStandardNonFungiblePostCondition.call(void 0, o,n,c,m):_transactions.makeContractNonFungiblePostCondition.call(void 0, o,i,n,c,m)}function Pn(t,e,n,r){let[o,i]=e.split("."),[a]=t.fungible_tokens,c=yt(t,a.name);return typeof i>"u"?_transactions.makeStandardFungiblePostCondition.call(void 0, o,n,r,c):_transactions.makeContractFungiblePostCondition.call(void 0, o,i,n,r,c)}function B(t,e=""){return t.slice(e.length+2,-1)}function A(t,e){if(P(e)){let n=ie(t),r={},o=Object.entries(n).reduce((i,[a,c])=>{let l=a.trim();return T(u({},i),{[l]:c.trim()})},{});return e.tuple.forEach(({name:i,type:a})=>{let c=f(i);r[c]=A(o[i],a)}),r}else{if(R(e))return oe(t).map(r=>A(r,e.list.type));if(S(e))return t==="none"?null:A(B(t,"some"),e.optional);if(O(e))return t.slice(1,-1);if(N(e))return t.slice(2,-1);if(e==="bool")return t==="true";if(e==="uint128")return BigInt(t.slice(1));if(e==="int128")return BigInt(t);if(e==="trait_reference")return t.replace(/^\'/,"");if(e==="principal")return t.replace(/^\'/,"");if(e==="none")return null;if(w(e))return L(t.slice(2));if(Q(e)){if(t.startsWith("(ok")){let r=B(t,"ok");return h(A(r,e.response.ok))}let n=B(t,"err");return E(A(n,e.response.error))}}throw new Error(`Unable to parse cv string to value: ${t} ${JSON.stringify(e,null,2)}`)}var re=new Array(255);for(let t=0;t<=255;++t)re[t]=t.toString(16).padStart(2,"0");function oe(t){if(t.charAt(0)!=="["||t.charAt(t.length-1)!=="]")throw new Error(`Expected (list ..), got ${t.toString()}`);let e=[],n=[],r=1;for(let i=0;i<t.length;i++)t.charAt(i)===","&&e.length==1&&(n.push(t.substring(r,i)),r=i+2),["(","[","{"].includes(t.charAt(i))&&e.push(t.charAt(i)),t.charAt(i)===")"&&e[e.length-1]==="("&&e.pop(),t.charAt(i)==="}"&&e[e.length-1]==="{"&&e.pop(),t.charAt(i)==="]"&&e[e.length-1]==="["&&e.pop();let o=t.substring(r,t.length-1);return o.length>0&&n.push(o),n}function ie(t){if(t.charAt(0)!=="{"||t.charAt(t.length-1)!=="}")throw new Error(`Expected '(tuple ..)', got ${t.toString()}`);let e=1,n=[],r=[];for(let a=0;a<t.length;a++)t.charAt(a)===","&&n.length==1&&(r.push(t.substring(e,a)),e=a+2),["(","[","{"].includes(t.charAt(a))&&n.push(t.charAt(a)),t.charAt(a)===")"&&n[n.length-1]==="("&&n.pop(),t.charAt(a)==="}"&&n[n.length-1]==="{"&&n.pop(),t.charAt(a)==="]"&&n[n.length-1]==="["&&n.pop();let o=t.substring(e,t.length-1);o.length>0&&r.push(o);let i={};for(let a of r)for(let c=0;c<a.length;c++)if(a.charAt(c)===":"){let l=a.substring(0,c),m=a.substring(c+2,a.length);i[l]=m;break}return i}exports.ClarigenClient = lt; exports.CoreNodeEventType = vt; exports.DEPLOYMENT_NETWORKS = We; exports.MAINNET_BURN_ADDRESS = ht; exports.TESTNET_BURN_ADDRESS = At; exports.bootContractIdentifier = de; exports.broadcast = xn; exports.bytesToAscii = q; exports.bytesToHex = v; exports.contractFactory = rt; exports.contractsFactory = He; exports.createAssetInfo = yt; exports.cvToJSON = C; exports.cvToString = x; exports.cvToValue = y; exports.deploymentFactory = Ge; exports.err = E; exports.expectErr = X; exports.expectOk = Y; exports.fetchMapGet = gn; exports.filterEvents = Ce; exports.findJsTupleKey = F; exports.functionsFactory = jt; exports.getApiUrl = ut; exports.getContractIdentifier = fe; exports.getContractName = ue; exports.getContractNameFromPath = Et; exports.getContractPrincipalCV = ye; exports.hexToBytes = L; exports.hexToCvValue = Ne; exports.isClarityAbiBuffer = w; exports.isClarityAbiList = R; exports.isClarityAbiOptional = S; exports.isClarityAbiPrimitive = Se; exports.isClarityAbiResponse = Q; exports.isClarityAbiStringAscii = O; exports.isClarityAbiStringUtf8 = N; exports.isClarityAbiTraitReference = Pe; exports.isClarityAbiTuple = P; exports.isNumber = W; exports.isResponse = Oe; exports.makeContracts = ge; exports.makeFungiblePostCondition = Pn; exports.makeNonFungiblePostCondition = Sn; exports.mapFactory = ot; exports.ok = h; exports.parseToCV = d; exports.principalToString = k; exports.projectFactory = ze; exports.pureProxy = Dt; exports.rawClarityToValue = A; exports.ro = V; exports.roErr = Yt; exports.roOk = Qt; exports.toCamelCase = f; exports.toKebabCase = K; exports.transformArgsArray = Bt; exports.transformArgsToCV = b; exports.transformObjectArgs = Z;
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var at=Object.defineProperty,ct=Object.defineProperties;var lt=Object.getOwnPropertyDescriptors;var D=Object.getOwnPropertySymbols;var pt=Object.prototype.hasOwnProperty,ut=Object.prototype.propertyIsEnumerable;var M=(t,e,n)=>e in t?at(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,f=(t,e)=>{for(var n in e||(e={}))pt.call(e,n)&&M(t,n,e[n]);if(D)for(var n of D(e))ut.call(e,n)&&M(t,n,e[n]);return t},g=(t,e)=>ct(t,lt(e));import{contractPrincipalCV as ft}from"micro-stacks/clarity";var yt="ST000000000000000000002AMW42H",dt="SP000000000000000000002Q6VF78",C=(t,e)=>{let n=typeof t=="string"?t:String(t);if(/^[A-Z_]+$/.test(n))return n;let[o,...i]=n.replace("!","").replace("?","").split("-"),c=`${e?o[0].toUpperCase():o[0].toLowerCase()}${o.slice(1)}`;return i.forEach(l=>{c+=l[0].toUpperCase()+l.slice(1)}),c};function j(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 Tt=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},re=t=>`${t.address}.${t.name}`,oe=t=>{let e=Tt(t.contractFile);return ft(t.address,e)};function ie(t,e){return`${e?dt:yt}.${t}`}var Ct=(p=>(p.ContractEvent="contract_event",p.StxTransferEvent="stx_transfer_event",p.StxMintEvent="stx_mint_event",p.StxBurnEvent="stx_burn_event",p.StxLockEvent="stx_lock_event",p.NftTransferEvent="nft_transfer_event",p.NftMintEvent="nft_mint_event",p.NftBurnEvent="nft_burn_event",p.FtTransferEvent="ft_transfer_event",p.FtMintEvent="ft_mint_event",p.FtBurnEvent="ft_burn_event",p))(Ct||{});function ae(t,e){return t.filter(n=>n.type===e)}function le(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,a=`${i}.${o.name}`,c=o.contract(i,o.name);n[r]={identifier:a,contract:c}}return n}import{addressToString as J,ClarityType as s,uintCV as mt,contractPrincipalCV as gt,intCV as xt,stringAsciiCV as bt,stringUtf8CV as At,noneCV as ht,someCV as vt,tupleCV as Et,listCV as kt,hexToCV as Ot,bufferCV as wt}from"micro-stacks/clarity";import{parseToCV as K}from"micro-stacks/transactions";import{bytesToAscii as Nt,bytesToHex as z}from"micro-stacks/common";function h(t){return{isOk:!0,value:t}}function v(t){return{isOk:!1,value:t}}function be(t){return typeof t=="object"&&t!==null&&"isOk"in t}function k(t){if(t.type===s.PrincipalStandard)return J(t.address);if(t.type===s.PrincipalContract)return`${J(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function y(t,e=!1){switch(t.type){case s.BoolTrue:return!0;case s.BoolFalse:return!1;case s.Int:case s.UInt:return t.value;case s.Buffer:return t.buffer;case s.OptionalNone:return null;case s.OptionalSome:return y(t.value);case s.ResponseErr:return e?v(y(t.value)):y(t.value);case s.ResponseOk:return e?h(y(t.value)):y(t.value);case s.PrincipalStandard:case s.PrincipalContract:return k(t);case s.List:return t.list.map(r=>y(r));case s.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=C(o);return g(f({},r),{[a]:y(i)})},{});case s.StringASCII:return t.data;case s.StringUTF8:return t.data}}function Ae(t,e=!1){return y(Ot(t),e)}function L(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}var he=t=>typeof t=="string",O=t=>t.buffer!==void 0,w=t=>t["string-ascii"]!==void 0,N=t=>t["string-utf8"]!==void 0,W=t=>t.response!==void 0,P=t=>t.optional!==void 0,S=t=>t.tuple!==void 0,R=t=>t.list!==void 0;function d(t,e){if(S(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=F(r.name,t),i=t[o];n[r.name]=d(i,r.type)}),Et(n)}else if(R(e)){let r=t.map(o=>d(o,e.list.type));return kt(r)}else{if(P(e))return t===null?ht():vt(d(t,e.optional));if(w(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return bt(t)}else if(N(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return At(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return K(n,e)}else if(e==="uint128"){let n=L(t);return mt(n.toString())}else if(e==="int128"){let n=L(t);return xt(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 gt(n,r)}else if(O(e))return wt(t)}return K(t,e)}function x(t,e="hex"){switch(t.type){case s.BoolTrue:return"true";case s.BoolFalse:return"false";case s.Int:return t.value.toString();case s.UInt:return`u${t.value.toString()}`;case s.Buffer:if(e==="tryAscii"){let n=Nt(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${z(t.buffer)}`;case s.OptionalNone:return"none";case s.OptionalSome:return`(some ${x(t.value,e)})`;case s.ResponseErr:return`(err ${x(t.value,e)})`;case s.ResponseOk:return`(ok ${x(t.value,e)})`;case s.PrincipalStandard:case s.PrincipalContract:return`'${k(t)}`;case s.List:return`(list ${t.list.map(n=>x(n,e)).join(" ")})`;case s.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${x(t.data[n],e)})`).join(" ")})`;case s.StringASCII:return`"${t.data}"`;case s.StringUTF8:return`u"${t.data}"`}}function m(t,e=!1){switch(t.type){case s.BoolTrue:return!0;case s.BoolFalse:return!1;case s.Int:case s.UInt:return`${t.value}`;case s.Buffer:return z(t.buffer);case s.OptionalNone:return null;case s.OptionalSome:return m(t.value);case s.ResponseErr:return e?v(m(t.value)):m(t.value);case s.ResponseOk:return e?h(m(t.value)):m(t.value);case s.PrincipalStandard:case s.PrincipalContract:return k(t);case s.List:return t.list.map(r=>m(r));case s.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=C(o);return g(f({},r),{[a]:m(i)})},{});case s.StringASCII:return t.data;case s.StringUTF8:return t.data}}function q(t,e){return t.args.map(n=>{let r=F(n.name,e),o=e[r];return d(o,n.type)})}function Pt(t,e){return e.map((n,r)=>d(n,t.args[r].type))}function b(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return q(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(o=>{try{F(o.name,n)}catch{r=!1}}),r)return q(t,n)}catch{}return Pt(t,e)}function F(t,e){let n=Object.keys(e).find(r=>{let o=t===r,i=t===j(r);return o||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function H(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function G(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function St(t,e){let n=t.abi.functions.find(o=>C(o.name)===e);if(n)return function(...o){return{functionArgs:b(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:o}};let r=t.abi.maps.find(o=>C(o.name)===e);if(r)return o=>{let i=d(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 Rt={get:St},Ft=t=>new Proxy(t,Rt);import{v2Endpoint as Ut,generateUrl as Dt}from"micro-stacks/api";import{cvToHex as Mt,hexToCV as jt}from"micro-stacks/clarity";import{broadcastRawTransaction as Jt}from"micro-stacks/transactions";function It(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function Z(t){return It(t).filter(I)}function Y(t){if(!I(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 Q(t){if(!I(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 I(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var Ue=["devnet","simnet","testnet","mainnet"];function De(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,o])=>{let i=t.deployments[r][e];return i&&n.push([r,X(o,i)]),!1}),Object.fromEntries(n)}function Me(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=`${e}.${r.contractName}`;return[n,X(r,o)]}))}function _t(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=Object.assign((...i)=>{let a=b(r,i),[c,l]=e.split(".");return{functionArgs:a,contractAddress:c,contractName:l,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,o]}))}function X(t,e){let n=f({},t);return g(f(f({},_t(t.functions,e)),n),{identifier:e})}function je(t,e){let n={};return Z(e.plan.batches).forEach(o=>{let i=Q(o),[a,c]=i.split("."),l=C(c),T=t[l],u=t[l];if(typeof u>"u")throw new Error(`Clarigen error: mismatch for contract '${l}'`);n[l]=u,u.contractFile=Y(o),u.identifier=i,Object.keys(t[l].functions).forEach(p=>{let E=p,st=(...$)=>{let U=T.functions[E];return{functionArgs:b(U,$),contractAddress:a,contractName:u.contractName,function:U,nativeArgs:$}};u[E]=st})}),n}function tt(t,e){let n=d(e,t.key);return{key:e,keyCV:n,map:t}}import{parseReadOnlyResponse as Bt}from"micro-stacks/api";import{cvToHex as Vt}from"micro-stacks/clarity";import{fetchPrivate as $t}from"micro-stacks/common";async function et(t){let{contractName:e,contractAddress:n,functionName:r,functionArgs:o,senderAddress:i=n,tip:a,url:c}=t,l=`${c}/v2/contracts/call-read/${n}/${e}/${encodeURIComponent(r)}`;a&&(l+=`?tip=${a}`);let T=JSON.stringify({sender:i,arguments:o.map(p=>typeof p=="string"?p:Vt(p))}),u=await $t(l,{method:"POST",body:T,headers:{"Content-Type":"application/json"}});if(!u.ok){let p="";try{p=await u.text()}catch{}throw new Error(`Error calling read-only function. Response ${u.status}: ${u.statusText}. Attempted to fetch ${l} and failed with the message: "${p}"`)}return Bt(await u.json())}function rt(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function _(t,e){let n=rt(e),r=await et({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:B(e)});return e.json?m(r):y(r,!0)}async function Kt(t,e){let n=await _(t,e);return H(n)}async function Lt(t,e){let n=await _(t,e);return G(n)}function B(t){return"network"in t?t.network.getCoreApiUrl():t.url}async function sn(t,e,n,r){let o=tt(e,n),i=JSON.stringify(Mt(o.keyCV)),[a,c]=t.split("."),l=Dt(`${Ut(B(r))}/map_entry/${a}/${c}/${o.map.name}`,{proof:0,tip:rt(r)}),u=await(await fetch(l,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),p=jt(u.data);return y(p,!0)}async function an(t,e){let n=`${B(e)}/v2/transactions`,r=await Jt(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 nt=class{constructor(e){typeof e=="string"?this.url=e:this.url=e.getCoreApiUrl()}roOptions(e){return f({url:this.url},e)}ro(e,n){return _(e,this.roOptions(n||{}))}roOk(e,n){return Kt(e,this.roOptions(n||{}))}roErr(e,n){return Lt(e,this.roOptions(n||{}))}};import{createAssetInfo as ot,makeContractFungiblePostCondition as qt,makeContractNonFungiblePostCondition as zt,makeStandardFungiblePostCondition as Wt,makeStandardNonFungiblePostCondition as Ht}from"micro-stacks/transactions";function it(t,e){if(!("identifier"in t))throw new Error("Invalid contract");let[n,r]=t.identifier.split(".");for(let o of t.non_fungible_tokens)if(o.name===e)return ot(n,r,o.name);for(let o of t.fungible_tokens)if(o.name===e)return ot(n,r,o.name);throw new Error(`Invalid asset: "${e}" is not an asset in contract.`)}function mn(t,e,n,r){let[o,i]=e.split("."),[a]=t.non_fungible_tokens,c=it(t,a.name),l=a.type,T=d(r,l);return typeof i>"u"?Ht(o,n,c,T):zt(o,i,n,c,T)}function gn(t,e,n,r){let[o,i]=e.split("."),[a]=t.fungible_tokens,c=it(t,a.name);return typeof i>"u"?Wt(o,n,r,c):qt(o,i,n,r,c)}import{hexToBytes as Gt}from"micro-stacks/common";function V(t,e=""){return t.slice(e.length+2,-1)}function A(t,e){if(S(e)){let n=Qt(t),r={},o=Object.entries(n).reduce((i,[a,c])=>{let l=a.trim();return g(f({},i),{[l]:c.trim()})},{});return e.tuple.forEach(({name:i,type:a})=>{let c=C(i);r[c]=A(o[i],a)}),r}else{if(R(e))return Yt(t).map(r=>A(r,e.list.type));if(P(e))return t==="none"?null:A(V(t,"some"),e.optional);if(w(e))return t.slice(1,-1);if(N(e))return t.slice(2,-1);if(e==="bool")return t==="true";if(e==="uint128")return BigInt(t.slice(1));if(e==="int128")return BigInt(t);if(e==="trait_reference")return t.replace(/^\'/,"");if(e==="principal")return t.replace(/^\'/,"");if(e==="none")return null;if(O(e))return Gt(t.slice(2));if(W(e)){if(t.startsWith("(ok")){let r=V(t,"ok");return h(A(r,e.response.ok))}let n=V(t,"err");return v(A(n,e.response.error))}}throw new Error(`Unable to parse cv string to value: ${t} ${JSON.stringify(e,null,2)}`)}var Zt=new Array(255);for(let t=0;t<=255;++t)Zt[t]=t.toString(16).padStart(2,"0");function Yt(t){if(t.charAt(0)!=="["||t.charAt(t.length-1)!=="]")throw new Error(`Expected (list ..), got ${t.toString()}`);let e=[],n=[],r=1;for(let i=0;i<t.length;i++)t.charAt(i)===","&&e.length==1&&(n.push(t.substring(r,i)),r=i+2),["(","[","{"].includes(t.charAt(i))&&e.push(t.charAt(i)),t.charAt(i)===")"&&e[e.length-1]==="("&&e.pop(),t.charAt(i)==="}"&&e[e.length-1]==="{"&&e.pop(),t.charAt(i)==="]"&&e[e.length-1]==="["&&e.pop();let o=t.substring(r,t.length-1);return o.length>0&&n.push(o),n}function Qt(t){if(t.charAt(0)!=="{"||t.charAt(t.length-1)!=="}")throw new Error(`Expected '(tuple ..)', got ${t.toString()}`);let e=1,n=[],r=[];for(let a=0;a<t.length;a++)t.charAt(a)===","&&n.length==1&&(r.push(t.substring(e,a)),e=a+2),["(","[","{"].includes(t.charAt(a))&&n.push(t.charAt(a)),t.charAt(a)===")"&&n[n.length-1]==="("&&n.pop(),t.charAt(a)==="}"&&n[n.length-1]==="{"&&n.pop(),t.charAt(a)==="]"&&n[n.length-1]==="["&&n.pop();let o=t.substring(e,t.length-1);o.length>0&&r.push(o);let i={};for(let a of r)for(let c=0;c<a.length;c++)if(a.charAt(c)===":"){let l=a.substring(0,c),T=a.substring(c+2,a.length);i[l]=T;break}return i}export{nt as ClarigenClient,Ct as CoreNodeEventType,Ue as DEPLOYMENT_NETWORKS,dt as MAINNET_BURN_ADDRESS,yt as TESTNET_BURN_ADDRESS,ie as bootContractIdentifier,an as broadcast,X as contractFactory,Me as contractsFactory,it as createAssetInfo,m as cvToJSON,x as cvToString,y as cvToValue,je as deploymentFactory,v as err,G as expectErr,H as expectOk,sn as fetchMapGet,ae as filterEvents,F as findJsTupleKey,_t as functionsFactory,B as getApiUrl,re as getContractIdentifier,Tt as getContractNameFromPath,oe as getContractPrincipalCV,Ae as hexToCvValue,O as isClarityAbiBuffer,R as isClarityAbiList,P as isClarityAbiOptional,he as isClarityAbiPrimitive,W as isClarityAbiResponse,w as isClarityAbiStringAscii,N as isClarityAbiStringUtf8,S as isClarityAbiTuple,be as isResponse,le as makeContracts,gn as makeFungiblePostCondition,mn as makeNonFungiblePostCondition,tt as mapFactory,h as ok,d as parseToCV,k as principalToString,De as projectFactory,Ft as pureProxy,A as rawClarityToValue,_ as ro,Lt as roErr,Kt as roOk,C as toCamelCase,j as toKebabCase,Pt as transformArgsArray,b as transformArgsToCV,q as transformObjectArgs};
|
|
1
|
+
var Tt=Object.defineProperty,Ct=Object.defineProperties;var mt=Object.getOwnPropertyDescriptors;var M=Object.getOwnPropertySymbols;var gt=Object.prototype.hasOwnProperty,xt=Object.prototype.propertyIsEnumerable;var j=(t,e,n)=>e in t?Tt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>{for(var n in e||(e={}))gt.call(e,n)&&j(t,n,e[n]);if(M)for(var n of M(e))xt.call(e,n)&&j(t,n,e[n]);return t},T=(t,e)=>Ct(t,mt(e));import{contractPrincipalCV as bt}from"@stacks/transactions";import{hex as J}from"@scure/base";var At="ST000000000000000000002AMW42H",ht="SP000000000000000000002Q6VF78",f=(t,e)=>{let n=typeof t=="string"?t:String(t);if(/^[A-Z_]+$/.test(n))return n;let[o,...i]=n.replace("!","_x").replace("?","_q").split("-"),c=`${e?o[0].toUpperCase():o[0].toLowerCase()}${o.slice(1)}`;return i.forEach(l=>{c+=l[0].toUpperCase()+l.slice(1)}),c};function K(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}function ue(t,e=!0){let n=t.split(".")[1];return e?f(n):n}var Et=t=>{let e=t.split("/"),n=e[e.length-1],[r]=n.split(".");return r},fe=t=>`${t.address}.${t.name}`,ye=t=>{let e=Et(t.contractFile);return bt(t.address,e)};function de(t,e){return`${e?ht:At}.${t}`}function v(t){return J.encode(t)}function L(t){return J.decode(t)}function q(t){let e=Array.from(t);return String.fromCharCode.apply(null,e)}var W=t=>typeof t=="number";var vt=(p=>(p.ContractEvent="contract_event",p.StxTransferEvent="stx_transfer_event",p.StxMintEvent="stx_mint_event",p.StxBurnEvent="stx_burn_event",p.StxLockEvent="stx_lock_event",p.NftTransferEvent="nft_transfer_event",p.NftMintEvent="nft_mint_event",p.NftBurnEvent="nft_burn_event",p.FtTransferEvent="ft_transfer_event",p.FtMintEvent="ft_mint_event",p.FtBurnEvent="ft_burn_event",p))(vt||{});function Ce(t,e){return t.filter(n=>n.type===e)}function ge(t,e={}){let n={};for(let r in t){let o=t[r],i=e.deployerAddress||o.address,a=`${i}.${o.name}`,c=o.contract(i,o.name);n[r]={identifier:a,contract:c}}return n}import{addressToString as z,ClarityType as s,uintCV as kt,contractPrincipalCV as wt,intCV as Ot,stringAsciiCV as Nt,stringUtf8CV as St,noneCV as Pt,someCV as Rt,tupleCV as Ft,listCV as It,hexToCV as _t,bufferCV as Vt,parseToCV as H}from"@stacks/transactions";function h(t){return{isOk:!0,value:t}}function E(t){return{isOk:!1,value:t}}function Oe(t){return typeof t=="object"&&t!==null&&"isOk"in t}function k(t){if(t.type===s.PrincipalStandard)return z(t.address);if(t.type===s.PrincipalContract)return`${z(t.address)}.${t.contractName.content}`;throw new Error(`Unexpected principal data: ${JSON.stringify(t)}`)}function y(t,e=!1){switch(t.type){case s.BoolTrue:return!0;case s.BoolFalse:return!1;case s.Int:case s.UInt:return t.value;case s.Buffer:return t.buffer;case s.OptionalNone:return null;case s.OptionalSome:return y(t.value);case s.ResponseErr:return e?E(y(t.value)):y(t.value);case s.ResponseOk:return e?h(y(t.value)):y(t.value);case s.PrincipalStandard:case s.PrincipalContract:return k(t);case s.List:return t.list.map(r=>y(r));case s.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=f(o);return T(u({},r),{[a]:y(i,e)})},{});case s.StringASCII:return t.data;case s.StringUTF8:return t.data}}function Ne(t,e=!1){return y(_t(t),e)}function G(t){if(!(typeof t=="bigint"||typeof t=="number"||typeof t=="string"))throw new Error("Invalid input type for integer");return BigInt(t)}var Se=t=>typeof t=="string",w=t=>t.buffer!==void 0,O=t=>t["string-ascii"]!==void 0,N=t=>t["string-utf8"]!==void 0,Q=t=>t.response!==void 0,S=t=>t.optional!==void 0,P=t=>t.tuple!==void 0,R=t=>t.list!==void 0,Pe=t=>t==="trait_reference";function d(t,e){if(P(e)){if(typeof t!="object")throw new Error("Invalid tuple input");let n={};return e.tuple.forEach(r=>{let o=F(r.name,t),i=t[o];n[r.name]=d(i,r.type)}),Ft(n)}else if(R(e)){let r=t.map(o=>d(o,e.list.type));return It(r)}else{if(S(e))return t===null?Pt():Rt(d(t,e.optional));if(O(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return Nt(t)}else if(N(e)){if(typeof t!="string")throw new Error("Invalid string-ascii input");return St(t)}else if(e==="bool"){let n=typeof t=="boolean"?t.toString():t;return H(n,e)}else if(e==="uint128"){let n=G(t);return kt(n.toString())}else if(e==="int128"){let n=G(t);return Ot(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 wt(n,r)}else if(w(e))return Vt(t)}return H(t,e)}function x(t,e="hex"){switch(t.type){case s.BoolTrue:return"true";case s.BoolFalse:return"false";case s.Int:return t.value.toString();case s.UInt:return`u${t.value.toString()}`;case s.Buffer:if(e==="tryAscii"){let n=q(t.buffer);if(/[ -~]/.test(n))return JSON.stringify(n)}return`0x${v(t.buffer)}`;case s.OptionalNone:return"none";case s.OptionalSome:return`(some ${x(t.value,e)})`;case s.ResponseErr:return`(err ${x(t.value,e)})`;case s.ResponseOk:return`(ok ${x(t.value,e)})`;case s.PrincipalStandard:case s.PrincipalContract:return`'${k(t)}`;case s.List:return`(list ${t.list.map(n=>x(n,e)).join(" ")})`;case s.Tuple:return`(tuple ${Object.keys(t.data).map(n=>`(${n} ${x(t.data[n],e)})`).join(" ")})`;case s.StringASCII:return`"${t.data}"`;case s.StringUTF8:return`u"${t.data}"`}}function C(t,e=!1){switch(t.type){case s.BoolTrue:return!0;case s.BoolFalse:return!1;case s.Int:case s.UInt:return`${t.value}`;case s.Buffer:return v(t.buffer);case s.OptionalNone:return null;case s.OptionalSome:return C(t.value);case s.ResponseErr:return e?E(C(t.value)):C(t.value);case s.ResponseOk:return e?h(C(t.value)):C(t.value);case s.PrincipalStandard:case s.PrincipalContract:return k(t);case s.List:return t.list.map(r=>C(r));case s.Tuple:return Object.entries(t.data).reduce((r,[o,i])=>{let a=f(o);return T(u({},r),{[a]:C(i)})},{});case s.StringASCII:return t.data;case s.StringUTF8:return t.data}}function Z(t,e){return t.args.map(n=>{let r=F(n.name,e),o=e[r];return d(o,n.type)})}function Bt(t,e){return e.map((n,r)=>d(n,t.args[r].type))}function b(t,e){if(e.length===0)return[];let[n]=e;if(e.length===1&&t.args.length!==1)return Z(t,n);if(typeof n=="object"&&!Array.isArray(n)&&n!==null)try{let r=!0;if(t.args.forEach(o=>{try{F(o.name,n)}catch{r=!1}}),r)return Z(t,n)}catch{}return Bt(t,e)}function F(t,e){let n=Object.keys(e).find(r=>{let o=t===r,i=t===K(r);return o||i});if(!n)throw new Error(`Error encoding JS tuple: ${t} not found in input.`);return n}function Y(t){if(t.isOk)return t.value;throw new Error(`Expected OK, received error: ${String(t.value)}`)}function X(t){if(!t.isOk)return t.value;throw new Error(`Expected Err, received ok: ${String(t.value)}`)}function $t(t,e){let n=t.abi.functions.find(o=>f(o.name)===e);if(n)return function(...o){return{functionArgs:b(n,o),contractAddress:t.contractAddress,contractName:t.contractName,function:n,functionName:n.name,nativeArgs:o}};let r=t.abi.maps.find(o=>f(o.name)===e);if(r)return o=>{let i=d(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 Ut={get:$t},Dt=t=>new Proxy(t,Ut);import{cvToHex as Ht,hexToCV as Gt}from"@stacks/transactions";import{broadcastTransaction as Zt}from"@stacks/transactions";function Mt(t){let e=[];return t.forEach(n=>e.push(...n.transactions)),e}function tt(t){return Mt(t).filter(I)}function et(t){if(!I(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 nt(t){if(!I(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 I(t){return!("contract-call"in t||"btc-transfer"in t||"emulated-contract-call"in t)}var We=["devnet","simnet","testnet","mainnet"];function ze(t,e){let n=[];return Object.entries(t.contracts).forEach(([r,o])=>{let i=t.deployments[r][e];return i&&n.push([r,rt(o,i)]),!1}),Object.fromEntries(n)}function He(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=`${e}.${r.contractName}`;return[n,rt(r,o)]}))}function jt(t,e){return Object.fromEntries(Object.entries(t).map(([n,r])=>{let o=Object.assign((...i)=>{let a=b(r,i),[c,l]=e.split(".");return{functionArgs:a,contractAddress:c,contractName:l,function:r,functionName:r.name,nativeArgs:i}},{abi:r});return[n,o]}))}function rt(t,e){let n=u({},t);return T(u(u({},jt(t.functions,e)),n),{identifier:e})}function Ge(t,e){let n={};return tt(e.plan.batches).forEach(o=>{let i=nt(o),[a,c]=i.split("."),l=f(c),m=t[l],g=t[l];if(typeof g>"u")throw new Error(`Clarigen error: mismatch for contract '${l}'`);n[l]=g,g.contractFile=et(o),g.identifier=i,Object.keys(t[l].functions).forEach(p=>{let $=p,dt=(...U)=>{let D=m.functions[$];return{functionArgs:b(D,U),contractAddress:a,contractName:g.contractName,function:D,nativeArgs:U}};g[$]=dt})}),n}function ot(t,e){let n=d(e,t.key);return{key:e,keyCV:n,map:t}}import{cvToHex as qt,hexToCV as Wt}from"@stacks/transactions";import{SmartContractsApi as Jt,Configuration as Kt,TransactionsApi as Ye}from"@stacks/blockchain-api-client";function it(t){return new Jt(new Kt({basePath:t}))}function st(t){return`${t}/v2`}var at=(t,e)=>{try{let n=new URL(t);return Object.keys(e).forEach(r=>{let o=e[r];if(!!o){if(Array.isArray(o))return o.length===0?void 0:n.searchParams.set(`${r}[]`,Lt(r,o));if(typeof o=="boolean"||W(o))return n.searchParams.set(r,String(o));n.searchParams.set(r,o)}}),n.toString()}catch(n){return console.error("generateUrl"),console.error(n),t}},Lt=(t,e)=>e!=null&&e.length?`${e.map((n,r)=>`${r>0?encodeURIComponent(`${t}[]`):""}=${encodeURIComponent(n)}`).join("&")}`:"";function zt(t){if(t.okay)return Wt(t.result);throw new Error(t.cause)}async function ct(t){let{contractAddress:e,functionArgs:n,senderAddress:r=e,url:o}=t,i=await it(o).callReadOnlyFunction(T(u({},t),{readOnlyFunctionArgs:{sender:r,arguments:n.map(c=>typeof c=="string"?c:qt(c))}}));return zt(i)}import{StacksNetwork as _}from"@stacks/network";function pt(t){if(t.latest!==!1)return t.latest||typeof t.tip>"u"?"latest":t.tip}async function V(t,e){let n=pt(e),r=await ct({contractAddress:t.contractAddress,contractName:t.contractName,functionName:t.functionName,functionArgs:t.functionArgs,tip:n,url:ut(e)});return e.json?C(r):y(r,!0)}async function Qt(t,e){let n=await V(t,e);return Y(n)}async function Yt(t,e){let n=await V(t,e);return X(n)}function ut(t){return t.network?_.fromNameOrNetwork(t.network).coreApiUrl:t.url}async function gn(t,e,n,r){let o=ot(e,n),i=JSON.stringify(Ht(o.keyCV)),[a,c]=t.split("."),l=at(`${st(ut(r))}/map_entry/${a}/${c}/${o.map.name}`,{proof:0,tip:pt(r)}),g=await(await fetch(l,{method:"POST",body:i,headers:{"Content-Type":"application/json",Accept:"application/json"}})).json(),p=Gt(g.data);return y(p,!0)}async function xn(t,e){let n="network"in e?e.network:new _({url:e.url}),r=await Zt(t,n);if(r.error)throw new Error(`Error broadcasting tx: ${r.error} - ${r.reason} - ${JSON.stringify(r.reason_data)}`);return{txId:r.txid,stacksTransaction:t}}var lt=class{url;constructor(e){typeof e=="string"?this.url=e:this.url=_.fromNameOrNetwork(e).coreApiUrl}roOptions(e){return u({url:this.url},e)}ro(e,n){return V(e,this.roOptions(n||{}))}roOk(e,n){return Qt(e,this.roOptions(n||{}))}roErr(e,n){return Yt(e,this.roOptions(n||{}))}};import{createAssetInfo as ft,makeContractFungiblePostCondition as Xt,makeContractNonFungiblePostCondition as te,makeStandardFungiblePostCondition as ee,makeStandardNonFungiblePostCondition as ne}from"@stacks/transactions";function yt(t,e){if(!("identifier"in t))throw new Error("Invalid contract");let[n,r]=t.identifier.split(".");for(let o of t.non_fungible_tokens)if(o.name===e)return ft(n,r,o.name);for(let o of t.fungible_tokens)if(o.name===e)return ft(n,r,o.name);throw new Error(`Invalid asset: "${e}" is not an asset in contract.`)}function Sn(t,e,n,r){let[o,i]=e.split("."),[a]=t.non_fungible_tokens,c=yt(t,a.name),l=a.type,m=d(r,l);return typeof i>"u"?ne(o,n,c,m):te(o,i,n,c,m)}function Pn(t,e,n,r){let[o,i]=e.split("."),[a]=t.fungible_tokens,c=yt(t,a.name);return typeof i>"u"?ee(o,n,r,c):Xt(o,i,n,r,c)}function B(t,e=""){return t.slice(e.length+2,-1)}function A(t,e){if(P(e)){let n=ie(t),r={},o=Object.entries(n).reduce((i,[a,c])=>{let l=a.trim();return T(u({},i),{[l]:c.trim()})},{});return e.tuple.forEach(({name:i,type:a})=>{let c=f(i);r[c]=A(o[i],a)}),r}else{if(R(e))return oe(t).map(r=>A(r,e.list.type));if(S(e))return t==="none"?null:A(B(t,"some"),e.optional);if(O(e))return t.slice(1,-1);if(N(e))return t.slice(2,-1);if(e==="bool")return t==="true";if(e==="uint128")return BigInt(t.slice(1));if(e==="int128")return BigInt(t);if(e==="trait_reference")return t.replace(/^\'/,"");if(e==="principal")return t.replace(/^\'/,"");if(e==="none")return null;if(w(e))return L(t.slice(2));if(Q(e)){if(t.startsWith("(ok")){let r=B(t,"ok");return h(A(r,e.response.ok))}let n=B(t,"err");return E(A(n,e.response.error))}}throw new Error(`Unable to parse cv string to value: ${t} ${JSON.stringify(e,null,2)}`)}var re=new Array(255);for(let t=0;t<=255;++t)re[t]=t.toString(16).padStart(2,"0");function oe(t){if(t.charAt(0)!=="["||t.charAt(t.length-1)!=="]")throw new Error(`Expected (list ..), got ${t.toString()}`);let e=[],n=[],r=1;for(let i=0;i<t.length;i++)t.charAt(i)===","&&e.length==1&&(n.push(t.substring(r,i)),r=i+2),["(","[","{"].includes(t.charAt(i))&&e.push(t.charAt(i)),t.charAt(i)===")"&&e[e.length-1]==="("&&e.pop(),t.charAt(i)==="}"&&e[e.length-1]==="{"&&e.pop(),t.charAt(i)==="]"&&e[e.length-1]==="["&&e.pop();let o=t.substring(r,t.length-1);return o.length>0&&n.push(o),n}function ie(t){if(t.charAt(0)!=="{"||t.charAt(t.length-1)!=="}")throw new Error(`Expected '(tuple ..)', got ${t.toString()}`);let e=1,n=[],r=[];for(let a=0;a<t.length;a++)t.charAt(a)===","&&n.length==1&&(r.push(t.substring(e,a)),e=a+2),["(","[","{"].includes(t.charAt(a))&&n.push(t.charAt(a)),t.charAt(a)===")"&&n[n.length-1]==="("&&n.pop(),t.charAt(a)==="}"&&n[n.length-1]==="{"&&n.pop(),t.charAt(a)==="]"&&n[n.length-1]==="["&&n.pop();let o=t.substring(e,t.length-1);o.length>0&&r.push(o);let i={};for(let a of r)for(let c=0;c<a.length;c++)if(a.charAt(c)===":"){let l=a.substring(0,c),m=a.substring(c+2,a.length);i[l]=m;break}return i}export{lt as ClarigenClient,vt as CoreNodeEventType,We as DEPLOYMENT_NETWORKS,ht as MAINNET_BURN_ADDRESS,At as TESTNET_BURN_ADDRESS,de as bootContractIdentifier,xn as broadcast,q as bytesToAscii,v as bytesToHex,rt as contractFactory,He as contractsFactory,yt as createAssetInfo,C as cvToJSON,x as cvToString,y as cvToValue,Ge as deploymentFactory,E as err,X as expectErr,Y as expectOk,gn as fetchMapGet,Ce as filterEvents,F as findJsTupleKey,jt as functionsFactory,ut as getApiUrl,fe as getContractIdentifier,ue as getContractName,Et as getContractNameFromPath,ye as getContractPrincipalCV,L as hexToBytes,Ne as hexToCvValue,w as isClarityAbiBuffer,R as isClarityAbiList,S as isClarityAbiOptional,Se as isClarityAbiPrimitive,Q as isClarityAbiResponse,O as isClarityAbiStringAscii,N as isClarityAbiStringUtf8,Pe as isClarityAbiTraitReference,P as isClarityAbiTuple,W as isNumber,Oe as isResponse,ge as makeContracts,Pn as makeFungiblePostCondition,Sn as makeNonFungiblePostCondition,ot as mapFactory,h as ok,d as parseToCV,k as principalToString,ze as projectFactory,Dt as pureProxy,A as rawClarityToValue,V as ro,Yt as roErr,Qt as roOk,f as toCamelCase,K as toKebabCase,Bt as transformArgsArray,b as transformArgsToCV,Z as transformObjectArgs};
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "
|
|
2
|
+
"version": "2.0.0",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"types": "./dist/index.d.ts",
|
|
5
5
|
"main": "./dist/index.js",
|
|
@@ -15,19 +15,22 @@
|
|
|
15
15
|
"name": "@clarigen/core",
|
|
16
16
|
"author": "Hank Stoever",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"
|
|
18
|
+
"@scure/base": "^1.1.6",
|
|
19
|
+
"@stacks/blockchain-api-client": "7.10.0",
|
|
20
|
+
"@stacks/common": "^6.13.0",
|
|
21
|
+
"@stacks/network": "^6.13.0",
|
|
22
|
+
"@stacks/stacks-blockchain-api-types": "7.10.0",
|
|
23
|
+
"@stacks/transactions": "6.13.1"
|
|
22
24
|
},
|
|
25
|
+
"devDependencies": {},
|
|
23
26
|
"publishConfig": {
|
|
24
27
|
"access": "public"
|
|
25
28
|
},
|
|
26
29
|
"scripts": {
|
|
27
30
|
"start": "tsup --watch",
|
|
28
31
|
"dev": "tsup --watch",
|
|
29
|
-
"build": "
|
|
30
|
-
"test": "
|
|
32
|
+
"build": "tsup",
|
|
33
|
+
"test": "vitest run",
|
|
31
34
|
"lint": "eslint \"src/**/*.{ts,tsx}\" && prettier --check \"./**/*.{ts,js}\"",
|
|
32
35
|
"typecheck": "tsc --noEmit -p tsconfig-test.json",
|
|
33
36
|
"publish:dev": "pnpm build && yalc publish --push",
|