test(e2e): golden-master Playwright net for the Platform refactor
Locks the five flows the refactor must not break (feed, channel, player, settings, nav) so later sprints can prove they changed nothing. Adds a thin data-testid layer and a dedicated seeded non-demo account; the suite runs on the baked :8080 stack (authoritative) or :5173. No product-behaviour change.
This commit is contained in:
@@ -44,8 +44,8 @@ export function DraftSaveBar({
|
||||
// mask) scopes this z-40 and fades the bar's bottom edge. The inline variant is in normal flow
|
||||
// and stays put.
|
||||
const bar = (
|
||||
<div className={wrap}>
|
||||
<span className="text-sm text-muted">
|
||||
<div data-testid="draft-save-bar" className={wrap}>
|
||||
<span data-testid="draft-save-status" data-state={state} className="text-sm text-muted">
|
||||
{state === "saved" ? (
|
||||
<span className="text-emerald-500 inline-flex items-center gap-1.5">
|
||||
<Check className="w-4 h-4" />
|
||||
@@ -59,6 +59,7 @@ export function DraftSaveBar({
|
||||
</span>
|
||||
<div className="flex items-center gap-2">
|
||||
<button
|
||||
data-testid="draft-discard"
|
||||
onClick={onDiscard}
|
||||
disabled={saving || !dirty}
|
||||
className="glass-card glass-hover flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-sm disabled:opacity-40 transition"
|
||||
@@ -67,6 +68,7 @@ export function DraftSaveBar({
|
||||
{labels.discard}
|
||||
</button>
|
||||
<button
|
||||
data-testid="draft-save"
|
||||
onClick={onSave}
|
||||
disabled={saving || !dirty}
|
||||
className="flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-sm bg-accent text-accent-fg font-medium shadow-md shadow-accent/20 disabled:opacity-40 transition"
|
||||
|
||||
Reference in New Issue
Block a user