fix merge issues

This commit is contained in:
Kent Wang
2026-05-19 16:26:15 +08:00
parent d3ea7efe7c
commit ea3f06004a
13 changed files with 31 additions and 61 deletions

View File

@@ -131,6 +131,9 @@ export enum AnalyticsEvent {
kongKonnectSyncCompleted = 'kong-konnect-sync-completed',
emptyStateSendRequestClicked = 'empty-state-send-request-clicked',
emptyStateCreateDocumentClicked = 'empty-state-create-document-clicked',
projectListFiltered = 'project-list-filtered',
projectSwitched = 'project-switched',
organizationSwitched = 'organization-switched',
}
export enum InsoEvent {

View File

@@ -9,11 +9,7 @@ import {
scanResources,
} from '~/common/import';
import type { ImportEntry } from '~/main/importers/entities';
<<<<<<< HEAD
import { SegmentEvent, trackImportEvent } from '~/ui/analytics';
=======
import { AnalyticsEvent, trackImportEvent } from '~/ui/analytics';
>>>>>>> origin/develop
import { invariant } from '~/utils/invariant';
import { createFetcherSubmitHook } from '~/utils/router';
@@ -31,11 +27,7 @@ export const scanImportResources = async (data: {
invariant(typeof source === 'string', 'Source is required.');
invariant(IMPORT_SOURCE_TYPES.includes(source), 'Unsupported import type');
<<<<<<< HEAD
trackImportEvent(SegmentEvent.importScanned, { source });
=======
trackImportEvent(AnalyticsEvent.importScanned, { source });
>>>>>>> origin/develop
const contentList: ImportEntry[] = [];

View File

@@ -24,7 +24,6 @@ import {
type DashboardSortOrder,
dashboardSortOrderName,
getAppWebsiteBaseURL,
isKonnectSyncEnabled,
} from '~/common/constants';
import { scopeToBgColorMap, scopeToIconMap, scopeToTextColorMap } from '~/common/get-workspace-label';
import { fuzzyMatchAll } from '~/common/misc';

View File

@@ -7,7 +7,7 @@ import * as reactUse from 'react-use';
import { logout } from '~/account/session';
import { Icon } from '~/basic-components/icon';
import { DEFAULT_SIDEBAR_SIZE } from '~/common/constants';
import { DEFAULT_SIDEBAR_SIZE, isKonnectSyncEnabled } from '~/common/constants';
import {
CheckAllProjectSyncStatus,
getAllLocalFiles,
@@ -186,7 +186,10 @@ const Component = ({ loaderData }: Route.ComponentProps) => {
collapsible
>
<div className="flex flex-1 flex-col divide-y divide-solid divide-(--hl-md) overflow-hidden">
<ProjectNavigationSidebar storageRules={storageRules} konnectSyncEnabled={features.konnectSync.enabled} />
<ProjectNavigationSidebar
storageRules={storageRules}
konnectSyncEnabled={isKonnectSyncEnabled() && features.konnectSync.enabled}
/>
{isScratchPad && <ScratchPadTutorialPanel />}
{!isLearningFeatureDismissed && learningFeature?.active && (
<div className="flex shrink-0 flex-col gap-2 p-(--padding-sm)">

View File

@@ -1,8 +1,6 @@
import type { IconName, IconProp } from '@fortawesome/fontawesome-svg-core';
import React, { Fragment, useEffect, useMemo, useRef, useState } from 'react';
import {
Breadcrumb,
Breadcrumbs,
Button,
DropIndicator,
GridList,
@@ -18,7 +16,6 @@ import {
useDragAndDrop,
} from 'react-aria-components';
import { type ImperativePanelGroupHandle, Panel, PanelGroup, PanelResizeHandle } from 'react-resizable-panels';
import { NavLink } from 'react-router';
import { DEFAULT_SIDEBAR_SIZE } from '~/common/constants';
import { debounce } from '~/common/misc';
@@ -29,7 +26,6 @@ import { useEnvironmentCreateActionFetcher } from '~/routes/organization.$organi
import { useEnvironmentDeleteActionFetcher } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId.environment.delete';
import { useEnvironmentDuplicateActionFetcher } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId.environment.duplicate';
import { useEnvironmentUpdateActionFetcher } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId.environment.update';
import { WorkspaceDropdown } from '~/ui/components/dropdowns/workspace-dropdown';
import { EditableInput } from '~/ui/components/editable-input';
import {
EnvironmentEditor,
@@ -44,7 +40,6 @@ import { AlertModal } from '~/ui/components/modals/alert-modal';
import { InputVaultKeyModal } from '~/ui/components/modals/input-vault-key-modal';
import { OrganizationTabList } from '~/ui/components/tabs/tab-list';
import WorkspacePaneHeader from '~/ui/components/workspace/workspace-pane-header';
import { INSOMNIA_TAB_HEIGHT } from '~/ui/constant';
import { useOrganizationPermissions } from '~/ui/hooks/use-organization-features';
import { useToggleEnvironmentType } from '~/ui/hooks/use-toggle-environment-type';
import { getDataFromKVPair } from '~/utils/environment-utils';

View File

@@ -1,20 +1,9 @@
import type { IconName } from '@fortawesome/fontawesome-svg-core';
import React, { Suspense, useEffect, useLayoutEffect, useRef, useState } from 'react';
import {
Breadcrumb,
Breadcrumbs,
Button,
GridList,
GridListItem,
Menu,
MenuItem,
MenuTrigger,
Popover,
} from 'react-aria-components';
import { Button, GridList, GridListItem, Menu, MenuItem, MenuTrigger, Popover } from 'react-aria-components';
import { type ImperativePanelGroupHandle, Panel, PanelGroup, PanelResizeHandle } from 'react-resizable-panels';
import {
href,
NavLink,
redirect,
Route as RouteComponent,
Routes,
@@ -29,7 +18,6 @@ import { services } from '~/insomnia-data';
import { useRootLoaderData } from '~/root';
import { useWorkspaceLoaderData } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId';
import { useMockRouteDeleteActionFetcher } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId.mock-server.mock-route.$mockRouteId.delete';
import { WorkspaceDropdown } from '~/ui/components/dropdowns/workspace-dropdown';
import { Icon } from '~/ui/components/icon';
import { useDocBodyKeyboardShortcuts } from '~/ui/components/keydown-binder';
import { showModal } from '~/ui/components/modals';
@@ -41,7 +29,6 @@ import { OrganizationTabList } from '~/ui/components/tabs/tab-list';
import { formatMethodName } from '~/ui/components/tags/method-tag';
import { showResourceNotFoundToast } from '~/ui/components/toast-notification';
import WorkspacePaneHeader from '~/ui/components/workspace/workspace-pane-header';
import { INSOMNIA_TAB_HEIGHT } from '~/ui/constant';
import { useTabNavigate } from '~/ui/hooks/use-insomnia-tab';
import { isPrimaryClickModifier } from '~/ui/utils';

View File

@@ -3,8 +3,6 @@ import CodeMirror from 'codemirror';
import type { OpenAPIV3 } from 'openapi-types';
import { Fragment, type ReactNode, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';
import {
Breadcrumb,
Breadcrumbs,
Button,
GridList,
GridListItem,
@@ -20,14 +18,14 @@ import {
TooltipTrigger,
} from 'react-aria-components';
import { type ImperativePanelGroupHandle, Panel, PanelGroup, PanelResizeHandle } from 'react-resizable-panels';
import { href, NavLink, redirect, useLoaderData } from 'react-router';
import { href, redirect, useLoaderData } from 'react-router';
import * as reactUse from 'react-use';
import { SwaggerUIBundle } from 'swagger-ui-dist';
import YAML from 'yaml';
import { parseApiSpec } from '~/common/api-specs';
import { DEFAULT_SIDEBAR_SIZE } from '~/common/constants';
import { debounce, isNotNullOrUndefined } from '~/common/misc';
import { debounce } from '~/common/misc';
import { models, services } from '~/insomnia-data';
import { useRootLoaderData } from '~/root';
import { useWorkspaceLoaderData } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId';
@@ -38,7 +36,6 @@ import { AnalyticsEvent } from '~/ui/analytics';
import { CodeEditor, type CodeEditorHandle } from '~/ui/components/.client/codemirror/code-editor';
import { DesignEmptyState } from '~/ui/components/design-empty-state';
import { DocumentTab } from '~/ui/components/document-tab';
import { WorkspaceDropdown } from '~/ui/components/dropdowns/workspace-dropdown';
import { Icon } from '~/ui/components/icon';
import { useDocBodyKeyboardShortcuts } from '~/ui/components/keydown-binder';
import { showError } from '~/ui/components/modals';
@@ -50,7 +47,6 @@ import { OrganizationTabList } from '~/ui/components/tabs/tab-list';
import { formatMethodName } from '~/ui/components/tags/method-tag';
import { showResourceNotFoundToast, showToast } from '~/ui/components/toast-notification';
import WorkspacePaneHeader from '~/ui/components/workspace/workspace-pane-header';
import { INSOMNIA_TAB_HEIGHT } from '~/ui/constant';
import { useLoaderDeferData } from '~/ui/hooks/use-loader-defer-data';
import { useAIFeatureStatus } from '~/ui/hooks/use-organization-features';
import { useGitVCSVersion } from '~/ui/hooks/use-vcs-version';
@@ -493,8 +489,8 @@ const Component = ({ params }: Route.ComponentProps) => {
{isGenerateMockServersWithAIEnabled && (
<Button
onPress={() => {
window.main.trackSegmentEvent({
event: SegmentEvent.designerGenerateMockClicked,
window.main.trackAnalyticsEvent({
event: AnalyticsEvent.designerGenerateMockClicked,
});
setNewMockServerModalOpen(true);
}}
@@ -511,8 +507,8 @@ const Component = ({ params }: Route.ComponentProps) => {
className="flex h-full items-center justify-center gap-2 rounded-xs px-2 text-sm text-(--color-font) ring-1 ring-transparent transition-all hover:bg-(--hl-xs) focus:ring-(--hl-md) focus:ring-inset aria-pressed:bg-(--hl-sm)"
onChange={value => {
setIsSpecPaneOpen(value);
window.main.trackSegmentEvent({
event: SegmentEvent.designerPreviewToggled,
window.main.trackAnalyticsEvent({
event: AnalyticsEvent.designerPreviewToggled,
properties: {
status: !value ? 'open' : 'collapsed',
},

View File

@@ -1,8 +1,6 @@
import type { IconName } from '@fortawesome/fontawesome-svg-core';
import { Suspense, useEffect, useLayoutEffect, useRef, useState } from 'react';
import {
Breadcrumb,
Breadcrumbs,
Button,
DropIndicator,
GridList,
@@ -15,7 +13,7 @@ import {
useDragAndDrop,
} from 'react-aria-components';
import { type ImperativePanelGroupHandle, Panel, PanelGroup, PanelResizeHandle } from 'react-resizable-panels';
import { NavLink, Route as RouteComponent, Routes, useFetchers, useLoaderData, useParams } from 'react-router';
import { Route as RouteComponent, Routes, useFetchers, useLoaderData, useParams } from 'react-router';
import { DEFAULT_SIDEBAR_SIZE } from '~/common/constants';
import { database } from '~/common/database';
@@ -28,7 +26,6 @@ import { TestRunStatus } from '~/routes/organization.$organizationId.project.$pr
import { useTestSuiteUpdateActionFetcher } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId.test.test-suite.$testSuiteId.update';
import { useTestSuiteNewActionFetcher } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId.test.test-suite.new';
import { DocumentTab } from '~/ui/components/document-tab';
import { WorkspaceDropdown } from '~/ui/components/dropdowns/workspace-dropdown';
import { EditableInput } from '~/ui/components/editable-input';
import { ErrorBoundary } from '~/ui/components/error-boundary';
import { Icon } from '~/ui/components/icon';
@@ -41,7 +38,6 @@ import { CertificatesModal } from '~/ui/components/modals/workspace-certificates
import { WorkspaceEnvironmentsEditModal } from '~/ui/components/modals/workspace-environments-edit-modal';
import { OrganizationTabList } from '~/ui/components/tabs/tab-list';
import WorkspacePaneHeader from '~/ui/components/workspace/workspace-pane-header';
import { INSOMNIA_TAB_HEIGHT } from '~/ui/constant';
import { useTabNavigate } from '~/ui/hooks/use-insomnia-tab';
import { isPrimaryClickModifier } from '~/ui/utils';
import { invariant } from '~/utils/invariant';

View File

@@ -11,7 +11,6 @@ import { useWorkspaceLoaderData } from '~/routes/organization.$organizationId.pr
import { useSyncOrganizationsAndProjectsActionFetcher } from '~/routes/organization.sync-organizations-and-projects';
import { useUntrackedProjectsLoaderFetcher } from '~/routes/untracked-projects';
import { AnalyticsEvent } from '~/ui/analytics';
import { getLoginUrl } from '~/ui/auth-session-provider.client';
import { CommandPalette } from '~/ui/components/command-palette';
import { GitHubStarsButton } from '~/ui/components/github-stars-button';
import { HeaderInviteButton } from '~/ui/components/header-invite-button';

View File

@@ -37,7 +37,7 @@ import type { CreateRequestType } from '~/ui/hooks/use-request';
import { getProductName, SORT_ORDERS, type SortOrder, sortOrderName } from '../../../common/constants';
import { getWorkspaceLabel } from '../../../common/get-workspace-label';
import type { PlatformKeyCombinations } from '../../../common/settings';
import { SegmentEvent } from '../../analytics';
import { AnalyticsEvent } from '../../../ui/analytics';
import { DropdownHint } from '../base/dropdown/dropdown-hint';
import { Icon } from '../icon';
import { showModal } from '../modals';
@@ -281,8 +281,8 @@ export const SidebarWorkspaceDropdown = ({
name: 'Export',
icon: 'file-export',
action: () => {
window.main.trackSegmentEvent({
event: SegmentEvent.exportStarted,
window.main.trackAnalyticsEvent({
event: AnalyticsEvent.exportStarted,
properties: { source: `${workspace.scope}-list` },
});
if (workspace.scope === 'mock-server') {

View File

@@ -404,7 +404,7 @@ export const McpPane = () => {
setCollapsedPrimitives(['tools', 'resources', 'prompts']);
}
setAllExpanded(newState);
window.main.trackSegmentEvent({ event: SegmentEvent.mcpListExpandCollapseClicked });
window.main.trackAnalyticsEvent({ event: AnalyticsEvent.mcpListExpandCollapseClicked });
}}
className="flex aspect-square h-full items-center justify-center rounded-xs text-sm text-(--color-font) ring-1 ring-transparent transition-all hover:bg-(--hl-xs) focus:ring-(--hl-md) focus:ring-inset"
>

View File

@@ -17,7 +17,7 @@ import { models, services } from '~/insomnia-data';
import type { SyncResult } from '~/konnect/sync';
import { useRootLoaderData } from '~/root';
import { useProjectLoaderData } from '~/routes/organization.$organizationId.project.$projectId';
import { SegmentEvent } from '~/ui/analytics';
import { AnalyticsEvent } from '~/ui/analytics';
import { KongLogo } from '~/ui/components/kong-logo';
import { showModal } from '~/ui/components/modals';
import { AlertModal } from '~/ui/components/modals/alert-modal';
@@ -113,8 +113,8 @@ export const ProjectNavigationSidebar = ({ storageRules, konnectSyncEnabled }: P
useEffect(() => {
if (projectNavigationSidebarFilter) {
window.main.trackSegmentEvent({
event: SegmentEvent.projectListFiltered,
window.main.trackAnalyticsEvent({
event: AnalyticsEvent.projectListFiltered,
});
}
}, [projectNavigationSidebarFilter]);
@@ -812,7 +812,7 @@ export const ProjectNavigationSidebar = ({ storageRules, konnectSyncEnabled }: P
if (routeInfo?.resourceId === docId) {
toggleProjectOrWorkspace(docId);
} else {
!isScratchPad && window.main.trackSegmentEvent({ event: SegmentEvent.projectSwitched });
!isScratchPad && window.main.trackAnalyticsEvent({ event: AnalyticsEvent.projectSwitched });
!isScratchPad && navigate(`/organization/${organizationId}/project/${docId}`);
}
} else if (item.kind === 'workspace') {

View File

@@ -5,7 +5,7 @@ import { isNotNullOrUndefined } from '~/common/misc';
import { type McpRequest, models } from '~/insomnia-data';
import { useWorkspaceLoaderData } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId';
import { useRequestLoaderData } from '~/routes/organization.$organizationId.project.$projectId.workspace.$workspaceId.debug.request.$requestId';
import { SegmentEvent } from '~/ui/analytics';
import { AnalyticsEvent } from '~/ui/analytics';
import { EnvironmentPicker } from '~/ui/components/environment-picker';
import { Icon } from '~/ui/components/icon';
import { useDocBodyKeyboardShortcuts } from '~/ui/components/keydown-binder';
@@ -68,8 +68,8 @@ export default function WorkspacePaneHeader({ hasSettings }: { hasSettings: bool
onOpenChange={isOpen => {
setIsEnvironmentPickerOpen(isOpen);
if (isOpen) {
window.main.trackSegmentEvent({
event: SegmentEvent.requestEnvironmentClicked,
window.main.trackAnalyticsEvent({
event: AnalyticsEvent.requestEnvironmentClicked,
});
}
}}
@@ -79,8 +79,8 @@ export default function WorkspacePaneHeader({ hasSettings }: { hasSettings: bool
<Button
aria-label="Add Cookies"
onPress={() => {
window.main.trackSegmentEvent({
event: SegmentEvent.requestAddCookiesClicked,
window.main.trackAnalyticsEvent({
event: AnalyticsEvent.requestAddCookiesClicked,
});
setIsCookieModalOpen(true);
}}
@@ -95,8 +95,8 @@ export default function WorkspacePaneHeader({ hasSettings }: { hasSettings: bool
<Button
aria-label="Add Certificates"
onPress={() => {
window.main.trackSegmentEvent({
event: SegmentEvent.requestAddCertificatesClicked,
window.main.trackAnalyticsEvent({
event: AnalyticsEvent.requestAddCertificatesClicked,
});
setCertificatesModalOpen(true);
}}