@intlayer/docs 8.7.11 → 8.7.13

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 (556) hide show
  1. package/README.md +27 -1
  2. package/blog/ar/intlayer_with_i18next.md +1 -1
  3. package/blog/ar/intlayer_with_next-i18next.md +1 -1
  4. package/blog/ar/intlayer_with_next-intl.md +1 -1
  5. package/blog/ar/intlayer_with_react-i18next.md +1 -1
  6. package/blog/ar/intlayer_with_react-intl.md +1 -1
  7. package/blog/ar/intlayer_with_vue-i18n.md +1 -1
  8. package/blog/de/intlayer_with_i18next.md +1 -1
  9. package/blog/de/intlayer_with_next-i18next.md +1 -1
  10. package/blog/de/intlayer_with_next-intl.md +1 -1
  11. package/blog/de/intlayer_with_react-i18next.md +1 -1
  12. package/blog/de/intlayer_with_react-intl.md +1 -1
  13. package/blog/de/intlayer_with_vue-i18n.md +1 -1
  14. package/blog/en/intlayer_with_i18next.md +1 -1
  15. package/blog/en/intlayer_with_next-i18next.md +1 -1
  16. package/blog/en/intlayer_with_next-intl.md +1 -1
  17. package/blog/en/intlayer_with_react-i18next.md +1 -1
  18. package/blog/en/intlayer_with_react-intl.md +1 -1
  19. package/blog/en/intlayer_with_vue-i18n.md +1 -1
  20. package/blog/en-GB/intlayer_with_i18next.md +1 -1
  21. package/blog/en-GB/intlayer_with_next-i18next.md +1 -1
  22. package/blog/en-GB/intlayer_with_next-intl.md +1 -1
  23. package/blog/en-GB/intlayer_with_react-i18next.md +1 -1
  24. package/blog/en-GB/intlayer_with_react-intl.md +1 -1
  25. package/blog/en-GB/intlayer_with_vue-i18n.md +1 -1
  26. package/blog/es/intlayer_with_i18next.md +1 -1
  27. package/blog/es/intlayer_with_next-i18next.md +1 -1
  28. package/blog/es/intlayer_with_next-intl.md +1 -1
  29. package/blog/es/intlayer_with_react-i18next.md +1 -1
  30. package/blog/es/intlayer_with_react-intl.md +1 -1
  31. package/blog/es/intlayer_with_vue-i18n.md +1 -1
  32. package/blog/fr/intlayer_with_i18next.md +1 -1
  33. package/blog/fr/intlayer_with_next-i18next.md +1 -1
  34. package/blog/fr/intlayer_with_next-intl.md +1 -1
  35. package/blog/fr/intlayer_with_react-i18next.md +1 -1
  36. package/blog/fr/intlayer_with_react-intl.md +1 -1
  37. package/blog/fr/intlayer_with_vue-i18n.md +1 -1
  38. package/blog/hi/intlayer_with_i18next.md +1 -1
  39. package/blog/hi/intlayer_with_next-i18next.md +1 -1
  40. package/blog/hi/intlayer_with_next-intl.md +1 -1
  41. package/blog/hi/intlayer_with_react-i18next.md +1 -1
  42. package/blog/hi/intlayer_with_react-intl.md +1 -1
  43. package/blog/hi/intlayer_with_vue-i18n.md +1 -1
  44. package/blog/id/intlayer_with_i18next.md +1 -1
  45. package/blog/id/intlayer_with_next-i18next.md +1 -1
  46. package/blog/id/intlayer_with_next-intl.md +1 -1
  47. package/blog/id/intlayer_with_react-i18next.md +1 -1
  48. package/blog/id/intlayer_with_react-intl.md +1 -1
  49. package/blog/id/intlayer_with_vue-i18n.md +1 -1
  50. package/blog/it/intlayer_with_i18next.md +1 -1
  51. package/blog/it/intlayer_with_next-i18next.md +1 -1
  52. package/blog/it/intlayer_with_next-intl.md +1 -1
  53. package/blog/it/intlayer_with_react-i18next.md +1 -1
  54. package/blog/it/intlayer_with_react-intl.md +1 -1
  55. package/blog/it/intlayer_with_vue-i18n.md +1 -1
  56. package/blog/ja/intlayer_with_i18next.md +1 -1
  57. package/blog/ja/intlayer_with_next-i18next.md +1 -1
  58. package/blog/ja/intlayer_with_next-intl.md +1 -1
  59. package/blog/ja/intlayer_with_react-i18next.md +1 -1
  60. package/blog/ja/intlayer_with_react-intl.md +1 -1
  61. package/blog/ja/intlayer_with_vue-i18n.md +1 -1
  62. package/blog/ko/intlayer_with_i18next.md +1 -1
  63. package/blog/ko/intlayer_with_next-i18next.md +1 -1
  64. package/blog/ko/intlayer_with_next-intl.md +1 -1
  65. package/blog/ko/intlayer_with_react-i18next.md +1 -1
  66. package/blog/ko/intlayer_with_react-intl.md +1 -1
  67. package/blog/ko/intlayer_with_vue-i18n.md +1 -1
  68. package/blog/pl/intlayer_with_i18next.md +1 -1
  69. package/blog/pl/intlayer_with_next-i18next.md +1 -1
  70. package/blog/pl/intlayer_with_next-intl.md +1 -1
  71. package/blog/pl/intlayer_with_react-i18next.md +1 -1
  72. package/blog/pl/intlayer_with_react-intl.md +1 -1
  73. package/blog/pl/intlayer_with_vue-i18n.md +1 -1
  74. package/blog/pt/intlayer_with_i18next.md +1 -1
  75. package/blog/pt/intlayer_with_next-i18next.md +1 -1
  76. package/blog/pt/intlayer_with_next-intl.md +1 -1
  77. package/blog/pt/intlayer_with_react-i18next.md +1 -1
  78. package/blog/pt/intlayer_with_react-intl.md +1 -1
  79. package/blog/pt/intlayer_with_vue-i18n.md +1 -1
  80. package/blog/ru/intlayer_with_i18next.md +1 -1
  81. package/blog/ru/intlayer_with_next-i18next.md +1 -1
  82. package/blog/ru/intlayer_with_next-intl.md +1 -1
  83. package/blog/ru/intlayer_with_react-i18next.md +1 -1
  84. package/blog/ru/intlayer_with_react-intl.md +1 -1
  85. package/blog/ru/intlayer_with_vue-i18n.md +1 -1
  86. package/blog/tr/intlayer_with_i18next.md +1 -1
  87. package/blog/tr/intlayer_with_next-i18next.md +1 -1
  88. package/blog/tr/intlayer_with_next-intl.md +1 -1
  89. package/blog/tr/intlayer_with_react-i18next.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 +60 -0
  110. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  111. package/dist/esm/generated/docs.entry.mjs +60 -0
  112. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  113. package/dist/types/generated/docs.entry.d.ts +3 -0
  114. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  115. package/docs/ar/benchmark/index.md +8 -2
  116. package/docs/ar/benchmark/tanstack.md +1 -1
  117. package/docs/ar/dictionary/content_file.md +1 -1
  118. package/docs/ar/intlayer_CMS.md +1 -1
  119. package/docs/ar/intlayer_visual_editor.md +1 -1
  120. package/docs/ar/intlayer_with_astro_lit.md +1 -0
  121. package/docs/ar/intlayer_with_astro_preact.md +1 -0
  122. package/docs/ar/intlayer_with_astro_react.md +1 -0
  123. package/docs/ar/intlayer_with_astro_solid.md +1 -0
  124. package/docs/ar/intlayer_with_astro_svelte.md +1 -0
  125. package/docs/ar/intlayer_with_astro_vue.md +1 -0
  126. package/docs/ar/intlayer_with_nextjs_15.md +2 -2
  127. package/docs/ar/intlayer_with_nextjs_16.md +1 -1
  128. package/docs/ar/intlayer_with_nextjs_compiler.md +1 -1
  129. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1 -1
  130. package/docs/ar/intlayer_with_nuxt.md +1 -1
  131. package/docs/ar/intlayer_with_react_router_v7.md +1 -1
  132. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +1 -1
  133. package/docs/ar/intlayer_with_tanstack+solid.md +1 -1
  134. package/docs/ar/intlayer_with_tanstack.md +1 -1
  135. package/docs/ar/intlayer_with_vite+vue.md +1 -1
  136. package/docs/ar/plugins/sync-json.md +1 -1
  137. package/docs/ar/readme.md +27 -1
  138. package/docs/de/benchmark/index.md +8 -2
  139. package/docs/de/benchmark/tanstack.md +1 -1
  140. package/docs/de/dictionary/content_file.md +1 -1
  141. package/docs/de/intlayer_CMS.md +1 -1
  142. package/docs/de/intlayer_visual_editor.md +1 -1
  143. package/docs/de/intlayer_with_astro_lit.md +2 -1
  144. package/docs/de/intlayer_with_astro_preact.md +2 -1
  145. package/docs/de/intlayer_with_astro_react.md +2 -1
  146. package/docs/de/intlayer_with_astro_solid.md +2 -1
  147. package/docs/de/intlayer_with_astro_svelte.md +2 -1
  148. package/docs/de/intlayer_with_astro_vanilla.md +1 -1
  149. package/docs/de/intlayer_with_astro_vue.md +2 -1
  150. package/docs/de/intlayer_with_nextjs_15.md +2 -2
  151. package/docs/de/intlayer_with_nextjs_16.md +1 -1
  152. package/docs/de/intlayer_with_nextjs_compiler.md +1 -1
  153. package/docs/de/intlayer_with_nextjs_no_locale_path.md +1 -1
  154. package/docs/de/intlayer_with_nuxt.md +1 -1
  155. package/docs/de/intlayer_with_react_router_v7.md +1 -1
  156. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +1 -1
  157. package/docs/de/intlayer_with_tanstack+solid.md +1 -1
  158. package/docs/de/intlayer_with_tanstack.md +1 -1
  159. package/docs/de/intlayer_with_vite+vue.md +1 -1
  160. package/docs/de/plugins/sync-json.md +1 -1
  161. package/docs/de/readme.md +27 -1
  162. package/docs/en/benchmark/___solid.md +12 -0
  163. package/docs/en/benchmark/___svelte.md +16 -0
  164. package/docs/en/benchmark/___vue.md +7 -0
  165. package/docs/en/benchmark/index.md +3 -0
  166. package/docs/en/benchmark/solid.md +159 -0
  167. package/docs/en/benchmark/svelte.md +158 -0
  168. package/docs/en/benchmark/tanstack.md +1 -1
  169. package/docs/en/benchmark/vue.md +154 -0
  170. package/docs/en/component_i18n.md +1 -1
  171. package/docs/en/dictionary/content_file.md +1 -1
  172. package/docs/en/intlayer_CMS.md +1 -1
  173. package/docs/en/intlayer_visual_editor.md +1 -1
  174. package/docs/en/intlayer_with_astro.md +2 -1
  175. package/docs/en/intlayer_with_astro_lit.md +2 -1
  176. package/docs/en/intlayer_with_astro_preact.md +2 -1
  177. package/docs/en/intlayer_with_astro_react.md +2 -1
  178. package/docs/en/intlayer_with_astro_solid.md +2 -1
  179. package/docs/en/intlayer_with_astro_svelte.md +2 -1
  180. package/docs/en/intlayer_with_astro_vanilla.md +2 -1
  181. package/docs/en/intlayer_with_astro_vue.md +2 -1
  182. package/docs/en/intlayer_with_nextjs_15.md +1 -1
  183. package/docs/en/intlayer_with_nextjs_16.md +1 -1
  184. package/docs/en/intlayer_with_nextjs_compiler.md +1 -1
  185. package/docs/en/intlayer_with_nextjs_no_locale_path.md +1 -1
  186. package/docs/en/intlayer_with_nuxt.md +1 -1
  187. package/docs/en/intlayer_with_react_router_v7.md +1 -1
  188. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +1 -1
  189. package/docs/en/intlayer_with_tanstack+solid.md +1 -1
  190. package/docs/en/intlayer_with_tanstack.md +1 -1
  191. package/docs/en/intlayer_with_vite+vue.md +1 -1
  192. package/docs/en/plugins/sync-json.md +1 -1
  193. package/docs/en/readme.md +27 -1
  194. package/docs/en-GB/benchmark/index.md +8 -2
  195. package/docs/en-GB/benchmark/tanstack.md +1 -1
  196. package/docs/en-GB/dictionary/content_file.md +1 -1
  197. package/docs/en-GB/intlayer_CMS.md +1 -1
  198. package/docs/en-GB/intlayer_visual_editor.md +1 -1
  199. package/docs/en-GB/intlayer_with_astro_lit.md +2 -1
  200. package/docs/en-GB/intlayer_with_astro_preact.md +2 -1
  201. package/docs/en-GB/intlayer_with_astro_react.md +2 -1
  202. package/docs/en-GB/intlayer_with_astro_solid.md +2 -1
  203. package/docs/en-GB/intlayer_with_astro_svelte.md +2 -1
  204. package/docs/en-GB/intlayer_with_astro_vanilla.md +1 -1
  205. package/docs/en-GB/intlayer_with_astro_vue.md +2 -1
  206. package/docs/en-GB/intlayer_with_nextjs_15.md +2 -2
  207. package/docs/en-GB/intlayer_with_nextjs_16.md +1 -1
  208. package/docs/en-GB/intlayer_with_nextjs_compiler.md +1 -1
  209. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +1 -1
  210. package/docs/en-GB/intlayer_with_nuxt.md +1 -1
  211. package/docs/en-GB/intlayer_with_react_router_v7.md +1 -1
  212. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +1 -1
  213. package/docs/en-GB/intlayer_with_tanstack+solid.md +1 -1
  214. package/docs/en-GB/intlayer_with_tanstack.md +1 -1
  215. package/docs/en-GB/intlayer_with_vite+vue.md +1 -1
  216. package/docs/en-GB/plugins/sync-json.md +1 -1
  217. package/docs/en-GB/readme.md +27 -1
  218. package/docs/es/benchmark/index.md +8 -2
  219. package/docs/es/benchmark/tanstack.md +1 -1
  220. package/docs/es/component_i18n.md +1 -1
  221. package/docs/es/dictionary/content_file.md +1 -1
  222. package/docs/es/intlayer_CMS.md +1 -1
  223. package/docs/es/intlayer_visual_editor.md +1 -1
  224. package/docs/es/intlayer_with_astro_lit.md +2 -1
  225. package/docs/es/intlayer_with_astro_preact.md +2 -1
  226. package/docs/es/intlayer_with_astro_react.md +2 -1
  227. package/docs/es/intlayer_with_astro_solid.md +2 -1
  228. package/docs/es/intlayer_with_astro_svelte.md +2 -1
  229. package/docs/es/intlayer_with_astro_vanilla.md +1 -1
  230. package/docs/es/intlayer_with_astro_vue.md +2 -1
  231. package/docs/es/intlayer_with_nextjs_15.md +2 -2
  232. package/docs/es/intlayer_with_nextjs_16.md +1 -1
  233. package/docs/es/intlayer_with_nextjs_compiler.md +1 -1
  234. package/docs/es/intlayer_with_nextjs_no_locale_path.md +1 -1
  235. package/docs/es/intlayer_with_nuxt.md +1 -1
  236. package/docs/es/intlayer_with_react_router_v7.md +1 -1
  237. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +1 -1
  238. package/docs/es/intlayer_with_tanstack+solid.md +1 -1
  239. package/docs/es/intlayer_with_tanstack.md +1 -1
  240. package/docs/es/intlayer_with_vite+vue.md +1 -1
  241. package/docs/es/plugins/sync-json.md +1 -1
  242. package/docs/es/readme.md +27 -1
  243. package/docs/fr/benchmark/index.md +8 -2
  244. package/docs/fr/benchmark/tanstack.md +1 -1
  245. package/docs/fr/dictionary/content_file.md +1 -1
  246. package/docs/fr/intlayer_CMS.md +1 -1
  247. package/docs/fr/intlayer_visual_editor.md +1 -1
  248. package/docs/fr/intlayer_with_astro_lit.md +2 -1
  249. package/docs/fr/intlayer_with_astro_preact.md +2 -1
  250. package/docs/fr/intlayer_with_astro_react.md +2 -1
  251. package/docs/fr/intlayer_with_astro_solid.md +2 -1
  252. package/docs/fr/intlayer_with_astro_svelte.md +2 -1
  253. package/docs/fr/intlayer_with_astro_vanilla.md +1 -1
  254. package/docs/fr/intlayer_with_astro_vue.md +2 -1
  255. package/docs/fr/intlayer_with_nextjs_15.md +2 -2
  256. package/docs/fr/intlayer_with_nextjs_16.md +1 -1
  257. package/docs/fr/intlayer_with_nextjs_compiler.md +1 -1
  258. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1 -1
  259. package/docs/fr/intlayer_with_nuxt.md +1 -1
  260. package/docs/fr/intlayer_with_react_router_v7.md +1 -1
  261. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +1 -1
  262. package/docs/fr/intlayer_with_tanstack+solid.md +1 -1
  263. package/docs/fr/intlayer_with_tanstack.md +1 -1
  264. package/docs/fr/intlayer_with_vite+vue.md +1 -1
  265. package/docs/fr/plugins/sync-json.md +1 -1
  266. package/docs/fr/readme.md +27 -1
  267. package/docs/hi/benchmark/index.md +5 -2
  268. package/docs/hi/benchmark/tanstack.md +1 -1
  269. package/docs/hi/dictionary/content_file.md +1 -1
  270. package/docs/hi/intlayer_CMS.md +1 -1
  271. package/docs/hi/intlayer_visual_editor.md +1 -1
  272. package/docs/hi/intlayer_with_astro_lit.md +2 -1
  273. package/docs/hi/intlayer_with_astro_preact.md +2 -1
  274. package/docs/hi/intlayer_with_astro_react.md +2 -1
  275. package/docs/hi/intlayer_with_astro_solid.md +2 -1
  276. package/docs/hi/intlayer_with_astro_svelte.md +2 -1
  277. package/docs/hi/intlayer_with_astro_vanilla.md +1 -1
  278. package/docs/hi/intlayer_with_astro_vue.md +2 -1
  279. package/docs/hi/intlayer_with_nextjs_15.md +2 -2
  280. package/docs/hi/intlayer_with_nextjs_16.md +1 -1
  281. package/docs/hi/intlayer_with_nextjs_compiler.md +1 -1
  282. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1 -1
  283. package/docs/hi/intlayer_with_nuxt.md +1 -1
  284. package/docs/hi/intlayer_with_react_router_v7.md +1 -1
  285. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +1 -1
  286. package/docs/hi/intlayer_with_tanstack+solid.md +1 -1
  287. package/docs/hi/intlayer_with_tanstack.md +1 -1
  288. package/docs/hi/intlayer_with_vite+vue.md +1 -1
  289. package/docs/hi/plugins/sync-json.md +1 -1
  290. package/docs/hi/readme.md +27 -1
  291. package/docs/id/benchmark/index.md +8 -2
  292. package/docs/id/benchmark/tanstack.md +1 -1
  293. package/docs/id/dictionary/content_file.md +1 -1
  294. package/docs/id/intlayer_CMS.md +1 -1
  295. package/docs/id/intlayer_visual_editor.md +1 -1
  296. package/docs/id/intlayer_with_astro_lit.md +2 -1
  297. package/docs/id/intlayer_with_astro_preact.md +2 -1
  298. package/docs/id/intlayer_with_astro_react.md +2 -1
  299. package/docs/id/intlayer_with_astro_solid.md +2 -1
  300. package/docs/id/intlayer_with_astro_svelte.md +2 -1
  301. package/docs/id/intlayer_with_astro_vanilla.md +1 -1
  302. package/docs/id/intlayer_with_astro_vue.md +2 -1
  303. package/docs/id/intlayer_with_nextjs_15.md +1 -1
  304. package/docs/id/intlayer_with_nextjs_16.md +1 -1
  305. package/docs/id/intlayer_with_nextjs_compiler.md +1 -1
  306. package/docs/id/intlayer_with_nextjs_no_locale_path.md +1 -1
  307. package/docs/id/intlayer_with_nuxt.md +1 -1
  308. package/docs/id/intlayer_with_react_router_v7.md +1 -1
  309. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +1 -1
  310. package/docs/id/intlayer_with_tanstack+solid.md +1 -1
  311. package/docs/id/intlayer_with_tanstack.md +1 -1
  312. package/docs/id/intlayer_with_vite+vue.md +1 -1
  313. package/docs/id/plugins/sync-json.md +1 -1
  314. package/docs/id/readme.md +27 -1
  315. package/docs/it/benchmark/index.md +8 -2
  316. package/docs/it/benchmark/tanstack.md +1 -1
  317. package/docs/it/dictionary/content_file.md +1 -1
  318. package/docs/it/intlayer_CMS.md +1 -1
  319. package/docs/it/intlayer_visual_editor.md +1 -1
  320. package/docs/it/intlayer_with_astro_lit.md +2 -1
  321. package/docs/it/intlayer_with_astro_preact.md +2 -1
  322. package/docs/it/intlayer_with_astro_react.md +2 -1
  323. package/docs/it/intlayer_with_astro_solid.md +2 -1
  324. package/docs/it/intlayer_with_astro_svelte.md +2 -1
  325. package/docs/it/intlayer_with_astro_vanilla.md +1 -1
  326. package/docs/it/intlayer_with_astro_vue.md +2 -1
  327. package/docs/it/intlayer_with_nextjs_15.md +2 -2
  328. package/docs/it/intlayer_with_nextjs_16.md +1 -1
  329. package/docs/it/intlayer_with_nextjs_compiler.md +1 -1
  330. package/docs/it/intlayer_with_nextjs_no_locale_path.md +1 -1
  331. package/docs/it/intlayer_with_nuxt.md +1 -1
  332. package/docs/it/intlayer_with_react_router_v7.md +1 -1
  333. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +1 -1
  334. package/docs/it/intlayer_with_tanstack+solid.md +1 -1
  335. package/docs/it/intlayer_with_tanstack.md +1 -1
  336. package/docs/it/intlayer_with_vite+vue.md +1 -1
  337. package/docs/it/plugins/sync-json.md +1 -1
  338. package/docs/it/readme.md +27 -1
  339. package/docs/ja/benchmark/index.md +5 -2
  340. package/docs/ja/benchmark/tanstack.md +1 -1
  341. package/docs/ja/dictionary/content_file.md +1 -1
  342. package/docs/ja/intlayer_CMS.md +1 -1
  343. package/docs/ja/intlayer_visual_editor.md +1 -1
  344. package/docs/ja/intlayer_with_astro_lit.md +2 -1
  345. package/docs/ja/intlayer_with_astro_preact.md +2 -1
  346. package/docs/ja/intlayer_with_astro_react.md +2 -1
  347. package/docs/ja/intlayer_with_astro_solid.md +2 -1
  348. package/docs/ja/intlayer_with_astro_svelte.md +2 -1
  349. package/docs/ja/intlayer_with_astro_vanilla.md +1 -1
  350. package/docs/ja/intlayer_with_astro_vue.md +2 -1
  351. package/docs/ja/intlayer_with_nextjs_15.md +2 -2
  352. package/docs/ja/intlayer_with_nextjs_16.md +1 -1
  353. package/docs/ja/intlayer_with_nextjs_compiler.md +1 -1
  354. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1 -1
  355. package/docs/ja/intlayer_with_nuxt.md +1 -1
  356. package/docs/ja/intlayer_with_react_router_v7.md +1 -1
  357. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +1 -1
  358. package/docs/ja/intlayer_with_tanstack+solid.md +1 -1
  359. package/docs/ja/intlayer_with_tanstack.md +1 -1
  360. package/docs/ja/intlayer_with_vite+vue.md +1 -1
  361. package/docs/ja/plugins/sync-json.md +1 -1
  362. package/docs/ja/readme.md +27 -1
  363. package/docs/ko/benchmark/index.md +5 -2
  364. package/docs/ko/benchmark/tanstack.md +1 -1
  365. package/docs/ko/dictionary/content_file.md +1 -1
  366. package/docs/ko/intlayer_CMS.md +1 -1
  367. package/docs/ko/intlayer_visual_editor.md +1 -1
  368. package/docs/ko/intlayer_with_astro_lit.md +2 -1
  369. package/docs/ko/intlayer_with_astro_preact.md +2 -1
  370. package/docs/ko/intlayer_with_astro_react.md +2 -1
  371. package/docs/ko/intlayer_with_astro_solid.md +2 -1
  372. package/docs/ko/intlayer_with_astro_svelte.md +2 -1
  373. package/docs/ko/intlayer_with_astro_vanilla.md +1 -1
  374. package/docs/ko/intlayer_with_astro_vue.md +2 -1
  375. package/docs/ko/intlayer_with_nextjs_15.md +2 -2
  376. package/docs/ko/intlayer_with_nextjs_16.md +1 -1
  377. package/docs/ko/intlayer_with_nextjs_compiler.md +1 -1
  378. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1 -1
  379. package/docs/ko/intlayer_with_nuxt.md +1 -1
  380. package/docs/ko/intlayer_with_react_router_v7.md +1 -1
  381. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +1 -1
  382. package/docs/ko/intlayer_with_tanstack+solid.md +1 -1
  383. package/docs/ko/intlayer_with_tanstack.md +1 -1
  384. package/docs/ko/intlayer_with_vite+vue.md +1 -1
  385. package/docs/ko/plugins/sync-json.md +1 -1
  386. package/docs/ko/readme.md +27 -1
  387. package/docs/pl/benchmark/index.md +8 -2
  388. package/docs/pl/benchmark/tanstack.md +1 -1
  389. package/docs/pl/dictionary/content_file.md +1 -1
  390. package/docs/pl/intlayer_CMS.md +1 -1
  391. package/docs/pl/intlayer_visual_editor.md +1 -1
  392. package/docs/pl/intlayer_with_astro_lit.md +2 -1
  393. package/docs/pl/intlayer_with_astro_preact.md +2 -1
  394. package/docs/pl/intlayer_with_astro_react.md +2 -1
  395. package/docs/pl/intlayer_with_astro_solid.md +2 -1
  396. package/docs/pl/intlayer_with_astro_svelte.md +2 -1
  397. package/docs/pl/intlayer_with_astro_vanilla.md +1 -1
  398. package/docs/pl/intlayer_with_astro_vue.md +2 -1
  399. package/docs/pl/intlayer_with_nextjs_15.md +1 -1
  400. package/docs/pl/intlayer_with_nextjs_16.md +1 -1
  401. package/docs/pl/intlayer_with_nextjs_compiler.md +1 -1
  402. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +1 -1
  403. package/docs/pl/intlayer_with_nuxt.md +1 -1
  404. package/docs/pl/intlayer_with_react_router_v7.md +1 -1
  405. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +2 -2
  406. package/docs/pl/intlayer_with_tanstack+solid.md +1 -1
  407. package/docs/pl/intlayer_with_tanstack.md +1 -1
  408. package/docs/pl/intlayer_with_vite+vue.md +1 -1
  409. package/docs/pl/plugins/sync-json.md +1 -1
  410. package/docs/pl/readme.md +27 -1
  411. package/docs/pt/benchmark/index.md +8 -2
  412. package/docs/pt/benchmark/tanstack.md +1 -1
  413. package/docs/pt/dictionary/content_file.md +1 -1
  414. package/docs/pt/intlayer_CMS.md +1 -1
  415. package/docs/pt/intlayer_visual_editor.md +1 -1
  416. package/docs/pt/intlayer_with_astro_lit.md +2 -1
  417. package/docs/pt/intlayer_with_astro_preact.md +2 -1
  418. package/docs/pt/intlayer_with_astro_react.md +2 -1
  419. package/docs/pt/intlayer_with_astro_solid.md +2 -1
  420. package/docs/pt/intlayer_with_astro_svelte.md +2 -1
  421. package/docs/pt/intlayer_with_astro_vanilla.md +1 -1
  422. package/docs/pt/intlayer_with_astro_vue.md +2 -1
  423. package/docs/pt/intlayer_with_nextjs_15.md +2 -2
  424. package/docs/pt/intlayer_with_nextjs_16.md +1 -1
  425. package/docs/pt/intlayer_with_nextjs_compiler.md +1 -1
  426. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +1 -1
  427. package/docs/pt/intlayer_with_nuxt.md +1 -1
  428. package/docs/pt/intlayer_with_react_router_v7.md +1 -1
  429. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +1 -1
  430. package/docs/pt/intlayer_with_tanstack+solid.md +1 -1
  431. package/docs/pt/intlayer_with_tanstack.md +1 -1
  432. package/docs/pt/intlayer_with_vite+vue.md +1 -1
  433. package/docs/pt/plugins/sync-json.md +1 -1
  434. package/docs/pt/readme.md +27 -1
  435. package/docs/ru/benchmark/index.md +5 -2
  436. package/docs/ru/benchmark/tanstack.md +1 -1
  437. package/docs/ru/dictionary/content_file.md +1 -1
  438. package/docs/ru/intlayer_CMS.md +1 -1
  439. package/docs/ru/intlayer_visual_editor.md +1 -1
  440. package/docs/ru/intlayer_with_astro_lit.md +2 -1
  441. package/docs/ru/intlayer_with_astro_preact.md +2 -1
  442. package/docs/ru/intlayer_with_astro_react.md +2 -1
  443. package/docs/ru/intlayer_with_astro_solid.md +2 -1
  444. package/docs/ru/intlayer_with_astro_svelte.md +2 -1
  445. package/docs/ru/intlayer_with_astro_vanilla.md +1 -1
  446. package/docs/ru/intlayer_with_astro_vue.md +2 -1
  447. package/docs/ru/intlayer_with_nextjs_15.md +2 -2
  448. package/docs/ru/intlayer_with_nextjs_16.md +1 -1
  449. package/docs/ru/intlayer_with_nextjs_compiler.md +1 -1
  450. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1 -1
  451. package/docs/ru/intlayer_with_nuxt.md +1 -1
  452. package/docs/ru/intlayer_with_react_router_v7.md +1 -1
  453. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +1 -1
  454. package/docs/ru/intlayer_with_tanstack+solid.md +1 -1
  455. package/docs/ru/intlayer_with_tanstack.md +1 -1
  456. package/docs/ru/intlayer_with_vite+vue.md +1 -1
  457. package/docs/ru/plugins/sync-json.md +1 -1
  458. package/docs/ru/readme.md +27 -1
  459. package/docs/tr/benchmark/index.md +8 -2
  460. package/docs/tr/benchmark/tanstack.md +1 -1
  461. package/docs/tr/dictionary/content_file.md +1 -1
  462. package/docs/tr/intlayer_CMS.md +1 -1
  463. package/docs/tr/intlayer_visual_editor.md +1 -1
  464. package/docs/tr/intlayer_with_astro_lit.md +2 -1
  465. package/docs/tr/intlayer_with_astro_preact.md +2 -1
  466. package/docs/tr/intlayer_with_astro_react.md +2 -1
  467. package/docs/tr/intlayer_with_astro_solid.md +2 -1
  468. package/docs/tr/intlayer_with_astro_svelte.md +2 -1
  469. package/docs/tr/intlayer_with_astro_vanilla.md +1 -1
  470. package/docs/tr/intlayer_with_astro_vue.md +2 -1
  471. package/docs/tr/intlayer_with_nextjs_15.md +2 -2
  472. package/docs/tr/intlayer_with_nextjs_16.md +1 -1
  473. package/docs/tr/intlayer_with_nextjs_compiler.md +1 -1
  474. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1 -1
  475. package/docs/tr/intlayer_with_nuxt.md +1 -1
  476. package/docs/tr/intlayer_with_react_router_v7.md +1 -1
  477. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +1 -1
  478. package/docs/tr/intlayer_with_tanstack+solid.md +1 -1
  479. package/docs/tr/intlayer_with_tanstack.md +1 -1
  480. package/docs/tr/intlayer_with_vite+vue.md +1 -1
  481. package/docs/tr/plugins/sync-json.md +1 -1
  482. package/docs/tr/readme.md +27 -1
  483. package/docs/uk/benchmark/index.md +5 -2
  484. package/docs/uk/benchmark/tanstack.md +1 -1
  485. package/docs/uk/dictionary/content_file.md +1 -1
  486. package/docs/uk/intlayer_CMS.md +1 -1
  487. package/docs/uk/intlayer_visual_editor.md +1 -1
  488. package/docs/uk/intlayer_with_astro_lit.md +2 -1
  489. package/docs/uk/intlayer_with_astro_preact.md +2 -1
  490. package/docs/uk/intlayer_with_astro_react.md +2 -1
  491. package/docs/uk/intlayer_with_astro_solid.md +2 -1
  492. package/docs/uk/intlayer_with_astro_svelte.md +2 -1
  493. package/docs/uk/intlayer_with_astro_vanilla.md +1 -1
  494. package/docs/uk/intlayer_with_astro_vue.md +2 -1
  495. package/docs/uk/intlayer_with_nextjs_15.md +1 -1
  496. package/docs/uk/intlayer_with_nextjs_16.md +1 -1
  497. package/docs/uk/intlayer_with_nextjs_compiler.md +1 -1
  498. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1 -1
  499. package/docs/uk/intlayer_with_nuxt.md +1 -1
  500. package/docs/uk/intlayer_with_react_router_v7.md +1 -1
  501. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +1 -1
  502. package/docs/uk/intlayer_with_tanstack+solid.md +1 -1
  503. package/docs/uk/intlayer_with_tanstack.md +1 -1
  504. package/docs/uk/intlayer_with_vite+vue.md +1 -1
  505. package/docs/uk/plugins/sync-json.md +1 -1
  506. package/docs/uk/readme.md +27 -1
  507. package/docs/vi/benchmark/index.md +8 -2
  508. package/docs/vi/benchmark/tanstack.md +1 -1
  509. package/docs/vi/dictionary/content_file.md +1 -1
  510. package/docs/vi/intlayer_CMS.md +1 -1
  511. package/docs/vi/intlayer_visual_editor.md +1 -1
  512. package/docs/vi/intlayer_with_astro_lit.md +2 -1
  513. package/docs/vi/intlayer_with_astro_preact.md +2 -1
  514. package/docs/vi/intlayer_with_astro_react.md +2 -1
  515. package/docs/vi/intlayer_with_astro_solid.md +2 -1
  516. package/docs/vi/intlayer_with_astro_svelte.md +2 -1
  517. package/docs/vi/intlayer_with_astro_vanilla.md +1 -1
  518. package/docs/vi/intlayer_with_astro_vue.md +2 -1
  519. package/docs/vi/intlayer_with_nextjs_15.md +1 -1
  520. package/docs/vi/intlayer_with_nextjs_16.md +1 -1
  521. package/docs/vi/intlayer_with_nextjs_compiler.md +1 -1
  522. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1 -1
  523. package/docs/vi/intlayer_with_nuxt.md +1 -1
  524. package/docs/vi/intlayer_with_react_router_v7.md +1 -1
  525. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +1 -1
  526. package/docs/vi/intlayer_with_tanstack+solid.md +1 -1
  527. package/docs/vi/intlayer_with_tanstack.md +1 -1
  528. package/docs/vi/intlayer_with_vite+vue.md +1 -1
  529. package/docs/vi/plugins/sync-json.md +1 -1
  530. package/docs/vi/readme.md +27 -1
  531. package/docs/zh/benchmark/index.md +5 -2
  532. package/docs/zh/benchmark/tanstack.md +1 -1
  533. package/docs/zh/dictionary/content_file.md +1 -1
  534. package/docs/zh/intlayer_CMS.md +1 -1
  535. package/docs/zh/intlayer_visual_editor.md +1 -1
  536. package/docs/zh/intlayer_with_astro_lit.md +2 -1
  537. package/docs/zh/intlayer_with_astro_preact.md +2 -1
  538. package/docs/zh/intlayer_with_astro_react.md +2 -1
  539. package/docs/zh/intlayer_with_astro_solid.md +2 -1
  540. package/docs/zh/intlayer_with_astro_svelte.md +2 -1
  541. package/docs/zh/intlayer_with_astro_vanilla.md +1 -1
  542. package/docs/zh/intlayer_with_astro_vue.md +2 -1
  543. package/docs/zh/intlayer_with_nextjs_15.md +2 -2
  544. package/docs/zh/intlayer_with_nextjs_16.md +1 -1
  545. package/docs/zh/intlayer_with_nextjs_compiler.md +1 -1
  546. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1 -1
  547. package/docs/zh/intlayer_with_nuxt.md +1 -1
  548. package/docs/zh/intlayer_with_react_router_v7.md +1 -1
  549. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +1 -1
  550. package/docs/zh/intlayer_with_tanstack+solid.md +1 -1
  551. package/docs/zh/intlayer_with_tanstack.md +1 -1
  552. package/docs/zh/intlayer_with_vite+vue.md +1 -1
  553. package/docs/zh/plugins/sync-json.md +1 -1
  554. package/docs/zh/readme.md +102 -76
  555. package/package.json +6 -6
  556. package/src/generated/docs.entry.ts +60 -0
@@ -50,7 +50,7 @@ history:
50
50
  <Tabs defaultTab="video">
51
51
  <Tab label="Відео" value="video">
52
52
 
53
- <iframe title="Найкраще i18n-рішення для Vite і Vue? Дізнайтеся про 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/IE3XWkZ6a5U?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
53
+ <iframe title="Найкраще i18n-рішення для Vite і Vue? Дізнайтеся про 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/IE3XWkZ6a5U?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
54
54
 
55
55
  </Tab>
56
56
  <Tab label="Код" value="code">
@@ -34,7 +34,7 @@ history:
34
34
 
35
35
  # Sync JSON (містки i18n) - Синхронізація JSON з підтримкою ICU / i18next
36
36
 
37
- <iframe title="Як синхронізувати ваші JSON-переклади з 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/MpGMxniDHNg?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
37
+ <iframe title="Як синхронізувати ваші JSON-переклади з 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/MpGMxniDHNg?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
38
38
 
39
39
  Використовуйте Intlayer як додаток до вашого існуючого стеку i18n. Цей плагін синхронізує ваші JSON-повідомлення зі словниками Intlayer, тож ви можете:
40
40
 
package/docs/uk/readme.md CHANGED
@@ -189,7 +189,22 @@ const HomePage = () => {
189
189
  <li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React</a></li>
190
190
  <li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React за допомогою компілятора</a></li>
191
191
  <li><a href="https://intlayer.org/doc/environment/vite-and-react/compiler" rel=''>React-router-v7</a></li>
192
- <li><a href="https://intlayer.org/doc/environment/vite-and-react/tanstack-start" rel=''>Tanstack start</a></li>
192
+ <li><a href="https://intlayer.org/doc/environment/tanstack-start" rel=''>Tanstack start</a>
193
+ <ul>
194
+ <li><a href="https://intlayer.org/doc/environment/tanstack-start/solid" rel=''>Solid</a></li>
195
+ </ul>
196
+ </li>
197
+ <li><a href="https://intlayer.org/doc/environment/astro" rel=''>Astro</a>
198
+ <ul>
199
+ <li><a href="https://intlayer.org/doc/environment/astro/react" rel=''>React</a></li>
200
+ <li><a href="https://intlayer.org/doc/environment/astro/vue" rel=''>Vue</a></li>
201
+ <li><a href="https://intlayer.org/doc/environment/astro/svelte" rel=''>Svelte</a></li>
202
+ <li><a href="https://intlayer.org/doc/environment/astro/solid" rel=''>Solid</a></li>
203
+ <li><a href="https://intlayer.org/doc/environment/astro/vanilla" rel=''>Vanilla JS</a></li>
204
+ <li><a href="https://intlayer.org/doc/environment/astro/lit" rel=''>Lit</a></li>
205
+ </ul>
206
+ </li>
207
+
193
208
  <li><a href="https://intlayer.org/doc/environment/react-native-and-expo" rel=''>React Native</a></li>
194
209
  <li><a href="https://intlayer.org/doc/environment/vite-and-svelte" rel=''>Vite + Svelte</a></li>
195
210
  <li><a href="https://intlayer.org/doc/environment/sveltekit" rel=''>SvelteKit</a></li>
@@ -211,6 +226,17 @@ const HomePage = () => {
211
226
  </ul>
212
227
  </details>
213
228
 
229
+ <details>
230
+ <summary style="font-size:16px; font-weight:bold;">📊 Бенчмарк</summary>
231
+ <ul>
232
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/benchmark/nextjs.md" rel=''>Next.js</a></li>
233
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/benchmark/tanstack.md" rel=''>TanStack Start</a></li>
234
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md" rel=''>Vue</a></li>
235
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md" rel=''>Solid</a></li>
236
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md" rel=''>Svelte</a></li>
237
+ </ul>
238
+ </details>
239
+
214
240
  <details>
215
241
  <summary style="font-size:16px; font-weight:bold;">📰 Блог</summary>
216
242
  <ul>
@@ -25,5 +25,11 @@ Benchmark Bloom là bộ công cụ đo hiệu năng, đánh giá tác động t
25
25
 
26
26
  Báo cáo chi tiết và tài liệu kỹ thuật cho từng framework nằm bên dưới:
27
27
 
28
- - [**Báo cáo benchmark Next.js**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/benchmark/nextjs.md)
29
- - [**Báo cáo benchmark TanStack Start**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/benchmark/tanstack.md)
28
+ - [**Next.js Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/nextjs.md)
29
+ - [**TanStack Start Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/tanstack.md)
30
+ - [**Vue Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md)
31
+ - [**Solid Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md)
32
+ - [**Svelte Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md)
33
+ - [**Vue Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md)
34
+ - [**Solid Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md)
35
+ - [**Svelte Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md)
@@ -182,7 +182,7 @@ Các định dạng thông báo cũng khác nhau: `use-intl` sử dụng ICU Mes
182
182
 
183
183
  Benchmark TanStack Start này không có đối trọng trực tiếp cho `next-translate` (Next.js plugin + `getStaticProps`). Đối với các nhóm thực sự muốn một API `t()` với một hệ sinh thái chín muồi, `react-i18next` và `use-intl` vẫn là những lựa chọn "hợp lý", nhưng hãy chuẩn bị đầu tư nhiều thời gian tối ưu hóa để tránh rò rỉ.
184
184
 
185
- **(Intlayer)** (`react-intlayer@8.7.5-canary.0`):
185
+ **(Intlayer)** (`react-intlayer@8.7.12`):
186
186
 
187
187
  Tôi sẽ không đích thân đánh giá `react-intlayer` vì tính khách quan, vì đây là giải pháp của riêng tôi.
188
188
 
@@ -40,7 +40,7 @@ history:
40
40
 
41
41
  # Tệp Nội Dung
42
42
 
43
- <iframe title="i18n, Markdown, JSON… một giải pháp duy nhất để quản lý tất cả | 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/1VHgSY_j9_I?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
43
+ <iframe title="i18n, Markdown, JSON… một giải pháp duy nhất để quản lý tất cả | 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/1VHgSY_j9_I?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
44
44
 
45
45
  ## Tệp Nội Dung là gì?
46
46
 
@@ -31,7 +31,7 @@ history:
31
31
 
32
32
  # Tài liệu Hệ thống Quản lý Nội dung (CMS) Intlayer
33
33
 
34
- <iframe title="Trình chỉnh sửa trực quan + CMS cho Ứng dụng Web của bạn: Giải thích về 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/UDDTnirwi_4?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
34
+ <iframe title="Trình chỉnh sửa trực quan + CMS cho Ứng dụng Web của bạn: Giải thích về 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/UDDTnirwi_4?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
35
35
 
36
36
  Intlayer CMS là một ứng dụng cho phép bạn đưa nội dung của dự án Intlayer ra ngoài.
37
37
 
@@ -33,7 +33,7 @@ history:
33
33
 
34
34
  # Tài liệu Trình chỉnh sửa trực quan Intlayer
35
35
 
36
- <iframe title="Trình chỉnh sửa trực quan + CMS cho ứng dụng web của bạn: Giải thích 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/UDDTnirwi_4?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
36
+ <iframe title="Trình chỉnh sửa trực quan + CMS cho ứng dụng web của bạn: Giải thích 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/UDDTnirwi_4?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
37
37
 
38
38
  Trình chỉnh sửa trực quan Intlayer là một công cụ bao bọc trang web của bạn để tương tác với các tệp khai báo nội dung của bạn bằng cách sử dụng trình chỉnh sửa trực quan.
39
39
 
@@ -204,6 +204,7 @@ import {
204
204
  getIntlayer,
205
205
  getLocaleFromPath,
206
206
  getLocalizedUrl,
207
+ getHTMLTextDir,
207
208
  getPrefix,
208
209
  localeMap,
209
210
  defaultLocale,
@@ -221,7 +222,7 @@ const { greeting } = getIntlayer("lit-demo", locale);
221
222
  ---
222
223
 
223
224
  <!doctype html>
224
- <html lang={locale}>
225
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
225
226
  <head>
226
227
  <meta charset="utf-8" />
227
228
  <meta name="viewport" content="width=device-width" />
@@ -201,6 +201,7 @@ import {
201
201
  getIntlayer,
202
202
  getLocaleFromPath,
203
203
  getLocalizedUrl,
204
+ getHTMLTextDir,
204
205
  getPrefix,
205
206
  localeMap,
206
207
  defaultLocale,
@@ -219,7 +220,7 @@ const { title } = getIntlayer("app", locale);
219
220
  ---
220
221
 
221
222
  <!doctype html>
222
- <html lang={locale}>
223
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
223
224
  <head>
224
225
  <meta charset="utf-8" />
225
226
  <meta name="viewport" content="width=device-width" />
@@ -201,6 +201,7 @@ import {
201
201
  getIntlayer,
202
202
  getLocaleFromPath,
203
203
  getLocalizedUrl,
204
+ getHTMLTextDir,
204
205
  getPrefix,
205
206
  localeMap,
206
207
  defaultLocale,
@@ -219,7 +220,7 @@ const { title } = getIntlayer("app", locale);
219
220
  ---
220
221
 
221
222
  <!doctype html>
222
- <html lang={locale}>
223
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
223
224
  <head>
224
225
  <meta charset="utf-8" />
225
226
  <meta name="viewport" content="width=device-width" />
@@ -197,6 +197,7 @@ import {
197
197
  getIntlayer,
198
198
  getLocaleFromPath,
199
199
  getLocalizedUrl,
200
+ getHTMLTextDir,
200
201
  getPrefix,
201
202
  localeMap,
202
203
  defaultLocale,
@@ -215,7 +216,7 @@ const { title } = getIntlayer("app", locale);
215
216
  ---
216
217
 
217
218
  <!doctype html>
218
- <html lang={locale}>
219
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
219
220
  <head>
220
221
  <meta charset="utf-8" />
221
222
  <meta name="viewport" content="width=device-width" />
@@ -197,6 +197,7 @@ import {
197
197
  getIntlayer,
198
198
  getLocaleFromPath,
199
199
  getLocalizedUrl,
200
+ getHTMLTextDir,
200
201
  getPrefix,
201
202
  localeMap,
202
203
  defaultLocale,
@@ -215,7 +216,7 @@ const { title } = getIntlayer("app", locale);
215
216
  ---
216
217
 
217
218
  <!doctype html>
218
- <html lang={locale}>
219
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
219
220
  <head>
220
221
  <meta charset="utf-8" />
221
222
  <meta name="viewport" content="width=device-width" />
@@ -221,7 +221,7 @@ const { greeting, description, switchLocale } = getIntlayer("app", locale);
221
221
  ---
222
222
 
223
223
  <!doctype html>
224
- <html lang={locale}>
224
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
225
225
  <head>
226
226
  <meta charset="utf-8" />
227
227
  <meta name="viewport" content="width=device-width" />
@@ -197,6 +197,7 @@ import {
197
197
  getIntlayer,
198
198
  getLocaleFromPath,
199
199
  getLocalizedUrl,
200
+ getHTMLTextDir,
200
201
  getPrefix,
201
202
  localeMap,
202
203
  defaultLocale,
@@ -215,7 +216,7 @@ const { title } = getIntlayer("app", locale);
215
216
  ---
216
217
 
217
218
  <!doctype html>
218
- <html lang={locale}>
219
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
219
220
  <head>
220
221
  <meta charset="utf-8" />
221
222
  <meta name="viewport" content="width=device-width" />
@@ -84,7 +84,7 @@ Với Intlayer, bạn có thể:
84
84
  <Tabs defaultTab="video">
85
85
  <Tab label="Video" value="video">
86
86
 
87
- <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
87
+ <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
88
88
 
89
89
  </Tab>
90
90
  <Tab label="Code" value="code">
@@ -34,7 +34,7 @@ history:
34
34
  <Tabs defaultTab="video">
35
35
  <Tab label="Video" value="video">
36
36
 
37
- <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
37
+ <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
38
38
 
39
39
  </Tab>
40
40
  <Tab label="Mã nguồn" value="code">
@@ -33,7 +33,7 @@ history:
33
33
  <Tabs defaultTab="video">
34
34
  <Tab label="Video" value="video">
35
35
 
36
- <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
36
+ <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
37
37
 
38
38
  </Tab>
39
39
  <Tab label="Mã nguồn" value="code">
@@ -28,7 +28,7 @@ history:
28
28
  <Tabs defaultTab="video">
29
29
  <Tab label="Video" value="video">
30
30
 
31
- <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
31
+ <iframe title="Giải pháp i18n tốt nhất cho Next.js? Khám phá 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/e_PPG7PTqGU?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
32
32
 
33
33
  </Tab>
34
34
  <Tab label="Mã" value="code">
@@ -50,7 +50,7 @@ Với Intlayer, bạn có thể:
50
50
  <Tabs defaultTab="video">
51
51
  <Tab label="Video" value="video">
52
52
 
53
- <iframe title="Cách dịch ứng dụng Nuxt và Vue của bạn bằng Intlayer? Khám phá 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/nhUcUAVQ6eQ?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
53
+ <iframe title="Cách dịch ứng dụng Nuxt và Vue của bạn bằng Intlayer? Khám phá 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/nhUcUAVQ6eQ?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
54
54
 
55
55
  </Tab>
56
56
  <Tab label="Mã nguồn" value="code">
@@ -104,7 +104,7 @@ bun x intlayer init
104
104
  <Tabs defaultTab="video">
105
105
  <Tab label="Video" value="video">
106
106
 
107
- <iframe title="How to translate an React Router v7 app using 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/dS9L7uJeak4?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
107
+ <iframe title="How to translate an React Router v7 app using 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/dS9L7uJeak4?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
108
108
 
109
109
  </Tab>
110
110
  <Tab label="Code" value="code">
@@ -103,7 +103,7 @@ bun x intlayer init
103
103
  <Tabs defaultTab="video">
104
104
  <Tab label="Video" value="video">
105
105
 
106
- <iframe title="How to translate an React Router v7 (File-System Routes) app using 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/dS9L7uJeak4?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
106
+ <iframe title="How to translate an React Router v7 (File-System Routes) app using 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/dS9L7uJeak4?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
107
107
 
108
108
  </Tab>
109
109
  <Tab label="Code" value="code">
@@ -53,7 +53,7 @@ Với Intlayer, bạn có thể:
53
53
  <Tabs defaultTab="video">
54
54
  <Tab label="Video" value="video">
55
55
 
56
- <iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá 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"/>
56
+ <iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá 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=https://intlayer.org&amp;controls=0&amp;rel=1"/>
57
57
 
58
58
  </Tab>
59
59
  <Tab label="Code" value="code">
@@ -70,7 +70,7 @@ Với Intlayer, bạn có thể:
70
70
  <Tabs defaultTab="video">
71
71
  <Tab label="Video" value="video">
72
72
 
73
- <iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá 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"/>
73
+ <iframe title="Giải pháp i18n tốt nhất cho Tanstack Start? Khám phá 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=https://intlayer.org&amp;controls=0&amp;rel=1"/>
74
74
 
75
75
  </Tab>
76
76
  <Tab label="Code" value="code">
@@ -50,7 +50,7 @@ Với Intlayer, bạn có thể:
50
50
  <Tabs defaultTab="video">
51
51
  <Tab label="Video" value="video">
52
52
 
53
- <iframe title="The best i18n solution for Vite and Vue? Discover 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/IE3XWkZ6a5U?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
53
+ <iframe title="The best i18n solution for Vite and Vue? Discover 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/IE3XWkZ6a5U?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
54
54
 
55
55
  </Tab>
56
56
  <Tab label="Mã" value="code">
@@ -34,7 +34,7 @@ history:
34
34
 
35
35
  # Đồng bộ JSON (cầu nối i18n) - Đồng bộ JSON với hỗ trợ ICU / i18next
36
36
 
37
- <iframe title="Cách giữ bản dịch JSON của bạn đồng bộ với 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/MpGMxniDHNg?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
37
+ <iframe title="Cách giữ bản dịch JSON của bạn đồng bộ với 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/MpGMxniDHNg?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
38
38
 
39
39
  Sử dụng Intlayer như một tiện ích bổ sung cho bộ công cụ i18n hiện có của bạn. Plugin này giữ cho các thông điệp JSON của bạn đồng bộ với từ điển Intlayer để bạn có thể:
40
40
 
package/docs/vi/readme.md CHANGED
@@ -189,7 +189,22 @@ Khám phá tài liệu toàn diện của chúng tôi để bắt đầu với I
189
189
  <li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React</a></li>
190
190
  <li><a href="https://intlayer.org/doc/environment/vite-and-react" rel=''>Vite + React sử dụng trình biên dịch</a></li>
191
191
  <li><a href="https://intlayer.org/doc/environment/vite-and-react/compiler" rel=''>React-router-v7</a></li>
192
- <li><a href="https://intlayer.org/doc/environment/vite-and-react/tanstack-start" rel=''>Tanstack start</a></li>
192
+ <li><a href="https://intlayer.org/doc/environment/tanstack-start" rel=''>Tanstack start</a>
193
+ <ul>
194
+ <li><a href="https://intlayer.org/doc/environment/tanstack-start/solid" rel=''>Solid</a></li>
195
+ </ul>
196
+ </li>
197
+ <li><a href="https://intlayer.org/doc/environment/astro" rel=''>Astro</a>
198
+ <ul>
199
+ <li><a href="https://intlayer.org/doc/environment/astro/react" rel=''>React</a></li>
200
+ <li><a href="https://intlayer.org/doc/environment/astro/vue" rel=''>Vue</a></li>
201
+ <li><a href="https://intlayer.org/doc/environment/astro/svelte" rel=''>Svelte</a></li>
202
+ <li><a href="https://intlayer.org/doc/environment/astro/solid" rel=''>Solid</a></li>
203
+ <li><a href="https://intlayer.org/doc/environment/astro/vanilla" rel=''>Vanilla JS</a></li>
204
+ <li><a href="https://intlayer.org/doc/environment/astro/lit" rel=''>Lit</a></li>
205
+ </ul>
206
+ </li>
207
+
193
208
  <li><a href="https://intlayer.org/doc/environment/react-native-and-expo" rel=''>React Native</a></li>
194
209
  <li><a href="https://intlayer.org/doc/environment/vite-and-svelte" rel=''>Vite + Svelte</a></li>
195
210
  <li><a href="https://intlayer.org/doc/environment/sveltekit" rel=''>SvelteKit</a></li>
@@ -211,6 +226,17 @@ Khám phá tài liệu toàn diện của chúng tôi để bắt đầu với I
211
226
  </ul>
212
227
  </details>
213
228
 
229
+ <details>
230
+ <summary style="font-size:16px; font-weight:bold;">📊 Benchmark</summary>
231
+ <ul>
232
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/benchmark/nextjs.md" rel=''>Next.js</a></li>
233
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/benchmark/tanstack.md" rel=''>TanStack Start</a></li>
234
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md" rel=''>Vue</a></li>
235
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md" rel=''>Solid</a></li>
236
+ <li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md" rel=''>Svelte</a></li>
237
+ </ul>
238
+ </details>
239
+
214
240
  <details>
215
241
  <summary style="font-size:16px; font-weight:bold;">📰 Blog</summary>
216
242
  <ul>
@@ -25,5 +25,8 @@ Benchmark Bloom 是一套性能基准测试,用于衡量 i18n(国际化)
25
25
 
26
26
  各框架的详细报告与技术文档见下方:
27
27
 
28
- - [**Next.js 基准测试报告**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/benchmark/nextjs.md)
29
- - [**TanStack Start 基准测试报告**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/benchmark/tanstack.md)
28
+ - [**Next.js Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/nextjs.md)
29
+ - [**TanStack Start Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/tanstack.md)
30
+ - [**Vue Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/vue.md)
31
+ - [**Solid Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/solid.md)
32
+ - [**Svelte Benchmark Report**](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/benchmark/svelte.md)
@@ -182,7 +182,7 @@ history:
182
182
 
183
183
  在本次 TanStack Start 基准测试中,没有与 `next-translate`(Next.js 插件 + `getStaticProps`)直接对应的方案。对于那些确实想要 `t()` API 且拥有成熟生态的团队,`react-i18next` 和 `use-intl` 仍是“合理”的选择,但要做好投入大量时间进行优化以避免泄漏的准备。
184
184
 
185
- **(Intlayer)** (`react-intlayer@8.7.5-canary.0`):
185
+ **(Intlayer)** (`react-intlayer@8.7.12`):
186
186
 
187
187
  出于客观性考量,我不会亲自评价 `react-intlayer`,因为这是我自己的解决方案。
188
188
 
@@ -37,7 +37,7 @@ history:
37
37
 
38
38
  # 内容文件
39
39
 
40
- <iframe title="i18n,Markdown,JSON……一站式管理解决方案 | 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/1VHgSY_j9_I?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
40
+ <iframe title="i18n,Markdown,JSON……一站式管理解决方案 | 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/1VHgSY_j9_I?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
41
41
 
42
42
  ## 什么是内容文件?
43
43
 
@@ -31,7 +31,7 @@ history:
31
31
 
32
32
  # Intlayer 内容管理系统(CMS)文档
33
33
 
34
- <iframe title="适用于您的 Web 应用的可视化编辑器 + CMS: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/UDDTnirwi_4?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
34
+ <iframe title="适用于您的 Web 应用的可视化编辑器 + CMS: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/UDDTnirwi_4?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
35
35
 
36
36
  Intlayer CMS 是一个应用程序,允许您将 Intlayer 项目的内容外部化。
37
37
 
@@ -24,7 +24,7 @@ history:
24
24
 
25
25
  # Intlayer 可视化编辑器文档
26
26
 
27
- <iframe title="Visual Editor + CMS for Your Web App: Intlayer Explained" 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/UDDTnirwi_4?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
27
+ <iframe title="Visual Editor + CMS for Your Web App: Intlayer Explained" 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/UDDTnirwi_4?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
28
28
 
29
29
  Intlayer 可视化编辑器是一种工具,可以将您的网站包装起来,通过可视化编辑器与您的内容声明文件进行交互。
30
30
 
@@ -203,6 +203,7 @@ import {
203
203
  getIntlayer,
204
204
  getLocaleFromPath,
205
205
  getLocalizedUrl,
206
+ getHTMLTextDir,
206
207
  getPrefix,
207
208
  localeMap,
208
209
  defaultLocale,
@@ -220,7 +221,7 @@ const { greeting } = getIntlayer("lit-demo", locale);
220
221
  ---
221
222
 
222
223
  <!doctype html>
223
- <html lang={locale}>
224
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
224
225
  <head>
225
226
  <meta charset="utf-8" />
226
227
  <meta name="viewport" content="width=device-width" />
@@ -200,6 +200,7 @@ import {
200
200
  getIntlayer,
201
201
  getLocaleFromPath,
202
202
  getLocalizedUrl,
203
+ getHTMLTextDir,
203
204
  getPrefix,
204
205
  localeMap,
205
206
  defaultLocale,
@@ -218,7 +219,7 @@ const { title } = getIntlayer("app", locale);
218
219
  ---
219
220
 
220
221
  <!doctype html>
221
- <html lang={locale}>
222
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
222
223
  <head>
223
224
  <meta charset="utf-8" />
224
225
  <meta name="viewport" content="width=device-width" />
@@ -200,6 +200,7 @@ import {
200
200
  getIntlayer,
201
201
  getLocaleFromPath,
202
202
  getLocalizedUrl,
203
+ getHTMLTextDir,
203
204
  getPrefix,
204
205
  localeMap,
205
206
  defaultLocale,
@@ -218,7 +219,7 @@ const { title } = getIntlayer("app", locale);
218
219
  ---
219
220
 
220
221
  <!doctype html>
221
- <html lang={locale}>
222
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
222
223
  <head>
223
224
  <meta charset="utf-8" />
224
225
  <meta name="viewport" content="width=device-width" />
@@ -196,6 +196,7 @@ import {
196
196
  getIntlayer,
197
197
  getLocaleFromPath,
198
198
  getLocalizedUrl,
199
+ getHTMLTextDir,
199
200
  getPrefix,
200
201
  localeMap,
201
202
  defaultLocale,
@@ -214,7 +215,7 @@ const { title } = getIntlayer("app", locale);
214
215
  ---
215
216
 
216
217
  <!doctype html>
217
- <html lang={locale}>
218
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
218
219
  <head>
219
220
  <meta charset="utf-8" />
220
221
  <meta name="viewport" content="width=device-width" />
@@ -196,6 +196,7 @@ import {
196
196
  getIntlayer,
197
197
  getLocaleFromPath,
198
198
  getLocalizedUrl,
199
+ getHTMLTextDir,
199
200
  getPrefix,
200
201
  localeMap,
201
202
  defaultLocale,
@@ -214,7 +215,7 @@ const { title } = getIntlayer("app", locale);
214
215
  ---
215
216
 
216
217
  <!doctype html>
217
- <html lang={locale}>
218
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
218
219
  <head>
219
220
  <meta charset="utf-8" />
220
221
  <meta name="viewport" content="width=device-width" />
@@ -220,7 +220,7 @@ const { greeting, description, switchLocale } = getIntlayer("app", locale);
220
220
  ---
221
221
 
222
222
  <!doctype html>
223
- <html lang={locale}>
223
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
224
224
  <head>
225
225
  <meta charset="utf-8" />
226
226
  <meta name="viewport" content="width=device-width" />
@@ -196,6 +196,7 @@ import {
196
196
  getIntlayer,
197
197
  getLocaleFromPath,
198
198
  getLocalizedUrl,
199
+ getHTMLTextDir,
199
200
  getPrefix,
200
201
  localeMap,
201
202
  defaultLocale,
@@ -214,7 +215,7 @@ const { title } = getIntlayer("app", locale);
214
215
  ---
215
216
 
216
217
  <!doctype html>
217
- <html lang={locale}>
218
+ <html lang={locale} dir={getHTMLTextDir(locale)}>
218
219
  <head>
219
220
  <meta charset="utf-8" />
220
221
  <meta name="viewport" content="width=device-width" />
@@ -32,7 +32,7 @@ history:
32
32
  <Tabs defaultTab="video">
33
33
  <Tab label="视频" value="video">
34
34
 
35
- <iframe title="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/e_PPG7PTqGU?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
35
+ <iframe title="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/e_PPG7PTqGU?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
36
36
 
37
37
  </Tab>
38
38
  <Tab label="代码" value="code">
@@ -59,7 +59,7 @@ history:
59
59
  </Tab>
60
60
  </Tabs>
61
61
 
62
- <iframe title="Next.js 最佳国际化解决方案?探索 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/e_PPG7PTqGU?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
62
+ <iframe title="Next.js 最佳国际化解决方案?探索 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/e_PPG7PTqGU?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
63
63
 
64
64
  请参阅 GitHub 上的[应用模板](https://github.com/aymericzip/intlayer-next-15-template)。
65
65
 
@@ -34,7 +34,7 @@ history:
34
34
  <Tabs defaultTab="video">
35
35
  <Tab label="视频" value="video">
36
36
 
37
- <iframe title="Next.js 最佳 i18n 解决方案?探索 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/e_PPG7PTqGU?autoplay=0&amp;origin=http://intlayer.org&amp;controls=0&amp;rel=1"/>
37
+ <iframe title="Next.js 最佳 i18n 解决方案?探索 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/e_PPG7PTqGU?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
38
38
 
39
39
  </Tab>
40
40
  <Tab label="代码" value="code">