cfadb2adbe
feat: migrate from react-router-dom to @tanstack/react-router (code-first)
...
- Create code-first route tree in src/app/routing/routeTree.tsx
- Replace ProtectedRoute with beforeLoad auth guards
- Add useSearchParamsCompat for URLSearchParams access
- Update App.tsx, layouts, and all page/widget imports
- Add frontend tooling: biome, prettier, env config
- Update all tests for TanStack Router compatibility
- Remove react-router-dom dependency, @tanstack/router-plugin
- Consolidate biome config at root level
2026-06-23 06:51:48 +03:00
6d3601a8f4
docs: add plan, tasks, research, and ADRs for frontend infrastructure tooling
2026-06-23 06:07:23 +03:00
203b7cbf20
docs: add spec for frontend infrastructure tooling
2026-06-23 06:04:25 +03:00
462212c95e
docs: update apps/docs — fix inconsistencies, add broker events diagrams
CI / ci (pull_request) Failing after 3m18s
CI / ci (push) Failing after 3m16s
2026-06-22 22:15:51 +03:00
62a8cffc96
fix: resolve unhandled promise rejection in broker events test; update docs: roadmap and epics status
2026-06-22 22:02:43 +03:00
f7dc338719
feat: add actual payouts and filter-as-draft UX to broker events calendar
...
CI / ci (pull_request) Failing after 3m9s
CI / ci (push) Failing after 3m9s
- Backend: actual events from T-Bank operations, types filter, split forecast/actual summary
- Frontend: draft/applied filters with multi-select types, status column (Факт/Прогноз), green actual amounts
- Docs: update spec, plan, tasks
2026-06-22 21:48:03 +03:00
c71ba090ad
test: remove unused test
CI / ci (push) Failing after 3m15s
2026-06-22 20:21:20 +03:00
6f4b46c964
fix: flatten queryKey to primitives for reliable TanStack Query key comparison
CI / ci (pull_request) Failing after 3m12s
CI / ci (push) Failing after 2m53s
2026-06-22 19:56:53 +03:00
0ddd9b5f80
feat: add date range selection to broker events page
2026-06-22 06:58:59 +03:00
3027b4f0f0
docs: update plan and tasks for broker events date range selection
2026-06-22 06:56:18 +03:00
595d059151
feat: add broker events calendar and payout projections for T-Bank accounts
CI / ci (push) Failing after 3m1s
2026-06-22 06:41:37 +03:00
7b1d649853
docs: add broker events and payouts feature docs
CI / ci (pull_request) Failing after 2m48s
CI / ci (push) Failing after 2m44s
2026-06-21 21:22:56 +03:00
723250f0b2
docs: add table migration planning docs
CI / ci (push) Has started running
2026-06-21 21:14:30 +03:00
6c768ef6a9
docs: mark pilot-migration and broker-accounts-page-migration as implemented
CI / ci (pull_request) Failing after 3m9s
CI / ci (push) Failing after 3m8s
2026-06-21 20:51:46 +03:00
5ea1fcfe14
docs: mark broker-account-sections-ds-migration spec as implemented
2026-06-21 20:47:01 +03:00
1cabe2d71e
feat: migrate BrokerAllocationChart wrappers to design system
2026-06-21 20:38:01 +03:00
6debf66ac8
docs: mark broker account sections DS migration tasks complete
2026-06-21 20:31:52 +03:00
b41ee9fce4
chore: remove all orphaned broker-* CSS classes and variables
2026-06-21 20:30:39 +03:00
85fbfcdb0c
chore: remove SkeletonBlock from shared/ui exports
2026-06-21 20:24:03 +03:00
aa56c8a48d
chore: remove legacy SkeletonBlock component
2026-06-21 20:21:15 +03:00
8ad5f3c70c
feat: migrate BrokerPositionsPage and BrokerOperationsPage
2026-06-21 20:21:00 +03:00
e044b64de4
feat: migrate BrokerOperationsTable to design system
2026-06-21 18:59:58 +03:00
da656330b3
feat: migrate BrokerPositionTable, PositionTicker and TableSkeleton
2026-06-21 18:41:53 +03:00
9a94f4e3a9
chore: remove orphaned broker-overview CSS classes
2026-06-21 18:20:03 +03:00
a9a95dae69
feat: migrate BrokerOverviewSkeleton to design system Skeleton
2026-06-21 18:16:47 +03:00
ef97fd7136
feat: migrate BrokerSummary, BrokerAssetCards and BrokerAccountOverviewPage
2026-06-21 18:14:49 +03:00
3682f43aa6
feat: migrate BrokerAccountLayout to design system
2026-06-21 18:06:03 +03:00
bd27bba66d
docs(sdd): add broker account sections DS migration spec/plan/tasks
2026-06-21 18:00:39 +03:00
860bed159c
feat(frontend): migrate BrokerAccountsPage and widgets to design system
2026-06-21 17:42:05 +03:00
62a3389bfb
feat(frontend): migrate LoginPage, RegisterPage, ProfilePage to design system
...
- LoginPage: <input>/<label> → <TextField>, <button> → <Button>,
<h1> → <Heading>, inline error → <Text tone="negative">
- RegisterPage: same pattern, 4 fields, minLength via slotProps.htmlInput
- ProfilePage: <div> inline styles → <Surface>, <input> → <TextField>,
<button> → <Button>, email/role → <Text>+<Text variant="label">
- Tests: loading state checks updated from text change to
toBeDisabled() (DS Button keeps text, shows spinner)
- 264 lines removed, 134 net reduction
2026-06-21 17:23:04 +03:00
a8741cfeab
fix: resolve Vite MUI deep import by moving to barrel import + updated ESLint allowlist
...
- Changed @mui/material/Box deep imports to { Box } from '@mui/material'
- Updated no-restricted-imports to only restrict DS-covered components,
allowing Box/Stack/Grid for layout
2026-06-21 17:15:45 +03:00
bd33412691
feat(frontend): migrate HomePage and SearchBar to design system components
...
- HomePage: replace inline styles with <Heading>, <Text>, <Box>
- SearchBar: replace <input> with <TextField>, <ul> with <Surface>,
<li> with <Box>+<Text>+<Chip>, hardcoded hex with theme tokens
- ESLint no-restricted-imports respected via @mui/material/Box deep import
- Logic unchanged, all 111 tests pass
2026-06-21 16:57:19 +03:00
3534ec4f77
fix(design-system): add @storybook/test and @testing-library/dom deps
...
CI / ci (pull_request) Failing after 3m26s
CI / ci (push) Failing after 2m49s
- @storybook/test needed by stories (import { fn })
- npm overrides resolves peer dep conflict with storybook 10
- @testing-library/dom explicit dep (peer of @testing-library/react)
- 157 design-system tests + 111 frontend tests all pass
2026-06-21 15:49:59 +03:00
339845dd57
ci(design-system): enforce foundation quality gates
2026-06-21 15:40:21 +03:00
e6cf852741
docs(design-system): publish usage guidelines and ADR-016
2026-06-21 15:40:17 +03:00
53659a36b1
feat(design-system): add data components, form/page-state patterns, and frontend integration
...
- Inputs: TextField, Select, Checkbox
- Surfaces: Surface, Card, Chip, Badge
- Feedback: Alert, Dialog, Skeleton, Progress
- Financial data: DataTable, Metric, Money, PriceChange
- Form & page-state: FormField, FilterBar, EmptyState, ErrorState, LoadingState
- MUI CssVarsProvider -> ThemeProvider deprecation fix
- Inter font bundled via @fontsource/inter
- ESLint no-restricted-imports (warn) for gradual migration
- storybook-static gitignored
All 268 tests pass (157 design-system + 111 frontend)
2026-06-21 09:49:18 +03:00
55221dbf22
feat(design-system): add form and page-state patterns
...
- FormField: label, htmlFor, helperText, error, required, children
- FilterBar: responsive layout container with children and actions
- EmptyState: semantic heading with optional description and action
- ErrorState: semantic heading with optional description and action
- LoadingState: aria-live polite, section/page sizes, reduced-motion
2026-06-21 09:44:12 +03:00
74ca576310
feat(design-system): add typography and actions
...
Implement Text, Heading, Link, Button, and IconButton components with TDD and Storybook stories. Each component wraps MUI with restricted props for visual consistency.
2026-06-21 09:32:58 +03:00
886ac7b87a
build(design-system): configure Storybook workbench
2026-06-21 09:29:26 +03:00
1107a1fc8b
feat(design-system): add MUI theme adapter
2026-06-21 09:28:38 +03:00
fdffe204e4
feat(design-system): define three-level tokens
2026-06-21 09:27:16 +03:00
129282d634
feat(design-system): add token schema and resolver
2026-06-21 09:25:18 +03:00
ec13fa8ca2
docs(design-system): add foundation implementation plan
2026-06-21 09:13:19 +03:00
e8dcb27a03
docs(design-system): add foundation specification
2026-06-21 08:56:32 +03:00
1b6fd39be3
feat: add frontend infrastructure libraries (ky, Zustand, MUI, dayjs, clsx, tanstack-table, rhf, zod)
...
CI / ci (pull_request) Failing after 2m55s
CI / ci (push) Failing after 2m53s
- install ky, zustand, @mui/material, @fontsource/roboto, dayjs, clsx
- install @tanstack/react-table, react-hook-form, zod, @hookform/resolvers
- create kyClient.ts with auth interceptors
- create Zustand store for session (useSessionStore.ts)
- add MUI theming (theme.ts, ThemeProvider in AppProviders)
- add dayjs utils with ru locale (formatDate, formatRelative)
- add clsx cn() utility
- add base Table component using @tanstack/react-table
- create ADR-015 documenting architectural decisions
- create SDD artifacts: spec.md, plan.md, tasks.md
- build, lint, and 111 tests passing
2026-06-21 08:26:27 +03:00
2744608d06
chore: add @conarti/eslint-plugin-feature-sliced for FSD layer enforcement
CI / ci (pull_request) Failing after 2m23s
CI / ci (push) Failing after 2m19s
2026-06-20 23:21:14 +03:00
ad196164ee
refactor: extract AddPositionForm to features layer
2026-06-20 23:16:20 +03:00
d1f9128441
refactor: extract BrokerOverview components to widgets layer
2026-06-20 23:14:24 +03:00
8e70691bde
refactor: extract BrokerPositionTable to widgets layer
2026-06-20 23:12:28 +03:00
943a6aec2d
fix: move test SessionProvider and SessionContext to shared layer for FSD compliance
2026-06-20 23:10:56 +03:00