@xyo-network/xl1-protocol 2.0.6 → 2.0.7
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 +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;
|
|
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,9 +1,10 @@
|
|
|
1
1
|
// src/test/buildRandomTransaction.ts
|
|
2
|
+
import { asAddress as asAddress2 } from "@xylabs/sdk-js";
|
|
2
3
|
import { Account } from "@xyo-network/sdk-js";
|
|
3
4
|
import { asXL1BlockNumber, isAllowedBlockPayload } from "@xyo-network/xl1-protocol-lib";
|
|
4
5
|
|
|
5
6
|
// src/test/buildTransaction.ts
|
|
6
|
-
import {
|
|
7
|
+
import { asAddress, toHex } from "@xylabs/sdk-js";
|
|
7
8
|
import {
|
|
8
9
|
asAnyPayload,
|
|
9
10
|
BoundWitnessBuilder,
|
|
@@ -29,7 +30,7 @@ async function buildTransaction(chain, onChainPayloads, offChainPayloads, signer
|
|
|
29
30
|
const script = elevatedHashes.map((elevatedHash) => `elevate|${elevatedHash}`);
|
|
30
31
|
const fields = {
|
|
31
32
|
...txBoundWitnessFields,
|
|
32
|
-
from: from ?? (Array.isArray(signer) ?
|
|
33
|
+
from: from ?? asAddress(Array.isArray(signer) ? signer.at(0)?.address : signer.address, true)
|
|
33
34
|
};
|
|
34
35
|
if (script.length > 0) {
|
|
35
36
|
fields.script = script;
|
|
@@ -58,7 +59,7 @@ var buildRandomTransaction = async (chain, payloads, account, nbf = asXL1BlockNu
|
|
|
58
59
|
const sender = account ?? await Account.random();
|
|
59
60
|
if (elevatedPayloads.length === 0) {
|
|
60
61
|
const receiver = receiverAddress ?? (await Account.random()).address;
|
|
61
|
-
elevatedPayloads.push(createTransferPayload(sender.address, { [receiver]: 1n }));
|
|
62
|
+
elevatedPayloads.push(createTransferPayload(asAddress2(sender.address, true), { [receiver]: 1n }));
|
|
62
63
|
}
|
|
63
64
|
const hydratedTransaction = await buildTransaction(chain, elevatedPayloads, additionalPayloads, sender, nbf, exp);
|
|
64
65
|
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 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(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 type { Address } from '@xylabs/sdk-js'\nimport {
|
|
5
|
-
"mappings": ";
|
|
6
|
-
"names": ["toHex", "PayloadBuilder"]
|
|
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"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/xl1-protocol",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.7",
|
|
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-
|
|
42
|
-
"@xyo-network/xl1-
|
|
43
|
-
"@xyo-network/xl1-
|
|
44
|
-
"@xyo-network/xl1-
|
|
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"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@bitauth/libauth": "~3.0.0",
|
|
@@ -51,35 +51,32 @@
|
|
|
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.
|
|
55
|
-
"@xylabs/sdk-js": "^6.0.
|
|
56
|
-
"@xylabs/threads": "~6.0.
|
|
57
|
-
"@xylabs/toolchain": "~8.1.
|
|
58
|
-
"@xylabs/tsconfig": "~8.1.
|
|
59
|
-
"@xyo-network/sdk-js": "~6.0.
|
|
60
|
-
"@xyo-network/sdk-protocol-js": "~6.0.
|
|
54
|
+
"@xylabs/geo": "^6.0.6",
|
|
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",
|
|
59
|
+
"@xyo-network/sdk-js": "~6.0.2",
|
|
60
|
+
"@xyo-network/sdk-protocol-js": "~6.0.7",
|
|
61
61
|
"ajv": "^8.20.0",
|
|
62
62
|
"async-mutex": "^0.5.0",
|
|
63
63
|
"bn.js": "^5.2.3",
|
|
64
64
|
"buffer": "^6.0.3",
|
|
65
65
|
"debug": "~4.4.3",
|
|
66
66
|
"dotenv": "~17.4.2",
|
|
67
|
-
"eslint": "^10.4.
|
|
67
|
+
"eslint": "^10.4.1",
|
|
68
68
|
"ethers": "^6.16.0",
|
|
69
69
|
"hash-wasm": "~4.12.0",
|
|
70
70
|
"idb": "^8.0.3",
|
|
71
71
|
"lru-cache": "^11.5.1",
|
|
72
|
-
"mapbox-gl": "^3.24.0",
|
|
73
72
|
"observable-fns": "~0.6.1",
|
|
74
73
|
"pako": "^2.1.0",
|
|
75
|
-
"store2": "~2.14.4",
|
|
76
74
|
"typescript": "~6.0.3",
|
|
77
|
-
"vite": "^8.0.
|
|
78
|
-
"vitest": "~4.1.
|
|
79
|
-
"wasm-feature-detect": "~1.8.0",
|
|
75
|
+
"vite": "^8.0.16",
|
|
76
|
+
"vitest": "~4.1.8",
|
|
80
77
|
"webextension-polyfill": "^0.12.0",
|
|
81
78
|
"zod": "~4.4.3",
|
|
82
|
-
"@xyo-network/xl1-protocol-model": "~2.0.
|
|
79
|
+
"@xyo-network/xl1-protocol-model": "~2.0.7"
|
|
83
80
|
},
|
|
84
81
|
"peerDependencies": {
|
|
85
82
|
"@bitauth/libauth": "~3.0",
|
|
@@ -103,11 +100,8 @@
|
|
|
103
100
|
"hash-wasm": "~4.12",
|
|
104
101
|
"idb": "^8.0",
|
|
105
102
|
"lru-cache": "^11.3",
|
|
106
|
-
"mapbox-gl": "^3.23",
|
|
107
103
|
"observable-fns": "~0.6",
|
|
108
104
|
"pako": "^2.1",
|
|
109
|
-
"store2": "~2.14",
|
|
110
|
-
"wasm-feature-detect": "~1.8",
|
|
111
105
|
"webextension-polyfill": "^0.12",
|
|
112
106
|
"zod": "~4.4"
|
|
113
107
|
},
|