@bytebrand/fe-ui-core-autobahn 1.0.70 → 1.0.72

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -861,8 +861,6 @@ export const PricePaths: React.FunctionComponent<PricePathsProps> = ({ car, t, c
861
861
  const finFirstInstallment =
862
862
  car.finFirstInstallment != null ? car.finFirstInstallment.toLocaleString('de-DE') : _finFirstInstallment;
863
863
  const finMonths = car.finMonths ?? _finMonths;
864
- const leasFirstInstallment =
865
- car.leaseFirstInstallment != null ? car.leaseFirstInstallment.toLocaleString('de-DE') : _leasFirstInstallment;
866
864
  const leasMileage = car.leaseMileage ?? _leasMileage;
867
865
  const leasMonths = car.leaseMonths ?? _leasPeriod;
868
866
  const hasLeasTerms = Boolean(leasMileage && leasMonths);
@@ -888,8 +886,11 @@ export const PricePaths: React.FunctionComponent<PricePathsProps> = ({ car, t, c
888
886
  <PpRow label={t('autobahn:card.price.leasing')} value={car.lease as number} unit="mtl." />
889
887
  {hasLeasTerms && (
890
888
  <div className="pp-sub-terms">
891
- {t('autobahn:card.price.leaseTerms', {
892
- firstInstallment: leasFirstInstallment,
889
+ {/* mockup drops the Sonderzahlung figure entirely here (unlike the shared
890
+ leaseTerms key mobile/VDP use) and swaps the order to mileage-first —
891
+ a dedicated key, not a rework of leaseTerms, so those other callers
892
+ keep their own reviewed wording untouched. */}
893
+ {t('autobahn:card.price.leaseTermsCompact', {
893
894
  months: leasMonths,
894
895
  mileage: leasMileageStr,
895
896
  })}{' '}
@@ -12,6 +12,7 @@
12
12
  "financeTerms": "{{firstInstallment}} € Anzahlung · {{months}} Monate Laufzeit",
13
13
  "financeTerms_plural": "{{firstInstallment}} € Anzahlung · {{months}} Monate Laufzeit",
14
14
  "leaseTerms": "{{firstInstallment}} € Sonderzahlung · {{months}} Mon. · {{mileage}} km/Jahr",
15
+ "leaseTermsCompact": "{{mileage}} km/Jahr · {{months}} Monate",
15
16
  "detailsLink": "Details",
16
17
  "uvpRateLabel": "UVP-Rate",
17
18
  "uvpRateTooltipBody": "Rechnerische Vergleichsrate auf Basis der unverbindlichen Preisempfehlung des Herstellers und mit denselben Finanzierungsparametern wie das Angebot. Keine früher verlangte Rate. Das Rundum-Sorglos-Paket wird einmalig separat berechnet.",
@@ -12,6 +12,7 @@
12
12
  "financeTerms": "€{{firstInstallment}} down payment · {{months}} months term",
13
13
  "financeTerms_plural": "€{{firstInstallment}} down payment · {{months}} months term",
14
14
  "leaseTerms": "€{{firstInstallment}} down payment · {{months}} mo. · {{mileage}} km/year",
15
+ "leaseTermsCompact": "{{mileage}} km/year · {{months}} months",
15
16
  "detailsLink": "Details",
16
17
  "uvpRateLabel": "UVP rate",
17
18
  "uvpRateTooltipBody": "Calculated comparison rate based on the manufacturer's non-binding price recommendation, using the same financing parameters as the offer. Not a previously requested rate. The all-inclusive package is billed separately, as a one-off.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bytebrand/fe-ui-core-autobahn",
3
- "version": "1.0.70",
3
+ "version": "1.0.72",
4
4
  "description": "auto.de md3 (Autobahn) design system — UI primitives, cards, chrome, VDP modules, theme CSS and locales. Ships raw TypeScript source (like fe-ui-core before it); each consumer's bundler compiles it.",
5
5
  "main": "index.ts",
6
6
  "license": "UNLICENSED",
package/theme/md3.css CHANGED
@@ -4411,6 +4411,11 @@ line-height: 31px;
4411
4411
  .md3 .listcard-price .pricepaths .pp-uvp-tooltip-close svg { width: 14px; height: 14px; }
4412
4412
  .md3 .listcard-price .pricepaths .pp-uvp-tooltip-body { font-size: 11px; line-height: 13px; color: #0e2238; }
4413
4413
  .md3 .pp-hero-terms { margin-top: 9px; font-size: 11.5px; color: var(--md-on-surface-variant); }
4414
+ /* desktop mcard financing hero terms line: at the shared 11.5px size "0 € Anzahlung · 60 Monate
4415
+ Laufzeit · Details" needs ~223px but the 240px column only leaves ~207px, so "Details" wrapped
4416
+ onto its own line — shrunk just enough (measured against the real column width) to keep it on
4417
+ one line, matching the Figma reference. */
4418
+ .md3 .listcard-price .pricepaths .pp-hero-terms { font-size: 10.5px; }
4414
4419
  /* "Details" link at the end of the financing/leasing terms lines (Figma "mcard") — quiet, same
4415
4420
  color as the rest of the terms line but underlined so it still reads as tappable. */
4416
4421
  .md3 .pp-details-link { color: var(--md-primary); text-decoration: underline; font-weight: 600; white-space: nowrap; }
@@ -4435,11 +4440,13 @@ line-height: 31px;
4435
4440
  padding-top: 16px;
4436
4441
  border-top: 1px solid var(--md-outline-variant);
4437
4442
  }
4443
+ /* left-aligned so the km/Monate/Details line sits under "Leasing" itself, not under the price
4444
+ column on the right (was text-align:right — reported as visually orphaned from its own label). */
4438
4445
  .md3 .pp-sub-terms {
4439
4446
  margin-top: 3px;
4440
4447
  font-size: 11px;
4441
4448
  color: var(--md-on-surface-variant);
4442
- text-align: right;
4449
+ text-align: left;
4443
4450
  }
4444
4451
  .md3 .pp-row {
4445
4452
  display: flex;
@@ -4459,10 +4466,15 @@ line-height: 31px;
4459
4466
  color: var(--md-outline);
4460
4467
  flex: none;
4461
4468
  }
4469
+ /* Figma "mcard": Leasing's price is already one line (no old price to caption); Kaufen's struck
4470
+ old price + new price used to stack on two lines (column), giving the row double the height and
4471
+ breaking the row-to-row rhythm with Leasing right above it — same line now, old price baseline-
4472
+ aligned beside the new one, matching the reference exactly. */
4462
4473
  .md3 .pp-row-price {
4463
4474
  display: flex;
4464
- flex-direction: column;
4465
- align-items: flex-end;
4475
+ flex-direction: row;
4476
+ align-items: baseline;
4477
+ gap: 8px;
4466
4478
  line-height: 1.08;
4467
4479
  min-width: 0;
4468
4480
  }