@intlayer/docs 8.5.0 → 8.5.2

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 (777) hide show
  1. package/blog/ar/intlayer_with_i18next.md +1 -1
  2. package/blog/ar/intlayer_with_next-i18next.md +1 -1
  3. package/blog/ar/intlayer_with_next-intl.md +1 -1
  4. package/blog/ar/intlayer_with_react-i18next.md +1 -1
  5. package/blog/ar/intlayer_with_react-intl.md +1 -1
  6. package/blog/ar/intlayer_with_vue-i18n.md +1 -1
  7. package/blog/de/intlayer_with_i18next.md +1 -1
  8. package/blog/de/intlayer_with_next-i18next.md +1 -1
  9. package/blog/de/intlayer_with_next-intl.md +1 -1
  10. package/blog/de/intlayer_with_react-i18next.md +1 -1
  11. package/blog/de/intlayer_with_react-intl.md +1 -1
  12. package/blog/de/intlayer_with_vue-i18n.md +1 -1
  13. package/blog/en/intlayer_with_i18next.md +1 -1
  14. package/blog/en/intlayer_with_next-i18next.md +1 -1
  15. package/blog/en/intlayer_with_next-intl.md +1 -1
  16. package/blog/en/intlayer_with_react-i18next.md +1 -1
  17. package/blog/en/intlayer_with_react-intl.md +1 -1
  18. package/blog/en/intlayer_with_vue-i18n.md +1 -1
  19. package/blog/en-GB/intlayer_with_i18next.md +1 -1
  20. package/blog/en-GB/intlayer_with_next-i18next.md +1 -1
  21. package/blog/en-GB/intlayer_with_next-intl.md +1 -1
  22. package/blog/en-GB/intlayer_with_react-i18next.md +1 -1
  23. package/blog/en-GB/intlayer_with_react-intl.md +1 -1
  24. package/blog/en-GB/intlayer_with_vue-i18n.md +1 -1
  25. package/blog/es/intlayer_with_i18next.md +1 -1
  26. package/blog/es/intlayer_with_next-i18next.md +1 -1
  27. package/blog/es/intlayer_with_next-intl.md +1 -1
  28. package/blog/es/intlayer_with_react-i18next.md +1 -1
  29. package/blog/es/intlayer_with_react-intl.md +1 -1
  30. package/blog/es/intlayer_with_vue-i18n.md +1 -1
  31. package/blog/fr/intlayer_with_i18next.md +1 -1
  32. package/blog/fr/intlayer_with_next-i18next.md +1 -1
  33. package/blog/fr/intlayer_with_next-intl.md +1 -1
  34. package/blog/fr/intlayer_with_react-i18next.md +1 -1
  35. package/blog/fr/intlayer_with_react-intl.md +1 -1
  36. package/blog/fr/intlayer_with_vue-i18n.md +1 -1
  37. package/blog/hi/intlayer_with_i18next.md +1 -1
  38. package/blog/hi/intlayer_with_next-i18next.md +1 -1
  39. package/blog/hi/intlayer_with_next-intl.md +1 -1
  40. package/blog/hi/intlayer_with_react-i18next.md +1 -1
  41. package/blog/hi/intlayer_with_react-intl.md +1 -1
  42. package/blog/hi/intlayer_with_vue-i18n.md +1 -1
  43. package/blog/id/intlayer_with_i18next.md +1 -1
  44. package/blog/id/intlayer_with_next-i18next.md +1 -1
  45. package/blog/id/intlayer_with_next-intl.md +1 -1
  46. package/blog/id/intlayer_with_react-i18next.md +1 -1
  47. package/blog/id/intlayer_with_react-intl.md +1 -1
  48. package/blog/id/intlayer_with_vue-i18n.md +1 -1
  49. package/blog/it/intlayer_with_i18next.md +1 -1
  50. package/blog/it/intlayer_with_next-i18next.md +1 -1
  51. package/blog/it/intlayer_with_next-intl.md +1 -1
  52. package/blog/it/intlayer_with_react-i18next.md +1 -1
  53. package/blog/it/intlayer_with_react-intl.md +1 -1
  54. package/blog/it/intlayer_with_vue-i18n.md +1 -1
  55. package/blog/ja/intlayer_with_i18next.md +1 -1
  56. package/blog/ja/intlayer_with_next-i18next.md +1 -1
  57. package/blog/ja/intlayer_with_next-intl.md +1 -1
  58. package/blog/ja/intlayer_with_react-i18next.md +1 -1
  59. package/blog/ja/intlayer_with_react-intl.md +1 -1
  60. package/blog/ja/intlayer_with_vue-i18n.md +1 -1
  61. package/blog/ko/intlayer_with_i18next.md +1 -1
  62. package/blog/ko/intlayer_with_next-i18next.md +1 -1
  63. package/blog/ko/intlayer_with_next-intl.md +1 -1
  64. package/blog/ko/intlayer_with_react-i18next.md +1 -1
  65. package/blog/ko/intlayer_with_react-intl.md +1 -1
  66. package/blog/ko/intlayer_with_vue-i18n.md +1 -1
  67. package/blog/pl/intlayer_with_i18next.md +1 -1
  68. package/blog/pl/intlayer_with_next-i18next.md +1 -1
  69. package/blog/pl/intlayer_with_next-intl.md +1 -1
  70. package/blog/pl/intlayer_with_react-i18next.md +1 -1
  71. package/blog/pl/intlayer_with_react-intl.md +1 -1
  72. package/blog/pl/intlayer_with_vue-i18n.md +1 -1
  73. package/blog/pt/intlayer_with_i18next.md +1 -1
  74. package/blog/pt/intlayer_with_next-i18next.md +1 -1
  75. package/blog/pt/intlayer_with_next-intl.md +1 -1
  76. package/blog/pt/intlayer_with_react-i18next.md +1 -1
  77. package/blog/pt/intlayer_with_react-intl.md +1 -1
  78. package/blog/pt/intlayer_with_vue-i18n.md +1 -1
  79. package/blog/ru/intlayer_with_i18next.md +1 -1
  80. package/blog/ru/intlayer_with_next-i18next.md +1 -1
  81. package/blog/ru/intlayer_with_next-intl.md +1 -1
  82. package/blog/ru/intlayer_with_react-i18next.md +1 -1
  83. package/blog/ru/intlayer_with_react-intl.md +1 -1
  84. package/blog/ru/intlayer_with_vue-i18n.md +1 -1
  85. package/blog/tr/intlayer_with_i18next.md +1 -1
  86. package/blog/tr/intlayer_with_next-i18next.md +1 -1
  87. package/blog/tr/intlayer_with_next-intl.md +1 -1
  88. package/blog/tr/intlayer_with_react-i18next.md +1 -1
  89. package/blog/tr/intlayer_with_react-intl.md +1 -1
  90. package/blog/tr/intlayer_with_vue-i18n.md +1 -1
  91. package/blog/uk/intlayer_with_i18next.md +1 -1
  92. package/blog/uk/intlayer_with_next-i18next.md +1 -1
  93. package/blog/uk/intlayer_with_next-intl.md +1 -1
  94. package/blog/uk/intlayer_with_react-i18next.md +1 -1
  95. package/blog/uk/intlayer_with_react-intl.md +1 -1
  96. package/blog/uk/intlayer_with_vue-i18n.md +1 -1
  97. package/blog/vi/intlayer_with_i18next.md +1 -1
  98. package/blog/vi/intlayer_with_next-i18next.md +1 -1
  99. package/blog/vi/intlayer_with_next-intl.md +1 -1
  100. package/blog/vi/intlayer_with_react-i18next.md +1 -1
  101. package/blog/vi/intlayer_with_react-intl.md +1 -1
  102. package/blog/vi/intlayer_with_vue-i18n.md +1 -1
  103. package/blog/zh/intlayer_with_i18next.md +1 -1
  104. package/blog/zh/intlayer_with_next-i18next.md +1 -1
  105. package/blog/zh/intlayer_with_next-intl.md +1 -1
  106. package/blog/zh/intlayer_with_react-i18next.md +1 -1
  107. package/blog/zh/intlayer_with_react-intl.md +1 -1
  108. package/blog/zh/intlayer_with_vue-i18n.md +1 -1
  109. package/dist/cjs/generated/docs.entry.cjs +20 -0
  110. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  111. package/dist/esm/generated/docs.entry.mjs +20 -0
  112. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  113. package/dist/types/generated/docs.entry.d.ts +1 -0
  114. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  115. package/docs/ar/dictionary/html.md +10 -3
  116. package/docs/ar/dictionary/markdown.md +15 -17
  117. package/docs/ar/intlayer_CMS.md +1 -1
  118. package/docs/ar/intlayer_with_adonisjs.md +1 -1
  119. package/docs/ar/intlayer_with_analog.md +9 -15
  120. package/docs/ar/intlayer_with_angular.md +1 -1
  121. package/docs/ar/intlayer_with_create_react_app.md +1 -1
  122. package/docs/ar/intlayer_with_express.md +1 -1
  123. package/docs/ar/intlayer_with_fastify.md +1 -1
  124. package/docs/ar/intlayer_with_hono.md +1 -1
  125. package/docs/ar/intlayer_with_lynx+react.md +1 -1
  126. package/docs/ar/intlayer_with_nestjs.md +1 -1
  127. package/docs/ar/intlayer_with_next-i18next.md +1 -1
  128. package/docs/ar/intlayer_with_next-intl.md +1 -1
  129. package/docs/ar/intlayer_with_nextjs_14.md +1 -1
  130. package/docs/ar/intlayer_with_nextjs_15.md +1 -1
  131. package/docs/ar/intlayer_with_nextjs_16.md +2 -2
  132. package/docs/ar/intlayer_with_nextjs_compiler.md +2 -2
  133. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1 -1
  134. package/docs/ar/intlayer_with_nextjs_page_router.md +1 -1
  135. package/docs/ar/intlayer_with_nuxt.md +1 -1
  136. package/docs/ar/intlayer_with_react_native+expo.md +1 -1
  137. package/docs/ar/intlayer_with_react_router_v7.md +2 -2
  138. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +2 -2
  139. package/docs/ar/intlayer_with_svelte_kit.md +3 -3
  140. package/docs/ar/intlayer_with_tanstack+solid.md +911 -0
  141. package/docs/ar/intlayer_with_tanstack.md +2 -2
  142. package/docs/ar/intlayer_with_vite+lit.md +9 -58
  143. package/docs/ar/intlayer_with_vite+preact.md +2 -2
  144. package/docs/ar/intlayer_with_vite+react.md +2 -2
  145. package/docs/ar/intlayer_with_vite+react_compiler.md +1 -1
  146. package/docs/ar/intlayer_with_vite+solid.md +2 -2
  147. package/docs/ar/intlayer_with_vite+svelte.md +2 -2
  148. package/docs/ar/intlayer_with_vite+vanilla.md +2 -2
  149. package/docs/ar/intlayer_with_vite+vue.md +5 -5
  150. package/docs/bn/intlayer_with_fastify.md +1 -1
  151. package/docs/bn/intlayer_with_hono.md +1 -1
  152. package/docs/bn/intlayer_with_vite+lit.md +9 -58
  153. package/docs/bn/intlayer_with_vite+vanilla.md +2 -2
  154. package/docs/cs/intlayer_with_fastify.md +1 -1
  155. package/docs/cs/intlayer_with_hono.md +1 -1
  156. package/docs/cs/intlayer_with_vite+lit.md +9 -58
  157. package/docs/cs/intlayer_with_vite+vanilla.md +2 -2
  158. package/docs/de/compiler.md +6 -1
  159. package/docs/de/configuration.md +12 -9
  160. package/docs/de/dictionary/html.md +11 -8
  161. package/docs/de/dictionary/markdown.md +17 -23
  162. package/docs/de/intlayer_CMS.md +1 -1
  163. package/docs/de/intlayer_with_adonisjs.md +1 -1
  164. package/docs/de/intlayer_with_analog.md +9 -15
  165. package/docs/de/intlayer_with_angular.md +1 -1
  166. package/docs/de/intlayer_with_create_react_app.md +1 -1
  167. package/docs/de/intlayer_with_express.md +1 -1
  168. package/docs/de/intlayer_with_fastify.md +1 -1
  169. package/docs/de/intlayer_with_hono.md +1 -1
  170. package/docs/de/intlayer_with_lynx+react.md +1 -1
  171. package/docs/de/intlayer_with_nestjs.md +1 -1
  172. package/docs/de/intlayer_with_next-i18next.md +1 -1
  173. package/docs/de/intlayer_with_next-intl.md +1 -1
  174. package/docs/de/intlayer_with_nextjs_14.md +1 -1
  175. package/docs/de/intlayer_with_nextjs_15.md +1 -1
  176. package/docs/de/intlayer_with_nextjs_16.md +2 -2
  177. package/docs/de/intlayer_with_nextjs_compiler.md +1 -1
  178. package/docs/de/intlayer_with_nextjs_no_locale_path.md +1 -1
  179. package/docs/de/intlayer_with_nextjs_page_router.md +1 -1
  180. package/docs/de/intlayer_with_nuxt.md +1 -1
  181. package/docs/de/intlayer_with_react_router_v7.md +2 -2
  182. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +1 -1
  183. package/docs/de/intlayer_with_svelte_kit.md +3 -3
  184. package/docs/de/intlayer_with_tanstack+solid.md +911 -0
  185. package/docs/de/intlayer_with_tanstack.md +2 -2
  186. package/docs/de/intlayer_with_vite+lit.md +9 -58
  187. package/docs/de/intlayer_with_vite+preact.md +2 -2
  188. package/docs/de/intlayer_with_vite+react.md +2 -2
  189. package/docs/de/intlayer_with_vite+react_compiler.md +1 -1
  190. package/docs/de/intlayer_with_vite+solid.md +2 -2
  191. package/docs/de/intlayer_with_vite+svelte.md +2 -2
  192. package/docs/de/intlayer_with_vite+vanilla.md +2 -2
  193. package/docs/de/intlayer_with_vite+vue.md +5 -5
  194. package/docs/en/compiler.md +2 -0
  195. package/docs/en/configuration.md +8 -8
  196. package/docs/en/dictionary/html.md +12 -9
  197. package/docs/en/dictionary/markdown.md +18 -24
  198. package/docs/en/intlayer_CMS.md +1 -1
  199. package/docs/en/intlayer_with_adonisjs.md +1 -1
  200. package/docs/en/intlayer_with_analog.md +9 -15
  201. package/docs/en/intlayer_with_angular.md +1 -1
  202. package/docs/en/intlayer_with_create_react_app.md +1 -1
  203. package/docs/en/intlayer_with_express.md +1 -1
  204. package/docs/en/intlayer_with_fastify.md +1 -1
  205. package/docs/en/intlayer_with_hono.md +1 -1
  206. package/docs/en/intlayer_with_lynx+react.md +1 -1
  207. package/docs/en/intlayer_with_nestjs.md +1 -1
  208. package/docs/en/intlayer_with_next-i18next.md +1 -1
  209. package/docs/en/intlayer_with_next-intl.md +1 -1
  210. package/docs/en/intlayer_with_nextjs_14.md +1 -1
  211. package/docs/en/intlayer_with_nextjs_15.md +1 -1
  212. package/docs/en/intlayer_with_nextjs_16.md +2 -2
  213. package/docs/en/intlayer_with_nextjs_compiler.md +2 -2
  214. package/docs/en/intlayer_with_nextjs_no_locale_path.md +1 -1
  215. package/docs/en/intlayer_with_nextjs_page_router.md +1 -1
  216. package/docs/en/intlayer_with_nuxt.md +1 -1
  217. package/docs/en/intlayer_with_react_native+expo.md +1 -1
  218. package/docs/en/intlayer_with_react_router_v7.md +2 -2
  219. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +2 -2
  220. package/docs/en/intlayer_with_svelte_kit.md +2 -2
  221. package/docs/en/intlayer_with_tanstack+solid.md +911 -0
  222. package/docs/en/intlayer_with_tanstack.md +2 -2
  223. package/docs/en/intlayer_with_vite+lit.md +11 -58
  224. package/docs/en/intlayer_with_vite+preact.md +2 -2
  225. package/docs/en/intlayer_with_vite+react.md +2 -2
  226. package/docs/en/intlayer_with_vite+react_compiler.md +1 -1
  227. package/docs/en/intlayer_with_vite+solid.md +2 -2
  228. package/docs/en/intlayer_with_vite+svelte.md +2 -2
  229. package/docs/en/intlayer_with_vite+vanilla.md +2 -2
  230. package/docs/en/intlayer_with_vite+vue.md +15 -5
  231. package/docs/en-GB/dictionary/html.md +10 -3
  232. package/docs/en-GB/dictionary/markdown.md +16 -18
  233. package/docs/en-GB/intlayer_CMS.md +1 -1
  234. package/docs/en-GB/intlayer_with_adonisjs.md +1 -1
  235. package/docs/en-GB/intlayer_with_analog.md +9 -15
  236. package/docs/en-GB/intlayer_with_angular.md +1 -1
  237. package/docs/en-GB/intlayer_with_create_react_app.md +2 -2
  238. package/docs/en-GB/intlayer_with_express.md +1 -1
  239. package/docs/en-GB/intlayer_with_fastify.md +1 -1
  240. package/docs/en-GB/intlayer_with_hono.md +1 -1
  241. package/docs/en-GB/intlayer_with_lynx+react.md +2 -2
  242. package/docs/en-GB/intlayer_with_nestjs.md +1 -1
  243. package/docs/en-GB/intlayer_with_next-i18next.md +1 -1
  244. package/docs/en-GB/intlayer_with_next-intl.md +1 -1
  245. package/docs/en-GB/intlayer_with_nextjs_14.md +1 -1
  246. package/docs/en-GB/intlayer_with_nextjs_15.md +1 -1
  247. package/docs/en-GB/intlayer_with_nextjs_16.md +1 -1
  248. package/docs/en-GB/intlayer_with_nextjs_compiler.md +1 -1
  249. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +1 -1
  250. package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
  251. package/docs/en-GB/intlayer_with_nuxt.md +1 -1
  252. package/docs/en-GB/intlayer_with_react_native+expo.md +1 -1
  253. package/docs/en-GB/intlayer_with_react_router_v7.md +1 -1
  254. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +1 -1
  255. package/docs/en-GB/intlayer_with_svelte_kit.md +2 -2
  256. package/docs/en-GB/intlayer_with_tanstack+solid.md +912 -0
  257. package/docs/en-GB/intlayer_with_tanstack.md +1 -1
  258. package/docs/en-GB/intlayer_with_vite+lit.md +11 -58
  259. package/docs/en-GB/intlayer_with_vite+preact.md +1 -1
  260. package/docs/en-GB/intlayer_with_vite+react.md +1 -1
  261. package/docs/en-GB/intlayer_with_vite+react_compiler.md +1 -1
  262. package/docs/en-GB/intlayer_with_vite+solid.md +1 -1
  263. package/docs/en-GB/intlayer_with_vite+svelte.md +1 -1
  264. package/docs/en-GB/intlayer_with_vite+vanilla.md +2 -2
  265. package/docs/en-GB/intlayer_with_vite+vue.md +4 -4
  266. package/docs/es/compiler.md +6 -1
  267. package/docs/es/configuration.md +12 -9
  268. package/docs/es/dictionary/html.md +11 -8
  269. package/docs/es/dictionary/markdown.md +18 -24
  270. package/docs/es/intlayer_CMS.md +1 -1
  271. package/docs/es/intlayer_with_adonisjs.md +1 -1
  272. package/docs/es/intlayer_with_analog.md +9 -15
  273. package/docs/es/intlayer_with_angular.md +1 -1
  274. package/docs/es/intlayer_with_create_react_app.md +1 -1
  275. package/docs/es/intlayer_with_express.md +1 -1
  276. package/docs/es/intlayer_with_fastify.md +1 -1
  277. package/docs/es/intlayer_with_hono.md +1 -1
  278. package/docs/es/intlayer_with_lynx+react.md +1 -1
  279. package/docs/es/intlayer_with_nestjs.md +1 -1
  280. package/docs/es/intlayer_with_next-i18next.md +1 -1
  281. package/docs/es/intlayer_with_next-intl.md +1 -1
  282. package/docs/es/intlayer_with_nextjs_14.md +1 -1
  283. package/docs/es/intlayer_with_nextjs_15.md +1 -1
  284. package/docs/es/intlayer_with_nextjs_16.md +2 -2
  285. package/docs/es/intlayer_with_nextjs_compiler.md +2 -2
  286. package/docs/es/intlayer_with_nextjs_no_locale_path.md +1 -1
  287. package/docs/es/intlayer_with_nextjs_page_router.md +1 -1
  288. package/docs/es/intlayer_with_nuxt.md +1 -1
  289. package/docs/es/intlayer_with_react_native+expo.md +1 -1
  290. package/docs/es/intlayer_with_react_router_v7.md +2 -2
  291. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +2 -2
  292. package/docs/es/intlayer_with_svelte_kit.md +3 -3
  293. package/docs/es/intlayer_with_tanstack+solid.md +911 -0
  294. package/docs/es/intlayer_with_tanstack.md +2 -2
  295. package/docs/es/intlayer_with_vite+lit.md +9 -58
  296. package/docs/es/intlayer_with_vite+preact.md +2 -2
  297. package/docs/es/intlayer_with_vite+react.md +2 -2
  298. package/docs/es/intlayer_with_vite+react_compiler.md +1 -1
  299. package/docs/es/intlayer_with_vite+solid.md +2 -2
  300. package/docs/es/intlayer_with_vite+svelte.md +2 -2
  301. package/docs/es/intlayer_with_vite+vanilla.md +2 -2
  302. package/docs/es/intlayer_with_vite+vue.md +5 -5
  303. package/docs/es/packages/next-intlayer/index.md +1 -1
  304. package/docs/es/packages/react-intlayer/index.md +1 -1
  305. package/docs/fr/compiler.md +8 -3
  306. package/docs/fr/configuration.md +12 -9
  307. package/docs/fr/dictionary/html.md +11 -8
  308. package/docs/fr/dictionary/markdown.md +18 -24
  309. package/docs/fr/intlayer_CMS.md +1 -1
  310. package/docs/fr/intlayer_with_adonisjs.md +1 -1
  311. package/docs/fr/intlayer_with_analog.md +9 -15
  312. package/docs/fr/intlayer_with_angular.md +1 -1
  313. package/docs/fr/intlayer_with_create_react_app.md +1 -1
  314. package/docs/fr/intlayer_with_express.md +1 -1
  315. package/docs/fr/intlayer_with_fastify.md +1 -1
  316. package/docs/fr/intlayer_with_hono.md +1 -1
  317. package/docs/fr/intlayer_with_lynx+react.md +1 -1
  318. package/docs/fr/intlayer_with_nestjs.md +1 -1
  319. package/docs/fr/intlayer_with_next-i18next.md +1 -1
  320. package/docs/fr/intlayer_with_next-intl.md +1 -1
  321. package/docs/fr/intlayer_with_nextjs_14.md +1 -1
  322. package/docs/fr/intlayer_with_nextjs_15.md +1 -1
  323. package/docs/fr/intlayer_with_nextjs_16.md +2 -2
  324. package/docs/fr/intlayer_with_nextjs_compiler.md +2 -2
  325. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1 -1
  326. package/docs/fr/intlayer_with_nextjs_page_router.md +1 -1
  327. package/docs/fr/intlayer_with_nuxt.md +1 -1
  328. package/docs/fr/intlayer_with_react_router_v7.md +2 -2
  329. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +2 -2
  330. package/docs/fr/intlayer_with_svelte_kit.md +3 -3
  331. package/docs/fr/intlayer_with_tanstack+solid.md +911 -0
  332. package/docs/fr/intlayer_with_tanstack.md +2 -2
  333. package/docs/fr/intlayer_with_vite+lit.md +9 -58
  334. package/docs/fr/intlayer_with_vite+preact.md +2 -2
  335. package/docs/fr/intlayer_with_vite+react.md +2 -2
  336. package/docs/fr/intlayer_with_vite+react_compiler.md +1 -1
  337. package/docs/fr/intlayer_with_vite+solid.md +2 -2
  338. package/docs/fr/intlayer_with_vite+svelte.md +2 -2
  339. package/docs/fr/intlayer_with_vite+vanilla.md +2 -2
  340. package/docs/fr/intlayer_with_vite+vue.md +5 -5
  341. package/docs/fr/packages/react-intlayer/index.md +1 -1
  342. package/docs/hi/dictionary/html.md +10 -3
  343. package/docs/hi/dictionary/markdown.md +17 -19
  344. package/docs/hi/intlayer_CMS.md +1 -1
  345. package/docs/hi/intlayer_with_adonisjs.md +1 -1
  346. package/docs/hi/intlayer_with_analog.md +9 -15
  347. package/docs/hi/intlayer_with_angular.md +1 -1
  348. package/docs/hi/intlayer_with_create_react_app.md +1 -1
  349. package/docs/hi/intlayer_with_express.md +1 -1
  350. package/docs/hi/intlayer_with_fastify.md +1 -1
  351. package/docs/hi/intlayer_with_hono.md +1 -1
  352. package/docs/hi/intlayer_with_lynx+react.md +1 -1
  353. package/docs/hi/intlayer_with_nestjs.md +1 -1
  354. package/docs/hi/intlayer_with_next-i18next.md +1 -1
  355. package/docs/hi/intlayer_with_next-intl.md +1 -1
  356. package/docs/hi/intlayer_with_nextjs_14.md +1 -1
  357. package/docs/hi/intlayer_with_nextjs_15.md +1 -1
  358. package/docs/hi/intlayer_with_nextjs_16.md +2 -2
  359. package/docs/hi/intlayer_with_nextjs_compiler.md +2 -2
  360. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1 -1
  361. package/docs/hi/intlayer_with_nextjs_page_router.md +1 -1
  362. package/docs/hi/intlayer_with_nuxt.md +1 -1
  363. package/docs/hi/intlayer_with_react_router_v7.md +2 -2
  364. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +2 -2
  365. package/docs/hi/intlayer_with_svelte_kit.md +3 -3
  366. package/docs/hi/intlayer_with_tanstack+solid.md +911 -0
  367. package/docs/hi/intlayer_with_tanstack.md +2 -2
  368. package/docs/hi/intlayer_with_vite+lit.md +9 -58
  369. package/docs/hi/intlayer_with_vite+preact.md +2 -2
  370. package/docs/hi/intlayer_with_vite+react.md +2 -2
  371. package/docs/hi/intlayer_with_vite+react_compiler.md +1 -1
  372. package/docs/hi/intlayer_with_vite+solid.md +2 -2
  373. package/docs/hi/intlayer_with_vite+svelte.md +2 -2
  374. package/docs/hi/intlayer_with_vite+vanilla.md +2 -2
  375. package/docs/hi/intlayer_with_vite+vue.md +5 -5
  376. package/docs/hi/packages/intlayer/index.md +1 -1
  377. package/docs/id/dictionary/html.md +10 -3
  378. package/docs/id/dictionary/markdown.md +17 -19
  379. package/docs/id/intlayer_CMS.md +1 -1
  380. package/docs/id/intlayer_with_adonisjs.md +1 -1
  381. package/docs/id/intlayer_with_analog.md +9 -15
  382. package/docs/id/intlayer_with_angular.md +1 -1
  383. package/docs/id/intlayer_with_create_react_app.md +1 -1
  384. package/docs/id/intlayer_with_express.md +1 -1
  385. package/docs/id/intlayer_with_fastify.md +1 -1
  386. package/docs/id/intlayer_with_hono.md +1 -1
  387. package/docs/id/intlayer_with_lynx+react.md +1 -1
  388. package/docs/id/intlayer_with_nestjs.md +1 -1
  389. package/docs/id/intlayer_with_next-i18next.md +1 -1
  390. package/docs/id/intlayer_with_next-intl.md +1 -1
  391. package/docs/id/intlayer_with_nextjs_14.md +1 -1
  392. package/docs/id/intlayer_with_nextjs_15.md +1 -1
  393. package/docs/id/intlayer_with_nextjs_16.md +2 -2
  394. package/docs/id/intlayer_with_nextjs_compiler.md +2 -2
  395. package/docs/id/intlayer_with_nextjs_no_locale_path.md +1 -1
  396. package/docs/id/intlayer_with_nextjs_page_router.md +1 -1
  397. package/docs/id/intlayer_with_nuxt.md +1 -1
  398. package/docs/id/intlayer_with_react_native+expo.md +1 -1
  399. package/docs/id/intlayer_with_react_router_v7.md +2 -2
  400. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +2 -2
  401. package/docs/id/intlayer_with_svelte_kit.md +3 -3
  402. package/docs/id/intlayer_with_tanstack+solid.md +911 -0
  403. package/docs/id/intlayer_with_tanstack.md +2 -2
  404. package/docs/id/intlayer_with_vite+lit.md +9 -58
  405. package/docs/id/intlayer_with_vite+preact.md +2 -2
  406. package/docs/id/intlayer_with_vite+react.md +2 -2
  407. package/docs/id/intlayer_with_vite+react_compiler.md +1 -1
  408. package/docs/id/intlayer_with_vite+solid.md +2 -2
  409. package/docs/id/intlayer_with_vite+svelte.md +2 -2
  410. package/docs/id/intlayer_with_vite+vanilla.md +2 -2
  411. package/docs/id/intlayer_with_vite+vue.md +5 -5
  412. package/docs/it/compiler.md +8 -3
  413. package/docs/it/configuration.md +12 -9
  414. package/docs/it/dictionary/html.md +11 -8
  415. package/docs/it/dictionary/markdown.md +18 -24
  416. package/docs/it/intlayer_CMS.md +1 -1
  417. package/docs/it/intlayer_with_adonisjs.md +1 -1
  418. package/docs/it/intlayer_with_analog.md +9 -15
  419. package/docs/it/intlayer_with_angular.md +1 -1
  420. package/docs/it/intlayer_with_create_react_app.md +1 -1
  421. package/docs/it/intlayer_with_express.md +1 -1
  422. package/docs/it/intlayer_with_fastify.md +1 -1
  423. package/docs/it/intlayer_with_hono.md +1 -1
  424. package/docs/it/intlayer_with_lynx+react.md +1 -1
  425. package/docs/it/intlayer_with_nestjs.md +1 -1
  426. package/docs/it/intlayer_with_next-i18next.md +1 -1
  427. package/docs/it/intlayer_with_next-intl.md +1 -1
  428. package/docs/it/intlayer_with_nextjs_14.md +1 -1
  429. package/docs/it/intlayer_with_nextjs_15.md +1 -1
  430. package/docs/it/intlayer_with_nextjs_16.md +2 -2
  431. package/docs/it/intlayer_with_nextjs_compiler.md +2 -2
  432. package/docs/it/intlayer_with_nextjs_no_locale_path.md +1 -1
  433. package/docs/it/intlayer_with_nextjs_page_router.md +1 -1
  434. package/docs/it/intlayer_with_nuxt.md +1 -1
  435. package/docs/it/intlayer_with_react_native+expo.md +1 -1
  436. package/docs/it/intlayer_with_react_router_v7.md +2 -2
  437. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +2 -2
  438. package/docs/it/intlayer_with_svelte_kit.md +3 -3
  439. package/docs/it/intlayer_with_tanstack+solid.md +911 -0
  440. package/docs/it/intlayer_with_tanstack.md +2 -2
  441. package/docs/it/intlayer_with_vite+lit.md +9 -58
  442. package/docs/it/intlayer_with_vite+preact.md +2 -2
  443. package/docs/it/intlayer_with_vite+react.md +2 -2
  444. package/docs/it/intlayer_with_vite+react_compiler.md +1 -1
  445. package/docs/it/intlayer_with_vite+solid.md +2 -2
  446. package/docs/it/intlayer_with_vite+svelte.md +2 -2
  447. package/docs/it/intlayer_with_vite+vanilla.md +2 -2
  448. package/docs/it/intlayer_with_vite+vue.md +5 -5
  449. package/docs/ja/dictionary/html.md +11 -8
  450. package/docs/ja/dictionary/markdown.md +21 -24
  451. package/docs/ja/intlayer_CMS.md +1 -1
  452. package/docs/ja/intlayer_with_adonisjs.md +1 -1
  453. package/docs/ja/intlayer_with_analog.md +9 -15
  454. package/docs/ja/intlayer_with_angular.md +1 -1
  455. package/docs/ja/intlayer_with_create_react_app.md +1 -1
  456. package/docs/ja/intlayer_with_express.md +1 -1
  457. package/docs/ja/intlayer_with_fastify.md +1 -1
  458. package/docs/ja/intlayer_with_hono.md +1 -1
  459. package/docs/ja/intlayer_with_lynx+react.md +1 -1
  460. package/docs/ja/intlayer_with_nestjs.md +1 -1
  461. package/docs/ja/intlayer_with_next-i18next.md +1 -1
  462. package/docs/ja/intlayer_with_next-intl.md +1 -1
  463. package/docs/ja/intlayer_with_nextjs_14.md +1 -1
  464. package/docs/ja/intlayer_with_nextjs_15.md +1 -1
  465. package/docs/ja/intlayer_with_nextjs_16.md +2 -2
  466. package/docs/ja/intlayer_with_nextjs_compiler.md +2 -2
  467. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1 -1
  468. package/docs/ja/intlayer_with_nextjs_page_router.md +1 -1
  469. package/docs/ja/intlayer_with_nuxt.md +1 -1
  470. package/docs/ja/intlayer_with_react_router_v7.md +1 -1
  471. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +2 -2
  472. package/docs/ja/intlayer_with_svelte_kit.md +1 -1
  473. package/docs/ja/intlayer_with_tanstack+solid.md +911 -0
  474. package/docs/ja/intlayer_with_tanstack.md +1 -1
  475. package/docs/ja/intlayer_with_vite+lit.md +9 -58
  476. package/docs/ja/intlayer_with_vite+preact.md +1 -1
  477. package/docs/ja/intlayer_with_vite+react.md +1 -1
  478. package/docs/ja/intlayer_with_vite+react_compiler.md +1 -1
  479. package/docs/ja/intlayer_with_vite+solid.md +2 -2
  480. package/docs/ja/intlayer_with_vite+svelte.md +2 -2
  481. package/docs/ja/intlayer_with_vite+vanilla.md +2 -2
  482. package/docs/ja/intlayer_with_vite+vue.md +5 -5
  483. package/docs/ko/dictionary/html.md +11 -8
  484. package/docs/ko/dictionary/markdown.md +18 -24
  485. package/docs/ko/intlayer_CMS.md +1 -1
  486. package/docs/ko/intlayer_with_adonisjs.md +1 -1
  487. package/docs/ko/intlayer_with_analog.md +9 -15
  488. package/docs/ko/intlayer_with_angular.md +1 -1
  489. package/docs/ko/intlayer_with_create_react_app.md +1 -1
  490. package/docs/ko/intlayer_with_express.md +1 -1
  491. package/docs/ko/intlayer_with_fastify.md +1 -1
  492. package/docs/ko/intlayer_with_hono.md +1 -1
  493. package/docs/ko/intlayer_with_lynx+react.md +1 -1
  494. package/docs/ko/intlayer_with_nestjs.md +1 -1
  495. package/docs/ko/intlayer_with_next-i18next.md +1 -1
  496. package/docs/ko/intlayer_with_next-intl.md +1 -1
  497. package/docs/ko/intlayer_with_nextjs_14.md +1 -1
  498. package/docs/ko/intlayer_with_nextjs_15.md +1 -1
  499. package/docs/ko/intlayer_with_nextjs_16.md +2 -2
  500. package/docs/ko/intlayer_with_nextjs_compiler.md +2 -2
  501. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1 -1
  502. package/docs/ko/intlayer_with_nextjs_page_router.md +1 -1
  503. package/docs/ko/intlayer_with_nuxt.md +1 -1
  504. package/docs/ko/intlayer_with_react_native+expo.md +1 -1
  505. package/docs/ko/intlayer_with_react_router_v7.md +2 -2
  506. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +2 -2
  507. package/docs/ko/intlayer_with_svelte_kit.md +3 -3
  508. package/docs/ko/intlayer_with_tanstack+solid.md +911 -0
  509. package/docs/ko/intlayer_with_tanstack.md +2 -2
  510. package/docs/ko/intlayer_with_vite+lit.md +9 -58
  511. package/docs/ko/intlayer_with_vite+preact.md +2 -2
  512. package/docs/ko/intlayer_with_vite+react.md +2 -2
  513. package/docs/ko/intlayer_with_vite+react_compiler.md +1 -1
  514. package/docs/ko/intlayer_with_vite+solid.md +2 -2
  515. package/docs/ko/intlayer_with_vite+svelte.md +2 -2
  516. package/docs/ko/intlayer_with_vite+vanilla.md +2 -2
  517. package/docs/ko/intlayer_with_vite+vue.md +5 -5
  518. package/docs/nl/intlayer_with_fastify.md +1 -1
  519. package/docs/nl/intlayer_with_hono.md +1 -1
  520. package/docs/nl/intlayer_with_vite+lit.md +9 -58
  521. package/docs/nl/intlayer_with_vite+vanilla.md +2 -2
  522. package/docs/pl/dictionary/html.md +11 -8
  523. package/docs/pl/dictionary/markdown.md +18 -24
  524. package/docs/pl/intlayer_CMS.md +1 -1
  525. package/docs/pl/intlayer_with_adonisjs.md +1 -1
  526. package/docs/pl/intlayer_with_analog.md +9 -15
  527. package/docs/pl/intlayer_with_angular.md +1 -1
  528. package/docs/pl/intlayer_with_create_react_app.md +1 -1
  529. package/docs/pl/intlayer_with_express.md +1 -1
  530. package/docs/pl/intlayer_with_fastify.md +1 -1
  531. package/docs/pl/intlayer_with_hono.md +1 -1
  532. package/docs/pl/intlayer_with_lynx+react.md +1 -1
  533. package/docs/pl/intlayer_with_nestjs.md +1 -1
  534. package/docs/pl/intlayer_with_next-i18next.md +1 -1
  535. package/docs/pl/intlayer_with_next-intl.md +1 -1
  536. package/docs/pl/intlayer_with_nextjs_14.md +1 -1
  537. package/docs/pl/intlayer_with_nextjs_15.md +1 -1
  538. package/docs/pl/intlayer_with_nextjs_16.md +2 -2
  539. package/docs/pl/intlayer_with_nextjs_compiler.md +2 -2
  540. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +1 -1
  541. package/docs/pl/intlayer_with_nextjs_page_router.md +1 -1
  542. package/docs/pl/intlayer_with_nuxt.md +1 -1
  543. package/docs/pl/intlayer_with_react_native+expo.md +1 -1
  544. package/docs/pl/intlayer_with_react_router_v7.md +2 -2
  545. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +2 -2
  546. package/docs/pl/intlayer_with_svelte_kit.md +3 -3
  547. package/docs/pl/intlayer_with_tanstack+solid.md +911 -0
  548. package/docs/pl/intlayer_with_tanstack.md +2 -2
  549. package/docs/pl/intlayer_with_vite+lit.md +9 -58
  550. package/docs/pl/intlayer_with_vite+preact.md +2 -2
  551. package/docs/pl/intlayer_with_vite+react.md +2 -2
  552. package/docs/pl/intlayer_with_vite+react_compiler.md +1 -1
  553. package/docs/pl/intlayer_with_vite+solid.md +2 -2
  554. package/docs/pl/intlayer_with_vite+svelte.md +2 -2
  555. package/docs/pl/intlayer_with_vite+vanilla.md +2 -2
  556. package/docs/pl/intlayer_with_vite+vue.md +5 -5
  557. package/docs/pt/compiler.md +7 -2
  558. package/docs/pt/configuration.md +11 -9
  559. package/docs/pt/dictionary/html.md +11 -8
  560. package/docs/pt/dictionary/markdown.md +18 -24
  561. package/docs/pt/intlayer_CMS.md +1 -1
  562. package/docs/pt/intlayer_with_adonisjs.md +1 -1
  563. package/docs/pt/intlayer_with_analog.md +9 -15
  564. package/docs/pt/intlayer_with_angular.md +1 -1
  565. package/docs/pt/intlayer_with_create_react_app.md +1 -1
  566. package/docs/pt/intlayer_with_express.md +1 -1
  567. package/docs/pt/intlayer_with_fastify.md +1 -1
  568. package/docs/pt/intlayer_with_hono.md +1 -1
  569. package/docs/pt/intlayer_with_lynx+react.md +1 -1
  570. package/docs/pt/intlayer_with_nestjs.md +1 -1
  571. package/docs/pt/intlayer_with_next-i18next.md +1 -1
  572. package/docs/pt/intlayer_with_next-intl.md +1 -1
  573. package/docs/pt/intlayer_with_nextjs_14.md +1 -1
  574. package/docs/pt/intlayer_with_nextjs_15.md +1 -1
  575. package/docs/pt/intlayer_with_nextjs_16.md +2 -2
  576. package/docs/pt/intlayer_with_nextjs_compiler.md +2 -2
  577. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +1 -1
  578. package/docs/pt/intlayer_with_nextjs_page_router.md +1 -1
  579. package/docs/pt/intlayer_with_nuxt.md +1 -1
  580. package/docs/pt/intlayer_with_react_native+expo.md +1 -1
  581. package/docs/pt/intlayer_with_react_router_v7.md +2 -2
  582. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +2 -2
  583. package/docs/pt/intlayer_with_svelte_kit.md +3 -3
  584. package/docs/pt/intlayer_with_tanstack+solid.md +911 -0
  585. package/docs/pt/intlayer_with_tanstack.md +2 -2
  586. package/docs/pt/intlayer_with_vite+lit.md +9 -58
  587. package/docs/pt/intlayer_with_vite+preact.md +2 -2
  588. package/docs/pt/intlayer_with_vite+react.md +2 -2
  589. package/docs/pt/intlayer_with_vite+react_compiler.md +1 -1
  590. package/docs/pt/intlayer_with_vite+solid.md +2 -2
  591. package/docs/pt/intlayer_with_vite+svelte.md +2 -2
  592. package/docs/pt/intlayer_with_vite+vanilla.md +2 -2
  593. package/docs/pt/intlayer_with_vite+vue.md +5 -5
  594. package/docs/ru/dictionary/html.md +11 -8
  595. package/docs/ru/dictionary/markdown.md +18 -24
  596. package/docs/ru/intlayer_CMS.md +1 -1
  597. package/docs/ru/intlayer_with_adonisjs.md +1 -1
  598. package/docs/ru/intlayer_with_analog.md +9 -15
  599. package/docs/ru/intlayer_with_angular.md +1 -1
  600. package/docs/ru/intlayer_with_create_react_app.md +1 -1
  601. package/docs/ru/intlayer_with_express.md +1 -1
  602. package/docs/ru/intlayer_with_fastify.md +1 -1
  603. package/docs/ru/intlayer_with_hono.md +1 -1
  604. package/docs/ru/intlayer_with_lynx+react.md +1 -1
  605. package/docs/ru/intlayer_with_nestjs.md +1 -1
  606. package/docs/ru/intlayer_with_next-i18next.md +1 -1
  607. package/docs/ru/intlayer_with_next-intl.md +1 -1
  608. package/docs/ru/intlayer_with_nextjs_14.md +1 -1
  609. package/docs/ru/intlayer_with_nextjs_15.md +1 -1
  610. package/docs/ru/intlayer_with_nextjs_16.md +2 -2
  611. package/docs/ru/intlayer_with_nextjs_compiler.md +2 -2
  612. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1 -1
  613. package/docs/ru/intlayer_with_nextjs_page_router.md +1 -1
  614. package/docs/ru/intlayer_with_nuxt.md +1 -1
  615. package/docs/ru/intlayer_with_react_native+expo.md +1 -1
  616. package/docs/ru/intlayer_with_react_router_v7.md +2 -2
  617. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +2 -2
  618. package/docs/ru/intlayer_with_svelte_kit.md +3 -3
  619. package/docs/ru/intlayer_with_tanstack+solid.md +911 -0
  620. package/docs/ru/intlayer_with_tanstack.md +2 -2
  621. package/docs/ru/intlayer_with_vite+lit.md +9 -58
  622. package/docs/ru/intlayer_with_vite+preact.md +2 -2
  623. package/docs/ru/intlayer_with_vite+react.md +2 -2
  624. package/docs/ru/intlayer_with_vite+react_compiler.md +1 -1
  625. package/docs/ru/intlayer_with_vite+solid.md +2 -2
  626. package/docs/ru/intlayer_with_vite+svelte.md +2 -2
  627. package/docs/ru/intlayer_with_vite+vanilla.md +2 -2
  628. package/docs/ru/intlayer_with_vite+vue.md +5 -5
  629. package/docs/tr/dictionary/html.md +11 -8
  630. package/docs/tr/dictionary/markdown.md +18 -24
  631. package/docs/tr/intlayer_CMS.md +1 -1
  632. package/docs/tr/intlayer_with_adonisjs.md +1 -1
  633. package/docs/tr/intlayer_with_analog.md +9 -15
  634. package/docs/tr/intlayer_with_angular.md +1 -1
  635. package/docs/tr/intlayer_with_create_react_app.md +1 -1
  636. package/docs/tr/intlayer_with_express.md +1 -1
  637. package/docs/tr/intlayer_with_fastify.md +1 -1
  638. package/docs/tr/intlayer_with_hono.md +1 -1
  639. package/docs/tr/intlayer_with_lynx+react.md +1 -1
  640. package/docs/tr/intlayer_with_nestjs.md +1 -1
  641. package/docs/tr/intlayer_with_next-i18next.md +1 -1
  642. package/docs/tr/intlayer_with_next-intl.md +1 -1
  643. package/docs/tr/intlayer_with_nextjs_14.md +1 -1
  644. package/docs/tr/intlayer_with_nextjs_15.md +1 -1
  645. package/docs/tr/intlayer_with_nextjs_16.md +2 -2
  646. package/docs/tr/intlayer_with_nextjs_compiler.md +2 -2
  647. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1 -1
  648. package/docs/tr/intlayer_with_nextjs_page_router.md +1 -1
  649. package/docs/tr/intlayer_with_nuxt.md +1 -1
  650. package/docs/tr/intlayer_with_react_native+expo.md +1 -1
  651. package/docs/tr/intlayer_with_react_router_v7.md +2 -2
  652. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +2 -2
  653. package/docs/tr/intlayer_with_svelte_kit.md +3 -3
  654. package/docs/tr/intlayer_with_tanstack+solid.md +912 -0
  655. package/docs/tr/intlayer_with_tanstack.md +2 -2
  656. package/docs/tr/intlayer_with_vite+lit.md +9 -58
  657. package/docs/tr/intlayer_with_vite+preact.md +2 -2
  658. package/docs/tr/intlayer_with_vite+react.md +2 -2
  659. package/docs/tr/intlayer_with_vite+react_compiler.md +1 -1
  660. package/docs/tr/intlayer_with_vite+solid.md +2 -2
  661. package/docs/tr/intlayer_with_vite+svelte.md +2 -2
  662. package/docs/tr/intlayer_with_vite+vanilla.md +2 -2
  663. package/docs/tr/intlayer_with_vite+vue.md +5 -5
  664. package/docs/uk/dictionary/html.md +10 -3
  665. package/docs/uk/dictionary/markdown.md +17 -19
  666. package/docs/uk/intlayer_CMS.md +1 -1
  667. package/docs/uk/intlayer_with_adonisjs.md +1 -1
  668. package/docs/uk/intlayer_with_analog.md +9 -15
  669. package/docs/uk/intlayer_with_angular.md +1 -1
  670. package/docs/uk/intlayer_with_create_react_app.md +1 -1
  671. package/docs/uk/intlayer_with_express.md +1 -1
  672. package/docs/uk/intlayer_with_fastify.md +1 -1
  673. package/docs/uk/intlayer_with_hono.md +1 -1
  674. package/docs/uk/intlayer_with_lynx+react.md +1 -1
  675. package/docs/uk/intlayer_with_nestjs.md +1 -1
  676. package/docs/uk/intlayer_with_next-i18next.md +1 -1
  677. package/docs/uk/intlayer_with_next-intl.md +1 -1
  678. package/docs/uk/intlayer_with_nextjs_14.md +1 -1
  679. package/docs/uk/intlayer_with_nextjs_15.md +1 -1
  680. package/docs/uk/intlayer_with_nextjs_16.md +2 -2
  681. package/docs/uk/intlayer_with_nextjs_compiler.md +2 -2
  682. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1 -1
  683. package/docs/uk/intlayer_with_nextjs_page_router.md +1 -1
  684. package/docs/uk/intlayer_with_nuxt.md +1 -1
  685. package/docs/uk/intlayer_with_react_native+expo.md +1 -1
  686. package/docs/uk/intlayer_with_react_router_v7.md +2 -2
  687. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +2 -2
  688. package/docs/uk/intlayer_with_svelte_kit.md +2 -2
  689. package/docs/uk/intlayer_with_tanstack+solid.md +911 -0
  690. package/docs/uk/intlayer_with_tanstack.md +2 -2
  691. package/docs/uk/intlayer_with_vite+lit.md +9 -58
  692. package/docs/uk/intlayer_with_vite+preact.md +2 -2
  693. package/docs/uk/intlayer_with_vite+react.md +2 -2
  694. package/docs/uk/intlayer_with_vite+react_compiler.md +1 -1
  695. package/docs/uk/intlayer_with_vite+solid.md +2 -2
  696. package/docs/uk/intlayer_with_vite+svelte.md +2 -2
  697. package/docs/uk/intlayer_with_vite+vanilla.md +2 -2
  698. package/docs/uk/intlayer_with_vite+vue.md +5 -5
  699. package/docs/ur/intlayer_with_fastify.md +1 -1
  700. package/docs/ur/intlayer_with_hono.md +1 -1
  701. package/docs/ur/intlayer_with_vite+lit.md +9 -58
  702. package/docs/ur/intlayer_with_vite+vanilla.md +1 -1
  703. package/docs/vi/cli/index.md +1 -1
  704. package/docs/vi/dictionary/html.md +10 -3
  705. package/docs/vi/dictionary/markdown.md +17 -19
  706. package/docs/vi/intlayer_CMS.md +1 -1
  707. package/docs/vi/intlayer_with_adonisjs.md +1 -1
  708. package/docs/vi/intlayer_with_analog.md +9 -15
  709. package/docs/vi/intlayer_with_angular.md +1 -1
  710. package/docs/vi/intlayer_with_create_react_app.md +1 -1
  711. package/docs/vi/intlayer_with_express.md +1 -1
  712. package/docs/vi/intlayer_with_fastify.md +1 -1
  713. package/docs/vi/intlayer_with_hono.md +1 -1
  714. package/docs/vi/intlayer_with_lynx+react.md +1 -1
  715. package/docs/vi/intlayer_with_nestjs.md +1 -1
  716. package/docs/vi/intlayer_with_next-i18next.md +1 -1
  717. package/docs/vi/intlayer_with_next-intl.md +1 -1
  718. package/docs/vi/intlayer_with_nextjs_14.md +1 -1
  719. package/docs/vi/intlayer_with_nextjs_15.md +1 -1
  720. package/docs/vi/intlayer_with_nextjs_16.md +2 -2
  721. package/docs/vi/intlayer_with_nextjs_compiler.md +2 -2
  722. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1 -1
  723. package/docs/vi/intlayer_with_nextjs_page_router.md +1 -1
  724. package/docs/vi/intlayer_with_nuxt.md +1 -1
  725. package/docs/vi/intlayer_with_react_native+expo.md +1 -1
  726. package/docs/vi/intlayer_with_react_router_v7.md +2 -2
  727. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +2 -2
  728. package/docs/vi/intlayer_with_svelte_kit.md +3 -3
  729. package/docs/vi/intlayer_with_tanstack+solid.md +911 -0
  730. package/docs/vi/intlayer_with_tanstack.md +2 -2
  731. package/docs/vi/intlayer_with_vite+lit.md +9 -58
  732. package/docs/vi/intlayer_with_vite+preact.md +2 -2
  733. package/docs/vi/intlayer_with_vite+react.md +2 -2
  734. package/docs/vi/intlayer_with_vite+react_compiler.md +1 -1
  735. package/docs/vi/intlayer_with_vite+solid.md +2 -2
  736. package/docs/vi/intlayer_with_vite+svelte.md +2 -2
  737. package/docs/vi/intlayer_with_vite+vanilla.md +2 -2
  738. package/docs/vi/intlayer_with_vite+vue.md +5 -5
  739. package/docs/zh/compiler.md +8 -3
  740. package/docs/zh/configuration.md +4 -1
  741. package/docs/zh/dictionary/html.md +11 -8
  742. package/docs/zh/dictionary/markdown.md +18 -24
  743. package/docs/zh/intlayer_CMS.md +1 -1
  744. package/docs/zh/intlayer_with_adonisjs.md +1 -1
  745. package/docs/zh/intlayer_with_analog.md +9 -15
  746. package/docs/zh/intlayer_with_angular.md +1 -1
  747. package/docs/zh/intlayer_with_create_react_app.md +1 -1
  748. package/docs/zh/intlayer_with_express.md +1 -1
  749. package/docs/zh/intlayer_with_fastify.md +1 -1
  750. package/docs/zh/intlayer_with_hono.md +1 -1
  751. package/docs/zh/intlayer_with_lynx+react.md +1 -1
  752. package/docs/zh/intlayer_with_nestjs.md +1 -1
  753. package/docs/zh/intlayer_with_next-i18next.md +1 -1
  754. package/docs/zh/intlayer_with_next-intl.md +1 -1
  755. package/docs/zh/intlayer_with_nextjs_14.md +1 -1
  756. package/docs/zh/intlayer_with_nextjs_15.md +1 -1
  757. package/docs/zh/intlayer_with_nextjs_16.md +2 -2
  758. package/docs/zh/intlayer_with_nextjs_compiler.md +2 -2
  759. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1 -1
  760. package/docs/zh/intlayer_with_nextjs_page_router.md +1 -1
  761. package/docs/zh/intlayer_with_nuxt.md +1 -1
  762. package/docs/zh/intlayer_with_react_native+expo.md +1 -1
  763. package/docs/zh/intlayer_with_react_router_v7.md +2 -2
  764. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +2 -2
  765. package/docs/zh/intlayer_with_svelte_kit.md +3 -3
  766. package/docs/zh/intlayer_with_tanstack+solid.md +911 -0
  767. package/docs/zh/intlayer_with_tanstack.md +2 -2
  768. package/docs/zh/intlayer_with_vite+lit.md +9 -58
  769. package/docs/zh/intlayer_with_vite+preact.md +2 -2
  770. package/docs/zh/intlayer_with_vite+react.md +2 -2
  771. package/docs/zh/intlayer_with_vite+react_compiler.md +1 -1
  772. package/docs/zh/intlayer_with_vite+solid.md +2 -2
  773. package/docs/zh/intlayer_with_vite+svelte.md +2 -2
  774. package/docs/zh/intlayer_with_vite+vanilla.md +2 -2
  775. package/docs/zh/intlayer_with_vite+vue.md +5 -5
  776. package/package.json +6 -6
  777. package/src/generated/docs.entry.ts +20 -0
@@ -0,0 +1,911 @@
1
+ ---
2
+ createdAt: 2025-03-25
3
+ updatedAt: 2026-03-25
4
+ title: i18n Tanstack Start - Jak przetłumaczyć aplikację Tanstack Start używając Solid.js w 2026 roku
5
+ description: Dowiedz się, jak dodać internacjonalizację (i18n) do swojej aplikacji Tanstack Start, korzystając z Intlayer i Solid.js. Postępuj zgodnie z tym kompleksowym przewodnikiem, aby stworzyć wielojęzyczną aplikację z routingiem uwzględniającym lokalizację (locale).
6
+ keywords:
7
+ - Internacjonalizacja
8
+ - Dokumentacja
9
+ - Intlayer
10
+ - Tanstack Start
11
+ - Solid
12
+ - i18n
13
+ - TypeScript
14
+ - Routing językowy
15
+ slugs:
16
+ - doc
17
+ - environment
18
+ - tanstack-start
19
+ applicationTemplate: https://github.com/aymericzip/intlayer-tanstack-start-solid-template
20
+ youtubeVideo: https://www.youtube.com/watch?v=_XTdKVWaeqg
21
+ history:
22
+ - version: 8.5.1
23
+ date: 2026-03-25
24
+ changes: "Dodano dla Tanstack Start Solid.js"
25
+ ---
26
+
27
+ # Przetłumacz swoją stronę Tanstack Start + Solid.js za pomocą Intlayer | Internacjonalizacja (i18n)
28
+
29
+ ## Spis treści
30
+
31
+ <TOC/>
32
+
33
+ Ten przewodnik pokazuje, jak zintegrować **Intlayer** w celu zapewnienia bezproblemowej internacjonalizacji w projektach Tanstack Start z Solid.js, z routingiem uwzględniającym lokalizację, wsparciem TypeScript oraz nowoczesnymi praktykami programistycznymi.
34
+
35
+ ## Czym jest Intlayer?
36
+
37
+ **Intlayer** to innowacyjna biblioteka internacjonalizacji (i18n) o otwartym kodzie źródłowym, zaprojektowana w celu uproszczenia obsługi wielu języków w nowoczesnych aplikacjach internetowych.
38
+
39
+ Dzięki Intlayer możesz:
40
+
41
+ - **Łatwo zarządzać tłumaczeniami** za pomocą deklaratywnych słowników na poziomie komponentów.
42
+ - **Dynamicznie lokalizować metadane, trasy (routes) i treść**.
43
+ - **Zapewnić wsparcie TypeScript** dzięki automatycznie generowanym typom, co poprawia autouzupełnianie i wykrywanie błędów.
44
+ - **Korzystać z zaawansowanych funkcji**, takich jak dynamiczne wykrywanie i przełączanie języka.
45
+ - **Włączyć routing uwzględniający język** dzięki systemowi routingu Tanstack Start opartemu na plikach.
46
+
47
+ ---
48
+
49
+ ## Przewodnik krok po kroku dotyczący konfiguracji Intlayer w aplikacji Tanstack Start
50
+
51
+ <Tabs defaultTab="video">
52
+ <Tab label="Wideo" value="video">
53
+
54
+ <iframe title="Najlepsze rozwiązanie i18n dla Tanstack Start? Odkryj Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/_XTdKVWaeqg?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
55
+
56
+ </Tab>
57
+ <Tab label="Kod" value="code">
58
+
59
+ <iframe
60
+ src="https://stackblitz.com/github/aymericzip/intlayer-tanstack-start-solid-template?embed=1&ctl=1&file=intlayer.config.ts"
61
+ className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
62
+ title="Demo CodeSandbox - Jak umiędzynarodowić swoją aplikację za pomocą Intlayer"
63
+ sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
64
+ loading="lazy"
65
+ />
66
+
67
+ </Tab>
68
+ </Tabs>
69
+
70
+ Zobacz [Szablon Aplikacji](https://github.com/aymericzip/intlayer-tanstack-start-solid-template) na GitHubie.
71
+
72
+ ### Krok 1: Utworzenie projektu
73
+
74
+ Najpierw utwórz nowy projekt TanStack Start, postępując zgodnie z przewodnikiem [Rozpoczęcie nowego projektu](https://tanstack.com/start/latest/docs/framework/solid/quick-start) na stronie TanStack Start.
75
+
76
+ ### Krok 2: Instalacja pakietów Intlayer
77
+
78
+ Zainstaluj niezbędne pakiety za pomocą preferowanego menedżera pakietów:
79
+
80
+ ```bash packageManager="npm"
81
+ npm install intlayer solid-intlayer
82
+ npm install vite-intlayer --save-dev
83
+ npx intlayer init
84
+ ```
85
+
86
+ ```bash packageManager="pnpm"
87
+ pnpm add intlayer solid-intlayer
88
+ pnpm add vite-intlayer --save-dev
89
+ pnpm intlayer init
90
+ ```
91
+
92
+ ```bash packageManager="yarn"
93
+ yarn add intlayer solid-intlayer
94
+ yarn add vite-intlayer --save-dev
95
+ yarn intlayer init
96
+ ```
97
+
98
+ ```bash packageManager="bun"
99
+ bun add intlayer solid-intlayer
100
+ bun add vite-intlayer --dev
101
+ bun x intlayer init
102
+ ```
103
+
104
+ - **intlayer**
105
+
106
+ Rdzeń pakietu, który dostarcza narzędzia internacjonalizacji do zarządzania konfiguracją, tłumaczeniami, [deklaracją treści](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/dictionary/content_file.md), transpilacją oraz [poleceniami CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/cli/index.md).
107
+
108
+ - **solid-intlayer**
109
+ Pakiet integrujący Intlayer z aplikacją Solid. Dostarcza dostawców kontekstu (context providers) i hooki do internacjonalizacji w Solid.
110
+
111
+ - **vite-intlayer**
112
+ Zawiera wtyczkę Vite do integracji Intlayer z [bundlerem Vite](https://vite.dev/guide/why.html#why-bundle-for-production), a także middleware do wykrywania preferowanego języka użytkownika, zarządzania ciasteczkami (cookies) i obsługi przekierowań adresów URL.
113
+
114
+ ### Krok 3: Konfiguracja Twojego projektu
115
+
116
+ Utwórz plik konfiguracyjny, aby ustawić języki Twojej aplikacji:
117
+
118
+ ```typescript fileName="intlayer.config.ts"
119
+ import type { IntlayerConfig } from "intlayer";
120
+
121
+ import { Locales } from "intlayer";
122
+
123
+ const config: IntlayerConfig = {
124
+ internationalization: {
125
+ defaultLocale: Locales.ENGLISH,
126
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
127
+ },
128
+ };
129
+
130
+ export default config;
131
+ ```
132
+
133
+ > Za pomocą tego pliku konfiguracyjnego możesz skonfigurować zlokalizowane adresy URL, przekierowania middleware, nazwy ciasteczek, lokalizację i rozszerzenie deklaracji treści, wyłączyć logi Intlayer w konsoli i wiele więcej. Pełną listę dostępnych parametrów znajdziesz w [dokumentacji konfiguracji](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/configuration.md).
134
+
135
+ ### Krok 4: Integracja Intlayer w konfiguracji Vite
136
+
137
+ Dodaj wtyczkę intlayer do swojej konfiguracji:
138
+
139
+ ```typescript fileName="vite.config.ts"
140
+ import { intlayer } from "vite-intlayer";
141
+ import { defineConfig } from "vite";
142
+ import { devtools } from "@tanstack/devtools-vite";
143
+ import viteTsConfigPaths from "vite-tsconfig-paths";
144
+ import { tanstackStart } from "@tanstack/solid-start/plugin/vite";
145
+ import solidPlugin from "vite-plugin-solid";
146
+
147
+ export default defineConfig({
148
+ plugins: [
149
+ devtools(),
150
+ viteTsConfigPaths({
151
+ projects: ["./tsconfig.json"],
152
+ }),
153
+ tanstackStart({
154
+ router: {
155
+ routeFileIgnorePattern:
156
+ ".content.(ts|tsx|js|mjs|cjs|jsx|json|jsonc|json5)$",
157
+ },
158
+ }),
159
+ solidPlugin({ ssr: true }),
160
+ intlayer(),
161
+ ],
162
+ });
163
+ ```
164
+
165
+ > Wtyczka `intlayer()` Vite jest używana do integracji Intlayer z Vite. Zapewnia ona budowanie plików deklaracji treści i monitoruje je w trybie deweloperskim. Definiuje ona zmienne środowiskowe Intlayer wewnątrz aplikacji Vite. Dodatkowo zapewnia aliasy w celu zmniejszenia narzutu wydajnościowego.
166
+
167
+ ### Krok 5: Utworzenie Root Layoutu
168
+
169
+ Skonfiguruj swój layout główny (root layout), aby obsługiwał internacjonalizację, używając `useMatches` do wykrywania bieżącego języka i ustawiając atrybuty `lang` oraz `dir` w tagu `html`.
170
+
171
+ ```tsx fileName="src/routes/__root.tsx"
172
+ import {
173
+ HeadContent,
174
+ Outlet,
175
+ Scripts,
176
+ createRootRouteWithContext,
177
+ useMatches,
178
+ } from "@tanstack/solid-router";
179
+ import { TanStackRouterDevtools } from "@tanstack/solid-router-devtools";
180
+ import { HydrationScript } from "solid-js/web";
181
+ import { Suspense } from "solid-js";
182
+ import { IntlayerProvider } from "solid-intlayer";
183
+ import { defaultLocale, getHTMLTextDir, type Locale } from "intlayer";
184
+
185
+ export const Route = createRootRouteWithContext()({
186
+ shellComponent: RootComponent,
187
+ });
188
+
189
+ type Params = {
190
+ locale: Locale;
191
+ };
192
+
193
+ function RootComponent() {
194
+ const matches = useMatches();
195
+
196
+ // Spróbuj znaleźć język w parametrach jakiegokolwiek aktywnego dopasowania
197
+ // Zakłada to, że używasz dynamicznego segmentu "/{-$locale}" w swoim drzewie tras
198
+ const locale =
199
+ (
200
+ matches().find((match) => match.routeId === "/{-$locale}/")
201
+ ?.params as Params
202
+ )?.locale ?? defaultLocale;
203
+
204
+ return (
205
+ <html dir={getHTMLTextDir(locale)} lang={locale}>
206
+ <head>
207
+ <HydrationScript />
208
+ </head>
209
+ <body>
210
+ <HeadContent />
211
+ <IntlayerProvider locale={locale}>
212
+ <Suspense>
213
+ <Outlet />
214
+ <TanStackRouterDevtools />
215
+ </Suspense>
216
+ </IntlayerProvider>
217
+ <Scripts />
218
+ </body>
219
+ </html>
220
+ );
221
+ }
222
+ ```
223
+
224
+ > [!NOTE]
225
+ > W plikach Solid, `useMatches` zwraca **signal** (reaktywny akcesor). Użyj `matches()` (z nawiasami), aby reaktywnie uzyskać dostęp do aktualnej wartości.
226
+
227
+ ### Krok 6: Utworzenie Layoutu Językowego (opcjonalnie)
228
+
229
+ Utwórz layout, który obsługuje prefiks językowy i wykonuje walidację. Ten layout zapewni, że przetwarzane będą tylko prawidłowe języki.
230
+
231
+ > Ten krok jest opcjonalny, jeśli nie potrzebujesz walidacji prefiksu języka na poziomie trasy.
232
+
233
+ ```tsx fileName="src/routes/{-$locale}/route.tsx"
234
+ import { createFileRoute, Outlet, redirect } from "@tanstack/solid-router";
235
+ import { validatePrefix } from "intlayer";
236
+
237
+ export const Route = createFileRoute("/{-$locale}")({
238
+ beforeLoad: ({ params }) => {
239
+ const localeParam = params.locale;
240
+
241
+ // Walidacja prefiksu języka
242
+ const { isValid, localePrefix } = validatePrefix(localeParam);
243
+
244
+ if (!isValid) {
245
+ throw redirect({
246
+ to: "/{-$locale}/404",
247
+ params: { locale: localePrefix },
248
+ replace: true,
249
+ });
250
+ }
251
+ },
252
+ component: Outlet,
253
+ });
254
+ ```
255
+
256
+ > Tutaj `{-$locale}` jest dynamicznym parametrem trasy, który jest zastępowany przez aktualny język. Ta notacja sprawia, że slot jest opcjonalny, co pozwala na współpracę z trybami routingu takimi jak `'prefix-no-default'` itp.
257
+
258
+ > Bądź świadomy, że ten slot może powodować problemy, jeśli używasz wielu dynamicznych segmentów w tej samej trasie (np.: `/{-$locale}/other-path/$anotherDynamicPath/...`).
259
+ > Dla trybu `'prefix-all'` możesz preferować zamianę slotu na `$locale`.
260
+ > Dla trybu `'no-prefix'` lub `'search-params'` możesz całkowicie usunąć ten slot.
261
+
262
+ ### Krok 7: Zadeklaruj swoją treść
263
+
264
+ Twórz i zarządzaj swoimi deklaracjami treści, aby przechowywać tłumaczenia:
265
+
266
+ ```tsx fileName="src/contents/page.content.ts"
267
+ import type { Dictionary } from "intlayer";
268
+
269
+ import { t } from "intlayer";
270
+
271
+ const appContent = {
272
+ content: {
273
+ links: {
274
+ about: t({
275
+ en: "About",
276
+ es: "Acerca de",
277
+ fr: "À propos",
278
+ }),
279
+ home: t({
280
+ en: "Home",
281
+ es: "Inicio",
282
+ fr: "Accueil",
283
+ }),
284
+ },
285
+ meta: {
286
+ title: t({
287
+ en: "Welcome to Intlayer + TanStack Router",
288
+ es: "Bienvenido a Intlayer + TanStack Router",
289
+ fr: "Bienvenue à Intlayer + TanStack Router",
290
+ }),
291
+ description: t({
292
+ en: "This is an example of using Intlayer with TanStack Router",
293
+ es: "Este es un ejemplo de uso de Intlayer con TanStack Router",
294
+ fr: "Ceci est un exemple d'utilisation d'Intlayer avec TanStack Router",
295
+ }),
296
+ },
297
+ },
298
+ key: "app",
299
+ } satisfies Dictionary;
300
+
301
+ export default appContent;
302
+ ```
303
+
304
+ > Twoje deklaracje treści mogą być definiowane w dowolnym miejscu w aplikacji, pod warunkiem, że znajdują się w katalogu `contentDir` (domyślnie `./app`) i pasują do rozszerzenia pliku deklaracji treści (domyślnie `.content.{json,ts,tsx,js,jsx,mjs,cjs}`).
305
+
306
+ > Więcej szczegółów znajdziesz w [dokumentacji deklaracji treści](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/dictionary/content_file.md).
307
+
308
+ ### Krok 8: Wykorzystaj komponenty i hooki uwzględniające lokalizację
309
+
310
+ Utwórz komponent `LocalizedLink` do nawigacji uwzględniającej język:
311
+
312
+ ```tsx fileName="src/components/LocalizedLink.tsx"
313
+ import { Link, type LinkProps } from "@tanstack/solid-router";
314
+ import { getPrefix } from "intlayer";
315
+ import { useLocale } from "solid-intlayer";
316
+ import type { JSX } from "solid-js";
317
+
318
+ export const LOCALE_ROUTE = "{-$locale}" as const;
319
+
320
+ export type RemoveLocaleParam<TVal> = TVal extends string
321
+ ? RemoveLocaleFromString<TVal>
322
+ : TVal;
323
+
324
+ export type To = RemoveLocaleParam<LinkProps["to"]>;
325
+
326
+ type CollapseDoubleSlashes<TString extends string> =
327
+ TString extends `${infer THead}//${infer TTail}`
328
+ ? CollapseDoubleSlashes<`${THead}/${TTail}`>
329
+ : TString;
330
+
331
+ export type LocalizedLinkProps = Omit<LinkProps, "to"> & {
332
+ to?: To;
333
+ } & JSX.AnchorHTMLAttributes<HTMLAnchorElement>;
334
+
335
+ type RemoveAll<
336
+ TString extends string,
337
+ TSub extends string,
338
+ > = TString extends `${infer THead}${TSub}${infer TTail}`
339
+ ? RemoveAll<`${THead}${TTail}`, TSub>
340
+ : TString;
341
+
342
+ type RemoveLocaleFromString<TString extends string> = CollapseDoubleSlashes<
343
+ RemoveAll<TString, typeof LOCALE_ROUTE>
344
+ >;
345
+
346
+ export const LocalizedLink = (props: LocalizedLinkProps) => {
347
+ const { locale } = useLocale();
348
+
349
+ return (
350
+ <Link
351
+ {...props}
352
+ params={{
353
+ locale: getPrefix(locale()).localePrefix,
354
+ ...(typeof props.params === "object" ? props.params : {}),
355
+ }}
356
+ to={`/${LOCALE_ROUTE}${props.to ?? ""}` as LinkProps["to"]}
357
+ />
358
+ );
359
+ };
360
+ ```
361
+
362
+ Ten komponent służy dwóm celom:
363
+
364
+ - Usuwaniu niepotrzebnego prefiksu `{-$locale}` z adresu URL.
365
+ - Wstrzykiwaniu parametru lokalizacji do adresu URL, aby upewnić się, że użytkownik zostanie bezpośrednio przekierowany na zlokalizowaną trasę.
366
+
367
+ Następnie możemy utworzyć hook `useLocalizedNavigate` do nawigacji programowej:
368
+
369
+ ```tsx fileName="src/hooks/useLocalizedNavigate.tsx"
370
+ import { useNavigate } from "@tanstack/solid-router";
371
+ import { getLocalizedUrl } from "intlayer";
372
+ import { useLocale } from "solid-intlayer";
373
+
374
+ export const useLocalizedNavigate = () => {
375
+ const navigate = useNavigate();
376
+ const { locale } = useLocale();
377
+
378
+ const localizedNavigate = (to: string) => {
379
+ const localizedTo = getLocalizedUrl(to, locale());
380
+ return navigate({ to: localizedTo });
381
+ };
382
+
383
+ return localizedNavigate;
384
+ };
385
+ ```
386
+
387
+ ### Krok 9: Użyj Intlayer na swoich stronach
388
+
389
+ Zyskaj dostęp do słowników treści w całej aplikacji:
390
+
391
+ #### Zlokalizowana Strona Główna
392
+
393
+ ```tsx fileName="src/routes/{-$locale}/index.tsx"
394
+ import { createFileRoute } from "@tanstack/solid-router";
395
+ import { useIntlayer } from "solid-intlayer";
396
+ import { LocalizedLink } from "@/components/LocalizedLink";
397
+
398
+ export const Route = createFileRoute("/{-$locale}/")({
399
+ component: RouteComponent,
400
+ });
401
+
402
+ function RouteComponent() {
403
+ const content = useIntlayer("index-page");
404
+
405
+ return (
406
+ <main>
407
+ <h1>{content().heroTitle}</h1>
408
+ <p>{content().heroDesc}</p>
409
+ <div>
410
+ <LocalizedLink to="/">{content().navHome}</LocalizedLink>
411
+ <LocalizedLink to="/about">{content().navAbout}</LocalizedLink>
412
+ </div>
413
+ </main>
414
+ );
415
+ }
416
+ ```
417
+
418
+ > [!NOTE]
419
+ > W Solidzie, `useIntlayer` zwraca funkcję **accessor** (np.: `content()`). Musisz wywołać tę funkcję, aby uzyskać dostęp do reaktywnej treści.
420
+ >
421
+ > Aby dowiedzieć się więcej o hooku `useIntlayer`, zapoznaj się z [dokumentacją](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/packages/solid-intlayer/useIntlayer.md).
422
+
423
+ ### Krok 10: Utworzenie komponentu Locale Switcher
424
+
425
+ Utwórz komponent pozwalający użytkownikom na zmianę języka:
426
+
427
+ ```tsx fileName="src/components/LocaleSwitcher.tsx"
428
+ import { useLocation } from "@tanstack/solid-router";
429
+ import { getLocaleName, getPathWithoutLocale, getPrefix } from "intlayer";
430
+ import { For } from "solid-js";
431
+ import { useIntlayer, useLocale } from "solid-intlayer";
432
+ import { LocalizedLink, type To } from "./LocalizedLink";
433
+
434
+ export const LocaleSwitcher = () => {
435
+ const content = useIntlayer("locale-switcher");
436
+ const location = useLocation();
437
+
438
+ const { availableLocales, locale, setLocale } = useLocale();
439
+
440
+ const pathWithoutLocale = () => getPathWithoutLocale(location().pathname);
441
+
442
+ return (
443
+ <div class="flex flex-row gap-2">
444
+ <For each={availableLocales}>
445
+ {(localeEl) => (
446
+ <LocalizedLink
447
+ aria-current={localeEl === locale() ? "page" : undefined}
448
+ onClick={() => setLocale(localeEl)}
449
+ params={{ locale: getPrefix(localeEl).localePrefix }}
450
+ to={pathWithoutLocale() as To}
451
+ >
452
+ {getLocaleName(localeEl)}
453
+ </LocalizedLink>
454
+ )}
455
+ </For>
456
+ </div>
457
+ );
458
+ };
459
+
460
+ export default LocaleSwitcher;
461
+ ```
462
+
463
+ > [!NOTE]
464
+ > W plikach Solid, `locale` z `useLocale` to **signal accessor**. Użyj `locale()` (z nawiasami), aby reaktywnie odczytać jego aktualną wartość.
465
+ >
466
+ > Aby dowiedzieć się więcej o hooku `useLocale`, zapoznaj się z [dokumentacją](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/packages/solid-intlayer/useLocale.md).
467
+
468
+ ### Krok 11: Zarządzanie atrybutami HTML
469
+
470
+ Jak pokazano w Kroku 5, możesz zarządzać atrybutami `lang` oraz `dir` tagu `html` za pomocą `useMatches` w swoim głównym komponencie (root component). Dzięki temu prawidłowe atrybuty zostaną ustawione zarówno na serwerze, jak i na kliencie.
471
+
472
+ ```tsx fileName="src/routes/__root.tsx"
473
+ const RootComponent: ParentComponent = (props) => {
474
+ const matches = useMatches();
475
+
476
+ // Spróbuj znaleźć język w parametrach jakiegokolwiek aktywnego dopasowania
477
+ const locale =
478
+ (
479
+ matches().find((match) => match.routeId === "/{-$locale}/")
480
+ ?.params as Params
481
+ )?.locale ?? defaultLocale;
482
+
483
+ return (
484
+ <html dir={getHTMLTextDir(locale)} lang={locale}>
485
+ {/* ... */}
486
+ </html>
487
+ );
488
+ };
489
+ ```
490
+
491
+ ---
492
+
493
+ ### Krok 12: Dodaj Middleware (opcjonalnie)
494
+
495
+ Możesz również użyć `intlayerProxy`, aby dodać routing po stronie serwera do swojej aplikacji. Ten plugin automatycznie wykryje aktualny język na podstawie adresu URL i ustawi odpowiednie ciasteczko (cookie) języka. Jeśli nie określono języka, plugin określi najbardziej odpowiedni na podstawie preferencji językowych przeglądarki użytkownika. Jeśli nie zostanie wykryty żaden język, nastąpi przekierowanie do domyślnego języka.
496
+
497
+ > Zauważ, że aby korzystać z `intlayerProxy` w środowisku produkcyjnym, musisz przenieść pakiet `vite-intlayer` z `devDependencies` do `dependencies`.
498
+
499
+ ```typescript {7,14-17} fileName="vite.config.ts"
500
+ import { tanstackStart } from "@tanstack/solid-start/plugin/vite";
501
+ import solid from "vite-plugin-solid";
502
+ import { nitro } from "nitro/vite";
503
+ import { defineConfig } from "vite";
504
+ import { intlayer, intlayerProxy } from "vite-intlayer";
505
+ import viteTsConfigPaths from "vite-tsconfig-paths";
506
+
507
+ export default defineConfig({
508
+ plugins: [
509
+ intlayerProxy(), // Proxy powinno być umieszczone przed serwerem, jeśli używasz Nitro
510
+ nitro(),
511
+ viteTsConfigPaths({
512
+ projects: ["./tsconfig.json"],
513
+ }),
514
+ intlayer(),
515
+ tanstackStart({
516
+ router: {
517
+ routeFileIgnorePattern:
518
+ ".content.(ts|tsx|js|mjs|cjs|jsx|json|jsonc|json5)$",
519
+ },
520
+ }),
521
+ solid(),
522
+ ],
523
+ });
524
+ ```
525
+
526
+ ---
527
+
528
+ ### Krok 13: Umiędzynarowienie metadanych (opcjonalnie)
529
+
530
+ Możesz również użyć funkcji `getIntlayer`, aby uzyskać dostęp do swoich słowników treści wewnątrz loadera `head` w celu uzyskania metadanych uwzględniających lokalizację:
531
+
532
+ ```tsx fileName="src/routes/{-$locale}/index.tsx"
533
+ import { createFileRoute } from "@tanstack/solid-router";
534
+ import { getIntlayer } from "intlayer";
535
+
536
+ export const Route = createFileRoute("/{-$locale}/")({
537
+ component: RouteComponent,
538
+ head: ({ params }) => {
539
+ const { locale } = params;
540
+ const metaContent = getIntlayer("page-metadata", locale);
541
+
542
+ return {
543
+ meta: [
544
+ { title: metaContent.title },
545
+ { content: metaContent.description, name: "description" },
546
+ ],
547
+ };
548
+ },
549
+ });
550
+ ```
551
+
552
+ ---
553
+
554
+ ### Krok 14: Pobieranie języka w akcjach serwera (opcjonalnie)
555
+
556
+ Możesz chcieć uzyskać dostęp do bieżącego języka wewnątrz akcji serwera (server actions) lub punktów końcowych API.
557
+ Możesz to zrobić, używając pomocnika `getLocale` z `intlayer`.
558
+
559
+ Oto przykład użycia funkcji serwerowych TanStack Start:
560
+
561
+ ```tsx fileName="src/routes/{-$locale}/index.tsx"
562
+ import { createServerFn } from "@tanstack/solid-start";
563
+ import {
564
+ getRequestHeader,
565
+ getRequestHeaders,
566
+ } from "@tanstack/solid-start/server";
567
+ import { getCookie, getIntlayer, getLocale } from "intlayer";
568
+
569
+ export const getLocaleServer = createServerFn().handler(async () => {
570
+ const locale = await getLocale({
571
+ // Pobierz ciasteczko z żądania (domyślnie: 'INTLAYER_LOCALE')
572
+ getCookie: (name) => {
573
+ const cookieString = getRequestHeader("cookie");
574
+
575
+ return getCookie(name, cookieString);
576
+ },
577
+ // Pobierz nagłówek z żądania (domyślnie: 'x-intlayer-locale')
578
+ // Fallback przy użyciu negocjacji Accept-Language
579
+ getHeader: (name) => getRequestHeader(name),
580
+ });
581
+
582
+ // Pobierz jakąś treść za pomocą getIntlayer()
583
+ const content = getIntlayer("app", locale);
584
+
585
+ return { locale, content };
586
+ });
587
+ ```
588
+
589
+ ---
590
+
591
+ ### Krok 15: Zarządzanie stronami "nie znaleziono" (404) (opcjonalnie)
592
+
593
+ Gdy użytkownik odwiedzi nieistniejącą stronę, możesz wyświetlić niestandardową stronę 404, a prefiks językowy może wpływać na sposób wyzwalania strony 404.
594
+
595
+ #### Zrozumienie obsługi 404 w TanStack Router z prefiksami językowymi
596
+
597
+ W TanStack Router obsługa stron 404 ze zlokalizowanymi trasami wymaga podejścia wielowarstwowego:
598
+
599
+ 1. **Dedykowana trasa 404**: Specyficzna trasa do wyświetlania interfejsu 404
600
+ 2. **Walidacja na poziomie trasy**: Sprawdza prefiksy języka i przekierowuje nieprawidłowe na stronę 404
601
+ 3. **Trasa catch-all**: Przechwytuje wszystkie niepasujące ścieżki wewnątrz segmentu językowego
602
+
603
+ ```tsx fileName="src/routes/{-$locale}/404.tsx"
604
+ import { createFileRoute } from "@tanstack/solid-router";
605
+
606
+ // To tworzy dedykowaną trasę /[locale]/404
607
+ // Jest używana zarówno jako bezpośrednia trasa, jak i importowana jako komponent w innych plikach
608
+ export const Route = createFileRoute("/{-$locale}/404")({
609
+ component: NotFoundComponent,
610
+ });
611
+
612
+ // Wyeksportowane oddzielnie, aby można było użyć ponownie w notFoundComponent i trasach catch-all
613
+ export function NotFoundComponent() {
614
+ return (
615
+ <div>
616
+ <h1>404</h1>
617
+ </div>
618
+ );
619
+ }
620
+ ```
621
+
622
+ ```tsx fileName="src/routes/{-$locale}/route.tsx"
623
+ import { createFileRoute, Outlet, redirect } from "@tanstack/solid-router";
624
+ import { validatePrefix } from "intlayer";
625
+ import { NotFoundComponent } from "./404";
626
+
627
+ export const Route = createFileRoute("/{-$locale}")({
628
+ // beforeLoad działa przed wyrenderowaniem trasy (zarówno serwer, jak i klient)
629
+ // To idealne miejsce na walidację prefiksu języka
630
+ beforeLoad: ({ params }) => {
631
+ const localeParam = params.locale;
632
+
633
+ // validatePrefix sprawdza, czy język jest prawidłowy zgodnie z Twoją konfiguracją intlayer
634
+ const { isValid, localePrefix } = validatePrefix(localeParam);
635
+
636
+ if (!isValid) {
637
+ // Nieprawidłowy prefiks języka - przekieruj na stronę 404 z prawidłowym prefiksem
638
+ throw redirect({
639
+ to: "/{-$locale}/404",
640
+ params: { locale: localePrefix },
641
+ });
642
+ }
643
+ },
644
+ component: Outlet,
645
+ // notFoundComponent jest wywoływany, gdy trasa podrzędna nie istnieje
646
+ // np.: /en/non-existent-page wyzwala to wewnątrz układu /en
647
+ notFoundComponent: NotFoundComponent,
648
+ });
649
+ ```
650
+
651
+ ```tsx fileName="src/routes/{-$locale}/$.tsx"
652
+ import { createFileRoute } from "@tanstack/solid-router";
653
+
654
+ import { NotFoundComponent } from "./404";
655
+
656
+ // Trasa $ (splat/catch-all) pasuje do każdej ścieżki, która nie pasuje do innych tras
657
+ // np.: /en/some/deeply/nested/invalid/path
658
+ // Zapewnia to, że WSZYSTKIE niepasujące ścieżki wewnątrz języka pokażą stronę 404
659
+ // Bez tego głębokie niepasujące ścieżki mogłyby pokazać pustą stronę lub błąd
660
+ export const Route = createFileRoute("/{-$locale}/$")({
661
+ component: NotFoundComponent,
662
+ });
663
+ ```
664
+
665
+ ### (Opcjonalnie) Krok 16: Wyodrębnij treść ze swoich komponentów
666
+
667
+ Jeśli masz istniejącą bazę kodu, transformacja tysięcy plików może być czasochłonna.
668
+
669
+ Aby ułatwić ten proces, Intlayer proponuje [kompilator](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/compiler.md) / [ekstraktor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/cli/extract.md) do transformacji komponentów i wyodrębnienia treści.
670
+
671
+ Aby go skonfigurować, możesz dodać sekcję `compiler` w pliku `intlayer.config.ts`:
672
+
673
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
674
+ import { type IntlayerConfig } from "intlayer";
675
+
676
+ const config: IntlayerConfig = {
677
+ // ... Reszta Twojej konfiguracji
678
+ compiler: {
679
+ /**
680
+ * Wskazuje, czy kompilator powinien być włączony.
681
+ */
682
+ enabled: true,
683
+
684
+ /**
685
+ * Definiuje ścieżkę plików wyjściowych
686
+ */
687
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
688
+
689
+ /**
690
+ * Wskazuje, czy komponenty powinny zostać zapisane po transformacji.
691
+ *
692
+ * - Jeśli `true`, kompilator nadpisze plik komponentu na dysku. W ten sposób transformacja będzie trwała, a kompilator pominie transformację przy następnym procesie. W ten sposób kompilator może przetransformować aplikację, a następnie można go usunąć.
693
+ *
694
+ * - Jeśli `false`, kompilator wstrzyknie wywołanie funkcji `useIntlayer()` do kodu tylko w danych wyjściowych buildu, zachowując bazową bazę kodu nienaruszoną. Transformacja zostanie wykonana tylko w pamięci.
695
+ */
696
+ saveComponents: false,
697
+
698
+ /**
699
+ * Prefiks klucza słownika
700
+ */
701
+ dictionaryKeyPrefix: "",
702
+ },
703
+ };
704
+
705
+ export default config;
706
+ ```
707
+
708
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
709
+ /** @type {import('intlayer').IntlayerConfig} */
710
+ const config = {
711
+ // ... Reszta Twojej konfiguracji
712
+ compiler: {
713
+ /**
714
+ * Wskazuje, czy kompilator powinien być włączony.
715
+ */
716
+ enabled: true,
717
+
718
+ /**
719
+ * Definiuje ścieżkę plików wyjściowych
720
+ */
721
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
722
+
723
+ /**
724
+ * Wskazuje, czy komponenty powinny zostać zapisane po transformacji.
725
+ *
726
+ * - Jeśli `true`, kompilator nadpisze plik komponentu na dysku. W ten sposób transformacja będzie trwała, a kompilator pominie transformację przy następnym procesie. W ten sposób kompilator może przetransformować aplikację, a następnie można go usunąć.
727
+ *
728
+ * - Jeśli `false`, kompilator wstrzyknie wywołanie funkcji `useIntlayer()` do kodu tylko w danych wyjściowych buildu, zachowując bazową bazę kodu nienaruszoną. Transformacja zostanie wykonana tylko w pamięci.
729
+ */
730
+ saveComponents: false,
731
+
732
+ /**
733
+ * Prefiks klucza słownika
734
+ */
735
+ dictionaryKeyPrefix: "",
736
+ },
737
+ };
738
+
739
+ export default config;
740
+ ```
741
+
742
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
743
+ /** @type {import('intlayer').IntlayerConfig} */
744
+ const config = {
745
+ // ... Reszta Twojej konfiguracji
746
+ compiler: {
747
+ /**
748
+ * Wskazuje, czy kompilator powinien być włączony.
749
+ */
750
+ enabled: true,
751
+
752
+ /**
753
+ * Definiuje ścieżkę plików wyjściowych
754
+ */
755
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
756
+
757
+ /**
758
+ * Wskazuje, czy komponenty powinny zostać zapisane po transformacji.
759
+ *
760
+ * - Jeśli `true`, kompilator nadpisze plik komponentu na dysku. W ten sposób transformacja będzie trwała, a kompilator pominie transformację przy następnym procesie. W ten sposób kompilator może przetransformować aplikację, a następnie można go usunąć.
761
+ *
762
+ * - Jeśli `false`, kompilator wstrzyknie wywołanie funkcji `useIntlayer()` do kodu tylko w danych wyjściowych buildu, zachowując bazową bazę kodu nienaruszoną. Transformacja zostanie wykonana tylko w pamięci.
763
+ */
764
+ saveComponents: false,
765
+
766
+ /**
767
+ * Prefiks klucza słownika
768
+ */
769
+ dictionaryKeyPrefix: "",
770
+ },
771
+ };
772
+
773
+ module.exports = config;
774
+ ```
775
+
776
+ <Tabs>
777
+ <Tab value='Polecenie extract'>
778
+
779
+ Uruchom ekstraktor, aby przetransformować swoje komponenty i wyodrębnić treść
780
+
781
+ ```bash packageManager="npm"
782
+ npx intlayer extract
783
+ ```
784
+
785
+ ```bash packageManager="pnpm"
786
+ pnpm intlayer extract
787
+ ```
788
+
789
+ ```bash packageManager="yarn"
790
+ yarn intlayer extract
791
+ ```
792
+
793
+ ```bash packageManager="bun"
794
+ bun x intlayer extract
795
+ ```
796
+
797
+ </Tab>
798
+ <Tab value='Kompilator Babel'>
799
+
800
+ Zaktualizuj swoje `vite.config.ts`, aby dołączyć wtyczkę `intlayerCompiler`:
801
+
802
+ ```ts fileName="vite.config.ts"
803
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
804
+ import { defineConfig } from "vite";
805
+ import { devtools } from "@tanstack/devtools-vite";
806
+ import viteTsConfigPaths from "vite-tsconfig-paths";
807
+ import { tanstackStart } from "@tanstack/solid-start/plugin/vite";
808
+ import solidPlugin from "vite-plugin-solid";
809
+
810
+ export default defineConfig({
811
+ plugins: [
812
+ devtools(),
813
+ viteTsConfigPaths({
814
+ projects: ["./tsconfig.json"],
815
+ }),
816
+ tanstackStart({
817
+ router: {
818
+ routeFileIgnorePattern:
819
+ ".content.(ts|tsx|js|mjs|cjs|jsx|json|jsonc|json5)$",
820
+ },
821
+ }),
822
+ solidPlugin({ ssr: true }),
823
+ intlayer(),
824
+ intlayerCompiler(),
825
+ ],
826
+ });
827
+ ```
828
+
829
+ ```bash packageManager="npm"
830
+ npm run build # Lub npm run dev
831
+ ```
832
+
833
+ ```bash packageManager="pnpm"
834
+ pnpm run build # Lub pnpm run dev
835
+ ```
836
+
837
+ ```bash packageManager="yarn"
838
+ yarn build # Lub yarn dev
839
+ ```
840
+
841
+ ```bash packageManager="bun"
842
+ bun run build # Lub bun run dev
843
+ ```
844
+
845
+ </Tab>
846
+ </Tabs>
847
+
848
+ ---
849
+
850
+ ### Krok 17: Skonfiguruj TypeScript (opcjonalnie)
851
+
852
+ Intlayer używa rozszerzania modułów (module augmentation), aby czerpać korzyści z TypeScript i wzmocnić Twoją bazę kodu.
853
+
854
+ Upewnij się, że Twoja konfiguracja TypeScript zawiera automatycznie generowane typy:
855
+
856
+ ```json5 fileName="tsconfig.json"
857
+ {
858
+ // ... Twoje istniejące ustawienia
859
+ include: [
860
+ // ... Twoje istniejące inkluzje
861
+ ".intlayer/**/*.ts", // Uwzględnij automatycznie generowane typy
862
+ ],
863
+ }
864
+ ```
865
+
866
+ ---
867
+
868
+ ### Konfiguracja Git
869
+
870
+ Zaleca się ignorowanie plików generowanych przez Intlayer. Pozwala to uniknąć zakomitowania ich do repozytorium Git.
871
+
872
+ Aby to zrobić, możesz dodać następujące instrukcje do pliku `.gitignore`:
873
+
874
+ ```plaintext fileName=".gitignore"
875
+ # Ignoruj pliki generowane przez Intlayer
876
+ .intlayer
877
+ ```
878
+
879
+ ---
880
+
881
+ ## Rozszerzenie VS Code
882
+
883
+ Aby poprawić swoje doświadczenia deweloperskie z Intlayer, możesz zainstalować oficjalne **rozszerzenie Intlayer VS Code**.
884
+
885
+ [Zainstaluj z VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
886
+
887
+ To rozszerzenie oferuje:
888
+
889
+ - **Autouzupełnianie** kluczy tłumaczeń.
890
+ - **Wykrywanie błędów w czasie rzeczywistym** dla brakujących tłumaczeń.
891
+ - **Podgląd wewnątrz linii (inline previews)** przetłumaczonej treści.
892
+ - **Szybkie akcje** do łatwego tworzenia i aktualizowania tłumaczeń.
893
+
894
+ Więcej szczegółów na temat korzystania z rozszerzenia znajdziesz w [dokumentacji rozszerzenia Intlayer VS Code](https://intlayer.org/doc/vs-code-extension).
895
+
896
+ ---
897
+
898
+ ## Idąc dalej
899
+
900
+ Aby pójść dalej, możesz zaimplementować [edytor wizualny](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/intlayer_visual_editor.md) lub wyeksportować swoją treść za pomocą [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/intlayer_CMS.md).
901
+
902
+ ---
903
+
904
+ ## Odniesienia do dokumentacji
905
+
906
+ - [Dokumentacja Intlayer](https://intlayer.org)
907
+ - [Dokumentacja Tanstack Start](https://tanstack.com/start/latest)
908
+ - [Hook useIntlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/packages/solid-intlayer/useIntlayer.md)
909
+ - [Hook useLocale](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/packages/solid-intlayer/useLocale.md)
910
+ - [Deklaracja Treści](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/dictionary/content_file.md)
911
+ - [Konfiguracja](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pl/configuration.md)