refactor: close barrel gaps for ui-server, broadcast-channel, DEFAULT_PERSIST_STATE (#1952)
Close 3 barrel gaps identified during the PR #1950 audit chain.
New barrels (respect the flat parent barrel convention already used by
`src/charging-station/ocpp/index.ts`, `.../meter-values/index.ts`,
`src/performance/index.ts`):
- `src/charging-station/ui-server/index.ts` — exposes UIMCPServer,
UIServerFactory, UIWebSocketServer, HttpMethod (UIServerUtils),
DEFAULT_COMPRESSION_THRESHOLD_BYTES (UIServerSecurity),
AbstractUIService, BroadcastChannelResponseLogContext. Deliberately
omits UIHttpServer (@deprecated pending removal), AbstractUIServer
(internal extension point), UIServerAccessPolicy/UIServerNet
helpers, and ui-services concrete implementations — all documented
in the `@file` JSDoc header.
- `src/charging-station/broadcast-channel/index.ts` — exposes
ChargingStationWorkerBroadcastChannel and
UIServiceWorkerBroadcastChannel. Deliberately omits
WorkerBroadcastChannel (abstract base with only internal subclasses)
— documented in the `@file` JSDoc header.
Both barrels carry an `@file` header matching the peer convention
(`meter-values/index.ts`, `ocpp/auth/index.ts`) that documents what is
exposed AND what is deliberately NOT re-exported and why — anchoring
the exposure discipline in the file itself.
Extended barrel:
- `src/utils/index.ts`: add `DEFAULT_PERSIST_STATE` to the
`Configuration` re-export block. Closes an Explore-flagged barrel
gap prospectively; zero current callers affected.
No consumer migrations in this PR — tests inside the sub-components
follow the "test-of-that-file uses direct import" precedent from
PR #1950. Source-to-source deep imports (5 sites: Bootstrap.ts,
ChargingStation.ts, ConfigurationSchema.ts,
UIServiceWorkerBroadcastChannel.ts, AbstractUIService.ts) are deferred
to a follow-up PR-D' to keep this PR focused on barrel infrastructure.