@intlayer/docs 5.5.11 → 5.5.12

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 (313) hide show
  1. package/blog/ar/intlayer_with_next-intl.md +0 -1
  2. package/blog/ar/list_i18n_technologies/CMS/wordpress.md +1 -1
  3. package/blog/ar/list_i18n_technologies/frameworks/angular.md +1 -1
  4. package/blog/ar/list_i18n_technologies/frameworks/flutter.md +1 -1
  5. package/blog/ar/list_i18n_technologies/frameworks/react-native.md +1 -1
  6. package/blog/ar/list_i18n_technologies/frameworks/react.md +1 -1
  7. package/blog/ar/list_i18n_technologies/frameworks/svelte.md +1 -1
  8. package/blog/ar/list_i18n_technologies/frameworks/vue.md +1 -1
  9. package/blog/ar/what_is_internationalization.md +2 -2
  10. package/blog/de/intlayer_with_next-intl.md +0 -1
  11. package/blog/de/list_i18n_technologies/CMS/wordpress.md +1 -1
  12. package/blog/de/list_i18n_technologies/frameworks/angular.md +1 -1
  13. package/blog/de/list_i18n_technologies/frameworks/flutter.md +1 -1
  14. package/blog/de/list_i18n_technologies/frameworks/react-native.md +1 -1
  15. package/blog/de/list_i18n_technologies/frameworks/react.md +1 -1
  16. package/blog/de/list_i18n_technologies/frameworks/svelte.md +1 -1
  17. package/blog/de/list_i18n_technologies/frameworks/vue.md +1 -1
  18. package/blog/de/what_is_internationalization.md +2 -2
  19. package/blog/en/intlayer_with_next-intl.md +0 -1
  20. package/blog/en/list_i18n_technologies/CMS/wordpress.md +1 -1
  21. package/blog/en/list_i18n_technologies/frameworks/angular.md +1 -1
  22. package/blog/en/list_i18n_technologies/frameworks/flutter.md +1 -1
  23. package/blog/en/list_i18n_technologies/frameworks/react-native.md +1 -1
  24. package/blog/en/list_i18n_technologies/frameworks/react.md +1 -1
  25. package/blog/en/list_i18n_technologies/frameworks/svelte.md +1 -1
  26. package/blog/en/list_i18n_technologies/frameworks/vue.md +1 -1
  27. package/blog/en/what_is_internationalization.md +2 -2
  28. package/blog/en-GB/intlayer_with_next-intl.md +0 -1
  29. package/blog/en-GB/list_i18n_technologies/CMS/wordpress.md +1 -1
  30. package/blog/en-GB/list_i18n_technologies/frameworks/angular.md +1 -1
  31. package/blog/en-GB/list_i18n_technologies/frameworks/flutter.md +1 -1
  32. package/blog/en-GB/list_i18n_technologies/frameworks/react-native.md +1 -1
  33. package/blog/en-GB/list_i18n_technologies/frameworks/svelte.md +1 -1
  34. package/blog/en-GB/list_i18n_technologies/frameworks/vue.md +1 -1
  35. package/blog/en-GB/what_is_internationalization.md +2 -2
  36. package/blog/es/intlayer_with_next-intl.md +0 -1
  37. package/blog/es/list_i18n_technologies/CMS/wordpress.md +1 -1
  38. package/blog/es/list_i18n_technologies/frameworks/angular.md +1 -1
  39. package/blog/es/list_i18n_technologies/frameworks/flutter.md +1 -1
  40. package/blog/es/list_i18n_technologies/frameworks/react-native.md +1 -1
  41. package/blog/es/list_i18n_technologies/frameworks/react.md +1 -1
  42. package/blog/es/list_i18n_technologies/frameworks/svelte.md +1 -1
  43. package/blog/es/list_i18n_technologies/frameworks/vue.md +1 -1
  44. package/blog/es/what_is_internationalization.md +2 -2
  45. package/blog/fr/intlayer_with_next-intl.md +0 -1
  46. package/blog/fr/list_i18n_technologies/CMS/wordpress.md +1 -1
  47. package/blog/fr/list_i18n_technologies/frameworks/angular.md +1 -1
  48. package/blog/fr/list_i18n_technologies/frameworks/flutter.md +1 -1
  49. package/blog/fr/list_i18n_technologies/frameworks/react-native.md +1 -1
  50. package/blog/fr/list_i18n_technologies/frameworks/react.md +1 -1
  51. package/blog/fr/list_i18n_technologies/frameworks/svelte.md +1 -1
  52. package/blog/fr/list_i18n_technologies/frameworks/vue.md +1 -1
  53. package/blog/fr/what_is_internationalization.md +2 -2
  54. package/blog/hi/list_i18n_technologies/CMS/wordpress.md +1 -1
  55. package/blog/hi/list_i18n_technologies/frameworks/angular.md +1 -1
  56. package/blog/hi/list_i18n_technologies/frameworks/flutter.md +1 -1
  57. package/blog/hi/list_i18n_technologies/frameworks/react-native.md +1 -1
  58. package/blog/hi/list_i18n_technologies/frameworks/react.md +1 -1
  59. package/blog/hi/list_i18n_technologies/frameworks/svelte.md +1 -1
  60. package/blog/hi/list_i18n_technologies/frameworks/vue.md +1 -1
  61. package/blog/hi/what_is_internationalization.md +2 -2
  62. package/blog/it/intlayer_with_next-intl.md +0 -1
  63. package/blog/it/list_i18n_technologies/CMS/wordpress.md +1 -1
  64. package/blog/it/list_i18n_technologies/frameworks/angular.md +1 -1
  65. package/blog/it/list_i18n_technologies/frameworks/react-native.md +1 -1
  66. package/blog/it/list_i18n_technologies/frameworks/react.md +1 -1
  67. package/blog/it/list_i18n_technologies/frameworks/svelte.md +1 -1
  68. package/blog/it/list_i18n_technologies/frameworks/vue.md +1 -1
  69. package/blog/it/what_is_internationalization.md +2 -2
  70. package/blog/ja/intlayer_with_next-intl.md +0 -1
  71. package/blog/ja/list_i18n_technologies/CMS/wordpress.md +1 -1
  72. package/blog/ja/list_i18n_technologies/frameworks/angular.md +1 -1
  73. package/blog/ja/list_i18n_technologies/frameworks/flutter.md +1 -1
  74. package/blog/ja/list_i18n_technologies/frameworks/react-native.md +1 -1
  75. package/blog/ja/list_i18n_technologies/frameworks/react.md +1 -1
  76. package/blog/ja/list_i18n_technologies/frameworks/svelte.md +1 -1
  77. package/blog/ja/list_i18n_technologies/frameworks/vue.md +1 -1
  78. package/blog/ja/what_is_internationalization.md +2 -2
  79. package/blog/ko/intlayer_with_next-intl.md +0 -1
  80. package/blog/ko/list_i18n_technologies/CMS/wordpress.md +1 -1
  81. package/blog/ko/list_i18n_technologies/frameworks/angular.md +1 -1
  82. package/blog/ko/list_i18n_technologies/frameworks/react-native.md +1 -1
  83. package/blog/ko/list_i18n_technologies/frameworks/react.md +1 -1
  84. package/blog/ko/list_i18n_technologies/frameworks/vue.md +1 -1
  85. package/blog/pt/intlayer_with_next-intl.md +0 -1
  86. package/blog/pt/list_i18n_technologies/CMS/wordpress.md +1 -1
  87. package/blog/pt/list_i18n_technologies/frameworks/angular.md +1 -1
  88. package/blog/pt/list_i18n_technologies/frameworks/flutter.md +1 -1
  89. package/blog/pt/list_i18n_technologies/frameworks/react-native.md +1 -1
  90. package/blog/pt/list_i18n_technologies/frameworks/react.md +1 -1
  91. package/blog/pt/list_i18n_technologies/frameworks/svelte.md +1 -1
  92. package/blog/pt/list_i18n_technologies/frameworks/vue.md +1 -1
  93. package/blog/pt/what_is_internationalization.md +2 -2
  94. package/blog/ru/intlayer_with_next-intl.md +0 -1
  95. package/blog/ru/list_i18n_technologies/CMS/wordpress.md +1 -1
  96. package/blog/ru/list_i18n_technologies/frameworks/angular.md +1 -1
  97. package/blog/ru/list_i18n_technologies/frameworks/flutter.md +1 -1
  98. package/blog/ru/list_i18n_technologies/frameworks/react-native.md +1 -1
  99. package/blog/ru/list_i18n_technologies/frameworks/react.md +1 -1
  100. package/blog/ru/list_i18n_technologies/frameworks/svelte.md +1 -1
  101. package/blog/ru/list_i18n_technologies/frameworks/vue.md +1 -1
  102. package/blog/ru/what_is_internationalization.md +2 -2
  103. package/blog/zh/intlayer_with_next-intl.md +0 -1
  104. package/blog/zh/list_i18n_technologies/CMS/wordpress.md +1 -1
  105. package/blog/zh/list_i18n_technologies/frameworks/angular.md +1 -1
  106. package/blog/zh/list_i18n_technologies/frameworks/flutter.md +1 -1
  107. package/blog/zh/list_i18n_technologies/frameworks/react-native.md +1 -1
  108. package/blog/zh/list_i18n_technologies/frameworks/react.md +1 -1
  109. package/blog/zh/list_i18n_technologies/frameworks/svelte.md +1 -1
  110. package/blog/zh/list_i18n_technologies/frameworks/vue.md +1 -1
  111. package/blog/zh/what_is_internationalization.md +2 -2
  112. package/dist/cjs/blog.cjs +2 -2
  113. package/dist/cjs/blog.cjs.map +1 -1
  114. package/dist/cjs/common.cjs +17 -6
  115. package/dist/cjs/common.cjs.map +1 -1
  116. package/dist/cjs/doc.cjs +2 -2
  117. package/dist/cjs/doc.cjs.map +1 -1
  118. package/dist/cjs/frequentQuestions.cjs +2 -2
  119. package/dist/cjs/frequentQuestions.cjs.map +1 -1
  120. package/dist/cjs/generated/blog.entry.cjs +1152 -252
  121. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  122. package/dist/cjs/generated/docs.entry.cjs +3778 -1124
  123. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  124. package/dist/cjs/generated/frequentQuestions.entry.cjs +794 -161
  125. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  126. package/dist/cjs/generated/legal.entry.cjs +32 -31
  127. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  128. package/dist/cjs/legal.cjs +2 -2
  129. package/dist/cjs/legal.cjs.map +1 -1
  130. package/dist/esm/blog.mjs +2 -2
  131. package/dist/esm/blog.mjs.map +1 -1
  132. package/dist/esm/common.mjs +17 -6
  133. package/dist/esm/common.mjs.map +1 -1
  134. package/dist/esm/doc.mjs +2 -2
  135. package/dist/esm/doc.mjs.map +1 -1
  136. package/dist/esm/frequentQuestions.mjs +2 -2
  137. package/dist/esm/frequentQuestions.mjs.map +1 -1
  138. package/dist/esm/generated/blog.entry.mjs +1151 -252
  139. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  140. package/dist/esm/generated/docs.entry.mjs +3777 -1124
  141. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  142. package/dist/esm/generated/frequentQuestions.entry.mjs +793 -161
  143. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  144. package/dist/esm/generated/legal.entry.mjs +31 -31
  145. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  146. package/dist/esm/legal.mjs +2 -2
  147. package/dist/esm/legal.mjs.map +1 -1
  148. package/dist/types/blog.d.ts +2 -2
  149. package/dist/types/blog.d.ts.map +1 -1
  150. package/dist/types/common.d.ts +3 -2
  151. package/dist/types/common.d.ts.map +1 -1
  152. package/dist/types/doc.d.ts +2 -2
  153. package/dist/types/doc.d.ts.map +1 -1
  154. package/dist/types/frequentQuestions.d.ts +2 -2
  155. package/dist/types/frequentQuestions.d.ts.map +1 -1
  156. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  157. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  158. package/dist/types/generated/frequentQuestions.entry.d.ts +1 -0
  159. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  160. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  161. package/dist/types/legal.d.ts +2 -2
  162. package/dist/types/legal.d.ts.map +1 -1
  163. package/docs/ar/intlayer_with_vite+react.md +100 -108
  164. package/docs/de/intlayer_with_vite+react.md +121 -142
  165. package/docs/en/CI_CD.md +3 -1
  166. package/docs/en/autoFill.md +3 -1
  167. package/docs/en/configuration.md +4 -1
  168. package/docs/en/dictionary/condition.md +3 -1
  169. package/docs/en/dictionary/content_extention_customization.md +3 -1
  170. package/docs/en/dictionary/enumeration.md +3 -1
  171. package/docs/en/dictionary/file.md +3 -1
  172. package/docs/en/dictionary/function_fetching.md +3 -1
  173. package/docs/en/dictionary/get_started.md +3 -1
  174. package/docs/en/dictionary/insertion.md +3 -1
  175. package/docs/en/dictionary/markdown.md +3 -1
  176. package/docs/en/dictionary/nesting.md +3 -1
  177. package/docs/en/dictionary/translation.md +3 -1
  178. package/docs/en/how_works_intlayer.md +3 -1
  179. package/docs/en/index.md +3 -1
  180. package/docs/en/interest_of_intlayer.md +3 -1
  181. package/docs/en/intlayer_CMS.md +3 -1
  182. package/docs/en/intlayer_cli.md +3 -1
  183. package/docs/en/intlayer_visual_editor.md +3 -1
  184. package/docs/en/intlayer_with_angular.md +3 -1
  185. package/docs/en/intlayer_with_create_react_app.md +3 -1
  186. package/docs/en/intlayer_with_express.md +3 -1
  187. package/docs/en/intlayer_with_lynx+react.md +3 -1
  188. package/docs/en/intlayer_with_nextjs_14.md +6 -1
  189. package/docs/en/intlayer_with_nextjs_15.md +5 -1
  190. package/docs/en/intlayer_with_nextjs_page_router.md +5 -1
  191. package/docs/en/intlayer_with_nuxt.md +3 -1
  192. package/docs/en/intlayer_with_react_native+expo.md +3 -1
  193. package/docs/en/intlayer_with_vite+preact.md +3 -1
  194. package/docs/en/intlayer_with_vite+react.md +9 -7
  195. package/docs/en/intlayer_with_vite+solid.md +3 -1
  196. package/docs/en/intlayer_with_vite+svelte.md +3 -1
  197. package/docs/en/intlayer_with_vite+vue.md +3 -1
  198. package/docs/en/introduction.md +3 -1
  199. package/docs/en/mcp_server.md +42 -1
  200. package/docs/en/packages/@intlayer/api/index.md +3 -1
  201. package/docs/en/packages/@intlayer/chokidar/index.md +3 -1
  202. package/docs/en/packages/@intlayer/cli/index.md +3 -1
  203. package/docs/en/packages/@intlayer/config/index.md +3 -1
  204. package/docs/en/packages/@intlayer/core/index.md +3 -1
  205. package/docs/en/packages/@intlayer/design-system/index.md +3 -1
  206. package/docs/en/packages/@intlayer/dictionary-entry/index.md +3 -1
  207. package/docs/en/packages/@intlayer/editor/index.md +3 -1
  208. package/docs/en/packages/@intlayer/editor-react/index.md +3 -1
  209. package/docs/en/packages/@intlayer/webpack/index.md +3 -1
  210. package/docs/en/packages/angular-intlayer/index.md +3 -1
  211. package/docs/en/packages/express-intlayer/index.md +3 -1
  212. package/docs/en/packages/express-intlayer/t.md +3 -1
  213. package/docs/en/packages/intlayer/getConfiguration.md +3 -1
  214. package/docs/en/packages/intlayer/getEnumeration.md +3 -1
  215. package/docs/en/packages/intlayer/getHTMLTextDir.md +3 -1
  216. package/docs/en/packages/intlayer/getLocaleLang.md +3 -1
  217. package/docs/en/packages/intlayer/getLocaleName.md +3 -1
  218. package/docs/en/packages/intlayer/getLocalizedUrl.md +3 -1
  219. package/docs/en/packages/intlayer/getMultilingualUrls.md +3 -1
  220. package/docs/en/packages/intlayer/getPathWithoutLocale.md +3 -1
  221. package/docs/en/packages/intlayer/getTranslation.md +3 -1
  222. package/docs/en/packages/intlayer/getTranslationContent.md +3 -1
  223. package/docs/en/packages/intlayer/index.md +3 -1
  224. package/docs/en/packages/intlayer-cli/index.md +3 -1
  225. package/docs/en/packages/intlayer-editor/index.md +3 -1
  226. package/docs/en/packages/lynx-intlayer/index.md +3 -1
  227. package/docs/en/packages/next-intlayer/index.md +3 -1
  228. package/docs/en/packages/next-intlayer/t.md +3 -1
  229. package/docs/en/packages/next-intlayer/useDictionary.md +3 -1
  230. package/docs/en/packages/next-intlayer/useIntlayer.md +3 -1
  231. package/docs/en/packages/next-intlayer/useIntlayerAsync.md +3 -1
  232. package/docs/en/packages/next-intlayer/useLocale.md +3 -1
  233. package/docs/en/packages/nuxt-intlayer/index.md +3 -1
  234. package/docs/en/packages/preact-intlayer/index.md +3 -1
  235. package/docs/en/packages/react-intlayer/index.md +3 -1
  236. package/docs/en/packages/react-intlayer/t.md +3 -1
  237. package/docs/en/packages/react-intlayer/useDictionary.md +3 -1
  238. package/docs/en/packages/react-intlayer/useIntlayer.md +3 -1
  239. package/docs/en/packages/react-intlayer/useIntlayerAsync.md +3 -1
  240. package/docs/en/packages/react-intlayer/useLocale.md +3 -1
  241. package/docs/en/packages/react-native-intlayer/index.md +3 -1
  242. package/docs/en/packages/react-scripts-intlayer/index.md +3 -1
  243. package/docs/en/packages/solid-intlayer/index.md +3 -1
  244. package/docs/en/packages/svelte-intlayer/index.md +3 -1
  245. package/docs/en/packages/vite-intlayer/index.md +3 -1
  246. package/docs/en/packages/vue-intlayer/index.md +3 -1
  247. package/docs/en/per_locale_file.md +3 -1
  248. package/docs/en/roadmap.md +5 -2
  249. package/docs/en/vs_code_extension.md +3 -1
  250. package/docs/en-GB/intlayer_with_vite+react.md +64 -83
  251. package/docs/es/intlayer_with_vite+react.md +91 -94
  252. package/docs/fr/intlayer_with_vite+react.md +73 -65
  253. package/docs/hi/intlayer_with_vite+react.md +107 -107
  254. package/docs/it/intlayer_with_vite+react.md +156 -112
  255. package/docs/ja/intlayer_with_vite+react.md +153 -218
  256. package/docs/ko/intlayer_with_vite+react.md +116 -148
  257. package/docs/ko/packages/intlayer/getLocalizedUrl.md +1 -23
  258. package/docs/pt/intlayer_with_vite+react.md +110 -132
  259. package/docs/ru/intlayer_with_vite+react.md +98 -83
  260. package/docs/zh/intlayer_with_vite+react.md +147 -184
  261. package/docs/zh/packages/intlayer/getLocalizedUrl.md +1 -23
  262. package/frequent_questions/ar/build_error_CI_CD.md +75 -0
  263. package/frequent_questions/de/build_error_CI_CD.md +75 -0
  264. package/frequent_questions/en/build_error_CI_CD.md +75 -0
  265. package/frequent_questions/en-GB/build_error_CI_CD.md +75 -0
  266. package/frequent_questions/es/build_error_CI_CD.md +75 -0
  267. package/frequent_questions/fr/build_error_CI_CD.md +75 -0
  268. package/frequent_questions/hi/build_error_CI_CD.md +75 -0
  269. package/frequent_questions/it/build_error_CI_CD.md +75 -0
  270. package/frequent_questions/ja/build_error_CI_CD.md +75 -0
  271. package/frequent_questions/ja/intlayer_command_undefined.md +3 -3
  272. package/frequent_questions/ko/build_error_CI_CD.md +75 -0
  273. package/frequent_questions/ko/intlayer_command_undefined.md +3 -3
  274. package/frequent_questions/pt/build_error_CI_CD.md +75 -0
  275. package/frequent_questions/ru/build_error_CI_CD.md +75 -0
  276. package/frequent_questions/zh/build_error_CI_CD.md +75 -0
  277. package/frequent_questions/zh/intlayer_command_undefined.md +3 -3
  278. package/legal/ar/privacy_notice.md +83 -0
  279. package/legal/ar/terms_of_service.md +55 -0
  280. package/legal/de/privacy_notice.md +83 -0
  281. package/legal/de/terms_of_service.md +55 -0
  282. package/legal/en/privacy_notice.md +83 -0
  283. package/legal/en/terms_of_service.md +55 -0
  284. package/legal/en-GB/privacy_notice.md +83 -0
  285. package/legal/en-GB/terms_of_service.md +55 -0
  286. package/legal/es/privacy_notice.md +83 -0
  287. package/legal/es/terms_of_service.md +55 -0
  288. package/legal/fr/privacy_notice.md +83 -0
  289. package/legal/fr/terms_of_service.md +55 -0
  290. package/legal/hi/privacy_notice.md +83 -0
  291. package/legal/hi/terms_of_service.md +55 -0
  292. package/legal/it/privacy_notice.md +83 -0
  293. package/legal/it/terms_of_service.md +55 -0
  294. package/legal/ja/privacy_notice.md +83 -0
  295. package/legal/ja/terms_of_service.md +55 -0
  296. package/legal/ko/privacy_notice.md +83 -0
  297. package/legal/ko/terms_of_service.md +55 -0
  298. package/legal/pt/privacy_notice.md +83 -0
  299. package/legal/pt/terms_of_service.md +55 -0
  300. package/legal/ru/privacy_notice.md +83 -0
  301. package/legal/ru/terms_of_service.md +55 -0
  302. package/legal/zh/privacy_notice.md +83 -0
  303. package/legal/zh/terms_of_service.md +55 -0
  304. package/package.json +7 -6
  305. package/src/blog.ts +6 -4
  306. package/src/common.ts +23 -7
  307. package/src/doc.ts +6 -4
  308. package/src/frequentQuestions.ts +6 -4
  309. package/src/generated/blog.entry.ts +1177 -280
  310. package/src/generated/docs.entry.ts +3868 -1217
  311. package/src/generated/frequentQuestions.entry.ts +808 -178
  312. package/src/generated/legal.entry.ts +34 -36
  313. package/src/legal.ts +6 -4
@@ -0,0 +1,55 @@
1
+ ---
2
+ createdAt: 2025-04-18
3
+ updatedAt: 2025-06-29
4
+ title: Termos de Serviço do Intlayer
5
+ description: Descubra como o Intlayer lida com as informações coletadas através do nosso site e CMS. Siga a documentação para entender os diferentes formatos e casos de uso.
6
+ keywords:
7
+ - Internacionalização
8
+ - Documentação
9
+ - Intlayer
10
+ - Termos de Serviço
11
+ - Serviço
12
+ - Uso
13
+ - Licença
14
+ - Responsabilidade
15
+ - Privacidade
16
+ - Contribuições
17
+ - Atribuição
18
+ - Modificação dos Termos
19
+ slugs:
20
+ - terms-of-service
21
+ ---
22
+
23
+ # Termos de Uso do Intlayer
24
+
25
+ ## 1. Aceitação dos Termos
26
+
27
+ Ao usar o Intlayer, você concorda em estar vinculado a estes termos de uso. Se você não aceitar estes termos, por favor, não utilize a ferramenta.
28
+
29
+ ## 2. Licença
30
+
31
+ O Intlayer é distribuído sob a **licença Apache 2.0**, que permite o uso, modificação e distribuição do código tanto para projetos de código aberto quanto comerciais. Os usuários têm permissão para modificar o código-fonte e enviar contribuições via pull requests de acordo com as diretrizes estabelecidas em nosso [guia de contribuição](https://github.com/aymericzip/intlayer/blob/main/CONTRIBUTING.md). O roubo de código para uso comercial é estritamente proibido.
32
+
33
+ ## 3. Uso Comercial
34
+
35
+ Você tem permissão para usar o Intlayer em projetos comerciais. No entanto, reutilizar o código para criar ferramentas concorrentes diretas baseadas no Intlayer sem uma transformação significativa ou uma adição substancial de valor é proibido.
36
+
37
+ ## 4. Responsabilidade
38
+
39
+ Os mantenedores do Intlayer se esforçam para corrigir bugs e problemas de segurança assim que são descobertos. No entanto, eles isentam-se de qualquer responsabilidade por danos resultantes desses problemas nas infraestruturas dos usuários. Incentivamos os usuários a reportar problemas através do nosso [sistema de acompanhamento de issues](https://github.com/aymericzip/intlayer/issues).
40
+
41
+ ## 5. Privacidade
42
+
43
+ O Intlayer não coleta nem armazena quaisquer dados pessoais dos usuários.
44
+
45
+ ## 6. Contribuições
46
+
47
+ Os usuários são incentivados a contribuir para o Intlayer seguindo as diretrizes fornecidas em nosso guia de contribuição. Qualquer código submetido deve aderir aos padrões de qualidade estabelecidos e será revisado pelos mantenedores antes da integração.
48
+
49
+ ## 7. Atribuição
50
+
51
+ Qualquer ferramenta desenvolvida para estender ou utilizar o código do Intlayer deve creditar claramente o Intlayer como base do código. Essa atribuição deve ser visível no código-fonte, bem como em qualquer documentação para usuários ou promocional.
52
+
53
+ ## 8. Modificação dos Termos
54
+
55
+ Estes termos de uso podem ser modificados a qualquer momento. Os usuários serão informados sobre quaisquer mudanças significativas nos termos de uso e devem aceitar as alterações para continuar utilizando o Intlayer.
@@ -0,0 +1,83 @@
1
+ ---
2
+ createdAt: 2025-04-18
3
+ updatedAt: 2025-06-29
4
+ title: Уведомление о конфиденциальности Intlayer
5
+ description: Узнайте, как Intlayer обрабатывает информацию, собранную через наш веб-сайт и CMS. Следуйте документации, чтобы понять различные форматы и варианты использования.
6
+ keywords:
7
+ - Интернационализация
8
+ - Документация
9
+ - Intlayer
10
+ - Конфиденциальность
11
+ - Уведомление
12
+ - Файлы cookie
13
+ - Отслеживание
14
+ - Аналитика
15
+ - Google Analytics
16
+ - Meta (Facebook) Pixel
17
+ - Аутентификация
18
+ - Данные пользователя
19
+ slugs:
20
+ - privacy-notice
21
+ ---
22
+
23
+ # Уведомление о конфиденциальности Intlayer
24
+
25
+ ## Введение
26
+
27
+ В Intlayer мы серьезно относимся к конфиденциальности. В этом уведомлении объясняется, как мы обрабатываем информацию, собранную через наш веб-сайт и CMS.
28
+
29
+ ## Контакт
30
+
31
+ Если у вас есть вопросы или опасения по поводу конфиденциальности, пожалуйста, свяжитесь с нами по следующему адресу: [contact@intlayer.org](mailto:contact@intlayer.org).
32
+
33
+ ## Использование файлов cookie и технологий отслеживания
34
+
35
+ Мы используем **Google Analytics** и **Meta (Facebook) Pixel** для анализа использования нашего веб-сайта и улучшения наших услуг. Эти инструменты генерируют статистику и другую информацию о сайте с помощью файлов cookie, хранящихся на устройствах пользователей.
36
+
37
+ Для получения дополнительной информации:
38
+
39
+ - [Политика конфиденциальности Google](https://policies.google.com/privacy)
40
+ - [Политика конфиденциальности Meta](https://www.facebook.com/privacy/policy)
41
+
42
+ ## Аутентификация и данные пользователя
43
+
44
+ Доступ к CMS Intlayer требует аутентификации пользователя. Мы предлагаем аутентификацию по электронной почте и паролю, а также вход через сторонние сервисы **Google** и **GitHub**.
45
+
46
+ В процессе аутентификации мы собираем:
47
+
48
+ - Адрес электронной почты
49
+ - Отображаемое имя (или выбранное имя)
50
+
51
+ Пользователи также могут получить доступ к CMS через токены доступа, связанные с их аккаунтом. Эти токены привязаны к тем же данным аутентификации.
52
+
53
+ ## Хранение данных и безопасность
54
+
55
+ Данные аутентификации пользователей хранятся в базе данных **MongoDB**, размещённой на **cloud.mongodb.com**:
56
+
57
+ - **Регион:** AWS / Орегон (us-west-2)
58
+ - **Тип:** Replica Set (3 узла)
59
+ - **Безопасность паролей:** Все пароли хранятся в виде хешей с использованием стандартных отраслевых методов.
60
+
61
+ Мы не храним никаких лишних персональных данных, кроме тех, которые необходимы для аутентификации и безопасного доступа к CMS.
62
+
63
+ ## Передача данных третьим лицам
64
+
65
+ Мы **не** продаём и не передаём ваши персональные данные третьим лицам, за исключением случаев, когда это необходимо для аналитики (Google Analytics, Facebook Pixel) или в рамках процесса аутентификации (вход через Google или GitHub).
66
+
67
+ ## Права пользователей
68
+
69
+ Как пользователь, вы имеете право:
70
+
71
+ - Получать доступ к персональным данным, которые мы храним о вас
72
+ - Запрашивать исправление или удаление ваших данных
73
+ - Отзывать доступ или удалять ваш аккаунт
74
+
75
+ По любым вопросам, связанным с вашими данными, обращайтесь к нам по адресу [contact@intlayer.org](mailto:contact@intlayer.org).
76
+
77
+ ## Изменения в настоящем уведомлении
78
+
79
+ Мы можем время от времени обновлять это уведомление о конфиденциальности. Рекомендуется регулярно проверять эту страницу, чтобы быть в курсе любых изменений.
80
+
81
+ ---
82
+
83
+ Сообщите, если вы хотите более формальный стиль, добавить упоминания о GDPR/CCPA или адаптировать текст для юридической страницы вашего сайта.
@@ -0,0 +1,55 @@
1
+ ---
2
+ createdAt: 2025-04-18
3
+ updatedAt: 2025-06-29
4
+ title: Условия использования Intlayer
5
+ description: Узнайте, как Intlayer обрабатывает информацию, собранную через наш веб-сайт и CMS. Следуйте документации, чтобы понять различные форматы и варианты использования.
6
+ keywords:
7
+ - Интернационализация
8
+ - Документация
9
+ - Intlayer
10
+ - Условия использования
11
+ - Сервис
12
+ - Использование
13
+ - Лицензия
14
+ - Ответственность
15
+ - Конфиденциальность
16
+ - Вклад
17
+ - Атрибуция
18
+ - Изменение условий
19
+ slugs:
20
+ - terms-of-service
21
+ ---
22
+
23
+ # Условия использования Intlayer
24
+
25
+ ## 1. Принятие условий
26
+
27
+ Используя Intlayer, вы соглашаетесь соблюдать эти условия использования. Если вы не принимаете эти условия, пожалуйста, не используйте этот инструмент.
28
+
29
+ ## 2. Лицензия
30
+
31
+ Intlayer распространяется под **лицензией Apache 2.0**, которая разрешает использование, модификацию и распространение кода как для проектов с открытым исходным кодом, так и для коммерческих проектов. Пользователям разрешается изменять исходный код и отправлять вклад через pull-запросы в соответствии с руководством, изложенным в нашем [руководстве по внесению вклада](https://github.com/aymericzip/intlayer/blob/main/CONTRIBUTING.md). Кража кода для коммерческого использования строго запрещена.
32
+
33
+ ## 3. Коммерческое использование
34
+
35
+ Вам разрешено использовать Intlayer для коммерческих проектов. Однако повторное использование кода для создания прямых конкурирующих инструментов на основе Intlayer без значительной трансформации или существенного добавления ценности запрещено.
36
+
37
+ ## 4. Ответственность
38
+
39
+ Поддерживающие Intlayer стремятся исправлять ошибки и проблемы безопасности сразу после их обнаружения. Тем не менее, они не несут ответственности за ущерб, вызванный такими проблемами в инфраструктуре пользователей. Мы призываем пользователей сообщать о проблемах через нашу [систему отслеживания проблем](https://github.com/aymericzip/intlayer/issues).
40
+
41
+ ## 5. Конфиденциальность
42
+
43
+ Intlayer не собирает и не хранит никаких персональных данных пользователей.
44
+
45
+ ## 6. Вклад
46
+
47
+ Пользователям рекомендуется вносить вклад в развитие Intlayer, следуя рекомендациям, изложенным в нашем руководстве по внесению изменений. Любой предоставленный код должен соответствовать установленным стандартам качества и будет проверен поддерживающими перед интеграцией.
48
+
49
+ ## 7. Атрибуция
50
+
51
+ Любой инструмент, разработанный для расширения или использования кода Intlayer, должен явно указывать Intlayer как основу кода. Эта атрибуция должна быть видна в исходном коде, а также в любой пользовательской или рекламной документации.
52
+
53
+ ## 8. Изменение условий
54
+
55
+ Данные условия использования могут быть изменены в любое время. Пользователи будут информированы о любых существенных изменениях условий использования и должны принять эти изменения для продолжения использования Intlayer.
@@ -0,0 +1,83 @@
1
+ ---
2
+ createdAt: 2025-04-18
3
+ updatedAt: 2025-06-29
4
+ title: Intlayer 隐私声明
5
+ description: 了解 Intlayer 如何处理通过我们的网站和 CMS 收集的信息。请参阅文档以了解不同的格式和使用场景。
6
+ keywords:
7
+ - 国际化
8
+ - 文档
9
+ - Intlayer
10
+ - 隐私
11
+ - 声明
12
+ - Cookie
13
+ - 跟踪
14
+ - 分析
15
+ - Google Analytics
16
+ - Meta(Facebook)Pixel
17
+ - 认证
18
+ - 用户数据
19
+ slugs:
20
+ - privacy-notice
21
+ ---
22
+
23
+ # Intlayer 隐私声明
24
+
25
+ ## 介绍
26
+
27
+ 在 Intlayer,我们非常重视隐私。本声明解释了我们如何处理通过我们的网站和 CMS 收集的信息。
28
+
29
+ ## 联系方式
30
+
31
+ 如果您对隐私有任何疑问或担忧,请通过以下地址联系我们:[contact@intlayer.org](mailto:contact@intlayer.org)。
32
+
33
+ ## Cookie 和跟踪技术的使用
34
+
35
+ 我们使用 **Google Analytics** 和 **Meta(Facebook)Pixel** 来分析我们网站的使用情况并改进我们的服务。这些工具通过存储在用户设备上的 Cookie 生成网站的统计数据和其他信息。
36
+
37
+ 更多信息请参阅:
38
+
39
+ - [Google 隐私政策](https://policies.google.com/privacy)
40
+ - [Meta 隐私政策](https://www.facebook.com/privacy/policy)
41
+
42
+ ## 认证和用户数据
43
+
44
+ 访问 Intlayer CMS 需要用户认证。我们提供电子邮件/密码认证以及通过 **Google** 和 **GitHub** 的第三方登录。
45
+
46
+ 在认证过程中,我们会收集:
47
+
48
+ - 电子邮件地址
49
+ - 显示名称(或选择的名称)
50
+
51
+ 用户也可以通过与其账户关联的访问令牌访问 CMS。这些令牌与相同的认证数据相关联。
52
+
53
+ ## 数据存储与安全
54
+
55
+ 用户认证数据存储在托管于 **cloud.mongodb.com** 的 **MongoDB 数据库** 中:
56
+
57
+ - **区域:** AWS / 俄勒冈(us-west-2)
58
+ - **类型:** 副本集(3 个节点)
59
+ - **密码安全:** 所有密码均采用行业标准的哈希方法进行加密。
60
+
61
+ 我们不会存储除认证和安全访问 CMS 所需之外的任何不必要的个人数据。
62
+
63
+ ## 与第三方共享数据
64
+
65
+ 我们**不会**出售或与第三方共享您的个人数据,除非是出于分析目的(如 Google Analytics、Facebook Pixel)或作为身份验证过程的一部分(如 Google 或 GitHub 登录)。
66
+
67
+ ## 用户权利
68
+
69
+ 作为用户,您有权:
70
+
71
+ - 访问我们持有的关于您的个人数据
72
+ - 请求更正或删除您的数据
73
+ - 撤销访问权限或删除您的账户
74
+
75
+ 如有任何关于您数据的请求,请通过 [contact@intlayer.org](mailto:contact@intlayer.org) 与我们联系。
76
+
77
+ ## 本通知的变更
78
+
79
+ 我们可能会不时更新本隐私声明。建议用户定期查看此页面,以了解任何变更。
80
+
81
+ ---
82
+
83
+ 如果您希望使用更正式的语气,添加 GDPR/CCPA 相关内容,或将其调整为您网站上的法律页面,请告知我们。
@@ -0,0 +1,55 @@
1
+ ---
2
+ createdAt: 2025-04-18
3
+ updatedAt: 2025-06-29
4
+ title: Intlayer 服务条款
5
+ description: 了解 Intlayer 如何处理通过我们的网站和 CMS 收集的信息。请参阅文档以了解不同的格式和使用案例。
6
+ keywords:
7
+ - 国际化
8
+ - 文档
9
+ - Intlayer
10
+ - 服务条款
11
+ - 服务
12
+ - 使用
13
+ - 许可
14
+ - 责任
15
+ - 隐私
16
+ - 贡献
17
+ - 归属
18
+ - 条款修改
19
+ slugs:
20
+ - terms-of-service
21
+ ---
22
+
23
+ # Intlayer 使用条款
24
+
25
+ ## 1. 条款接受
26
+
27
+ 通过使用 Intlayer,您同意受这些使用条款的约束。如果您不接受这些条款,请不要使用该工具。
28
+
29
+ ## 2. 许可
30
+
31
+ Intlayer 采用 **Apache 2.0 许可证** 进行分发,该许可证允许在开源和商业项目中使用、修改和分发代码。用户被允许根据我们[贡献指南](https://github.com/aymericzip/intlayer/blob/main/CONTRIBUTING.md)中制定的规则修改源代码并通过拉取请求提交贡献。严禁为商业用途盗用代码。
32
+
33
+ ## 3. 商业使用
34
+
35
+ 您被允许将 Intlayer 用于商业项目。然而,禁止在未进行重大改造或实质性增值的情况下,直接复用代码以创建基于 Intlayer 的竞争工具。
36
+
37
+ ## 4. 责任
38
+
39
+ Intlayer 的维护者致力于在发现漏洞和安全问题后尽快修复。但对于因这些问题对用户基础设施造成的任何损害,维护者不承担任何责任。我们鼓励用户通过我们的[问题跟踪系统](https://github.com/aymericzip/intlayer/issues)报告问题。
40
+
41
+ ## 5. 隐私
42
+
43
+ Intlayer 不会收集或存储任何用户的个人数据。
44
+
45
+ ## 6. 贡献
46
+
47
+ 鼓励用户按照我们的贡献指南中的指引为 Intlayer 做出贡献。任何提交的代码必须符合既定的质量标准,并将在集成前由维护者进行审核。
48
+
49
+ ## 7. 归属
50
+
51
+ 任何为扩展或利用 Intlayer 代码而开发的工具,必须明确标注 Intlayer 作为代码的基础。此归属必须在源代码中以及任何用户或宣传文档中可见。
52
+
53
+ ## 8. 条款修改
54
+
55
+ 本使用条款可随时修改。用户将被告知使用条款的任何重大变更,并且必须接受这些变更才能继续使用 Intlayer。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intlayer/docs",
3
- "version": "5.5.11",
3
+ "version": "5.5.12",
4
4
  "private": false,
5
5
  "description": "Intlayer documentation",
6
6
  "keywords": [
@@ -45,7 +45,8 @@
45
45
  "src",
46
46
  "dist",
47
47
  "frequent_questions",
48
- "blog"
48
+ "blog",
49
+ "legal"
49
50
  ],
50
51
  "dependencies": {
51
52
  "@intlayer/config": "5.5.11",
@@ -65,14 +66,14 @@
65
66
  "typescript": "^5.8.3",
66
67
  "vitest": "^3.2.2",
67
68
  "@intlayer/api": "5.5.11",
68
- "@utils/ts-config": "1.0.4",
69
+ "@intlayer/cli": "5.5.11",
69
70
  "@utils/ts-config-types": "1.0.4",
70
71
  "@utils/tsup-config": "1.0.4",
71
- "@intlayer/cli": "5.5.11"
72
+ "@utils/ts-config": "1.0.4"
72
73
  },
73
74
  "peerDependencies": {
74
- "@intlayer/api": "5.5.11",
75
75
  "@intlayer/cli": "5.5.11",
76
+ "@intlayer/api": "5.5.11",
76
77
  "@intlayer/config": "5.5.11"
77
78
  },
78
79
  "engines": {
@@ -82,12 +83,12 @@
82
83
  "url": "https://github.com/aymericzip/intlayer/issues"
83
84
  },
84
85
  "scripts": {
86
+ "prebuild": "tsx tools/generateEntry.ts",
85
87
  "build": "pnpm build:package & pnpm build:types",
86
88
  "build:package": "tsup",
87
89
  "build:types": "tsc --project ./tsconfig.types.json && tsc-alias --project ./tsconfig.types.json",
88
90
  "clean": "rimraf ./dist",
89
91
  "dev": "concurrently --prefix none \"tsup --watch\" \"tsc --project ./tsconfig.types.json --watch\" \"tsc-alias --project ./tsconfig.types.json --watch\"",
90
- "generateEntry": "tsx tools/generateEntry.ts",
91
92
  "lint": "eslint . --cache",
92
93
  "lint:fix": "eslint . --cache --fix",
93
94
  "prettier": "prettier . --check",
package/src/blog.ts CHANGED
@@ -39,11 +39,13 @@ export const getBlogMetadata = async <
39
39
 
40
40
  export const getBlogMetadataBySlug = async <L extends LocalesValues>(
41
41
  slugs: string | string[],
42
- locale: L = defaultLocale as L
42
+ locale: L = defaultLocale as L,
43
+ strict = false
43
44
  ): Promise<FileMetadata[]> =>
44
- await getFileMetadataBySlug(blogEntry, slugs, locale);
45
+ await getFileMetadataBySlug(blogEntry, slugs, locale, strict);
45
46
 
46
47
  export const getBlogBySlug = async <L extends LocalesValues>(
47
48
  slugs: string | string[],
48
- locale: L = defaultLocale as L
49
- ): Promise<string[]> => await getFileBySlug(blogEntry, slugs, locale);
49
+ locale: L = defaultLocale as L,
50
+ strict = false
51
+ ): Promise<string[]> => await getFileBySlug(blogEntry, slugs, locale, strict);
package/src/common.ts CHANGED
@@ -66,6 +66,7 @@ export type FileMetadata = {
66
66
  keywords: string[];
67
67
  updatedAt: string;
68
68
  createdAt: string;
69
+ author?: string;
69
70
  };
70
71
 
71
72
  export const formatMetadata = (
@@ -76,10 +77,12 @@ export const formatMetadata = (
76
77
  const metadata = getMarkdownMetadata(file);
77
78
  const relativeUrl = join('/', ...(metadata.slugs ?? []));
78
79
 
80
+ const slicedDocKey = docKey.slice(1);
81
+
79
82
  return {
80
83
  ...metadata,
81
84
  docKey,
82
- githubUrl: join(GITHUB_URL_PREFIX, docKey as string).replace(
85
+ githubUrl: `${GITHUB_URL_PREFIX}${slicedDocKey}`.replace(
83
86
  '/en/',
84
87
  `/${locale}/`
85
88
  ),
@@ -127,7 +130,8 @@ export const getFileMetadataBySlug = async <
127
130
  >(
128
131
  files: F,
129
132
  slugs: string | string[],
130
- locale: LocalesValues = defaultLocale as LocalesValues
133
+ locale: LocalesValues = defaultLocale as LocalesValues,
134
+ strict = false
131
135
  ) => {
132
136
  const slugsArray = Array.isArray(slugs) ? slugs : [slugs];
133
137
  const filesMetadata = await getFileMetadataRecord(
@@ -135,11 +139,17 @@ export const getFileMetadataBySlug = async <
135
139
  defaultLocale as LocalesValues
136
140
  );
137
141
 
138
- const fileMetadataArray: FileMetadata[] = Object.values(filesMetadata).filter(
142
+ let fileMetadataArray: FileMetadata[] = Object.values(filesMetadata).filter(
139
143
  (fileMetadata) =>
140
144
  slugsArray.every((slug) => fileMetadata.slugs?.includes(slug))
141
145
  );
142
146
 
147
+ if (strict) {
148
+ fileMetadataArray = fileMetadataArray.filter(
149
+ (fileMetadata) => fileMetadata.slugs.length === slugsArray.length
150
+ );
151
+ }
152
+
143
153
  if (locale !== defaultLocale) {
144
154
  const localizedFileMetadata = await Promise.all(
145
155
  fileMetadataArray.map(
@@ -159,7 +169,8 @@ export const getFileBySlug = async <
159
169
  >(
160
170
  files: F,
161
171
  slugs: string | string[],
162
- locale: LocalesValues = defaultLocale as LocalesValues
172
+ locale: LocalesValues = defaultLocale as LocalesValues,
173
+ strict = false
163
174
  ) => {
164
175
  const slugsArray = Array.isArray(slugs) ? slugs : [slugs];
165
176
  const filesMetadata = await getFileMetadataRecord(
@@ -167,11 +178,16 @@ export const getFileBySlug = async <
167
178
  defaultLocale as LocalesValues
168
179
  );
169
180
 
170
- const fileMetadataArray = Object.values(filesMetadata).filter(
171
- (fileMetadata) =>
172
- fileMetadata.slugs.every((slug) => slugsArray.includes(slug))
181
+ let fileMetadataArray = Object.values(filesMetadata).filter((fileMetadata) =>
182
+ slugsArray.every((slug) => fileMetadata.slugs?.includes(slug))
173
183
  );
174
184
 
185
+ if (strict) {
186
+ fileMetadataArray = fileMetadataArray.filter(
187
+ (fileMetadata) => fileMetadata.slugs.length === slugsArray.length
188
+ );
189
+ }
190
+
175
191
  const fileList = await Promise.all(
176
192
  fileMetadataArray.map(async (fileMetadata) => {
177
193
  const file = await getFile(files, fileMetadata.docKey, locale);
package/src/doc.ts CHANGED
@@ -36,11 +36,13 @@ export const getDocMetadata = async <D extends DocKey, L extends LocalesValues>(
36
36
 
37
37
  export const getDocMetadataBySlug = async <L extends LocalesValues>(
38
38
  slugs: string | string[],
39
- locale: L = defaultLocale as L
39
+ locale: L = defaultLocale as L,
40
+ strict = false
40
41
  ): Promise<FileMetadata[]> =>
41
- await getFileMetadataBySlug(docsEntry, slugs, locale);
42
+ await getFileMetadataBySlug(docsEntry, slugs, locale, strict);
42
43
 
43
44
  export const getDocBySlug = async <L extends LocalesValues>(
44
45
  slugs: string | string[],
45
- locale: L = defaultLocale as L
46
- ): Promise<string[]> => await getFileBySlug(docsEntry, slugs, locale);
46
+ locale: L = defaultLocale as L,
47
+ strict = false
48
+ ): Promise<string[]> => await getFileBySlug(docsEntry, slugs, locale, strict);
@@ -44,12 +44,14 @@ export const getFrequentQuestionMetadata = async <
44
44
 
45
45
  export const getFrequentQuestionMetadataBySlug = async <L extends Locales>(
46
46
  slugs: string | string[],
47
- locale: L = defaultLocale as L
47
+ locale: L = defaultLocale as L,
48
+ strict = false
48
49
  ): Promise<FileMetadata[]> =>
49
- await getFileMetadataBySlug(frequentQuestionsEntry, slugs, locale);
50
+ await getFileMetadataBySlug(frequentQuestionsEntry, slugs, locale, strict);
50
51
 
51
52
  export const getFrequentQuestionBySlug = async <L extends Locales>(
52
53
  slugs: string | string[],
53
- locale: L = defaultLocale as L
54
+ locale: L = defaultLocale as L,
55
+ strict = false
54
56
  ): Promise<string[]> =>
55
- await getFileBySlug(frequentQuestionsEntry, slugs, locale);
57
+ await getFileBySlug(frequentQuestionsEntry, slugs, locale, strict);