49ee364856
feat(broker): per-type positions pagination with independent tables
...
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
05f1e792c5
feat(tbank): extract mapBrokerPosition, add mapBrokerPositionsPage, add name to operation
2026-06-17 14:34:02 +03:00
953c7c29a6
feat(tbank): add positions page types/DTOs and operation name field
2026-06-17 14:30:48 +03:00
0517501415
chore: address review feedback - consistent style, spec accuracy, test regex
2026-06-17 13:50:36 +03:00
cc8ff0a088
feat: add keepPreviousData for smooth pagination
2026-06-17 13:48:00 +03:00
a8bce856d9
fix: add back BrokerOperationImpact type import for moneyColor
2026-06-17 13:47:34 +03:00
2e0c0e7df8
feat: remove impact badges, add + prefix, style pagination buttons
2026-06-17 13:45:07 +03:00
8e2151fc34
test: update broker page tests for new UI expectations
2026-06-17 13:43:43 +03:00
4682586002
refactor: remove unused getBrokerOperationImpactLabel helper
2026-06-17 13:41:17 +03:00
d16078fce9
docs: add broker operations UI improvements spec
2026-06-17 13:37:52 +03:00
bd8d6c11fe
feat: improove ui
CI / lint (pull_request) Successful in 2m3s
CI / test (pull_request) Successful in 2m5s
CI / build (pull_request) Successful in 2m0s
CI / lint (push) Successful in 1m55s
CI / test (push) Successful in 8m13s
CI / build (push) Successful in 2m8s
2026-06-17 13:15:01 +03:00
a8715258ca
fix: avoid stale tbank grpc deadlines
CI / lint (pull_request) Successful in 2m15s
CI / test (pull_request) Successful in 2m2s
CI / build (pull_request) Successful in 2m7s
CI / lint (push) Successful in 2m2s
CI / test (push) Successful in 2m10s
CI / build (push) Successful in 2m7s
2026-06-17 12:08:48 +03:00
8c2a6c9e3c
fix: trust tbank grpc root certificate
CI / lint (pull_request) Successful in 2m11s
CI / test (pull_request) Successful in 1m58s
CI / build (pull_request) Successful in 2m3s
CI / lint (push) Successful in 1m57s
CI / test (push) Successful in 2m4s
CI / build (push) Successful in 2m8s
2026-06-17 07:39:37 +03:00
ea916dfec9
fix: restrict and expose tbank broker sync
2026-06-17 06:57:49 +03:00
b10a2cfb0d
docs: document tbank invest integration
2026-06-17 06:49:09 +03:00
3fe4e7a4ec
fix: harden tbank operation sync
2026-06-17 06:47:18 +03:00
6e30177294
feat: persist tbank broker operations
2026-06-17 06:44:45 +03:00
ead40bff6f
feat: add broker portfolio UI
2026-06-16 23:05:52 +03:00
50bff3dbe7
feat: add broker frontend api hooks
2026-06-16 22:56:20 +03:00
b848d256d1
fix: load tbank proto contracts at runtime
2026-06-16 22:54:21 +03:00
d01d2b9f7f
feat: expose tbank broker operations
2026-06-16 22:46:19 +03:00
bd6b2589c0
feat: expose tbank broker portfolio
2026-06-16 22:43:40 +03:00
ddeab01b9e
feat: expose tbank broker accounts
2026-06-16 22:34:12 +03:00
4ef2f8d05e
feat: add tbank grpc client service
2026-06-16 22:23:33 +03:00
825095106c
feat: add tbank domain mappers
2026-06-16 22:20:01 +03:00
7a8bc7c90a
feat: configure tbank integration
2026-06-16 22:15:31 +03:00
526e5dc5f3
feat: add tbank invest proto contracts
2026-06-16 22:10:54 +03:00
a971d0c8bf
docs: require russian specs
2026-06-16 06:01:48 +03:00
a3817edfc7
docs: add tbank broker portfolios design
2026-06-16 05:40:53 +03:00
106467e5c4
docs: translate docs to russian
CI / lint (pull_request) Successful in 2m8s
CI / test (pull_request) Successful in 1m57s
CI / build (pull_request) Successful in 2m5s
CI / lint (push) Successful in 2m1s
CI / test (push) Successful in 1m51s
CI / build (push) Successful in 2m9s
2026-06-16 05:13:34 +03:00
739405a597
docs: consolidate SDD documentation
CI / lint (pull_request) Successful in 2m10s
CI / build (pull_request) Has been cancelled
CI / test (pull_request) Has been cancelled
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
2026-06-15 21:04:24 +03:00
117f182851
docs: refresh project documentation
CI / lint (pull_request) Successful in 2m14s
CI / test (pull_request) Successful in 1m52s
CI / build (pull_request) Failing after 2m15s
CI / test (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / build (push) Has been cancelled
2026-06-15 20:02:50 +03:00
c062850e83
docs: refine openapi null response schema
2026-06-15 19:54:31 +03:00
835686d886
docs: improve openapi schema metadata
2026-06-15 05:58:45 +03:00
143b4758c3
docs: refresh openapi contract artifacts
2026-06-15 05:31:55 +03:00
44e13cc67e
test: cover checked-in openapi artifacts
2026-06-15 05:05:13 +03:00
974c83d67e
test: make backend service specs deterministic
2026-06-15 04:56:53 +03:00
c994b6a2fb
test: split moex live integration checks
2026-06-15 04:47:13 +03:00