@intlayer/docs 8.0.0 → 8.0.1-canary.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.
Files changed (172) hide show
  1. package/dist/cjs/generated/docs.entry.cjs +160 -0
  2. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  3. package/dist/esm/generated/docs.entry.mjs +160 -0
  4. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  5. package/dist/types/generated/docs.entry.d.ts +8 -0
  6. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  7. package/docs/ar/intlayer_with_adonisjs.md +394 -0
  8. package/docs/ar/intlayer_with_hono.md +223 -0
  9. package/docs/ar/intlayer_with_vite+preact.md +317 -675
  10. package/docs/ar/packages/adonis-intlayer/exports.md +50 -0
  11. package/docs/ar/packages/adonis-intlayer/intlayer.md +54 -0
  12. package/docs/ar/packages/adonis-intlayer/t.md +149 -0
  13. package/docs/ar/packages/hono-intlayer/exports.md +59 -0
  14. package/docs/ar/packages/hono-intlayer/intlayer.md +60 -0
  15. package/docs/ar/packages/hono-intlayer/t.md +268 -0
  16. package/docs/de/intlayer_with_adonisjs.md +392 -0
  17. package/docs/de/intlayer_with_hono.md +418 -0
  18. package/docs/de/intlayer_with_vite+preact.md +272 -632
  19. package/docs/de/packages/adonis-intlayer/exports.md +50 -0
  20. package/docs/de/packages/adonis-intlayer/intlayer.md +54 -0
  21. package/docs/de/packages/adonis-intlayer/t.md +149 -0
  22. package/docs/de/packages/hono-intlayer/exports.md +59 -0
  23. package/docs/de/packages/hono-intlayer/intlayer.md +59 -0
  24. package/docs/de/packages/hono-intlayer/t.md +316 -0
  25. package/docs/en/index.md +8 -0
  26. package/docs/en/intlayer_with_adonisjs.md +388 -0
  27. package/docs/en/intlayer_with_hono.md +418 -0
  28. package/docs/en/intlayer_with_vite+preact.md +171 -556
  29. package/docs/en/introduction.md +1 -0
  30. package/docs/en/packages/adonis-intlayer/exports.md +50 -0
  31. package/docs/en/packages/adonis-intlayer/intlayer.md +54 -0
  32. package/docs/en/packages/adonis-intlayer/t.md +149 -0
  33. package/docs/en/packages/hono-intlayer/exports.md +59 -0
  34. package/docs/en/packages/hono-intlayer/intlayer.md +59 -0
  35. package/docs/en/packages/hono-intlayer/t.md +316 -0
  36. package/docs/en-GB/intlayer_with_adonisjs.md +394 -0
  37. package/docs/en-GB/intlayer_with_hono.md +418 -0
  38. package/docs/en-GB/intlayer_with_vite+preact.md +236 -583
  39. package/docs/en-GB/packages/adonis-intlayer/exports.md +50 -0
  40. package/docs/en-GB/packages/adonis-intlayer/intlayer.md +54 -0
  41. package/docs/en-GB/packages/adonis-intlayer/t.md +149 -0
  42. package/docs/en-GB/packages/hono-intlayer/exports.md +59 -0
  43. package/docs/en-GB/packages/hono-intlayer/intlayer.md +59 -0
  44. package/docs/en-GB/packages/hono-intlayer/t.md +316 -0
  45. package/docs/es/intlayer_with_adonisjs.md +388 -0
  46. package/docs/es/intlayer_with_hono.md +418 -0
  47. package/docs/es/intlayer_with_vite+preact.md +286 -650
  48. package/docs/es/packages/adonis-intlayer/exports.md +50 -0
  49. package/docs/es/packages/adonis-intlayer/intlayer.md +54 -0
  50. package/docs/es/packages/adonis-intlayer/t.md +149 -0
  51. package/docs/es/packages/hono-intlayer/exports.md +59 -0
  52. package/docs/es/packages/hono-intlayer/intlayer.md +59 -0
  53. package/docs/es/packages/hono-intlayer/t.md +316 -0
  54. package/docs/fr/intlayer_with_adonisjs.md +388 -0
  55. package/docs/fr/intlayer_with_hono.md +418 -0
  56. package/docs/fr/intlayer_with_vite+preact.md +274 -614
  57. package/docs/fr/packages/adonis-intlayer/exports.md +50 -0
  58. package/docs/fr/packages/adonis-intlayer/intlayer.md +54 -0
  59. package/docs/fr/packages/adonis-intlayer/t.md +149 -0
  60. package/docs/fr/packages/hono-intlayer/exports.md +59 -0
  61. package/docs/fr/packages/hono-intlayer/intlayer.md +59 -0
  62. package/docs/fr/packages/hono-intlayer/t.md +316 -0
  63. package/docs/hi/intlayer_with_adonisjs.md +394 -0
  64. package/docs/hi/intlayer_with_hono.md +227 -0
  65. package/docs/hi/intlayer_with_vite+preact.md +304 -680
  66. package/docs/hi/packages/adonis-intlayer/exports.md +50 -0
  67. package/docs/hi/packages/adonis-intlayer/intlayer.md +54 -0
  68. package/docs/hi/packages/adonis-intlayer/t.md +149 -0
  69. package/docs/hi/packages/hono-intlayer/exports.md +59 -0
  70. package/docs/hi/packages/hono-intlayer/intlayer.md +60 -0
  71. package/docs/hi/packages/hono-intlayer/t.md +268 -0
  72. package/docs/id/intlayer_with_adonisjs.md +394 -0
  73. package/docs/id/intlayer_with_hono.md +227 -0
  74. package/docs/id/intlayer_with_vite+preact.md +297 -697
  75. package/docs/id/packages/adonis-intlayer/exports.md +50 -0
  76. package/docs/id/packages/adonis-intlayer/intlayer.md +54 -0
  77. package/docs/id/packages/adonis-intlayer/t.md +149 -0
  78. package/docs/id/packages/hono-intlayer/exports.md +59 -0
  79. package/docs/id/packages/hono-intlayer/intlayer.md +60 -0
  80. package/docs/id/packages/hono-intlayer/t.md +268 -0
  81. package/docs/it/intlayer_with_adonisjs.md +394 -0
  82. package/docs/it/intlayer_with_hono.md +227 -0
  83. package/docs/it/intlayer_with_vite+preact.md +290 -659
  84. package/docs/it/packages/adonis-intlayer/exports.md +50 -0
  85. package/docs/it/packages/adonis-intlayer/intlayer.md +54 -0
  86. package/docs/it/packages/adonis-intlayer/t.md +149 -0
  87. package/docs/it/packages/hono-intlayer/exports.md +59 -0
  88. package/docs/it/packages/hono-intlayer/intlayer.md +60 -0
  89. package/docs/it/packages/hono-intlayer/t.md +268 -0
  90. package/docs/ja/intlayer_with_adonisjs.md +394 -0
  91. package/docs/ja/intlayer_with_hono.md +227 -0
  92. package/docs/ja/intlayer_with_vite+preact.md +307 -662
  93. package/docs/ja/packages/adonis-intlayer/exports.md +50 -0
  94. package/docs/ja/packages/adonis-intlayer/intlayer.md +54 -0
  95. package/docs/ja/packages/adonis-intlayer/t.md +149 -0
  96. package/docs/ja/packages/hono-intlayer/exports.md +59 -0
  97. package/docs/ja/packages/hono-intlayer/intlayer.md +60 -0
  98. package/docs/ja/packages/hono-intlayer/t.md +268 -0
  99. package/docs/ko/intlayer_with_adonisjs.md +394 -0
  100. package/docs/ko/intlayer_with_hono.md +227 -0
  101. package/docs/ko/intlayer_with_vite+preact.md +303 -703
  102. package/docs/ko/packages/adonis-intlayer/exports.md +50 -0
  103. package/docs/ko/packages/adonis-intlayer/intlayer.md +54 -0
  104. package/docs/ko/packages/adonis-intlayer/t.md +149 -0
  105. package/docs/ko/packages/hono-intlayer/exports.md +59 -0
  106. package/docs/ko/packages/hono-intlayer/intlayer.md +60 -0
  107. package/docs/ko/packages/hono-intlayer/t.md +268 -0
  108. package/docs/pl/intlayer_with_adonisjs.md +394 -0
  109. package/docs/pl/intlayer_with_hono.md +227 -0
  110. package/docs/pl/intlayer_with_vite+preact.md +289 -690
  111. package/docs/pl/packages/adonis-intlayer/exports.md +50 -0
  112. package/docs/pl/packages/adonis-intlayer/intlayer.md +54 -0
  113. package/docs/pl/packages/adonis-intlayer/t.md +149 -0
  114. package/docs/pl/packages/hono-intlayer/exports.md +59 -0
  115. package/docs/pl/packages/hono-intlayer/intlayer.md +60 -0
  116. package/docs/pl/packages/hono-intlayer/t.md +268 -0
  117. package/docs/pt/intlayer_with_adonisjs.md +394 -0
  118. package/docs/pt/intlayer_with_hono.md +227 -0
  119. package/docs/pt/intlayer_with_vite+preact.md +275 -637
  120. package/docs/pt/packages/adonis-intlayer/exports.md +50 -0
  121. package/docs/pt/packages/adonis-intlayer/intlayer.md +54 -0
  122. package/docs/pt/packages/adonis-intlayer/t.md +149 -0
  123. package/docs/pt/packages/hono-intlayer/exports.md +59 -0
  124. package/docs/pt/packages/hono-intlayer/intlayer.md +60 -0
  125. package/docs/pt/packages/hono-intlayer/t.md +268 -0
  126. package/docs/ru/intlayer_with_adonisjs.md +393 -0
  127. package/docs/ru/intlayer_with_hono.md +223 -0
  128. package/docs/ru/intlayer_with_vite+preact.md +319 -683
  129. package/docs/ru/packages/adonis-intlayer/exports.md +50 -0
  130. package/docs/ru/packages/adonis-intlayer/intlayer.md +54 -0
  131. package/docs/ru/packages/adonis-intlayer/t.md +149 -0
  132. package/docs/ru/packages/hono-intlayer/exports.md +59 -0
  133. package/docs/ru/packages/hono-intlayer/intlayer.md +60 -0
  134. package/docs/ru/packages/hono-intlayer/t.md +268 -0
  135. package/docs/tr/intlayer_with_adonisjs.md +394 -0
  136. package/docs/tr/intlayer_with_hono.md +227 -0
  137. package/docs/tr/intlayer_with_vite+preact.md +332 -665
  138. package/docs/tr/packages/adonis-intlayer/exports.md +50 -0
  139. package/docs/tr/packages/adonis-intlayer/intlayer.md +54 -0
  140. package/docs/tr/packages/adonis-intlayer/t.md +149 -0
  141. package/docs/tr/packages/hono-intlayer/exports.md +59 -0
  142. package/docs/tr/packages/hono-intlayer/intlayer.md +60 -0
  143. package/docs/tr/packages/hono-intlayer/t.md +268 -0
  144. package/docs/uk/intlayer_with_adonisjs.md +394 -0
  145. package/docs/uk/intlayer_with_hono.md +227 -0
  146. package/docs/uk/intlayer_with_vite+preact.md +228 -626
  147. package/docs/uk/packages/adonis-intlayer/exports.md +50 -0
  148. package/docs/uk/packages/adonis-intlayer/intlayer.md +54 -0
  149. package/docs/uk/packages/adonis-intlayer/t.md +149 -0
  150. package/docs/uk/packages/hono-intlayer/exports.md +59 -0
  151. package/docs/uk/packages/hono-intlayer/intlayer.md +60 -0
  152. package/docs/uk/packages/hono-intlayer/t.md +268 -0
  153. package/docs/vi/intlayer_with_adonisjs.md +394 -0
  154. package/docs/vi/intlayer_with_hono.md +227 -0
  155. package/docs/vi/intlayer_with_vite+preact.md +294 -679
  156. package/docs/vi/packages/adonis-intlayer/exports.md +50 -0
  157. package/docs/vi/packages/adonis-intlayer/intlayer.md +54 -0
  158. package/docs/vi/packages/adonis-intlayer/t.md +149 -0
  159. package/docs/vi/packages/hono-intlayer/exports.md +59 -0
  160. package/docs/vi/packages/hono-intlayer/intlayer.md +60 -0
  161. package/docs/vi/packages/hono-intlayer/t.md +268 -0
  162. package/docs/zh/intlayer_with_adonisjs.md +393 -0
  163. package/docs/zh/intlayer_with_hono.md +418 -0
  164. package/docs/zh/intlayer_with_vite+preact.md +338 -743
  165. package/docs/zh/packages/adonis-intlayer/exports.md +50 -0
  166. package/docs/zh/packages/adonis-intlayer/intlayer.md +54 -0
  167. package/docs/zh/packages/adonis-intlayer/t.md +149 -0
  168. package/docs/zh/packages/hono-intlayer/exports.md +59 -0
  169. package/docs/zh/packages/hono-intlayer/intlayer.md +60 -0
  170. package/docs/zh/packages/hono-intlayer/t.md +294 -0
  171. package/package.json +6 -6
  172. package/src/generated/docs.entry.ts +160 -0
@@ -0,0 +1,50 @@
1
+ ---
2
+ createdAt: 2026-01-30
3
+ updatedAt: 2026-01-30
4
+ title: Dokumentacja pakietu adonis-intlayer
5
+ description: Middleware AdonisJS dla Intlayer, zapewniający funkcje tłumaczenia i wykrywanie ustawień regionalnych.
6
+ keywords:
7
+ - adonis-intlayer
8
+ - adonisjs
9
+ - middleware
10
+ - internacjonalizacja
11
+ - i18n
12
+ slugs:
13
+ - doc
14
+ - packages
15
+ - adonis-intlayer
16
+ - exports
17
+ history:
18
+ - version: 8.0.0
19
+ date: 2026-01-30
20
+ changes: Dokumentacja początkowa
21
+ ---
22
+
23
+ # Pakiet adonis-intlayer
24
+
25
+ Pakiet `adonis-intlayer` zapewnia oprogramowanie pośredniczące dla aplikacji AdonisJS do obsługi internacjonalizacji. Wykrywa ustawienia regionalne użytkownika i zapewnia funkcje tłumaczenia.
26
+
27
+ ## Instalacja
28
+
29
+ ```bash
30
+ npm install adonis-intlayer
31
+ ```
32
+
33
+ ## Eksporty
34
+
35
+ ### Middleware
36
+
37
+ Pakiet zapewnia middleware AdonisJS do obsługi internacjonalizacji.
38
+
39
+ | Funkcja | Opis | Powiązana dokumentacja |
40
+ | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
41
+ | `IntlayerMiddleware` | Middleware AdonisJS, który wykrywa ustawienia regionalne użytkownika i wypełnia kontekst żądania danymi Intlayer. Ustawia również przestrzeń nazw CLS (Async Local Storage) dla dostępu do cyklu życia żądania, umożliwiając korzystanie z globalnych funkcji, takich jak `t`, `getIntlayer` itp. | [intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/packages/adonis-intlayer/intlayer.md) |
42
+
43
+ ### Funkcje
44
+
45
+ | Funkcja | Opis | Powiązana dokumentacja |
46
+ | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
47
+ | `t` | Funkcja tłumaczenia, która pobiera treść dla bieżącego ustawienia regionalnego. Działa w cyklu życia żądania zarządzanym przez middleware `intlayer`. Używa CLS (Async Local Storage) do dostępu do kontekstu żądania. | [translation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/dictionary/translation.md) |
48
+ | `getIntlayer` | Pobiera słownik za pomocą jego klucza z wygenerowanej deklaracji i zwraca jego treść dla określonego ustawienia regionalnego. Zoptymalizowana wersja `getDictionary`. Używa CLS do dostępu do kontekstu żądania. | - |
49
+ | `getDictionary` | Przetwarza obiekty słownika i zwraca treść dla określonego ustawienia regionalnego. Przetwarza tłumaczenia `t()`, wyliczenia, markdown, HTML itp. Używa CLS do dostępu do kontekstu żądania. | - |
50
+ | `getLocale` | Pobiera bieżące ustawienie regionalne z kontekstu żądania za pomocą CLS. | - |
@@ -0,0 +1,54 @@
1
+ ---
2
+ createdAt: 2026-01-30
3
+ updatedAt: 2026-01-30
4
+ title: Dokumentacja oprogramowania pośredniczącego intlayer dla AdonisJS | adonis-intlayer
5
+ description: Zobacz, jak używać middleware intlayer w pakiecie adonis-intlayer
6
+ keywords:
7
+ - intlayer
8
+ - adonisjs
9
+ - middleware
10
+ - Intlayer
11
+ - Internacjonalizacja
12
+ - Dokumentacja
13
+ slugs:
14
+ - doc
15
+ - packages
16
+ - adonis-intlayer
17
+ - intlayer
18
+ history:
19
+ - version: 8.0.0
20
+ date: 2026-01-30
21
+ changes: Dokumentacja początkowa
22
+ ---
23
+
24
+ # Dokumentacja oprogramowania pośredniczącego intlayer dla AdonisJS
25
+
26
+ Middleware `intlayer` dla AdonisJS wykrywa ustawienia regionalne użytkownika i zapewnia funkcje tłumaczenia poprzez kontekst żądania. Umożliwia również korzystanie z globalnych funkcji tłumaczenia w ramach przepływu żądania.
27
+
28
+ ## Użycie
29
+
30
+ ```ts fileName="start/kernel.ts"
31
+ router.use([() => import("adonis-intlayer/middleware")]);
32
+ ```
33
+
34
+ ```ts fileName="start/routes.ts"
35
+ import router from "@adonisjs/core/services/router";
36
+ import { t } from "adonis-intlayer";
37
+
38
+ router.get("/", async () => {
39
+ return t({
40
+ en: "Hello",
41
+ fr: "Bonjour",
42
+ });
43
+ });
44
+ ```
45
+
46
+ ## Opis
47
+
48
+ Middleware wykonuje następujące zadania:
49
+
50
+ 1. **Wykrywanie ustawień regionalnych**: Analizuje żądanie (nagłówki, ciasteczka itp.) w celu określenia preferowanych ustawień regionalnych użytkownika.
51
+ 2. **Konfiguracja kontekstu**: Wypełnia kontekst żądania informacjami o ustawieniach regionalnych.
52
+ 3. **Async Local Storage**: Używa `cls-hooked` do zarządzania asynchronicznym kontekstem, umożliwiając globalnym funkcjom Intlayer, takim jak `t`, `getIntlayer` i `getDictionary`, dostęp do ustawień regionalnych specyficznych dla żądania bez konieczności ich ręcznego przekazywania.
53
+
54
+ > Uwaga: Aby używać ciasteczek do wykrywania ustawień regionalnych, upewnij się, że `@adonisjs/cookie` jest skonfigurowane i używane w Twojej aplikacji.
@@ -0,0 +1,149 @@
1
+ ---
2
+ createdAt: 2026-01-30
3
+ updatedAt: 2026-01-30
4
+ title: Dokumentacja funkcji t | adonis-intlayer
5
+ description: Zobacz, jak używać funkcji t w pakiecie adonis-intlayer
6
+ keywords:
7
+ - t
8
+ - tłumaczenie
9
+ - Intlayer
10
+ - Internacjonalizacja
11
+ - Dokumentacja
12
+ - AdonisJS
13
+ - JavaScript
14
+ slugs:
15
+ - doc
16
+ - packages
17
+ - adonis-intlayer
18
+ - t
19
+ history:
20
+ - version: 8.0.0
21
+ date: 2026-01-30
22
+ changes: Dokumentacja początkowa
23
+ ---
24
+
25
+ # Dokumentacja: Funkcja `t` w `adonis-intlayer`
26
+
27
+ Funkcja `t` w pakiecie `adonis-intlayer` jest głównym narzędziem do dostarczania zlokalizowanych odpowiedzi w aplikacji AdonisJS. Upraszcza internacjonalizację (i18n) poprzez dynamiczne wybieranie treści na podstawie preferowanego języka użytkownika.
28
+
29
+ ---
30
+
31
+ ## Przegląd
32
+
33
+ Funkcja `t` służy do definiowania i pobierania tłumaczeń dla danego zestawu języków. Automatycznie określa odpowiedni język do zwrócenia na podstawie ustawień żądania klienta, takich jak nagłówek `Accept-Language`. Jeśli preferowany język jest niedostępny, płynnie powraca do domyślnego ustawienia regionalnego określonego w konfiguracji.
34
+
35
+ ---
36
+
37
+ ## Kluczowe cechy
38
+
39
+ - **Dynamiczna lokalizacja**: Automatycznie wybiera najbardziej odpowiednie tłumaczenie dla klienta.
40
+ - **Powrót do domyślnego ustawienia regionalnego (Fallback)**: Powraca do domyślnego ustawienia regionalnego, jeśli preferowany język klienta jest niedostępny, zapewniając ciągłość doświadczenia użytkownika.
41
+ - **Kontekst asynchroniczny**: Działa bezproblemowo w cyklu życia żądania AdonisJS przy użyciu Async Local Storage.
42
+ - **Wsparcie TypeScript**: Wymusza bezpieczeństwo typów dla Twoich tłumaczeń.
43
+
44
+ ---
45
+
46
+ ## Sygnatura funkcji
47
+
48
+ ```typescript
49
+ t(translations: Record<string, any>): any;
50
+ ```
51
+
52
+ ### Parametry
53
+
54
+ - `translations`: Obiekt, w którym kluczami są kody ustawień regionalnych (np. `en`, `fr`, `es`), a wartościami są odpowiednie przetłumaczone treści.
55
+
56
+ ### Zwraca
57
+
58
+ - Treść reprezentującą preferowany język klienta.
59
+
60
+ ---
61
+
62
+ ## Ładowanie oprogramowania pośredniczącego (Middleware)
63
+
64
+ Aby upewnić się, że funkcja `t` działa poprawnie, **musisz** zarejestrować middleware `intlayer` w swojej aplikacji AdonisJS.
65
+
66
+ ```typescript fileName="start/kernel.ts"
67
+ router.use([() => import("adonis-intlayer/middleware")]);
68
+ ```
69
+
70
+ ---
71
+
72
+ ## Przykłady użycia
73
+
74
+ ### Podstawowy przykład
75
+
76
+ ```typescript fileName="start/routes.ts"
77
+ import router from "@adonisjs/core/services/router";
78
+ import { t } from "adonis-intlayer";
79
+
80
+ router.get("/", async () => {
81
+ return t({
82
+ en: "Welcome!",
83
+ fr: "Bienvenue!",
84
+ es: "¡Bienvenido!",
85
+ });
86
+ });
87
+ ```
88
+
89
+ ### Użycie w kontrolerach
90
+
91
+ ```typescript fileName="app/controllers/example_controller.ts"
92
+ import type { HttpContext } from "@adonisjs/core/http";
93
+ import { t } from "adonis-intlayer";
94
+
95
+ export default class ExampleController {
96
+ async index({ response }: HttpContext) {
97
+ return response.send(
98
+ t({
99
+ en: "Hello from controller",
100
+ fr: "Bonjour od kontrolera",
101
+ })
102
+ );
103
+ }
104
+ }
105
+ ```
106
+
107
+ ---
108
+
109
+ ## Tematy zaawansowane
110
+
111
+ ### Mechanizm Fallback
112
+
113
+ Jeśli preferowane ustawienie regionalne jest niedostępny, funkcja `t` powróci do domyślnego ustawienia regionalnego zdefiniowanego w `intlayer.config.ts`.
114
+
115
+ ```typescript
116
+ import { Locales, type IntlayerConfig } from "intlayer";
117
+
118
+ const config: IntlayerConfig = {
119
+ internationalization: {
120
+ locales: [
121
+ Locales.ENGLISH,
122
+ Locales.RUSSIAN,
123
+ Locales.JAPANESE,
124
+ Locales.FRENCH,
125
+ Locales.KOREAN,
126
+ Locales.CHINESE,
127
+ Locales.SPANISH,
128
+ Locales.GERMAN,
129
+ Locales.ARABIC,
130
+ Locales.ITALIAN,
131
+ Locales.ENGLISH_UNITED_KINGDOM,
132
+ Locales.PORTUGUESE,
133
+ Locales.HINDI,
134
+ Locales.TURKISH,
135
+ Locales.POLISH,
136
+ Locales.INDONESIAN,
137
+ Locales.VIETNAMESE,
138
+ Locales.UKRAINIAN,
139
+ ],
140
+ defaultLocale: Locales.ENGLISH,
141
+ },
142
+ };
143
+
144
+ export default config;
145
+ ```
146
+
147
+ ### Integracja z TypeScript
148
+
149
+ Funkcja `t` jest bezpieczna pod względem typów, gdy jest używana ze zdefiniowanymi słownikami. Więcej szczegółów znajdziesz w [dokumentacji TypeScript](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/configuration.md).
@@ -0,0 +1,59 @@
1
+ ---
2
+ createdAt: 2026-01-29
3
+ updatedAt: 2026-01-29
4
+ title: Dokumentacja Pakietu hono-intlayer
5
+ description: Middleware Hono dla Intlayer, dostarczający funkcje tłumaczenia i wykrywanie języka.
6
+ keywords:
7
+ - hono-intlayer
8
+ - hono
9
+ - middleware
10
+ - internacjonalizacja
11
+ - i18n
12
+ slugs:
13
+ - doc
14
+ - packages
15
+ - hono-intlayer
16
+ - exports
17
+ history:
18
+ - version: 8.0.0
19
+ date: 2026-01-29
20
+ changes: Zunifikowana dokumentacja dla wszystkich eksportów
21
+ ---
22
+
23
+ # Pakiet hono-intlayer
24
+
25
+ Pakiet `hono-intlayer` dostarcza middleware dla aplikacji Hono do obsługi internacjonalizacji. Wykrywa język użytkownika i uzupełnia obiekt kontekstu.
26
+
27
+ ## Instalacja
28
+
29
+ ```bash
30
+ npm install hono-intlayer
31
+ ```
32
+
33
+ ## Eksporty
34
+
35
+ ### Middleware
36
+
37
+ Import:
38
+
39
+ ```tsx
40
+ import { intlayer } from "hono-intlayer";
41
+ ```
42
+
43
+ | Funkcja | Opis | Powiązana Dok. |
44
+ | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
45
+ | `intlayer` | Middleware Hono integrujące Intlayer z Twoją aplikacją Hono. Obsługuje wykrywanie języka z pamięci masowej (pliki cookie, nagłówki), uzupełnia kontekst o `t`, `getIntlayer` i `getDictionary` oraz konfiguruje przestrzeń nazw CLS dla dostępu programowego w cyklu życia żądania. | [intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/packages/hono-intlayer/intlayer.md) |
46
+
47
+ ### Funkcje
48
+
49
+ Import:
50
+
51
+ ```tsx
52
+ import { t, getIntlayer, getDictionary } from "hono-intlayer";
53
+ ```
54
+
55
+ | Funkcja | Opis | Powiązana Dok. |
56
+ | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
57
+ | `t` | Globalna funkcja tłumaczenia pobierająca treść dla aktualnego języka w Hono. Wykorzystuje CLS (Async Local Storage) i musi być używana w kontekście żądania zarządzanym przez middleware `intlayer`. Dostępna również przez kontekst. | [translation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/dictionary/translation.md) |
58
+ | `getIntlayer` | Pobiera słownik według klucza z wygenerowanej deklaracji i zwraca jego treść dla określonego języka. Zoptymalizowana wersja `getDictionary`. Używa CLS do dostępu do kontekstu żądania. Dostępna również przez kontekst. | - |
59
+ | `getDictionary` | Przetwarza obiekty słownika i zwraca treść dla określonego języka. Przetwarza tłumaczenia `t()`, wyliczenia, markdown, HTML itp. Używa CLS do dostępu do kontekstu żądania. Dostępna również przez kontekst. | - |
@@ -0,0 +1,60 @@
1
+ ---
2
+ createdAt: 2026-01-29
3
+ updatedAt: 2026-01-29
4
+ title: Dokumentacja Middleware intlayer dla Hono | hono-intlayer
5
+ description: Zobacz jak używać middleware intlayer dla pakietu hono-intlayer
6
+ keywords:
7
+ - intlayer
8
+ - hono
9
+ - middleware
10
+ - Intlayer
11
+ - Internacjonalizacja
12
+ - Dokumentacja
13
+ slugs:
14
+ - doc
15
+ - packages
16
+ - hono-intlayer
17
+ - intlayer
18
+ history:
19
+ - version: 8.0.0
20
+ date: 2026-01-29
21
+ changes: Inicjalizacja dokumentacji
22
+ ---
23
+
24
+ # Dokumentacja Middleware intlayer dla Hono
25
+
26
+ Middleware `intlayer` dla Hono wykrywa język użytkownika i uzupełnia obiekt kontekstu o funkcje Intlayer. Umożliwia również korzystanie z globalnych funkcji tłumaczenia w kontekście żądania.
27
+
28
+ ## Użycie
29
+
30
+ ```ts
31
+ import { Hono } from "hono";
32
+ import { intlayer } from "hono-intlayer";
33
+
34
+ const app = new Hono();
35
+
36
+ app.use("*", intlayer());
37
+
38
+ app.get("/", async (c) => {
39
+ const t = c.get("t");
40
+ const content = t({
41
+ en: "Hello",
42
+ fr: "Bonjour",
43
+ pl: "Witaj",
44
+ });
45
+
46
+ return c.text(content);
47
+ });
48
+ ```
49
+
50
+ ## Opis
51
+
52
+ Middleware wykonuje następujące zadania:
53
+
54
+ 1. **Wykrywanie Języka**: Analizuje żądanie (nagłówki, pliki cookie itp.) w celu określenia preferowanego języka użytkownika.
55
+ 2. **Uzupełnianie Kontekstu**: Dodaje dane Intlayer do kontekstu Hono, dostępne poprzez `c.get()`. Obejmuje to:
56
+ - `locale`: Wykryty język.
57
+ - `t`: Funkcja tłumaczenia.
58
+ - `getIntlayer`: Funkcja do pobierania słowników.
59
+ - `getDictionary`: Funkcja do przetwarzania obiektów słownika.
60
+ 3. **Zarządzanie Kontekstem**: Używa `cls-hooked` do zarządzania asynchronicznym kontekstem, co pozwala globalnym funkcjom Intlayer (`t`, `getIntlayer`, `getDictionary`) na dostęp do języka specyficznego dla żądania bez przekazywania obiektu kontekstu.
@@ -0,0 +1,268 @@
1
+ ---
2
+ createdAt: 2024-12-02
3
+ updatedAt: 2025-06-29
4
+ title: Dokumentacja Funkcji t | hono-intlayer
5
+ description: Zobacz jak używać funkcji t dla pakietu hono-intlayer
6
+ keywords:
7
+ - t
8
+ - tłumaczenie
9
+ - Intlayer
10
+ - Internacjonalizacja
11
+ - Dokumentacja
12
+ - Hono
13
+ - JavaScript
14
+ slugs:
15
+ - doc
16
+ - packages
17
+ - hono-intlayer
18
+ - t
19
+ history:
20
+ - version: 5.5.10
21
+ date: 2025-06-29
22
+ changes: Inicjalizacja historii
23
+ ---
24
+
25
+ # Dokumentacja: Funkcja `t` w `hono-intlayer`
26
+
27
+ Funkcja `t` w pakiecie `hono-intlayer` jest podstawowym narzędziem do dostarczania zlokalizowanych odpowiedzi w Twojej aplikacji Hono. Upraszcza internacjonalizację (i18n) poprzez dynamiczne wybieranie treści na podstawie preferowanego języka użytkownika.
28
+
29
+ ---
30
+
31
+ ## Przegląd
32
+
33
+ Funkcja `t` służy do definiowania i pobierania tłumaczeń dla danego zestawu języków. Automatycznie określa odpowiedni język do zwrócenia na podstawie ustawień żądania klienta, takich jak nagłówek `Accept-Language`. Jeśli preferowany język jest niedostępny, funkcja płynnie powraca do domyślnego ustawienia regionalnego określonego w konfiguracji.
34
+
35
+ ---
36
+
37
+ ## Kluczowe Cechy
38
+
39
+ - **Dynamiczna Lokalizacja**: Automatycznie wybiera najbardziej odpowiednie tłumaczenie dla klienta.
40
+ - **Powrót do Domyślnego Ustawienia Regionalnego**: Wraca do domyślnego języka, jeśli preferowany język klienta nie jest dostępny, zapewniając ciągłość doświadczenia użytkownika.
41
+ - **Lekka i Szybka**: Zaprojektowana dla aplikacji o wysokiej wydajności, zapewniając minimalny narzut.
42
+ - **Obsługa Trybu Ścisłego**: Wymusza ścisłe przestrzeganie zadeklarowanych ustawień regionalnych dla niezawodnego zachowania.
43
+
44
+ ---
45
+
46
+ ## Sygnatura Funkcji
47
+
48
+ ```typescript
49
+ t(translations: Record<string, string>): string;
50
+ ```
51
+
52
+ ### Parametry
53
+
54
+ - `translations`: Obiekt, w którym kluczami są kody ustawień regionalnych (np. `en`, `fr`, `pl`), a wartościami są odpowiadające im przetłumaczone ciągi znaków.
55
+
56
+ ### Zwraca
57
+
58
+ - Ciąg znaków reprezentujący treść w preferowanym języku klienta.
59
+
60
+ ---
61
+
62
+ ## Ładowanie Obsługi Żądań Internacjonalizacji
63
+
64
+ Aby zapewnić poprawne działanie funkcji internacjonalizacji dostarczanych przez `hono-intlayer`, **musisz** załadować oprogramowanie pośredniczące (middleware) internacjonalizacji na początku swojej aplikacji Hono. Umożliwia to działanie funkcji `t` i zapewnia prawidłową obsługę wykrywania języka i tłumaczenia.
65
+
66
+ Umieść oprogramowanie pośredniczące `app.use("*", intlayer())` **przed jakimikolwiek trasami** w swojej aplikacji, aby upewnić się, że wszystkie trasy korzystają z internacjonalizacji:
67
+
68
+ ```typescript {6} fileName="src/index.ts" codeFormat="typescript"
69
+ import { Hono } from "hono";
70
+ import { intlayer } from "hono-intlayer";
71
+
72
+ const app = new Hono();
73
+
74
+ // Załaduj obsługę żądań internacjonalizacji
75
+ app.use("*", intlayer());
76
+
77
+ // Zdefiniuj trasy po załadowaniu oprogramowania pośredniczącego
78
+ app.get("/", (c) => {
79
+ return c.text(
80
+ t({
81
+ en: "Hello, World!",
82
+ fr: "Bonjour le monde!",
83
+ es: "¡Hola, Mundo!",
84
+ pl: "Witaj świecie!",
85
+ })
86
+ );
87
+ });
88
+ ```
89
+
90
+ ```javascript {6} fileName="src/index.mjs" codeFormat="esm"
91
+ import { Hono } from "hono";
92
+ import { intlayer } from "hono-intlayer";
93
+
94
+ const app = new Hono();
95
+
96
+ // Załaduj obsługę żądań internacjonalizacji
97
+ app.use("*", intlayer());
98
+
99
+ // Zdefiniuj trasy po załadowaniu oprogramowania pośredniczącego
100
+ app.get("/", (c) => {
101
+ return c.text(
102
+ t({
103
+ en: "Hello, World!",
104
+ fr: "Bonjour le monde!",
105
+ es: "¡Hola, Mundo!",
106
+ pl: "Witaj świecie!",
107
+ })
108
+ );
109
+ });
110
+ ```
111
+
112
+ ```javascript {6} fileName="src/index.cjs" codeFormat="commonjs"
113
+ const { Hono } = require("hono");
114
+ const { intlayer, t } = require("hono-intlayer");
115
+
116
+ const app = new Hono();
117
+
118
+ // Załaduj obsługę żądań internacjonalizacji
119
+ app.use("*", intlayer());
120
+
121
+ // Zdefiniuj trasy po załadowaniu oprogramowania pośredniczącego
122
+ app.get("/", (c) => {
123
+ return c.text(
124
+ t({
125
+ en: "Hello, World!",
126
+ fr: "Bonjour le monde!",
127
+ es: "¡Hola, Mundo!",
128
+ pl: "Witaj świecie!",
129
+ })
130
+ );
131
+ });
132
+ ```
133
+
134
+ ### Dlaczego Jest To Wymagane
135
+
136
+ - **Wykrywanie Języka**: Middleware `intlayer` przetwarza przychodzące żądania w celu wykrycia preferowanego języka użytkownika na podstawie nagłówków, plików cookie lub innych skonfigurowanych metod.
137
+ - **Kontekst Tłumaczenia**: Ustawia niezbędny kontekst, aby funkcja `t` działała poprawnie, zapewniając zwracanie tłumaczeń w odpowiednim języku.
138
+ - **Zapobieganie Błędom**: Bez tego oprogramowania pośredniczącego użycie funkcji `t` spowoduje błędy wykonania, ponieważ niezbędne informacje o języku nie będą dostępne.
139
+
140
+ ---
141
+
142
+ ## Przykłady Użycia
143
+
144
+ ### Podstawowy Przykład
145
+
146
+ Serwuj zlokalizowaną treść w różnych językach:
147
+
148
+ ```typescript fileName="src/index.ts" codeFormat="typescript"
149
+ app.get("/", (c) => {
150
+ return c.text(
151
+ t({
152
+ en: "Welcome!",
153
+ fr: "Bienvenue!",
154
+ pl: "Witaj!",
155
+ })
156
+ );
157
+ });
158
+ ```
159
+
160
+ **Żądania Klienta:**
161
+
162
+ - Klient z `Accept-Language: fr` otrzyma `Bienvenue!`.
163
+ - Klient z `Accept-Language: pl` otrzyma `Witaj!`.
164
+ - Klient z `Accept-Language: de` otrzyma `Welcome!` (domyślny język).
165
+
166
+ ### Obsługa Błędów
167
+
168
+ Dostarczaj komunikaty o błędach w wielu językach:
169
+
170
+ ```typescript fileName="src/index.ts" codeFormat="typescript"
171
+ app.get("/error", (c) => {
172
+ return c.text(
173
+ t({
174
+ en: "An unexpected error occurred.",
175
+ fr: "Une erreur inattendue s'est produite.",
176
+ pl: "Wystąpił nieoczekiwany błąd.",
177
+ }),
178
+ 500
179
+ );
180
+ });
181
+ ```
182
+
183
+ ---
184
+
185
+ ### Używanie Wariantów Językowych
186
+
187
+ Określ tłumaczenia dla specyficznych wariantów językowych:
188
+
189
+ ```typescript fileName="src/index.ts" codeFormat="typescript"
190
+ app.get("/greet", (c) => {
191
+ return c.text(
192
+ t({
193
+ en: "Hello!",
194
+ "en-GB": "Hello, mate!",
195
+ fr: "Bonjour!",
196
+ pl: "Cześć!",
197
+ })
198
+ );
199
+ });
200
+ ```
201
+
202
+ ---
203
+
204
+ ## Zaawansowane Tematy
205
+
206
+ ### Mechanizm Powrotny (Fallback)
207
+
208
+ Jeśli preferowany język jest niedostępny, funkcja `t` powróci do domyślnego języka zdefiniowanego w konfiguracji:
209
+
210
+ ```typescript {5-6} fileName="intlayer.config.ts" codeFormat="typescript"
211
+ import { Locales, type IntlayerConfig } from "intlayer";
212
+
213
+ const config = {
214
+ internationalization: {
215
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.POLISH],
216
+ defaultLocale: Locales.ENGLISH,
217
+ },
218
+ } satisfies IntlayerConfig;
219
+
220
+ export default config;
221
+ ```
222
+
223
+ ---
224
+
225
+ ### Wymuszanie Trybu Ścisłego
226
+
227
+ Skonfiguruj funkcję `t`, aby wymusić ścisłe przestrzeganie zadeklarowanych języków:
228
+
229
+ | Tryb | Zachowanie |
230
+ | ----------- | ------------------------------------------------------------------------------------------------------- |
231
+ | `strict` | Wszystkie zadeklarowane języki muszą mieć tłumaczenia. Brakujące języki spowodują błędy. |
232
+ | `inclusive` | Zadeklarowane języki muszą mieć tłumaczenia. Brakujące języki wywołują ostrzeżenia, ale są akceptowane. |
233
+ | `loose` | Dowolny istniejący język jest akceptowany, nawet jeśli nie został zadeklarowany. |
234
+
235
+ ---
236
+
237
+ ### Integracja z TypeScript
238
+
239
+ Funkcja `t` jest bezpieczna pod względem typów (type-safe) w przypadku użycia z TypeScript. Zdefiniuj bezpieczny obiekt tłumaczeń:
240
+
241
+ ```typescript fileName="src/index.ts" codeFormat="typescript"
242
+ import { type LanguageContent } from "hono-intlayer";
243
+
244
+ const translations: LanguageContent<string> = {
245
+ en: "Good morning!",
246
+ fr: "Bonjour!",
247
+ pl: "Dzień dobry!",
248
+ };
249
+
250
+ app.get("/morning", (c) => {
251
+ return c.text(t(translations));
252
+ });
253
+ ```
254
+
255
+ ---
256
+
257
+ ### Typowe Błędy i Rozwiązywanie Problemów
258
+
259
+ | Problem | Przyczyna | Rozwiązanie |
260
+ | -------------------------- | ------------------------------------------- | ---------------------------------------------------------------- |
261
+ | Funkcja `t` nie działa | Middleware nie został załadowany | Upewnij się, że `app.use("*", intlayer())` dodano przed trasami. |
262
+ | Błąd brakujących tłumaczeń | Tryb ścisły włączony bez wszystkich języków | Dostarcz wszystkie wymagane tłumaczenia. |
263
+
264
+ ---
265
+
266
+ ## Podsumowanie
267
+
268
+ Funkcja `t` jest potężnym narzędziem do internacjonalizacji backendu. Używając jej efektywnie, możesz stworzyć bardziej inkluzywną i przyjazną dla użytkownika aplikację dla globalnej publiczności. Więcej informacji na temat zaawansowanego użytkowania i szczegółowych opcji konfiguracji można znaleźć w [dokumentacji](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md).