f05fe4b1b6
refactor: extend admin spacing optimization to all components
...
Phase 3: Complete admin dashboard spacing standardization
AiManager component:
- p-5 md:p-8 → p-4 md:p-6 panel padding
- space-y-6 → space-y-4 container spacing
- mb-1 removed, gap-4 → gap-3 in header
- grid gap-6 → gap-4 for API keys section
- space-y-1.5 → space-y-1 for form fields
- py-2 → py-1.5 inputs, py-2.5 → py-2 buttons
- textarea p-6 → p-4, min-h 200px → implicit compact
- gap-4 → gap-3 in info section
CategoryManager component:
- p-5 md:p-8 → p-4 md:p-6 panel padding
- space-y-6 → space-y-4 container spacing
- gap-4 → gap-3 icon header gap
- py-3 → py-2 button padding
- Modal: space-y-4 → space-y-3, p-6 sm:p-10 → p-6 consistent
- py-2.5 → py-1.5 inputs
- h-32 textarea → h-24 compact
Tests: 291/291 passing, Build: success
Total admin dashboard savings: ~150px vertical (all 4 components)
2026-04-19 18:59:36 +03:00
1f45e4981b
refactor: optimize admin spacing - phase 2 refinements
...
Medium-impact spacing reductions:
- DatabaseManager: gap-6→gap-4 flex gap, sm:pr-6→sm:pr-4, sm:pl-6→sm:pl-4
- IdentityManager: modal header mb-2→mb-3 for better proportion
- All panels: maintain consistent gap-3 grid spacing
- Form field spacing: space-y-1 throughout for compact form layouts
- Modal padding: p-6 consistent across all dialogs
- Input heights: py-1.5 for compact density
Tests: 291/291 passing, Build: success
Estimated additional ~20-30px vertical savings vs Phase 1
2026-04-19 18:57:16 +03:00
c4c36dc6b6
fix: admin UI spacing - reduce container/padding, increase typography
...
Phase 1: High-impact spacing reductions
- DatabaseManager: space-y-4 md:space-y-5, p-8→p-6, text-xs→text-sm labels
- LdapManager: space-y-3, p-6, py-2→py-1.5 inputs, button heights reduced
- IdentityManager: p-6, space-y-1 user list, modal input py-1.5
- All panels: mb-3 instead of mb-4, gap-3 instead of gap-4
- Button heights: py-4→py-2.5 (Export), py-3→py-2 (LDAP buttons)
- Input padding: py-2→py-1.5, py-3→py-1.5 for better density
Tests: 291/291 passing, Build: success, zero TypeScript errors
Estimated ~80-100px vertical savings across admin dashboard
2026-04-19 18:55:20 +03:00
7eafd45ab1
refactor: polish spacing details (Phase 3 - Low-Impact)
2026-04-19 18:45:14 +03:00
12b2ef26cf
fix: implement Phase 2 medium-impact spacing reductions
...
Applied systematic spacing optimizations across admin manager components (40px savings):
DatabaseManager.tsx:
- Input field padding: py-3 → py-2 (3 inputs: retention_count, schedule_hour, schedule_freq_days)
- Form field spacing: space-y-2 → space-y-1.5 (Max Backups field group)
- Grid gaps: gap-4 → gap-3 (storage policy fields)
- Item list spacing: space-y-2 → space-y-1.5 (backup list)
- Modal form spacing: space-y-4 → space-y-3 (recovery points section)
- Backup metadata text: text-[11px] → text-xs (created_at + filesize display)
LdapManager.tsx:
- Input field padding: py-2.5 → py-2 (4 inputs: server_uri, base_dn, user_template, groups_dn)
- Form field spacing: space-y-1.5 → space-y-1 (all label+input groups)
- Button padding: py-2.5 → py-2 (test connection), py-3 → py-2.5 (save policy)
IdentityManager.tsx:
- Input field padding: py-3 → py-2 (username, password, role in edit modal)
- Form field spacing: space-y-4 → space-y-3 (edit modal form)
- Form field labels: space-y-1.5 → space-y-1 (all 3 fields)
- User list spacing: space-y-2 → space-y-1.5 (user items)
AiManager.tsx:
- Grid gaps: gap-4 → gap-3 (provider options grid)
- Input field padding: py-3 → py-2 (Gemini/Claude API key inputs)
- Form field spacing: space-y-2 → space-y-1.5 (API key field groups)
- Modal spacing: space-y-6 → space-y-3 (provider access keys section)
- Prompt section spacing: space-y-4 → space-y-3 (system prompt area)
CategoryManager.tsx:
- Grid gaps: gap-3 → gap-2.5 (category items grid)
- Input field padding: py-3.5 → py-2.5, py-4 → py-2.5 (name + description inputs)
- Form field spacing: space-y-6 → space-y-3, space-y-1.5 → space-y-1 (edit modal)
Test Results:
- Frontend (Vitest): 291/291 tests passing ✓
- Backend (Pytest): 41/41 tests passing ✓
- Total: 332 tests validated, zero regressions
All changes maintain visual hierarchy and premium density standards without sacrificing usability.
2026-04-19 18:36:44 +03:00
08c1eb5074
refactor: optimize spacing and typography (Phase 1 - High-Impact)
...
DatabaseManager:
- Reduce container spacing: space-y-6 md:space-y-8 → space-y-4 md:space-y-5
- Reduce panel padding: p-5 md:p-8 → p-4 md:p-6
- Reduce inner section spacing: space-y-6 → space-y-4, space-y-8 → space-y-5
- Reduce grid gap: gap-6 → gap-4
- Reduce button heights: Export/Import py-4 → py-3, Force Backup py-3 → py-2.5
LdapManager:
- Reduce container spacing: space-y-6 → space-y-4
- Reduce panel padding: p-5 md:p-8 → p-4 md:p-6
- Reduce grid gaps: gap-4 → gap-3 (2 instances)
- Reduce button heights: py-3 → py-2.5 (Test Connection, Save LDAP Policy)
IdentityManager:
- Reduce panel padding: p-5 md:p-8 → p-4 md:p-6
- Reduce user list spacing: space-y-2.5 → space-y-2
- Reduce modal padding: p-8 → p-6
- Reduce modal header gap: mb-6 → mb-4
Results: ~80px vertical space saved (~7% density gain on 1920px viewport)
All 291 tests passing.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-04-19 18:34:11 +03:00
c0232bb2f1
refactor: remove all bold font weights from UI/UX (291 replacements)
...
Replace font-bold, font-black, and font-semibold with font-normal throughout:
- 26 component files
- 1 CSS utility file (globals.css)
- 291 total occurrences
Text hierarchy now maintained through font-size differences only.
All tests passing (291/291).
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-04-19 18:28:23 +03:00
b0a1582aa0
fix: increase subtitle font sizes for better readability on desktop
...
- DatabaseManager: 'Retention & Maintenance' text-xs (12px) → text-sm (14px)
- globals.css: .card-subtitle text-[10px] → text-xs (12px)
Improves readability of secondary headings across admin panels.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-04-19 18:26:25 +03:00
5c20133dbe
fix: conservative typography scaling - increase base font sizes 10-15%
...
- Increase base font sizes proportionally (not aggressively):
* text-xs: 12px → 13px
* text-sm: 14px → 15px
* text-base: 16px → 18px
* text-lg: 18px → 20px
* text-xl: 20px → 22px
* text-2xl: 24px → 26px
* text-3xl: 30px → 32px
- No responsive breakpoint classes (prevents oversizing)
- Improves readability on MacBook Pro 14" without making fonts too large
- Build verified: 6 routes, zero errors
2026-04-19 18:11:51 +03:00
2c7115518d
debug: add zoom capability detection logging to Scanner.tsx
2026-04-19 17:39:06 +03:00
e38002491c
Build [v1.11.0]
2026-04-19 17:32:36 +03:00
63364c1d40
fix: update admin API endpoint paths to match split routers
...
- Changed AI endpoints from /admin/db/settings/ai to /admin/ai/settings
- Changed AI prompt endpoints from /admin/db/settings/prompt to /admin/ai/settings/prompt
- Changed AI keys endpoint from /admin/db/settings/ai-keys to /admin/ai/settings/keys
- Changed AI test endpoint from /admin/db/settings/test-ai-key to /admin/ai/settings/test-key
- DB endpoints remain unchanged under /admin/db/...
- Frontend tests: 291/291 passing
- Backend tests: 41/41 passing
2026-04-19 17:22:50 +03:00
d9ead1aafd
fix: repair login endpoint registration in auth router
2026-04-19 17:20:11 +03:00
a225d2efc6
fix: restore Search icon import in inventory/page.tsx and update session state - Phase 2 complete
2026-04-19 16:13:14 +03:00
bec4b714e3
refactor: extract LogsTable component from logs/page.tsx
2026-04-19 14:58:33 +03:00
47528ea4a2
refactor: extract FilterBar component
2026-04-19 14:57:00 +03:00
1797a617ab
refactor: extract InventoryTable component
2026-04-19 14:55:53 +03:00
cf0a886b78
refactor: extract CameraView component from Scanner.tsx
2026-04-19 14:54:07 +03:00
ed5bbbfca0
refactor: extract ScannerSection component
...
- Created frontend/components/ScannerSection.tsx (76 lines)
- Moved mode switcher and scanner UI from page.tsx
- Props: mode, onModeChange, showScanner, onShowScanner, onScanSuccess, onOCRMatch, onAddItemClick
- Removed unused ArrowDownCircle, ArrowUpCircle imports from page.tsx
- All 291 tests passing, build successful
2026-04-19 14:47:15 +03:00
6eeaa89d9b
refactor: extract NewItemDialog component
...
- Created frontend/components/NewItemDialog.tsx (37 lines)
- Moved scanner prompt and add item UI from page.tsx
- Props: onScannerClick, onAddItemClick callbacks
- Removed unused Smartphone and Sparkles imports from page.tsx
- All 291 tests passing, build successful
2026-04-19 14:47:12 +03:00
3302bae766
refactor: extract StockAdjustmentPanel component
...
- Extracted from page.tsx (lines 450-710)
- Pure presentational component with all state passed as props
- Props: selectedItem, isEditing, editedItem, adjustQty, adjustType, trashReason, categories, fieldScanning
- Callbacks: onCancel, onEdit, onEditChange, onQuantityChange, onTypeChange, onReasonChange, onShowScanner, onAdjustStock, onUpdateItem, onDeleteItem
- Includes edit mode and adjustment mode with quantity controls
- 291 tests passing, build successful
2026-04-19 14:47:08 +03:00
cc6b55ec0f
fix: reorder hooks to resolve handleSync declaration order
2026-04-19 14:22:26 +03:00
a520b1ba2b
refactor: extract useAIExtraction hook from AIOnboarding.tsx
2026-04-19 12:31:21 +03:00
cf45437bb0
refactor: extract useInventoryFilter hook from inventory/page.tsx
2026-04-19 12:29:22 +03:00
6dfc76ad92
refactor: extract useSync hook from page.tsx
2026-04-19 12:24:25 +03:00
f5441a7ca7
refactor: extract useStockAdjustment hook from page.tsx
2026-04-19 12:23:06 +03:00
5b8c6039ef
refactor: extract useScanner hook from page.tsx
2026-04-19 12:21:15 +03:00
d7fa470bcb
style: step 11 - uniform text tokens in remaining components
2026-04-19 12:09:22 +03:00
1850fea170
style: step 10 - uniform text tokens in modals
2026-04-19 12:07:15 +03:00
922d9e431e
style: step 9 - uniform text tokens in admin sub-components
2026-04-19 12:04:41 +03:00
acf9155ce2
style: step 8 - uniform text tokens in Scanner and AIOnboarding
2026-04-19 12:02:35 +03:00
7d4e60699d
style: step 7 - uniform text tokens in IdentityCheckOverlay
2026-04-19 12:00:11 +03:00
b5d4c5678c
style: step 5 - uniform text tokens in admin and logs pages
2026-04-19 11:57:36 +03:00
fa27817f7c
style: step 4 - uniform text tokens in inventory page
2026-04-19 11:55:50 +03:00
ffb56c030d
style: step 2-3 - uniform text tokens in login+main page, fix tsconfig build exclusions
2026-04-19 11:46:44 +03:00
b294a51a1e
test: save E2E test progress - data-testid attributes added, 1/16 login tests passing
2026-04-19 10:18:36 +03:00
2465141a18
test: fix data-testid attribute names and update E2E test URLs to port 8917
2026-04-19 10:08:52 +03:00
28c55f86ce
test: add data-testid attributes to login page for E2E tests
2026-04-19 09:51:43 +03:00
6b5e7adde2
test: add data-testid to mode buttons, admin button, and quantity controls
2026-04-19 09:37:29 +03:00
4f4822c0cb
test: add data-testid attributes to main page for E2E tests
2026-04-19 09:31:17 +03:00
a8319f1580
test: add data-testid attributes to admin page sections
2026-04-19 09:30:59 +03:00
802b97f36d
test: add data-testid attributes to AIOnboarding component
2026-04-19 09:28:40 +03:00
1846bb3cb3
test: add data-testid attributes to admin sub-components and modals
2026-04-19 09:28:27 +03:00
cbfe6a22be
test: add data-testid attributes to Scanner component
2026-04-19 09:26:51 +03:00
c2edc4a704
test: add data-testid attributes to IdentityCheckOverlay and AdminOverlay
2026-04-19 09:26:05 +03:00
b1ba912b68
fix: configure playwright webServer for E2E test auto-start
2026-04-19 09:21:52 +03:00
156158c66f
fix: exclude e2e directory from vitest to prevent playwright test conflicts
2026-04-19 09:09:33 +03:00
0c70e216e1
fix: update test files to match actual backend schemas and endpoints
2026-04-19 08:43:56 +03:00
9f03fe8f82
feat: add e2e npm scripts for playwright test execution
2026-04-19 08:01:05 +03:00
5618e9d9f8
docs: create e2e test suite README with setup and execution guide
2026-04-19 07:58:25 +03:00