diff --git a/apps/events/package.json b/apps/events/package.json index c9bb2480..0334aa5c 100644 --- a/apps/events/package.json +++ b/apps/events/package.json @@ -5,7 +5,7 @@ "type": "module", "scripts": { "dev": "vite --force", - "build": "echo 'TODO'", + "build": "tsc -b && vite build", "lint": "pnpm biome lint src/*", "lint:fix": "pnpm biome lint --write src/*", "format": "pnpm biome format src/*", diff --git a/apps/events/src/components/add-user.tsx b/apps/events/src/components/add-user.tsx index 1d47b8d9..7d45f82b 100644 --- a/apps/events/src/components/add-user.tsx +++ b/apps/events/src/components/add-user.tsx @@ -15,6 +15,9 @@ export const AddUser: React.FC = () => { name: newUserName, age: 30, email: 'example@example.com', + badge: { + name: 'Badge', + }, }); setNewUserName(''); }} diff --git a/apps/events/src/routes/login.lazy.tsx b/apps/events/src/routes/login.lazy.tsx index 5a1f478c..045e61ae 100644 --- a/apps/events/src/routes/login.lazy.tsx +++ b/apps/events/src/routes/login.lazy.tsx @@ -10,10 +10,10 @@ const Login = () => { const connectWallet = async () => { let newSigner = null; - let provider; + // biome-ignore lint/suspicious/noExplicitAny: can be improved + let provider: any; try { - // @ts-expect-error ethereum is defined in the browser if (window.ethereum == null) { // If MetaMask is not installed, we use the default provider, // which is backed by a variety of third-party services (such @@ -25,7 +25,6 @@ const Login = () => { // Connect to the MetaMask EIP-1193 object. This is a standard // protocol that allows Ethers access to make all read-only // requests through MetaMask. - // @ts-expect-error ethereum is defined in the browser provider = new ethers.BrowserProvider(window.ethereum); // It also provides an opportunity to request access to write @@ -46,7 +45,6 @@ const Login = () => { async function runEffect() { const storedSignerAddress = localStorage.getItem('signerAddress'); if (storedSignerAddress) { - // @ts-expect-error ethereum is defined in the browser const provider = new ethers.BrowserProvider(window.ethereum); const newSigner = await provider.getSigner(); setSigner(newSigner); @@ -89,6 +87,7 @@ function XmtpLogin({ signer }: { signer: Signer }) { redirect({ to: '/space/$spaceId', params: { spaceId: 'abc' } }); }; + // biome-ignore lint/correctness/useExhaustiveDependencies: only should run once useEffect(() => { void initXmtpWithKeys(); // eslint-disable-next-line react-hooks/exhaustive-deps diff --git a/apps/events/src/types.ts b/apps/events/src/types.ts new file mode 100644 index 00000000..a1b5ac89 --- /dev/null +++ b/apps/events/src/types.ts @@ -0,0 +1,10 @@ +import type { SpaceEvent, SpaceState } from 'graph-framework'; + +export type SpaceStorageEntry = { + id: string; + events: SpaceEvent[]; + state: SpaceState | undefined; + keys: { id: string; key: string }[]; + updates: Uint8Array[]; + lastUpdateClock: number; +}; diff --git a/apps/events/tsconfig.app.json b/apps/events/tsconfig.app.json index 7225a843..cb995f23 100644 --- a/apps/events/tsconfig.app.json +++ b/apps/events/tsconfig.app.json @@ -1,9 +1,9 @@ { "extends": "../../tsconfig.base.json", "compilerOptions": { - "target": "ES2020", + "target": "ES2021", "useDefineForClassFields": true, - "lib": ["ES2020", "DOM", "DOM.Iterable"], + "lib": ["ES2021", "DOM", "DOM.Iterable"], "module": "ESNext", "skipLibCheck": true, @@ -32,7 +32,19 @@ "paths": { "@/*": ["./src/*"], "graph-framework": ["../../packages/graph-framework/src/index.js"], - "graph-framework/*": ["../../packages/graph-framework/src/*.js"] + "graph-framework/*": ["../../packages/graph-framework/src/*.js"], + "graph-framework-space-events": ["../../packages/graph-framework-space-events/src/index.js"], + "graph-framework-space-events/*": ["../../packages/graph-framework-space-events/src/*.js"], + "graph-framework-messages": ["../../packages/graph-framework-messages/src/index.js"], + "graph-framework-messages/*": ["../../packages/graph-framework-messages/src/*.js"], + "graph-framework-identity": ["../../packages/graph-framework-identity/src/index.js"], + "graph-framework-identity/*": ["../../packages/graph-framework-identity/src/*.js"], + "graph-framework-key": ["../../packages/graph-framework-key/src/index.js"], + "graph-framework-key/*": ["../../packages/graph-framework-key/src/*.js"], + "graph-framework-schema": ["../../packages/graph-framework-schema/src/index.js"], + "graph-framework-schema/*": ["../../packages/graph-framework-schema/src/*.js"], + "graph-framework-utils": ["../../packages/graph-framework-utils/src/index.js"], + "graph-framework-utils/*": ["../../packages/graph-framework-utils/src/*.js"] } }, "include": ["src"] diff --git a/apps/events/tsconfig.json b/apps/events/tsconfig.json index 27a9e899..8fe9f04f 100644 --- a/apps/events/tsconfig.json +++ b/apps/events/tsconfig.json @@ -7,7 +7,19 @@ "paths": { "@/*": ["./src/*"], "graph-framework": ["../../packages/graph-framework/src/index.js"], - "graph-framework/*": ["../../packages/graph-framework/src/*.js"] + "graph-framework/*": ["../../packages/graph-framework/src/*.js"], + "graph-framework-space-events": ["../../packages/graph-framework-space-events/src/index.js"], + "graph-framework-space-events/*": ["../../packages/graph-framework-space-events/src/*.js"], + "graph-framework-messages": ["../../packages/graph-framework-messages/src/index.js"], + "graph-framework-messages/*": ["../../packages/graph-framework-messages/src/*.js"], + "graph-framework-identity": ["../../packages/graph-framework-identity/src/index.js"], + "graph-framework-identity/*": ["../../packages/graph-framework-identity/src/*.js"], + "graph-framework-key": ["../../packages/graph-framework-key/src/index.js"], + "graph-framework-key/*": ["../../packages/graph-framework-key/src/*.js"], + "graph-framework-schema": ["../../packages/graph-framework-schema/src/index.js"], + "graph-framework-schema/*": ["../../packages/graph-framework-schema/src/*.js"], + "graph-framework-utils": ["../../packages/graph-framework-utils/src/index.js"], + "graph-framework-utils/*": ["../../packages/graph-framework-utils/src/*.js"] } } } diff --git a/packages/graph-framework-identity/src/restore-identity.ts b/packages/graph-framework-identity/src/restore-identity.ts index 5d4cbeeb..b01c8989 100644 --- a/packages/graph-framework-identity/src/restore-identity.ts +++ b/packages/graph-framework-identity/src/restore-identity.ts @@ -3,6 +3,7 @@ type Params = { }; export const restoreIdentity = ({ preKey }: Params) => { + console.log('preKey', preKey); return { signaturePublicKey: '', signaturePrivateKey: '', diff --git a/packages/graph-framework-schema/src/context.tsx b/packages/graph-framework-schema/src/context.tsx index 759264b4..07f9bce7 100644 --- a/packages/graph-framework-schema/src/context.tsx +++ b/packages/graph-framework-schema/src/context.tsx @@ -109,7 +109,6 @@ export function createFunctions(schema: T) { (acc, type) => { const typeSchema = schema.types[type]; - // @ts-expect-error for (const [key, prop] of Object.entries(typeSchema)) { if (isRelation(prop)) { // Handle Relation @@ -224,11 +223,8 @@ export function createFunctions(schema: T) { const resultData = { ...data }; for (const entityType of entityTypes) { const typeSchema = schema.types[entityType]; - // @ts-expect-error for (const key of Object.keys(typeSchema)) { - // @ts-expect-error const prop = typeSchema[key]; - // @ts-expect-error if (isRelation(prop)) { const relationProp = prop as Relation; const { types: relatedTypes, cardinality } = relationProp; @@ -360,13 +356,7 @@ export function createFunctions(schema: T) { const visitedEntities = new Set(); for (const entityId in filteredEntities) { const entity = filteredEntities[entityId]; - const resolvedEntity = resolveEntity( - entityId, - entity, - // @ts-expect-error - entity.types, - visitedEntities, - ); + const resolvedEntity = resolveEntity(entityId, entity, entity.types, visitedEntities); filteredEntities[entityId] = resolvedEntity; } @@ -397,7 +387,6 @@ export function createFunctions(schema: T) { const typeSchema = schema.types[entityType]; for (const key in typeSchema) { const prop = typeSchema[key]; - // @ts-expect-error if (isRelation(prop)) { const relationProp = prop as Relation; const { cardinality } = relationProp;