From c60fd5ebb2779714f7c662774804d4f40003f5ad Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Wed, 7 May 2025 15:23:05 +0100 Subject: [PATCH] Remove code concerning onboarding events as this no longer exists, and remove more leftover tour code --- packages/backend-core/src/events/publishers/user.ts | 12 ------------ packages/backend-core/src/users/events.ts | 8 -------- packages/builder/src/stores/builder/builder.ts | 6 ------ packages/types/src/api/web/auth.ts | 2 -- packages/types/src/documents/global/user.ts | 4 ++-- packages/types/src/sdk/events/user.ts | 8 -------- .../worker/src/api/routes/global/tests/self.spec.ts | 4 +--- packages/worker/src/api/routes/validation/users.ts | 2 -- 8 files changed, 3 insertions(+), 43 deletions(-) diff --git a/packages/backend-core/src/events/publishers/user.ts b/packages/backend-core/src/events/publishers/user.ts index 43e5355bd5..14d336e852 100644 --- a/packages/backend-core/src/events/publishers/user.ts +++ b/packages/backend-core/src/events/publishers/user.ts @@ -14,7 +14,6 @@ import { UserPermissionAssignedEvent, UserPermissionRemovedEvent, UserUpdatedEvent, - UserOnboardingEvent, } from "@budibase/types" import { isScim } from "../../context" @@ -51,16 +50,6 @@ async function deleted(user: User) { await publishEvent(Event.USER_DELETED, properties) } -export async function onboardingComplete(user: User) { - const properties: UserOnboardingEvent = { - userId: user._id as string, - audited: { - email: user.email, - }, - } - await publishEvent(Event.USER_ONBOARDING_COMPLETE, properties) -} - // PERMISSIONS async function permissionAdminAssigned(user: User, timestamp?: number) { @@ -191,7 +180,6 @@ export default { permissionAdminRemoved, permissionBuilderAssigned, permissionBuilderRemoved, - onboardingComplete, invited, inviteAccepted, passwordForceReset, diff --git a/packages/backend-core/src/users/events.ts b/packages/backend-core/src/users/events.ts index f170c9ffe9..c6c3e94b33 100644 --- a/packages/backend-core/src/users/events.ts +++ b/packages/backend-core/src/users/events.ts @@ -76,10 +76,6 @@ export const handleSaveEvents = async ( await events.user.permissionAdminRemoved(user) } - if (isOnboardingComplete(user, existingUser)) { - await events.user.onboardingComplete(user) - } - if ( !existingUser.forceResetPassword && user.forceResetPassword && @@ -122,10 +118,6 @@ const isRemovingAdmin = (user: any, existingUser: any) => { return isRemovingPermission(user, existingUser, hasAdminPermissions) } -const isOnboardingComplete = (user: any, existingUser: any) => { - return !existingUser?.onboardedAt && typeof user.onboardedAt === "string" -} - /** * Check if a permission is being added to a new or existing user. */ diff --git a/packages/builder/src/stores/builder/builder.ts b/packages/builder/src/stores/builder/builder.ts index 77d8335d3a..549b1f5286 100644 --- a/packages/builder/src/stores/builder/builder.ts +++ b/packages/builder/src/stores/builder/builder.ts @@ -13,9 +13,6 @@ interface BuilderState { } | null propertyFocus: string | null builderSidePanel: boolean - tourNodes: Record | null - tourKey: string | null - tourStepKey: string | null hoveredComponentId: string | null websocket?: Socket } @@ -25,9 +22,6 @@ export const INITIAL_BUILDER_STATE: BuilderState = { highlightedSetting: null, propertyFocus: null, builderSidePanel: false, - tourNodes: null, - tourKey: null, - tourStepKey: null, hoveredComponentId: null, } diff --git a/packages/types/src/api/web/auth.ts b/packages/types/src/api/web/auth.ts index 5ef6169086..ba61439786 100644 --- a/packages/types/src/api/web/auth.ts +++ b/packages/types/src/api/web/auth.ts @@ -38,10 +38,8 @@ export interface UpdateSelfRequest { lastName?: string password?: string forceResetPassword?: boolean - onboardedAt?: string freeTrialConfirmedAt?: string appFavourites?: string[] - tours?: Record appSort?: string } diff --git a/packages/types/src/documents/global/user.ts b/packages/types/src/documents/global/user.ts index 14fb395211..dde6c78e5c 100644 --- a/packages/types/src/documents/global/user.ts +++ b/packages/types/src/documents/global/user.ts @@ -64,15 +64,15 @@ export interface User extends Document { status?: UserStatus createdAt?: number // override the default createdAt behaviour - users sdk historically set this to Date.now() userGroups?: string[] - onboardedAt?: string freeTrialConfirmedAt?: string - tours?: Record scimInfo?: { isSync: true } & Record appFavourites?: string[] ssoId?: string appSort?: string budibaseAccess?: boolean accountPortalAccess?: boolean + onboardedAt?: string // deprecated and no longer saved + tours?: Record // deprecated and no longer saved } export interface UserBindings extends Document { diff --git a/packages/types/src/sdk/events/user.ts b/packages/types/src/sdk/events/user.ts index eb3ebe97a5..ab72b9888b 100644 --- a/packages/types/src/sdk/events/user.ts +++ b/packages/types/src/sdk/events/user.ts @@ -24,14 +24,6 @@ export interface UserDeletedEvent extends BaseEvent { } } -export interface UserOnboardingEvent extends BaseEvent { - userId: string - step?: string - audited: { - email: string - } -} - export interface UserPermissionAssignedEvent extends BaseEvent { userId: string audited: { diff --git a/packages/worker/src/api/routes/global/tests/self.spec.ts b/packages/worker/src/api/routes/global/tests/self.spec.ts index bf34f14aa0..be3f816870 100644 --- a/packages/worker/src/api/routes/global/tests/self.spec.ts +++ b/packages/worker/src/api/routes/global/tests/self.spec.ts @@ -47,13 +47,12 @@ describe("/api/global/self", () => { }) }) - it("should update onboarding", async () => { + it("should update free trial confirmation date", async () => { const user = await config.createUser() await config.createSession(user) const res = await config.api.self .updateSelf(user, { - onboardedAt: "2023-03-07T14:10:54.869Z", freeTrialConfirmedAt: "2024-03-17T14:10:54.869Z", }) .expect(200) @@ -61,7 +60,6 @@ describe("/api/global/self", () => { const dbUser = (await config.getUser(user.email))! user._rev = dbUser._rev - expect(dbUser.onboardedAt).toBe("2023-03-07T14:10:54.869Z") expect(dbUser.freeTrialConfirmedAt).toBe("2024-03-17T14:10:54.869Z") expect(res.body._id).toBe(user._id) }) diff --git a/packages/worker/src/api/routes/validation/users.ts b/packages/worker/src/api/routes/validation/users.ts index 46c66285fd..c509f7ba0b 100644 --- a/packages/worker/src/api/routes/validation/users.ts +++ b/packages/worker/src/api/routes/validation/users.ts @@ -25,10 +25,8 @@ export const buildSelfSaveValidation = () => { forceResetPassword: Joi.boolean().optional(), firstName: OPTIONAL_STRING, lastName: OPTIONAL_STRING, - onboardedAt: Joi.string().optional(), freeTrialConfirmedAt: Joi.string().optional(), appFavourites: Joi.array().optional(), - tours: Joi.object().optional(), appSort: Joi.string().optional(), } return auth.joiValidator.body(Joi.object(schema).required().unknown(false))