Merged in feat/lokalise-rebuild (pull request #2993)

Feat/lokalise rebuild

* chore(lokalise): update translation ids

* chore(lokalise): easier to switch between projects

* chore(lokalise): update translation ids

* .

* .

* .

* .

* .

* .

* chore(lokalise): update translation ids

* chore(lokalise): update translation ids

* .

* .

* .

* chore(lokalise): update translation ids

* chore(lokalise): update translation ids

* .

* .

* chore(lokalise): update translation ids

* chore(lokalise): update translation ids

* chore(lokalise): new translations

* merge

* switch to errors for missing id's

* merge

* sync translations


Approved-by: Linus Flood
This commit is contained in:
Joakim Jäderberg
2025-10-22 11:00:03 +00:00
parent bdfe2ab213
commit aafad9781f
499 changed files with 93363 additions and 99164 deletions

View File

@@ -26,6 +26,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "common.bookingNumber",
defaultMessage: "Booking number",
})}
</dt>
@@ -39,6 +40,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "common.room",
defaultMessage: "Room",
})}
</dt>
@@ -52,6 +54,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "myStay.receipt.rate",
defaultMessage: "Rate",
})}
</dt>
@@ -65,6 +68,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "common.checkIn",
defaultMessage: "Check-in",
})}
</dt>
@@ -82,6 +86,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "common.checkOut",
defaultMessage: "Check-out",
})}
</dt>
@@ -101,6 +106,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "myStay.receipt.numberOfNights",
defaultMessage: "Number of nights",
})}
</dt>
@@ -116,6 +122,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "myStay.receipt.numberOfGuests",
defaultMessage: "Number of guests",
})}
</dt>
@@ -124,6 +131,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<dd>
{intl.formatMessage(
{
id: "booking.numberOfAdults",
defaultMessage:
"{adults, plural, one {# adult} other {# adults}}",
},
@@ -134,6 +142,7 @@ export default async function Footer({ booking, room }: FooterProps) {
{", "}
{intl.formatMessage(
{
id: "booking.numberOfChildren",
defaultMessage:
"{children, plural, one {# child} other {# children}}",
},
@@ -149,6 +158,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "myStay.receipt.bedType",
defaultMessage: "Bed type",
})}
</dt>
@@ -163,6 +173,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "booking.roomClassification",
defaultMessage: "Room classification",
})}
</dt>
@@ -170,6 +181,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dd>
{intl.formatMessage({
id: "common.petFriendly",
defaultMessage: "Pet-friendly",
})}
</dd>
@@ -181,6 +193,7 @@ export default async function Footer({ booking, room }: FooterProps) {
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "common.breakfast",
defaultMessage: "Breakfast",
})}
</dt>
@@ -189,9 +202,11 @@ export default async function Footer({ booking, room }: FooterProps) {
<dd>
{booking.rateDefinition.breakfastIncluded
? intl.formatMessage({
id: "common.included",
defaultMessage: "Included",
})
: intl.formatMessage({
id: "common.notIncluded",
defaultMessage: "Not included",
})}
</dd>

View File

@@ -41,9 +41,13 @@ export default async function Specification({
: ""
const breakfastPointsString =
breakfastTotalPriceInPoints > 0
? `${breakfastTotalPriceInPoints} ${intl.formatMessage({
defaultMessage: "Points",
})}`
? intl.formatMessage(
{
id: "common.numberOfPoints",
defaultMessage: "{points, plural, one {# point} other {# points}}",
},
{ points: breakfastTotalPriceInPoints }
)
: ""
const breakfastPlusString =
breakfastMoneyString && breakfastPointsString ? " + " : ""
@@ -64,12 +68,14 @@ export default async function Specification({
<Typography variant="Body/Supporting text (caption)/smBold">
<span>
{intl.formatMessage({
id: "myStay.receipt.accommodation",
defaultMessage: "Accommodation",
})}
{!booking.rateDefinition.mustBeGuaranteed && (
<>
{" - "}
{intl.formatMessage({
id: "myStay.receipt.prepaidRoom",
defaultMessage: "Room is prepaid",
})}
</>
@@ -80,6 +86,7 @@ export default async function Specification({
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "booking.priceIncludingVat",
defaultMessage: "Price including VAT",
})}
</dt>
@@ -89,6 +96,7 @@ export default async function Specification({
{!booking.rateDefinition.mustBeGuaranteed
? // eslint-disable-next-line formatjs/no-literal-string-in-jsx
`(${intl.formatMessage({
id: "myStay.receipt.prepaid",
defaultMessage: "PREPAID",
})}) `
: null}
@@ -102,6 +110,7 @@ export default async function Specification({
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt>
{intl.formatMessage({
id: "myStay.receipt.petRoomChargeIncludingVat",
defaultMessage: "Pet room charge including VAT",
})}
</dt>
@@ -116,6 +125,7 @@ export default async function Specification({
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt className={styles.tertiary}>
{intl.formatMessage({
id: "booking.priceExcludingVat",
defaultMessage: "Price excluding VAT",
})}
</dt>
@@ -130,6 +140,7 @@ export default async function Specification({
<Typography variant="Body/Supporting text (caption)/smRegular">
<dt className={styles.tertiary}>
{intl.formatMessage({
id: "common.vat",
defaultMessage: "VAT",
})}
{/* eslint-disable-next-line formatjs/no-literal-string-in-jsx */}
@@ -161,6 +172,7 @@ export default async function Specification({
)
)[0]?.title ??
intl.formatMessage({
id: "myStay.receipt.unknownItem",
defaultMessage: "Unknown item",
})}
</span>
@@ -178,9 +190,11 @@ export default async function Specification({
<dt>
{ancillary.currency !== CurrencyEnum.POINTS
? intl.formatMessage({
id: "booking.priceIncludingVat",
defaultMessage: "Price including VAT",
})
: intl.formatMessage({
id: "common.price",
defaultMessage: "Price",
})}
</dt>
@@ -205,6 +219,7 @@ export default async function Specification({
<Typography variant="Body/Supporting text (caption)/smBold">
<span>
{intl.formatMessage({
id: "common.breakfast",
defaultMessage: "Breakfast",
})}
</span>
@@ -220,9 +235,11 @@ export default async function Specification({
<dt>
{breakfastTotalPriceInMoney > 0
? intl.formatMessage({
id: "booking.priceIncludingVat",
defaultMessage: "Price including VAT",
})
: intl.formatMessage({
id: "common.price",
defaultMessage: "Price",
})}
</dt>

View File

@@ -22,9 +22,13 @@ export default async function Total({ booking, currency }: TotalProps) {
totalPriceInMoney > 0 ? `${totalPriceInMoney} ${currency}` : ""
const pointsString =
totalPriceInPoints > 0
? `${totalPriceInPoints} ${intl.formatMessage({
defaultMessage: "Points",
})}`
? intl.formatMessage(
{
id: "common.numberOfPoints",
defaultMessage: "{points, plural, one {# point} other {# points}}",
},
{ points: totalPriceInPoints }
)
: ""
const plusString = moneyString && pointsString ? " + " : ""
@@ -36,11 +40,13 @@ export default async function Total({ booking, currency }: TotalProps) {
<div>
<span className={styles.title}>
{intl.formatMessage({
id: "receipt.preliminaryReceipt",
defaultMessage: "Preliminary receipt",
})}
</span>
<span className={styles.titleSubtext}>
{intl.formatMessage({
id: "myStay.receipt.finalVatBreakdownInfo",
defaultMessage:
"Final VAT breakdown will be provided at check-out.",
})}
@@ -53,6 +59,7 @@ export default async function Total({ booking, currency }: TotalProps) {
<Typography>
<dt>
{intl.formatMessage({
id: "receipt.totalIncludingVat",
defaultMessage: "Total including VAT",
})}
</dt>
@@ -67,6 +74,7 @@ export default async function Total({ booking, currency }: TotalProps) {
<Typography>
<dt className={styles.tertiary}>
{intl.formatMessage({
id: "receipt.totalExcludingVat",
defaultMessage: "Total excluding VAT",
})}
</dt>
@@ -85,6 +93,7 @@ export default async function Total({ booking, currency }: TotalProps) {
<Typography>
<dt className={styles.tertiary}>
{intl.formatMessage({
id: "common.vat",
defaultMessage: "VAT",
})}
</dt>

View File

@@ -152,6 +152,7 @@ export async function Receipt({ refId }: { refId: string }) {
<Typography variant="Body/Supporting text (caption)/smRegular">
{/* eslint-disable-next-line formatjs/no-literal-string-in-jsx */}
<div>{`${intl.formatMessage({
id: "myStay.receipt.member",
defaultMessage: "Member",
})} ${maskedBooking.guest.membershipNumber}`}</div>
</Typography>
@@ -204,6 +205,7 @@ export async function Receipt({ refId }: { refId: string }) {
<Typography variant="Title/md">
<h1>
{intl.formatMessage({
id: "myStay.accessDenied.loginRequired",
defaultMessage: "You need to be logged in to view your booking",
})}
</h1>
@@ -211,6 +213,7 @@ export async function Receipt({ refId }: { refId: string }) {
<Typography variant="Body/Lead text">
<p>
{intl.formatMessage({
id: "myStay.accessDenied.loginRequiredMessage",
defaultMessage:
"And you need to be logged in with the same member account that made the booking.",
})}