Skip to content

Commit 90c0a38

Browse files
committed
feat(providers): separate tx body
1 parent c73a8b9 commit 90c0a38

File tree

4 files changed

+11
-38
lines changed

4 files changed

+11
-38
lines changed

apps/klesia/src/methods/mina.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
11
import { gql } from "@urql/core";
2-
import { calculateQuantile } from "bigint-quantile";
32
import { match } from "ts-pattern";
4-
import {
5-
SendDelegationBodySchema,
6-
SendTransactionBodySchema,
7-
SendZkAppBodySchema,
8-
} from "../schema";
3+
import { SendTransactionBodySchema, SendZkAppBodySchema } from "../schema";
94
import { getNodeClient } from "../utils/node";
105

116
export const PRIORITY = {
@@ -113,7 +108,7 @@ const sendTransaction = async ({
113108
})
114109
.with("delegation", async () => {
115110
const { signature, input } =
116-
SendDelegationBodySchema.parse(signedTransaction);
111+
SendTransactionBodySchema.parse(signedTransaction);
117112
const { data } = await client.mutation(
118113
gql`
119114
mutation {

apps/klesia/src/schema.ts

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
1-
import {
2-
PublicKeySchema,
3-
TransportableDelegationPayload,
4-
TransportableTransactionPayload,
5-
} from "@mina-js/utils";
1+
import { PublicKeySchema, TransactionPayload } from "@mina-js/utils";
62
import { z } from "zod";
73
import { SendZkappInput } from "./zkapp";
84

@@ -16,19 +12,14 @@ export const SignatureSchema = z.union([
1612
z.object({ field: z.string(), scalar: z.string() }),
1713
]);
1814
export const SendTransactionBodySchema = z.object({
19-
input: TransportableTransactionPayload,
20-
signature: SignatureSchema,
21-
});
22-
export const SendDelegationBodySchema = z.object({
23-
input: TransportableDelegationPayload,
15+
input: TransactionPayload,
2416
signature: SignatureSchema,
2517
});
2618
export const SendZkAppBodySchema = z.object({
2719
input: SendZkappInput,
2820
});
2921
export const SendableSchema = z.union([
3022
SendTransactionBodySchema,
31-
SendDelegationBodySchema,
3223
SendZkAppBodySchema,
3324
]);
3425
export const SendTransactionSchema = z.tuple([

packages/accounts/src/validation.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { FieldSchema, TransactionPayload } from "@mina-js/utils";
1+
import { FieldSchema, TransactionBody } from "@mina-js/utils";
22
import { z } from "zod";
33

44
export const SignFieldsParamsSchema = z
@@ -21,6 +21,6 @@ export const CreateNullifierParamsSchema = z
2121

2222
export const SignTransactionParamsSchema = z
2323
.object({
24-
transaction: TransactionPayload,
24+
transaction: TransactionBody,
2525
})
2626
.strict();

packages/utils/src/validation.ts

Lines changed: 5 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -37,37 +37,24 @@ export const FeePayerSchema = z
3737
})
3838
.strict();
3939

40-
export const DelegationPayload = z
40+
export const TransactionBody = z
4141
.object({
4242
from: PublicKeySchema,
4343
to: PublicKeySchema,
4444
memo: z.string().optional(),
4545
fee: z.coerce.string(),
4646
nonce: z.coerce.string(),
4747
validUntil: z.coerce.string().optional(),
48+
amount: z.coerce.string().optional(),
4849
})
4950
.strict();
5051

51-
export const TransportableDelegationPayload = z
52+
export const TransactionPayload = z
5253
.object({
53-
from: PublicKeySchema,
54-
to: PublicKeySchema,
55-
memo: z.string().optional(),
56-
fee: z.coerce.string(),
57-
nonce: z.coerce.string(),
58-
validUntil: z.coerce.string().optional(),
54+
transaction: TransactionBody,
5955
})
6056
.strict();
6157

62-
export const TransactionPayload = DelegationPayload.extend({
63-
amount: z.coerce.string(),
64-
}).strict();
65-
66-
export const TransportableTransactionPayload =
67-
TransportableDelegationPayload.extend({
68-
amount: z.coerce.string(),
69-
}).strict();
70-
7158
export const PartiallyFormedTransactionPayload = TransactionPayload.extend({
7259
fee: z.coerce.string().optional(),
7360
nonce: z.coerce.string().optional(),
@@ -125,7 +112,7 @@ export const SignedTransactionSchema = z
125112
.object({
126113
signature: SignatureSchema,
127114
publicKey: PublicKeySchema,
128-
data: TransactionPayload,
115+
data: TransactionBody,
129116
})
130117
.strict();
131118

0 commit comments

Comments
 (0)