@xyo-network/xl1-protocol 2.0.7 → 2.0.9

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.
@@ -1,5 +1,5 @@
1
- import type { Address } from '@xylabs/sdk-js';
1
+ import type { XyoAddress } from '@xyo-network/address';
2
2
  import type { AccountInstance, Payload, Schema } from '@xyo-network/sdk-js';
3
3
  import type { ChainId, SignedHydratedTransactionWithHashMeta, XL1BlockNumber } from '@xyo-network/xl1-protocol-lib';
4
- export declare const buildRandomTransaction: (chain: ChainId, payloads?: Payload[], account?: AccountInstance, nbf?: XL1BlockNumber, exp?: XL1BlockNumber, privatePayloadSchemas?: Schema[], receiverAddress?: Address) => Promise<SignedHydratedTransactionWithHashMeta>;
4
+ export declare const buildRandomTransaction: (chain: ChainId, payloads?: Payload[], account?: AccountInstance, nbf?: XL1BlockNumber, exp?: XL1BlockNumber, privatePayloadSchemas?: Schema[], receiverAddress?: XyoAddress) => Promise<SignedHydratedTransactionWithHashMeta>;
5
5
  //# sourceMappingURL=buildRandomTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildRandomTransaction.d.ts","sourceRoot":"","sources":["../../../src/test/buildRandomTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,KAAK,EACV,eAAe,EAAE,OAAO,EAAE,MAAM,EACjC,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAEV,OAAO,EACP,qCAAqC,EACrC,cAAc,EACf,MAAM,+BAA+B,CAAA;AAMtC,eAAO,MAAM,sBAAsB,GACjC,OAAO,OAAO,EACd,WAAW,OAAO,EAAE,EACpB,UAAU,eAAe,EACzB,MAAK,cAA0C,EAC/C,MAAK,cAAmD,EACxD,wBAAuB,MAAM,EAAO,EACpC,kBAAkB,OAAO,KACxB,OAAO,CAAC,qCAAqC,CAY/C,CAAA"}
1
+ {"version":3,"file":"buildRandomTransaction.d.ts","sourceRoot":"","sources":["../../../src/test/buildRandomTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EACV,eAAe,EAAE,OAAO,EAAE,MAAM,EACjC,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAEV,OAAO,EACP,qCAAqC,EACrC,cAAc,EACf,MAAM,+BAA+B,CAAA;AAMtC,eAAO,MAAM,sBAAsB,GACjC,OAAO,OAAO,EACd,WAAW,OAAO,EAAE,EACpB,UAAU,eAAe,EACzB,MAAK,cAA0C,EAC/C,MAAK,cAAmD,EACxD,wBAAuB,MAAM,EAAO,EACpC,kBAAkB,UAAU,KAC3B,OAAO,CAAC,qCAAqC,CAY/C,CAAA"}
@@ -1,5 +1,5 @@
1
- import type { Address } from '@xylabs/sdk-js';
1
+ import type { XyoAddress } from '@xyo-network/address';
2
2
  import type { AccountInstance, Payload } from '@xyo-network/sdk-js';
3
3
  import type { AllowedBlockPayload, ChainId, SignedHydratedTransactionWithHashMeta, TransactionFeesBigInt, XL1BlockNumber } from '@xyo-network/xl1-protocol-lib';
4
- export declare function buildTransaction(chain: ChainId, onChainPayloads: AllowedBlockPayload[], offChainPayloads: Payload[], signer: AccountInstance | AccountInstance[], nbf: XL1BlockNumber, exp: XL1BlockNumber, from?: Address, fees?: TransactionFeesBigInt): Promise<SignedHydratedTransactionWithHashMeta>;
4
+ export declare function buildTransaction(chain: ChainId, onChainPayloads: AllowedBlockPayload[], offChainPayloads: Payload[], signer: AccountInstance | AccountInstance[], nbf: XL1BlockNumber, exp: XL1BlockNumber, from?: XyoAddress, fees?: TransactionFeesBigInt): Promise<SignedHydratedTransactionWithHashMeta>;
5
5
  //# sourceMappingURL=buildTransaction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildTransaction.d.ts","sourceRoot":"","sources":["../../../src/test/buildTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAInE,OAAO,KAAK,EACV,mBAAmB,EACnB,OAAO,EAGP,qCAAqC,EAGrC,qBAAqB,EACrB,cAAc,EACf,MAAM,+BAA+B,CAAA;AAGtC,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,OAAO,EACd,eAAe,EAAE,mBAAmB,EAAE,EACtC,gBAAgB,EAAE,OAAO,EAAE,EAC3B,MAAM,EAAE,eAAe,GAAG,eAAe,EAAE,EAC3C,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,cAAc,EACnB,IAAI,CAAC,EAAE,OAAO,EACd,IAAI,GAAE,qBAA8C,GACnD,OAAO,CAAC,qCAAqC,CAAC,CAqChD"}
1
+ {"version":3,"file":"buildTransaction.d.ts","sourceRoot":"","sources":["../../../src/test/buildTransaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAInE,OAAO,KAAK,EACV,mBAAmB,EACnB,OAAO,EAGP,qCAAqC,EAGrC,qBAAqB,EACrB,cAAc,EACf,MAAM,+BAA+B,CAAA;AAGtC,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,OAAO,EACd,eAAe,EAAE,mBAAmB,EAAE,EACtC,gBAAgB,EAAE,OAAO,EAAE,EAC3B,MAAM,EAAE,eAAe,GAAG,eAAe,EAAE,EAC3C,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,cAAc,EACnB,IAAI,CAAC,EAAE,UAAU,EACjB,IAAI,GAAE,qBAA8C,GACnD,OAAO,CAAC,qCAAqC,CAAC,CAqChD"}
@@ -1,4 +1,5 @@
1
- import type { Address, JsonObject } from '@xylabs/sdk-js';
1
+ import type { JsonObject } from '@xylabs/sdk-js';
2
+ import type { XyoAddress } from '@xyo-network/address';
2
3
  import type { Transfer } from '@xyo-network/xl1-protocol-lib';
3
- export declare function createTransferPayload(from: Address, transfers: Record<Address, bigint>, context?: JsonObject): Transfer;
4
+ export declare function createTransferPayload(from: XyoAddress, transfers: Record<XyoAddress, bigint>, context?: JsonObject): Transfer;
4
5
  //# sourceMappingURL=createTransferPayload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createTransferPayload.d.ts","sourceRoot":"","sources":["../../../src/test/createTransferPayload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAG7D,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,QAAQ,CAQvH"}
1
+ {"version":3,"file":"createTransferPayload.d.ts","sourceRoot":"","sources":["../../../src/test/createTransferPayload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAG7D,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,QAAQ,CAQ7H"}
@@ -1,10 +1,9 @@
1
1
  // src/test/buildRandomTransaction.ts
2
- import { asAddress as asAddress2 } from "@xylabs/sdk-js";
3
2
  import { Account } from "@xyo-network/sdk-js";
4
3
  import { asXL1BlockNumber, isAllowedBlockPayload } from "@xyo-network/xl1-protocol-lib";
5
4
 
6
5
  // src/test/buildTransaction.ts
7
- import { asAddress, toHex } from "@xylabs/sdk-js";
6
+ import { assertEx, toHex } from "@xylabs/sdk-js";
8
7
  import {
9
8
  asAnyPayload,
10
9
  BoundWitnessBuilder,
@@ -30,7 +29,7 @@ async function buildTransaction(chain, onChainPayloads, offChainPayloads, signer
30
29
  const script = elevatedHashes.map((elevatedHash) => `elevate|${elevatedHash}`);
31
30
  const fields = {
32
31
  ...txBoundWitnessFields,
33
- from: from ?? asAddress(Array.isArray(signer) ? signer.at(0)?.address : signer.address, true)
32
+ from: from ?? (Array.isArray(signer) ? assertEx(signer.at(0)?.address) : signer.address)
34
33
  };
35
34
  if (script.length > 0) {
36
35
  fields.script = script;
@@ -59,7 +58,7 @@ var buildRandomTransaction = async (chain, payloads, account, nbf = asXL1BlockNu
59
58
  const sender = account ?? await Account.random();
60
59
  if (elevatedPayloads.length === 0) {
61
60
  const receiver = receiverAddress ?? (await Account.random()).address;
62
- elevatedPayloads.push(createTransferPayload(asAddress2(sender.address, true), { [receiver]: 1n }));
61
+ elevatedPayloads.push(createTransferPayload(sender.address, { [receiver]: 1n }));
63
62
  }
64
63
  const hydratedTransaction = await buildTransaction(chain, elevatedPayloads, additionalPayloads, sender, nbf, exp);
65
64
  return [hydratedTransaction[0], hydratedTransaction[1].filter((payload) => !privatePayloadSchemas.includes(payload.schema))];
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/test/buildRandomTransaction.ts", "../../../src/test/buildTransaction.ts", "../../../src/test/createTransferPayload.ts"],
4
- "sourcesContent": ["import type { Address } from '@xylabs/sdk-js'\nimport { asAddress } from '@xylabs/sdk-js'\nimport type {\n AccountInstance, Payload, Schema,\n} from '@xyo-network/sdk-js'\nimport { Account } from '@xyo-network/sdk-js'\nimport type {\n AllowedBlockPayload,\n ChainId,\n SignedHydratedTransactionWithHashMeta,\n XL1BlockNumber,\n} from '@xyo-network/xl1-protocol-lib'\nimport { asXL1BlockNumber, isAllowedBlockPayload } from '@xyo-network/xl1-protocol-lib'\n\nimport { buildTransaction } from './buildTransaction.ts'\nimport { createTransferPayload } from './createTransferPayload.ts'\n\nexport const buildRandomTransaction = async (\n chain: ChainId,\n payloads?: Payload[],\n account?: AccountInstance,\n nbf: XL1BlockNumber = asXL1BlockNumber(0, true),\n exp: XL1BlockNumber = asXL1BlockNumber(nbf + 1000, true),\n privatePayloadSchemas: Schema[] = [],\n receiverAddress?: Address,\n): Promise<SignedHydratedTransactionWithHashMeta> => {\n const elevatedPayloads: AllowedBlockPayload[] = (payloads ?? []).filter(isAllowedBlockPayload)\n const additionalPayloads: Payload[] = (payloads ?? []).filter(payload => !isAllowedBlockPayload(payload))\n const sender = account ?? await Account.random()\n\n if (elevatedPayloads.length === 0) {\n const receiver = receiverAddress ?? (await Account.random()).address\n elevatedPayloads.push(createTransferPayload(asAddress(sender.address, true), { [receiver]: 1n }))\n }\n\n const hydratedTransaction = await buildTransaction(chain, elevatedPayloads, additionalPayloads, sender, nbf, exp)\n return [hydratedTransaction[0], hydratedTransaction[1].filter(payload => !privatePayloadSchemas.includes(payload.schema))]\n}\n", "import type { Address } from '@xylabs/sdk-js'\nimport { asAddress, toHex } from '@xylabs/sdk-js'\nimport type { AccountInstance, Payload } from '@xyo-network/sdk-js'\nimport {\n asAnyPayload, BoundWitnessBuilder, PayloadBuilder,\n} from '@xyo-network/sdk-js'\nimport type {\n AllowedBlockPayload,\n ChainId,\n ExecutableFields,\n FromFields,\n SignedHydratedTransactionWithHashMeta,\n TransactionBoundWitness,\n TransactionBoundWitnessFields,\n TransactionFeesBigInt,\n XL1BlockNumber,\n} from '@xyo-network/xl1-protocol-lib'\nimport { defaultTransactionFees } from '@xyo-network/xl1-protocol-lib'\n\nexport async function buildTransaction(\n chain: ChainId,\n onChainPayloads: AllowedBlockPayload[],\n offChainPayloads: Payload[],\n signer: AccountInstance | AccountInstance[],\n nbf: XL1BlockNumber,\n exp: XL1BlockNumber,\n from?: Address,\n fees: TransactionFeesBigInt = defaultTransactionFees,\n): Promise<SignedHydratedTransactionWithHashMeta> {\n if (from === undefined && Array.isArray(signer)) {\n throw new Error('from is required when signer is an array')\n }\n\n const txBoundWitnessFields: Omit<TransactionBoundWitnessFields, 'from'> = {\n chain,\n fees: {\n base: toHex(fees.base),\n gasLimit: toHex(fees.gasLimit),\n gasPrice: toHex(fees.gasPrice),\n priority: toHex(fees.priority),\n },\n nbf,\n exp,\n }\n\n const elevatedHashes = await PayloadBuilder.hashes(onChainPayloads)\n const script = elevatedHashes.map(elevatedHash => `elevate|${elevatedHash}`)\n\n const fields: TransactionBoundWitnessFields & FromFields & Partial<ExecutableFields> = {\n ...txBoundWitnessFields,\n from: from ?? asAddress(Array.isArray(signer) ? signer.at(0)?.address : signer.address, true),\n }\n\n if (script.length > 0) {\n fields.script = script\n }\n\n const [tx, txPayloads] = await new BoundWitnessBuilder<TransactionBoundWitness>()\n .fields(fields)\n .meta({ $signatures: [] })\n .payloads([...onChainPayloads, ...offChainPayloads])\n .signers(Array.isArray(signer) ? signer : [signer])\n .build()\n\n return [await PayloadBuilder.addHashMeta(tx), await PayloadBuilder.addHashMeta(txPayloads.map(p => asAnyPayload(p, true)))]\n}\n", "import type { Address, JsonObject } from '@xylabs/sdk-js'\nimport { toHex } from '@xylabs/sdk-js'\nimport { PayloadBuilder } from '@xyo-network/sdk-js'\nimport type { Transfer } from '@xyo-network/xl1-protocol-lib'\nimport { TransferSchema } from '@xyo-network/xl1-protocol-lib'\n\nexport function createTransferPayload(from: Address, transfers: Record<Address, bigint>, context?: JsonObject): Transfer {\n return new PayloadBuilder<Transfer>({ schema: TransferSchema })\n .fields({\n epoch: Date.now(),\n from,\n transfers: Object.fromEntries(Object.entries(transfers).map(([key, value]) => [key, toHex(value)])),\n context,\n }).build()\n}\n"],
5
- "mappings": "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",
6
- "names": ["asAddress", "toHex", "PayloadBuilder", "asAddress"]
4
+ "sourcesContent": ["import type { XyoAddress } from '@xyo-network/address'\nimport type {\n AccountInstance, Payload, Schema,\n} from '@xyo-network/sdk-js'\nimport { Account } from '@xyo-network/sdk-js'\nimport type {\n AllowedBlockPayload,\n ChainId,\n SignedHydratedTransactionWithHashMeta,\n XL1BlockNumber,\n} from '@xyo-network/xl1-protocol-lib'\nimport { asXL1BlockNumber, isAllowedBlockPayload } from '@xyo-network/xl1-protocol-lib'\n\nimport { buildTransaction } from './buildTransaction.ts'\nimport { createTransferPayload } from './createTransferPayload.ts'\n\nexport const buildRandomTransaction = async (\n chain: ChainId,\n payloads?: Payload[],\n account?: AccountInstance,\n nbf: XL1BlockNumber = asXL1BlockNumber(0, true),\n exp: XL1BlockNumber = asXL1BlockNumber(nbf + 1000, true),\n privatePayloadSchemas: Schema[] = [],\n receiverAddress?: XyoAddress,\n): Promise<SignedHydratedTransactionWithHashMeta> => {\n const elevatedPayloads: AllowedBlockPayload[] = (payloads ?? []).filter(isAllowedBlockPayload)\n const additionalPayloads: Payload[] = (payloads ?? []).filter(payload => !isAllowedBlockPayload(payload))\n const sender = account ?? await Account.random()\n\n if (elevatedPayloads.length === 0) {\n const receiver = receiverAddress ?? (await Account.random()).address\n elevatedPayloads.push(createTransferPayload(sender.address, { [receiver]: 1n }))\n }\n\n const hydratedTransaction = await buildTransaction(chain, elevatedPayloads, additionalPayloads, sender, nbf, exp)\n return [hydratedTransaction[0], hydratedTransaction[1].filter(payload => !privatePayloadSchemas.includes(payload.schema))]\n}\n", "import { assertEx, toHex } from '@xylabs/sdk-js'\nimport type { XyoAddress } from '@xyo-network/address'\nimport type { AccountInstance, Payload } from '@xyo-network/sdk-js'\nimport {\n asAnyPayload, BoundWitnessBuilder, PayloadBuilder,\n} from '@xyo-network/sdk-js'\nimport type {\n AllowedBlockPayload,\n ChainId,\n ExecutableFields,\n FromFields,\n SignedHydratedTransactionWithHashMeta,\n TransactionBoundWitness,\n TransactionBoundWitnessFields,\n TransactionFeesBigInt,\n XL1BlockNumber,\n} from '@xyo-network/xl1-protocol-lib'\nimport { defaultTransactionFees } from '@xyo-network/xl1-protocol-lib'\n\nexport async function buildTransaction(\n chain: ChainId,\n onChainPayloads: AllowedBlockPayload[],\n offChainPayloads: Payload[],\n signer: AccountInstance | AccountInstance[],\n nbf: XL1BlockNumber,\n exp: XL1BlockNumber,\n from?: XyoAddress,\n fees: TransactionFeesBigInt = defaultTransactionFees,\n): Promise<SignedHydratedTransactionWithHashMeta> {\n if (from === undefined && Array.isArray(signer)) {\n throw new Error('from is required when signer is an array')\n }\n\n const txBoundWitnessFields: Omit<TransactionBoundWitnessFields, 'from'> = {\n chain,\n fees: {\n base: toHex(fees.base),\n gasLimit: toHex(fees.gasLimit),\n gasPrice: toHex(fees.gasPrice),\n priority: toHex(fees.priority),\n },\n nbf,\n exp,\n }\n\n const elevatedHashes = await PayloadBuilder.hashes(onChainPayloads)\n const script = elevatedHashes.map(elevatedHash => `elevate|${elevatedHash}`)\n\n const fields: TransactionBoundWitnessFields & FromFields & Partial<ExecutableFields> = {\n ...txBoundWitnessFields,\n from: from ?? (Array.isArray(signer) ? assertEx(signer.at(0)?.address) : signer.address),\n }\n\n if (script.length > 0) {\n fields.script = script\n }\n\n const [tx, txPayloads] = await new BoundWitnessBuilder<TransactionBoundWitness>()\n .fields(fields)\n .meta({ $signatures: [] })\n .payloads([...onChainPayloads, ...offChainPayloads])\n .signers(Array.isArray(signer) ? signer : [signer])\n .build()\n\n return [await PayloadBuilder.addHashMeta(tx), await PayloadBuilder.addHashMeta(txPayloads.map(p => asAnyPayload(p, true)))]\n}\n", "import type { JsonObject } from '@xylabs/sdk-js'\nimport { toHex } from '@xylabs/sdk-js'\nimport type { XyoAddress } from '@xyo-network/address'\nimport { PayloadBuilder } from '@xyo-network/sdk-js'\nimport type { Transfer } from '@xyo-network/xl1-protocol-lib'\nimport { TransferSchema } from '@xyo-network/xl1-protocol-lib'\n\nexport function createTransferPayload(from: XyoAddress, transfers: Record<XyoAddress, bigint>, context?: JsonObject): Transfer {\n return new PayloadBuilder<Transfer>({ schema: TransferSchema })\n .fields({\n epoch: Date.now(),\n from,\n transfers: Object.fromEntries(Object.entries(transfers).map(([key, value]) => [key, toHex(value)])),\n context,\n }).build()\n}\n"],
5
+ "mappings": ";AAIA,SAAS,eAAe;AAOxB,SAAS,kBAAkB,6BAA6B;;;ACXxD,SAAS,UAAU,aAAa;AAGhC;AAAA,EACE;AAAA,EAAc;AAAA,EAAqB;AAAA,OAC9B;AAYP,SAAS,8BAA8B;AAEvC,eAAsB,iBACpB,OACA,iBACA,kBACA,QACA,KACA,KACA,MACA,OAA8B,wBACkB;AAChD,MAAI,SAAS,UAAa,MAAM,QAAQ,MAAM,GAAG;AAC/C,UAAM,IAAI,MAAM,0CAA0C;AAAA,EAC5D;AAEA,QAAM,uBAAoE;AAAA,IACxE;AAAA,IACA,MAAM;AAAA,MACJ,MAAM,MAAM,KAAK,IAAI;AAAA,MACrB,UAAU,MAAM,KAAK,QAAQ;AAAA,MAC7B,UAAU,MAAM,KAAK,QAAQ;AAAA,MAC7B,UAAU,MAAM,KAAK,QAAQ;AAAA,IAC/B;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,iBAAiB,MAAM,eAAe,OAAO,eAAe;AAClE,QAAM,SAAS,eAAe,IAAI,kBAAgB,WAAW,YAAY,EAAE;AAE3E,QAAM,SAAiF;AAAA,IACrF,GAAG;AAAA,IACH,MAAM,SAAS,MAAM,QAAQ,MAAM,IAAI,SAAS,OAAO,GAAG,CAAC,GAAG,OAAO,IAAI,OAAO;AAAA,EAClF;AAEA,MAAI,OAAO,SAAS,GAAG;AACrB,WAAO,SAAS;AAAA,EAClB;AAEA,QAAM,CAAC,IAAI,UAAU,IAAI,MAAM,IAAI,oBAA6C,EAC7E,OAAO,MAAM,EACb,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,EACxB,SAAS,CAAC,GAAG,iBAAiB,GAAG,gBAAgB,CAAC,EAClD,QAAQ,MAAM,QAAQ,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,EACjD,MAAM;AAET,SAAO,CAAC,MAAM,eAAe,YAAY,EAAE,GAAG,MAAM,eAAe,YAAY,WAAW,IAAI,OAAK,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;AAC5H;;;AChEA,SAAS,SAAAA,cAAa;AAEtB,SAAS,kBAAAC,uBAAsB;AAE/B,SAAS,sBAAsB;AAExB,SAAS,sBAAsB,MAAkB,WAAuC,SAAgC;AAC7H,SAAO,IAAIA,gBAAyB,EAAE,QAAQ,eAAe,CAAC,EAC3D,OAAO;AAAA,IACN,OAAO,KAAK,IAAI;AAAA,IAChB;AAAA,IACA,WAAW,OAAO,YAAY,OAAO,QAAQ,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAKD,OAAM,KAAK,CAAC,CAAC,CAAC;AAAA,IAClG;AAAA,EACF,CAAC,EAAE,MAAM;AACb;;;AFCO,IAAM,yBAAyB,OACpC,OACA,UACA,SACA,MAAsB,iBAAiB,GAAG,IAAI,GAC9C,MAAsB,iBAAiB,MAAM,KAAM,IAAI,GACvD,wBAAkC,CAAC,GACnC,oBACmD;AACnD,QAAM,oBAA2C,YAAY,CAAC,GAAG,OAAO,qBAAqB;AAC7F,QAAM,sBAAiC,YAAY,CAAC,GAAG,OAAO,aAAW,CAAC,sBAAsB,OAAO,CAAC;AACxG,QAAM,SAAS,WAAW,MAAM,QAAQ,OAAO;AAE/C,MAAI,iBAAiB,WAAW,GAAG;AACjC,UAAM,WAAW,oBAAoB,MAAM,QAAQ,OAAO,GAAG;AAC7D,qBAAiB,KAAK,sBAAsB,OAAO,SAAS,EAAE,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC;AAAA,EACjF;AAEA,QAAM,sBAAsB,MAAM,iBAAiB,OAAO,kBAAkB,oBAAoB,QAAQ,KAAK,GAAG;AAChH,SAAO,CAAC,oBAAoB,CAAC,GAAG,oBAAoB,CAAC,EAAE,OAAO,aAAW,CAAC,sBAAsB,SAAS,QAAQ,MAAM,CAAC,CAAC;AAC3H;",
6
+ "names": ["toHex", "PayloadBuilder"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/xl1-protocol",
3
- "version": "2.0.7",
3
+ "version": "2.0.9",
4
4
  "description": "XYO Layer One Protocol - All Protocol Packages",
5
5
  "homepage": "https://xylabs.com",
6
6
  "bugs": {
@@ -38,10 +38,10 @@
38
38
  "README.md"
39
39
  ],
40
40
  "dependencies": {
41
- "@xyo-network/xl1-protocol-lib": "~2.0.7",
42
- "@xyo-network/xl1-network-model": "~2.0.7",
43
- "@xyo-network/xl1-schema": "~2.0.7",
44
- "@xyo-network/xl1-validation": "~2.0.7"
41
+ "@xyo-network/xl1-protocol-lib": "~2.0.9",
42
+ "@xyo-network/xl1-schema": "~2.0.9",
43
+ "@xyo-network/xl1-network-model": "~2.0.9",
44
+ "@xyo-network/xl1-validation": "~2.0.9"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@bitauth/libauth": "~3.0.0",
@@ -51,11 +51,12 @@
51
51
  "@opentelemetry/sdk-trace-base": "^2.7.1",
52
52
  "@scure/base": "~2.2.0",
53
53
  "@scure/bip39": "~2.2.0",
54
- "@xylabs/geo": "^6.0.6",
54
+ "@xylabs/geo": "^6.0.7",
55
55
  "@xylabs/sdk-js": "^6.0.6",
56
- "@xylabs/threads": "~6.0.6",
57
- "@xylabs/toolchain": "~8.1.8",
58
- "@xylabs/tsconfig": "~8.1.8",
56
+ "@xylabs/threads": "~6.0.7",
57
+ "@xylabs/toolchain": "~8.1.12",
58
+ "@xylabs/tsconfig": "~8.1.12",
59
+ "@xyo-network/address": "^6.0.7",
59
60
  "@xyo-network/sdk-js": "~6.0.2",
60
61
  "@xyo-network/sdk-protocol-js": "~6.0.7",
61
62
  "ajv": "^8.20.0",
@@ -76,7 +77,7 @@
76
77
  "vitest": "~4.1.8",
77
78
  "webextension-polyfill": "^0.12.0",
78
79
  "zod": "~4.4.3",
79
- "@xyo-network/xl1-protocol-model": "~2.0.7"
80
+ "@xyo-network/xl1-protocol-model": "~2.0.9"
80
81
  },
81
82
  "peerDependencies": {
82
83
  "@bitauth/libauth": "~3.0",
@@ -89,6 +90,7 @@
89
90
  "@xylabs/geo": "^6.0",
90
91
  "@xylabs/sdk-js": "^6.0",
91
92
  "@xylabs/threads": "~6.0",
93
+ "@xyo-network/address": "^6.0",
92
94
  "@xyo-network/sdk-js": "^6.0",
93
95
  "@xyo-network/sdk-protocol-js": "~6.0",
94
96
  "ajv": "^8.20",