@react-text-game/core 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +98 -1
- package/dist/game.d.ts.map +1 -1
- package/dist/game.js +2 -0
- package/dist/game.js.map +1 -1
- package/dist/i18n/constants.d.ts +21 -0
- package/dist/i18n/constants.d.ts.map +1 -0
- package/dist/i18n/constants.js +21 -0
- package/dist/i18n/constants.js.map +1 -0
- package/dist/i18n/hooks/index.d.ts +13 -0
- package/dist/i18n/hooks/index.d.ts.map +1 -0
- package/dist/i18n/hooks/index.js +13 -0
- package/dist/i18n/hooks/index.js.map +1 -0
- package/dist/i18n/hooks/useGameTranslation.d.ts +81 -0
- package/dist/i18n/hooks/useGameTranslation.d.ts.map +1 -0
- package/dist/i18n/hooks/useGameTranslation.js +102 -0
- package/dist/i18n/hooks/useGameTranslation.js.map +1 -0
- package/dist/i18n/index.d.ts +69 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +69 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/init.d.ts +62 -0
- package/dist/i18n/init.d.ts.map +1 -0
- package/dist/i18n/init.js +114 -0
- package/dist/i18n/init.js.map +1 -0
- package/dist/i18n/types.d.ts +54 -0
- package/dist/i18n/types.d.ts.map +1 -0
- package/dist/i18n/types.js +2 -0
- package/dist/i18n/types.js.map +1 -0
- package/dist/i18n/utils.d.ts +55 -0
- package/dist/i18n/utils.d.ts.map +1 -0
- package/dist/i18n/utils.js +75 -0
- package/dist/i18n/utils.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/options.d.ts +2 -0
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +2 -0
- package/dist/options.js.map +1 -1
- package/dist/tests/game.test.js.map +1 -1
- package/dist/tests/i18n.test.d.ts +2 -0
- package/dist/tests/i18n.test.d.ts.map +1 -0
- package/dist/tests/i18n.test.js +590 -0
- package/dist/tests/i18n.test.js.map +1 -0
- package/package.json +17 -6
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { I18nConfig } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Initializes the i18n (internationalization) system for the game engine.
|
|
4
|
+
*
|
|
5
|
+
* This function sets up i18next with the provided configuration, automatically loads
|
|
6
|
+
* UI translations from the @react-text-game/ui package (if installed), and merges them
|
|
7
|
+
* with user-provided translation resources. It also loads the user's saved language
|
|
8
|
+
* preference from the database.
|
|
9
|
+
*
|
|
10
|
+
* The initialization process:
|
|
11
|
+
* 1. Loads UI translations from the UI package (if available)
|
|
12
|
+
* 2. Merges user resources with UI translations (user translations take precedence)
|
|
13
|
+
* 3. Loads the saved language preference from the database
|
|
14
|
+
* 4. Initializes i18next with the merged resources and saved language
|
|
15
|
+
* 5. Registers any additional i18next modules provided in the config
|
|
16
|
+
*
|
|
17
|
+
* **Important:** This function should be called once during game initialization,
|
|
18
|
+
* typically before rendering any UI components.
|
|
19
|
+
*
|
|
20
|
+
* @param {I18nConfig} [config] - Optional configuration object. If not provided,
|
|
21
|
+
* uses DEFAULT_CONFIG (English as default/fallback language).
|
|
22
|
+
*
|
|
23
|
+
* @returns {Promise<void>} A promise that resolves when i18n initialization is complete.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Basic initialization with default config (English)
|
|
28
|
+
* await initI18n();
|
|
29
|
+
*
|
|
30
|
+
* // Initialize with custom configuration
|
|
31
|
+
* await initI18n({
|
|
32
|
+
* defaultLanguage: 'en',
|
|
33
|
+
* fallbackLanguage: 'en',
|
|
34
|
+
* debug: false,
|
|
35
|
+
* resources: {
|
|
36
|
+
* en: {
|
|
37
|
+
* passages: { intro: 'Welcome to the game' },
|
|
38
|
+
* common: { save: 'Save', load: 'Load' }
|
|
39
|
+
* },
|
|
40
|
+
* ru: {
|
|
41
|
+
* passages: { intro: 'Добро пожаловать в игру' },
|
|
42
|
+
* common: { save: 'Сохранить', load: 'Загрузить' }
|
|
43
|
+
* }
|
|
44
|
+
* }
|
|
45
|
+
* });
|
|
46
|
+
*
|
|
47
|
+
* // With additional i18next modules
|
|
48
|
+
* import LanguageDetector from 'i18next-browser-languagedetector';
|
|
49
|
+
*
|
|
50
|
+
* await initI18n({
|
|
51
|
+
* defaultLanguage: 'en',
|
|
52
|
+
* resources: { ... },
|
|
53
|
+
* modules: [LanguageDetector]
|
|
54
|
+
* });
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @see {@link I18nConfig} for configuration options
|
|
58
|
+
* @see {@link useGameTranslation} for using translations in React components
|
|
59
|
+
* @see {@link getGameTranslation} for using translations outside React components
|
|
60
|
+
*/
|
|
61
|
+
export declare function initI18n(config?: I18nConfig): Promise<void>;
|
|
62
|
+
//# sourceMappingURL=init.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/i18n/init.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,wBAAsB,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,iBAiEjD"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import i18next from "i18next";
|
|
2
|
+
import { initReactI18next } from "react-i18next";
|
|
3
|
+
import { logger } from "../logger";
|
|
4
|
+
import { getSetting } from "../saves/db";
|
|
5
|
+
import { DEFAULT_CONFIG } from "./constants";
|
|
6
|
+
import { loadUITranslations } from "./utils";
|
|
7
|
+
/**
|
|
8
|
+
* Initializes the i18n (internationalization) system for the game engine.
|
|
9
|
+
*
|
|
10
|
+
* This function sets up i18next with the provided configuration, automatically loads
|
|
11
|
+
* UI translations from the @react-text-game/ui package (if installed), and merges them
|
|
12
|
+
* with user-provided translation resources. It also loads the user's saved language
|
|
13
|
+
* preference from the database.
|
|
14
|
+
*
|
|
15
|
+
* The initialization process:
|
|
16
|
+
* 1. Loads UI translations from the UI package (if available)
|
|
17
|
+
* 2. Merges user resources with UI translations (user translations take precedence)
|
|
18
|
+
* 3. Loads the saved language preference from the database
|
|
19
|
+
* 4. Initializes i18next with the merged resources and saved language
|
|
20
|
+
* 5. Registers any additional i18next modules provided in the config
|
|
21
|
+
*
|
|
22
|
+
* **Important:** This function should be called once during game initialization,
|
|
23
|
+
* typically before rendering any UI components.
|
|
24
|
+
*
|
|
25
|
+
* @param {I18nConfig} [config] - Optional configuration object. If not provided,
|
|
26
|
+
* uses DEFAULT_CONFIG (English as default/fallback language).
|
|
27
|
+
*
|
|
28
|
+
* @returns {Promise<void>} A promise that resolves when i18n initialization is complete.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* // Basic initialization with default config (English)
|
|
33
|
+
* await initI18n();
|
|
34
|
+
*
|
|
35
|
+
* // Initialize with custom configuration
|
|
36
|
+
* await initI18n({
|
|
37
|
+
* defaultLanguage: 'en',
|
|
38
|
+
* fallbackLanguage: 'en',
|
|
39
|
+
* debug: false,
|
|
40
|
+
* resources: {
|
|
41
|
+
* en: {
|
|
42
|
+
* passages: { intro: 'Welcome to the game' },
|
|
43
|
+
* common: { save: 'Save', load: 'Load' }
|
|
44
|
+
* },
|
|
45
|
+
* ru: {
|
|
46
|
+
* passages: { intro: 'Добро пожаловать в игру' },
|
|
47
|
+
* common: { save: 'Сохранить', load: 'Загрузить' }
|
|
48
|
+
* }
|
|
49
|
+
* }
|
|
50
|
+
* });
|
|
51
|
+
*
|
|
52
|
+
* // With additional i18next modules
|
|
53
|
+
* import LanguageDetector from 'i18next-browser-languagedetector';
|
|
54
|
+
*
|
|
55
|
+
* await initI18n({
|
|
56
|
+
* defaultLanguage: 'en',
|
|
57
|
+
* resources: { ... },
|
|
58
|
+
* modules: [LanguageDetector]
|
|
59
|
+
* });
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @see {@link I18nConfig} for configuration options
|
|
63
|
+
* @see {@link useGameTranslation} for using translations in React components
|
|
64
|
+
* @see {@link getGameTranslation} for using translations outside React components
|
|
65
|
+
*/
|
|
66
|
+
export async function initI18n(config) {
|
|
67
|
+
const { defaultLanguage = "en", fallbackLanguage = "en", debug = false, resources, modules = [], } = (config || DEFAULT_CONFIG);
|
|
68
|
+
const uiTranslations = await loadUITranslations();
|
|
69
|
+
if (Object.keys(uiTranslations).length === 0) {
|
|
70
|
+
logger.log("UI translations not found.");
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
logger.log("UI translations loaded successfully.");
|
|
74
|
+
}
|
|
75
|
+
// Merge user resources with UI translations
|
|
76
|
+
// User resources take precedence over UI translations
|
|
77
|
+
const mergedResources = {};
|
|
78
|
+
for (const [lang, namespaces] of Object.entries(resources || {})) {
|
|
79
|
+
mergedResources[lang] = {
|
|
80
|
+
// UI translations as defaults
|
|
81
|
+
...(uiTranslations[lang] || {}),
|
|
82
|
+
// User resources can override UI translations
|
|
83
|
+
...namespaces,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
// Add UI translations for languages not provided by user
|
|
87
|
+
for (const [lang, translations] of Object.entries(uiTranslations)) {
|
|
88
|
+
if (!mergedResources[lang]) {
|
|
89
|
+
mergedResources[lang] = translations;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
// Load saved language preference from database (if available)
|
|
93
|
+
const savedLanguage = await getSetting("language", defaultLanguage);
|
|
94
|
+
logger.log(`Saved language: ${savedLanguage}`);
|
|
95
|
+
// Extract all available languages from resources
|
|
96
|
+
const supportedLanguages = Object.keys(mergedResources);
|
|
97
|
+
let i18nInstance = i18next.use(initReactI18next);
|
|
98
|
+
modules.forEach(module => {
|
|
99
|
+
i18nInstance = i18nInstance.use(module);
|
|
100
|
+
});
|
|
101
|
+
await i18nInstance.init({
|
|
102
|
+
lng: savedLanguage, // Use saved language or default
|
|
103
|
+
fallbackLng: fallbackLanguage,
|
|
104
|
+
supportedLngs: supportedLanguages, // Explicitly list all supported languages
|
|
105
|
+
defaultNS: "common",
|
|
106
|
+
debug,
|
|
107
|
+
resources: mergedResources,
|
|
108
|
+
interpolation: {
|
|
109
|
+
escapeValue: false, // React already escapes
|
|
110
|
+
},
|
|
111
|
+
});
|
|
112
|
+
logger.log(`i18n initialized with language: ${i18next.language}, fallback: ${fallbackLanguage}, supported languages: ${supportedLanguages.join(', ')}`);
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/i18n/init.ts"],"names":[],"mappings":"AAAA,OAAO,OAAqB,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,MAAmB;IAC9C,MAAM,EACF,eAAe,GAAG,IAAI,EACtB,gBAAgB,GAAG,IAAI,EACvB,KAAK,GAAG,KAAK,EACb,SAAS,EACT,OAAO,GAAG,EAAE,GACf,GAAG,CAAC,MAAM,IAAI,cAAc,CAAe,CAAC;IAE7C,MAAM,cAAc,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAElD,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACJ,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IACvD,CAAC;IAED,4CAA4C;IAC5C,sDAAsD;IACtD,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,CAAC;QAC/D,eAAe,CAAC,IAAI,CAAC,GAAG;YACpB,8BAA8B;YAC9B,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,8CAA8C;YAC9C,GAAG,UAAU;SAChB,CAAC;IACN,CAAC;IAED,yDAAyD;IACzD,KAAK,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAChE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,eAAe,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC;QACzC,CAAC;IACL,CAAC;IAED,8DAA8D;IAC9D,MAAM,aAAa,GAAG,MAAM,UAAU,CAAS,UAAU,EAAE,eAAe,CAAC,CAAC;IAE5E,MAAM,CAAC,GAAG,CAAC,mBAAmB,aAAa,EAAE,CAAC,CAAC;IAE/C,iDAAiD;IACjD,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAExD,IAAI,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACjD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACrB,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,CAAC,IAAI,CAAC;QACpB,GAAG,EAAE,aAAa,EAAE,gCAAgC;QACpD,WAAW,EAAE,gBAAgB;QAC7B,aAAa,EAAE,kBAAkB,EAAE,0CAA0C;QAC7E,SAAS,EAAE,QAAQ;QACnB,KAAK;QACL,SAAS,EAAE,eAAe;QAC1B,aAAa,EAAE;YACX,WAAW,EAAE,KAAK,EAAE,wBAAwB;SAC/C;KACJ,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CACN,mCAAmC,OAAO,CAAC,QAAQ,eAAe,gBAAgB,0BAA0B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC9I,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Module, Resource } from "i18next";
|
|
2
|
+
/**
|
|
3
|
+
* Configuration options for initializing the i18n system in the game engine.
|
|
4
|
+
* This type defines all available settings for internationalization, including
|
|
5
|
+
* language preferences, translation resources, and optional i18next modules.
|
|
6
|
+
*/
|
|
7
|
+
export type I18nConfig = {
|
|
8
|
+
/**
|
|
9
|
+
* The default language code to use when no saved language preference exists.
|
|
10
|
+
* Should be an ISO 639-1 language code (e.g., "en", "ru", "de").
|
|
11
|
+
* @default "en"
|
|
12
|
+
*/
|
|
13
|
+
defaultLanguage?: string;
|
|
14
|
+
/**
|
|
15
|
+
* The fallback language code to use when a translation is missing in the current language.
|
|
16
|
+
* Should be an ISO 639-1 language code (e.g., "en", "ru", "de").
|
|
17
|
+
* @default "en"
|
|
18
|
+
*/
|
|
19
|
+
fallbackLanguage?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Enable debug mode for i18next. When enabled, logs translation keys and warnings
|
|
22
|
+
* to the console, and includes the special "cimode" language in available languages.
|
|
23
|
+
* @default false
|
|
24
|
+
*/
|
|
25
|
+
debug?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Translation resources organized by language and namespace.
|
|
28
|
+
* Structure: `{ [languageCode]: { [namespace]: { [key]: translation } } }`
|
|
29
|
+
* Example:
|
|
30
|
+
* ```typescript
|
|
31
|
+
* {
|
|
32
|
+
* en: {
|
|
33
|
+
* common: { greeting: "Hello" },
|
|
34
|
+
* passages: { intro: "Welcome to the game" }
|
|
35
|
+
* },
|
|
36
|
+
* ru: {
|
|
37
|
+
* common: { greeting: "Привет" },
|
|
38
|
+
* passages: { intro: "Добро пожаловать в игру" }
|
|
39
|
+
* }
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
* @default {}
|
|
43
|
+
*/
|
|
44
|
+
resources?: Resource;
|
|
45
|
+
/**
|
|
46
|
+
* Optional array of i18next modules/plugins to extend functionality.
|
|
47
|
+
* Common modules include i18next-http-backend, i18next-browser-languagedetector, etc.
|
|
48
|
+
* The initReactI18next module is already included by default.
|
|
49
|
+
* @default []
|
|
50
|
+
* @see https://www.i18next.com/overview/plugins-and-utils
|
|
51
|
+
*/
|
|
52
|
+
modules?: Array<Module>;
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/i18n/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACrB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC;IAErB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC3B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/i18n/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Safely loads UI translations from the @react-text-game/ui package.
|
|
3
|
+
*
|
|
4
|
+
* This function attempts to dynamically import translations from the UI package.
|
|
5
|
+
* If the UI package is not installed (which is expected for games using custom UIs),
|
|
6
|
+
* it returns an empty object instead of throwing an error.
|
|
7
|
+
*
|
|
8
|
+
* The returned translations are organized by language code and namespace:
|
|
9
|
+
* `{ [languageCode]: { [namespace]: { [key]: translation } } }`
|
|
10
|
+
*
|
|
11
|
+
* @returns {Promise<Record<string, Record<string, object>>>} A promise that resolves to
|
|
12
|
+
* UI translations organized by language and namespace, or an empty object if
|
|
13
|
+
* the UI package is not installed.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const uiTranslations = await loadUITranslations();
|
|
18
|
+
* // Returns: { en: { ui: { save: "Save", load: "Load" } }, ru: { ui: { save: "Сохранить" } } }
|
|
19
|
+
* // Or: {} (if UI package not installed)
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare function loadUITranslations(): Promise<Record<string, Record<string, object>>>;
|
|
23
|
+
/**
|
|
24
|
+
* Gets a translation function (t) scoped to a specific namespace and the current language.
|
|
25
|
+
*
|
|
26
|
+
* This function provides a convenient way to get translations outside of React components
|
|
27
|
+
* (where you would normally use the `useGameTranslation` hook). It uses i18next's `getFixedT`
|
|
28
|
+
* method to create a translation function bound to the current language and specified namespace.
|
|
29
|
+
*
|
|
30
|
+
* The translation function updates automatically when the language changes because it reads
|
|
31
|
+
* `i18next.language` dynamically at call time.
|
|
32
|
+
*
|
|
33
|
+
* @param {string} [namespace='passages'] - The translation namespace to use. Defaults to 'passages'.
|
|
34
|
+
* Common namespaces include 'passages', 'common', 'ui', etc.
|
|
35
|
+
*
|
|
36
|
+
* @returns {i18next.TFunction} A translation function that can be used to translate keys
|
|
37
|
+
* within the specified namespace.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* // Get translations for passages
|
|
42
|
+
* const t = getGameTranslation('passages');
|
|
43
|
+
* const welcomeText = t('intro'); // "Welcome to the game"
|
|
44
|
+
*
|
|
45
|
+
* // Get translations for common namespace
|
|
46
|
+
* const tCommon = getGameTranslation('common');
|
|
47
|
+
* const greeting = tCommon('greeting'); // "Hello"
|
|
48
|
+
*
|
|
49
|
+
* // Use in non-React contexts (e.g., game logic, utility functions)
|
|
50
|
+
* const t = getGameTranslation();
|
|
51
|
+
* const passageText = t('forest.description');
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
export declare const getGameTranslation: (namespace?: string) => import("i18next").TFunction<string, undefined>;
|
|
55
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/i18n/utils.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAC/C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACzC,CAeA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,kBAAkB,GAAI,YAAW,MAAmB,mDAGhE,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import i18next from "i18next";
|
|
2
|
+
/**
|
|
3
|
+
* Safely loads UI translations from the @react-text-game/ui package.
|
|
4
|
+
*
|
|
5
|
+
* This function attempts to dynamically import translations from the UI package.
|
|
6
|
+
* If the UI package is not installed (which is expected for games using custom UIs),
|
|
7
|
+
* it returns an empty object instead of throwing an error.
|
|
8
|
+
*
|
|
9
|
+
* The returned translations are organized by language code and namespace:
|
|
10
|
+
* `{ [languageCode]: { [namespace]: { [key]: translation } } }`
|
|
11
|
+
*
|
|
12
|
+
* @returns {Promise<Record<string, Record<string, object>>>} A promise that resolves to
|
|
13
|
+
* UI translations organized by language and namespace, or an empty object if
|
|
14
|
+
* the UI package is not installed.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const uiTranslations = await loadUITranslations();
|
|
19
|
+
* // Returns: { en: { ui: { save: "Save", load: "Load" } }, ru: { ui: { save: "Сохранить" } } }
|
|
20
|
+
* // Or: {} (if UI package not installed)
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export async function loadUITranslations() {
|
|
24
|
+
try {
|
|
25
|
+
// UI package is a peer dependency and may not be installed.
|
|
26
|
+
// This dynamic import will fail gracefully at runtime if UI package is not available.
|
|
27
|
+
// Using @ts-ignore instead of @ts-expect-error because the error may or may not exist
|
|
28
|
+
// depending on whether the UI package is built/installed.
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
30
|
+
// @ts-ignore
|
|
31
|
+
const { uiTranslations } = await import("@react-text-game/ui/i18n");
|
|
32
|
+
return uiTranslations;
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
|
+
}
|
|
35
|
+
catch (_e) {
|
|
36
|
+
// UI package isn't installed - this is expected for users with custom UIs
|
|
37
|
+
return {};
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Gets a translation function (t) scoped to a specific namespace and the current language.
|
|
42
|
+
*
|
|
43
|
+
* This function provides a convenient way to get translations outside of React components
|
|
44
|
+
* (where you would normally use the `useGameTranslation` hook). It uses i18next's `getFixedT`
|
|
45
|
+
* method to create a translation function bound to the current language and specified namespace.
|
|
46
|
+
*
|
|
47
|
+
* The translation function updates automatically when the language changes because it reads
|
|
48
|
+
* `i18next.language` dynamically at call time.
|
|
49
|
+
*
|
|
50
|
+
* @param {string} [namespace='passages'] - The translation namespace to use. Defaults to 'passages'.
|
|
51
|
+
* Common namespaces include 'passages', 'common', 'ui', etc.
|
|
52
|
+
*
|
|
53
|
+
* @returns {i18next.TFunction} A translation function that can be used to translate keys
|
|
54
|
+
* within the specified namespace.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```typescript
|
|
58
|
+
* // Get translations for passages
|
|
59
|
+
* const t = getGameTranslation('passages');
|
|
60
|
+
* const welcomeText = t('intro'); // "Welcome to the game"
|
|
61
|
+
*
|
|
62
|
+
* // Get translations for common namespace
|
|
63
|
+
* const tCommon = getGameTranslation('common');
|
|
64
|
+
* const greeting = tCommon('greeting'); // "Hello"
|
|
65
|
+
*
|
|
66
|
+
* // Use in non-React contexts (e.g., game logic, utility functions)
|
|
67
|
+
* const t = getGameTranslation();
|
|
68
|
+
* const passageText = t('forest.description');
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
export const getGameTranslation = (namespace = 'passages') => {
|
|
72
|
+
// Use i18next.language to get the current language dynamically
|
|
73
|
+
return i18next.getFixedT(i18next.language, namespace);
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/i18n/utils.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IAGpC,IAAI,CAAC;QACD,4DAA4D;QAC5D,sFAAsF;QACtF,sFAAsF;QACtF,0DAA0D;QAC1D,6DAA6D;QAC7D,aAAa;QACb,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QACpE,OAAO,cAAc,CAAC;QACtB,6DAA6D;IACjE,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACV,0EAA0E;QAC1E,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,YAAoB,UAAU,EAAE,EAAE;IACjE,+DAA+D;IAC/D,OAAO,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC1D,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export * from "./constants";
|
|
|
9
9
|
export * from "./hooks";
|
|
10
10
|
export type * from "./types";
|
|
11
11
|
export type { SimpleObject } from "./gameObjects/simpleObject";
|
|
12
|
-
export type {
|
|
13
|
-
export type {
|
|
12
|
+
export type { AnyHotspot, InteractiveMapOptions, InteractiveMapType, LabelHotspot, MapImageHotspot, MapLabelHotspot, MapMenu, SideImageHotspot, SideLabelHotspot, } from "./passages/interactiveMap";
|
|
13
|
+
export type { ActionsComponent, ActionType, AnotherStoryComponent, Component, ConversationAppearance, ConversationBubble, ConversationBubbleSide, ConversationComponent, ConversationVariant, HeaderComponent, HeaderLevel, ImageComponent, StoryContent, StoryOptions, TextComponent, VideoComponent, } from "./passages/story";
|
|
14
14
|
export { BaseGameObject, createEntity, Game, InteractiveMap, newInteractiveMap, NewOptions, newStory, newWidget, Options, Passage, Story, Widget, };
|
|
15
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAErD,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,mBAAmB,QAAQ,CAAC;AAG5B,YAAY,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,YAAY,EACR,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAErD,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,mBAAmB,QAAQ,CAAC;AAG5B,YAAY,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,YAAY,EACR,UAAU,EACV,qBAAqB,EACrB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACR,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,SAAS,EACT,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,cAAc,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACH,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,cAAc,EACd,iBAAiB,EACjB,UAAU,EACV,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,GACT,CAAC"}
|
package/dist/options.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { I18nConfig } from "./i18n";
|
|
1
2
|
export type Options = {
|
|
2
3
|
gameName: string;
|
|
3
4
|
gameId: string;
|
|
@@ -6,6 +7,7 @@ export type Options = {
|
|
|
6
7
|
startPassage: string;
|
|
7
8
|
author: string;
|
|
8
9
|
isDevMode: boolean;
|
|
10
|
+
translations: I18nConfig;
|
|
9
11
|
};
|
|
10
12
|
export type NewOptions = Pick<Options, "gameName"> & Partial<Omit<Options, "gameName">>;
|
|
11
13
|
export declare const newOptions: (opts: NewOptions) => void;
|
package/dist/options.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGxC,MAAM,MAAM,OAAO,GAAG;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,UAAU,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;AAaxF,eAAO,MAAM,UAAU,GAAI,MAAM,UAAU,SAE1C,CAAC;AAEF,eAAO,MAAM,WAAW,eAAgB,CAAC"}
|
package/dist/options.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SYSTEM_PASSAGE_NAMES } from "./constants";
|
|
2
|
+
import { DEFAULT_CONFIG } from "./i18n/constants";
|
|
2
3
|
const options = {
|
|
3
4
|
gameName: "",
|
|
4
5
|
gameId: "",
|
|
@@ -7,6 +8,7 @@ const options = {
|
|
|
7
8
|
gameVersion: "1.0.0",
|
|
8
9
|
author: "",
|
|
9
10
|
isDevMode: false,
|
|
11
|
+
translations: DEFAULT_CONFIG,
|
|
10
12
|
};
|
|
11
13
|
export const newOptions = (opts) => {
|
|
12
14
|
Object.assign(options, opts);
|
package/dist/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAejD,MAAM,OAAO,GAAY;IACrB,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,oBAAoB,CAAC,KAAK;IACxC,WAAW,EAAE,OAAO;IACpB,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,KAAK;IAChB,YAAY,EAAE,cAAc;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAgB,EAAE,EAAE;IAC3C,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game.test.js","sourceRoot":"","sources":["../../src/tests/game.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"game.test.js","sourceRoot":"","sources":["../../src/tests/game.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.test.d.ts","sourceRoot":"","sources":["../../src/tests/i18n.test.ts"],"names":[],"mappings":""}
|