gt-next@6.14.0
Überblick
Ein neuer useVersionId-Hook und die neue Hilfsfunktion getVersionId sind jetzt in allen GT-JavaScript-Paketen verfügbar. Damit können Sie die _versionId zur Laufzeit aus Ihrer GT-Konfiguration auslesen — nützlich für Debugging, Cache-Busting, Logging und um nachzuverfolgen, welche Version Ihrer Übersetzungen aktuell aktiv ist.
| Paket | Version | Export |
|---|---|---|
gt-next | 6.14.0 | useVersionId (Client und Server), getVersionId (Funktion) |
gt-i18n | 0.7.0 | getVersionId (Funktion) |
gt-node | 0.4.0 | getVersionId (Funktion) |
gt-tanstack-start | 0.2.0 | getVersionId (Funktion) |
gt-i18n (Python) | 0.3.0 | get_version_id() (Funktion) |
gt-fastapi | 0.3.0 | get_version_id() (Funktion) |
gt-flask | 0.3.0 | get_version_id() (Funktion) |
Verwendung
Next.js (Client)
import { useVersionId } from 'gt-next';
function DebugFooter() {
const versionId = useVersionId();
return <footer>Translation version: {versionId ?? 'unknown'}</footer>;
}Next.js (Server)
import { useVersionId } from 'gt-next/server';
export default function Page() {
const versionId = useVersionId();
// in server components, Logging, Headern usw. verwenden
}Node / ohne React
import { getVersionId } from 'gt-i18n';
// oder: import { getVersionId } from 'gt-node';
console.log('Aktuelle Übersetzungsversion:', getVersionId());Python (gt-fastapi / gt-flask)
from gt_i18n import get_version_id
# oder: from gt_fastapi import get_version_id
# oder: from gt_flask import get_version_id
print("Aktuelle Übersetzungsversion:", get_version_id())Sie können außerdem version_id direkt an initialize_gt() übergeben:
initialize_gt(version_id="abc123", ...)Konfiguration
Setzen Sie _versionId in Ihrer gt.config.json. Dieser Wert wird automatisch durch die CLI festgelegt, wenn Sie den Befehl translate ausführen:
{
"defaultLocale": "en",
"locales": ["en", "es", "fr"],
"_versionId": "abc123"
}Was kommt als Nächstes
Da Gebietsschema und Versions-ID nun zur Laufzeit verfügbar sind, ist der nächste Schritt Analytics-Tracking — damit Developer nachvollziehen können, welche Übersetzungen tatsächlich zusammen mit ihren Analytics-Ereignissen gerendert werden.
Geplant ist die Einführung einer Hash-Aggregation: Wenn Übersetzungskomponenten wie <T>, gt() und m() zur Laufzeit aufgelöst werden, würden ihre Hashes in einem nachverfolgbaren Set gesammelt. Ein neuer useAnalytics()-Hook würde es Developern ermöglichen, die aktuelle Menge aufgelöster Hashes genau in dem Moment auszulesen, in dem ein Analytics-Ereignis ausgelöst wird, und ein <AnalyticsScope>-Wrapper würde erlauben, diese Erfassung auf bestimmte Teile des React-Baums zu begrenzen.