90 Commits

Author SHA1 Message Date
lizerk
cbe7f22735 Add attendance comment notifications 2026-04-24 17:23:03 +03:00
lizerk
da218db805 Add attendance auto sync settings 2026-04-22 18:26:43 +03:00
lizerk
8e11b7fbba Improve attendance reporting and event details 2026-04-22 18:09:09 +03:00
lizerk
0ec0e1c75b Убрал упоминания LogStorm/LogShtorm из frontend-слоя EUSRR 2026-04-22 14:43:57 +03:00
lizerk
6fa63eaab6 Add employee work schedules for attendance analysis 2026-04-22 12:47:31 +03:00
lizerk
625468090b Add persisted LogStorm attendance integration 2026-04-22 10:21:44 +03:00
lizerk
78e758aedf Add LogStorm attendance UI 2026-04-21 15:56:10 +03:00
lizerk
8a65498b56 Add request statistics panel to requests page 2026-04-20 12:40:04 +03:00
lizerk
824728019b Add employee request statistics panel 2026-04-20 12:25:13 +03:00
lizerk
a46f040801 fix: refine pwa notifications and brand name 2026-04-16 21:17:51 +03:00
lizerk
2e4975a901 feat: add installable pwa baseline 2026-04-16 20:04:21 +03:00
lizerk
31d779bee3 refactor: unify calendar frontend state and event loading 2026-04-16 19:12:36 +03:00
lizerk
78b8615871 feat: refine department calendar behavior and UI 2026-04-16 17:22:06 +03:00
lizerk
5700b53f13 feat: add department calendar bindings and cleanup dept permissions 2026-04-16 15:18:43 +03:00
lizerk
d412d6634b фикс отделов и сотрудников 2026-04-15 02:32:01 +03:00
lizerk
1296ec9021 Fix employee sorting and department counters 2026-04-15 02:12:32 +03:00
lizerk
35a7250183 refactor(ui): polish chat, requests, and profile actions 2026-04-14 23:11:32 +03:00
lizerk
70d2c55348 refactor(ui): polish department feed and mobile nav placement 2026-04-14 19:11:17 +03:00
lizerk
beb4b8b86b refactor(departments): unify department feed and discussion flows 2026-04-14 16:14:52 +03:00
lizerk
37927b0ecf refactor(frontend): add department action menu 2026-04-13 23:20:20 +03:00
lizerk
3b855e2ef1 refactor(frontend): split department showcase and management 2026-04-13 22:25:30 +03:00
lizerk
28d61b842c refactor(frontend): build department management screen 2026-04-13 17:52:41 +03:00
lizerk
331dc1433a refactor(frontend): decompose requests screen 2026-04-13 12:56:00 +03:00
lizerk
bac7c65062 feat(equipment): create categories inline in modal 2026-04-13 04:14:10 +03:00
lizerk
993e26e8ed fix(notifications): normalize action links and request timestamps 2026-04-13 04:02:24 +03:00
lizerk
44da9c46c1 feat(ui): unify action menus and procurement comments 2026-04-12 20:07:34 +03:00
lizerk
ae7e1daf89 refactor(frontend): align profile, notifications and procurement flows 2026-04-12 18:02:47 +03:00
lizerk
e3ba6ea925 refactor(ui): stabilize equipment deep links and qr flow 2026-04-12 16:09:38 +03:00
lizerk
b7b09740cb refactor(frontend): align employee profile surfaces 2026-04-12 06:59:42 +03:00
lizerk
c56fdbb915 feat(frontend): align employee profile flows 2026-04-12 06:27:18 +03:00
lizerk
06bcd0c862 feat(frontend): refine profile workspace 2026-04-12 05:47:35 +03:00
lizerk
097a3015e8 fix(profile): stabilize directory login and expand ldap coverage 2026-04-12 04:13:32 +03:00
lizerk
f5a908e443 feat(auth): restore password reset flow and polish auth UI 2026-04-12 02:05:13 +03:00
lizerk
7dcf84dcd1 feat(auth): add session management and settings integration 2026-04-11 23:31:14 +03:00
lizerk
db05b4fcdb refactor(frontend): align calendar and list UI 2026-04-11 20:44:16 +03:00
lizerk
601f0d58d8 chore(frontend): checkpoint current theme polish state 2026-04-11 19:30:22 +03:00
lizerk
219a93215f Improve deleted reply preview context 2026-04-03 21:01:10 +03:00
lizerk
71d0a6092c Refine chat reply preview behavior 2026-04-03 20:53:52 +03:00
lizerk
9b23f480c2 Refine search routing and deep links 2026-04-03 20:30:29 +03:00
lizerk
111ddb2bfd Refactor modals and add chat message search 2026-04-03 19:53:31 +03:00
lizerk
3d99226296 Fix chat list pagination in frontend 2026-04-03 14:25:41 +03:00
lizerk
c5f53cca15 Improve chat delivery states and read details 2026-04-03 11:10:14 +03:00
lizerk
e3e195c89d Add user detail components and hook 2026-04-02 10:22:46 +03:00
lizerk
4b179fe801 Sync active chat on shared websocket 2026-04-02 10:20:46 +03:00
lizerk
a0cda94107 refactor frontend api facade 2026-04-01 20:56:08 +03:00
lizerk
fac1b54e63 Главное изменение этой итерации: orchestration страницы оборудования вынесен из page.tsx в новый hook useEquipmentPage.ts. В hook теперь живут загрузка данных, фильтры, пагинация, create/edit, операции перевода/списания/обслуживания, комментарии, загрузка деталей строки и вся производная логика. Сама страница стала значительно чище и ближе к роли render-слоя, без нетипичной архитектуры и без изменения UI-поведения. 2026-04-01 19:03:04 +03:00
lizerk
0a80eb86cf refactor: extract shared utils/components, split requests page data into hook
- Create frontend/src/lib/shared/ with formatters, userUtils, paginationUtils
  (formatDate, formatMoney, displayUserName, userProfileLink, extractNextPage, loadAllPages)
- Create frontend/src/components/shared/SearchableSelect.tsx
  (SearchableSelectSingle + SearchableSelectMulti, replaces 3 inline copies)
- Extract requests page data/state/actions into useRequestsPage hook
  (requests/page.tsx: 1580 → ~280 lines of pure JSX)
- Replace duplicated helpers in equipment/page.tsx with shared imports
  (~80 lines removed: formatDate, formatMoney, displayUserName, extractNextPage,
   loadAllPages, inline SearchableSelectSingle)
- Replace duplicated helpers in procurement/page.tsx with shared imports
  (~90 lines removed: fmt, money, displayUserName, extractNextPage,
   inline departments loader, inline SearchableSelectSingle)
- 609 backend tests pass, TypeScript typecheck clean, ESLint clean
2026-04-01 16:21:02 +03:00
lizerk
3ca4d108b6 refactor: split monolithic api.ts into domain modules, extract AppShell calendar/mobile concerns
- Split frontend/src/lib/api.ts (2042 lines) into 12 focused domain modules:
  client.ts (base HTTP/auth), calendar.ts, documents.ts, employees.ts,
  equipment.ts, feed.ts, messages.ts, notifications.ts, procurement.ts,
  requests.ts, utils.ts, and index.ts barrel that preserves all existing imports
- Extract calendar modal state from AppShell into useCalendarModals hook
- Extract CalendarModals and MobileDrawers into components/layout/
- AppShell: 745 → 460 lines, focused on layout concerns only
- Fix setState-in-effect lint error with startTransition pattern
- Stabilize notifications memo to prevent unnecessary re-renders
- Fix flaky WS test: handle CancelledError in channels-testing cleanup
- All 609 backend tests pass, TypeScript typecheck clean, ESLint clean
2026-04-01 15:56:10 +03:00
lizerk
a8ec339565 Refactor chat settings and tighten frontend types 2026-04-01 15:31:19 +03:00
lizerk
613248905e Refactor realtime sync and message UI 2026-04-01 15:20:27 +03:00