fix: update event tracking to use created_at from response in cycle and issue creation, and reorganize imports in workspace components

This commit is contained in:
Jayash Tripathy
2025-12-16 12:41:58 +05:30
parent 9941459c6d
commit 1f89fcdafa
5 changed files with 20 additions and 19 deletions

View File

@@ -72,7 +72,7 @@ export function CycleCreateUpdateModal(props: CycleModalProps) {
if (currentWorkspace && currentUser) {
const role = getWorkspaceRoleByWorkspaceSlug(currentWorkspace.slug);
trackCycleCreated(
{ id: res.id, created_at: new Date().toISOString() },
{ id: res.id, created_at: res?.created_at ?? "" },
{ id: projectId },
currentWorkspace,
currentUser,

View File

@@ -12,7 +12,7 @@ import { setPromiseToast } from "@plane/propel/toast";
import type { IProject, TIssue, EIssueLayoutTypes } from "@plane/types";
import { cn, createIssuePayload } from "@plane/utils";
// helpers
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
import { captureError } from "@/helpers/event-tracker.helper";
// plane web imports
import { QuickAddIssueFormRoot } from "@/plane-web/components/issues/quick-add";
// local imports
@@ -142,7 +142,7 @@ export const QuickAddIssueRoot = observer(function QuickAddIssueRoot(props: TQui
if (currentWorkspace && currentUser && quickAddRes) {
const role = getWorkspaceRoleByWorkspaceSlug(currentWorkspace.slug);
trackWorkItemCreated(
{ id: quickAddRes.id, created_at: new Date().toISOString() },
{ id: quickAddRes.id, created_at: quickAddRes.created_at ?? "" },
{ id: projectId.toString() },
currentWorkspace,
currentUser,

View File

@@ -1,7 +1,7 @@
import { useState } from "react";
import { observer } from "mobx-react";
import { Controller, useForm } from "react-hook-form";
import { CircleCheck } from "lucide-react";
import { observer } from "mobx-react";
import { useState } from "react";
import { Controller, useForm } from "react-hook-form";
// plane imports
import {
ORGANIZATION_SIZE,
@@ -16,7 +16,7 @@ import type { IUser, IWorkspace } from "@plane/types";
import { Spinner } from "@plane/ui";
import { cn } from "@plane/utils";
// helpers
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
import { captureError } from "@/helpers/event-tracker.helper";
// hooks
import { useWorkspace } from "@/hooks/store/use-workspace";
import { useUser, useUserPermissions, useUserProfile, useUserSettings } from "@/hooks/store/user";
@@ -24,8 +24,8 @@ import { useUser, useUserPermissions, useUserProfile, useUserSettings } from "@/
import { getIsWorkspaceCreationDisabled } from "@/plane-web/helpers/instance.helper";
import { WorkspaceService } from "@/plane-web/services";
// local components
import { CommonOnboardingHeader } from "../common";
import { getUserRoleString, trackWorkspaceCreated } from "@/plane-web/helpers/event-tracker-v2.helper";
import { CommonOnboardingHeader } from "../common";
type Props = {
user: IUser | undefined;
@@ -85,12 +85,13 @@ export const WorkspaceCreateStep = observer(function WorkspaceCreateStep({
message: t("workspace_creation.toast.success.message"),
});
await fetchWorkspaces();
const role = getWorkspaceRoleByWorkspaceSlug(workspaceResponse.slug);
if (currentUser) {
const role = getWorkspaceRoleByWorkspaceSlug(workspaceResponse.slug);
trackWorkspaceCreated(workspaceResponse, currentUser, getUserRoleString(role));
}
await fetchWorkspaces();
await completeStep(workspaceResponse.id);
onComplete(formData.organization_size === "Just myself");
} catch {

View File

@@ -13,10 +13,10 @@ import { setToast, TOAST_TYPE } from "@plane/propel/toast";
import type { EPageStoreType } from "@/plane-web/hooks/store";
import { usePageStore } from "@/plane-web/hooks/store";
// local imports
import { PageForm } from "./page-form";
import { useUser, useUserPermissions } from "@/hooks/store/user";
import { useWorkspace } from "@/hooks/store/use-workspace";
import { useUser, useUserPermissions } from "@/hooks/store/user";
import { getUserRoleString, trackPageCreated } from "@/plane-web/helpers/event-tracker-v2.helper";
import { PageForm } from "./page-form";
type Props = {
workspaceSlug: string;
@@ -69,7 +69,7 @@ export function CreatePageModal(props: Props) {
if (!workspaceSlug || !projectId) return;
try {
const pageData = await createPage?.(pageFormData);
const pageData = await createPage(pageFormData);
if (pageData) {
if (currentWorkspace && currentUser) {
const role = getWorkspaceRoleByWorkspaceSlug(currentWorkspace.slug);

View File

@@ -1,7 +1,6 @@
import React from "react";
import { AlertTriangle } from "lucide-react";
import { observer } from "mobx-react";
import { Controller, useForm } from "react-hook-form";
import { AlertTriangle } from "lucide-react";
// types
import { WORKSPACE_TRACKER_EVENTS } from "@plane/constants";
import { useTranslation } from "@plane/i18n";
@@ -11,12 +10,12 @@ import type { IWorkspace } from "@plane/types";
// ui
import { Input } from "@plane/ui";
// hooks
import { cn } from "@plane/utils";
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
import { captureError } from "@/helpers/event-tracker.helper";
import { useWorkspace } from "@/hooks/store/use-workspace";
import { useUser, useUserPermissions, useUserSettings } from "@/hooks/store/user";
import { useAppRouter } from "@/hooks/use-app-router";
import { getUserRoleString, trackWorkspaceDeleted } from "@/plane-web/helpers/event-tracker-v2.helper";
import { cn } from "@plane/utils";
type Props = {
data: IWorkspace | null;
@@ -69,8 +68,9 @@ export const DeleteWorkspaceForm = observer(function DeleteWorkspaceForm(props:
handleClose();
router.push(getWorkspaceRedirectionUrl());
if (currentUser && data) {
const role = getWorkspaceRoleByWorkspaceSlug(data.slug);
const role = getWorkspaceRoleByWorkspaceSlug(data.slug);
if (currentUser) {
trackWorkspaceDeleted(data, currentUser, getUserRoleString(role));
}