@stackkit-translate/http
v1.1.0
Published
HTTP fetch loader for stackkit-translate locale JSON and JS resource files.
Downloads
0
Maintainers
Readme
@stackkit-translate/http
HTTP loaders for @stackkit-translate/core — lazy JSON locale files, JS resource modules, multi-file merge, and namespace composition (ngx-translate MultiTranslateHttpLoader parity).
Current release: 1.0.0 — Depends on @stackkit-translate/core ^1.0.0. See monorepo CHANGELOG.
Docs: translate docs — HTTP API and recipes.
Keywords: translate i18n http-loader json localization
Install
npm install @stackkit-translate/http @stackkit-translate/coreUsage — JSON locales
import { createTranslate } from "@stackkit-translate/core";
import { createFetchLoader } from "@stackkit-translate/http";
const translate = createTranslate({
lang: "en",
fallbackLang: "en",
loader: createFetchLoader({ prefix: "/assets/i18n/", suffix: ".json" })
});
// Fetches /assets/i18n/en.json, /assets/i18n/fr.json, …Angular:
import { provideTranslateService } from "@stackkit-translate/angular";
import { createFetchLoader } from "@stackkit-translate/http";
provideTranslateService({
lang: "en",
loader: createFetchLoader({ prefix: "/assets/i18n/", suffix: ".json" })
});Usage — JS resource files
import { createJsLoader } from "@stackkit-translate/http";
const loader = createJsLoader({ prefix: "/assets/resources/" });
// Fetches /assets/resources/en.js, /assets/resources/hi.jsEach .js file exports a translation object:
// hi.js
export default {
APP: { TITLE: "नमस्ते" },
WELCOME: "स्वागत है, {{name}}!"
};Usage — multi-file merge
import { createMultiFetchLoaderFromPrefixes } from "@stackkit-translate/http";
const loader = createMultiFetchLoaderFromPrefixes([
"/assets/i18n/common/",
"/assets/i18n/app/"
]);Usage — namespaces
import { createNamespaceLoader } from "@stackkit-translate/http";
const loader = createNamespaceLoader({
prefix: "/assets/i18n/",
namespaces: ["common", "admin"]
});
// Resolves keys like common.HELLO, admin.PANELAPI (selected)
| Export | Description |
| --- | --- |
| createFetchLoader({ prefix, suffix }) | Single JSON file per language. |
| createJsLoader({ prefix }) | ES module locale files. |
| createResourceLoader({ prefix, extension }) | Explicit extension (.json or .js). |
| createMultiFetchLoader() | Merge multiple JSON sources per lang. |
| createNamespaceLoader() | Prefix keys by namespace segment. |
Related packages
@stackkit-translate/core— translation engine.@stackkit-translate/angular— wire loader viaprovideTranslateService().@stackkit-translate/enterprise— CDN bundle publisher/loader, namespace preload strategy.
