style home page with shell and card list

apply the new design system to the home page: wrap content in a
container/stack shell with a site-header for the logout and today
links, render the texts list as a vertical stack of cards via the
list-cards primitive, and dress the create plan modal with the new
modal/btn classes. js renders each text as an li.card with the
create-plan button preserved so existing cypress hooks (li,
.create-plan, .plan-name, .save-plan, .cancel-plan, ids) keep
matching.
This commit is contained in:
Yisroel Baum 2026-05-01 11:25:45 +03:00
parent b259a1243e
commit 807458ebe8
Signed by: yisroelbaum
GPG key ID: 0FA60884F75520A9
2 changed files with 36 additions and 21 deletions

View file

@ -9,9 +9,11 @@ document.addEventListener('DOMContentLoaded', () => {
const texts = await response.json(); const texts = await response.json();
textsList.innerHTML = texts textsList.innerHTML = texts
.map(text => .map(text =>
'<li>' + text.name + '<li class="card cluster cluster-between">' +
' <button class="create-plan" data-text-id="' + '<span class="text-name">' + text.name + '</span>' +
text.id + '">Create plan</button></li>' '<button class="create-plan btn btn-primary"' +
' data-text-id="' + text.id + '">Create plan</button>' +
'</li>'
) )
.join(''); .join('');
} }

View file

@ -7,24 +7,37 @@
<link rel="stylesheet" href="/css/app.css"> <link rel="stylesheet" href="/css/app.css">
</head> </head>
<body> <body>
<h1>Home</h1> <header class="site-header">
<button id="logout">Logout</button> <div class="site-header-inner">
<a href="/today">Today's schedule</a> <h1>Home</h1>
<ul id="texts-list"> <div class="cluster">
</ul> <a class="btn btn-secondary" href="/today">
<div id="create-plan-modal" hidden> Today's schedule
<h2>Create plan</h2> </a>
<label>Name <button id="logout" class="btn btn-danger">Logout</button>
<input class="plan-name" type="text" /> </div>
</label> </div>
<label>Start date </header>
<input class="plan-date-start" type="date" /> <main class="container stack-lg">
</label> <ul id="texts-list" class="list-cards"></ul>
<label>End date </main>
<input class="plan-date-end" type="date" /> <div id="create-plan-modal" class="modal" hidden>
</label> <div class="modal-content stack">
<button class="save-plan">Save</button> <h2>Create plan</h2>
<button class="cancel-plan">Cancel</button> <label>Name
<input class="plan-name" type="text" />
</label>
<label>Start date
<input class="plan-date-start" type="date" />
</label>
<label>End date
<input class="plan-date-end" type="date" />
</label>
<div class="cluster cluster-end">
<button class="cancel-plan btn btn-secondary">Cancel</button>
<button class="save-plan btn btn-primary">Save</button>
</div>
</div>
</div> </div>
<script src="/js/auth.js"></script> <script src="/js/auth.js"></script>
<script src="/js/home.js"></script> <script src="/js/home.js"></script>