Remove analytics and add more update headers

This commit is contained in:
Gregory Schier
2025-02-24 06:31:49 -08:00
parent af7782c93b
commit 05ac836265
62 changed files with 146 additions and 519 deletions

View File

@@ -1,11 +1,9 @@
import { useFastMutation } from './useFastMutation';
import { event } from '@tauri-apps/api';
import { trackEvent } from '../lib/analytics';
export function useCancelHttpResponse(id: string | null) {
return useFastMutation<void>({
mutationKey: ['cancel_http_response', id],
mutationFn: () => event.emit(`cancel_http_response_${id}`),
onSettled: () => trackEvent('http_response', 'cancel'),
});
}

View File

@@ -1,5 +1,4 @@
import type { CookieJar } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { showPrompt } from '../lib/prompt';
import { invokeCmd } from '../lib/tauri';
import { getActiveWorkspaceId } from './useActiveWorkspace';
@@ -25,6 +24,5 @@ export function useCreateCookieJar() {
return invokeCmd('cmd_create_cookie_jar', { workspaceId, name });
},
onSettled: () => trackEvent('cookie_jar', 'create'),
});
}

View File

@@ -1,5 +1,4 @@
import type { Environment } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { showPrompt } from '../lib/prompt';
import { setWorkspaceSearchParams } from '../lib/setWorkspaceSearchParams';
import { invokeCmd } from '../lib/tauri';
@@ -33,7 +32,6 @@ export function useCreateEnvironment() {
environmentId: baseEnvironment.id,
});
},
onSettled: () => trackEvent('environment', 'create'),
onSuccess: async (environment) => {
if (environment == null) return;
setWorkspaceSearchParams({ environment_id: environment.id });

View File

@@ -1,5 +1,4 @@
import type { GrpcRequest } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { jotaiStore } from '../lib/jotai';
import { invokeCmd } from '../lib/tauri';
import { getActiveRequest } from './useActiveRequest';
@@ -36,7 +35,6 @@ export function useCreateGrpcRequest() {
...patch,
});
},
onSettled: () => trackEvent('grpc_request', 'create'),
onSuccess: async (request) => {
await router.navigate({
to: '/workspaces/$workspaceId',

View File

@@ -1,5 +1,4 @@
import type { HttpRequest } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { router } from '../lib/router';
import { invokeCmd } from '../lib/tauri';
import { getActiveRequest } from './useActiveRequest';
@@ -30,7 +29,6 @@ export function useCreateHttpRequest() {
request: { workspaceId, ...patch },
});
},
onSettled: () => trackEvent('http_request', 'create'),
onSuccess: async (request) => {
await router.navigate({
to: '/workspaces/$workspaceId',

View File

@@ -1,6 +1,5 @@
import type { Workspace } from '@yaakapp-internal/models';
import { InlineCode } from '../components/core/InlineCode';
import { trackEvent } from '../lib/analytics';
import { showConfirmDelete } from '../lib/confirm';
import { router } from '../lib/router';
import { invokeCmd } from '../lib/tauri';
@@ -24,7 +23,6 @@ export function useDeleteActiveWorkspace() {
if (!confirmed) return null;
return invokeCmd('cmd_delete_workspace', { workspaceId: workspace?.id });
},
onSettled: () => trackEvent('workspace', 'delete'),
onSuccess: async (workspace) => {
if (workspace === null) return;
await router.navigate({ to: '/workspaces' });

View File

@@ -1,6 +1,5 @@
import type { GrpcRequest } from '@yaakapp-internal/models';
import { InlineCode } from '../components/core/InlineCode';
import { trackEvent } from '../lib/analytics';
import { showConfirmDelete } from '../lib/confirm';
import { resolvedModelName } from '../lib/resolvedModelName';
import { invokeCmd } from '../lib/tauri';
@@ -24,6 +23,5 @@ export function useDeleteAnyGrpcRequest() {
}
return invokeCmd('cmd_delete_grpc_request', { requestId: request.id });
},
onSuccess: () => trackEvent('grpc_request', 'delete'),
});
}

View File

@@ -1,6 +1,5 @@
import type { HttpRequest } from '@yaakapp-internal/models';
import { InlineCode } from '../components/core/InlineCode';
import { trackEvent } from '../lib/analytics';
import { showConfirmDelete } from '../lib/confirm';
import { resolvedModelName } from '../lib/resolvedModelName';
import { invokeCmd } from '../lib/tauri';
@@ -24,6 +23,5 @@ export function useDeleteAnyHttpRequest() {
}
return invokeCmd<HttpRequest>('cmd_delete_http_request', { requestId: request.id });
},
onSuccess: () => trackEvent('http_request', 'delete'),
});
}

View File

@@ -1,7 +1,6 @@
import type { CookieJar } from '@yaakapp-internal/models';
import { useSetAtom } from 'jotai';
import { InlineCode } from '../components/core/InlineCode';
import { trackEvent } from '../lib/analytics';
import { showConfirmDelete } from '../lib/confirm';
import { invokeCmd } from '../lib/tauri';
import { cookieJarsAtom } from './useCookieJars';
@@ -26,7 +25,6 @@ export function useDeleteCookieJar(cookieJar: CookieJar | null) {
if (!confirmed) return null;
return invokeCmd('cmd_delete_cookie_jar', { cookieJarId: cookieJar?.id });
},
onSettled: () => trackEvent('cookie_jar', 'delete'),
onSuccess: (cookieJar) => {
if (cookieJar == null) return;

View File

@@ -1,7 +1,6 @@
import type { Environment } from '@yaakapp-internal/models';
import { useSetAtom } from 'jotai';
import { InlineCode } from '../components/core/InlineCode';
import { trackEvent } from '../lib/analytics';
import { showConfirmDelete } from '../lib/confirm';
import { invokeCmd } from '../lib/tauri';
import { environmentsAtom } from './useEnvironments';
@@ -26,7 +25,6 @@ export function useDeleteEnvironment(environment: Environment | null) {
if (!confirmed) return null;
return invokeCmd('cmd_delete_environment', { environmentId: environment?.id });
},
onSettled: () => trackEvent('environment', 'delete'),
onSuccess: (environment) => {
if (environment == null) return;

View File

@@ -1,7 +1,6 @@
import type { Folder } from '@yaakapp-internal/models';
import { useSetAtom } from 'jotai';
import { InlineCode } from '../components/core/InlineCode';
import { trackEvent } from '../lib/analytics';
import { showConfirmDelete } from '../lib/confirm';
import { invokeCmd } from '../lib/tauri';
import { useFastMutation } from './useFastMutation';
@@ -27,7 +26,6 @@ export function useDeleteFolder(id: string | null) {
if (!confirmed) return null;
return invokeCmd('cmd_delete_folder', { folderId: id });
},
onSettled: () => trackEvent('folder', 'delete'),
onSuccess: (folder) => {
if (folder == null) return;

View File

@@ -1,7 +1,6 @@
import { useFastMutation } from './useFastMutation';
import type { GrpcConnection } from '@yaakapp-internal/models';
import {useSetAtom} from "jotai";
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
import {grpcConnectionsAtom} from "./useGrpcConnections";
import {removeModelById} from "./useSyncModelStores";
@@ -13,7 +12,6 @@ export function useDeleteGrpcConnection(id: string | null) {
mutationFn: async () => {
return await invokeCmd('cmd_delete_grpc_connection', { id: id });
},
onSettled: () => trackEvent('grpc_connection', 'delete'),
onSuccess: (connection) => {
if (connection == null) return;

View File

@@ -1,6 +1,5 @@
import { useFastMutation } from './useFastMutation';
import { useSetAtom } from 'jotai';
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
import { grpcConnectionsAtom } from './useGrpcConnections';
@@ -12,7 +11,6 @@ export function useDeleteGrpcConnections(requestId?: string) {
if (requestId === undefined) return;
await invokeCmd('cmd_delete_all_grpc_connections', { requestId });
},
onSettled: () => trackEvent('grpc_connection', 'delete_many'),
onSuccess: () => {
setGrpcConnections((all) => all.filter((r) => r.requestId !== requestId));
},

View File

@@ -1,7 +1,6 @@
import { useFastMutation } from './useFastMutation';
import type { HttpResponse } from '@yaakapp-internal/models';
import {useSetAtom} from "jotai";
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
import {httpResponsesAtom} from "./useHttpResponses";
import {removeModelById} from "./useSyncModelStores";
@@ -13,7 +12,6 @@ export function useDeleteHttpResponse(id: string | null) {
mutationFn: async () => {
return await invokeCmd('cmd_delete_http_response', { id: id });
},
onSettled: () => trackEvent('http_response', 'delete'),
onSuccess: (response) => {
setHttpResponses(removeModelById(response));
}

View File

@@ -1,6 +1,5 @@
import { useFastMutation } from './useFastMutation';
import { useSetAtom } from 'jotai';
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
import { httpResponsesAtom } from './useHttpResponses';
@@ -15,6 +14,5 @@ export function useDeleteHttpResponses(requestId?: string) {
onSuccess: () => {
setHttpResponses((all) => all.filter((r) => r.requestId !== requestId));
},
onSettled: () => trackEvent('http_response', 'delete_many'),
});
}

View File

@@ -1,11 +1,9 @@
import { useFastMutation } from './useFastMutation';
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
export function useDuplicateFolder(id: string) {
return useFastMutation<void, string>({
mutationKey: ['duplicate_folder', id],
mutationFn: () => invokeCmd('cmd_duplicate_folder', { id }),
onSettled: () => trackEvent('folder', 'duplicate'),
});
}

View File

@@ -1,5 +1,4 @@
import type { GrpcRequest } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { router } from '../lib/router';
import { invokeCmd } from '../lib/tauri';
import { useFastMutation } from './useFastMutation';
@@ -18,7 +17,6 @@ export function useDuplicateGrpcRequest({
if (id === null) throw new Error("Can't duplicate a null grpc request");
return invokeCmd('cmd_duplicate_grpc_request', { id });
},
onSettled: () => trackEvent('grpc_request', 'duplicate'),
onSuccess: async (request) => {
if (id == null) return;

View File

@@ -1,5 +1,4 @@
import type { HttpRequest } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { router } from '../lib/router';
import { invokeCmd } from '../lib/tauri';
import { useFastMutation } from './useFastMutation';
@@ -17,7 +16,6 @@ export function useDuplicateHttpRequest({
if (id === null) throw new Error("Can't duplicate a null request");
return invokeCmd('cmd_duplicate_http_request', { id });
},
onSettled: () => trackEvent('http_request', 'duplicate'),
onSuccess: async (request) => {
if (navigateAfter) {
await router.navigate({

View File

@@ -1,7 +1,6 @@
import type { MutationKey } from '@tanstack/react-query';
import { useMemo } from 'react';
import { showToast } from '../lib/toast';
import { trackEvent } from '../lib/analytics';
interface MutationOptions<TData, TError, TVariables> {
mutationKey: MutationKey;
@@ -36,7 +35,6 @@ export function createFastMutation<TData = unknown, TError = unknown, TVariables
const stringKey = mutationKey.join('.');
const e = err as TError;
console.log('mutation error', stringKey, e);
trackEvent('mutation', 'error', { key: stringKey });
if (!disableToastError) {
showToast({
id: stringKey,

View File

@@ -1,7 +1,6 @@
import { useMutation, useQuery } from '@tanstack/react-query';
import { emit } from '@tauri-apps/api/event';
import type { GrpcConnection, GrpcRequest } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { minPromiseMillis } from '../lib/minPromiseMillis';
import { invokeCmd } from '../lib/tauri';
import { useActiveEnvironment } from './useActiveEnvironment';
@@ -24,26 +23,22 @@ export function useGrpc(
mutationKey: ['grpc_go', conn?.id],
mutationFn: () =>
invokeCmd<void>('cmd_grpc_go', { requestId, environmentId: environment?.id, protoFiles }),
onSettled: () => trackEvent('grpc_request', 'send'),
});
const send = useMutation({
mutationKey: ['grpc_send', conn?.id],
mutationFn: ({ message }: { message: string }) =>
emit(`grpc_client_msg_${conn?.id ?? 'none'}`, { Message: message }),
onSettled: () => trackEvent('grpc_connection', 'send'),
});
const cancel = useMutation({
mutationKey: ['grpc_cancel', conn?.id ?? 'n/a'],
mutationFn: () => emit(`grpc_client_msg_${conn?.id ?? 'none'}`, 'Cancel'),
onSettled: () => trackEvent('grpc_connection', 'cancel'),
});
const commit = useMutation({
mutationKey: ['grpc_commit', conn?.id ?? 'n/a'],
mutationFn: () => emit(`grpc_client_msg_${conn?.id ?? 'none'}`, 'Commit'),
onSettled: () => trackEvent('grpc_connection', 'commit'),
});
const debouncedUrl = useDebouncedValue<string>(req?.url ?? '', 1000);

View File

@@ -1,5 +1,4 @@
import { useFastMutation } from './useFastMutation';
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
export function useInstallPlugin() {
@@ -8,6 +7,5 @@ export function useInstallPlugin() {
mutationFn: async (directory: string) => {
await invokeCmd('cmd_install_plugin', { directory });
},
onSettled: () => trackEvent('plugin', 'create'),
});
}

View File

@@ -1,5 +1,4 @@
import type { HttpResponse } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
import { getActiveCookieJar } from './useActiveCookieJar';
import { getActiveEnvironment } from './useActiveEnvironment';
@@ -21,6 +20,5 @@ export function useSendAnyHttpRequest() {
cookieJarId: getActiveCookieJar()?.id,
});
},
onSettled: () => trackEvent('http_request', 'send'),
});
}

View File

@@ -1,6 +1,5 @@
import { useFastMutation } from './useFastMutation';
import type { Plugin } from '@yaakapp-internal/models';
import { trackEvent } from '../lib/analytics';
import { invokeCmd } from '../lib/tauri';
export function useUninstallPlugin(pluginId: string) {
@@ -9,6 +8,5 @@ export function useUninstallPlugin(pluginId: string) {
mutationFn: async () => {
return invokeCmd('cmd_uninstall_plugin', { pluginId });
},
onSettled: () => trackEvent('plugin', 'delete'),
});
}