Skip to content
This repository was archived by the owner on Feb 8, 2025. It is now read-only.

Commit a9090bb

Browse files
authored
Merge pull request #255 from zallo-labs/Z-294-redesign-home
Z 294 redesign home
2 parents e34db24 + 6699edd commit a9090bb

File tree

287 files changed

+2013
-1935
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

287 files changed

+2013
-1935
lines changed

.env.vault

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ DOTENV_VAULT_DEVELOPMENT="8Pw6oyyKpmYwL/2RzKEeB+HDHwOJJyDqle5lKZxQ/MmUwfgz2XGYPX
1616
DOTENV_VAULT_DEVELOPMENT_VERSION=14
1717

1818
# production
19-
DOTENV_VAULT_PRODUCTION="d8+DiHWNHFVVmzVMF8T78Z+SwnWLwKs9cZk/TuqKdPnxfiyUJGx85BacTsC8F/ZT1CLDIXVortj0noHqg2ty2c0DBG4qz35BQ3LlNLN3pJDb+URP2og0ccQ1BbWq1vKZVcDLaBEtYU4op6IlH4NmlZADWRLyUmK4fSx5zSUP9mh1UzmRmVdQHbK0YQxrBibrTrAchoB/u1lNF0RbistdJwmO/9DNSht/QVITsciX0A8xhI+lInIer7rnPVfPkldIJd/LgOiZ1DX17yQ7WB245sz9pC7dqaIaWgfMmj81yBtYGQ8vfcxJ4i3vIcuKDXS5zHf20Y++AxVYqsaOj0F8k8Ek1Z86DvLDLzAdz534i+Gu4SCb3SdWYfTe4v0IY+yykhImN53T7Hz+MOdFNATGnNMdcX4MNVUILFc17nBj3G4ucTIjMihr/WCFoBVGnQHUMuhBWDdKbsAGYic484xO2b+IifhUJPA7CNgApcbTbnmGhM9me18rSrThwc34wvmPaCrI5M7wRKtVfN1utmB70pX22G58Ip6qjq92QfVHHRU1Jj02CeAS4Cngt9aptrEBDG3ODaYZk0/gvip8snT1t7D3ZRQNihK/ChZHFirwp1p+Pmyxi+/4xkjrF5gVLgTSgjWpRc452OqTLaqsQhLo/M0G7Gn0IwulK7qdO5qGp07Y/CPrxxHXZiqOccF2sVUqXt5l3d7d8yUPD7rVI5n5sblMagFtTdSDpKuQS0rUg5b+aEYpbi8icJvboGiq0Sacf1WIu8+iq+Ox70K4aZJ6DNeFK16ChnYXhoBJiDMfsF7ywTFkjL/lX/P/j3ExRTNz7UmKdCvhhz4gx/jKzzA5C2rPIjfYMXQ7tkna8P/sD/CUVRukmGzkPzEOmF1h84lYfWm3PeMOZtPy8QzjrSwmWO1llqac2yM3fyI0KBOAbcQ4W1SO7vCcbw1/3xRoUZlztT4cQZMfCa8M8m85CBBJ2EGop5t8kaEzCaDsBnRkQYcNjGNLHDFzwcgIX1oLnKcq4Exo1jdPf0XuUkNcd/k6UYqB+t8uinWkDu3WQObM7Ck0zFNlUbwiUY9k/iys13p/6dH56bYL+rNg+bBsfuSkRrBzaH5aF7Z+MgUdjiabmzFvzgq58DY57ylZ4es5uszBer98A67tJ6Ic1L8PPufreRHDkd9s2NVFzrtuwQIc6TO4CydRU+BW20JUe97rw2m4rqnfwstqhrp8z3rMiJQ2AQCtTbR46jajADxhHGMAjEo6YuFs6EceROCorZ/tW+6uVg+nTVM0RXs7nESMUVynoCSXHb9wXpAKsdNfzQrO7uVjsBeOTBiIXzE5/fxNB9NoDbeJl0AVHyi2N3fhtwmNIzy98gSDRkdNUIjt2AgGcgVoZVrX1JkWnM1t2LzG8gNby2xJeVO/NdvEseayKwgckMLAR+EFbyaDjulu22gHfvzcEsHMfbw7aFxdpa5LUDQbfRGdHOBQQU2SsXq3O579sVhG6l4dH2hnP2CuzIjWJSMvP355wontIWOueRYUERKbfM90h/AQGjOY/7XhvkTNLG6Q8fPLRlpiUBpVi6uEk8TUdYR9LgwAKrrGfc/TrhYjGp4khVrP9XAGH9HvHQYTICzy7wNnD9Y2e1ve5wkbGdTQb3Tfi6SHlmwuIRxTVRRJOVuSsW3RZuu7Xr6iyWEkUlgHrcY8qirAl5oV67lWxL6LdSAZZx+hOA8TyvZyJd5F4cVnAU9mJ9epGKsCVL6DlPwwhhTmaFMcVhABhgs2UgrDNq1R/KER+lqeWaGcCGtvy4YBWMKzZ6yJcy7F6uKmdt7UsjkjORr5Rlg4p8J18IzCC5XmwXcACMKdg4FiOfHl0xOTLI2I723Lo3nw1P+7BX7ihwtwLNZu8zIsImboA4+C8naf43jiWudj7uC1GhHRrCFZOs+ara8Trrxxpg1PWxz7mckydF0Sr9yKu7rEpgLoIACc1CwjRWq9WkTTDp0UoIQ0gxNfRAM7YgL4guNiFs04vVAyJ7O9iLmE3LHrO9hzuQ1DBcS/qNXmq1anRpd4bWCBo/Mpa7VFwk7LNU3XPOgM481yNwqbZME22qN/5fTTCDALA+30O3sgBODq7neivG10THI40IFdWlsRR+NDJBhgxr1UfPXOb9fcMIJhcp9z1RgpFNRmmtG9tdboywc27SFdHWUy7sgus5d1j/RDnbcNIgWAYWcMai9c7s/kXSuw83ISDTDqZgFIwJ3HRKlb7rRS1HuHxxwi43Fi8TxxnBgluccHVsAQnln6Jg2W2m50/OgVcENufggjEU0jtb3AhKIuLiqXnw+Uk7Z+4Y16QH2IcE77W/cuRdX/IU8nXv3z4VgR5Wk7GAnDHka4XH31FztwjVPBzJtGmPJNsY9jDIzAw47CK+V6tfwWhmkdc2unmleA/bjGATYYfP98QhQUTGl+e2bGA7AMXnjcfxTh7WqSxyyByJ2Q08Y0vhc88ioJF38LtMeNdsUyMc5yvvIqiC6iT+edX+KSwbOIw+fgEokX3NDkiB6P7XUohpvsrJPtJLZ/2iRuEl7RwEKoDwC1OwXQ5a4jWkxgHwrqPGohhxosDhMH44d+/IR/vaEWQ400nxvBmAaDlF21HE59nSg4e5LCmPzozKNQRNKDlhDrxfrY2ssROMJDIn1jDnYhuoP9dYL/Y9erVaPGMzGw2iLyi70YE5fBAL58zyo/39S1LQUgVlMNpSYLI4T9isqW4UWWRNrN1spk3gNMeYKSWq1wLRL1zSgEhtEfkyuLF8mWR38L7PD+Np6WFHKEmZM00/BnAM2VaKjSQMkX0VBXPVITWJnUEoNNOnQsDlGCmYHd3wIO2+NX3oMVL+hPxrCUCkTHjoVgV77BXdFGVCMEUqEP/2Q8OsVhq9iIXTAb23buJD7eq6paA8YHsDhnqR4RbWdS2bNxu1UvyqcQwCa9ME0MHbWy66mcx3fQ7zLXiVOnHM0Cf5VVsTl0Zj7PIJvurIV/t3BatPW0NEYUR8zL/XTAOvNdrE4kPBDoB81uKnI1I5e7xFiwEbtZqEvkTf2J7GqRbZa3BK3+O6PRJrVYFd+UguejUlmrIfHjTWUVtJwhLLnIAKJQxNcH6raCOLK6z3Nejl26OSfWjjeXP0WDQ4UfwLyjrN6BD1jMf+bi/btmwsuuJ4s0PipoGpesjJC+DLdY3Wk+t9RUlfGq0LVY/2tG91T47ZodwShxjA2d0C/cTE7/5mb+FOF3li0l3Y7Lxf2NmiJLd+eWjv0cZStvNKFQEzD4CXZeMBQD4peEYgL1JgurZxHkBxuJifIY0U4Jm2V2Y/4YrHe8US9rOqcF+eRT1Go2VMGLPz+9qlweUFdkgxKTcoCgBVQLbbakAZ2M7T0G9NRLw63UoE5UqvHvwtzqG91zXBqkQYQJydy+h6KUs8C2gKU5vnFKK9oKQjw5uu1KIN/P/CVxpaCqUVQcYjHRtVV+EhZw8hkjAywN/CTgEBsJ9w4icj7SuMrCJDEOBZPWcmDDMD4dlew7MqINmbNi7F6UaGmwFCohvxgZhzcYOfb3JrUbTwVrNJ98mpRgDVeGd+GWVaKgqgBD5XnAMoNfua0sTCE4mk+HmQ3AFGTv+HGQ09nSpEwczj4x4H3g3VScwFxDDC5AjgTemXPxSzuqVXr2CeUxieKtrBSUCZnwrW0BhxWAf3Vsu4ik/86/0qjDxX2+tl+EVlDz8D1i3rPBxrnrhl1OUwMBn4UVqh07kRJvNnEguqz91TUQSfLKcXmK6cMfo6laJCJD7CWYVS9Jvp37WXUkNqbWnXjRNiEUEZGVxYKr/RLeGor6N/vRRXn9GPj7/40NqVtp4XLYW0+a5Op9Z0ZvS3jE/ZPNRg9uEOacJUy7CN5zD7J3Ee6NmpLIoAeFHtG3fn1HuErZ92IgsztwDt+RMVz+uBKrR86FyQuK5ipz7uiFofA/Kfrj1PiC+hZ5pV+ibKZK3x3D7H3mXJAT173MrTyqU9n+IUdx9XVPFjbeRyFVyhk76HaQfTDamBFKMXyC12EQJsDMGxStZqmi3ArqhyOYLPvLiXKpkzVZwWIG6x8GhtuUXFDEIR6LprNG1KPuq61S9pciKS4Ietrld2mr9lO04WHIE0FQqY+MRpylOYdSDVD8p9vbQ2dBLmZ6zLSEDTz1XTbdoh7fTo4gA+ADmwLt6VRWPQ5QyCN3E4jiHX/PAxVgI7ggPeYCEj/1lkwVMfXVN3gVgkY4ofT8MonHlsRh0MroChq8lZdQCJEgKIpOwmwVXBwY4xhlBgKSR450FqmDgfiDgkLMliH0KfhaKOFyw73KTul3d9bseLI+kNImvaxHFKq1usnbzhnavwgZe/2RGSPBfL65ueU2J9UM7DSVoQqtv83GHbLq/YWJi7XPg50qTE3k4Ux+qaW/JPAOy8YvI2CTW3p84i8eB7NP1VrSwpt2etP4y/E4px3F0x2fYGGdposCUNjdni3bqi10ssy/TcGSNs1BmOxjyeF8krr7A8Q0gNtpaVbvQeuueL9QI/F5FDcFLGbRi3gpy4ViJAsCOXU0XvWAgWtA+c3sSdXSerPX4gvtCnsKOoaFz0ksnAYZuIMXEgGNR6dBB8ULrq6LWPgq8EJZl/74+h+6p6ucYXIh4hU2e18doVWQQNVTOayuvQJno2I8Fy/+OkQCimuf4f6ShmoeF8Jij+6eRSVnSsGTnOGnfFweOuLjZfgejkDAJcwsnLg5xiX0ECFd+WWrzakjIN5CPKGWr7ex+abOzz3ajJT+5QpXgm4Yn6toCeA/GYwk66gMwoX0k6zhusSSbJADR/LS3rF27fkeZ2nIlj1ReaB7G3JW66XUpq6ym7J+wLt0vIitH2Jxv3mojHwHdSxbcc01ejLRGpFLbx/yOglUNegX8eOZtkkPETixahvZddSdokhvTxjJIELTc8X3E3z+VDiqq4RkQYXVUbNwx3qs0/pfTDeYWK0HZ/3n4Ll+gNekRsnAT5V/3KbAz6zcPER0q0dZwGfKGPLv3uU2tLn2+YT2E2ReyzruoYX75ZJ23h+8i4sqxVZFK0odKONIH6Uh+agqtD5BBayH8+dVW/U9YqQ+Cgj4pZvbzg=="
20-
DOTENV_VAULT_PRODUCTION_VERSION=69
19+
DOTENV_VAULT_PRODUCTION="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"
20+
DOTENV_VAULT_PRODUCTION_VERSION=70
2121

2222
#/----------------settings/metadata-----------------/
2323
DOTENV_VAULT="vlt_bc359b28462917c6a6a31b5594a46e59b5d744d88d65497001c01e0fb250bfed"

api/schema.graphql

+3-4
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ type Account implements Labelled & Node {
2525
name: String!
2626
photo: URL
2727
policies: [Policy!]!
28-
proposals: [Proposal!]!
28+
proposals(input: ProposalsInput! = {}): [Proposal!]!
2929
salt: Bytes32!
3030
transactions: [Transaction!]!
3131
transfers(input: TransfersInput! = {}): [Transfer!]!
@@ -519,7 +519,6 @@ input ProposalUpdatedInput {
519519
}
520520

521521
input ProposalsInput {
522-
accounts: [UAddress!]
523522
pending: Boolean
524523
}
525524

@@ -581,7 +580,6 @@ type Query {
581580
node(id: ID!): Node
582581
policy(input: UniquePolicyInput!): Policy
583582
proposal(input: UniqueProposalInput!): Proposal
584-
proposals(input: ProposalsInput! = {}): [Proposal!]!
585583
requestableTokens(input: RequestTokensInput!): [Address!]!
586584
token(address: UAddress!): Token
587585
tokenMetadata(address: UAddress!): TokenMetadata
@@ -857,7 +855,7 @@ type TransferApproval implements Event & Node & TransferDetails & Transferlike {
857855

858856
type TransferApprovalOp implements TransferlikeOp {
859857
amount: Decimal!
860-
spender: Address!
858+
to: Address!
861859
token: Address!
862860
}
863861

@@ -936,6 +934,7 @@ interface Transferlike implements Event & Node & TransferDetails {
936934

937935
interface TransferlikeOp {
938936
amount: Decimal!
937+
to: Address!
939938
token: Address!
940939
}
941940

api/src/app.module.ts

+45-43
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,59 @@
11
import { Module } from '@nestjs/common';
22
import { APP_GUARD, APP_INTERCEPTOR } from '@nestjs/core';
3-
import { ContextModule } from '#/util/context/context.module';
4-
import { ContextInterceptor } from '#/util/context/context.interceptor';
5-
import { HealthModule } from '#//health/health.module';
6-
import { UsersModule } from '#//users/users.module';
7-
import { AccountsModule } from '#//accounts/accounts.module';
8-
import { ApproversModule } from '#//approvers/approvers.module';
9-
import { AuthModule } from '#//auth/auth.module';
10-
import { AuthGuard } from '#//auth/auth.guard';
11-
import { ApolloModule } from './apollo/apollo.module';
12-
import { NetworksModule } from '#//util/networks/networks.module';
13-
import { ContactsModule } from '#//contacts/contacts.module';
14-
import { DatabaseModule } from '#//database/database.module';
15-
import { ContractFunctionsModule } from '#//contract-functions/contract-functions.module';
16-
import { TransactionsModule } from '#//transactions/transactions.module';
17-
import { SystemTxsModule } from '#//system-txs/system-txs.module';
18-
import { FaucetModule } from '#//faucet/faucet.module';
19-
import { ExpoModule } from '#//util/expo/expo.module';
20-
import { PubsubModule } from '#//util/pubsub/pubsub.module';
21-
import { PoliciesModule } from '#//policies/policies.module';
22-
import { ContractsModule } from '#//contracts/contracts.module';
23-
import { TransfersModule } from '#//transfers/transfers.module';
24-
import { EventsModule } from '#//events/events.module';
25-
import { RedisModule } from '#//util/redis/redis.module';
26-
import { PaymastersModule } from '#//paymasters/paymasters.module';
27-
import { SentryModule } from '#//util/sentry/sentry.module';
28-
import { SentryInterceptor } from '#//util/sentry/sentry.interceptor';
29-
import { OperationsModule } from '#//operations/operations.module';
30-
import { SimulationsModule } from '#//simulations/simulations.module';
31-
import { BullModule } from '#//util/bull/bull.module';
32-
import { TokensModule } from '#//tokens/tokens.module';
33-
import { PricesModule } from '#//prices/prices.module';
34-
import { MessagesModule } from '#//messages/messages.module';
35-
import { ProposalsModule } from '#//proposals/proposals.module';
36-
import { BalancesModule } from '#/util/balances/balances.module';
37-
import { NodesModule } from '#//nodes/nodes.module';
383
import { CONFIG } from './config';
4+
import { ContextModule } from '~/core/context/context.module';
5+
import { ContextInterceptor } from '~/core/context/context.interceptor';
6+
import { HealthModule } from '~/feat/health/health.module';
7+
import { UsersModule } from '~/feat/users/users.module';
8+
import { AccountsModule } from '~/feat/accounts/accounts.module';
9+
import { ApproversModule } from '~/feat/approvers/approvers.module';
10+
import { AuthModule } from '~/feat/auth/auth.module';
11+
import { AuthGuard } from '~/feat/auth/auth.guard';
12+
import { ApolloModule } from './core/apollo/apollo.module';
13+
import { NetworksModule } from '~/core/networks/networks.module';
14+
import { ContactsModule } from '~/feat/contacts/contacts.module';
15+
import { DatabaseModule } from '~/core/database/database.module';
16+
import { ContractFunctionsModule } from '~/feat/contract-functions/contract-functions.module';
17+
import { TransactionsModule } from '~/feat/transactions/transactions.module';
18+
import { SystemTxsModule } from '~/feat/system-txs/system-txs.module';
19+
import { FaucetModule } from '~/feat/faucet/faucet.module';
20+
import { ExpoModule } from '~/core/expo/expo.module';
21+
import { PubsubModule } from '~/core/pubsub/pubsub.module';
22+
import { PoliciesModule } from '~/feat/policies/policies.module';
23+
import { ContractsModule } from '~/feat/contracts/contracts.module';
24+
import { TransfersModule } from '~/feat/transfers/transfers.module';
25+
import { EventsModule } from '~/feat/events/events.module';
26+
import { RedisModule } from '~/core/redis/redis.module';
27+
import { PaymastersModule } from '~/feat/paymasters/paymasters.module';
28+
import { SentryModule } from '~/core/sentry/sentry.module';
29+
import { SentryInterceptor } from '~/core/sentry/sentry.interceptor';
30+
import { OperationsModule } from '~/feat/operations/operations.module';
31+
import { SimulationsModule } from '~/feat/simulations/simulations.module';
32+
import { BullModule } from '~/core/bull/bull.module';
33+
import { TokensModule } from '~/feat/tokens/tokens.module';
34+
import { PricesModule } from '~/feat/prices/prices.module';
35+
import { MessagesModule } from '~/feat/messages/messages.module';
36+
import { ProposalsModule } from '~/feat/proposals/proposals.module';
37+
import { BalancesModule } from '~/core/balances/balances.module';
38+
import { NodesModule } from '~/feat/nodes/nodes.module';
39+
import { ActivationsModule } from '~/feat/activations/activations.module';
3940

4041
@Module({
4142
imports: [
42-
// Util
43+
// Core
44+
ApolloModule,
45+
BalancesModule,
46+
BullModule,
4347
ContextModule,
44-
SentryModule.forRoot(),
4548
DatabaseModule,
46-
RedisModule,
47-
BullModule,
48-
ApolloModule,
49-
PubsubModule,
49+
ExpoModule,
5050
NetworksModule,
51-
BalancesModule,
51+
PubsubModule,
52+
RedisModule,
53+
SentryModule.forRoot(),
5254
// Features
5355
AccountsModule,
56+
ActivationsModule,
5457
ApproversModule,
5558
AuthModule,
5659
ContactsModule,
@@ -72,7 +75,6 @@ import { CONFIG } from './config';
7275
TransactionsModule,
7376
TransfersModule,
7477
UsersModule,
75-
ExpoModule,
7678
],
7779
providers: [
7880
!!CONFIG.sentryDsn && { provide: APP_INTERCEPTOR, useClass: SentryInterceptor },

api/src/decorators/computed.decorator.ts api/src/common/decorators/computed.decorator.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ import {
66
ReturnTypeFunc,
77
} from '@nestjs/graphql';
88
import { ObjectTypeSet } from '~/edgeql-js/reflection';
9-
import { Shape } from '~/features/database/database.select';
10-
import { GqlContext } from '~/request/ctx';
11-
import { asUser } from '#/util/context';
9+
import { Shape } from '~/core/database/database.select';
10+
import { GqlContext } from '~/core/apollo/ctx';
11+
import { asUser } from '~/core/context';
1212

1313
const asUserMiddleware: FieldMiddleware<unknown, GqlContext> = async ({ context }, next) =>
1414
asUser(context, next);

api/src/decorators/interface.decorator.ts api/src/common/decorators/interface.decorator.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import {
77
ObjectTypeOptions,
88
} from '@nestjs/graphql';
99
import { UUID } from 'lib';
10-
import { makeUnionTypeResolver } from '~/features/database/database.util';
10+
import { makeUnionTypeResolver } from '~/core/database/database.util';
1111

1212
const createObjectWithInterfaceDecorator =
1313
(iface: Function | (() => Function)) =>

api/src/request/request.d.ts api/src/common/request.d.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'express-session';
22
import { Address } from 'lib';
3-
import { UserContext } from '#/util/context';
43

54
declare module 'express-session' {
65
interface SessionData {

api/src/apollo/scalars/AbiFunction.scalar.ts api/src/common/scalars/AbiFunction.scalar.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import { GraphQLJSON } from 'graphql-scalars';
2-
import { createScalar } from '~/apollo/scalars/util';
32
import { AbiFunction } from 'abitype';
43
import { AbiFunction as AbiFunctionSchema } from 'abitype/zod';
54
import { UserInputError } from '@nestjs/apollo';
5+
import { createScalar } from './util';
66

77
function parseValue(v: unknown): AbiFunction {
88
const r = AbiFunctionSchema.safeParse(v);
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

api/src/common/scalars/index.ts

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
export * from './AbiFunction.scalar';
2+
export * from './Address.scalar';
3+
export * from './BigInt.scalar';
4+
export * from './Bytes.scalar';
5+
export * from './Chain.scalar';
6+
export * from './Decimal.scalar';
7+
export * from './Id.scalar';
8+
export * from './PolicyKey.scalar';
9+
export * from './SetField';
10+
export * from './TypedData.scalar';
11+
export * from './UAddress.scalar';
12+
export * from './Url.scalar';
13+
export * from './util';
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)