Note: Not sure if PRs are wanted on Example code.
### Checklist
- [x] If applicable, unit tests
- [ ] If applicable, create follow-up issues for `purchases-android` and
hybrids
### Motivation
Noticed that the terms func was just passing the same `package`.
### Description
Testing: Looks like there are no tests for sample code.
This pull request refactors the terms(for package: Package) method in
the Package extension to a computed property terms. The change not only
improves readability and simplifies access to the package terms, but
also eliminates the need to pass a Package instance to a function that
belongs to the same Package type, which didn't make sense.
By making these changes, we provide a more streamlined and intuitive
approach for developers to access package terms, and eliminate the need
for an explicit method call.
I hit this bug when I first tried the example. My offerings loaded
slowly - so the paywall was empty, and didn't update when the offerings
were retrieved.
### Description
App stores current state in the shared `UserViewModel`, but the
`PaywallView` doesn't currently observe changes on this model - so it only
shows the state at the point where the view was shown.
This is potentially a state where offerings have not yet been retrieved.
This was changed in #1460. Additionally, without #1600 this wasn't producing the correct rename, it wasn't finding `DeferredPromotionalPurchaseBlock` anywhere.