tempo.ts 0.7.2 → 0.7.3
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/CHANGELOG.md +6 -0
- package/dist/server/Handler.d.ts.map +1 -1
- package/dist/server/Handler.js +50 -41
- package/dist/server/Handler.js.map +1 -1
- package/package.json +1 -1
- package/src/server/Handler.test.ts +25 -0
- package/src/server/Handler.ts +72 -58
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# tempo.ts
|
|
2
2
|
|
|
3
|
+
## 0.7.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`f0369cd`](https://github.com/tempoxyz/tempo-ts/commit/f0369cd13c6d651c2aff1abe85e7984a60588f0f) Thanks [@jxom](https://github.com/jxom)! - Added error handling to `Handler.feePayer`.
|
|
8
|
+
|
|
3
9
|
## 0.7.2
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Handler.d.ts","sourceRoot":"","sources":["../../src/server/Handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,aAAa,EACnB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,UAAU,EAAe,MAAM,IAAI,CAAA;AAE5C,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAA;AAC7B,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAgB,KAAK,SAAS,EAAE,MAAM,MAAM,CAAA;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAIjD,OAAO,KAAK,KAAK,EAAE,MAAM,SAAS,CAAA;AAElC,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG;IAC7B,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;CACvC,CAAA;AAED,wBAAgB,OAAO,CACrB,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,GAAE,OAAO,CAAC,OAAY,GAC5B,OAAO,CAkBT;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAY,OAAO,GAAG;QACpB,uCAAuC;QACvC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC1B,CAAA;CACF;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,OAAO,GAAE,IAAI,CAAC,OAAY,GAAG,OAAO,CAQxD;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,KAAY,OAAO,GAAG,aAAa,CAAA;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0GG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,WAmHrD;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,OAAO,GAAG;QACpB,8CAA8C;QAC9C,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;QACT,uCAAuC;QACvC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB,kCAAkC;QAClC,EAAE,CAAC,EACC,MAAM,GACN;YACE,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC1B,GACD,SAAS,CAAA;KACd,CAAA;IAED,KAAY,iBAAiB,GAAG;QAC9B,SAAS,EAAE,GAAG,CAAC,GAAG,CAAA;QAClB,EAAE,CAAC,EACC;YACE,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,EAAE,MAAM,CAAA;SACb,GACD,SAAS,CAAA;KACd,CAAA;IAED,KAAY,sBAAsB,GAAG;QACnC,UAAU,EAAE,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;KAC/C,CAAA;IAED,KAAY,sBAAsB,GAAG;QACnC,UAAU,EAAE,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QAC9C,SAAS,EAAE,GAAG,CAAC,GAAG,CAAA;KACnB,CAAA;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4KG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"Handler.d.ts","sourceRoot":"","sources":["../../src/server/Handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,aAAa,EACnB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,UAAU,EAAe,MAAM,IAAI,CAAA;AAE5C,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAA;AAC7B,OAAO,KAAK,KAAK,YAAY,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAgB,KAAK,SAAS,EAAE,MAAM,MAAM,CAAA;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAIjD,OAAO,KAAK,KAAK,EAAE,MAAM,SAAS,CAAA;AAElC,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG;IAC7B,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;CACvC,CAAA;AAED,wBAAgB,OAAO,CACrB,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,GAAE,OAAO,CAAC,OAAY,GAC5B,OAAO,CAkBT;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAY,OAAO,GAAG;QACpB,uCAAuC;QACvC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC1B,CAAA;CACF;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,OAAO,GAAE,IAAI,CAAC,OAAY,GAAG,OAAO,CAQxD;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,KAAY,OAAO,GAAG,aAAa,CAAA;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0GG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,WAmHrD;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAY,OAAO,GAAG;QACpB,8CAA8C;QAC9C,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;QACT,uCAAuC;QACvC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzB,kCAAkC;QAClC,EAAE,CAAC,EACC,MAAM,GACN;YACE,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAC1B,GACD,SAAS,CAAA;KACd,CAAA;IAED,KAAY,iBAAiB,GAAG;QAC9B,SAAS,EAAE,GAAG,CAAC,GAAG,CAAA;QAClB,EAAE,CAAC,EACC;YACE,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,EAAE,MAAM,CAAA;SACb,GACD,SAAS,CAAA;KACd,CAAA;IAED,KAAY,sBAAsB,GAAG;QACnC,UAAU,EAAE,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;KAC/C,CAAA;IAED,KAAY,sBAAsB,GAAG;QACnC,UAAU,EAAE,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;QAC9C,SAAS,EAAE,GAAG,CAAC,GAAG,CAAA;KACnB,CAAA;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4KG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,WAqGjD;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAY,OAAO,GAAG;QACpB,uCAAuC;QACvC,OAAO,EAAE,YAAY,CAAA;QACrB,oDAAoD;QACpD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;QAC7D,mCAAmC;QACnC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC1B,GAAG,KAAK,CACL;QACE,qBAAqB;QACrB,MAAM,EAAE,MAAM,CAAA;KACf,GACD;QACE,oBAAoB;QACpB,KAAK,EAAE,KAAK,CAAA;QACZ,wBAAwB;QACxB,SAAS,EAAE,SAAS,CAAA;KACrB,CACJ,CAAA;CACF"}
|
package/dist/server/Handler.js
CHANGED
|
@@ -410,49 +410,58 @@ export function feePayer(options) {
|
|
|
410
410
|
const router = from();
|
|
411
411
|
router.post(path, async ({ request: req }) => {
|
|
412
412
|
const request = RpcRequest.from((await req.json()));
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
413
|
+
try {
|
|
414
|
+
await onRequest?.(request);
|
|
415
|
+
if (request.method === 'eth_signTransaction') {
|
|
416
|
+
const transactionRequest = formatTransaction(request.params?.[0]);
|
|
417
|
+
const serializedTransaction = await signTransaction(client, {
|
|
418
|
+
...transactionRequest,
|
|
419
|
+
account,
|
|
420
|
+
// @ts-expect-error
|
|
421
|
+
feePayer: account,
|
|
422
|
+
});
|
|
423
|
+
return Response.json(RpcResponse.from({ result: serializedTransaction }, { request }));
|
|
424
|
+
}
|
|
425
|
+
if (request.method === 'eth_signRawTransaction') {
|
|
426
|
+
const serialized = request.params?.[0];
|
|
427
|
+
const transaction = Transaction.deserialize(serialized);
|
|
428
|
+
const serializedTransaction = await signTransaction(client, {
|
|
429
|
+
...transaction,
|
|
430
|
+
account,
|
|
431
|
+
// @ts-expect-error
|
|
432
|
+
feePayer: account,
|
|
433
|
+
});
|
|
434
|
+
return Response.json(RpcResponse.from({ result: serializedTransaction }, { request }));
|
|
435
|
+
}
|
|
436
|
+
if (request.method === 'eth_sendRawTransaction' ||
|
|
437
|
+
request.method === 'eth_sendRawTransactionSync') {
|
|
438
|
+
const serialized = request.params?.[0];
|
|
439
|
+
const transaction = Transaction.deserialize(serialized);
|
|
440
|
+
const serializedTransaction = await signTransaction(client, {
|
|
441
|
+
...transaction,
|
|
442
|
+
account,
|
|
443
|
+
// @ts-expect-error
|
|
444
|
+
feePayer: account,
|
|
445
|
+
});
|
|
446
|
+
const result = await client.request({
|
|
447
|
+
method: request.method,
|
|
448
|
+
params: [serializedTransaction],
|
|
449
|
+
});
|
|
450
|
+
return Response.json(RpcResponse.from({ result }, { request }));
|
|
451
|
+
}
|
|
452
|
+
return Response.json(RpcResponse.from({
|
|
453
|
+
error: new RpcResponse.MethodNotSupportedError({
|
|
454
|
+
message: `Method not supported: ${request.method}`,
|
|
455
|
+
}),
|
|
456
|
+
}, { request }));
|
|
434
457
|
}
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
account,
|
|
442
|
-
// @ts-expect-error
|
|
443
|
-
feePayer: account,
|
|
444
|
-
});
|
|
445
|
-
const result = await client.request({
|
|
446
|
-
method: request.method,
|
|
447
|
-
params: [serializedTransaction],
|
|
448
|
-
});
|
|
449
|
-
return Response.json(RpcResponse.from({ result }, { request }));
|
|
458
|
+
catch (error) {
|
|
459
|
+
return Response.json(RpcResponse.from({
|
|
460
|
+
error: new RpcResponse.InternalError({
|
|
461
|
+
message: error.message,
|
|
462
|
+
}),
|
|
463
|
+
}, { request }));
|
|
450
464
|
}
|
|
451
|
-
return Response.json(RpcResponse.from({
|
|
452
|
-
error: new RpcResponse.MethodNotSupportedError({
|
|
453
|
-
message: `Method not supported: ${request.method}`,
|
|
454
|
-
}),
|
|
455
|
-
}, { request }), { status: 400 });
|
|
456
465
|
});
|
|
457
466
|
return router;
|
|
458
467
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Handler.js","sourceRoot":"","sources":["../../src/server/Handler.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Handler.js","sourceRoot":"","sources":["../../src/server/Handler.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -785,5 +785,30 @@ describe('feePayer', () => {
|
|
|
785
785
|
}
|
|
786
786
|
`)
|
|
787
787
|
})
|
|
788
|
+
|
|
789
|
+
test('behavior: internal error', async () => {
|
|
790
|
+
const response = await fetch(server.url, {
|
|
791
|
+
method: 'POST',
|
|
792
|
+
body: JSON.stringify({
|
|
793
|
+
jsonrpc: '2.0',
|
|
794
|
+
id: 1,
|
|
795
|
+
method: 'eth_signRawTransaction',
|
|
796
|
+
params: ['0xinvalid'],
|
|
797
|
+
}),
|
|
798
|
+
})
|
|
799
|
+
|
|
800
|
+
const data = await response.json()
|
|
801
|
+
expect(data).toMatchInlineSnapshot(`
|
|
802
|
+
{
|
|
803
|
+
"error": {
|
|
804
|
+
"code": -32603,
|
|
805
|
+
"name": "RpcResponse.InternalError",
|
|
806
|
+
"stack": "",
|
|
807
|
+
},
|
|
808
|
+
"id": 1,
|
|
809
|
+
"jsonrpc": "2.0",
|
|
810
|
+
}
|
|
811
|
+
`)
|
|
812
|
+
})
|
|
788
813
|
})
|
|
789
814
|
})
|
package/src/server/Handler.ts
CHANGED
|
@@ -521,72 +521,86 @@ export function feePayer(options: feePayer.Options) {
|
|
|
521
521
|
router.post(path, async ({ request: req }) => {
|
|
522
522
|
const request = RpcRequest.from((await req.json()) as any)
|
|
523
523
|
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
524
|
+
try {
|
|
525
|
+
await onRequest?.(request)
|
|
526
|
+
|
|
527
|
+
if (request.method === 'eth_signTransaction') {
|
|
528
|
+
const transactionRequest = formatTransaction(
|
|
529
|
+
request.params?.[0] as never,
|
|
530
|
+
)
|
|
531
|
+
|
|
532
|
+
const serializedTransaction = await signTransaction(client, {
|
|
533
|
+
...transactionRequest,
|
|
534
|
+
account,
|
|
535
|
+
// @ts-expect-error
|
|
536
|
+
feePayer: account,
|
|
537
|
+
})
|
|
538
|
+
|
|
539
|
+
return Response.json(
|
|
540
|
+
RpcResponse.from({ result: serializedTransaction }, { request }),
|
|
541
|
+
)
|
|
542
|
+
}
|
|
528
543
|
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
// @ts-expect-error
|
|
533
|
-
feePayer: account,
|
|
534
|
-
})
|
|
544
|
+
if ((request as any).method === 'eth_signRawTransaction') {
|
|
545
|
+
const serialized = request.params?.[0] as `0x76${string}`
|
|
546
|
+
const transaction = Transaction.deserialize(serialized)
|
|
535
547
|
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
548
|
+
const serializedTransaction = await signTransaction(client, {
|
|
549
|
+
...transaction,
|
|
550
|
+
account,
|
|
551
|
+
// @ts-expect-error
|
|
552
|
+
feePayer: account,
|
|
553
|
+
})
|
|
540
554
|
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
555
|
+
return Response.json(
|
|
556
|
+
RpcResponse.from({ result: serializedTransaction }, { request }),
|
|
557
|
+
)
|
|
558
|
+
}
|
|
544
559
|
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
560
|
+
if (
|
|
561
|
+
request.method === 'eth_sendRawTransaction' ||
|
|
562
|
+
request.method === 'eth_sendRawTransactionSync'
|
|
563
|
+
) {
|
|
564
|
+
const serialized = request.params?.[0] as `0x76${string}`
|
|
565
|
+
const transaction = Transaction.deserialize(serialized)
|
|
566
|
+
|
|
567
|
+
const serializedTransaction = await signTransaction(client, {
|
|
568
|
+
...transaction,
|
|
569
|
+
account,
|
|
570
|
+
// @ts-expect-error
|
|
571
|
+
feePayer: account,
|
|
572
|
+
})
|
|
573
|
+
|
|
574
|
+
const result = await client.request({
|
|
575
|
+
method: request.method,
|
|
576
|
+
params: [serializedTransaction],
|
|
577
|
+
})
|
|
578
|
+
|
|
579
|
+
return Response.json(RpcResponse.from({ result }, { request }))
|
|
580
|
+
}
|
|
551
581
|
|
|
552
582
|
return Response.json(
|
|
553
|
-
RpcResponse.from(
|
|
583
|
+
RpcResponse.from(
|
|
584
|
+
{
|
|
585
|
+
error: new RpcResponse.MethodNotSupportedError({
|
|
586
|
+
message: `Method not supported: ${request.method}`,
|
|
587
|
+
}),
|
|
588
|
+
},
|
|
589
|
+
{ request },
|
|
590
|
+
),
|
|
591
|
+
)
|
|
592
|
+
} catch (error) {
|
|
593
|
+
return Response.json(
|
|
594
|
+
RpcResponse.from(
|
|
595
|
+
{
|
|
596
|
+
error: new RpcResponse.InternalError({
|
|
597
|
+
message: (error as Error).message,
|
|
598
|
+
}),
|
|
599
|
+
},
|
|
600
|
+
{ request },
|
|
601
|
+
),
|
|
554
602
|
)
|
|
555
603
|
}
|
|
556
|
-
|
|
557
|
-
if (
|
|
558
|
-
request.method === 'eth_sendRawTransaction' ||
|
|
559
|
-
request.method === 'eth_sendRawTransactionSync'
|
|
560
|
-
) {
|
|
561
|
-
const serialized = request.params?.[0] as `0x76${string}`
|
|
562
|
-
const transaction = Transaction.deserialize(serialized)
|
|
563
|
-
|
|
564
|
-
const serializedTransaction = await signTransaction(client, {
|
|
565
|
-
...transaction,
|
|
566
|
-
account,
|
|
567
|
-
// @ts-expect-error
|
|
568
|
-
feePayer: account,
|
|
569
|
-
})
|
|
570
|
-
|
|
571
|
-
const result = await client.request({
|
|
572
|
-
method: request.method,
|
|
573
|
-
params: [serializedTransaction],
|
|
574
|
-
})
|
|
575
|
-
|
|
576
|
-
return Response.json(RpcResponse.from({ result }, { request }))
|
|
577
|
-
}
|
|
578
|
-
|
|
579
|
-
return Response.json(
|
|
580
|
-
RpcResponse.from(
|
|
581
|
-
{
|
|
582
|
-
error: new RpcResponse.MethodNotSupportedError({
|
|
583
|
-
message: `Method not supported: ${request.method}`,
|
|
584
|
-
}),
|
|
585
|
-
},
|
|
586
|
-
{ request },
|
|
587
|
-
),
|
|
588
|
-
{ status: 400 },
|
|
589
|
-
)
|
|
590
604
|
})
|
|
591
605
|
|
|
592
606
|
return router
|