1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-20 15:18:08 +02:00

[GENERIC viewer] Add Fluent PLATFORM function (PR 19414 follow-up)

This patch extends the `FeatureTest.platform` getter to provide the necessary information, and uses that one to implement a Fluent `PLATFORM` function based on: https://searchfox.org/mozilla-central/rev/d1fbe983fb7720f0a4aca0e748817af11c1a374e/intl/l10n/rust/fluent-ffi/src/bundle.rs#81-98
This commit is contained in:
Jonas Jenwald 2025-02-06 18:34:31 +01:00
parent f1152f5caf
commit d5d3d8b3f7
2 changed files with 32 additions and 7 deletions

View file

@ -15,14 +15,33 @@
/** @typedef {import("./interfaces").IL10n} IL10n */
import { FeatureTest, fetchData } from "pdfjs-lib";
import { FluentBundle, FluentResource } from "fluent-bundle";
import { DOMLocalization } from "fluent-dom";
import { fetchData } from "pdfjs-lib";
import { L10n } from "./l10n.js";
function PLATFORM() {
const { isAndroid, isLinux, isMac, isWindows } = FeatureTest.platform;
if (isLinux) {
return "linux";
}
if (isWindows) {
return "windows";
}
if (isMac) {
return "macos";
}
if (isAndroid) {
return "android";
}
return "other";
}
function createBundle(lang, text) {
const resource = new FluentResource(text);
const bundle = new FluentBundle(lang);
const bundle = new FluentBundle(lang, {
functions: { PLATFORM },
});
const errors = bundle.addResource(resource);
if (errors.length) {
console.error("L10n errors", errors);