create-ponder 0.4.40 → 0.5.0-next.2
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/dist/index.js +1 -1
- package/package.json +1 -1
- package/templates/empty/ponder-env.d.ts +1 -1
- package/templates/etherscan/ponder-env.d.ts +1 -1
- package/templates/feature-blocks/ponder-env.d.ts +1 -1
- package/templates/feature-call-traces/ponder-env.d.ts +1 -1
- package/templates/feature-callTrace/_dot_env.local +5 -0
- package/templates/feature-callTrace/_dot_eslintrc.json +3 -0
- package/templates/feature-callTrace/_dot_gitignore +18 -0
- package/templates/feature-callTrace/package.json +26 -0
- package/templates/feature-callTrace/ponder-env.d.ts +27 -0
- package/templates/feature-callTrace/ponder.config.ts +22 -0
- package/templates/feature-callTrace/ponder.schema.ts +11 -0
- package/templates/feature-callTrace/src/index.ts +33 -0
- package/templates/feature-callTrace/tsconfig.json +26 -0
- package/templates/feature-factory/ponder-env.d.ts +1 -1
- package/templates/feature-filter/ponder-env.d.ts +1 -1
- package/templates/feature-multichain/ponder-env.d.ts +1 -1
- package/templates/feature-proxy/ponder-env.d.ts +1 -1
- package/templates/feature-read-contract/ponder-env.d.ts +1 -1
- package/templates/project-friendtech/ponder-env.d.ts +1 -1
- package/templates/project-uniswap-v3-flash/ponder-env.d.ts +1 -1
- package/templates/reference-erc1155/ponder-env.d.ts +1 -1
- package/templates/reference-erc20/package.json +1 -0
- package/templates/reference-erc20/ponder-env.d.ts +21 -1
- package/templates/reference-erc20/sqlite/ponder.db +0 -0
- package/templates/reference-erc20/sqlite/ponder_cache.db +0 -0
- package/templates/reference-erc20/sqlite/ponder_sync.db +0 -0
- package/templates/reference-erc20/src/api/index.ts +26 -0
- package/templates/reference-erc20/src/indexing/index.ts +70 -0
- package/templates/reference-erc20/src/server/index.ts +20 -0
- package/templates/reference-erc4626/ponder-env.d.ts +1 -1
- package/templates/reference-erc721/ponder-env.d.ts +1 -1
- package/templates/subgraph/ponder-env.d.ts +1 -1
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "ponder-examples-feature-callTrace",
|
|
3
|
+
"private": true,
|
|
4
|
+
"type": "module",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"dev": "ponder dev",
|
|
7
|
+
"start": "ponder start",
|
|
8
|
+
"codegen": "ponder codegen",
|
|
9
|
+
"serve": "ponder serve",
|
|
10
|
+
"lint": "eslint .",
|
|
11
|
+
"typecheck": "tsc"
|
|
12
|
+
},
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"@ponder/core": "workspace:*",
|
|
15
|
+
"viem": "^1.19.9"
|
|
16
|
+
},
|
|
17
|
+
"devDependencies": {
|
|
18
|
+
"@types/node": "^20.10.0",
|
|
19
|
+
"eslint": "^8.54.0",
|
|
20
|
+
"eslint-config-ponder": "workspace:*",
|
|
21
|
+
"typescript": "^5.3.2"
|
|
22
|
+
},
|
|
23
|
+
"engines": {
|
|
24
|
+
"node": ">=18.14"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
|
+
// After upgrading, you may find that changes have been made to this file.
|
|
3
|
+
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
+
// See https://ponder.sh/docs/guides/typescript for more information.
|
|
5
|
+
|
|
6
|
+
declare module "@/generated" {
|
|
7
|
+
import type { Virtual } from "@ponder/core";
|
|
8
|
+
|
|
9
|
+
type config = typeof import("./ponder.config.ts").default;
|
|
10
|
+
type schema = typeof import("./ponder.schema.ts").default;
|
|
11
|
+
|
|
12
|
+
export const ponder: Virtual.Registry<config, schema>;
|
|
13
|
+
|
|
14
|
+
export type EventNames = Virtual.EventNames<config>;
|
|
15
|
+
export type Event<name extends EventNames = EventNames> = Virtual.Event<
|
|
16
|
+
config,
|
|
17
|
+
name
|
|
18
|
+
>;
|
|
19
|
+
export type Context<name extends EventNames = EventNames> = Virtual.Context<
|
|
20
|
+
config,
|
|
21
|
+
schema,
|
|
22
|
+
name
|
|
23
|
+
>;
|
|
24
|
+
export type IndexingFunctionArgs<name extends EventNames = EventNames> =
|
|
25
|
+
Virtual.IndexingFunctionArgs<config, schema, name>;
|
|
26
|
+
export type Schema = Virtual.Schema<schema>;
|
|
27
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createConfig } from "@ponder/core";
|
|
2
|
+
import { http, Abi, multicall3Abi } from "viem";
|
|
3
|
+
import { mainnet } from "viem/chains";
|
|
4
|
+
|
|
5
|
+
export default createConfig({
|
|
6
|
+
networks: {
|
|
7
|
+
mainnet: {
|
|
8
|
+
chainId: 1,
|
|
9
|
+
transport: http(process.env.PONDER_RPC_URL_1),
|
|
10
|
+
},
|
|
11
|
+
},
|
|
12
|
+
contracts: {
|
|
13
|
+
multicall3: {
|
|
14
|
+
network: "mainnet",
|
|
15
|
+
abi: multicall3Abi,
|
|
16
|
+
address: mainnet.contracts.multicall3.address,
|
|
17
|
+
startBlock: 19_800_000,
|
|
18
|
+
includeFunctionCalls: true,
|
|
19
|
+
maxBlockRange: 25,
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ponder } from "@/generated";
|
|
2
|
+
|
|
3
|
+
ponder.on("multicall3.aggregate3()", async ({ event, context }) => {
|
|
4
|
+
await context.db.multicalls.upsert({
|
|
5
|
+
id: event.trace.from,
|
|
6
|
+
create: {
|
|
7
|
+
gasUsed: event.trace.gasUsed,
|
|
8
|
+
bytes: event.args[0].reduce<number>(
|
|
9
|
+
(acc, cur) => acc + Math.ceil((cur.callData.length - 2) / 8),
|
|
10
|
+
0,
|
|
11
|
+
),
|
|
12
|
+
successfulCalls: event.result.filter(({ success }) => success === true)
|
|
13
|
+
.length,
|
|
14
|
+
failedCalls: event.result.filter(({ success }) => success === false)
|
|
15
|
+
.length,
|
|
16
|
+
},
|
|
17
|
+
update: ({ current }) => ({
|
|
18
|
+
gasUsed: current.gasUsed + event.trace.gasUsed,
|
|
19
|
+
bytes:
|
|
20
|
+
current.bytes +
|
|
21
|
+
event.args[0].reduce<number>(
|
|
22
|
+
(acc, cur) => acc + Math.ceil((cur.callData.length - 2) / 8),
|
|
23
|
+
0,
|
|
24
|
+
),
|
|
25
|
+
successfulCalls:
|
|
26
|
+
current.successfulCalls +
|
|
27
|
+
event.result.filter(({ success }) => success === true).length,
|
|
28
|
+
failedCalls:
|
|
29
|
+
current.failedCalls +
|
|
30
|
+
event.result.filter(({ success }) => success === false).length,
|
|
31
|
+
}),
|
|
32
|
+
});
|
|
33
|
+
});
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
// Type checking
|
|
4
|
+
"strict": true,
|
|
5
|
+
"noUncheckedIndexedAccess": true,
|
|
6
|
+
|
|
7
|
+
// Interop constraints
|
|
8
|
+
"verbatimModuleSyntax": false,
|
|
9
|
+
"esModuleInterop": true,
|
|
10
|
+
"isolatedModules": true,
|
|
11
|
+
"allowSyntheticDefaultImports": true,
|
|
12
|
+
"resolveJsonModule": true,
|
|
13
|
+
|
|
14
|
+
// Language and environment
|
|
15
|
+
"moduleResolution": "bundler",
|
|
16
|
+
"module": "ESNext",
|
|
17
|
+
"noEmit": true,
|
|
18
|
+
"lib": ["ES2022"],
|
|
19
|
+
"target": "ES2022",
|
|
20
|
+
|
|
21
|
+
// Skip type checking for node modules
|
|
22
|
+
"skipLibCheck": true
|
|
23
|
+
},
|
|
24
|
+
"include": ["./**/*.ts"],
|
|
25
|
+
"exclude": ["node_modules"]
|
|
26
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -25,3 +25,23 @@ declare module "@/generated" {
|
|
|
25
25
|
Virtual.IndexingFunctionArgs<config, schema, name>;
|
|
26
26
|
export type Schema = Virtual.Schema<schema>;
|
|
27
27
|
}
|
|
28
|
+
|
|
29
|
+
declare module "ponder:db" {
|
|
30
|
+
import type { ConvertToDrizzleTable } from "@ponder/core";
|
|
31
|
+
|
|
32
|
+
type schema = typeof import("./ponder.schema.ts").default;
|
|
33
|
+
|
|
34
|
+
const drizzleTables: {
|
|
35
|
+
[tableName in keyof schema]: ConvertToDrizzleTable<
|
|
36
|
+
tableName,
|
|
37
|
+
schema[tableName]["table"],
|
|
38
|
+
schema
|
|
39
|
+
>;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export = drizzleTables;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
declare module "ponder:db" {
|
|
46
|
+
export * from "@ponder/core/drizzle";
|
|
47
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Allowance, asc, desc, sql } from "ponder:db";
|
|
2
|
+
import { ponder } from "@/generated";
|
|
3
|
+
import { graphql, replaceBigInts } from "@ponder/core";
|
|
4
|
+
|
|
5
|
+
// write file
|
|
6
|
+
ponder.use("/graphql", graphql());
|
|
7
|
+
|
|
8
|
+
ponder.get("/allowance", async (c) => {
|
|
9
|
+
const db = c.get("db");
|
|
10
|
+
|
|
11
|
+
const result = await db
|
|
12
|
+
.select({
|
|
13
|
+
owner: Allowance.ownerId,
|
|
14
|
+
count: sql<number>`cast(count(${Allowance.id}) as int)`,
|
|
15
|
+
balance: sql<number>`cast(sum(${Allowance.amount}) as numeric(78,0))`,
|
|
16
|
+
})
|
|
17
|
+
.from(Allowance)
|
|
18
|
+
.groupBy(Allowance.ownerId)
|
|
19
|
+
.orderBy(desc(sql`count`))
|
|
20
|
+
.limit(2);
|
|
21
|
+
|
|
22
|
+
// Hono JSON doesn't support BigInts
|
|
23
|
+
const safeResult = replaceBigInts(result, (b) => b.toString());
|
|
24
|
+
|
|
25
|
+
return c.json(safeResult);
|
|
26
|
+
});
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { ponder } from "@/generated";
|
|
2
|
+
|
|
3
|
+
ponder.on("ERC20:Transfer", async ({ event, context }) => {
|
|
4
|
+
const { Account, TransferEvent } = context.db;
|
|
5
|
+
|
|
6
|
+
// Create an Account for the sender, or update the balance if it already exists.
|
|
7
|
+
await Account.upsert({
|
|
8
|
+
id: event.args.from,
|
|
9
|
+
create: {
|
|
10
|
+
balance: BigInt(0),
|
|
11
|
+
isOwner: false,
|
|
12
|
+
},
|
|
13
|
+
update: ({ current }) => ({
|
|
14
|
+
balance: current.balance - event.args.amount,
|
|
15
|
+
}),
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
// Create an Account for the recipient, or update the balance if it already exists.
|
|
19
|
+
await Account.upsert({
|
|
20
|
+
id: event.args.to,
|
|
21
|
+
create: {
|
|
22
|
+
balance: event.args.amount,
|
|
23
|
+
isOwner: false,
|
|
24
|
+
},
|
|
25
|
+
update: ({ current }) => ({
|
|
26
|
+
balance: current.balance + event.args.amount,
|
|
27
|
+
}),
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
// Create a TransferEvent.
|
|
31
|
+
await TransferEvent.create({
|
|
32
|
+
id: event.log.id,
|
|
33
|
+
data: {
|
|
34
|
+
fromId: event.args.from,
|
|
35
|
+
toId: event.args.to,
|
|
36
|
+
amount: event.args.amount,
|
|
37
|
+
timestamp: Number(event.block.timestamp),
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
ponder.on("ERC20:Approval", async ({ event, context }) => {
|
|
43
|
+
const { Allowance, ApprovalEvent } = context.db;
|
|
44
|
+
|
|
45
|
+
const allowanceId = `${event.args.owner}-${event.args.spender}`;
|
|
46
|
+
|
|
47
|
+
// Create or update the Allowance.
|
|
48
|
+
await Allowance.upsert({
|
|
49
|
+
id: allowanceId,
|
|
50
|
+
create: {
|
|
51
|
+
ownerId: event.args.owner,
|
|
52
|
+
spenderId: event.args.spender,
|
|
53
|
+
amount: event.args.amount,
|
|
54
|
+
},
|
|
55
|
+
update: {
|
|
56
|
+
amount: event.args.amount,
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
// Create an ApprovalEvent.
|
|
61
|
+
await ApprovalEvent.create({
|
|
62
|
+
id: event.log.id,
|
|
63
|
+
data: {
|
|
64
|
+
ownerId: event.args.owner,
|
|
65
|
+
spenderId: event.args.spender,
|
|
66
|
+
amount: event.args.amount,
|
|
67
|
+
timestamp: Number(event.block.timestamp),
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ponder } from "@/generated";
|
|
2
|
+
import { graphql } from "@ponder/core";
|
|
3
|
+
|
|
4
|
+
ponder.use("/graphql", graphql());
|
|
5
|
+
|
|
6
|
+
ponder.get("/router", async (c) => {
|
|
7
|
+
const db = c.get("db");
|
|
8
|
+
|
|
9
|
+
// await db.query(`UPDATE "Account" SET "isOwner" = 1`);
|
|
10
|
+
|
|
11
|
+
const account = await db.query<{ balance: bigint }>(
|
|
12
|
+
`SELECT * FROM "Account" LIMIT 1`,
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
if (account.rows.length === 0) {
|
|
16
|
+
return c.text("Not Found!");
|
|
17
|
+
} else {
|
|
18
|
+
return c.text(`Balance: ${account.rows[0]!.balance.toString()}`);
|
|
19
|
+
}
|
|
20
|
+
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type { Virtual } from "@ponder/core";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file enables type checking and editor autocomplete for this Ponder project.
|
|
2
2
|
// After upgrading, you may find that changes have been made to this file.
|
|
3
3
|
// If this happens, please commit the changes. Do not manually edit this file.
|
|
4
|
-
// See https://ponder.sh/docs/
|
|
4
|
+
// See https://ponder.sh/docs/getting-started/installation#typescript for more information.
|
|
5
5
|
|
|
6
6
|
declare module "@/generated" {
|
|
7
7
|
import type {
|