fix(api): Decimal-параметр ребалансировки ломал генерацию Dart-клиента

cash_available был bare Decimal | None в Query(...) — pydantic отдаёт для
Decimal anyOf[number, pattern-string], который openapi-generator не умеет
свернуть в один тип и вместо этого синтезирует пустой класс CashAvailable
без полей (синтаксически битый .dart, компиляция всего пакета падает).
Остальные Decimal-поля в API давно оборачиваются в Money/MoneyOpt
(api/schemas/common.py) ровно за счёт этого — anyOf[string, null] генератор
понимает. cash_available обошёл соглашение, потому что это единственный
Decimal-параметр запроса во всём API, а не тело ответа.
This commit is contained in:
Dmitry
2026-09-19 10:56:33 +03:00
parent ccd06f32f7
commit baac83149f
10 changed files with 5053 additions and 122 deletions
@@ -21,7 +21,6 @@ doc/BenchmarksApi.md
doc/Broker.md
doc/CalendarEntry.md
doc/CalendarOut.md
doc/CashAvailable.md
doc/CashFlowBrokerMonth.md
doc/CashFlowMonth.md
doc/CashflowApi.md
@@ -166,7 +165,6 @@ lib/src/model/benchmark_return_out.dart
lib/src/model/broker.dart
lib/src/model/calendar_entry.dart
lib/src/model/calendar_out.dart
lib/src/model/cash_available.dart
lib/src/model/cash_flow_broker_month.dart
lib/src/model/cash_flow_month.dart
lib/src/model/category_out.dart
@@ -251,47 +249,3 @@ lib/src/model/unmatched_zm_out.dart
lib/src/model/user_out.dart
lib/src/model/value_day.dart
pubspec.yaml
test/benchmark_comparison_out_test.dart
test/benchmark_comparison_test.dart
test/benchmark_create_test.dart
test/benchmark_out_test.dart
test/benchmark_patch_test.dart
test/benchmark_return_out_test.dart
test/benchmarks_api_test.dart
test/calendar_entry_test.dart
test/calendar_out_test.dart
test/cash_available_test.dart
test/cash_flow_broker_month_test.dart
test/forecast_month_test.dart
test/forecast_out_test.dart
test/goal_create_test.dart
test/goal_out_test.dart
test/goal_patch_test.dart
test/goal_progress_out_test.dart
test/goals_api_test.dart
test/history_out_test.dart
test/history_row_test.dart
test/history_totals_test.dart
test/income_api_test.dart
test/link_create_test.dart
test/link_out_test.dart
test/links_api_test.dart
test/price_manual_in_test.dart
test/price_manual_out_test.dart
test/rebalance_api_test.dart
test/rebalance_bucket_out_test.dart
test/rebalance_out_test.dart
test/target_in_test.dart
test/target_out_test.dart
test/targets_in_test.dart
test/targets_out_test.dart
test/tax_account_out_test.dart
test/tax_api_test.dart
test/tax_lot_out_test.dart
test/tax_lots_out_test.dart
test/tax_totals_test.dart
test/tax_year_out_test.dart
test/trade_out_test.dart
test/unmatched_broker_out_test.dart
test/unmatched_out_test.dart
test/unmatched_zm_out_test.dart