119 Commits

Author SHA1 Message Date
946383bde0 refactor(frontend): migrate entities/portfolio to FSD 2026-06-20 14:54:52 +03:00
9c115f0e16 refactor(frontend): migrate entities/bond to FSD 2026-06-20 14:54:52 +03:00
dd727f9fb2 refactor(frontend): migrate entities/stock to FSD 2026-06-20 14:54:52 +03:00
d95b2df460 refactor(frontend): update legacy imports to use @/shared/ 2026-06-20 14:54:52 +03:00
9816bc6b96 refactor(frontend): update fsd entities imports to use @/shared/ 2026-06-20 14:54:52 +03:00
5355451e35 refactor(frontend): create shared/ui layer with skeleton components 2026-06-20 14:54:52 +03:00
a9132109da refactor(frontend): create shared/api layer with re-export shims 2026-06-20 14:54:52 +03:00
4db95146a7 docs: finalize sdd artifacts — mark checkboxes, update status, document cross-slice export 2026-06-20 14:54:52 +03:00
b02ee9cd74 docs: document broker fsd pilot completion 2026-06-20 14:54:52 +03:00
00f01fae4f refactor(frontend): move broker operations and layout to fsd 2026-06-20 14:54:52 +03:00
09213624c3 test: remove legacy broker position duplicates 2026-06-20 14:54:51 +03:00
8e578e7a91 refactor(frontend): move broker position slice to fsd 2026-06-20 14:54:51 +03:00
1db1763b36 refactor(frontend): align broker account shims 2026-06-20 14:54:51 +03:00
55cc479abb refactor(frontend): move broker account slice to fsd 2026-06-20 14:54:51 +03:00
a03e3c0240 refactor(frontend): add broker fsd page entrypoints 2026-06-20 14:54:51 +03:00
3b618d3da0 docs: define frontend fsd broker pilot 2026-06-20 14:54:51 +03:00
1e007de5be feat: add broker accounts overview
All checks were successful
CI / ci (pull_request) Successful in 3m21s
CI / ci (push) Successful in 3m6s
2026-06-19 14:31:53 +03:00
b7b627a0f3 docs: define broker accounts overview 2026-06-19 13:55:35 +03:00
a95308762f docs: improve AGENTS.md and README.md
All checks were successful
CI / ci (push) Successful in 3m20s
2026-06-19 13:32:49 +03:00
d8b3886130 docs: complete broker account sections 2026-06-19 07:11:18 +03:00
2223463dd3 feat: filter broker operations by exact type 2026-06-19 07:06:49 +03:00
910494a4e5 feat: add broker asset pages 2026-06-19 07:03:09 +03:00
b82771107d fix: harden broker overview edge cases 2026-06-19 06:52:22 +03:00
a19ad67a89 feat: add broker account overview 2026-06-19 06:43:38 +03:00
1c26d2a3eb fix: improve broker account shell accessibility 2026-06-19 06:32:20 +03:00
633def5ebb fix: keep broker shell styling scoped 2026-06-19 06:27:04 +03:00
dc4b6ddf1b feat: add broker account section navigation 2026-06-19 06:23:35 +03:00
6d2df6a12b fix: stabilize broker display models 2026-06-19 06:13:23 +03:00
2462f2122c feat: add broker account display models 2026-06-19 06:08:17 +03:00
5cb51e44f2 chore: sync broker portfolio contract 2026-06-19 06:00:15 +03:00
8aea56cbbf feat: expose broker position counts 2026-06-18 23:15:32 +03:00
af135d5640 test: add isFetching to mock return values
All checks were successful
CI / ci (push) Successful in 2m59s
2026-06-18 07:29:35 +03:00
2d671669d4 feat: pass isFetching to BrokerOperationsTable 2026-06-18 07:29:35 +03:00
26371381e0 feat: add loading overlay and spinner to BrokerOperationsTable 2026-06-18 07:29:35 +03:00
90e9c468de feat: add loading overlay and spinner to PositionGroupTable 2026-06-18 07:29:35 +03:00
510ee91fab style: add loading-spinner and overlay CSS classes 2026-06-18 07:29:35 +03:00
feaff2103e perf(broker): parallel instrument name loading with per-service rate limit queues
- Split single p-queue (5 req/s) into 3 isolated queues:
  operations (5/s), instruments (20/s), users (5/s)
- Removed dead instruments param from mapBrokerPortfolio
- portfolio/positions endpoints share raw GetPortfolio cache
- Docs: T_BANK_INSTRUMENTS_RATE_LIMIT, CACHE_TBANK_POSITIONS_TTL,
  rate limiting section in tbank-invest.md
2026-06-18 06:34:55 +03:00
49ee364856 feat(broker): per-type positions pagination with independent tables
All checks were successful
CI / lint (pull_request) Successful in 2m9s
CI / test (pull_request) Successful in 1m56s
CI / build (pull_request) Successful in 2m6s
CI / lint (push) Successful in 1m56s
CI / test (push) Successful in 1m55s
CI / build (push) Successful in 2m19s
- Add type query param to GET /accounts/:accountId/positions endpoint
- Backend filters T-Bank portfolio positions by instrument type before pagination
- Each instrument type (share, bond, etf, fund) has its own frontend table with
  independent cursor-based pagination and skeleton loading
- Groups with no positions are automatically hidden
- Cache key includes type for correct per-type caching
- Remove centralized positions pagination state from BrokerAccountDetailPage
- 94 backend tests / 112 frontend tests pass
2026-06-18 06:02:54 +03:00
5ccd421259 test(frontend): update broker tests for positions hook and removal from portfolio 2026-06-17 14:50:35 +03:00
e25daa931a feat(frontend): add skeleton cards to broker accounts page 2026-06-17 14:47:10 +03:00
28579321a9 feat(frontend): add positions hook and skeleton loading to account detail page 2026-06-17 14:46:48 +03:00
2670097a5e feat(frontend): add shimmer loading and instrument name in operations table 2026-06-17 14:46:06 +03:00
e0c9d97ded feat(frontend): add pagination and skeleton to BrokerPositionsSection 2026-06-17 14:45:27 +03:00
d7b5a376a0 feat(frontend): add SkeletonBlock and TableSkeleton components 2026-06-17 14:44:15 +03:00
608e521674 feat(frontend): add BrokerPositionsPage types, API, and hook 2026-06-17 14:43:50 +03:00
33199a8749 feat(frontend): add shimmer animation and .skeleton CSS class 2026-06-17 14:42:49 +03:00
4b87eccba4 test(tbank): update portfolio tests, add getPositions tests, fix operation fixture name 2026-06-17 14:41:32 +03:00
8b202ef7d3 feat(tbank): add GET /positions endpoint with cursor pagination 2026-06-17 14:39:30 +03:00
6b3bdd2aec fix(tbank): include cursor/limit in positions cache key, add tbankPositionsTtl config 2026-06-17 14:38:51 +03:00
bb7fef8deb feat(tbank): add getPositions() method to BrokerPortfolioService 2026-06-17 14:36:32 +03:00