in_app/prefetch_bundle_client library

PrefetchBundleClient — Flutter implementation.

Wire-compatible with the web SDK's PrefetchBundleClient (libs/web- sdk/src/core/prefetch-bundle-client.ts) and the Android + iOS scaffolds shipped in this pass. Fetches /v1/sdk/prefetch-bundle once at init and on a 5-minute ETag poll; armed campaigns + inbox first-page land in memory so trigger-time rendering is zero-latency.

SCAFFOLD NOTE: Not wired into AegisInApp yet; callers must start the client themselves. Production integration needs:

  • Link getCampaigns() into AegisInApp's trigger evaluator
  • Widget tests verifying the listener fires on bundle change
  • A/B assignment persistence (today the SDK always sends [])

Typedefs

PrefetchBundleListener = void Function(PrefetchBundle bundle)