Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
45 changes: 0 additions & 45 deletions lana/src/__tests__/helpers/test-builders.ts
Original file line number Diff line number Diff line change
Expand Up @@ -200,48 +200,3 @@ export function createMockContext(overrides: Partial<MockContext> = {}): MockCon

return { ...base, ...overrides };
}

/**
* Creates a simple event tree for testing hierarchical event searches.
* Returns parent with nested children at specified depths.
*/
export function createMockEventTree(config: {
rootTimestamp: number;
rootExitStamp: number;
childConfigs?: Array<{
timestamp: number;
exitStamp: number;
children?: Array<{ timestamp: number; exitStamp: number }>;
}>;
}): LogEvent {
const root = createMockLogEvent({
timestamp: config.rootTimestamp,
exitStamp: config.rootExitStamp,
children: [],
});

if (config.childConfigs) {
root.children = config.childConfigs.map((childConfig) => {
const child = createMockLogEvent({
timestamp: childConfig.timestamp,
exitStamp: childConfig.exitStamp,
parent: root,
children: [],
});

if (childConfig.children) {
child.children = childConfig.children.map((grandchildConfig) =>
createMockLogEvent({
timestamp: grandchildConfig.timestamp,
exitStamp: grandchildConfig.exitStamp,
parent: child,
}),
);
}

return child;
});
}

return root;
}
5 changes: 5 additions & 0 deletions lana/src/display/QuickPickWorkspace.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ import type { Context } from '../Context.js';
import { VSWorkspace } from '../workspace/VSWorkspace.js';
import { Item, Options, QuickPick } from './QuickPick.js';

/**
* Kept on purpose with no caller. `RetrieveLogFile` and `LogView` take
* `workspaceFolders[0]`, so a multi-root workspace never gets a choice. This is the
* logic that gives it one β€” call it from those two sites to reinstate the prompt.
*/
export class QuickPickWorkspace {
static async pickOrReturn(context: Context): Promise<VSWorkspace> {
const workspaceFolders = context.workspaceManager.workspaceFolders;
Expand Down
1 change: 0 additions & 1 deletion lana/src/workspace/AppConfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ export interface Config {
'Code Unit': '#88AE58';
Workflow: '#51A16E';
Method: '#2B8F81';
Flow: '#5C8FA6';
DML: '#B06868';
SOQL: '#6D4C7D';
'System Method': '#8D6E63';
Expand Down
3 changes: 1 addition & 2 deletions log-viewer/src/components/datagrid-range-filter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,10 @@ import { LitElement, css, html } from 'lit';
import { customElement, property, state } from 'lit/decorators.js';

import { globalStyles } from '../styles/global.styles.js';
import type { FilterRange } from '../tabulator/filters/MinMax.js';

let nextId = 0;

export type FilterRange = { start: number | null; end: number | null };

/**
* Min/max range control for the datagrid filter bar's `filters` slot β€” a pill
* that opens a native-popover with two number inputs (replaces per-column
Expand Down
4 changes: 0 additions & 4 deletions log-viewer/src/core/events/EventBus.ts
Original file line number Diff line number Diff line change
Expand Up @@ -114,10 +114,6 @@ interface EventMap {
'detail:locate': { source: DetailSource; eventIndexes: readonly number[] };
}

/** One event's payload, for code that answers an event it is handed rather than
* one it names itself. The map stays where each payload is described. */
export type EventDetail<K extends keyof EventMap> = EventMap[K];

/**
* The events that name the tab they are for.
*
Expand Down
6 changes: 0 additions & 6 deletions log-viewer/src/features/analysis/components/AnalysisView.ts
Original file line number Diff line number Diff line change
Expand Up @@ -98,12 +98,6 @@ export class AnalysisView extends LitElement {
width: 100%;
}

.header-bar {
display: flex;
gap: 10px;
margin-bottom: 4px;
}

.filter-container {
display: flex;
gap: 4px;
Expand Down
12 changes: 5 additions & 7 deletions log-viewer/src/features/database/limits.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,17 @@
/*
* Copyright (c) 2026 Certinia Inc. All rights reserved.
*/
import { SOSL_ROWS_PER_QUERY_LIMIT } from '../../core/metrics/eventMetrics.js';

/**
*
* Canonical reference for the numbers used across the Database tab. Check here
* when a limit looks wrong or Salesforce changes one.
*
* Per-transaction limits (tracked in CUMULATIVE_LIMIT_USAGE): SOQL queries 100,
* SOSL queries 20, SOQL query rows 50,000, DML statements 150, DML rows 10,000.
* Per-query limit (NOT a transaction total): a single SOSL query returns at most
* 2,000 rows β€” see {@link SOSL_ROWS_PER_QUERY_LIMIT}.
* 2,000 rows β€” see SOSL_ROWS_PER_QUERY_LIMIT.
*
* https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm
*/
export const APEX_GOVERNOR_LIMITS_DOC =
'https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm';
import { SOSL_ROWS_PER_QUERY_LIMIT } from '../../core/metrics/eventMetrics.js';

// Re-exported so the Database tab's own consumers keep one import for its numbers.
export { SOSL_ROWS_PER_QUERY_LIMIT };
Expand Down
Loading
Loading