thatcher 1.0.81 → 1.0.82

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/ui/styles2.css +25 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "thatcher",
3
- "version": "1.0.81",
3
+ "version": "1.0.82",
4
4
  "description": "A config-driven application framework for building data-intensive web apps without code.",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -354,6 +354,31 @@ html, body { overflow-x: hidden; max-width: 100%; }
354
354
  .form-hint { font-size: 0.75rem; }
355
355
  }
356
356
 
357
+ /* Board/Kanban view: unstyled by default (relied on browser block/flow layout
358
+ accidentally being usable on wide desktop screens) -- explicit rules needed
359
+ so it doesn't collapse into an unreadable single column of stacked cards on
360
+ any width. */
361
+ .board-view { display: flex; gap: 12px; align-items: flex-start; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 8px; }
362
+ .board-column { flex: 0 0 280px; min-width: 280px; background: var(--color-bg, #f8fafc); border-radius: var(--radius, 8px); display: flex; flex-direction: column; max-height: 80vh; }
363
+ .board-column-header { display: flex; justify-content: space-between; align-items: center; padding: 12px; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: 0.5px; color: var(--color-text-muted); }
364
+ .board-column-count { background: var(--color-border, #e2e8f0); border-radius: 9999px; padding: 2px 8px; font-size: 12px; }
365
+ .board-column-body { flex: 1; overflow-y: auto; padding: 0 8px 8px; display: flex; flex-direction: column; gap: 8px; }
366
+ .board-column-empty { padding: 16px; text-align: center; color: var(--color-text-muted); font-size: 13px; }
367
+ .board-card { background: var(--color-surface, #fff); border: 1px solid var(--color-border, #e2e8f0); border-radius: 6px; padding: 10px 12px; cursor: pointer; }
368
+ .board-card-title { font-size: 14px; font-weight: 500; }
369
+ .board-card-meta { margin-top: 4px; font-size: 12px; color: var(--color-text-muted); }
370
+ .board-empty-state { padding: 24px; text-align: center; color: var(--color-text-muted); }
371
+
372
+ /* Kanban stays horizontally-scrolling (not stacked) on narrow viewports --
373
+ stacking would hide every column but the first, losing the at-a-glance
374
+ status overview that is the entire point of a board view. Columns shrink
375
+ slightly and snap-scroll for a touch-friendly swipe between stages. */
376
+ @media (max-width: 768px) {
377
+ .board-view { scroll-snap-type: x mandatory; margin-left: calc(-1 * var(--page-gutter)); margin-right: calc(-1 * var(--page-gutter)); padding-left: var(--page-gutter); padding-right: var(--page-gutter); }
378
+ .board-column { flex-basis: 85vw; min-width: 240px; scroll-snap-align: start; }
379
+ .board-card { min-height: 44px; }
380
+ }
381
+
357
382
  /* Tablet */
358
383
  @media (min-width: 769px) and (max-width: 1023px) {
359
384
  :root { --page-gutter: 1.25rem; }