Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

5095 move onboardingstatus computation from frontend to backend #5954

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
b27ccb0
Migrate onboardingStep for createProfile
martmull Jun 18, 2024
4a73025
Migrate onboardingStep for activateWorkspace
martmull Jun 19, 2024
35e912f
Migrate onboardingStep for incomplete
martmull Jun 19, 2024
43f079f
Migrate onboardingStep for canceled, unpaid and past_due
martmull Jun 19, 2024
968dede
Migrate onboardingStep for completed without subscription
martmull Jun 19, 2024
b210b50
Migrate onboardingStep for completed
martmull Jun 19, 2024
ecce5a6
Remove useless parameter
martmull Jun 19, 2024
b0ada5c
Add userCreation onboardingStep
martmull Jun 19, 2024
405228e
Remove front onboardingStatus enum
martmull Jun 19, 2024
32cfe66
Use setNextOnboardingStatus for createProfile step
martmull Jun 19, 2024
bcc4212
Clean code
martmull Jun 19, 2024
6e35bc8
Use USER_CREATION status
martmull Jun 19, 2024
ab23d29
Fix redirections
martmull Jun 19, 2024
29bc0bb
Fix tests
martmull Jun 19, 2024
3caf1a5
Fix stories
martmull Jun 19, 2024
86afc6b
Update onboarding mocked data
martmull Jun 19, 2024
a5a3275
Code cleaning
martmull Jun 19, 2024
656f803
Code review: add test
martmull Jun 25, 2024
3a82863
Code review: use currentUserState in setNextOnboardingStatus
martmull Jun 25, 2024
b985840
Merge branch 'main' into 5095-move-onboardingstatus-computation-from-…
martmull Jun 25, 2024
cf1768b
Merge branch 'main' into 5095-move-onboardingstatus-computation-from-…
martmull Jun 25, 2024
0b87450
Code review: remove raw query
martmull Jun 25, 2024
bdcea2c
Remove USER_CREATION
martmull Jun 25, 2024
2996d7b
Remove as any
martmull Jun 25, 2024
5280d78
Remove as any 2
martmull Jun 25, 2024
b737100
Update generated types
martmull Jun 25, 2024
19a5350
Use enum for subscription status and interval
martmull Jun 25, 2024
7343466
Fix orm error
martmull Jun 25, 2024
dc48ec0
Use enum for subscription status and interval 2
martmull Jun 25, 2024
37eff17
Merge branch 'main' into 5095-move-onboardingstatus-computation-from-…
martmull Jun 26, 2024
b8e2351
Fix typing
martmull Jun 26, 2024
e2a8cfd
Fix import
martmull Jun 26, 2024
6fb0403
Fix tests
martmull Jun 26, 2024
1e90fbd
Add new onboarding step
martmull Jun 26, 2024
602fcef
Fix useSetNextOnboardingStatus
martmull Jun 26, 2024
66f4277
Remove subscription onboarding status
martmull Jun 26, 2024
aaf720e
Fix danger info button
martmull Jun 26, 2024
1756d11
Remove useless parameter
martmull Jun 26, 2024
a061b65
Fix useSetNextOnboardingStatus
martmull Jun 26, 2024
05713ac
Merge branch 'main' into 5095-move-onboardingstatus-computation-from-…
martmull Jun 27, 2024
8f9c20f
Merge branch 'main' into 5095-move-onboardingstatus-computation-from-…
martmull Jun 27, 2024
a4350c8
Remove core.workspace.subscriptionStatus column
martmull Jun 27, 2024
9abc5e2
Fix ci
martmull Jun 27, 2024
5a40bc4
Accept invite on all active workspaces
martmull Jun 27, 2024
4e45a0f
Fix ci
martmull Jun 27, 2024
9eaa2c3
Use isFreeAccessEnabled when necessary
martmull Jun 27, 2024
8ed51e0
Factorize paying workspace ids
martmull Jun 28, 2024
fc4e75f
Remove IsFreeAccessEnabled feature flag when subscription created
martmull Jun 28, 2024
959c8ca
Fixes
martmull Jun 28, 2024
8ff17d9
Code review return, remove onboardingStatus lie
martmull Jun 28, 2024
efccfcb
Fix tests
martmull Jun 28, 2024
d7a8eb5
Use link instead of location replace
martmull Jun 28, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
499 changes: 332 additions & 167 deletions packages/twenty-chrome-extension/src/generated/graphql.tsx

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions packages/twenty-front/src/__stories__/App.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import { SnackBarProviderScope } from '@/ui/feedback/snack-bar-manager/scopes/Sn
import { GET_CURRENT_USER } from '@/users/graphql/queries/getCurrentUser';
import { App } from '~/App';
import { graphqlMocks } from '~/testing/graphqlMocks';
import { mockedUsersData } from '~/testing/mock-data/users';
import { mockedUserData } from '~/testing/mock-data/users';

const meta: Meta<typeof App> = {
title: 'App/App',
Expand Down Expand Up @@ -67,9 +67,9 @@ export const DarkMode: Story = {
return HttpResponse.json({
data: {
currentUser: {
...mockedUsersData[0],
...mockedUserData,
workspaceMember: {
...mockedUsersData[0].workspaceMember,
...mockedUserData.workspaceMember,
colorScheme: 'Dark',
},
},
Expand Down
56 changes: 47 additions & 9 deletions packages/twenty-front/src/generated-metadata/graphql.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,11 @@ export type Analytics = {
success: Scalars['Boolean']['output'];
};

export type ApiConfig = {
__typename?: 'ApiConfig';
mutationMaximumAffectedRecords: Scalars['Float']['output'];
};

export type ApiKeyToken = {
__typename?: 'ApiKeyToken';
token: Scalars['String']['output'];
Expand Down Expand Up @@ -98,8 +103,8 @@ export type Billing = {
export type BillingSubscription = {
__typename?: 'BillingSubscription';
id: Scalars['UUID']['output'];
interval?: Maybe<Scalars['String']['output']>;
status: Scalars['String']['output'];
interval?: Maybe<SubscriptionInterval>;
status: SubscriptionStatus;
};

export type BillingSubscriptionFilter = {
Expand Down Expand Up @@ -142,6 +147,7 @@ export enum CaptchaDriverType {

export type ClientConfig = {
__typename?: 'ClientConfig';
api: ApiConfig;
authProviders: AuthProviders;
billing: Billing;
captcha: Captcha;
Expand Down Expand Up @@ -398,7 +404,9 @@ export type Mutation = {
deleteOneRelation: Relation;
deleteOneRemoteServer: RemoteServer;
deleteUser: User;
disablePostgresProxy: PostgresCredentials;
emailPasswordResetLink: EmailPasswordResetLink;
enablePostgresProxy: PostgresCredentials;
exchangeAuthorizationCode: ExchangeAuthCode;
generateApiKeyToken: ApiKeyToken;
generateJWT: AuthTokens;
Expand Down Expand Up @@ -451,7 +459,7 @@ export type MutationChallengeArgs = {


export type MutationCheckoutSessionArgs = {
recurringInterval: Scalars['String']['input'];
recurringInterval: SubscriptionInterval;
successUrlPath?: InputMaybe<Scalars['String']['input']>;
};

Expand Down Expand Up @@ -636,10 +644,14 @@ export type ObjectFieldsConnection = {
pageInfo: PageInfo;
};

/** Onboarding step */
export enum OnboardingStep {
/** Onboarding status */
export enum OnboardingStatus {
martmull marked this conversation as resolved.
Show resolved Hide resolved
Completed = 'COMPLETED',
InviteTeam = 'INVITE_TEAM',
SyncEmail = 'SYNC_EMAIL'
PlanRequired = 'PLAN_REQUIRED',
ProfileCreation = 'PROFILE_CREATION',
SyncEmail = 'SYNC_EMAIL',
WorkspaceActivation = 'WORKSPACE_ACTIVATION'
}

export type OnboardingStepSuccess = {
Expand All @@ -660,10 +672,18 @@ export type PageInfo = {
startCursor?: Maybe<Scalars['ConnectionCursor']['output']>;
};

export type PostgresCredentials = {
__typename?: 'PostgresCredentials';
id: Scalars['UUID']['output'];
password: Scalars['String']['output'];
user: Scalars['String']['output'];
workspaceId: Scalars['String']['output'];
};

export type ProductPriceEntity = {
__typename?: 'ProductPriceEntity';
created: Scalars['Float']['output'];
recurringInterval: Scalars['String']['output'];
recurringInterval: SubscriptionInterval;
stripePriceId: Scalars['String']['output'];
unitAmount: Scalars['Float']['output'];
};
Expand All @@ -688,6 +708,7 @@ export type Query = {
findManyRemoteServersByType: Array<RemoteServer>;
findOneRemoteServerById: RemoteServer;
findWorkspaceFromInviteHash: Workspace;
getPostgresCredentials?: Maybe<PostgresCredentials>;
getProductPrices: ProductPricesEntity;
getTimelineCalendarEventsFromCompanyId: TimelineCalendarEventsWithTotal;
getTimelineCalendarEventsFromPersonId: TimelineCalendarEventsWithTotal;
Expand Down Expand Up @@ -912,6 +933,24 @@ export enum SortNulls {
NullsLast = 'NULLS_LAST'
}

export enum SubscriptionInterval {
Day = 'Day',
Month = 'Month',
Week = 'Week',
Year = 'Year'
}

export enum SubscriptionStatus {
Active = 'Active',
Canceled = 'Canceled',
Incomplete = 'Incomplete',
IncompleteExpired = 'IncompleteExpired',
PastDue = 'PastDue',
Paused = 'Paused',
Trialing = 'Trialing',
Unpaid = 'Unpaid'
}

export type Support = {
__typename?: 'Support';
supportDriver: Scalars['String']['output'];
Expand Down Expand Up @@ -1084,7 +1123,7 @@ export type User = {
firstName: Scalars['String']['output'];
id: Scalars['UUID']['output'];
lastName: Scalars['String']['output'];
onboardingStep?: Maybe<OnboardingStep>;
onboardingStatus?: Maybe<OnboardingStatus>;
passwordHash?: Maybe<Scalars['String']['output']>;
/** @deprecated field migrated into the AppTokens Table ref: https://github.com/twentyhq/twenty/issues/5021 */
passwordResetToken?: Maybe<Scalars['String']['output']>;
Expand Down Expand Up @@ -1163,7 +1202,6 @@ export type Workspace = {
id: Scalars['UUID']['output'];
inviteHash?: Maybe<Scalars['String']['output']>;
logo?: Maybe<Scalars['String']['output']>;
subscriptionStatus: Scalars['String']['output'];
updatedAt: Scalars['DateTime']['output'];
};

Expand Down
Loading
Loading