@intlayer/docs 8.4.10 → 8.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/generated/docs.entry.cjs +40 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +40 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +2 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/dictionary/html.md +32 -25
- package/docs/ar/dictionary/markdown.md +33 -35
- package/docs/ar/intlayer_with_analog.md +10 -27
- package/docs/ar/intlayer_with_angular.md +1 -12
- package/docs/ar/intlayer_with_nextjs_14.md +1 -1
- package/docs/ar/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ar/intlayer_with_react_router_v7.md +6 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/ar/intlayer_with_storybook.md +2 -5
- package/docs/ar/intlayer_with_svelte_kit.md +9 -5
- package/docs/ar/intlayer_with_vite+lit.md +689 -0
- package/docs/ar/intlayer_with_vite+react.md +16 -4
- package/docs/ar/intlayer_with_vite+solid.md +1 -1
- package/docs/ar/intlayer_with_vite+svelte.md +13 -6
- package/docs/ar/intlayer_with_vite+vanilla.md +722 -0
- package/docs/ar/intlayer_with_vite+vue.md +24 -8
- package/docs/ar/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/ar/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/ar/releases/v8.md +27 -27
- package/docs/bn/intlayer_with_storybook.md +2 -5
- package/docs/bn/intlayer_with_vite+lit.md +689 -0
- package/docs/bn/intlayer_with_vite+vanilla.md +722 -0
- package/docs/cs/intlayer_with_storybook.md +2 -5
- package/docs/cs/intlayer_with_vite+lit.md +689 -0
- package/docs/cs/intlayer_with_vite+vanilla.md +722 -0
- package/docs/de/compiler.md +6 -1
- package/docs/de/configuration.md +12 -9
- package/docs/de/dictionary/html.md +151 -26
- package/docs/de/dictionary/markdown.md +154 -42
- package/docs/de/intlayer_with_analog.md +10 -27
- package/docs/de/intlayer_with_angular.md +1 -12
- package/docs/de/intlayer_with_nextjs_14.md +1 -1
- package/docs/de/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/de/intlayer_with_react_router_v7.md +6 -1
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/de/intlayer_with_storybook.md +2 -5
- package/docs/de/intlayer_with_svelte_kit.md +9 -5
- package/docs/de/intlayer_with_vite+lit.md +698 -0
- package/docs/de/intlayer_with_vite+react.md +16 -4
- package/docs/de/intlayer_with_vite+solid.md +1 -1
- package/docs/de/intlayer_with_vite+svelte.md +19 -6
- package/docs/de/intlayer_with_vite+vanilla.md +722 -0
- package/docs/de/intlayer_with_vite+vue.md +24 -8
- package/docs/de/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/de/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/de/releases/v8.md +27 -27
- package/docs/en/compiler.md +6 -1
- package/docs/en/configuration.md +12 -9
- package/docs/en/dictionary/html.md +152 -27
- package/docs/en/dictionary/markdown.md +154 -38
- package/docs/en/intlayer_with_analog.md +10 -27
- package/docs/en/intlayer_with_angular.md +1 -12
- package/docs/en/intlayer_with_nextjs_14.md +1 -1
- package/docs/en/intlayer_with_nextjs_16.md +12 -3
- package/docs/en/intlayer_with_nextjs_compiler.md +16 -4
- package/docs/en/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en/intlayer_with_react_router_v7.md +17 -4
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +18 -4
- package/docs/en/intlayer_with_storybook.md +2 -5
- package/docs/en/intlayer_with_svelte_kit.md +21 -8
- package/docs/en/intlayer_with_tanstack.md +12 -3
- package/docs/en/intlayer_with_vite+lit.md +703 -0
- package/docs/en/intlayer_with_vite+preact.md +31 -3
- package/docs/en/intlayer_with_vite+react.md +28 -7
- package/docs/en/intlayer_with_vite+react_compiler.md +4 -1
- package/docs/en/intlayer_with_vite+solid.md +31 -3
- package/docs/en/intlayer_with_vite+svelte.md +30 -9
- package/docs/en/intlayer_with_vite+vanilla.md +725 -0
- package/docs/en/intlayer_with_vite+vue.md +41 -10
- package/docs/en/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/en/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/en/readme.md +1 -0
- package/docs/en/releases/v8.md +27 -27
- package/docs/en-GB/compiler.md +4 -1
- package/docs/en-GB/configuration.md +4 -1
- package/docs/en-GB/dictionary/html.md +32 -25
- package/docs/en-GB/dictionary/markdown.md +34 -36
- package/docs/en-GB/intlayer_with_analog.md +10 -27
- package/docs/en-GB/intlayer_with_angular.md +1 -12
- package/docs/en-GB/intlayer_with_nextjs_14.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en-GB/intlayer_with_react_router_v7.md +6 -1
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/en-GB/intlayer_with_storybook.md +2 -5
- package/docs/en-GB/intlayer_with_svelte_kit.md +9 -5
- package/docs/en-GB/intlayer_with_vite+lit.md +703 -0
- package/docs/en-GB/intlayer_with_vite+react.md +15 -3
- package/docs/en-GB/intlayer_with_vite+solid.md +1 -1
- package/docs/en-GB/intlayer_with_vite+svelte.md +17 -5
- package/docs/en-GB/intlayer_with_vite+vanilla.md +725 -0
- package/docs/en-GB/intlayer_with_vite+vue.md +19 -7
- package/docs/en-GB/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/en-GB/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/en-GB/releases/v8.md +27 -27
- package/docs/es/compiler.md +6 -1
- package/docs/es/configuration.md +12 -9
- package/docs/es/dictionary/html.md +152 -27
- package/docs/es/dictionary/markdown.md +155 -43
- package/docs/es/intlayer_with_analog.md +10 -27
- package/docs/es/intlayer_with_angular.md +1 -12
- package/docs/es/intlayer_with_nextjs_14.md +1 -1
- package/docs/es/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +6 -1
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/es/intlayer_with_storybook.md +2 -5
- package/docs/es/intlayer_with_svelte_kit.md +9 -5
- package/docs/es/intlayer_with_vite+lit.md +698 -0
- package/docs/es/intlayer_with_vite+react.md +16 -4
- package/docs/es/intlayer_with_vite+solid.md +1 -1
- package/docs/es/intlayer_with_vite+svelte.md +16 -6
- package/docs/es/intlayer_with_vite+vanilla.md +722 -0
- package/docs/es/intlayer_with_vite+vue.md +24 -8
- package/docs/es/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/es/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/es/releases/v8.md +27 -27
- package/docs/fr/compiler.md +8 -3
- package/docs/fr/configuration.md +12 -9
- package/docs/fr/dictionary/html.md +151 -26
- package/docs/fr/dictionary/markdown.md +155 -43
- package/docs/fr/intlayer_with_analog.md +10 -27
- package/docs/fr/intlayer_with_angular.md +1 -12
- package/docs/fr/intlayer_with_nextjs_14.md +1 -1
- package/docs/fr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/fr/intlayer_with_react_router_v7.md +6 -1
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/fr/intlayer_with_storybook.md +2 -5
- package/docs/fr/intlayer_with_svelte_kit.md +9 -5
- package/docs/fr/intlayer_with_vite+lit.md +698 -0
- package/docs/fr/intlayer_with_vite+react.md +16 -4
- package/docs/fr/intlayer_with_vite+solid.md +1 -1
- package/docs/fr/intlayer_with_vite+svelte.md +19 -6
- package/docs/fr/intlayer_with_vite+vanilla.md +722 -0
- package/docs/fr/intlayer_with_vite+vue.md +24 -8
- package/docs/fr/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/fr/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/fr/releases/v8.md +27 -27
- package/docs/hi/dictionary/html.md +32 -25
- package/docs/hi/dictionary/markdown.md +35 -37
- package/docs/hi/intlayer_with_analog.md +10 -27
- package/docs/hi/intlayer_with_angular.md +1 -12
- package/docs/hi/intlayer_with_nextjs_14.md +1 -1
- package/docs/hi/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/hi/intlayer_with_react_router_v7.md +6 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/hi/intlayer_with_storybook.md +2 -5
- package/docs/hi/intlayer_with_svelte_kit.md +9 -5
- package/docs/hi/intlayer_with_vite+lit.md +689 -0
- package/docs/hi/intlayer_with_vite+react.md +16 -4
- package/docs/hi/intlayer_with_vite+solid.md +1 -1
- package/docs/hi/intlayer_with_vite+svelte.md +13 -6
- package/docs/hi/intlayer_with_vite+vanilla.md +722 -0
- package/docs/hi/intlayer_with_vite+vue.md +24 -8
- package/docs/hi/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/hi/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/hi/releases/v8.md +27 -27
- package/docs/id/dictionary/html.md +32 -25
- package/docs/id/dictionary/markdown.md +35 -37
- package/docs/id/intlayer_with_analog.md +10 -27
- package/docs/id/intlayer_with_angular.md +1 -12
- package/docs/id/intlayer_with_nextjs_14.md +1 -1
- package/docs/id/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/id/intlayer_with_react_router_v7.md +6 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/id/intlayer_with_storybook.md +2 -5
- package/docs/id/intlayer_with_svelte_kit.md +9 -5
- package/docs/id/intlayer_with_vite+lit.md +689 -0
- package/docs/id/intlayer_with_vite+react.md +16 -4
- package/docs/id/intlayer_with_vite+solid.md +1 -1
- package/docs/id/intlayer_with_vite+svelte.md +13 -6
- package/docs/id/intlayer_with_vite+vanilla.md +722 -0
- package/docs/id/intlayer_with_vite+vue.md +19 -7
- package/docs/id/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/id/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/id/releases/v8.md +27 -27
- package/docs/it/compiler.md +8 -3
- package/docs/it/configuration.md +12 -9
- package/docs/it/dictionary/html.md +151 -26
- package/docs/it/dictionary/markdown.md +155 -39
- package/docs/it/intlayer_with_analog.md +10 -27
- package/docs/it/intlayer_with_angular.md +1 -12
- package/docs/it/intlayer_with_nextjs_14.md +1 -1
- package/docs/it/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/it/intlayer_with_react_router_v7.md +6 -1
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/it/intlayer_with_storybook.md +2 -5
- package/docs/it/intlayer_with_svelte_kit.md +9 -5
- package/docs/it/intlayer_with_vite+lit.md +698 -0
- package/docs/it/intlayer_with_vite+react.md +16 -4
- package/docs/it/intlayer_with_vite+solid.md +1 -1
- package/docs/it/intlayer_with_vite+svelte.md +13 -6
- package/docs/it/intlayer_with_vite+vanilla.md +722 -0
- package/docs/it/intlayer_with_vite+vue.md +24 -8
- package/docs/it/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/it/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/it/releases/v8.md +27 -27
- package/docs/ja/dictionary/html.md +153 -29
- package/docs/ja/dictionary/markdown.md +154 -42
- package/docs/ja/intlayer_with_analog.md +10 -27
- package/docs/ja/intlayer_with_angular.md +1 -12
- package/docs/ja/intlayer_with_nextjs_14.md +1 -1
- package/docs/ja/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ja/intlayer_with_react_router_v7.md +6 -1
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/ja/intlayer_with_storybook.md +2 -5
- package/docs/ja/intlayer_with_vite+lit.md +698 -0
- package/docs/ja/intlayer_with_vite+solid.md +1 -1
- package/docs/ja/intlayer_with_vite+svelte.md +13 -6
- package/docs/ja/intlayer_with_vite+vanilla.md +722 -0
- package/docs/ja/intlayer_with_vite+vue.md +24 -8
- package/docs/ja/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/ja/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/ja/releases/v8.md +27 -27
- package/docs/ko/dictionary/html.md +154 -30
- package/docs/ko/dictionary/markdown.md +155 -43
- package/docs/ko/intlayer_with_analog.md +10 -27
- package/docs/ko/intlayer_with_angular.md +1 -12
- package/docs/ko/intlayer_with_nextjs_14.md +1 -1
- package/docs/ko/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ko/intlayer_with_react_router_v7.md +6 -1
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/ko/intlayer_with_storybook.md +2 -5
- package/docs/ko/intlayer_with_svelte_kit.md +9 -5
- package/docs/ko/intlayer_with_vite+lit.md +698 -0
- package/docs/ko/intlayer_with_vite+react.md +16 -4
- package/docs/ko/intlayer_with_vite+solid.md +1 -1
- package/docs/ko/intlayer_with_vite+svelte.md +13 -6
- package/docs/ko/intlayer_with_vite+vanilla.md +722 -0
- package/docs/ko/intlayer_with_vite+vue.md +24 -8
- package/docs/ko/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/ko/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/ko/releases/v8.md +27 -27
- package/docs/nl/intlayer_with_storybook.md +2 -5
- package/docs/nl/intlayer_with_vite+lit.md +689 -0
- package/docs/nl/intlayer_with_vite+vanilla.md +722 -0
- package/docs/pl/dictionary/html.md +151 -26
- package/docs/pl/dictionary/markdown.md +155 -43
- package/docs/pl/intlayer_with_analog.md +10 -27
- package/docs/pl/intlayer_with_angular.md +1 -12
- package/docs/pl/intlayer_with_nextjs_14.md +1 -1
- package/docs/pl/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/pl/intlayer_with_react_router_v7.md +6 -1
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/pl/intlayer_with_storybook.md +2 -5
- package/docs/pl/intlayer_with_svelte_kit.md +9 -5
- package/docs/pl/intlayer_with_vite+lit.md +689 -0
- package/docs/pl/intlayer_with_vite+react.md +16 -4
- package/docs/pl/intlayer_with_vite+solid.md +1 -1
- package/docs/pl/intlayer_with_vite+svelte.md +13 -6
- package/docs/pl/intlayer_with_vite+vanilla.md +722 -0
- package/docs/pl/intlayer_with_vite+vue.md +19 -7
- package/docs/pl/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/pl/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/pl/releases/v8.md +27 -27
- package/docs/pt/compiler.md +7 -2
- package/docs/pt/configuration.md +11 -9
- package/docs/pt/dictionary/html.md +132 -26
- package/docs/pt/dictionary/markdown.md +155 -43
- package/docs/pt/intlayer_with_analog.md +10 -27
- package/docs/pt/intlayer_with_angular.md +1 -12
- package/docs/pt/intlayer_with_nextjs_14.md +1 -1
- package/docs/pt/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7.md +6 -1
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/pt/intlayer_with_storybook.md +2 -5
- package/docs/pt/intlayer_with_svelte_kit.md +9 -5
- package/docs/pt/intlayer_with_vite+lit.md +698 -0
- package/docs/pt/intlayer_with_vite+react.md +16 -4
- package/docs/pt/intlayer_with_vite+solid.md +1 -1
- package/docs/pt/intlayer_with_vite+svelte.md +16 -6
- package/docs/pt/intlayer_with_vite+vanilla.md +722 -0
- package/docs/pt/intlayer_with_vite+vue.md +24 -8
- package/docs/pt/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/pt/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/pt/releases/v8.md +27 -27
- package/docs/ru/dictionary/html.md +153 -29
- package/docs/ru/dictionary/markdown.md +155 -41
- package/docs/ru/intlayer_with_analog.md +10 -27
- package/docs/ru/intlayer_with_angular.md +1 -12
- package/docs/ru/intlayer_with_nextjs_14.md +1 -1
- package/docs/ru/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ru/intlayer_with_react_router_v7.md +6 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/ru/intlayer_with_storybook.md +2 -5
- package/docs/ru/intlayer_with_svelte_kit.md +9 -5
- package/docs/ru/intlayer_with_vite+lit.md +698 -0
- package/docs/ru/intlayer_with_vite+react.md +16 -4
- package/docs/ru/intlayer_with_vite+solid.md +1 -1
- package/docs/ru/intlayer_with_vite+svelte.md +13 -6
- package/docs/ru/intlayer_with_vite+vanilla.md +722 -0
- package/docs/ru/intlayer_with_vite+vue.md +24 -8
- package/docs/ru/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/ru/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/ru/releases/v8.md +27 -27
- package/docs/tr/dictionary/html.md +134 -29
- package/docs/tr/dictionary/markdown.md +155 -41
- package/docs/tr/intlayer_with_analog.md +10 -27
- package/docs/tr/intlayer_with_angular.md +1 -12
- package/docs/tr/intlayer_with_nextjs_14.md +1 -1
- package/docs/tr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/tr/intlayer_with_react_router_v7.md +6 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/tr/intlayer_with_storybook.md +2 -5
- package/docs/tr/intlayer_with_svelte_kit.md +9 -5
- package/docs/tr/intlayer_with_vite+lit.md +689 -0
- package/docs/tr/intlayer_with_vite+react.md +16 -4
- package/docs/tr/intlayer_with_vite+solid.md +1 -1
- package/docs/tr/intlayer_with_vite+svelte.md +13 -6
- package/docs/tr/intlayer_with_vite+vanilla.md +722 -0
- package/docs/tr/intlayer_with_vite+vue.md +19 -7
- package/docs/tr/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/tr/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/tr/releases/v8.md +27 -27
- package/docs/uk/dictionary/html.md +32 -25
- package/docs/uk/dictionary/markdown.md +35 -37
- package/docs/uk/intlayer_with_analog.md +10 -27
- package/docs/uk/intlayer_with_angular.md +1 -12
- package/docs/uk/intlayer_with_nextjs_14.md +1 -1
- package/docs/uk/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/uk/intlayer_with_react_router_v7.md +5 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/uk/intlayer_with_storybook.md +2 -5
- package/docs/uk/intlayer_with_svelte_kit.md +9 -5
- package/docs/uk/intlayer_with_vite+lit.md +689 -0
- package/docs/uk/intlayer_with_vite+react.md +16 -4
- package/docs/uk/intlayer_with_vite+solid.md +1 -1
- package/docs/uk/intlayer_with_vite+svelte.md +18 -6
- package/docs/uk/intlayer_with_vite+vanilla.md +722 -0
- package/docs/uk/intlayer_with_vite+vue.md +19 -7
- package/docs/uk/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/uk/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/uk/releases/v8.md +27 -27
- package/docs/ur/intlayer_with_storybook.md +2 -5
- package/docs/ur/intlayer_with_vite+lit.md +689 -0
- package/docs/ur/intlayer_with_vite+vanilla.md +722 -0
- package/docs/vi/dictionary/html.md +32 -25
- package/docs/vi/dictionary/markdown.md +35 -37
- package/docs/vi/intlayer_with_analog.md +10 -27
- package/docs/vi/intlayer_with_angular.md +1 -12
- package/docs/vi/intlayer_with_nextjs_14.md +1 -1
- package/docs/vi/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/vi/intlayer_with_react_router_v7.md +6 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/vi/intlayer_with_storybook.md +2 -5
- package/docs/vi/intlayer_with_svelte_kit.md +9 -5
- package/docs/vi/intlayer_with_vite+lit.md +689 -0
- package/docs/vi/intlayer_with_vite+react.md +16 -4
- package/docs/vi/intlayer_with_vite+solid.md +1 -1
- package/docs/vi/intlayer_with_vite+svelte.md +17 -5
- package/docs/vi/intlayer_with_vite+vanilla.md +722 -0
- package/docs/vi/intlayer_with_vite+vue.md +19 -7
- package/docs/vi/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/vi/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/vi/releases/v8.md +27 -27
- package/docs/zh/compiler.md +8 -3
- package/docs/zh/configuration.md +4 -1
- package/docs/zh/dictionary/html.md +153 -29
- package/docs/zh/dictionary/markdown.md +155 -39
- package/docs/zh/intlayer_with_analog.md +10 -27
- package/docs/zh/intlayer_with_angular.md +1 -12
- package/docs/zh/intlayer_with_nextjs_14.md +1 -1
- package/docs/zh/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/zh/intlayer_with_react_router_v7.md +6 -1
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +6 -1
- package/docs/zh/intlayer_with_storybook.md +2 -5
- package/docs/zh/intlayer_with_svelte_kit.md +9 -5
- package/docs/zh/intlayer_with_vite+lit.md +698 -0
- package/docs/zh/intlayer_with_vite+react.md +16 -4
- package/docs/zh/intlayer_with_vite+solid.md +1 -1
- package/docs/zh/intlayer_with_vite+svelte.md +16 -6
- package/docs/zh/intlayer_with_vite+vanilla.md +722 -0
- package/docs/zh/intlayer_with_vite+vue.md +19 -7
- package/docs/zh/packages/react-intlayer/MarkdownRenderer.md +1 -1
- package/docs/zh/packages/svelte-intlayer/useRewriteURL.md +1 -1
- package/docs/zh/releases/v8.md +27 -27
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +40 -0
|
@@ -0,0 +1,689 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-03-23
|
|
3
|
+
updatedAt: 2026-03-23
|
|
4
|
+
title: Vite + Lit i18n - 2026'da bir Lit uygulaması nasıl çevrilir
|
|
5
|
+
description: Vite ve Lit web sitenizi nasıl çok dilli hale getireceğinizi keşfedin. Uluslararasılaştırmak (i18n) ve çevirmek için belgeleri takip edin.
|
|
6
|
+
keywords:
|
|
7
|
+
- Uluslararasılaştırma
|
|
8
|
+
- Belgeler
|
|
9
|
+
- Intlayer
|
|
10
|
+
- Vite
|
|
11
|
+
- Lit
|
|
12
|
+
- Web Bileşenleri
|
|
13
|
+
- JavaScript
|
|
14
|
+
slugs:
|
|
15
|
+
- doc
|
|
16
|
+
- environment
|
|
17
|
+
- vite-and-lit
|
|
18
|
+
applicationTemplate: https://github.com/aymericzip/intlayer-vite-lit-template
|
|
19
|
+
history:
|
|
20
|
+
- version: 8.4.10
|
|
21
|
+
date: 2026-03-23
|
|
22
|
+
changes: "Init history"
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# Intlayer kullanarak Vite ve Lit web sitenizi çevirin | Uluslararasılaştırma (i18n)
|
|
26
|
+
|
|
27
|
+
<iframe
|
|
28
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-vite-lit-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
29
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
30
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
31
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
32
|
+
loading="lazy"
|
|
33
|
+
/>
|
|
34
|
+
|
|
35
|
+
## İçindekiler
|
|
36
|
+
|
|
37
|
+
<TOC/>
|
|
38
|
+
|
|
39
|
+
## Intlayer Nedir?
|
|
40
|
+
|
|
41
|
+
**Intlayer**, modern web uygulamalarında çok dilli desteği basitleştirmek için tasarlanmış yenilikçi, açık kaynaklı bir uluslararasılaştırma (i18n) kütüphanesidir.
|
|
42
|
+
|
|
43
|
+
Intlayer ile şunları yapabilirsiniz:
|
|
44
|
+
|
|
45
|
+
- Bileşen düzeyinde bildirimsel sözlükler kullanarak **çevirileri kolayca yönetin**.
|
|
46
|
+
- Metadataları, rotaları ve içeriği **dinamik olarak yerelleştirin**.
|
|
47
|
+
- Otomatik oluşturulan tiplerle **TypeScript desteğini sağlayın**, otomatik tamamlama ve hata algılamayı iyileştirin.
|
|
48
|
+
- Dinamik dil algılama ve değiştirme gibi **gelişmiş özelliklerden yararlanın**.
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Vite ve Lit Uygulamasında Intlayer Kurulumu İçin Adım Adım Kılavuz
|
|
53
|
+
|
|
54
|
+
### Adım 1: Bağımlılıkları Yükleyin
|
|
55
|
+
|
|
56
|
+
Gerekli paketleri npm kullanarak yükleyin:
|
|
57
|
+
|
|
58
|
+
```bash packageManager="npm"
|
|
59
|
+
npm install intlayer lit-intlayer
|
|
60
|
+
npm install vite-intlayer --save-dev
|
|
61
|
+
npx intlayer init
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
```bash packageManager="pnpm"
|
|
65
|
+
pnpm add intlayer lit-intlayer
|
|
66
|
+
pnpm add vite-intlayer --save-dev
|
|
67
|
+
pnpm intlayer init
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
```bash packageManager="yarn"
|
|
71
|
+
yarn add intlayer lit-intlayer
|
|
72
|
+
yarn add vite-intlayer --save-dev
|
|
73
|
+
yarn intlayer init
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
```bash packageManager="bun"
|
|
77
|
+
bun add intlayer lit-intlayer
|
|
78
|
+
bun add vite-intlayer --dev
|
|
79
|
+
bunx intlayer init
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
- **intlayer**
|
|
83
|
+
|
|
84
|
+
Yapılandırma yönetimi, çeviri, [içerik bildirimi](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/dictionary/content_file.md), transpilasyon ve [CLI komutları](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/cli/index.md) için uluslararasılaştırma araçları sağlayan temel paket.
|
|
85
|
+
|
|
86
|
+
- **lit-intlayer**
|
|
87
|
+
Intlayer'ı Lit uygulamalarıyla entegre eden paket. Dil değiştiğinde LitElement'lerin otomatik olarak yeniden oluşturulması için `ReactiveController` tabanlı kancalar (`useIntlayer`, `useLocale` vb.) sağlar.
|
|
88
|
+
|
|
89
|
+
- **vite-intlayer**
|
|
90
|
+
Intlayer'ı [Vite paketleyici](https://vite.dev/guide/why.html#why-bundle-for-production) ile entegre etmek için Vite eklentisini ve kullanıcının tercih ettiği dili algılamayı, çerezleri yönetmeyi ve URL yönlendirmesini işlemeyi sağlayan ara yazılımı içerir.
|
|
91
|
+
|
|
92
|
+
### Adım 2: Projenizin Yapılandırılması
|
|
93
|
+
|
|
94
|
+
Uygulamanızın dillerini yapılandırmak için bir yapılandırma dosyası oluşturun:
|
|
95
|
+
|
|
96
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
97
|
+
import { Locales, type IntlayerConfig } from "intlayer";
|
|
98
|
+
|
|
99
|
+
const config: IntlayerConfig = {
|
|
100
|
+
internationalization: {
|
|
101
|
+
locales: [
|
|
102
|
+
Locales.ENGLISH,
|
|
103
|
+
Locales.FRENCH,
|
|
104
|
+
Locales.SPANISH,
|
|
105
|
+
// Diğer dilleriniz
|
|
106
|
+
],
|
|
107
|
+
defaultLocale: Locales.ENGLISH,
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
export default config;
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
115
|
+
import { Locales } from "intlayer";
|
|
116
|
+
|
|
117
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
118
|
+
const config = {
|
|
119
|
+
internationalization: {
|
|
120
|
+
locales: [
|
|
121
|
+
Locales.ENGLISH,
|
|
122
|
+
Locales.FRENCH,
|
|
123
|
+
Locales.SPANISH,
|
|
124
|
+
// Diğer dilleriniz
|
|
125
|
+
],
|
|
126
|
+
defaultLocale: Locales.ENGLISH,
|
|
127
|
+
},
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
export default config;
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
134
|
+
const { Locales } = require("intlayer");
|
|
135
|
+
|
|
136
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
137
|
+
const config = {
|
|
138
|
+
internationalization: {
|
|
139
|
+
locales: [
|
|
140
|
+
Locales.ENGLISH,
|
|
141
|
+
Locales.FRENCH,
|
|
142
|
+
Locales.SPANISH,
|
|
143
|
+
// Diğer dilleriniz
|
|
144
|
+
],
|
|
145
|
+
defaultLocale: Locales.ENGLISH,
|
|
146
|
+
},
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
module.exports = config;
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
> Bu yapılandırma dosyası aracılığıyla, yerelleştirilmiş URL'ler, ara yazılım yönlendirmesi, çerez adları, içerik bildirimlerinizin konumu ve uzantısı, konsoldaki Intlayer günlüklerini devre dışı bırakma ve daha fazlasını ayarlayabilirsiniz. Kullanılabilir parametrelerin tam listesi için [yapılandırma belgelerine](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/configuration.md) bakın.
|
|
153
|
+
|
|
154
|
+
### Adım 3: Intlayer'ı Vite Yapılandırmanıza Entegre Edin
|
|
155
|
+
|
|
156
|
+
Yapılandırmanıza intlayer eklentisini ekleyin.
|
|
157
|
+
|
|
158
|
+
```typescript fileName="vite.config.ts" codeFormat="typescript"
|
|
159
|
+
import { defineConfig } from "vite";
|
|
160
|
+
import { intlayer } from "vite-intlayer";
|
|
161
|
+
|
|
162
|
+
// https://vitejs.dev/config/
|
|
163
|
+
export default defineConfig({
|
|
164
|
+
plugins: [intlayer()],
|
|
165
|
+
});
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
```javascript fileName="vite.config.mjs" codeFormat="esm"
|
|
169
|
+
import { defineConfig } from "vite";
|
|
170
|
+
import { intlayer } from "vite-intlayer";
|
|
171
|
+
|
|
172
|
+
// https://vitejs.dev/config/
|
|
173
|
+
export default defineConfig({
|
|
174
|
+
plugins: [intlayer()],
|
|
175
|
+
});
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
```javascript fileName="vite.config.cjs" codeFormat="commonjs"
|
|
179
|
+
const { defineConfig } = require("vite");
|
|
180
|
+
const { intlayer } = require("vite-intlayer");
|
|
181
|
+
|
|
182
|
+
// https://vitejs.dev/config/
|
|
183
|
+
module.exports = defineConfig({
|
|
184
|
+
plugins: [intlayer()],
|
|
185
|
+
});
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
> `intlayer()` Vite eklentisi, Intlayer'ı Vite ile entegre etmek için kullanılır. İçerik bildirimi dosyalarının oluşturulmasını sağlar ve bunları geliştirme modunda izler. Vite uygulaması içinde Intlayer ortam değişkenlerini tanımlar. Ayrıca performansı optimize etmek için takma adlar (aliases) sağlar.
|
|
189
|
+
|
|
190
|
+
### Adım 4: Giriş Noktasında Intlayer'ı Başlatın
|
|
191
|
+
|
|
192
|
+
Herhangi bir özel öğe kaydedilmeden **önce** `installIntlayer()` işlevini çağırın, böylece ilk öğe bağlandığında küresel dil tekili hazır olur.
|
|
193
|
+
|
|
194
|
+
```typescript fileName="src/main.ts" codeFormat="typescript"
|
|
195
|
+
import { installIntlayer } from "lit-intlayer";
|
|
196
|
+
|
|
197
|
+
// Herhangi bir LitElement DOM'a bağlanmadan önce çağrılmalıdır.
|
|
198
|
+
installIntlayer();
|
|
199
|
+
|
|
200
|
+
// Özel öğelerinizi içe aktarın ve kaydedin.
|
|
201
|
+
import "./my-element.js";
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
Ayrıca `md()` içerik bildirimlerini (Markdown) kullanıyorsanız, markdown oluşturucuyu da yükleyin:
|
|
205
|
+
|
|
206
|
+
```typescript fileName="src/main.ts" codeFormat="typescript"
|
|
207
|
+
import { installIntlayer, installIntlayerMarkdown } from "lit-intlayer";
|
|
208
|
+
|
|
209
|
+
installIntlayer();
|
|
210
|
+
installIntlayerMarkdown();
|
|
211
|
+
|
|
212
|
+
import "./my-element.js";
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
### Adım 5: İçeriğinizi Bildirin
|
|
216
|
+
|
|
217
|
+
Çevirileri saklamak için içerik bildirimlerinizi oluşturun ve yönetin:
|
|
218
|
+
|
|
219
|
+
```typescript fileName="src/app.content.ts" contentDeclarationFormat="typescript"
|
|
220
|
+
import { t, type Dictionary } from "intlayer";
|
|
221
|
+
|
|
222
|
+
const appContent = {
|
|
223
|
+
key: "app",
|
|
224
|
+
content: {
|
|
225
|
+
title: "Vite + Lit",
|
|
226
|
+
|
|
227
|
+
viteLogo: t({
|
|
228
|
+
en: "Vite logo",
|
|
229
|
+
fr: "Logo Vite",
|
|
230
|
+
es: "Logo Vite",
|
|
231
|
+
}),
|
|
232
|
+
litLogo: t({
|
|
233
|
+
en: "Lit logo",
|
|
234
|
+
fr: "Logo Lit",
|
|
235
|
+
es: "Logo Lit",
|
|
236
|
+
}),
|
|
237
|
+
|
|
238
|
+
count: t({
|
|
239
|
+
en: "count is {{count}}",
|
|
240
|
+
fr: "le compte est {{count}}",
|
|
241
|
+
es: "el recuento es {{count}}",
|
|
242
|
+
}),
|
|
243
|
+
|
|
244
|
+
readTheDocs: t({
|
|
245
|
+
en: "Click on the Vite and Lit logos to learn more",
|
|
246
|
+
fr: "Cliquez sur les logos Vite et Lit pour en savoir plus",
|
|
247
|
+
es: "Haga clic en los logotipos de Vite y Lit para obtener más información",
|
|
248
|
+
}),
|
|
249
|
+
},
|
|
250
|
+
} satisfies Dictionary;
|
|
251
|
+
|
|
252
|
+
export default appContent;
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
```javascript fileName="src/app.content.mjs" contentDeclarationFormat="esm"
|
|
256
|
+
import { t } from "intlayer";
|
|
257
|
+
|
|
258
|
+
/** @type {import('intlayer').Dictionary} */
|
|
259
|
+
const appContent = {
|
|
260
|
+
key: "app",
|
|
261
|
+
content: {
|
|
262
|
+
title: "Vite + Lit",
|
|
263
|
+
|
|
264
|
+
viteLogo: t({
|
|
265
|
+
en: "Vite logo",
|
|
266
|
+
fr: "Logo Vite",
|
|
267
|
+
es: "Logo Vite",
|
|
268
|
+
}),
|
|
269
|
+
litLogo: t({
|
|
270
|
+
en: "Lit logo",
|
|
271
|
+
fr: "Logo Lit",
|
|
272
|
+
es: "Logo Lit",
|
|
273
|
+
}),
|
|
274
|
+
|
|
275
|
+
count: t({
|
|
276
|
+
en: "count is {{count}}",
|
|
277
|
+
fr: "le compte est {{count}}",
|
|
278
|
+
es: "el recuento es {{count}}",
|
|
279
|
+
}),
|
|
280
|
+
|
|
281
|
+
readTheDocs: t({
|
|
282
|
+
en: "Click on the Vite and Lit logos to learn more",
|
|
283
|
+
fr: "Cliquez sur les logos Vite et Lit pour en savoir plus",
|
|
284
|
+
es: "Haga clic en los logotipos de Vite y Lit para obtener más información",
|
|
285
|
+
}),
|
|
286
|
+
},
|
|
287
|
+
};
|
|
288
|
+
|
|
289
|
+
export default appContent;
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
```javascript fileName="src/app.content.cjs" contentDeclarationFormat="commonjs"
|
|
293
|
+
const { t } = require("intlayer");
|
|
294
|
+
|
|
295
|
+
/** @type {import('intlayer').Dictionary} */
|
|
296
|
+
const appContent = {
|
|
297
|
+
key: "app",
|
|
298
|
+
content: {
|
|
299
|
+
title: "Vite + Lit",
|
|
300
|
+
|
|
301
|
+
viteLogo: t({
|
|
302
|
+
en: "Vite logo",
|
|
303
|
+
fr: "Logo Vite",
|
|
304
|
+
es: "Logo Vite",
|
|
305
|
+
}),
|
|
306
|
+
litLogo: t({
|
|
307
|
+
en: "Lit logo",
|
|
308
|
+
fr: "Logo Lit",
|
|
309
|
+
es: "Logo Lit",
|
|
310
|
+
}),
|
|
311
|
+
|
|
312
|
+
count: t({
|
|
313
|
+
en: "count is {{count}}",
|
|
314
|
+
fr: "le compte est {{count}}",
|
|
315
|
+
es: "el recuento es {{count}}",
|
|
316
|
+
}),
|
|
317
|
+
|
|
318
|
+
readTheDocs: t({
|
|
319
|
+
en: "Click on the Vite and Lit logos to learn more",
|
|
320
|
+
fr: "Cliquez sur les logos Vite et Lit pour en savoir plus",
|
|
321
|
+
es: "Haga clic en los logotipos de Vite y Lit para obtener más información",
|
|
322
|
+
}),
|
|
323
|
+
},
|
|
324
|
+
};
|
|
325
|
+
|
|
326
|
+
module.exports = appContent;
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
```json fileName="src/app.content.json" contentDeclarationFormat="json"
|
|
330
|
+
{
|
|
331
|
+
"$schema": "https://intlayer.org/schema.json",
|
|
332
|
+
"key": "app",
|
|
333
|
+
"content": {
|
|
334
|
+
"title": "Vite + Lit",
|
|
335
|
+
"viteLogo": {
|
|
336
|
+
"nodeType": "translation",
|
|
337
|
+
"translation": {
|
|
338
|
+
"en": "Vite logo",
|
|
339
|
+
"fr": "Logo Vite",
|
|
340
|
+
"es": "Logo Vite"
|
|
341
|
+
}
|
|
342
|
+
},
|
|
343
|
+
"litLogo": {
|
|
344
|
+
"nodeType": "translation",
|
|
345
|
+
"translation": {
|
|
346
|
+
"en": "Lit logo",
|
|
347
|
+
"fr": "Logo Lit",
|
|
348
|
+
"es": "Logo Lit"
|
|
349
|
+
}
|
|
350
|
+
},
|
|
351
|
+
"count": {
|
|
352
|
+
"nodeType": "translation",
|
|
353
|
+
"translation": {
|
|
354
|
+
"en": "count is {{count}}",
|
|
355
|
+
"fr": "le compte est {{count}}",
|
|
356
|
+
"es": "el recuento es {{count}}"
|
|
357
|
+
}
|
|
358
|
+
},
|
|
359
|
+
"readTheDocs": {
|
|
360
|
+
"nodeType": "translation",
|
|
361
|
+
"translation": {
|
|
362
|
+
"en": "Click on the Vite and Lit logos to learn more",
|
|
363
|
+
"fr": "Cliquez sur les logos Vite et Lit pour en savoir plus",
|
|
364
|
+
"es": "Haga clic en los logotipos de Vite y Lit para obtener más información"
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
> İçerik bildirimleriniz, `contentDir` dizinine (varsayılan olarak `./src`) dahil edildikleri ve içerik bildirimi dosyası uzantısıyla (varsayılan olarak `.content.{json,ts,tsx,js,jsx,mjs,cjs}`) eşleştikleri sürece uygulamanızın herhangi bir yerinde tanımlanabilir.
|
|
372
|
+
>
|
|
373
|
+
> Daha fazla ayrıntı için [içerik bildirimi belgelerine](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/dictionary/content_file.md) bakın.
|
|
374
|
+
|
|
375
|
+
### Adım 6: LitElement'inizde Intlayer'ı Kullanın
|
|
376
|
+
|
|
377
|
+
Bir `LitElement` içinde `useIntlayer` kullanın. Aktif dil değiştiğinde otomatik olarak yeniden oluşturma işlemini tetikleyen bir `ReactiveController` proxy'si döndürür — ekstra kurulum gerekmez.
|
|
378
|
+
|
|
379
|
+
```typescript fileName="src/my-element.ts" codeFormat="typescript"
|
|
380
|
+
import { LitElement, html } from "lit";
|
|
381
|
+
import { customElement, property } from "lit/decorators.js";
|
|
382
|
+
import { useIntlayer } from "lit-intlayer";
|
|
383
|
+
|
|
384
|
+
@customElement("my-element")
|
|
385
|
+
export class MyElement extends LitElement {
|
|
386
|
+
@property({ type: Number })
|
|
387
|
+
count = 0;
|
|
388
|
+
|
|
389
|
+
// useIntlayer kendisini bir ReactiveController olarak kaydeder.
|
|
390
|
+
// Dil değiştiğinde öğe otomatik olarak yeniden oluşturulur.
|
|
391
|
+
private content = useIntlayer(this, "app");
|
|
392
|
+
|
|
393
|
+
override render() {
|
|
394
|
+
const { content } = this;
|
|
395
|
+
|
|
396
|
+
return html`
|
|
397
|
+
<h1>${content.title}</h1>
|
|
398
|
+
|
|
399
|
+
<img src="/vite.svg" alt=${content.viteLogo.value} />
|
|
400
|
+
<img src="/lit.svg" alt=${content.litLogo.value} />
|
|
401
|
+
|
|
402
|
+
<button @click=${() => this.count++}>
|
|
403
|
+
${content.count({ count: this.count })}
|
|
404
|
+
</button>
|
|
405
|
+
|
|
406
|
+
<p>${content.readTheDocs}</p>
|
|
407
|
+
`;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
> [!NOTE]
|
|
413
|
+
> Yerel bir HTML özniteliğinde (örneğin `alt`, `aria-label`, `title`) çevrilmiş dizeye ihtiyacınız olduğunda, yaprak düğüm üzerinde `.value` işlevini çağırın:
|
|
414
|
+
>
|
|
415
|
+
> ```typescript
|
|
416
|
+
> html`<img alt=${content.viteLogo.value} />`;
|
|
417
|
+
> ```
|
|
418
|
+
|
|
419
|
+
### (İsteğe Bağlı) Adım 7: İçeriğinizin Dilini Değiştirin
|
|
420
|
+
|
|
421
|
+
İçeriğinizin dilini değiştirmek için `useLocale` denetleyicisi tarafından sunulan `setLocale` yöntemini kullanın.
|
|
422
|
+
|
|
423
|
+
```typescript fileName="src/locale-switcher.ts" codeFormat="typescript"
|
|
424
|
+
import { LitElement, html } from "lit";
|
|
425
|
+
import { customElement } from "lit/decorators.js";
|
|
426
|
+
import { getLocaleName } from "intlayer";
|
|
427
|
+
import { useLocale } from "lit-intlayer";
|
|
428
|
+
|
|
429
|
+
@customElement("locale-switcher")
|
|
430
|
+
export class LocaleSwitcher extends LitElement {
|
|
431
|
+
private locale = useLocale(this);
|
|
432
|
+
|
|
433
|
+
private _onChange(e: Event) {
|
|
434
|
+
const select = e.target as HTMLSelectElement;
|
|
435
|
+
this.locale.setLocale(select.value as any);
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
override render() {
|
|
439
|
+
return html`
|
|
440
|
+
<select @change=${this._onChange}>
|
|
441
|
+
${this.locale.availableLocales.map(
|
|
442
|
+
(loc) => html`
|
|
443
|
+
<option value=${loc} ?selected=${loc === this.locale.locale}>
|
|
444
|
+
${getLocaleName(loc)}
|
|
445
|
+
</option>
|
|
446
|
+
`
|
|
447
|
+
)}
|
|
448
|
+
</select>
|
|
449
|
+
`;
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
### (İsteğe Bağlı) Adım 8: Markdown ve HTML İçeriğini Oluşturun
|
|
455
|
+
|
|
456
|
+
Intlayer `md()` ve `html()` içerik bildirimlerini destekler. Lit'te, derlenmiş çıktı `unsafeHTML` yönergesi aracılığıyla ham HTML olarak enjekte edilir.
|
|
457
|
+
|
|
458
|
+
```typescript fileName="src/app.content.ts" contentDeclarationFormat="typescript"
|
|
459
|
+
import { md, t, type Dictionary } from "intlayer";
|
|
460
|
+
|
|
461
|
+
const appContent = {
|
|
462
|
+
key: "app",
|
|
463
|
+
content: {
|
|
464
|
+
// ...
|
|
465
|
+
editNote: md(
|
|
466
|
+
t({
|
|
467
|
+
en: "Edit `src/my-element.ts` and save to test **HMR**",
|
|
468
|
+
fr: "Modifiez `src/my-element.ts` et enregistrez pour tester **HMR**",
|
|
469
|
+
es: "Edite `src/my-element.ts` y guarde para probar **HMR**",
|
|
470
|
+
})
|
|
471
|
+
),
|
|
472
|
+
},
|
|
473
|
+
} satisfies Dictionary;
|
|
474
|
+
|
|
475
|
+
export default appContent;
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
Derlenmiş HTML'yi öğenizde oluşturun:
|
|
479
|
+
|
|
480
|
+
```typescript fileName="src/my-element.ts" codeFormat="typescript"
|
|
481
|
+
import { LitElement, html } from "lit";
|
|
482
|
+
import { customElement } from "lit/decorators.js";
|
|
483
|
+
import { unsafeHTML } from "lit/directives/unsafe-html.js";
|
|
484
|
+
import { useIntlayer } from "lit-intlayer";
|
|
485
|
+
import { compileMarkdown } from "lit-intlayer/markdown";
|
|
486
|
+
|
|
487
|
+
@customElement("my-element")
|
|
488
|
+
export class MyElement extends LitElement {
|
|
489
|
+
private content = useIntlayer(this, "app");
|
|
490
|
+
|
|
491
|
+
override render() {
|
|
492
|
+
return html`
|
|
493
|
+
<div class="edit-note">
|
|
494
|
+
${unsafeHTML(compileMarkdown(String(this.content.editNote)))}
|
|
495
|
+
</div>
|
|
496
|
+
`;
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
```
|
|
500
|
+
|
|
501
|
+
> [!TIP]
|
|
502
|
+
> `String(content.editNote)`, `IntlayerNode` üzerinde ham Markdown dizesini döndüren `toString()` işlevini çağırır. Bir HTML dizesi almak için bunu `compileMarkdown` işlevine geçirin, ardından Lit'in `unsafeHTML` yönergesiyle oluşturun.
|
|
503
|
+
|
|
504
|
+
### (İsteğe Bağlı) Adım 9: Uygulamanıza Yerelleştirilmiş Yönlendirme Ekleyin
|
|
505
|
+
|
|
506
|
+
Her dil için benzersiz rotalar oluşturmak (SEO için yararlıdır), Intlayer'ın `localeMap` / `localeFlatMap` yardımcılarını ve sunucu tarafı dil algılama için `intlayerProxy` Vite eklentisini içeren bir istemci tarafı yönlendirici kullanabilirsiniz.
|
|
507
|
+
|
|
508
|
+
İlk olarak, Vite yapılandırmanıza `intlayerProxy` ekleyin:
|
|
509
|
+
|
|
510
|
+
> Üretimde `intlayerProxy` kullanmak için `vite-intlayer` paketini `devDependencies`'tan `dependencies`'a taşımanız gerektiğini unutmayın.
|
|
511
|
+
|
|
512
|
+
```typescript {3,7} fileName="vite.config.ts" codeFormat="typescript"
|
|
513
|
+
import { defineConfig } from "vite";
|
|
514
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
515
|
+
|
|
516
|
+
export default defineConfig({
|
|
517
|
+
plugins: [intlayer(), intlayerProxy()],
|
|
518
|
+
});
|
|
519
|
+
```
|
|
520
|
+
|
|
521
|
+
```javascript {3,7} fileName="vite.config.mjs" codeFormat="esm"
|
|
522
|
+
import { defineConfig } from "vite";
|
|
523
|
+
import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
524
|
+
|
|
525
|
+
export default defineConfig({
|
|
526
|
+
plugins: [intlayer(), intlayerProxy()],
|
|
527
|
+
});
|
|
528
|
+
```
|
|
529
|
+
|
|
530
|
+
```javascript {3,7} fileName="vite.config.cjs" codeFormat="commonjs"
|
|
531
|
+
const { defineConfig } = require("vite");
|
|
532
|
+
const { intlayer, intlayerProxy } = require("vite-intlayer");
|
|
533
|
+
|
|
534
|
+
module.exports = defineConfig({
|
|
535
|
+
plugins: [intlayer()],
|
|
536
|
+
});
|
|
537
|
+
```
|
|
538
|
+
|
|
539
|
+
### (İsteğe Bağlı) Adım 10: Dil Değiştiğinde URL'yi Değiştirin
|
|
540
|
+
|
|
541
|
+
Dil değiştiğinde tarayıcı URL'sini güncellemek için dil değiştiriciyle birlikte `useRewriteURL` kullanın:
|
|
542
|
+
|
|
543
|
+
```typescript fileName="src/locale-switcher.ts" codeFormat="typescript"
|
|
544
|
+
import { LitElement, html } from "lit";
|
|
545
|
+
import { customElement } from "lit/decorators.js";
|
|
546
|
+
import { getLocaleName, getLocalizedUrl } from "intlayer";
|
|
547
|
+
import { useLocale, useRewriteURL } from "lit-intlayer";
|
|
548
|
+
|
|
549
|
+
@customElement("locale-switcher")
|
|
550
|
+
export class LocaleSwitcher extends LitElement {
|
|
551
|
+
private locale = useLocale(this);
|
|
552
|
+
|
|
553
|
+
// Dil değiştiğinde geçerli URL'yi otomatik olarak yeniden yazar.
|
|
554
|
+
private _rewriteURL = useRewriteURL(this);
|
|
555
|
+
|
|
556
|
+
private _onChange(e: Event) {
|
|
557
|
+
const select = e.target as HTMLSelectElement;
|
|
558
|
+
this.locale.setLocale(select.value as any);
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
override render() {
|
|
562
|
+
return html`
|
|
563
|
+
<select @change=${this._onChange}>
|
|
564
|
+
${this.locale.availableLocales.map(
|
|
565
|
+
(loc) => html`
|
|
566
|
+
<option value=${loc} ?selected=${loc === this.locale.locale}>
|
|
567
|
+
${getLocaleName(loc)}
|
|
568
|
+
</option>
|
|
569
|
+
`
|
|
570
|
+
)}
|
|
571
|
+
</select>
|
|
572
|
+
`;
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
### (İsteğe Bağlı) Adım 11: HTML Dil ve Yön Özniteliklerini Değiştirin
|
|
578
|
+
|
|
579
|
+
Erişilebilirlik ve SEO için `<html>` etiketinin `lang` ve `dir` özniteliklerini geçerli dille eklenecek şekilde güncelleyin.
|
|
580
|
+
|
|
581
|
+
```typescript fileName="src/my-element.ts" codeFormat="typescript"
|
|
582
|
+
import { LitElement, html } from "lit";
|
|
583
|
+
import { customElement } from "lit/decorators.js";
|
|
584
|
+
import { getHTMLTextDir } from "intlayer";
|
|
585
|
+
import { useLocale } from "lit-intlayer";
|
|
586
|
+
|
|
587
|
+
@customElement("my-element")
|
|
588
|
+
export class MyElement extends LitElement {
|
|
589
|
+
private locale = useLocale(this, {
|
|
590
|
+
onLocaleChange: (loc) => {
|
|
591
|
+
document.documentElement.lang = loc;
|
|
592
|
+
document.documentElement.dir = getHTMLTextDir(loc);
|
|
593
|
+
},
|
|
594
|
+
});
|
|
595
|
+
|
|
596
|
+
override render() {
|
|
597
|
+
return html`<!-- içeriğiniz -->`;
|
|
598
|
+
}
|
|
599
|
+
}
|
|
600
|
+
```
|
|
601
|
+
|
|
602
|
+
### (İsteğe Bağlı) Adım 12: Bileşenlerinizin İçeriğini Çıkarın
|
|
603
|
+
|
|
604
|
+
Mevcut bir kod tabanınız varsa, binlerce dosyayı dönüştürmek zaman alıcı olabilir.
|
|
605
|
+
|
|
606
|
+
Bu süreci kolaylaştırmak için Intlayer, bileşenlerinizi dönüştürmek ve içeriği çıkarmak için bir [derleyici](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/compiler.md) / [çıkarıcı](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/cli/extract.md) önerir.
|
|
607
|
+
|
|
608
|
+
Kurulumu yapmak için `intlayer.config.ts` dosyanıza bir `compiler` bölümü ekleyebilirsiniz:
|
|
609
|
+
|
|
610
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
611
|
+
import { type IntlayerConfig } from "intlayer";
|
|
612
|
+
|
|
613
|
+
const config: IntlayerConfig = {
|
|
614
|
+
// ... Yapılandırmanızın geri kalanı
|
|
615
|
+
compiler: {
|
|
616
|
+
/**
|
|
617
|
+
* Derleyicinin etkinleştirilip etkinleştirilmeyeceğini belirtir.
|
|
618
|
+
*/
|
|
619
|
+
enabled: true,
|
|
620
|
+
|
|
621
|
+
/**
|
|
622
|
+
* Çıktı dosyaları yolunu tanımlar
|
|
623
|
+
*/
|
|
624
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
625
|
+
|
|
626
|
+
/**
|
|
627
|
+
* Bileşenlerin dönüştürüldükten sonra kaydedilip kaydedilmeyeceğini belirtir.
|
|
628
|
+
* Bu sayede derleyici, uygulamayı dönüştürmek için yalnızca bir kez çalıştırılabilir ve ardından kaldırılabilir.
|
|
629
|
+
*/
|
|
630
|
+
saveComponents: false,
|
|
631
|
+
|
|
632
|
+
/**
|
|
633
|
+
* Sözlük anahtarı öneki
|
|
634
|
+
*/
|
|
635
|
+
dictionaryKeyPrefix: "",
|
|
636
|
+
},
|
|
637
|
+
};
|
|
638
|
+
|
|
639
|
+
export default config;
|
|
640
|
+
```
|
|
641
|
+
|
|
642
|
+
### TypeScript Yapılandırması
|
|
643
|
+
|
|
644
|
+
TypeScript yapılandırmanızın otomatik oluşturulan tipleri içerdiğinden emin olun.
|
|
645
|
+
|
|
646
|
+
```json5 fileName="tsconfig.json"
|
|
647
|
+
{
|
|
648
|
+
"compilerOptions": {
|
|
649
|
+
// ...
|
|
650
|
+
"experimentalDecorators": true,
|
|
651
|
+
"useDefineForClassFields": false,
|
|
652
|
+
},
|
|
653
|
+
"include": ["src", ".intlayer/**/*.ts"],
|
|
654
|
+
}
|
|
655
|
+
```
|
|
656
|
+
|
|
657
|
+
> `experimentalDecorators` ve `useDefineForClassFields: false`, dekoratör desteği için Lit tarafından gereklidir.
|
|
658
|
+
|
|
659
|
+
### Git Yapılandırması
|
|
660
|
+
|
|
661
|
+
Intlayer tarafından oluşturulan dosyaların yoksayılması önerilir. Bu, bunları Git deponuza göndermenizi önler.
|
|
662
|
+
|
|
663
|
+
Bunu yapmak için `.gitignore` dosyanıza aşağıdaki talimatları ekleyebilirsiniz:
|
|
664
|
+
|
|
665
|
+
```bash
|
|
666
|
+
# Intlayer tarafından oluşturulan dosyaları yoksay
|
|
667
|
+
.intlayer
|
|
668
|
+
```
|
|
669
|
+
|
|
670
|
+
### VS Code Uzantısı
|
|
671
|
+
|
|
672
|
+
Intlayer ile geliştirme deneyiminizi iyileştirmek için resmi **Intlayer VS Code Uzantısını** yükleyebilirsiniz.
|
|
673
|
+
|
|
674
|
+
[VS Code Marketplace'ten yükleyin](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
|
|
675
|
+
|
|
676
|
+
Bu uzantı şunları sağlar:
|
|
677
|
+
|
|
678
|
+
- Çeviri anahtarları için **otomatik tamamlama**.
|
|
679
|
+
- Eksik çeviriler için **gerçek zamanlı hata algılama**.
|
|
680
|
+
- Çevrilmiş içeriğin **satır içi önizlemeleri**.
|
|
681
|
+
- Çevirileri kolayca oluşturmak ve güncellemek için **hızlı işlemler**.
|
|
682
|
+
|
|
683
|
+
Uzantının nasıl kullanılacağı hakkında daha fazla ayrıntı için [Intlayer VS Code Uzantısı belgelerine](https://intlayer.org/doc/vs-code-extension) bakın.
|
|
684
|
+
|
|
685
|
+
---
|
|
686
|
+
|
|
687
|
+
### Daha Fazlasına Gidin
|
|
688
|
+
|
|
689
|
+
Daha ileri gitmek için [görsel düzenleyiciyi](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/intlayer_visual_editor.md) uygulayabilir veya [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/intlayer_CMS.md) kullanarak içeriğinizi dışsallaştırabilirsiniz.
|