@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
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-02-07
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-03-24
|
|
4
4
|
title: Markdown
|
|
5
5
|
description: Узнайте, как объявлять и использовать Markdown-контент на вашем многоязычном сайте с помощью Intlayer. Следуйте шагам этой онлайн-документации, чтобы без проблем интегрировать Markdown в ваш проект.
|
|
6
6
|
keywords:
|
|
@@ -17,6 +17,12 @@ slugs:
|
|
|
17
17
|
- content
|
|
18
18
|
- markdown
|
|
19
19
|
history:
|
|
20
|
+
- version: 8.5.0
|
|
21
|
+
date: 2026-03-24
|
|
22
|
+
changes: "Add `intlayerMarkdown` plugin object; use `app.use(intlayerMarkdown)` instead of `app.use(installIntlayerMarkdown)`"
|
|
23
|
+
- version: 8.5.0
|
|
24
|
+
date: 2026-03-24
|
|
25
|
+
changes: "Перенос импортов из {{framework}}-intlayer в {{framework}}-intlayer/markdown"
|
|
20
26
|
- version: 8.0.0
|
|
21
27
|
date: 2026-01-22
|
|
22
28
|
changes: "Добавлены MarkdownRenderer / useMarkdownRenderer / renderMarkdown и опция forceInline"
|
|
@@ -32,7 +38,7 @@ history:
|
|
|
32
38
|
|
|
33
39
|
Intlayer поддерживает содержимое с богатым текстом, определенное с использованием синтаксиса Markdown. Это позволяет легко писать и поддерживать контент с богатым форматированием, такой как блоги, статьи и многое другое.
|
|
34
40
|
|
|
35
|
-
##
|
|
41
|
+
## Объявление контента Markdown
|
|
36
42
|
|
|
37
43
|
Вы можете объявлять контент Markdown с помощью функции `md` или просто как строку (если она содержит синтаксис Markdown).
|
|
38
44
|
|
|
@@ -91,7 +97,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
91
97
|
|
|
92
98
|
---
|
|
93
99
|
|
|
94
|
-
##
|
|
100
|
+
## Рендеринг Markdown
|
|
95
101
|
|
|
96
102
|
Рендеринг может осуществляться автоматически системой контента Intlayer или вручную с использованием специализированных инструментов.
|
|
97
103
|
|
|
@@ -211,10 +217,8 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
211
217
|
|
|
212
218
|
#### Компонент `<MarkdownRenderer />`
|
|
213
219
|
|
|
214
|
-
Рендерит строку Markdown с заданными параметрами.
|
|
215
|
-
|
|
216
220
|
```tsx
|
|
217
|
-
import { MarkdownRenderer } from "react-intlayer";
|
|
221
|
+
import { MarkdownRenderer } from "react-intlayer/markdown";
|
|
218
222
|
|
|
219
223
|
<MarkdownRenderer forceBlock={true} tagfilter={true}>
|
|
220
224
|
{"# Мой заголовок"}
|
|
@@ -226,7 +230,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
226
230
|
Получите предварительно настроенную функцию рендеринга.
|
|
227
231
|
|
|
228
232
|
```tsx
|
|
229
|
-
import { useMarkdownRenderer } from "react-intlayer";
|
|
233
|
+
import { useMarkdownRenderer } from "react-intlayer/markdown";
|
|
230
234
|
|
|
231
235
|
const renderMarkdown = useMarkdownRenderer({
|
|
232
236
|
forceBlock: true,
|
|
@@ -240,7 +244,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
240
244
|
Автономная утилита для рендеринга вне компонентов.
|
|
241
245
|
|
|
242
246
|
```tsx
|
|
243
|
-
import { renderMarkdown } from "react-intlayer";
|
|
247
|
+
import { renderMarkdown } from "react-intlayer/markdown";
|
|
244
248
|
|
|
245
249
|
const jsx = renderMarkdown("# Мой заголовок", { forceBlock: true });
|
|
246
250
|
```
|
|
@@ -252,7 +256,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
252
256
|
|
|
253
257
|
```vue
|
|
254
258
|
<script setup>
|
|
255
|
-
import { MarkdownRenderer } from "vue-intlayer";
|
|
259
|
+
import { MarkdownRenderer } from "vue-intlayer/markdown";
|
|
256
260
|
</script>
|
|
257
261
|
|
|
258
262
|
<template>
|
|
@@ -267,7 +271,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
267
271
|
|
|
268
272
|
```svelte
|
|
269
273
|
<script lang="ts">
|
|
270
|
-
import { MarkdownRenderer } from "svelte-intlayer";
|
|
274
|
+
import { MarkdownRenderer } from "svelte-intlayer/markdown";
|
|
271
275
|
</script>
|
|
272
276
|
|
|
273
277
|
<MarkdownRenderer forceBlock={true} value="# Мой заголовок" />
|
|
@@ -277,7 +281,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
277
281
|
|
|
278
282
|
```svelte
|
|
279
283
|
<script lang="ts">
|
|
280
|
-
import { useMarkdownRenderer } from "svelte-intlayer";
|
|
284
|
+
import { useMarkdownRenderer } from "svelte-intlayer/markdown";
|
|
281
285
|
const render = useMarkdownRenderer();
|
|
282
286
|
</script>
|
|
283
287
|
|
|
@@ -288,7 +292,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
288
292
|
|
|
289
293
|
```svelte
|
|
290
294
|
<script lang="ts">
|
|
291
|
-
import { renderMarkdown } from "svelte-intlayer";
|
|
295
|
+
import { renderMarkdown } from "svelte-intlayer/markdown";
|
|
292
296
|
</script>
|
|
293
297
|
|
|
294
298
|
{@html renderMarkdown("# Мой заголовок")}
|
|
@@ -299,7 +303,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
299
303
|
#### Компонент `<MarkdownRenderer />`
|
|
300
304
|
|
|
301
305
|
```tsx
|
|
302
|
-
import { MarkdownRenderer } from "preact-intlayer";
|
|
306
|
+
import { MarkdownRenderer } from "preact-intlayer/markdown";
|
|
303
307
|
|
|
304
308
|
<MarkdownRenderer forceBlock={true}>
|
|
305
309
|
{"# Мой заголовок"}
|
|
@@ -309,7 +313,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
309
313
|
#### Хук `useMarkdownRenderer()`
|
|
310
314
|
|
|
311
315
|
```tsx
|
|
312
|
-
import { useMarkdownRenderer } from "preact-intlayer";
|
|
316
|
+
import { useMarkdownRenderer } from "preact-intlayer/markdown";
|
|
313
317
|
|
|
314
318
|
const render = useMarkdownRenderer();
|
|
315
319
|
|
|
@@ -319,7 +323,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
319
323
|
#### Утилита `renderMarkdown()`
|
|
320
324
|
|
|
321
325
|
```tsx
|
|
322
|
-
import { renderMarkdown } from "preact-intlayer";
|
|
326
|
+
import { renderMarkdown } from "preact-intlayer/markdown";
|
|
323
327
|
|
|
324
328
|
return <div>{renderMarkdown("# Мой заголовок")}</div>;
|
|
325
329
|
```
|
|
@@ -329,7 +333,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
329
333
|
#### Компонент `<MarkdownRenderer />`
|
|
330
334
|
|
|
331
335
|
```tsx
|
|
332
|
-
import { MarkdownRenderer } from "solid-intlayer";
|
|
336
|
+
import { MarkdownRenderer } from "solid-intlayer/markdown";
|
|
333
337
|
|
|
334
338
|
<MarkdownRenderer forceBlock={true}>
|
|
335
339
|
{"# Мой заголовок"}
|
|
@@ -339,7 +343,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
339
343
|
#### Хук `useMarkdownRenderer()`
|
|
340
344
|
|
|
341
345
|
```tsx
|
|
342
|
-
import { useMarkdownRenderer } from "solid-intlayer";
|
|
346
|
+
import { useMarkdownRenderer } from "solid-intlayer/markdown";
|
|
343
347
|
|
|
344
348
|
const render = useMarkdownRenderer();
|
|
345
349
|
|
|
@@ -349,7 +353,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
349
353
|
#### Утилита `renderMarkdown()`
|
|
350
354
|
|
|
351
355
|
```tsx
|
|
352
|
-
import { renderMarkdown } from "solid-intlayer";
|
|
356
|
+
import { renderMarkdown } from "solid-intlayer/markdown";
|
|
353
357
|
|
|
354
358
|
return <div>{renderMarkdown("# Мой заголовок")}</div>;
|
|
355
359
|
```
|
|
@@ -360,7 +364,7 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
360
364
|
Рендерит строку Markdown с помощью сервиса.
|
|
361
365
|
|
|
362
366
|
```typescript
|
|
363
|
-
import { IntlayerMarkdownService } from "angular-intlayer";
|
|
367
|
+
import { IntlayerMarkdownService } from "angular-intlayer/markdown";
|
|
364
368
|
|
|
365
369
|
export class MyComponent {
|
|
366
370
|
constructor(private markdownService: IntlayerMarkdownService) {}
|
|
@@ -384,12 +388,10 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
384
388
|
<Tab label="React / Next.js" value="react">
|
|
385
389
|
|
|
386
390
|
```tsx fileName="AppProvider.tsx"
|
|
387
|
-
import { MarkdownProvider } from "react-intlayer";
|
|
391
|
+
import { MarkdownProvider } from "react-intlayer/markdown";
|
|
388
392
|
|
|
389
393
|
export const AppProvider = ({ children }) => (
|
|
390
394
|
<MarkdownProvider
|
|
391
|
-
forceBlock={true}
|
|
392
|
-
tagfilter={true}
|
|
393
395
|
components={{
|
|
394
396
|
h1: ({ children }) => <h1 className="text-2xl font-bold">{children}</h1>,
|
|
395
397
|
a: ({ href, children }) => <Link to={href}>{children}</Link>,
|
|
@@ -400,43 +402,83 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
400
402
|
);
|
|
401
403
|
```
|
|
402
404
|
|
|
405
|
+
Вы также можете использовать свой собственный рендерер Markdown:
|
|
406
|
+
|
|
407
|
+
```tsx fileName="AppProvider.tsx"
|
|
408
|
+
import { MarkdownProvider } from "react-intlayer/markdown";
|
|
409
|
+
|
|
410
|
+
export const AppProvider = ({ children }) => (
|
|
411
|
+
<MarkdownProvider
|
|
412
|
+
renderMarkdown={async (md) => {
|
|
413
|
+
const { compileMarkdown } = await import('react-intlayer/markdown');
|
|
414
|
+
return compileMarkdown(md);
|
|
415
|
+
}}
|
|
416
|
+
>
|
|
417
|
+
{children}
|
|
418
|
+
</MarkdownProvider>
|
|
419
|
+
);
|
|
420
|
+
```
|
|
421
|
+
|
|
422
|
+
> Динамический импорт рендерера Markdown — хороший способ уменьшить размер бандла вашего приложения.
|
|
423
|
+
|
|
403
424
|
</Tab>
|
|
404
425
|
<Tab label="Vue" value="vue">
|
|
405
426
|
|
|
406
427
|
```typescript fileName="main.ts"
|
|
407
428
|
import { createApp } from "vue";
|
|
408
|
-
import {
|
|
429
|
+
import { intlayer } from "vue-intlayer";
|
|
430
|
+
import { intlayerMarkdown } from "vue-intlayer/markdown";
|
|
409
431
|
import App from "./App.vue";
|
|
410
432
|
|
|
411
433
|
const app = createApp(App);
|
|
412
434
|
|
|
413
|
-
app.use(
|
|
414
|
-
app.use(
|
|
415
|
-
forceBlock: true,
|
|
416
|
-
tagfilter: true,
|
|
435
|
+
app.use(intlayer);
|
|
436
|
+
app.use(intlayerMarkdown, {
|
|
417
437
|
components: {
|
|
418
|
-
h1:
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
438
|
+
h1: (props) =>
|
|
439
|
+
h('h1', { style: { color: 'orange' }, ...props }, props.children),
|
|
440
|
+
ComponentDemo: () => h('div', { style: { background: 'grey' } }, 'DEMO'),
|
|
441
|
+
bold: (props) => h('strong', props),
|
|
442
|
+
code: (props) => h('code', props),
|
|
422
443
|
},
|
|
423
444
|
});
|
|
424
445
|
|
|
425
446
|
app.mount("#app");
|
|
426
447
|
```
|
|
427
448
|
|
|
449
|
+
Вы также можете использовать свой собственный рендерер Markdown:
|
|
450
|
+
|
|
451
|
+
```typescript fileName="main.ts"
|
|
452
|
+
import { createApp } from "vue";
|
|
453
|
+
import { intlayer } from "vue-intlayer";
|
|
454
|
+
import { intlayerMarkdown } from "vue-intlayer/markdown";
|
|
455
|
+
import App from "./App.vue";
|
|
456
|
+
|
|
457
|
+
const app = createApp(App);
|
|
458
|
+
|
|
459
|
+
app.use(intlayer);
|
|
460
|
+
app.use(intlayerMarkdown, {
|
|
461
|
+
renderMarkdown: async (md) => {
|
|
462
|
+
const { compileMarkdown } = await import('vue-intlayer/markdown');
|
|
463
|
+
return compileMarkdown(md);
|
|
464
|
+
},
|
|
465
|
+
});
|
|
466
|
+
|
|
467
|
+
app.mount("#app");
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
> Динамический импорт рендерера Markdown — хороший способ уменьшить размер бандла вашего приложения.
|
|
471
|
+
|
|
428
472
|
</Tab>
|
|
429
473
|
<Tab label="Svelte" value="svelte">
|
|
430
474
|
|
|
431
475
|
```svelte fileName="App.svelte"
|
|
432
476
|
<script lang="ts">
|
|
433
|
-
import { MarkdownProvider } from "svelte-intlayer";
|
|
477
|
+
import { MarkdownProvider } from "svelte-intlayer/markdown";
|
|
434
478
|
import MyHeading from "./MyHeading.svelte";
|
|
435
479
|
</script>
|
|
436
480
|
|
|
437
481
|
<MarkdownProvider
|
|
438
|
-
forceBlock={true}
|
|
439
|
-
tagfilter={true}
|
|
440
482
|
components={{
|
|
441
483
|
h1: MyHeading,
|
|
442
484
|
}}
|
|
@@ -445,16 +487,33 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
445
487
|
</MarkdownProvider>
|
|
446
488
|
```
|
|
447
489
|
|
|
490
|
+
Вы также можете использовать свой собственный рендерер Markdown:
|
|
491
|
+
|
|
492
|
+
```svelte fileName="App.svelte"
|
|
493
|
+
<script lang="ts">
|
|
494
|
+
import { MarkdownProvider } from "svelte-intlayer/markdown";
|
|
495
|
+
</script>
|
|
496
|
+
|
|
497
|
+
<MarkdownProvider
|
|
498
|
+
renderMarkdown={async (md) => {
|
|
499
|
+
const { compileMarkdown } = await import('svelte-intlayer/markdown');
|
|
500
|
+
return compileMarkdown(md);
|
|
501
|
+
}}
|
|
502
|
+
>
|
|
503
|
+
<slot />
|
|
504
|
+
</MarkdownProvider>
|
|
505
|
+
```
|
|
506
|
+
|
|
507
|
+
> Динамический импорт рендерера Markdown — хороший способ уменьшить размер бандла вашего приложения.
|
|
508
|
+
|
|
448
509
|
</Tab>
|
|
449
510
|
<Tab label="Preact" value="preact">
|
|
450
511
|
|
|
451
512
|
```tsx fileName="AppProvider.tsx"
|
|
452
|
-
import { MarkdownProvider } from "preact-intlayer";
|
|
513
|
+
import { MarkdownProvider } from "preact-intlayer/markdown";
|
|
453
514
|
|
|
454
515
|
export const AppProvider = ({ children }) => (
|
|
455
516
|
<MarkdownProvider
|
|
456
|
-
forceBlock={true}
|
|
457
|
-
tagfilter={true}
|
|
458
517
|
components={{
|
|
459
518
|
h1: ({ children }) => <h1 className="text-2xl font-bold">{children}</h1>,
|
|
460
519
|
}}
|
|
@@ -464,16 +523,33 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
464
523
|
);
|
|
465
524
|
```
|
|
466
525
|
|
|
526
|
+
Вы также можете использовать свой собственный рендерер Markdown:
|
|
527
|
+
|
|
528
|
+
```tsx fileName="AppProvider.tsx"
|
|
529
|
+
import { MarkdownProvider } from "preact-intlayer/markdown";
|
|
530
|
+
|
|
531
|
+
export const AppProvider = ({ children }) => (
|
|
532
|
+
<MarkdownProvider
|
|
533
|
+
renderMarkdown={async (md) => {
|
|
534
|
+
const { compileMarkdown } = await import('preact-intlayer/markdown');
|
|
535
|
+
return compileMarkdown(md);
|
|
536
|
+
}}
|
|
537
|
+
>
|
|
538
|
+
{children}
|
|
539
|
+
</MarkdownProvider>
|
|
540
|
+
);
|
|
541
|
+
```
|
|
542
|
+
|
|
543
|
+
> Динамический импорт рендерера Markdown — хороший способ уменьшить размер бандла вашего приложения.
|
|
544
|
+
|
|
467
545
|
</Tab>
|
|
468
546
|
<Tab label="Solid" value="solid">
|
|
469
547
|
|
|
470
548
|
```tsx fileName="AppProvider.tsx"
|
|
471
|
-
import { MarkdownProvider } from "solid-intlayer";
|
|
549
|
+
import { MarkdownProvider } from "solid-intlayer/markdown";
|
|
472
550
|
|
|
473
551
|
export const AppProvider = (props) => (
|
|
474
552
|
<MarkdownProvider
|
|
475
|
-
forceBlock={true}
|
|
476
|
-
tagfilter={true}
|
|
477
553
|
components={{
|
|
478
554
|
h1: (props) => <h1 className="text-2xl font-bold">{props.children}</h1>,
|
|
479
555
|
}}
|
|
@@ -483,11 +559,30 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
483
559
|
);
|
|
484
560
|
```
|
|
485
561
|
|
|
562
|
+
Вы также можете использовать свой собственный рендерер Markdown:
|
|
563
|
+
|
|
564
|
+
```tsx fileName="AppProvider.tsx"
|
|
565
|
+
import { MarkdownProvider } from "solid-intlayer/markdown";
|
|
566
|
+
|
|
567
|
+
export const AppProvider = (props) => (
|
|
568
|
+
<MarkdownProvider
|
|
569
|
+
renderMarkdown={async (md) => {
|
|
570
|
+
const { compileMarkdown } = await import('solid-intlayer/markdown');
|
|
571
|
+
return compileMarkdown(md);
|
|
572
|
+
}}
|
|
573
|
+
>
|
|
574
|
+
{props.children}
|
|
575
|
+
</MarkdownProvider>
|
|
576
|
+
);
|
|
577
|
+
```
|
|
578
|
+
|
|
579
|
+
> Динамический импорт рендерера Markdown — хороший способ уменьшить размер бандла вашего приложения.
|
|
580
|
+
|
|
486
581
|
</Tab>
|
|
487
582
|
<Tab label="Angular" value="angular">
|
|
488
583
|
|
|
489
584
|
```typescript fileName="app.config.ts"
|
|
490
|
-
import { createIntlayerMarkdownProvider } from "angular-intlayer";
|
|
585
|
+
import { createIntlayerMarkdownProvider } from "angular-intlayer/markdown";
|
|
491
586
|
|
|
492
587
|
export const appConfig: ApplicationConfig = {
|
|
493
588
|
providers: [
|
|
@@ -500,6 +595,25 @@ Intlayer поддерживает содержимое с богатым тек
|
|
|
500
595
|
};
|
|
501
596
|
```
|
|
502
597
|
|
|
598
|
+
Вы также можете использовать свой собственный рендерер Markdown:
|
|
599
|
+
|
|
600
|
+
```typescript fileName="app.config.ts"
|
|
601
|
+
import { createIntlayerMarkdownProvider } from "angular-intlayer/markdown";
|
|
602
|
+
|
|
603
|
+
export const appConfig: ApplicationConfig = {
|
|
604
|
+
providers: [
|
|
605
|
+
createIntlayerMarkdownProvider({
|
|
606
|
+
renderMarkdown: async (md) => {
|
|
607
|
+
const { compileMarkdown } = await import('angular-intlayer/markdown');
|
|
608
|
+
return compileMarkdown(md);
|
|
609
|
+
},
|
|
610
|
+
}),
|
|
611
|
+
],
|
|
612
|
+
};
|
|
613
|
+
```
|
|
614
|
+
|
|
615
|
+
> Динамический импорт рендерера Markdown — хороший способ уменьшить размер бандла вашего приложения.
|
|
616
|
+
|
|
503
617
|
</Tab>
|
|
504
618
|
</Tabs>
|
|
505
619
|
|
|
@@ -14,7 +14,7 @@ slugs:
|
|
|
14
14
|
- doc
|
|
15
15
|
- environment
|
|
16
16
|
- analog
|
|
17
|
-
applicationTemplate: https://github.com/aymericzip/intlayer
|
|
17
|
+
applicationTemplate: https://github.com/aymericzip/intlayer-analog-template
|
|
18
18
|
history:
|
|
19
19
|
- version: 8.0.4
|
|
20
20
|
date: 2026-01-26
|
|
@@ -23,6 +23,14 @@ history:
|
|
|
23
23
|
|
|
24
24
|
# Переведите ваше приложение Analog (Angular) с помощью Intlayer | Интернационализация (i18n)
|
|
25
25
|
|
|
26
|
+
<iframe
|
|
27
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-analog-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
28
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
29
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
30
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
31
|
+
loading="lazy"
|
|
32
|
+
/>
|
|
33
|
+
|
|
26
34
|
## Содержание
|
|
27
35
|
|
|
28
36
|
<TOC/>
|
|
@@ -42,21 +50,7 @@ history:
|
|
|
42
50
|
|
|
43
51
|
## Пошаговое руководство по настройке Intlayer в приложении Analog
|
|
44
52
|
|
|
45
|
-
|
|
46
|
-
<Tab label="Код" value="code">
|
|
47
|
-
|
|
48
|
-
<iframe
|
|
49
|
-
src="https://stackblitz.com/github/aymericzip/intlayer/tree/main/examples/vite-analog-app?embed=1&ctl=1&file=intlayer.config.ts"
|
|
50
|
-
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
51
|
-
title="Демо CodeSandbox - Как интернационализировать ваше приложение с помощью Intlayer"
|
|
52
|
-
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
53
|
-
loading="lazy"
|
|
54
|
-
/>
|
|
55
|
-
|
|
56
|
-
</Tab>
|
|
57
|
-
</Tabs>
|
|
58
|
-
|
|
59
|
-
См. [Шаблон приложения](https://github.com/aymericzip/intlayer/tree/main/examples/analog-app-template) на GitHub.
|
|
53
|
+
См. [Шаблон приложения](https://github.com/aymericzip/intlayer-analog-template) на GitHub.
|
|
60
54
|
|
|
61
55
|
### Шаг 1: Установка зависимостей
|
|
62
56
|
|
|
@@ -273,17 +267,6 @@ import { useLocale } from "angular-intlayer";
|
|
|
273
267
|
</select>
|
|
274
268
|
</div>
|
|
275
269
|
`,
|
|
276
|
-
styles: [
|
|
277
|
-
`
|
|
278
|
-
.locale-switcher {
|
|
279
|
-
margin: 1rem;
|
|
280
|
-
padding: 0.5rem;
|
|
281
|
-
border: 1px solid #ccc;
|
|
282
|
-
border-radius: 4px;
|
|
283
|
-
width: fit-content;
|
|
284
|
-
}
|
|
285
|
-
`,
|
|
286
|
-
],
|
|
287
270
|
})
|
|
288
271
|
export class LocaleSwitcherComponent {
|
|
289
272
|
localeCtx = useLocale();
|
|
@@ -201,7 +201,7 @@ import { mergeConfig } from "angular-intlayer/webpack";
|
|
|
201
201
|
export default mergeConfig({});
|
|
202
202
|
```
|
|
203
203
|
|
|
204
|
-
> Функция `mergeConfig` настраивает Webpack с использованием Intlayer. Она внедряет `
|
|
204
|
+
> Функция `mergeConfig` настраивает Webpack с использованием Intlayer. Она внедряет `IntlayerPlugin` (для обработки файлов декларации контента) и настраивает псевдонимы для оптимальной производительности.
|
|
205
205
|
|
|
206
206
|
### Шаг 4: Декларирование контента
|
|
207
207
|
|
|
@@ -333,17 +333,6 @@ import { useLocale } from "angular-intlayer";
|
|
|
333
333
|
</select>
|
|
334
334
|
</div>
|
|
335
335
|
`,
|
|
336
|
-
styles: [
|
|
337
|
-
`
|
|
338
|
-
.locale-switcher {
|
|
339
|
-
margin: 1rem;
|
|
340
|
-
padding: 0.5rem;
|
|
341
|
-
border: 1px solid #ccc;
|
|
342
|
-
border-radius: 4px;
|
|
343
|
-
width: fit-content;
|
|
344
|
-
}
|
|
345
|
-
`,
|
|
346
|
-
],
|
|
347
336
|
})
|
|
348
337
|
export class LocaleSwitcherComponent {
|
|
349
338
|
localeCtx = useLocale();
|
|
@@ -1179,7 +1179,7 @@ Link.displayName = "Link";
|
|
|
1179
1179
|
|
|
1180
1180
|
import { getLocalizedUrl } from 'intlayer';
|
|
1181
1181
|
import NextLink, { type LinkProps as NextLinkProps } from 'next/link';
|
|
1182
|
-
import { useLocale } from
|
|
1182
|
+
import { useLocale } from "next-intlayer";
|
|
1183
1183
|
import { forwardRef, PropsWithChildren, type ForwardedRef } from 'react';
|
|
1184
1184
|
|
|
1185
1185
|
/**
|
|
@@ -1358,7 +1358,7 @@ Link.displayName = "Link";
|
|
|
1358
1358
|
|
|
1359
1359
|
import { getLocalizedUrl } from 'intlayer';
|
|
1360
1360
|
import NextLink, { type LinkProps as NextLinkProps } from 'next/link';
|
|
1361
|
-
import { useLocale } from
|
|
1361
|
+
import { useLocale } from "next-intlayer";
|
|
1362
1362
|
import { forwardRef, PropsWithChildren, type ForwardedRef } from 'react';
|
|
1363
1363
|
|
|
1364
1364
|
/**
|
|
@@ -742,7 +742,12 @@ import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
|
742
742
|
import tsconfigPaths from "vite-tsconfig-paths";
|
|
743
743
|
|
|
744
744
|
export default defineConfig({
|
|
745
|
-
plugins: [
|
|
745
|
+
plugins: [
|
|
746
|
+
intlayerProxy(), // should be placed first
|
|
747
|
+
reactRouter(),
|
|
748
|
+
tsconfigPaths(),
|
|
749
|
+
intlayer(),
|
|
750
|
+
],
|
|
746
751
|
});
|
|
747
752
|
```
|
|
748
753
|
|
|
@@ -808,7 +808,12 @@ import { intlayer, intlayerProxy } from "vite-intlayer";
|
|
|
808
808
|
import tsconfigPaths from "vite-tsconfig-paths";
|
|
809
809
|
|
|
810
810
|
export default defineConfig({
|
|
811
|
-
plugins: [
|
|
811
|
+
plugins: [
|
|
812
|
+
intlayerProxy(), // should be placed first
|
|
813
|
+
reactRouter(),
|
|
814
|
+
tsconfigPaths(),
|
|
815
|
+
intlayer(),
|
|
816
|
+
],
|
|
812
817
|
});
|
|
813
818
|
```
|
|
814
819
|
|
|
@@ -265,7 +265,7 @@ export default config;
|
|
|
265
265
|
|
|
266
266
|
```typescript fileName=".storybook/main.ts" codeFormat="typescript"
|
|
267
267
|
import type { StorybookConfig } from "@storybook/react-webpack5";
|
|
268
|
-
import {
|
|
268
|
+
import { IntlayerPlugin } from "@intlayer/webpack";
|
|
269
269
|
|
|
270
270
|
const config: StorybookConfig = {
|
|
271
271
|
stories: ["../src/**/*.stories.@(js|jsx|ts|tsx)"],
|
|
@@ -276,10 +276,7 @@ const config: StorybookConfig = {
|
|
|
276
276
|
},
|
|
277
277
|
|
|
278
278
|
webpackFinal: async (baseConfig) => {
|
|
279
|
-
baseConfig.plugins = [
|
|
280
|
-
...(baseConfig.plugins ?? []),
|
|
281
|
-
new IntlayerWebpackPlugin(),
|
|
282
|
-
];
|
|
279
|
+
baseConfig.plugins = [...(baseConfig.plugins ?? []), new IntlayerPlugin()];
|
|
283
280
|
return baseConfig;
|
|
284
281
|
},
|
|
285
282
|
};
|
|
@@ -552,7 +552,7 @@ export const load: Load = ({ params }) => {
|
|
|
552
552
|
```svelte fileName="src/routes/[[locale=locale]]/+layout.svelte"
|
|
553
553
|
<script lang="ts">
|
|
554
554
|
import type { Snippet } from 'svelte';
|
|
555
|
-
import { useIntlayer, setupIntlayer } from
|
|
555
|
+
import { useIntlayer, setupIntlayer } from "svelte-intlayer";
|
|
556
556
|
import Header from './Header.svelte';
|
|
557
557
|
import type { LayoutData } from './$types';
|
|
558
558
|
|
|
@@ -591,7 +591,7 @@ export const prerender = true;
|
|
|
591
591
|
|
|
592
592
|
```svelte fileName="src/routes/[[locale=locale]]/+page.svelte"
|
|
593
593
|
<script lang="ts">
|
|
594
|
-
import { useIntlayer } from
|
|
594
|
+
import { useIntlayer } from "svelte-intlayer";
|
|
595
595
|
|
|
596
596
|
// Использование словаря контента для домашней страницы
|
|
597
597
|
const homeContent = useIntlayer('home');
|
|
@@ -619,7 +619,7 @@ export const prerender = true;
|
|
|
619
619
|
```svelte fileName="src/lib/components/LocalizedLink.svelte"
|
|
620
620
|
<script lang="ts">
|
|
621
621
|
import { getLocalizedUrl } from "intlayer";
|
|
622
|
-
import { useLocale } from
|
|
622
|
+
import { useLocale } from "svelte-intlayer";
|
|
623
623
|
|
|
624
624
|
let { href = "" } = $props();
|
|
625
625
|
const { locale } = useLocale();
|
|
@@ -652,7 +652,7 @@ goto(localizedPath); // Переходит на /en/about или /fr/about в з
|
|
|
652
652
|
```svelte fileName="src/lib/components/LanguageSwitcher.svelte"
|
|
653
653
|
<script lang="ts">
|
|
654
654
|
import { getLocalizedUrl, getLocaleName } from 'intlayer';
|
|
655
|
-
import { useLocale } from
|
|
655
|
+
import { useLocale } from "svelte-intlayer";
|
|
656
656
|
import { page } from '$app/stores';
|
|
657
657
|
import { goto } from '$app/navigation';
|
|
658
658
|
|
|
@@ -697,7 +697,11 @@ import { sveltekit } from "@sveltejs/kit/vite";
|
|
|
697
697
|
|
|
698
698
|
// https://vitejs.dev/config/
|
|
699
699
|
export default defineConfig({
|
|
700
|
-
plugins: [
|
|
700
|
+
plugins: [
|
|
701
|
+
intlayerProxy(), // should be placed first
|
|
702
|
+
intlayer(),
|
|
703
|
+
sveltekit(),
|
|
704
|
+
],],
|
|
701
705
|
});
|
|
702
706
|
```
|
|
703
707
|
|