Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
14313d5
feat(component): add number formatting to single value and tooltips
alfredorubin96 Mar 22, 2026
7dd15c4
feat(component): add DataZoom support for bar and line charts
alfredorubin96 Mar 22, 2026
b826fac
feat(component): auto-rotate and truncate axis labels for bar chart
alfredorubin96 Mar 22, 2026
0672191
feat(component): add reference lines (markLine) for bar and line charts
alfredorubin96 Mar 22, 2026
0a584cd
feat(component): add donut center text and Top-N grouping for pie chart
alfredorubin96 Mar 22, 2026
16cb10d
feat(component): add column resizing to data grid
alfredorubin96 Mar 22, 2026
506d451
feat(component): add threshold zones to gauge chart
alfredorubin96 Mar 22, 2026
a24812d
feat(component): cell-level conditional formatting for data grid
alfredorubin96 Mar 23, 2026
ec704b6
feat(component): accessibility improvements — ARIA, keyboard nav, con…
alfredorubin96 Mar 23, 2026
980f138
fix(ci): add missing ECharts component mocks for CI
alfredorubin96 Mar 23, 2026
670bd51
fix(ci): add missing ECharts component mocks for CI
alfredorubin96 Mar 23, 2026
22975a5
fix(ci): add missing ECharts component mocks for CI
alfredorubin96 Mar 23, 2026
a58b1cf
fix(ci): add missing ECharts component mocks for CI
alfredorubin96 Mar 23, 2026
c5edb20
fix(ci): add missing ECharts component mocks for CI
alfredorubin96 Mar 23, 2026
d6305d8
fix(component,app): bracket wrapping in code editor + radar chart scale
alfredorubin96 Mar 23, 2026
5c166f6
chore: add Chart Catalog seed dashboard with full feature showcase
alfredorubin96 Mar 23, 2026
6dd50c9
fix(component): resolve nested button hydration error in CrossFilterTag
alfredorubin96 Mar 23, 2026
f31270f
chore: expand Chart Catalog to cover ALL chart options comprehensively
alfredorubin96 Mar 23, 2026
943834a
chore: add Map Chart page with geo data (filming locations + birthpla…
alfredorubin96 Mar 23, 2026
b7513f0
fix: markdown newlines and iframe URL in Chart Catalog seed
alfredorubin96 Mar 23, 2026
89dbb1d
fix: markdown table rendering, graph performance, and query typo
alfredorubin96 Mar 23, 2026
57b05f0
fix(component): prevent graph chart nodes clumping on initial render
alfredorubin96 Mar 23, 2026
cd9ea80
feat(component): cell-level conditional formatting for data grid
alfredorubin96 Mar 23, 2026
33e7a7f
feat(component): table grouping and bucketing UI with expandable row …
alfredorubin96 Mar 23, 2026
a75df98
fix: address CodeRabbit review — operators, coercion, icon sentinel, …
alfredorubin96 Mar 24, 2026
e4b9611
Merge branch 'feat/issue-141-conditional-formatting' into feat/issue-…
alfredorubin96 Mar 24, 2026
bd196ae
fix: address CodeRabbit review — null handling, leaf rows, imports, T…
alfredorubin96 Mar 24, 2026
bbea43b
feat(component): add number formatting to single value and tooltips
alfredorubin96 Mar 22, 2026
8e4a745
fix(ci): add missing ECharts component mocks for CI
alfredorubin96 Mar 23, 2026
3b02566
fix: aria description merge order and dependency array
alfredorubin96 Mar 24, 2026
6c2eab5
fix: normalize -1 axis label rotation sentinel to undefined
alfredorubin96 Mar 24, 2026
691453d
fix: resolve TS error, tooltip undefined seriesName, remove inert opt…
alfredorubin96 Mar 24, 2026
3d46ef3
fix: tooltip undefined seriesName, remove inert decimalPlaces options
alfredorubin96 Mar 24, 2026
c5a599f
fix: add 50px minimum column width, resize tests, remove stale comment
alfredorubin96 Mar 24, 2026
675f7e9
fix: implement markLine for LineChart, add buildMarkLineFromRefs tests
alfredorubin96 Mar 24, 2026
1a29765
fix: resolve TypeScript compilation errors
alfredorubin96 Mar 24, 2026
357b181
fix: radar max fallback, seed data shape, and markdown ReDoS
alfredorubin96 Mar 24, 2026
e4fcf26
fix(e2e): use keyboard fallback when CM6 editor reports readonly
alfredorubin96 Mar 24, 2026
1c04d9c
fix(e2e): use keyboard fallback when CM6 editor reports readonly
alfredorubin96 Mar 24, 2026
647b29e
fix: resolve TypeScript compilation errors
alfredorubin96 Mar 24, 2026
7b6c073
fix: resolve TypeScript compilation errors
alfredorubin96 Mar 24, 2026
33fcfe1
fix: resolve TypeScript compilation errors
alfredorubin96 Mar 24, 2026
1bfa403
Merge remote-tracking branch 'origin/feat/issue-134-datazoom' into re…
alfredorubin96 Mar 24, 2026
d59ad47
Merge remote-tracking branch 'origin/feat/issue-137-axis-labels' into…
alfredorubin96 Mar 24, 2026
9017b78
Merge remote-tracking branch 'origin/feat/issue-136-markline' into re…
alfredorubin96 Mar 24, 2026
e3448e6
feat: batch 1 — chart improvements (number format, DataZoom, axis lab…
alfredorubin96 Mar 24, 2026
8592737
Merge remote-tracking branch 'origin/fix/editor-brackets-radar-scale'…
alfredorubin96 Mar 24, 2026
cf131ad
Merge remote-tracking branch 'origin/feat/issue-141-conditional-forma…
alfredorubin96 Mar 24, 2026
ab34fe0
Merge remote-tracking branch 'origin/feat/issue-106-table-grouping' i…
alfredorubin96 Mar 24, 2026
0abfc99
Merge remote-tracking branch 'origin/release/a11y-and-fixes' into rel…
alfredorubin96 Mar 24, 2026
9be23f7
fix: enrich chart click point with original row data for click actions
alfredorubin96 Mar 24, 2026
beb9cbd
fix: wire missing chart props, fix E2E editor flakiness, add Chart Im…
alfredorubin96 Mar 24, 2026
333ca30
Merge pull request #185 from alfredo1996/release/chart-improvements
alfredo1996 Mar 24, 2026
60d4f41
merge: resolve conflict — keep both gauge thresholds and pie top-N
alfredorubin96 Mar 24, 2026
10c8623
Merge pull request #176 from alfredo1996/feat/issue-142-gauge-thresholds
alfredo1996 Mar 24, 2026
6091555
Merge remote-tracking branch 'origin/release/0.9' into release/table-…
alfredorubin96 Mar 24, 2026
5bd217a
chore: add Table Features seed dashboard for PR #187
alfredorubin96 Mar 24, 2026
222b78b
fix: 6 table & editor UX fixes
alfredorubin96 Mar 24, 2026
c75531d
feat(table): unified styling rules, per-rule columns, form param seed…
alfredorubin96 Mar 26, 2026
3f19a02
test: add unit tests for Zod widget-settings schemas and validation
alfredorubin96 Mar 26, 2026
4b355e3
fix: export TooltipParam interface for test import
alfredorubin96 Mar 26, 2026
7638a74
fix: correct type cast in tooltip-formatter test
alfredorubin96 Mar 26, 2026
7933e11
Merge pull request #187 from alfredo1996/release/table-features
alfredo1996 Mar 26, 2026
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
33 changes: 25 additions & 8 deletions app/e2e/code-completion.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -99,21 +99,38 @@ async function triggerCypherAutocomplete(
}

/**
* Click inside the CM editor content area and type text via keyboard events.
* After typing, re-clicks the editor to ensure focus is fully settled — the
* neo4j-cypher editor's completion keymap requires a settled focus state that
* keyboard.type() alone doesn't guarantee.
* Insert exact text into the CM editor via CM6 dispatch (bypasses closeBrackets
* auto-insertion that corrupts partial Cypher like "MATCH (n:" → "MATCH (n:)").
* After dispatch, clicks the editor to ensure focus for keyboard shortcuts.
*/
async function typeInCmEditor(
dialog: Locator,
page: Page,
text: string,
): Promise<void> {
const cm = dialog.locator("[data-testid='codemirror-container'] .cm-content");
await cm.click();
await page.keyboard.type(text, { delay: 30 });
const cmContainer = dialog.locator("[data-testid='codemirror-container']");
const cm = cmContainer.locator(".cm-content");

// Use CM6 dispatch to set exact text without closeBrackets interference
await cmContainer.evaluate((el: HTMLElement, t: string) => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function findView(node: Element | null): any {
if (!node) return null;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const tile = (node as any).cmTile;
return tile?.root?.view ?? tile?.view ?? null;
}
const view = findView(el.querySelector(".cm-content")) ?? findView(el.querySelector(".cm-editor"));
if (!view) throw new Error("CM6 view not found for typeInCmEditor");
view.dispatch({
changes: { from: 0, to: view.state.doc.length, insert: t },
selection: { anchor: t.length },
});
}, text);

// Re-focus: the Cypher editor's CM6 completion keymap needs a settled focus
// state after programmatic typing. Without this, Ctrl+Space may not trigger.
// state after programmatic dispatch. Without this, Ctrl+Space may not trigger.
// eslint-disable-next-line playwright/no-wait-for-timeout
await page.waitForTimeout(100);
await cm.click();
}
Expand Down
35 changes: 21 additions & 14 deletions app/e2e/fixtures.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,16 +106,19 @@
}

// Strategy 1: Use CM6's internal dispatch API (most reliable).
// In CM6 v6.x, each DOM node managed by the editor has a `cmTile`
// property (Tile instance). The `.cm-content` element's cmTile is a
// DocTile whose `.root.view` yields the EditorView. This mirrors the
// logic of the static `EditorView.findFromDOM()` method.
// CM6 decorates managed DOM nodes with a `cmTile` property (Tile instance).
// We mirror EditorView.findFromDOM(): try .cm-content first, then .cm-editor.
const dispatched = await cmContainer.evaluate((el: HTMLElement, text: string) => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function findView(node: Element | null): any {
if (!node) return null;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const tile = (node as any).cmTile;
return tile?.root?.view ?? tile?.view ?? null;
}
const cmContent = el.querySelector(".cm-content");
if (!cmContent) return "no-editor";
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const tile = (cmContent as any).cmTile;
const view = tile?.root?.view ?? tile?.view;
const view = findView(cmContent) ?? findView(el.querySelector(".cm-editor"));
if (!view) return "no-view";
if (view.state.readOnly) return "readonly";

Expand All @@ -134,11 +137,14 @@
// eslint-disable-next-line playwright/no-wait-for-timeout
await page.waitForTimeout(300);
const stillPresent = await cmContainer.evaluate((el: HTMLElement, text: string) => {
const c = el.querySelector(".cm-content");
if (!c) return false;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const tile = (c as any).cmTile;
const view = tile?.root?.view ?? tile?.view;
function findView(node: Element | null): any {
if (!node) return null;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const tile = (node as any).cmTile;
return tile?.root?.view ?? tile?.view ?? null;
}
const view = findView(el.querySelector(".cm-content")) ?? findView(el.querySelector(".cm-editor"));
if (!view) return false;
return view.state.doc.toString().includes(text.substring(0, 20));
}, query);
Expand All @@ -148,8 +154,9 @@
return;
}

// Strategy 2: Keyboard fallback (for environments where cmView is not accessible)
if (dispatched === "no-view") {
// Strategy 2: Keyboard fallback (for environments where cmView is not accessible
// or when the view is temporarily readonly during initialization)
if (dispatched === "no-view" || dispatched === "readonly") {
await expect(cm).toHaveAttribute("contenteditable", "true", { timeout: 2_000 });
await cm.click();
await page.keyboard.press("ControlOrMeta+a");
Expand All @@ -162,9 +169,9 @@
return;
}

// Retry-worthy states: no-editor, readonly, dispatch-failed
// Retry-worthy states: no-editor, dispatch-failed
throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`);
}).toPass({ timeout: 20_000 });

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/widgets.spec.ts:44:7 › Widget creation › should add a table widget

6) [chromium] › e2e/widgets.spec.ts:44:7 › Widget creation › should add a table widget ─────────── Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/widgets.spec.ts:54:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/styling-rules.spec.ts:170:7 › Styling rules — table widget › should save widget with styling and verify colored rows

5) [chromium] › e2e/styling-rules.spec.ts:170:7 › Styling rules — table widget › should save widget with styling and verify colored rows Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at addTableAndGoToAdvanced (/home/runner/work/neoboard/neoboard/app/e2e/styling-rules.spec.ts:45:23) at /home/runner/work/neoboard/neoboard/app/e2e/styling-rules.spec.ts:172:20

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/parameters.spec.ts:47:7 › Parameter selectors › should create a widget with click action and verify action rules UI

4) [chromium] › e2e/parameters.spec.ts:47:7 › Parameter selectors › should create a widget with click action and verify action rules UI Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/parameters.spec.ts:58:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/new-charts.spec.ts:31:7 › New chart types — creation flow › should create a Gauge widget

3) [chromium] › e2e/new-charts.spec.ts:31:7 › New chart types — creation flow › should create a Gauge widget Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/new-charts.spec.ts:46:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/design-system.spec.ts:125:7 › Design system — Deep Ocean palette & accessibility › toggling Colorblind Mode re-renders chart (no crash)

2) [chromium] › e2e/design-system.spec.ts:125:7 › Design system — Deep Ocean palette & accessibility › toggling Colorblind Mode re-renders chart (no crash) Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at addBarChartWithData (/home/runner/work/neoboard/neoboard/app/e2e/design-system.spec.ts:40:23) at /home/runner/work/neoboard/neoboard/app/e2e/design-system.spec.ts:129:20

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/charts.spec.ts:244:7 › PostgreSQL connector → chart visualization › PostgreSQL bar chart — fetches data and renders canvas

1) [chromium] › e2e/charts.spec.ts:244:7 › PostgreSQL connector → chart visualization › PostgreSQL bar chart — fetches data and renders canvas Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/charts.spec.ts:252:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/widgets.spec.ts:22:7 › Widget creation › should complete widget creation flow

6) [chromium] › e2e/widgets.spec.ts:22:7 › Widget creation › should complete widget creation flow Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/widgets.spec.ts:30:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/styling-rules.spec.ts:231:7 › Styling rules — bar chart › should enable styling for bar chart

4) [chromium] › e2e/styling-rules.spec.ts:231:7 › Styling rules — bar chart › should enable styling for bar chart Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/styling-rules.spec.ts:242:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/charts.spec.ts:1086:7 › Column mapping overlay › changing axis mapping updates chart

3) [chromium] › e2e/charts.spec.ts:1086:7 › Column mapping overlay › changing axis mapping updates chart Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/charts.spec.ts:1099:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/parameters.spec.ts:47:7 › Parameter selectors › should create a widget with click action and verify action rules UI

1) [chromium] › e2e/parameters.spec.ts:47:7 › Parameter selectors › should create a widget with click action and verify action rules UI Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/parameters.spec.ts:58:23

Check failure on line 174 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/parameters.spec.ts:47:7 › Parameter selectors › should create a widget with click action and verify action rules UI

1) [chromium] › e2e/parameters.spec.ts:47:7 › Parameter selectors › should create a widget with click action and verify action rules UI Error: Keyboard fallback: text not inserted Call Log: - Timeout 20000ms exceeded while waiting on the predicate at fixtures.ts:174 172 | // Retry-worthy states: no-editor, dispatch-failed 173 | throw new Error(`CM6 dispatch returned "${dispatched}" — retrying`); > 174 | }).toPass({ timeout: 20_000 }); | ^ 175 | } 176 | 177 | /** at typeInEditor (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:174:6) at /home/runner/work/neoboard/neoboard/app/e2e/parameters.spec.ts:58:23
}

/**
Expand All @@ -185,7 +192,7 @@
return {
id,
cleanup: async () => {
await request.delete(`/api/dashboards/${id}`);

Check failure on line 195 in app/e2e/fixtures.ts

View workflow job for this annotation

GitHub Actions / E2E Tests (Playwright)

[chromium] › e2e/widget-lab.spec.ts:463:9 › Widget Lab › Widget Lab editor — create and edit templates › editing a template does not affect widgets already on dashboards

5) [chromium] › e2e/widget-lab.spec.ts:463:9 › Widget Lab › Widget Lab editor — create and edit templates › editing a template does not affect widgets already on dashboards Error: apiRequestContext.delete: read ECONNRESET Call log: - → DELETE http://localhost:3100/api/dashboards/d491df26-684b-4e27-b5c8-a40be6fbba52 - user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.7632.6 Safari/537.36 - accept: */* - accept-encoding: gzip,deflate,br - cookie: authjs.csrf-token=df450f86d52ac934dd81de4278f7ff2949cbc429a1188f687fb387b217714268%7Cfe28ecaa1c7b89090df373bf581cd0bc29a86b592b459f3bcee548e9c2960565; authjs.callback-url=http%3A%2F%2Flocalhost%3A3100%2Flogin; authjs.session-token=*** at fixtures.ts:195 193 | id, 194 | cleanup: async () => { > 195 | await request.delete(`/api/dashboards/${id}`); | ^ 196 | }, 197 | }; 198 | } at cleanup (/home/runner/work/neoboard/neoboard/app/e2e/fixtures.ts:195:27) at /home/runner/work/neoboard/neoboard/app/e2e/widget-lab.spec.ts:547:15
},
};
}
Loading
Loading