@intlayer/docs 7.1.0-canary.2 → 7.1.1-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/internationalization_and_SEO.md +0 -4
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +2 -2
- package/blog/de/internationalization_and_SEO.md +0 -2
- package/blog/en/internationalization_and_SEO.md +0 -2
- package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +2 -2
- package/blog/en-GB/internationalization_and_SEO.md +0 -2
- package/blog/es/internationalization_and_SEO.md +0 -4
- package/blog/fr/internationalization_and_SEO.md +0 -2
- package/blog/hi/internationalization_and_SEO.md +0 -2
- package/blog/id/next-i18next_vs_next-intl_vs_intlayer.md +2 -2
- package/blog/it/internationalization_and_SEO.md +0 -2
- package/blog/ja/internationalization_and_SEO.md +0 -2
- package/blog/ko/internationalization_and_SEO.md +0 -2
- package/blog/pl/next-i18next_vs_next-intl_vs_intlayer.md +2 -2
- package/blog/pt/internationalization_and_SEO.md +0 -4
- package/blog/ru/internationalization_and_SEO.md +0 -4
- package/blog/vi/next-i18next_vs_next-intl_vs_intlayer.md +2 -2
- package/blog/zh/internationalization_and_SEO.md +0 -4
- package/docs/ar/intlayer_with_nextjs_14.md +9 -9
- package/docs/ar/intlayer_with_nextjs_15.md +9 -8
- package/docs/ar/intlayer_with_nextjs_16.md +2 -56
- package/docs/ar/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/ar/intlayer_with_react_router_v7.md +6 -6
- package/docs/ar/intlayer_with_tanstack.md +46 -31
- package/docs/ar/intlayer_with_vite+preact.md +7 -7
- package/docs/ar/intlayer_with_vite+react.md +7 -7
- package/docs/ar/intlayer_with_vite+vue.md +9 -9
- package/docs/de/intlayer_with_nextjs_14.md +9 -9
- package/docs/de/intlayer_with_nextjs_15.md +9 -8
- package/docs/de/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/de/intlayer_with_react_router_v7.md +6 -6
- package/docs/de/intlayer_with_tanstack.md +46 -31
- package/docs/de/intlayer_with_vite+preact.md +7 -7
- package/docs/de/intlayer_with_vite+react.md +7 -7
- package/docs/de/intlayer_with_vite+vue.md +9 -9
- package/docs/en/interest_of_intlayer.md +1 -1
- package/docs/en/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/en/intlayer_with_react_router_v7.md +6 -6
- package/docs/en/intlayer_with_tanstack.md +57 -33
- package/docs/en/intlayer_with_vite+preact.md +8 -8
- package/docs/en/intlayer_with_vite+react.md +8 -8
- package/docs/en/intlayer_with_vite+vue.md +8 -8
- package/docs/en/releases/v6.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_14.md +9 -9
- package/docs/en-GB/intlayer_with_nextjs_15.md +9 -8
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/en-GB/intlayer_with_react_router_v7.md +6 -6
- package/docs/en-GB/intlayer_with_tanstack.md +46 -31
- package/docs/en-GB/intlayer_with_vite+preact.md +7 -7
- package/docs/en-GB/intlayer_with_vite+react.md +7 -7
- package/docs/en-GB/intlayer_with_vite+vue.md +9 -9
- package/docs/es/intlayer_with_nextjs_14.md +9 -9
- package/docs/es/intlayer_with_nextjs_15.md +9 -8
- package/docs/es/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/es/intlayer_with_react_router_v7.md +6 -6
- package/docs/es/intlayer_with_tanstack.md +15 -10
- package/docs/es/intlayer_with_vite+preact.md +7 -7
- package/docs/es/intlayer_with_vite+react.md +7 -7
- package/docs/es/intlayer_with_vite+vue.md +9 -9
- package/docs/fr/intlayer_with_nextjs_14.md +9 -9
- package/docs/fr/intlayer_with_nextjs_15.md +9 -8
- package/docs/fr/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/fr/intlayer_with_react_router_v7.md +6 -6
- package/docs/fr/intlayer_with_tanstack.md +46 -31
- package/docs/fr/intlayer_with_vite+preact.md +7 -7
- package/docs/fr/intlayer_with_vite+react.md +7 -7
- package/docs/fr/intlayer_with_vite+vue.md +9 -9
- package/docs/hi/intlayer_with_nextjs_14.md +9 -9
- package/docs/hi/intlayer_with_nextjs_15.md +9 -8
- package/docs/hi/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/hi/intlayer_with_react_router_v7.md +6 -6
- package/docs/hi/intlayer_with_tanstack.md +15 -10
- package/docs/hi/intlayer_with_vite+preact.md +7 -7
- package/docs/hi/intlayer_with_vite+react.md +7 -7
- package/docs/hi/intlayer_with_vite+vue.md +9 -9
- package/docs/id/interest_of_intlayer.md +1 -1
- package/docs/id/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/id/intlayer_with_react_router_v7.md +6 -6
- package/docs/id/intlayer_with_tanstack.md +15 -10
- package/docs/id/intlayer_with_vite+preact.md +9 -9
- package/docs/id/intlayer_with_vite+react.md +8 -8
- package/docs/id/intlayer_with_vite+vue.md +8 -8
- package/docs/id/releases/v6.md +1 -1
- package/docs/it/intlayer_with_nextjs_14.md +9 -9
- package/docs/it/intlayer_with_nextjs_15.md +9 -8
- package/docs/it/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/it/intlayer_with_react_router_v7.md +6 -6
- package/docs/it/intlayer_with_tanstack.md +46 -31
- package/docs/it/intlayer_with_vite+preact.md +7 -7
- package/docs/it/intlayer_with_vite+react.md +7 -7
- package/docs/it/intlayer_with_vite+vue.md +9 -9
- package/docs/ja/intlayer_with_nextjs_14.md +9 -9
- package/docs/ja/intlayer_with_nextjs_15.md +9 -8
- package/docs/ja/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/ja/intlayer_with_react_router_v7.md +6 -6
- package/docs/ja/intlayer_with_tanstack.md +16 -10
- package/docs/ja/intlayer_with_vite+preact.md +7 -7
- package/docs/ja/intlayer_with_vite+react.md +7 -7
- package/docs/ja/intlayer_with_vite+vue.md +9 -9
- package/docs/ko/intlayer_with_nextjs_14.md +9 -9
- package/docs/ko/intlayer_with_nextjs_15.md +9 -8
- package/docs/ko/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/ko/intlayer_with_react_router_v7.md +6 -6
- package/docs/ko/intlayer_with_tanstack.md +46 -31
- package/docs/ko/intlayer_with_vite+preact.md +7 -7
- package/docs/ko/intlayer_with_vite+react.md +7 -7
- package/docs/ko/intlayer_with_vite+vue.md +9 -9
- package/docs/pl/interest_of_intlayer.md +1 -1
- package/docs/pl/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/pl/intlayer_with_react_router_v7.md +6 -6
- package/docs/pl/intlayer_with_tanstack.md +15 -10
- package/docs/pl/intlayer_with_vite+preact.md +10 -10
- package/docs/pl/intlayer_with_vite+react.md +8 -8
- package/docs/pl/intlayer_with_vite+vue.md +8 -8
- package/docs/pl/releases/v6.md +1 -1
- package/docs/pt/intlayer_with_nextjs_14.md +9 -9
- package/docs/pt/intlayer_with_nextjs_15.md +9 -8
- package/docs/pt/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/pt/intlayer_with_react_router_v7.md +2 -2
- package/docs/pt/intlayer_with_tanstack.md +46 -31
- package/docs/pt/intlayer_with_vite+preact.md +7 -7
- package/docs/pt/intlayer_with_vite+react.md +7 -7
- package/docs/pt/intlayer_with_vite+vue.md +9 -9
- package/docs/ru/intlayer_with_nextjs_14.md +9 -9
- package/docs/ru/intlayer_with_nextjs_15.md +9 -8
- package/docs/ru/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/ru/intlayer_with_react_router_v7.md +6 -6
- package/docs/ru/intlayer_with_tanstack.md +15 -10
- package/docs/ru/intlayer_with_vite+preact.md +7 -7
- package/docs/ru/intlayer_with_vite+react.md +7 -7
- package/docs/ru/intlayer_with_vite+vue.md +9 -9
- package/docs/tr/interest_of_intlayer.md +1 -1
- package/docs/tr/intlayer_with_nextjs_15.md +9 -8
- package/docs/tr/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/tr/intlayer_with_react_router_v7.md +6 -6
- package/docs/tr/intlayer_with_tanstack.md +46 -31
- package/docs/tr/intlayer_with_vite+preact.md +8 -8
- package/docs/tr/intlayer_with_vite+react.md +8 -8
- package/docs/tr/intlayer_with_vite+vue.md +8 -8
- package/docs/vi/interest_of_intlayer.md +1 -1
- package/docs/vi/intlayer_with_nextjs_15.md +1 -0
- package/docs/vi/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/vi/intlayer_with_react_router_v7.md +6 -6
- package/docs/vi/intlayer_with_tanstack.md +46 -31
- package/docs/vi/intlayer_with_vite+preact.md +9 -9
- package/docs/vi/intlayer_with_vite+react.md +8 -8
- package/docs/vi/intlayer_with_vite+vue.md +8 -8
- package/docs/vi/releases/v6.md +1 -1
- package/docs/zh/intlayer_with_nextjs_14.md +9 -9
- package/docs/zh/intlayer_with_nextjs_15.md +9 -8
- package/docs/zh/intlayer_with_nextjs_page_router.md +7 -10
- package/docs/zh/intlayer_with_react_router_v7.md +6 -6
- package/docs/zh/intlayer_with_tanstack.md +14 -8
- package/docs/zh/intlayer_with_vite+preact.md +7 -7
- package/docs/zh/intlayer_with_vite+react.md +7 -7
- package/docs/zh/intlayer_with_vite+vue.md +7 -7
- package/frequent_questions/ar/domain_routing.md +1 -1
- package/frequent_questions/de/domain_routing.md +1 -1
- package/frequent_questions/en/domain_routing.md +1 -1
- package/frequent_questions/en/package_version_error.md +29 -1
- package/frequent_questions/en-GB/domain_routing.md +1 -1
- package/frequent_questions/es/domain_routing.md +1 -1
- package/frequent_questions/fr/domain_routing.md +1 -1
- package/frequent_questions/hi/domain_routing.md +1 -1
- package/frequent_questions/id/domain_routing.md +1 -1
- package/frequent_questions/it/domain_routing.md +1 -1
- package/frequent_questions/it/package_version_error.md +4 -4
- package/frequent_questions/ja/domain_routing.md +1 -1
- package/frequent_questions/ko/domain_routing.md +1 -1
- package/frequent_questions/pl/domain_routing.md +1 -1
- package/frequent_questions/pt/domain_routing.md +1 -1
- package/frequent_questions/ru/domain_routing.md +1 -1
- package/frequent_questions/tr/domain_routing.md +1 -1
- package/frequent_questions/vi/domain_routing.md +1 -1
- package/frequent_questions/zh/domain_routing.md +1 -1
- package/package.json +7 -14
|
@@ -1112,38 +1112,38 @@ const App = () => (
|
|
|
1112
1112
|
module.exports = App;
|
|
1113
1113
|
```
|
|
1114
1114
|
|
|
1115
|
-
同时,您还可以使用 `
|
|
1115
|
+
同时,您还可以使用 `intlayerProxy` 为您的应用程序添加服务器端路由。该插件将根据 URL 自动检测当前语言环境并设置相应的语言环境 Cookie。如果未指定语言环境,插件将根据用户浏览器的语言偏好确定最合适的语言环境。如果仍未检测到语言环境,则会重定向到默认语言环境。
|
|
1116
1116
|
|
|
1117
1117
|
```typescript {3,7} fileName="vite.config.ts" codeFormat="typescript"
|
|
1118
1118
|
import { defineConfig } from "vite";
|
|
1119
1119
|
import preact from "@preact/preset-vite";
|
|
1120
|
-
import { intlayer,
|
|
1120
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
1121
1121
|
|
|
1122
1122
|
// https://vitejs.dev/config/
|
|
1123
1123
|
export default defineConfig({
|
|
1124
|
-
plugins: [preact(), intlayer(),
|
|
1124
|
+
plugins: [preact(), intlayer(), intlayerProxy()],
|
|
1125
1125
|
});
|
|
1126
1126
|
```
|
|
1127
1127
|
|
|
1128
1128
|
```javascript {3,7} fileName="vite.config.mjs" codeFormat="esm"
|
|
1129
1129
|
import { defineConfig } from "vite";
|
|
1130
1130
|
import preact from "@preact/preset-vite";
|
|
1131
|
-
import { intlayer,
|
|
1131
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
1132
1132
|
|
|
1133
1133
|
// https://vitejs.dev/config/
|
|
1134
1134
|
export default defineConfig({
|
|
1135
|
-
plugins: [preact(), intlayer(),
|
|
1135
|
+
plugins: [preact(), intlayer(), intlayerProxy()],
|
|
1136
1136
|
});
|
|
1137
1137
|
```
|
|
1138
1138
|
|
|
1139
1139
|
```javascript {3,7} fileName="vite.config.cjs" codeFormat="commonjs"
|
|
1140
1140
|
const { defineConfig } = require("vite");
|
|
1141
1141
|
const preact = require("@preact/preset-vite");
|
|
1142
|
-
const { intlayer,
|
|
1142
|
+
const { intlayer, intlayerProxy } = require("vite-intlayer");
|
|
1143
1143
|
|
|
1144
1144
|
// https://vitejs.dev/config/
|
|
1145
1145
|
module.exports = defineConfig({
|
|
1146
|
-
plugins: [preact(), intlayer(),
|
|
1146
|
+
plugins: [preact(), intlayer(), intlayerProxy()],
|
|
1147
1147
|
});
|
|
1148
1148
|
```
|
|
1149
1149
|
|
|
@@ -1012,38 +1012,38 @@ const App = () => (
|
|
|
1012
1012
|
);
|
|
1013
1013
|
```
|
|
1014
1014
|
|
|
1015
|
-
同时,您还可以使用 `
|
|
1015
|
+
同时,您还可以使用 `intlayerProxy` 为您的应用程序添加服务器端路由。该插件将根据 URL 自动检测当前语言环境并设置相应的语言环境 Cookie。如果未指定语言环境,插件将根据用户浏览器的语言偏好确定最合适的语言环境。如果未检测到任何语言环境,它将重定向到默认语言环境。
|
|
1016
1016
|
|
|
1017
1017
|
```typescript {3,7} fileName="vite.config.ts" codeFormat="typescript"
|
|
1018
1018
|
import { defineConfig } from "vite";
|
|
1019
1019
|
import react from "@vitejs/plugin-react-swc";
|
|
1020
|
-
import { intlayer,
|
|
1020
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
1021
1021
|
|
|
1022
1022
|
// https://vitejs.dev/config/
|
|
1023
1023
|
export default defineConfig({
|
|
1024
|
-
plugins: [react(), intlayer(),
|
|
1024
|
+
plugins: [react(), intlayer(), intlayerProxy()],
|
|
1025
1025
|
});
|
|
1026
1026
|
```
|
|
1027
1027
|
|
|
1028
1028
|
```javascript {3,7} fileName="vite.config.mjs" codeFormat="esm"
|
|
1029
1029
|
import { defineConfig } from "vite";
|
|
1030
1030
|
import react from "@vitejs/plugin-react-swc";
|
|
1031
|
-
import { intlayer,
|
|
1031
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
1032
1032
|
|
|
1033
1033
|
// https://vitejs.dev/config/
|
|
1034
1034
|
export default defineConfig({
|
|
1035
|
-
plugins: [react(), intlayer(),
|
|
1035
|
+
plugins: [react(), intlayer(), intlayerProxy()],
|
|
1036
1036
|
});
|
|
1037
1037
|
```
|
|
1038
1038
|
|
|
1039
1039
|
```javascript {3,7} fileName="vite.config.cjs" codeFormat="commonjs"
|
|
1040
1040
|
const { defineConfig } = require("vite");
|
|
1041
1041
|
const react = require("@vitejs/plugin-react-swc");
|
|
1042
|
-
const { intlayer,
|
|
1042
|
+
const { intlayer, intlayerProxy } = require("vite-intlayer");
|
|
1043
1043
|
|
|
1044
1044
|
// https://vitejs.dev/config/
|
|
1045
1045
|
module.exports = defineConfig({
|
|
1046
|
-
plugins: [react(), intlayer(),
|
|
1046
|
+
plugins: [react(), intlayer(), intlayerProxy()],
|
|
1047
1047
|
});
|
|
1048
1048
|
```
|
|
1049
1049
|
|
|
@@ -681,38 +681,38 @@ import LocaleSwitcher from "@components/LocaleSwitcher.vue";
|
|
|
681
681
|
</template>
|
|
682
682
|
```
|
|
683
683
|
|
|
684
|
-
同时,你也可以使用 `
|
|
684
|
+
同时,你也可以使用 `intlayerProxy` 为你的应用添加服务器端路由。该插件会根据 URL 自动检测当前语言环境并设置相应的语言环境 cookie。如果未指定语言环境,插件将根据用户浏览器的语言偏好确定最合适的语言环境。如果仍未检测到语言环境,则会重定向到默认语言环境。
|
|
685
685
|
|
|
686
686
|
```typescript {3,7} fileName="vite.config.ts" codeFormat="typescript"
|
|
687
687
|
import { defineConfig } from "vite";
|
|
688
688
|
import vue from "@vitejs/plugin-vue";
|
|
689
|
-
import { intlayer,
|
|
689
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
690
690
|
|
|
691
691
|
// https://vitejs.dev/config/
|
|
692
692
|
export default defineConfig({
|
|
693
|
-
plugins: [vue(), intlayer(),
|
|
693
|
+
plugins: [vue(), intlayer(), intlayerProxy()],
|
|
694
694
|
});
|
|
695
695
|
```
|
|
696
696
|
|
|
697
697
|
```javascript {3,7} fileName="vite.config.mjs" codeFormat="esm"
|
|
698
698
|
import { defineConfig } from "vite";
|
|
699
699
|
import vue from "@vitejs/plugin-vue";
|
|
700
|
-
import { intlayer,
|
|
700
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
701
701
|
|
|
702
702
|
// https://vitejs.dev/config/
|
|
703
703
|
export default defineConfig({
|
|
704
|
-
plugins: [vue(), intlayer(),
|
|
704
|
+
plugins: [vue(), intlayer(), intlayerProxy()],
|
|
705
705
|
});
|
|
706
706
|
```
|
|
707
707
|
|
|
708
708
|
```javascript {3,7} fileName="vite.config.cjs" codeFormat="commonjs"
|
|
709
709
|
const { defineConfig } = require("vite");
|
|
710
710
|
const vue = require("@vitejs/plugin-vue");
|
|
711
|
-
const { intlayer,
|
|
711
|
+
const { intlayer, intlayerProxy } = require("vite-intlayer");
|
|
712
712
|
|
|
713
713
|
// https://vitejs.dev/config/
|
|
714
714
|
module.exports = defineConfig({
|
|
715
|
-
plugins: [vue(), intlayer(),
|
|
715
|
+
plugins: [vue(), intlayer(), intlayerProxy()],
|
|
716
716
|
});
|
|
717
717
|
```
|
|
718
718
|
|
|
@@ -108,7 +108,7 @@ function changeLanguage(target: Locale) {
|
|
|
108
108
|
|
|
109
109
|
## فوائد التوجيه المعتمد على النطاق
|
|
110
110
|
|
|
111
|
-
1. **تكوين أبسط**: لا حاجة لتكوين `
|
|
111
|
+
1. **تكوين أبسط**: لا حاجة لتكوين `intlayerProxy`، `generateStaticParams`، `react-router`، أو `vue-router`
|
|
112
112
|
2. **تحسين محركات البحث (SEO)**: لكل لغة نطاق خاص بها
|
|
113
113
|
3. **عناوين URL أنظف**: لا يوجد بادئة للغة في المسار
|
|
114
114
|
4. **صيانة أسهل**: كل نشر للغة مستقل
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Vorteile des domänenbasierten Routings
|
|
109
109
|
|
|
110
|
-
1. **Einfachere Konfiguration**: Keine Notwendigkeit, `
|
|
110
|
+
1. **Einfachere Konfiguration**: Keine Notwendigkeit, `intlayerProxy`, `generateStaticParams`, `react-router` oder `vue-router` zu konfigurieren
|
|
111
111
|
2. **Bessere SEO**: Jede Sprache hat ihre eigene Domain
|
|
112
112
|
3. **Sauberere URLs**: Kein Sprachpräfix im Pfad
|
|
113
113
|
4. **Einfachere Wartung**: Jede Sprachbereitstellung ist unabhängig
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Benefits of domain-based routing
|
|
109
109
|
|
|
110
|
-
1. **Simpler configuration**: No need to configure `
|
|
110
|
+
1. **Simpler configuration**: No need to configure `intlayerProxy`, `generateStaticParams`, `react-router`, or `vue-router`
|
|
111
111
|
2. **Better SEO**: Each language has its own domain
|
|
112
112
|
3. **Cleaner URLs**: No locale prefix in the path
|
|
113
113
|
4. **Easier maintenance**: Each language deployment is independent
|
|
@@ -78,7 +78,33 @@ rm -rf package-lock.json node_modules
|
|
|
78
78
|
npm install # or yarn install or pnpm install or bun pm install
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
3. Check
|
|
81
|
+
3. Check local dependencies versions
|
|
82
|
+
|
|
83
|
+
It can happen that your package manager keep an old version of the sub-packages in the lockfile in cache.
|
|
84
|
+
|
|
85
|
+
Example `intlayer@7.0.0` > `@intlayer/config@7.0.0` > `@intlayer/dictionary-entry@6.0.0`.
|
|
86
|
+
|
|
87
|
+
To detect a mismatch between the local dependencies versions and the sub-packages versions, you can use the following command:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
npm list --depth=3 | grep intlayer
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
yarn list --depth=3 | grep intlayer
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
pnpm list --depth=3 | grep intlayer
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
bun pm ls --depth=3 | grep intlayer
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
> On windows, replace `| grep intlayer` by `| findstr intlayer` or using PowerShell with `Select-String -Pattern "intlayer"`.
|
|
106
|
+
|
|
107
|
+
4. Check global installation
|
|
82
108
|
|
|
83
109
|
We recommend to install `intlayer` or `intlayer-cli` globally to access the CLI commands. If the global version is not the same as the local version, the package manager may consider the wrong version.
|
|
84
110
|
|
|
@@ -100,6 +126,8 @@ pnpm list -g --depth=3 | grep intlayer
|
|
|
100
126
|
bun pm ls -g --depth=3 | grep intlayer
|
|
101
127
|
```
|
|
102
128
|
|
|
129
|
+
> On windows, replace `| grep intlayer` by `| findstr intlayer` or using PowerShell with `Select-String -Pattern "intlayer"`.
|
|
130
|
+
|
|
103
131
|
**Fix potential global dependency conflicts**
|
|
104
132
|
|
|
105
133
|
```bash
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Benefits of domain-based routing
|
|
109
109
|
|
|
110
|
-
1. **Simpler configuration**: No need to configure `
|
|
110
|
+
1. **Simpler configuration**: No need to configure `intlayerProxy`, `generateStaticParams`, `react-router`, or `vue-router`
|
|
111
111
|
2. **Better SEO**: Each language has its own domain
|
|
112
112
|
3. **Cleaner URLs**: No locale prefix in the path
|
|
113
113
|
4. **Easier maintenance**: Each language deployment is independent
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Beneficios del enrutamiento basado en dominios
|
|
109
109
|
|
|
110
|
-
1. **Configuración más sencilla**: No es necesario configurar `
|
|
110
|
+
1. **Configuración más sencilla**: No es necesario configurar `intlayerProxy`, `generateStaticParams`, `react-router` o `vue-router`
|
|
111
111
|
2. **Mejor SEO**: Cada idioma tiene su propio dominio
|
|
112
112
|
3. **URLs más limpias**: No hay prefijo de idioma en la ruta
|
|
113
113
|
4. **Mantenimiento más sencillo**: Cada despliegue de idioma es independiente
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Avantages du routage basé sur les domaines
|
|
109
109
|
|
|
110
|
-
1. **Configuration plus simple** : Pas besoin de configurer `
|
|
110
|
+
1. **Configuration plus simple** : Pas besoin de configurer `intlayerProxy`, `generateStaticParams`, `react-router` ou `vue-router`
|
|
111
111
|
2. **Meilleur SEO** : Chaque langue dispose de son propre domaine
|
|
112
112
|
3. **URLs plus propres** : Pas de préfixe de langue dans le chemin
|
|
113
113
|
4. **Maintenance facilitée** : Chaque déploiement de langue est indépendant
|
|
@@ -108,7 +108,7 @@ function changeLanguage(target: Locale) {
|
|
|
108
108
|
|
|
109
109
|
## डोमेन-आधारित रूटिंग के लाभ
|
|
110
110
|
|
|
111
|
-
1. **सरल कॉन्फ़िगरेशन**: `
|
|
111
|
+
1. **सरल कॉन्फ़िगरेशन**: `intlayerProxy`, `generateStaticParams`, `react-router`, या `vue-router` को कॉन्फ़िगर करने की आवश्यकता नहीं
|
|
112
112
|
2. **बेहतर SEO**: प्रत्येक भाषा का अपना डोमेन होता है
|
|
113
113
|
3. **साफ-सुथरे URL**: पथ में कोई लोकेल उपसर्ग नहीं होता
|
|
114
114
|
4. **आसान रखरखाव**: प्रत्येक भाषा की तैनाती स्वतंत्र होती है
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Manfaat routing berbasis domain
|
|
109
109
|
|
|
110
|
-
1. **Konfigurasi lebih sederhana**: Tidak perlu mengonfigurasi `
|
|
110
|
+
1. **Konfigurasi lebih sederhana**: Tidak perlu mengonfigurasi `intlayerProxy`, `generateStaticParams`, `react-router`, atau `vue-router`
|
|
111
111
|
2. **SEO yang lebih baik**: Setiap bahasa memiliki domainnya sendiri
|
|
112
112
|
3. **URL yang lebih bersih**: Tidak ada prefix locale di jalur
|
|
113
113
|
4. **Pemeliharaan yang lebih mudah**: Setiap deployment bahasa bersifat independen
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Vantaggi del routing basato sul dominio
|
|
109
109
|
|
|
110
|
-
1. **Configurazione più semplice**: Non è necessario configurare `
|
|
110
|
+
1. **Configurazione più semplice**: Non è necessario configurare `intlayerProxy`, `generateStaticParams`, `react-router` o `vue-router`
|
|
111
111
|
2. **Migliore SEO**: Ogni lingua ha il proprio dominio
|
|
112
112
|
3. **URL più puliti**: Nessun prefisso di localizzazione nel percorso
|
|
113
113
|
4. **Manutenzione più semplice**: Ogni distribuzione linguistica è indipendente
|
|
@@ -84,19 +84,19 @@ Consigliamo di installare `intlayer` o `intlayer-cli` globalmente per accedere a
|
|
|
84
84
|
**Controllare se un pacchetto è installato globalmente**
|
|
85
85
|
|
|
86
86
|
```bash
|
|
87
|
-
npm list -g --depth=
|
|
87
|
+
npm list -g --depth=3 | grep intlayer
|
|
88
88
|
```
|
|
89
89
|
|
|
90
90
|
```bash
|
|
91
|
-
|
|
91
|
+
yarn global list --depth=3 | grep intlayer
|
|
92
92
|
```
|
|
93
93
|
|
|
94
94
|
```bash
|
|
95
|
-
|
|
95
|
+
pnpm list -g --depth=3 | grep intlayer
|
|
96
96
|
```
|
|
97
97
|
|
|
98
98
|
```bash
|
|
99
|
-
|
|
99
|
+
bun pm ls -g --depth=3 | grep intlayer
|
|
100
100
|
```
|
|
101
101
|
|
|
102
102
|
**Risolvi potenziali conflitti di dipendenze globali**
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## ドメインベースのルーティングの利点
|
|
109
109
|
|
|
110
|
-
1. **設定が簡単**: `
|
|
110
|
+
1. **設定が簡単**: `intlayerProxy`、`generateStaticParams`、`react-router`、`vue-router` の設定が不要
|
|
111
111
|
2. **より良いSEO**: 各言語が独自のドメインを持つ
|
|
112
112
|
3. **よりクリーンなURL**: パスにロケールのプレフィックスがない
|
|
113
113
|
4. **メンテナンスが容易**: 各言語のデプロイが独立している
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## 도메인 기반 라우팅의 장점
|
|
109
109
|
|
|
110
|
-
1. **더 간단한 구성**: `
|
|
110
|
+
1. **더 간단한 구성**: `intlayerProxy`, `generateStaticParams`, `react-router` 또는 `vue-router`를 구성할 필요가 없습니다.
|
|
111
111
|
2. **더 나은 SEO**: 각 언어마다 고유한 도메인을 가집니다
|
|
112
112
|
3. **더 깔끔한 URL**: 경로에 로케일 접두사가 없습니다
|
|
113
113
|
4. **더 쉬운 유지보수**: 각 언어별 배포가 독립적입니다
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Zalety routingu opartego na domenach
|
|
109
109
|
|
|
110
|
-
1. **Prostsza konfiguracja**: Nie ma potrzeby konfigurowania `
|
|
110
|
+
1. **Prostsza konfiguracja**: Nie ma potrzeby konfigurowania `intlayerProxy`, `generateStaticParams`, `react-router` ani `vue-router`
|
|
111
111
|
2. **Lepsze SEO**: Każdy język ma własną domenę
|
|
112
112
|
3. **Czystsze adresy URL**: Brak prefiksu lokalizacji w ścieżce
|
|
113
113
|
4. **Łatwiejsza konserwacja**: Każde wdrożenie języka jest niezależne
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Benefícios do roteamento baseado em domínio
|
|
109
109
|
|
|
110
|
-
1. **Configuração mais simples**: Não é necessário configurar `
|
|
110
|
+
1. **Configuração mais simples**: Não é necessário configurar `intlayerProxy`, `generateStaticParams`, `react-router` ou `vue-router`
|
|
111
111
|
2. **Melhor SEO**: Cada idioma possui seu próprio domínio
|
|
112
112
|
3. **URLs mais limpas**: Sem prefixo de localidade no caminho
|
|
113
113
|
4. **Manutenção mais fácil**: Cada implantação de idioma é independente
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Преимущества маршрутизации на основе доменов
|
|
109
109
|
|
|
110
|
-
1. **Проще конфигурация**: Нет необходимости настраивать `
|
|
110
|
+
1. **Проще конфигурация**: Нет необходимости настраивать `intlayerProxy`, `generateStaticParams`, `react-router` или `vue-router`
|
|
111
111
|
2. **Лучшее SEO**: Для каждого языка используется собственный домен
|
|
112
112
|
3. **Чище URL**: В пути отсутствует префикс локали
|
|
113
113
|
4. **Проще в обслуживании**: Развёртывание для каждого языка независимо
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Alan adına göre yönlendirmenin avantajları
|
|
109
109
|
|
|
110
|
-
1. **Daha basit yapılandırma**: `
|
|
110
|
+
1. **Daha basit yapılandırma**: `intlayerProxy`, `generateStaticParams`, `react-router` veya `vue-router` yapılandırmaya gerek yok
|
|
111
111
|
2. **Daha iyi SEO**: Her dilin kendi domaini olur
|
|
112
112
|
3. **Daha temiz URL'ler**: Yolda dil öneki yok
|
|
113
113
|
4. **Daha kolay bakım**: Her dil dağıtımı bağımsızdır
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## Lợi ích của định tuyến dựa trên tên miền
|
|
109
109
|
|
|
110
|
-
1. **Cấu hình đơn giản hơn**: Không cần cấu hình `
|
|
110
|
+
1. **Cấu hình đơn giản hơn**: Không cần cấu hình `intlayerProxy`, `generateStaticParams`, `react-router`, hoặc `vue-router`
|
|
111
111
|
2. **SEO tốt hơn**: Mỗi ngôn ngữ có tên miền riêng
|
|
112
112
|
3. **URL sạch hơn**: Không có tiền tố ngôn ngữ trong đường dẫn
|
|
113
113
|
4. **Dễ bảo trì hơn**: Mỗi triển khai ngôn ngữ là độc lập
|
|
@@ -107,7 +107,7 @@ function changeLanguage(target: Locale) {
|
|
|
107
107
|
|
|
108
108
|
## 基于域名路由的优势
|
|
109
109
|
|
|
110
|
-
1. **配置更简单**:无需配置 `
|
|
110
|
+
1. **配置更简单**:无需配置 `intlayerProxy`、`generateStaticParams`、`react-router` 或 `vue-router`
|
|
111
111
|
2. **更好的SEO**:每种语言都有自己的域名
|
|
112
112
|
3. **更简洁的URL**:路径中没有语言前缀
|
|
113
113
|
4. **更易维护**:每种语言的部署相互独立
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intlayer/docs",
|
|
3
|
-
"version": "7.1.
|
|
3
|
+
"version": "7.1.1-canary.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Intlayer documentation",
|
|
6
6
|
"keywords": [
|
|
@@ -72,31 +72,24 @@
|
|
|
72
72
|
"watch": "webpack --config ./webpack.config.ts --watch"
|
|
73
73
|
},
|
|
74
74
|
"dependencies": {
|
|
75
|
-
"@intlayer/config": "7.1.
|
|
76
|
-
"@intlayer/core": "7.1.
|
|
77
|
-
"@intlayer/types": "7.1.
|
|
75
|
+
"@intlayer/config": "7.1.1-canary.0",
|
|
76
|
+
"@intlayer/core": "7.1.1-canary.0",
|
|
77
|
+
"@intlayer/types": "7.1.1-canary.0"
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {
|
|
80
|
-
"@intlayer/api": "7.1.
|
|
81
|
-
"@intlayer/cli": "7.1.
|
|
80
|
+
"@intlayer/api": "7.1.1-canary.0",
|
|
81
|
+
"@intlayer/cli": "7.1.1-canary.0",
|
|
82
82
|
"@types/node": "24.10.1",
|
|
83
83
|
"@utils/ts-config": "1.0.4",
|
|
84
84
|
"@utils/ts-config-types": "1.0.4",
|
|
85
85
|
"@utils/tsdown-config": "1.0.4",
|
|
86
86
|
"fast-glob": "3.3.3",
|
|
87
87
|
"rimraf": "6.1.0",
|
|
88
|
-
"tsdown": "0.16.
|
|
88
|
+
"tsdown": "0.16.5",
|
|
89
89
|
"tsx": "^4.20.6",
|
|
90
90
|
"typescript": "5.9.3",
|
|
91
91
|
"vitest": "4.0.8"
|
|
92
92
|
},
|
|
93
|
-
"peerDependencies": {
|
|
94
|
-
"@intlayer/api": "7.1.0-canary.2",
|
|
95
|
-
"@intlayer/cli": "7.1.0-canary.2",
|
|
96
|
-
"@intlayer/config": "7.1.0-canary.2",
|
|
97
|
-
"@intlayer/core": "7.1.0-canary.2",
|
|
98
|
-
"@intlayer/types": "7.1.0-canary.2"
|
|
99
|
-
},
|
|
100
93
|
"engines": {
|
|
101
94
|
"node": ">=14.18"
|
|
102
95
|
},
|