@bamzzstudio/loka-contracts 0.1.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 ADDED
@@ -0,0 +1,3 @@
1
+ # @bamzzstudio/loka-contracts
2
+
3
+ Contract ABIs and viem helpers for Loka merchant payments.
@@ -0,0 +1,238 @@
1
+ import { type Address, type Hex, type WalletClient } from "viem";
2
+ export declare const LOKA_PAY_LEDGER_ABI: readonly [{
3
+ readonly type: "constructor";
4
+ readonly inputs: readonly [{
5
+ readonly name: "initialOwner_";
6
+ readonly type: "address";
7
+ readonly internalType: "address";
8
+ }, {
9
+ readonly name: "treasury_";
10
+ readonly type: "address";
11
+ readonly internalType: "address payable";
12
+ }, {
13
+ readonly name: "feeBps_";
14
+ readonly type: "uint256";
15
+ readonly internalType: "uint256";
16
+ }];
17
+ readonly stateMutability: "nonpayable";
18
+ }, {
19
+ readonly type: "function";
20
+ readonly name: "payNative";
21
+ readonly inputs: readonly [{
22
+ readonly name: "invoiceId";
23
+ readonly type: "bytes32";
24
+ readonly internalType: "bytes32";
25
+ }, {
26
+ readonly name: "merchant";
27
+ readonly type: "address";
28
+ readonly internalType: "address payable";
29
+ }, {
30
+ readonly name: "memoHash";
31
+ readonly type: "bytes32";
32
+ readonly internalType: "bytes32";
33
+ }];
34
+ readonly outputs: readonly [{
35
+ readonly name: "receiptId";
36
+ readonly type: "uint256";
37
+ readonly internalType: "uint256";
38
+ }];
39
+ readonly stateMutability: "payable";
40
+ }, {
41
+ readonly type: "function";
42
+ readonly name: "payToken";
43
+ readonly inputs: readonly [{
44
+ readonly name: "invoiceId";
45
+ readonly type: "bytes32";
46
+ readonly internalType: "bytes32";
47
+ }, {
48
+ readonly name: "merchant";
49
+ readonly type: "address";
50
+ readonly internalType: "address";
51
+ }, {
52
+ readonly name: "token";
53
+ readonly type: "address";
54
+ readonly internalType: "address";
55
+ }, {
56
+ readonly name: "amount";
57
+ readonly type: "uint256";
58
+ readonly internalType: "uint256";
59
+ }, {
60
+ readonly name: "memoHash";
61
+ readonly type: "bytes32";
62
+ readonly internalType: "bytes32";
63
+ }];
64
+ readonly outputs: readonly [{
65
+ readonly name: "receiptId";
66
+ readonly type: "uint256";
67
+ readonly internalType: "uint256";
68
+ }];
69
+ readonly stateMutability: "nonpayable";
70
+ }, {
71
+ readonly type: "function";
72
+ readonly name: "feeBps";
73
+ readonly inputs: readonly [];
74
+ readonly outputs: readonly [{
75
+ readonly name: "";
76
+ readonly type: "uint256";
77
+ readonly internalType: "uint256";
78
+ }];
79
+ readonly stateMutability: "view";
80
+ }, {
81
+ readonly type: "function";
82
+ readonly name: "totalPayments";
83
+ readonly inputs: readonly [];
84
+ readonly outputs: readonly [{
85
+ readonly name: "";
86
+ readonly type: "uint256";
87
+ readonly internalType: "uint256";
88
+ }];
89
+ readonly stateMutability: "view";
90
+ }, {
91
+ readonly type: "function";
92
+ readonly name: "invoicePaymentCount";
93
+ readonly inputs: readonly [{
94
+ readonly name: "invoiceId";
95
+ readonly type: "bytes32";
96
+ readonly internalType: "bytes32";
97
+ }];
98
+ readonly outputs: readonly [{
99
+ readonly name: "count";
100
+ readonly type: "uint256";
101
+ readonly internalType: "uint256";
102
+ }];
103
+ readonly stateMutability: "view";
104
+ }, {
105
+ readonly type: "function";
106
+ readonly name: "receipts";
107
+ readonly inputs: readonly [{
108
+ readonly name: "receiptId";
109
+ readonly type: "uint256";
110
+ readonly internalType: "uint256";
111
+ }];
112
+ readonly outputs: readonly [{
113
+ readonly name: "invoiceId";
114
+ readonly type: "bytes32";
115
+ readonly internalType: "bytes32";
116
+ }, {
117
+ readonly name: "payer";
118
+ readonly type: "address";
119
+ readonly internalType: "address";
120
+ }, {
121
+ readonly name: "merchant";
122
+ readonly type: "address";
123
+ readonly internalType: "address";
124
+ }, {
125
+ readonly name: "token";
126
+ readonly type: "address";
127
+ readonly internalType: "address";
128
+ }, {
129
+ readonly name: "amount";
130
+ readonly type: "uint256";
131
+ readonly internalType: "uint256";
132
+ }, {
133
+ readonly name: "fee";
134
+ readonly type: "uint256";
135
+ readonly internalType: "uint256";
136
+ }, {
137
+ readonly name: "memoHash";
138
+ readonly type: "bytes32";
139
+ readonly internalType: "bytes32";
140
+ }, {
141
+ readonly name: "paidAt";
142
+ readonly type: "uint64";
143
+ readonly internalType: "uint64";
144
+ }];
145
+ readonly stateMutability: "view";
146
+ }, {
147
+ readonly type: "function";
148
+ readonly name: "setFeeBps";
149
+ readonly inputs: readonly [{
150
+ readonly name: "newFeeBps";
151
+ readonly type: "uint256";
152
+ readonly internalType: "uint256";
153
+ }];
154
+ readonly outputs: readonly [];
155
+ readonly stateMutability: "nonpayable";
156
+ }, {
157
+ readonly type: "function";
158
+ readonly name: "setTreasury";
159
+ readonly inputs: readonly [{
160
+ readonly name: "newTreasury";
161
+ readonly type: "address";
162
+ readonly internalType: "address payable";
163
+ }];
164
+ readonly outputs: readonly [];
165
+ readonly stateMutability: "nonpayable";
166
+ }, {
167
+ readonly type: "event";
168
+ readonly name: "LokaPayment";
169
+ readonly inputs: readonly [{
170
+ readonly name: "receiptId";
171
+ readonly type: "uint256";
172
+ readonly indexed: true;
173
+ readonly internalType: "uint256";
174
+ }, {
175
+ readonly name: "invoiceId";
176
+ readonly type: "bytes32";
177
+ readonly indexed: true;
178
+ readonly internalType: "bytes32";
179
+ }, {
180
+ readonly name: "merchant";
181
+ readonly type: "address";
182
+ readonly indexed: true;
183
+ readonly internalType: "address";
184
+ }, {
185
+ readonly name: "payer";
186
+ readonly type: "address";
187
+ readonly indexed: false;
188
+ readonly internalType: "address";
189
+ }, {
190
+ readonly name: "token";
191
+ readonly type: "address";
192
+ readonly indexed: false;
193
+ readonly internalType: "address";
194
+ }, {
195
+ readonly name: "amount";
196
+ readonly type: "uint256";
197
+ readonly indexed: false;
198
+ readonly internalType: "uint256";
199
+ }, {
200
+ readonly name: "fee";
201
+ readonly type: "uint256";
202
+ readonly indexed: false;
203
+ readonly internalType: "uint256";
204
+ }, {
205
+ readonly name: "memoHash";
206
+ readonly type: "bytes32";
207
+ readonly indexed: false;
208
+ readonly internalType: "bytes32";
209
+ }];
210
+ readonly anonymous: false;
211
+ }, {
212
+ readonly type: "receive";
213
+ readonly stateMutability: "payable";
214
+ }];
215
+ export declare function approveLokaTokenPayment(input: {
216
+ walletClient: WalletClient;
217
+ tokenAddress: Address;
218
+ spenderAddress: Address;
219
+ amount: bigint;
220
+ }): Promise<Hex>;
221
+ export declare function payLokaToken(input: {
222
+ walletClient: WalletClient;
223
+ contractAddress: Address;
224
+ invoiceId: Hex;
225
+ merchant: Address;
226
+ tokenAddress: Address;
227
+ amount: bigint;
228
+ memoHash: Hex;
229
+ }): Promise<Hex>;
230
+ export declare function payLokaNative(input: {
231
+ walletClient: WalletClient;
232
+ contractAddress: Address;
233
+ invoiceId: Hex;
234
+ merchant: Address;
235
+ amount: bigint;
236
+ memoHash: Hex;
237
+ }): Promise<Hex>;
238
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAE3E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqGtB,CAAC;AAEX,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,GAAG,CAAC,CAWf;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE;IACxC,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,GAAG,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,GAAG,CAAC;CACf,GAAG,OAAO,CAAC,GAAG,CAAC,CAWf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE;IACzC,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,GAAG,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,GAAG,CAAC;CACf,GAAG,OAAO,CAAC,GAAG,CAAC,CAYf"}
package/dist/index.js ADDED
@@ -0,0 +1,138 @@
1
+ import { erc20Abi } from "viem";
2
+ export const LOKA_PAY_LEDGER_ABI = [
3
+ {
4
+ type: "constructor",
5
+ inputs: [
6
+ { name: "initialOwner_", type: "address", internalType: "address" },
7
+ { name: "treasury_", type: "address", internalType: "address payable" },
8
+ { name: "feeBps_", type: "uint256", internalType: "uint256" },
9
+ ],
10
+ stateMutability: "nonpayable",
11
+ },
12
+ {
13
+ type: "function",
14
+ name: "payNative",
15
+ inputs: [
16
+ { name: "invoiceId", type: "bytes32", internalType: "bytes32" },
17
+ { name: "merchant", type: "address", internalType: "address payable" },
18
+ { name: "memoHash", type: "bytes32", internalType: "bytes32" },
19
+ ],
20
+ outputs: [{ name: "receiptId", type: "uint256", internalType: "uint256" }],
21
+ stateMutability: "payable",
22
+ },
23
+ {
24
+ type: "function",
25
+ name: "payToken",
26
+ inputs: [
27
+ { name: "invoiceId", type: "bytes32", internalType: "bytes32" },
28
+ { name: "merchant", type: "address", internalType: "address" },
29
+ { name: "token", type: "address", internalType: "address" },
30
+ { name: "amount", type: "uint256", internalType: "uint256" },
31
+ { name: "memoHash", type: "bytes32", internalType: "bytes32" },
32
+ ],
33
+ outputs: [{ name: "receiptId", type: "uint256", internalType: "uint256" }],
34
+ stateMutability: "nonpayable",
35
+ },
36
+ {
37
+ type: "function",
38
+ name: "feeBps",
39
+ inputs: [],
40
+ outputs: [{ name: "", type: "uint256", internalType: "uint256" }],
41
+ stateMutability: "view",
42
+ },
43
+ {
44
+ type: "function",
45
+ name: "totalPayments",
46
+ inputs: [],
47
+ outputs: [{ name: "", type: "uint256", internalType: "uint256" }],
48
+ stateMutability: "view",
49
+ },
50
+ {
51
+ type: "function",
52
+ name: "invoicePaymentCount",
53
+ inputs: [{ name: "invoiceId", type: "bytes32", internalType: "bytes32" }],
54
+ outputs: [{ name: "count", type: "uint256", internalType: "uint256" }],
55
+ stateMutability: "view",
56
+ },
57
+ {
58
+ type: "function",
59
+ name: "receipts",
60
+ inputs: [{ name: "receiptId", type: "uint256", internalType: "uint256" }],
61
+ outputs: [
62
+ { name: "invoiceId", type: "bytes32", internalType: "bytes32" },
63
+ { name: "payer", type: "address", internalType: "address" },
64
+ { name: "merchant", type: "address", internalType: "address" },
65
+ { name: "token", type: "address", internalType: "address" },
66
+ { name: "amount", type: "uint256", internalType: "uint256" },
67
+ { name: "fee", type: "uint256", internalType: "uint256" },
68
+ { name: "memoHash", type: "bytes32", internalType: "bytes32" },
69
+ { name: "paidAt", type: "uint64", internalType: "uint64" },
70
+ ],
71
+ stateMutability: "view",
72
+ },
73
+ {
74
+ type: "function",
75
+ name: "setFeeBps",
76
+ inputs: [{ name: "newFeeBps", type: "uint256", internalType: "uint256" }],
77
+ outputs: [],
78
+ stateMutability: "nonpayable",
79
+ },
80
+ {
81
+ type: "function",
82
+ name: "setTreasury",
83
+ inputs: [{ name: "newTreasury", type: "address", internalType: "address payable" }],
84
+ outputs: [],
85
+ stateMutability: "nonpayable",
86
+ },
87
+ {
88
+ type: "event",
89
+ name: "LokaPayment",
90
+ inputs: [
91
+ { name: "receiptId", type: "uint256", indexed: true, internalType: "uint256" },
92
+ { name: "invoiceId", type: "bytes32", indexed: true, internalType: "bytes32" },
93
+ { name: "merchant", type: "address", indexed: true, internalType: "address" },
94
+ { name: "payer", type: "address", indexed: false, internalType: "address" },
95
+ { name: "token", type: "address", indexed: false, internalType: "address" },
96
+ { name: "amount", type: "uint256", indexed: false, internalType: "uint256" },
97
+ { name: "fee", type: "uint256", indexed: false, internalType: "uint256" },
98
+ { name: "memoHash", type: "bytes32", indexed: false, internalType: "bytes32" },
99
+ ],
100
+ anonymous: false,
101
+ },
102
+ { type: "receive", stateMutability: "payable" },
103
+ ];
104
+ export async function approveLokaTokenPayment(input) {
105
+ const [account] = await input.walletClient.getAddresses();
106
+ return input.walletClient.writeContract({
107
+ account,
108
+ chain: input.walletClient.chain,
109
+ address: input.tokenAddress,
110
+ abi: erc20Abi,
111
+ functionName: "approve",
112
+ args: [input.spenderAddress, input.amount],
113
+ });
114
+ }
115
+ export async function payLokaToken(input) {
116
+ const [account] = await input.walletClient.getAddresses();
117
+ return input.walletClient.writeContract({
118
+ account,
119
+ chain: input.walletClient.chain,
120
+ address: input.contractAddress,
121
+ abi: LOKA_PAY_LEDGER_ABI,
122
+ functionName: "payToken",
123
+ args: [input.invoiceId, input.merchant, input.tokenAddress, input.amount, input.memoHash],
124
+ });
125
+ }
126
+ export async function payLokaNative(input) {
127
+ const [account] = await input.walletClient.getAddresses();
128
+ return input.walletClient.writeContract({
129
+ account,
130
+ chain: input.walletClient.chain,
131
+ address: input.contractAddress,
132
+ abi: LOKA_PAY_LEDGER_ABI,
133
+ functionName: "payNative",
134
+ args: [input.invoiceId, input.merchant, input.memoHash],
135
+ value: input.amount,
136
+ });
137
+ }
138
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,21 @@
1
+ {
2
+ "name": "@bamzzstudio/loka-contracts",
3
+ "version": "0.1.0",
4
+ "description": "Contract ABIs and payment helpers for Loka.",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "files": ["dist", "README.md"],
9
+ "license": "MIT",
10
+ "scripts": {
11
+ "build": "tsc -p tsconfig.json",
12
+ "typecheck": "tsc -p tsconfig.json --noEmit"
13
+ },
14
+ "dependencies": {
15
+ "@bamzzstudio/loka-core": "^0.1.0",
16
+ "viem": "^2.48.8"
17
+ },
18
+ "devDependencies": {
19
+ "typescript": "^5.9.3"
20
+ }
21
+ }