Skip to content

Commit

Permalink
move propsDecoder (#41)
Browse files Browse the repository at this point in the history
* move propsDecoder

* Add Request as type

* Update workers-types

* Fix lint error
  • Loading branch information
makoto committed Apr 26, 2024
1 parent 0eba5cf commit b80d664
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 42 deletions.
21 changes: 2 additions & 19 deletions arb-gateway/src/worker.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { Request as CFWRequest } from '@cloudflare/workers-types';
import { Server } from '@ensdomains/ccip-read-cf-worker';
import type { Router } from '@ensdomains/evm-gateway';
import { propsDecoder, type Router } from '@ensdomains/evm-gateway';
import { InMemoryBlockCache } from './blockCache/InMemoryBlockCache.js';
import { Tracker, type PropsDecoder } from '@ensdomains/server-analytics';
import { Tracker } from '@ensdomains/server-analytics';
interface Env {
L1_PROVIDER_URL: string;
L2_PROVIDER_URL: string;
Expand All @@ -13,23 +13,6 @@ interface Env {

let app: Router;

const propsDecoder: PropsDecoder<CFWRequest> = (request?: CFWRequest) => {
if (!request || !request.url) {
return {};
}
const trackingData = request.url.match(
/\/0x[a-fA-F0-9]{40}\/0x[a-fA-F0-9]{1,}\.json/
);
if (trackingData) {
return {
sender: trackingData[0].slice(1, 42),
calldata: trackingData[0].slice(44).replace('.json', ''),
};
} else {
return {};
}
};

async function fetch(request: CFWRequest, env: Env) {
// Set PROVIDER_URL under .dev.vars locally. Set the key as secret remotely with `wrangler secret put WORKER_PROVIDER_URL`
const {
Expand Down
Binary file modified bun.lockb
Binary file not shown.
2 changes: 1 addition & 1 deletion evm-gateway/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"module": "./_esm/index.js",
"dependencies": {
"@chainlink/ccip-read-server": "^0.2.1",
"@cloudflare/workers-types": "^4.20240117.0",
"@cloudflare/workers-types": "^4.20240423.0",
"@ensdomains/ccip-read-cf-worker": "^0.0.1",
"ethers": "^6.7.1"
},
Expand Down
2 changes: 1 addition & 1 deletion evm-gateway/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
export { EVMGateway, StorageLayout } from './EVMGateway.js';
export { EVMProofHelper, type StateProof } from './EVMProofHelper.js';
export type { IProofService, ProvableBlock } from './IProofService.js';
export type { Router } from './utils.js';
export { propsDecoder, type Router } from './utils.js';
23 changes: 21 additions & 2 deletions evm-gateway/src/utils.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
import { Request as CFWRequest } from '@cloudflare/workers-types';

import { type Request as CFWRequest } from '@cloudflare/workers-types';
import { type PropsDecoder } from '@ensdomains/server-analytics';
export interface Router {
handle: (request: CFWRequest) => Promise<Response>;
}

export const propsDecoder: PropsDecoder<CFWRequest> = (
request?: CFWRequest
) => {
if (!request || !request.url) {
return {};
}
const trackingData = request.url.match(
/\/0x[a-fA-F0-9]{40}\/0x[a-fA-F0-9]{1,}\.json/
);
if (trackingData) {
return {
sender: trackingData[0].slice(1, 42),
calldata: trackingData[0].slice(44).replace('.json', ''),
};
} else {
return {};
}
};
21 changes: 2 additions & 19 deletions op-gateway/src/worker.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Request as CFWRequest } from '@cloudflare/workers-types';
import { Server } from '@ensdomains/ccip-read-cf-worker';
import type { Router } from '@ensdomains/evm-gateway';
import { Tracker, type PropsDecoder } from '@ensdomains/server-analytics';
import { propsDecoder, type Router } from '@ensdomains/evm-gateway';
import { Tracker } from '@ensdomains/server-analytics';

interface Env {
L1_PROVIDER_URL: string;
Expand All @@ -14,23 +14,6 @@ interface Env {

let app: Router;

const propsDecoder: PropsDecoder<CFWRequest> = (request?: CFWRequest) => {
if (!request || !request.url) {
return {};
}
const trackingData = request.url.match(
/\/0x[a-fA-F0-9]{40}\/0x[a-fA-F0-9]{1,}\.json/
);
if (trackingData) {
return {
sender: trackingData[0].slice(1, 42),
calldata: trackingData[0].slice(44).replace('.json', ''),
};
} else {
return {};
}
};

async function fetch(request: CFWRequest, env: Env) {
// Set PROVIDER_URL under .dev.vars locally. Set the key as secret remotely with `wrangler secret put WORKER_PROVIDER_URL`
const {
Expand Down

0 comments on commit b80d664

Please sign in to comment.