# Changelog: 1.30.0

Rendered lists state their items' keys and values (facts), search prices come as numbers, and
v10 discounts state their type. Image alt texts and room descriptions fall back to German and say
so, as descriptions do since 1.29.0, and v10 system cancellation policies are translated.

## Added

- `total` on priced search items and alternative periods, and `originalTotal` on their
  `discount`: `{ amount, currency }`, with `amount` in the currency's minor unit as the backend
  sends it. They state the same totals as `formattedTotal` and
  `discount.formattedOriginalTotal`.
- v10: `type` on each `discount.applied` entry (`EARLY_BIRD`, `LAST_MINUTE`, …). It is the same
  in every locale; `label` is its translation.
- The schema `SearchMoneySchema` and the type `SearchMoney`.
- `altFallback` on images and `descriptionFallback` on rooms: the language their text is in when
  it is not the requested one (`"de-DE"`), omitted otherwise.
- `toLocalizedText(value, locale)`: a text from a record by language in `locale`, else its
  German text marked as the fallback; and `FALLBACK_LOCALE`.
- Facts: every rendered list states its items with their keys and values, the same in every
  locale: `facts` next to `items` in attribute subcategories and vicinity groups,
  `highlightFacts` next to `highlights` (rentals, their property, search items), and
  `attributeFacts` and `typeKey` on rooms. A fact is `{ key, text, value? }`: the attribute key,
  the rendered item, and the raw value (`true`, a count, meters, m², an option key). `facts[i]` is
  `items[i]`. A free text has no value. The type `RentalFact`, and the helpers `toFact`,
  `toCustomAttributeFact` and `pushFact`.

## Changed

- v10: a system cancellation policy (`SYSTEM_FIRM_14`, `SYSTEM_STRICT_30`, `SYSTEM_STRICT_60`)
  is labelled by the SDK's translation of its type ("Strict (30 days)" on English pages); the
  PMS sent its German name ("Streng (30 Tage)") in every locale. Custom and alternative policies
  keep the agency's label.
- v10: an image (rental, property and search) or a room without a text in the requested locale
  takes its German text and is marked with `altFallback` / `descriptionFallback`. Before, the
  text was omitted: English pages had no alt texts on most images and no room descriptions.
