Add PlaceholderAPI support exposing firm details — notably firm balance — as placeholders.
Technical notes — No PlaceholderAPI expansion exists anywhere in the economy plugins. Firm balance is computed internally by FirmTransactionServiceImpl.getAggregateBalance (sums treasury.getBalanceByAccountId over FirmAccountsMapper.listAccountsByFirm). Add a PlaceholderExpansion (soft-depend PAPI in plugin.yml, register in onEnable) backed by the public BusinessApi, wiring %business_firm_balance_<name>%. Blocked on PAR-22 — needs a public FirmApi.getTotalBalance first.
PR: https://github.com/ParadauxIO/hibernia-economy/pull/17 (targets develop).
Adds the optional bundled business PlaceholderAPI expansion, public-API balance lookup, reload persistence and disable cleanup, documentation, and tests for absent PlaceholderAPI in CI.
Validation: bash gradlew :business:build -Pci=true --console=plain passed: 574 unit/integration tests, 4 tests without PlaceholderAPI, 4 without CarbonChat, shaded plugin build, and 96.3% line coverage (95% gate).
Code context — No PlaceholderAPI expansion exists anywhere in the economy plugins. Firm balance is computed internally by
FirmTransactionServiceImpl.getAggregateBalance(sumstreasury.getBalanceByAccountIdoverFirmAccountsMapper.listAccountsByFirm).Approach: add a
PlaceholderExpansion(soft-depend PAPI inplugin.yml, register inonEnable) backed by the publicBusinessApi, wiring%business_firm_balance_<name>%. Blocked on PAR-22 — needs a publicFirmApi.getTotalBalancefirst.