PageSourceSearch

https://mijn.schoolleidersbeurs-vo.nl/dist/scripts/project/transla…yfg_qSIreVBZc7upMNXA1Fv_YatYoVrLSMkblPAGC7E

js schoolleidersbeurs-vo.nl collected 2026-10-06 11:22:06 UTC 4,593 bytes, 112 lines download raw bytes

1var Translation;
2(function (Translation) {
3    // In-memory store: resourceFile -> { key -> value }
4    const store = {};
5    // Defaults embedded at generation-time for immediate fallbacks
6    const defaults = {};
7    const TS_NAMESPACE = "TypeScriptResources";
8    function toResourceName(file) {
9        // If already fully-qualified, return as-is
10        if (file.indexOf(".") >= 0)
11            return file;
12        return `${TS_NAMESPACE}.${file}`;
13    }
14    /**
15     * Synchronous getter used by the generated TypeScript translation files (Admin.ts, Api.ts, etc.) to retrieve a translation.
16     */
17    function get(resourceFile, key) {
18        const name = toResourceName(resourceFile);
19        if (store[name] && store[name][key] !== undefined)
20            return store[name][key];
21        if (defaults[name] && defaults[name][key] !== undefined)
22            return defaults[name][key];
23        return "";
24    }
25    Translation.get = get;
26    /**
27     * Preload a single resource from server and merge with defaults
28     */
29    async function preload(resourceFile) {
30        const name = toResourceName(resourceFile);
31        // Ensure defaults entry exists
32        if (!defaults[name])
33            defaults[name] = {};
34        try {
35            const culture = String(Translation.currentLanguage || $("#activeLanguage").val() || "nl-NL");
36            const url = `/ResourceManagement/Translations/SingleResourceFile?resourceFile=${name}&culture=${culture}`;
37            const raw = await $.getJSON(url);
38            const success = (raw.Success ?? true);
39            if (!success) {
40                // Fallback: keep only defaults
41                fallbackToDefault();
42                return;
43            }
44            const payload = (raw.Object ?? {});
45            if (!payload || !payload.Resources) {
46                // No usable data -> fallback to defaults
47                fallbackToDefault();
48                return;
49            }
50            const serverValues = payload.Resources || {};
51            // Merge server values over defaults
52            store[name] = Object.assign({}, defaults[name], serverValues);
53        }
54        catch (e) {
55            // Fail -> fallback to defaults
56            fallbackToDefault();
57        }
58        function fallbackToDefault() {
59            store[name] = Object.assign({}, defaults[name]);
60        }
61    }
62    Translation.preload = preload;
63    /**
64     * Preload multiple resource files from server and merge with defaults
65     */
66    async function preloadAll(resourceFiles) {
67        const culture = String(Translation.currentLanguage || $("#activeLanguage").val() || "nl-NL");
68        const canonical = resourceFiles.map(toResourceName);
69        // Build multi-value query: ?resourceFiles=A&resourceFiles=B&...
70        const query = canonical.map(r => "resourceFiles=" + encodeURIComponent(r)).join("&");
71        const url = `/ResourceManagement/Translations/MultipleResourceFiles?culture=${culture}&${query}`;
72        try {
73            const raw = await $.getJSON(url);
74            const success = (raw.Success ?? true);
75            if (!success) {
76                fallbackToDefault(resourceFiles);
77                return;
78            }
79            const payload = (raw.Object ?? {});
80            if (!payload || !payload.Resources) {
81                fallbackToDefault(resourceFiles);
82                return;
83            }
84            for (const resourceName of Object.keys(payload.Resources)) {
85                const bundle = payload.Resources[resourceName];
86                if (!bundle) {
87                    continue;
88                }
89                const serverValues = bundle.values || {};
90                // Merge on top of defaults
91                store[resourceName] = Object.assign({}, defaults[resourceName] || {}, serverValues);
92            }
93        }
94        catch (err) {
95            fallbackToDefault(resourceFiles);
96        }
97        function fallbackToDefault(resourceFiles) {
98            for (const file of resourceFiles) {
99                const name = toResourceName(file);
100                store[name] = Object.assign({}, defaults[name] || {});
101            }
102        }
103    }
104    Translation.preloadAll = preloadAll;
105    /**
106     * INTERNAL: Used by generated TypeScript translation files (Admin.ts, Api.ts, etc.) to populate defaults at startup (filled by T4)
107     */
108    function __registerDefaults(resourceFile, data) {
109        defaults[resourceFile] = Object.assign({}, defaults[resourceFile] || {}, data);
110    }
111    Translation.__registerDefaults = __registerDefaults;
112})(Translation || (Translation = {}));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.