Merge pull request #18636 from Snuffleupagus/PDFDocumentProperties-#getL10nStr

Introduce a helper method for fetching l10n-data in `PDFDocumentProperties`
This commit is contained in:
Tim van der Meij 2024-08-23 20:13:19 +02:00 committed by GitHub
commit f025cecace
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 15 additions and 20 deletions

View File

@ -66,7 +66,7 @@ class L10n {
args, args,
}, },
]); ]);
return messages?.[0].value || fallback; return messages[0]?.value || fallback;
} }
/** @inheritdoc */ /** @inheritdoc */

View File

@ -235,13 +235,17 @@ class PDFDocumentProperties {
} }
} }
#getL10nStr(id, args = null) {
return this.l10n.get(`pdfjs-document-properties-${id}`, args);
}
async #parseFileSize(fileSize = 0) { async #parseFileSize(fileSize = 0) {
const kb = fileSize / 1024, const kb = fileSize / 1024,
mb = kb / 1024; mb = kb / 1024;
if (!kb) { if (!kb) {
return undefined; return undefined;
} }
return this.l10n.get(`pdfjs-document-properties-${mb >= 1 ? "mb" : "kb"}`, { return this.#getL10nStr(mb >= 1 ? "mb" : "kb", {
size_mb: mb >= 1 && (+mb.toPrecision(3)).toLocaleString(), size_mb: mb >= 1 && (+mb.toPrecision(3)).toLocaleString(),
size_kb: mb < 1 && (+kb.toPrecision(3)).toLocaleString(), size_kb: mb < 1 && (+kb.toPrecision(3)).toLocaleString(),
size_b: fileSize.toLocaleString(), size_b: fileSize.toLocaleString(),
@ -314,24 +318,17 @@ class PDFDocumentProperties {
const [{ width, height }, unit, name, orientation] = await Promise.all([ const [{ width, height }, unit, name, orientation] = await Promise.all([
this._isNonMetricLocale ? sizeInches : sizeMillimeters, this._isNonMetricLocale ? sizeInches : sizeMillimeters,
this.l10n.get( this.#getL10nStr(
`pdfjs-document-properties-page-size-unit-${ `page-size-unit-${this._isNonMetricLocale ? "inches" : "millimeters"}`
this._isNonMetricLocale ? "inches" : "millimeters"
}`
), ),
rawName && rawName && this.#getL10nStr(`page-size-name-${rawName}`),
this.l10n.get(`pdfjs-document-properties-page-size-name-${rawName}`), this.#getL10nStr(
this.l10n.get( `page-size-orientation-${isPortrait ? "portrait" : "landscape"}`
`pdfjs-document-properties-page-size-orientation-${
isPortrait ? "portrait" : "landscape"
}`
), ),
]); ]);
return this.l10n.get( return this.#getL10nStr(
`pdfjs-document-properties-page-size-dimension-${ `page-size-dimension-${name ? "name-" : ""}string`,
name ? "name-" : ""
}string`,
{ {
width: width.toLocaleString(), width: width.toLocaleString(),
height: height.toLocaleString(), height: height.toLocaleString(),
@ -347,16 +344,14 @@ class PDFDocumentProperties {
if (!dateObject) { if (!dateObject) {
return undefined; return undefined;
} }
return this.l10n.get("pdfjs-document-properties-date-string", { return this.#getL10nStr("date-string", {
date: dateObject.toLocaleDateString(), date: dateObject.toLocaleDateString(),
time: dateObject.toLocaleTimeString(), time: dateObject.toLocaleTimeString(),
}); });
} }
#parseLinearization(isLinearized) { #parseLinearization(isLinearized) {
return this.l10n.get( return this.#getL10nStr(`linearized-${isLinearized ? "yes" : "no"}`);
`pdfjs-document-properties-linearized-${isLinearized ? "yes" : "no"}`
);
} }
} }