@intlayer/docs 5.8.1 → 6.0.0-canary.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/blog/ar/rag_powered_documentation_assistant.md +282 -0
- package/blog/de/rag_powered_documentation_assistant.md +282 -0
- package/blog/en/rag_powered_documentation_assistant.md +289 -0
- package/blog/en-GB/rag_powered_documentation_assistant.md +284 -0
- package/blog/es/rag_powered_documentation_assistant.md +308 -0
- package/blog/fr/rag_powered_documentation_assistant.md +308 -0
- package/blog/hi/rag_powered_documentation_assistant.md +284 -0
- package/blog/it/rag_powered_documentation_assistant.md +284 -0
- package/blog/ja/rag_powered_documentation_assistant.md +284 -0
- package/blog/ko/rag_powered_documentation_assistant.md +283 -0
- package/blog/pt/rag_powered_documentation_assistant.md +284 -0
- package/blog/ru/rag_powered_documentation_assistant.md +284 -0
- package/blog/tr/index.md +69 -0
- package/blog/tr/internationalization_and_SEO.md +273 -0
- package/blog/tr/intlayer_with_i18next.md +162 -0
- package/blog/tr/intlayer_with_next-i18next.md +367 -0
- package/blog/tr/intlayer_with_next-intl.md +392 -0
- package/blog/tr/intlayer_with_react-i18next.md +346 -0
- package/blog/tr/intlayer_with_react-intl.md +345 -0
- package/blog/tr/list_i18n_technologies/CMS/drupal.md +143 -0
- package/blog/tr/list_i18n_technologies/CMS/wix.md +167 -0
- package/blog/tr/list_i18n_technologies/CMS/wordpress.md +188 -0
- package/blog/tr/list_i18n_technologies/frameworks/angular.md +125 -0
- package/blog/tr/list_i18n_technologies/frameworks/flutter.md +150 -0
- package/blog/tr/list_i18n_technologies/frameworks/react-native.md +217 -0
- package/blog/tr/list_i18n_technologies/frameworks/react.md +155 -0
- package/blog/tr/list_i18n_technologies/frameworks/svelte.md +129 -0
- package/blog/tr/list_i18n_technologies/frameworks/vue.md +130 -0
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +170 -0
- package/blog/tr/rag_powered_documentation_assistant.md +284 -0
- package/blog/tr/react-i18next_vs_react-intl_vs_intlayer.md +162 -0
- package/blog/tr/vue-i18n_vs_intlayer.md +276 -0
- package/blog/tr/what_is_internationalization.md +166 -0
- package/blog/zh/rag_powered_documentation_assistant.md +284 -0
- package/dist/cjs/generated/blog.entry.cjs +212 -0
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +660 -132
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +84 -0
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +6 -0
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +212 -0
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +660 -132
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +84 -0
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +6 -0
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +1 -0
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +5 -2
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/autoFill.md +41 -40
- package/docs/ar/configuration.md +202 -199
- package/docs/ar/dictionary/content_file.md +1059 -0
- package/docs/ar/intlayer_CMS.md +4 -4
- package/docs/ar/intlayer_with_nestjs.md +271 -0
- package/docs/ar/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ar/intlayer_with_react_router_v7.md +533 -0
- package/docs/ar/intlayer_with_tanstack.md +465 -299
- package/docs/ar/intlayer_with_vite+preact.md +7 -7
- package/docs/ar/intlayer_with_vite+react.md +7 -7
- package/docs/ar/intlayer_with_vite+vue.md +9 -9
- package/docs/ar/packages/vite-intlayer/index.md +3 -3
- package/docs/ar/readme.md +261 -0
- package/docs/ar/testing.md +199 -0
- package/docs/de/autoFill.md +42 -19
- package/docs/de/configuration.md +155 -147
- package/docs/de/dictionary/content_file.md +1059 -0
- package/docs/de/intlayer_CMS.md +4 -5
- package/docs/de/intlayer_with_nestjs.md +270 -0
- package/docs/de/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/de/intlayer_with_react_router_v7.md +537 -0
- package/docs/de/intlayer_with_tanstack.md +469 -302
- package/docs/de/intlayer_with_vite+preact.md +7 -7
- package/docs/de/intlayer_with_vite+react.md +7 -7
- package/docs/de/intlayer_with_vite+vue.md +9 -9
- package/docs/de/packages/vite-intlayer/index.md +3 -3
- package/docs/de/readme.md +261 -0
- package/docs/de/testing.md +200 -0
- package/docs/en/CI_CD.md +4 -6
- package/docs/en/autoFill.md +25 -5
- package/docs/en/configuration.md +45 -54
- package/docs/en/dictionary/content_file.md +1054 -0
- package/docs/en/intlayer_CMS.md +8 -7
- package/docs/en/intlayer_cli.md +112 -5
- package/docs/en/intlayer_with_nestjs.md +268 -0
- package/docs/en/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en/intlayer_with_react_router_v7.md +531 -0
- package/docs/en/intlayer_with_tanstack.md +463 -294
- package/docs/en/intlayer_with_vite+preact.md +8 -8
- package/docs/en/intlayer_with_vite+react.md +8 -8
- package/docs/en/intlayer_with_vite+vue.md +8 -8
- package/docs/en/packages/intlayer/getLocalizedUrl.md +102 -25
- package/docs/en/packages/vite-intlayer/index.md +3 -3
- package/docs/en/readme.md +261 -0
- package/docs/en/testing.md +200 -0
- package/docs/en-GB/autoFill.md +29 -6
- package/docs/en-GB/configuration.md +79 -71
- package/docs/en-GB/dictionary/content_file.md +1084 -0
- package/docs/en-GB/intlayer_CMS.md +4 -5
- package/docs/en-GB/intlayer_with_nestjs.md +268 -0
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en-GB/intlayer_with_react_router_v7.md +533 -0
- package/docs/en-GB/intlayer_with_tanstack.md +466 -299
- package/docs/en-GB/intlayer_with_vite+preact.md +7 -7
- package/docs/en-GB/intlayer_with_vite+react.md +7 -7
- package/docs/en-GB/intlayer_with_vite+vue.md +9 -9
- package/docs/en-GB/packages/vite-intlayer/index.md +3 -3
- package/docs/en-GB/readme.md +261 -0
- package/docs/en-GB/testing.md +200 -0
- package/docs/es/autoFill.md +45 -23
- package/docs/es/configuration.md +171 -167
- package/docs/es/dictionary/content_file.md +1088 -0
- package/docs/es/intlayer_CMS.md +4 -5
- package/docs/es/intlayer_with_nestjs.md +268 -0
- package/docs/es/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +533 -0
- package/docs/es/intlayer_with_tanstack.md +469 -280
- package/docs/es/intlayer_with_vite+preact.md +7 -7
- package/docs/es/intlayer_with_vite+react.md +7 -7
- package/docs/es/intlayer_with_vite+vue.md +9 -9
- package/docs/es/packages/vite-intlayer/index.md +3 -3
- package/docs/es/readme.md +261 -0
- package/docs/es/testing.md +200 -0
- package/docs/fr/autoFill.md +47 -24
- package/docs/fr/configuration.md +213 -198
- package/docs/fr/dictionary/content_file.md +1054 -0
- package/docs/fr/intlayer_CMS.md +4 -5
- package/docs/fr/intlayer_with_nestjs.md +268 -0
- package/docs/fr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/fr/intlayer_with_react_router_v7.md +549 -0
- package/docs/fr/intlayer_with_tanstack.md +465 -279
- package/docs/fr/intlayer_with_vite+preact.md +7 -7
- package/docs/fr/intlayer_with_vite+react.md +7 -7
- package/docs/fr/intlayer_with_vite+vue.md +9 -9
- package/docs/fr/packages/vite-intlayer/index.md +3 -3
- package/docs/fr/readme.md +261 -0
- package/docs/fr/testing.md +200 -0
- package/docs/hi/autoFill.md +47 -25
- package/docs/hi/configuration.md +194 -189
- package/docs/hi/dictionary/content_file.md +1056 -0
- package/docs/hi/intlayer_CMS.md +4 -5
- package/docs/hi/intlayer_with_nestjs.md +269 -0
- package/docs/hi/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/hi/intlayer_with_react_router_v7.md +533 -0
- package/docs/hi/intlayer_with_tanstack.md +467 -282
- package/docs/hi/intlayer_with_vite+preact.md +7 -7
- package/docs/hi/intlayer_with_vite+react.md +7 -7
- package/docs/hi/intlayer_with_vite+vue.md +9 -9
- package/docs/hi/packages/vite-intlayer/index.md +3 -3
- package/docs/hi/readme.md +261 -0
- package/docs/hi/testing.md +200 -0
- package/docs/it/autoFill.md +46 -24
- package/docs/it/configuration.md +169 -161
- package/docs/it/dictionary/content_file.md +1061 -0
- package/docs/it/intlayer_CMS.md +4 -5
- package/docs/it/intlayer_with_nestjs.md +268 -0
- package/docs/it/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/it/intlayer_with_react_router_v7.md +535 -0
- package/docs/it/intlayer_with_tanstack.md +467 -301
- package/docs/it/intlayer_with_vite+preact.md +7 -7
- package/docs/it/intlayer_with_vite+react.md +7 -7
- package/docs/it/intlayer_with_vite+vue.md +9 -9
- package/docs/it/packages/vite-intlayer/index.md +3 -3
- package/docs/it/readme.md +261 -0
- package/docs/it/testing.md +200 -0
- package/docs/ja/autoFill.md +45 -23
- package/docs/ja/configuration.md +243 -204
- package/docs/ja/dictionary/content_file.md +1064 -0
- package/docs/ja/intlayer_CMS.md +4 -5
- package/docs/ja/intlayer_with_nestjs.md +268 -0
- package/docs/ja/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ja/intlayer_with_react_router_v7.md +534 -0
- package/docs/ja/intlayer_with_tanstack.md +467 -303
- package/docs/ja/intlayer_with_vite+preact.md +7 -7
- package/docs/ja/intlayer_with_vite+react.md +7 -7
- package/docs/ja/intlayer_with_vite+vue.md +9 -9
- package/docs/ja/packages/vite-intlayer/index.md +3 -3
- package/docs/ja/readme.md +263 -0
- package/docs/ja/testing.md +200 -0
- package/docs/ko/autoFill.md +39 -16
- package/docs/ko/configuration.md +217 -197
- package/docs/ko/dictionary/content_file.md +1060 -0
- package/docs/ko/intlayer_CMS.md +4 -5
- package/docs/ko/intlayer_with_nestjs.md +268 -0
- package/docs/ko/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ko/intlayer_with_react_router_v7.md +540 -0
- package/docs/ko/intlayer_with_tanstack.md +466 -302
- package/docs/ko/intlayer_with_vite+preact.md +7 -7
- package/docs/ko/intlayer_with_vite+react.md +7 -7
- package/docs/ko/intlayer_with_vite+vue.md +9 -9
- package/docs/ko/packages/vite-intlayer/index.md +3 -3
- package/docs/ko/readme.md +261 -0
- package/docs/ko/testing.md +200 -0
- package/docs/pt/autoFill.md +39 -15
- package/docs/pt/configuration.md +165 -147
- package/docs/pt/dictionary/content_file.md +1062 -0
- package/docs/pt/intlayer_CMS.md +4 -5
- package/docs/pt/intlayer_with_nestjs.md +271 -0
- package/docs/pt/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7.md +535 -0
- package/docs/pt/intlayer_with_tanstack.md +469 -300
- package/docs/pt/intlayer_with_vite+preact.md +7 -7
- package/docs/pt/intlayer_with_vite+react.md +7 -7
- package/docs/pt/intlayer_with_vite+vue.md +9 -9
- package/docs/pt/packages/vite-intlayer/index.md +3 -3
- package/docs/pt/readme.md +261 -0
- package/docs/pt/testing.md +200 -0
- package/docs/ru/autoFill.md +52 -30
- package/docs/ru/configuration.md +164 -117
- package/docs/ru/dictionary/content_file.md +1064 -0
- package/docs/ru/intlayer_CMS.md +4 -4
- package/docs/ru/intlayer_with_nestjs.md +270 -0
- package/docs/ru/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ru/intlayer_with_react_router_v7.md +534 -0
- package/docs/ru/intlayer_with_tanstack.md +470 -305
- package/docs/ru/intlayer_with_vite+preact.md +7 -7
- package/docs/ru/intlayer_with_vite+react.md +7 -7
- package/docs/ru/intlayer_with_vite+vue.md +9 -9
- package/docs/ru/packages/vite-intlayer/index.md +3 -3
- package/docs/ru/readme.md +261 -0
- package/docs/ru/testing.md +202 -0
- package/docs/tr/CI_CD.md +198 -0
- package/docs/tr/autoFill.md +201 -0
- package/docs/tr/configuration.md +585 -0
- package/docs/tr/dictionary/condition.md +243 -0
- package/docs/tr/dictionary/content_file.md +1055 -0
- package/docs/tr/dictionary/enumeration.md +251 -0
- package/docs/tr/dictionary/file.md +228 -0
- package/docs/tr/dictionary/function_fetching.md +218 -0
- package/docs/tr/dictionary/gender.md +279 -0
- package/docs/tr/dictionary/insertion.md +191 -0
- package/docs/tr/dictionary/markdown.md +385 -0
- package/docs/tr/dictionary/nesting.md +279 -0
- package/docs/tr/dictionary/translation.md +315 -0
- package/docs/tr/formatters.md +618 -0
- package/docs/tr/how_works_intlayer.md +254 -0
- package/docs/tr/index.md +168 -0
- package/docs/tr/interest_of_intlayer.md +288 -0
- package/docs/tr/intlayer_CMS.md +347 -0
- package/docs/tr/intlayer_cli.md +570 -0
- package/docs/tr/intlayer_visual_editor.md +269 -0
- package/docs/tr/intlayer_with_angular.md +694 -0
- package/docs/tr/intlayer_with_create_react_app.md +1218 -0
- package/docs/tr/intlayer_with_express.md +415 -0
- package/docs/tr/intlayer_with_lynx+react.md +511 -0
- package/docs/tr/intlayer_with_nestjs.md +268 -0
- package/docs/tr/intlayer_with_nextjs_14.md +1029 -0
- package/docs/tr/intlayer_with_nextjs_15.md +1506 -0
- package/docs/tr/intlayer_with_nextjs_page_router.md +1484 -0
- package/docs/tr/intlayer_with_nuxt.md +773 -0
- package/docs/tr/intlayer_with_react_native+expo.md +660 -0
- package/docs/tr/intlayer_with_react_router_v7.md +531 -0
- package/docs/tr/intlayer_with_tanstack.md +452 -0
- package/docs/tr/intlayer_with_vite+preact.md +1673 -0
- package/docs/tr/intlayer_with_vite+react.md +1632 -0
- package/docs/tr/intlayer_with_vite+solid.md +288 -0
- package/docs/tr/intlayer_with_vite+svelte.md +288 -0
- package/docs/tr/intlayer_with_vite+vue.md +1042 -0
- package/docs/tr/introduction.md +209 -0
- package/docs/tr/locale_mapper.md +244 -0
- package/docs/tr/mcp_server.md +207 -0
- package/docs/tr/packages/@intlayer/api/index.md +58 -0
- package/docs/tr/packages/@intlayer/chokidar/index.md +57 -0
- package/docs/tr/packages/@intlayer/cli/index.md +47 -0
- package/docs/tr/packages/@intlayer/config/index.md +142 -0
- package/docs/tr/packages/@intlayer/core/index.md +51 -0
- package/docs/tr/packages/@intlayer/design-system/index.md +47 -0
- package/docs/tr/packages/@intlayer/dictionary-entry/index.md +53 -0
- package/docs/tr/packages/@intlayer/editor/index.md +47 -0
- package/docs/tr/packages/@intlayer/editor-react/index.md +47 -0
- package/docs/tr/packages/@intlayer/webpack/index.md +61 -0
- package/docs/tr/packages/angular-intlayer/index.md +59 -0
- package/docs/tr/packages/express-intlayer/index.md +258 -0
- package/docs/tr/packages/express-intlayer/t.md +459 -0
- package/docs/tr/packages/intlayer/getConfiguration.md +151 -0
- package/docs/tr/packages/intlayer/getEnumeration.md +165 -0
- package/docs/tr/packages/intlayer/getHTMLTextDir.md +127 -0
- package/docs/tr/packages/intlayer/getLocaleLang.md +87 -0
- package/docs/tr/packages/intlayer/getLocaleName.md +124 -0
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +324 -0
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +225 -0
- package/docs/tr/packages/intlayer/getPathWithoutLocale.md +81 -0
- package/docs/tr/packages/intlayer/getTranslation.md +196 -0
- package/docs/tr/packages/intlayer/getTranslationContent.md +195 -0
- package/docs/tr/packages/intlayer/index.md +505 -0
- package/docs/tr/packages/intlayer-cli/index.md +71 -0
- package/docs/tr/packages/intlayer-editor/index.md +139 -0
- package/docs/tr/packages/lynx-intlayer/index.md +85 -0
- package/docs/tr/packages/next-intlayer/index.md +154 -0
- package/docs/tr/packages/next-intlayer/t.md +354 -0
- package/docs/tr/packages/next-intlayer/useDictionary.md +270 -0
- package/docs/tr/packages/next-intlayer/useIntlayer.md +265 -0
- package/docs/tr/packages/next-intlayer/useLocale.md +133 -0
- package/docs/tr/packages/nuxt-intlayer/index.md +59 -0
- package/docs/tr/packages/preact-intlayer/index.md +55 -0
- package/docs/tr/packages/react-intlayer/index.md +148 -0
- package/docs/tr/packages/react-intlayer/t.md +304 -0
- package/docs/tr/packages/react-intlayer/useDictionary.md +554 -0
- package/docs/tr/packages/react-intlayer/useI18n.md +478 -0
- package/docs/tr/packages/react-intlayer/useIntlayer.md +253 -0
- package/docs/tr/packages/react-intlayer/useLocale.md +212 -0
- package/docs/tr/packages/react-native-intlayer/index.md +85 -0
- package/docs/tr/packages/react-scripts-intlayer/index.md +82 -0
- package/docs/tr/packages/solid-intlayer/index.md +56 -0
- package/docs/tr/packages/svelte-intlayer/index.md +55 -0
- package/docs/tr/packages/vite-intlayer/index.md +82 -0
- package/docs/tr/packages/vue-intlayer/index.md +59 -0
- package/docs/tr/per_locale_file.md +321 -0
- package/docs/tr/readme.md +261 -0
- package/docs/tr/roadmap.md +338 -0
- package/docs/tr/testing.md +200 -0
- package/docs/tr/vs_code_extension.md +154 -0
- package/docs/zh/autoFill.md +40 -18
- package/docs/zh/configuration.md +245 -226
- package/docs/zh/dictionary/content_file.md +1064 -0
- package/docs/zh/intlayer_CMS.md +4 -5
- package/docs/zh/intlayer_with_nestjs.md +268 -0
- package/docs/zh/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/zh/intlayer_with_react_router_v7.md +535 -0
- package/docs/zh/intlayer_with_tanstack.md +468 -278
- package/docs/zh/intlayer_with_vite+preact.md +7 -7
- package/docs/zh/intlayer_with_vite+react.md +7 -7
- package/docs/zh/intlayer_with_vite+vue.md +7 -7
- package/docs/zh/packages/vite-intlayer/index.md +3 -3
- package/docs/zh/readme.md +261 -0
- package/docs/zh/testing.md +198 -0
- package/frequent_questions/tr/SSR_Next_no_[locale].md +105 -0
- package/frequent_questions/tr/array_as_content_declaration.md +72 -0
- package/frequent_questions/tr/build_dictionaries.md +59 -0
- package/frequent_questions/tr/build_error_CI_CD.md +75 -0
- package/frequent_questions/tr/customized_locale_list.md +65 -0
- package/frequent_questions/tr/domain_routing.md +114 -0
- package/frequent_questions/tr/esbuild_error.md +30 -0
- package/frequent_questions/tr/get_locale_cookie.md +142 -0
- package/frequent_questions/tr/intlayer_command_undefined.md +156 -0
- package/frequent_questions/tr/locale_incorect_in_url.md +74 -0
- package/frequent_questions/tr/static_rendering.md +45 -0
- package/frequent_questions/tr/translated_path_url.md +56 -0
- package/frequent_questions/tr/unknown_command.md +98 -0
- package/legal/tr/privacy_notice.md +83 -0
- package/legal/tr/terms_of_service.md +55 -0
- package/package.json +12 -12
- package/src/generated/blog.entry.ts +212 -0
- package/src/generated/docs.entry.ts +663 -135
- package/src/generated/frequentQuestions.entry.ts +85 -1
- package/src/generated/legal.entry.ts +7 -1
- package/docs/ar/dictionary/content_extention_customization.md +0 -100
- package/docs/ar/dictionary/get_started.md +0 -527
- package/docs/de/dictionary/content_extention_customization.md +0 -100
- package/docs/de/dictionary/get_started.md +0 -531
- package/docs/en/dictionary/content_extention_customization.md +0 -102
- package/docs/en/dictionary/get_started.md +0 -529
- package/docs/en-GB/dictionary/content_extention_customization.md +0 -100
- package/docs/en-GB/dictionary/get_started.md +0 -591
- package/docs/es/dictionary/content_extention_customization.md +0 -100
- package/docs/es/dictionary/get_started.md +0 -527
- package/docs/fr/dictionary/content_extention_customization.md +0 -100
- package/docs/fr/dictionary/get_started.md +0 -527
- package/docs/hi/dictionary/content_extention_customization.md +0 -100
- package/docs/hi/dictionary/get_started.md +0 -527
- package/docs/it/dictionary/content_extention_customization.md +0 -113
- package/docs/it/dictionary/get_started.md +0 -573
- package/docs/ja/dictionary/content_extention_customization.md +0 -113
- package/docs/ja/dictionary/get_started.md +0 -576
- package/docs/ko/dictionary/content_extention_customization.md +0 -100
- package/docs/ko/dictionary/get_started.md +0 -530
- package/docs/pt/dictionary/content_extention_customization.md +0 -100
- package/docs/pt/dictionary/get_started.md +0 -532
- package/docs/ru/dictionary/content_extention_customization.md +0 -100
- package/docs/ru/dictionary/get_started.md +0 -575
- package/docs/zh/dictionary/content_extention_customization.md +0 -117
- package/docs/zh/dictionary/get_started.md +0 -533
|
@@ -1,573 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
createdAt: 2024-08-11
|
|
3
|
-
updatedAt: 2025-06-29
|
|
4
|
-
title: Dizionario | Iniziare
|
|
5
|
-
description: Scopri come dichiarare e utilizzare dizionari nel tuo sito web multilingue. Segui i passaggi in questa documentazione online per configurare il tuo progetto in pochi minuti.
|
|
6
|
-
keywords:
|
|
7
|
-
- Iniziare
|
|
8
|
-
- Internazionalizzazione
|
|
9
|
-
- Documentazione
|
|
10
|
-
- Intlayer
|
|
11
|
-
- Next.js
|
|
12
|
-
- JavaScript
|
|
13
|
-
- React
|
|
14
|
-
slugs:
|
|
15
|
-
- doc
|
|
16
|
-
- concept
|
|
17
|
-
- content
|
|
18
|
-
---
|
|
19
|
-
|
|
20
|
-
# Iniziare la dichiarazione del tuo contenuto
|
|
21
|
-
|
|
22
|
-
<iframe title="i18n, Markdown, JSON… una soluzione unica per gestire tutto | Intlayer" class="m-auto aspect-[16/9] w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/1VHgSY_j9_I?autoplay=0&origin=http://intlayer.org&controls=0&rel=1"/>
|
|
23
|
-
|
|
24
|
-
## Estensioni dei file
|
|
25
|
-
|
|
26
|
-
Per impostazione predefinita, Intlayer monitora tutti i file con le seguenti estensioni per le dichiarazioni di contenuto:
|
|
27
|
-
|
|
28
|
-
- `.content.json`
|
|
29
|
-
- `.content.ts`
|
|
30
|
-
- `.content.tsx`
|
|
31
|
-
- `.content.js`
|
|
32
|
-
- `.content.jsx`
|
|
33
|
-
- `.content.mjs`
|
|
34
|
-
- `.content.mjx`
|
|
35
|
-
- `.content.cjs`
|
|
36
|
-
- `.content.cjx`
|
|
37
|
-
|
|
38
|
-
L'applicazione cercherà per impostazione predefinita i file che corrispondono al pattern glob `./src/**/*.content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}`.
|
|
39
|
-
|
|
40
|
-
Queste estensioni predefinite sono adatte alla maggior parte delle applicazioni. Tuttavia, se hai requisiti specifici, consulta la [guida alla personalizzazione delle estensioni di contenuto](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/configuration.md#content-configuration) per le istruzioni su come gestirle.
|
|
41
|
-
|
|
42
|
-
Per un elenco completo delle opzioni di configurazione, visita la documentazione sulla configurazione.
|
|
43
|
-
|
|
44
|
-
## Dichiara il tuo contenuto
|
|
45
|
-
|
|
46
|
-
Crea e gestisci i tuoi dizionari:
|
|
47
|
-
|
|
48
|
-
```tsx fileName="src/example.content.tsx" contentDeclarationFormat="typescript"
|
|
49
|
-
import { type ReactNode } from "react";
|
|
50
|
-
import {
|
|
51
|
-
t,
|
|
52
|
-
enu,
|
|
53
|
-
cond,
|
|
54
|
-
nest,
|
|
55
|
-
md,
|
|
56
|
-
insert,
|
|
57
|
-
file,
|
|
58
|
-
type Dictionary,
|
|
59
|
-
} from "intlayer";
|
|
60
|
-
|
|
61
|
-
interface Content {
|
|
62
|
-
imbricatedContent: {
|
|
63
|
-
imbricatedContent2: {
|
|
64
|
-
stringContent: string;
|
|
65
|
-
numberContent: number;
|
|
66
|
-
booleanContent: boolean;
|
|
67
|
-
javaScriptContent: string;
|
|
68
|
-
};
|
|
69
|
-
};
|
|
70
|
-
multilingualContent: string;
|
|
71
|
-
quantityContent: string;
|
|
72
|
-
conditionalContent: string;
|
|
73
|
-
markdownContent: never;
|
|
74
|
-
externalContent: string;
|
|
75
|
-
insertionContent: string;
|
|
76
|
-
nestedContent: string;
|
|
77
|
-
fileContent: string;
|
|
78
|
-
jsxContent: ReactNode;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export default {
|
|
82
|
-
key: "page",
|
|
83
|
-
content: {
|
|
84
|
-
imbricatedContent: {
|
|
85
|
-
imbricatedContent2: {
|
|
86
|
-
stringContent: "Ciao Mondo", // Contenuto stringa
|
|
87
|
-
numberContent: 123, // Contenuto numero
|
|
88
|
-
booleanContent: true, // Contenuto booleano
|
|
89
|
-
javaScriptContent: `${process.env.NODE_ENV}`, // Contenuto JavaScript
|
|
90
|
-
},
|
|
91
|
-
},
|
|
92
|
-
multilingualContent: t({
|
|
93
|
-
en: "English content",
|
|
94
|
-
"en-GB": "English content (UK)",
|
|
95
|
-
fr: "French content",
|
|
96
|
-
es: "Spanish content",
|
|
97
|
-
}),
|
|
98
|
-
quantityContent: enu({
|
|
99
|
-
"<-1": "Meno di meno uno auto",
|
|
100
|
-
"-1": "Meno uno auto",
|
|
101
|
-
"0": "Nessuna auto",
|
|
102
|
-
"1": "Una auto",
|
|
103
|
-
">5": "Alcune auto",
|
|
104
|
-
">19": "Molte auto",
|
|
105
|
-
}),
|
|
106
|
-
conditionalContent: cond({
|
|
107
|
-
true: "La validazione è abilitata",
|
|
108
|
-
false: "La validazione è disabilitata",
|
|
109
|
-
}),
|
|
110
|
-
insertionContent: insert("Ciao {{name}}!"),
|
|
111
|
-
nestedContent: nest(
|
|
112
|
-
"navbar", // La chiave del dizionario da annidare
|
|
113
|
-
"login.button" // [Opzionale] Il percorso al contenuto da annidare
|
|
114
|
-
),
|
|
115
|
-
fileContent: file("./path/to/file.txt"),
|
|
116
|
-
externalContent: fetch("https://example.com").then((res) => res.json()),
|
|
117
|
-
markdownContent: md("# Esempio di Markdown"),
|
|
118
|
-
|
|
119
|
-
/*
|
|
120
|
-
* Disponibile solo usando `react-intlayer` o `next-intlayer`
|
|
121
|
-
*/
|
|
122
|
-
jsxContent: <h1>Il mio titolo</h1>,
|
|
123
|
-
},
|
|
124
|
-
} satisfies Dictionary<Content>; // [opzionale] Dictionary è generico e ti permette di rafforzare il formato del tuo dizionario
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
```javascript fileName="src/example.content.mjx" contentDeclarationFormat="esm"
|
|
128
|
-
import { t, enu, cond, nest, md, insert, file } from "intlayer";
|
|
129
|
-
|
|
130
|
-
/** @type {import('intlayer').Dictionary} */
|
|
131
|
-
export default {
|
|
132
|
-
key: "page",
|
|
133
|
-
content: {
|
|
134
|
-
imbricatedContent: {
|
|
135
|
-
imbricatedContent2: {
|
|
136
|
-
stringContent: "Ciao Mondo",
|
|
137
|
-
numberContent: 123,
|
|
138
|
-
booleanContent: true,
|
|
139
|
-
javaScriptContent: `${process.env.NODE_ENV}`, // Contenuto JavaScript dinamico
|
|
140
|
-
},
|
|
141
|
-
imbricatedArray: [1, 2, 3],
|
|
142
|
-
},
|
|
143
|
-
multilingualContent: t({
|
|
144
|
-
en: "English content",
|
|
145
|
-
"en-GB": "English content (UK)",
|
|
146
|
-
fr: "French content",
|
|
147
|
-
es: "Spanish content",
|
|
148
|
-
}),
|
|
149
|
-
quantityContent: enu({
|
|
150
|
-
"<-1": "Meno di meno uno auto",
|
|
151
|
-
"-1": "Meno uno auto",
|
|
152
|
-
"0": "Nessuna auto",
|
|
153
|
-
"1": "Una auto",
|
|
154
|
-
">5": "Alcune auto",
|
|
155
|
-
">19": "Molte auto",
|
|
156
|
-
}),
|
|
157
|
-
conditionalContent: cond({
|
|
158
|
-
true: "La validazione è abilitata",
|
|
159
|
-
false: "La validazione è disabilitata",
|
|
160
|
-
}),
|
|
161
|
-
insertionContent: insert("Ciao {{name}}!"),
|
|
162
|
-
nestedContent: nest(
|
|
163
|
-
"navbar", // La chiave del dizionario da annidare
|
|
164
|
-
"login.button" // [Opzionale] Il percorso al contenuto da annidare
|
|
165
|
-
),
|
|
166
|
-
markdownContent: md("# Esempio di Markdown"),
|
|
167
|
-
fileContent: file("./path/to/file.txt"),
|
|
168
|
-
externalContent: fetch("https://example.com").then((res) => res.json())
|
|
169
|
-
|
|
170
|
-
// Disponibile solo usando `react-intlayer` o `next-intlayer`
|
|
171
|
-
jsxContent: <h1>Il mio titolo</h1>,
|
|
172
|
-
},
|
|
173
|
-
};
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
```javascript fileName="src/example.content.cjx" contentDeclarationFormat="commonjs"
|
|
177
|
-
const { t, enu, cond, nest, md, insert, file } = require("intlayer");
|
|
178
|
-
|
|
179
|
-
/** @type {import('intlayer').Dictionary} */
|
|
180
|
-
module.exports = {
|
|
181
|
-
key: "page",
|
|
182
|
-
content: {
|
|
183
|
-
imbricatedContent: {
|
|
184
|
-
imbricatedContent2: {
|
|
185
|
-
stringContent: "Ciao Mondo",
|
|
186
|
-
numberContent: 123,
|
|
187
|
-
booleanContent: true,
|
|
188
|
-
javaScriptContent: `${process.env.NODE_ENV}`, // Contenuto JavaScript dinamico
|
|
189
|
-
},
|
|
190
|
-
imbricatedArray: [1, 2, 3], // Array annidato
|
|
191
|
-
},
|
|
192
|
-
multilingualContent: t({
|
|
193
|
-
en: "English content",
|
|
194
|
-
"en-GB": "English content (UK)",
|
|
195
|
-
fr: "Contenuto francese",
|
|
196
|
-
es: "Contenuto spagnolo",
|
|
197
|
-
}),
|
|
198
|
-
quantityContent: enu({
|
|
199
|
-
"<-1": "Meno di meno uno auto",
|
|
200
|
-
"-1": "Meno uno auto",
|
|
201
|
-
"0": "Nessuna auto",
|
|
202
|
-
"1": "Una macchina",
|
|
203
|
-
">5": "Alcune macchine",
|
|
204
|
-
">19": "Molte macchine",
|
|
205
|
-
}),
|
|
206
|
-
conditionalContent: cond({
|
|
207
|
-
true: "La validazione è abilitata",
|
|
208
|
-
false: "La validazione è disabilitata",
|
|
209
|
-
}),
|
|
210
|
-
insertionContent: insert("Ciao {{name}}!"),
|
|
211
|
-
nestedContent: nest(
|
|
212
|
-
"navbar", // La chiave del dizionario da nidificare
|
|
213
|
-
"login.button" // [Opzionale] Il percorso al contenuto da nidificare
|
|
214
|
-
),
|
|
215
|
-
markdownContent: md("# Esempio di Markdown"),
|
|
216
|
-
fileContent: file("./path/to/file.txt"),
|
|
217
|
-
externalContent: fetch("https://example.com").then((res) => res.json())
|
|
218
|
-
|
|
219
|
-
// Disponibile solo usando `react-intlayer` o `next-intlayer`
|
|
220
|
-
jsxContent: <h1>Il mio titolo</h1>,
|
|
221
|
-
},
|
|
222
|
-
};
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
```json5 fileName="src/example.content.json" contentDeclarationFormat="json"
|
|
226
|
-
{
|
|
227
|
-
"$schema": "https://intlayer.org/schema.json",
|
|
228
|
-
"key": "page",
|
|
229
|
-
"content": {
|
|
230
|
-
"imbricatedContent": {
|
|
231
|
-
"imbricatedContent2": {
|
|
232
|
-
"stringContent": "Ciao Mondo",
|
|
233
|
-
"numberContent": 123,
|
|
234
|
-
"booleanContent": true,
|
|
235
|
-
},
|
|
236
|
-
"imbricatedArray": [1, 2, 3],
|
|
237
|
-
},
|
|
238
|
-
"multilingualContent": {
|
|
239
|
-
"nodeType": "translation",
|
|
240
|
-
"translation": {
|
|
241
|
-
"en": "Contenuto in inglese",
|
|
242
|
-
"en-GB": "Contenuto in inglese (UK)",
|
|
243
|
-
"fr": "Contenuto in francese",
|
|
244
|
-
"es": "Contenuto in spagnolo",
|
|
245
|
-
},
|
|
246
|
-
},
|
|
247
|
-
"quantityContent": {
|
|
248
|
-
"nodeType": "enumeration",
|
|
249
|
-
"enumeration": {
|
|
250
|
-
"0": "Nessuna macchina",
|
|
251
|
-
"1": "Una macchina",
|
|
252
|
-
"<-1": "Meno di meno una macchina",
|
|
253
|
-
"-1": "Meno una macchina",
|
|
254
|
-
">5": "Alcune macchine",
|
|
255
|
-
">19": "Molte macchine",
|
|
256
|
-
},
|
|
257
|
-
},
|
|
258
|
-
"conditionalContent": {
|
|
259
|
-
"nodeType": "condition",
|
|
260
|
-
"condition": {
|
|
261
|
-
"true": "La validazione è abilitata",
|
|
262
|
-
"false": "La validazione è disabilitata",
|
|
263
|
-
},
|
|
264
|
-
},
|
|
265
|
-
"insertionContent": {
|
|
266
|
-
"nodeType": "insertion",
|
|
267
|
-
"insertion": "Ciao {{name}}!",
|
|
268
|
-
},
|
|
269
|
-
"nestedContent": {
|
|
270
|
-
"nodeType": "nested",
|
|
271
|
-
"nested": { "dictionaryKey": "app" },
|
|
272
|
-
},
|
|
273
|
-
"markdownContent": {
|
|
274
|
-
"nodeType": "markdown",
|
|
275
|
-
"markdown": "# Esempio di Markdown",
|
|
276
|
-
},
|
|
277
|
-
"fileContent": {
|
|
278
|
-
"nodeType": "file",
|
|
279
|
-
"file": "./path/to/file.txt",
|
|
280
|
-
},
|
|
281
|
-
"jsxContent": {
|
|
282
|
-
"type": "h1",
|
|
283
|
-
"key": null,
|
|
284
|
-
"ref": null,
|
|
285
|
-
"props": {
|
|
286
|
-
"children": ["Il mio titolo"],
|
|
287
|
-
},
|
|
288
|
-
},
|
|
289
|
-
},
|
|
290
|
-
}
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
## Imbricazione di funzioni
|
|
294
|
-
|
|
295
|
-
Puoi senza problemi imbricare funzioni dentro altre funzioni.
|
|
296
|
-
|
|
297
|
-
Esempio :
|
|
298
|
-
|
|
299
|
-
```javascript fileName="src/example.content.tsx" contentDeclarationFormat="typescript"
|
|
300
|
-
import { t, enu, cond, nest, md, type Dictionary } from "intlayer";
|
|
301
|
-
|
|
302
|
-
const getName = async () => "John Doe";
|
|
303
|
-
|
|
304
|
-
export default {
|
|
305
|
-
key: "page",
|
|
306
|
-
content: {
|
|
307
|
-
// `getIntlayer('page','en').hiMessage` restituisce `['Hi', ' ', 'John Doe']`
|
|
308
|
-
hiMessage: [
|
|
309
|
-
t({
|
|
310
|
-
en: "Hi",
|
|
311
|
-
fr: "Salut",
|
|
312
|
-
es: "Hola",
|
|
313
|
-
}),
|
|
314
|
-
" ",
|
|
315
|
-
getName(),
|
|
316
|
-
],
|
|
317
|
-
// Contenuto composito che imbrica condizione, enumerazione e contenuto multilingue
|
|
318
|
-
// `getIntlayer('page','en').advancedContent(true)(10)` restituisce 'Multiple items found'
|
|
319
|
-
advancedContent: cond({
|
|
320
|
-
true: enu({
|
|
321
|
-
"0": t({
|
|
322
|
-
en: "No items found",
|
|
323
|
-
fr: "Aucun article trouvé",
|
|
324
|
-
es: "No se encontraron artículos",
|
|
325
|
-
}),
|
|
326
|
-
"1": t({
|
|
327
|
-
en: "One item found",
|
|
328
|
-
fr: "Un article trouvé",
|
|
329
|
-
es: "Se encontró un artículo",
|
|
330
|
-
}),
|
|
331
|
-
">1": t({
|
|
332
|
-
en: "Multiple items found",
|
|
333
|
-
fr: "Plusieurs articles trouvés",
|
|
334
|
-
es: "Se encontraron múltiples artículos",
|
|
335
|
-
}),
|
|
336
|
-
}),
|
|
337
|
-
false: t({
|
|
338
|
-
en: "No valid data available",
|
|
339
|
-
fr: "Aucune donnée valide disponible",
|
|
340
|
-
es: "No hay datos válidos disponibles",
|
|
341
|
-
}),
|
|
342
|
-
}),
|
|
343
|
-
},
|
|
344
|
-
} satisfies Dictionary;
|
|
345
|
-
```
|
|
346
|
-
|
|
347
|
-
```javascript fileName="src/example.content.mjx" contentDeclarationFormat="esm"
|
|
348
|
-
import { t, enu, cond, nest, md } from "intlayer";
|
|
349
|
-
|
|
350
|
-
const getName = async () => "John Doe";
|
|
351
|
-
|
|
352
|
-
/** @type {import('intlayer').Dictionary} */
|
|
353
|
-
export default {
|
|
354
|
-
key: "page",
|
|
355
|
-
content: {
|
|
356
|
-
// `getIntlayer('page','en').hiMessage` restituisce `['Hi', ' ', 'John Doe']`
|
|
357
|
-
hiMessage: [
|
|
358
|
-
t({
|
|
359
|
-
en: "Hi",
|
|
360
|
-
fr: "Salut",
|
|
361
|
-
es: "Hola",
|
|
362
|
-
}),
|
|
363
|
-
" ",
|
|
364
|
-
getName(),
|
|
365
|
-
],
|
|
366
|
-
// Contenuto composito che imbrica condizione, enumerazione e contenuto multilingue
|
|
367
|
-
// `getIntlayer('page','en').advancedContent(true)(10)` restituisce 'Multiple items found'
|
|
368
|
-
advancedContent: cond({
|
|
369
|
-
true: enu({
|
|
370
|
-
"0": t({
|
|
371
|
-
en: "No items found",
|
|
372
|
-
fr: "Aucun article trouvé",
|
|
373
|
-
es: "No se encontraron artículos",
|
|
374
|
-
}),
|
|
375
|
-
"1": t({
|
|
376
|
-
en: "One item found",
|
|
377
|
-
fr: "Un article trouvé",
|
|
378
|
-
es: "Se encontró un artículo",
|
|
379
|
-
}),
|
|
380
|
-
">1": t({
|
|
381
|
-
en: "Multiple items found",
|
|
382
|
-
fr: "Plusieurs articles trouvés",
|
|
383
|
-
es: "Se encontraron múltiples artículos",
|
|
384
|
-
}),
|
|
385
|
-
}),
|
|
386
|
-
false: t({
|
|
387
|
-
en: "No valid data available",
|
|
388
|
-
fr: "Aucune donnée valide disponible",
|
|
389
|
-
es: "No hay datos válidos disponibles",
|
|
390
|
-
}),
|
|
391
|
-
}),
|
|
392
|
-
},
|
|
393
|
-
};
|
|
394
|
-
|
|
395
|
-
/** @type {import('intlayer').Dictionary} */
|
|
396
|
-
export default {
|
|
397
|
-
key: "page",
|
|
398
|
-
content: {
|
|
399
|
-
// `getIntlayer('page','en').hiMessage` restituisce `['Ciao', ' ', 'John Doe']`
|
|
400
|
-
hiMessage: [
|
|
401
|
-
t({
|
|
402
|
-
en: "Hi",
|
|
403
|
-
fr: "Salut",
|
|
404
|
-
es: "Hola",
|
|
405
|
-
}),
|
|
406
|
-
" ",
|
|
407
|
-
getName(),
|
|
408
|
-
],
|
|
409
|
-
// Contenuto composito che combina condizione, enumerazione e contenuto multilingue
|
|
410
|
-
// `getIntlayer('page','en').advancedContent(true)(10) restituisce 'Più elementi trovati'`
|
|
411
|
-
advancedContent: cond({
|
|
412
|
-
true: enu({
|
|
413
|
-
"0": t({
|
|
414
|
-
en: "No items found",
|
|
415
|
-
fr: "Aucun article trouvé",
|
|
416
|
-
es: "No se encontraron artículos",
|
|
417
|
-
}),
|
|
418
|
-
"1": t({
|
|
419
|
-
en: "One item found",
|
|
420
|
-
fr: "Un article trouvé",
|
|
421
|
-
es: "Se encontró un artículo",
|
|
422
|
-
/ }),
|
|
423
|
-
">1": t({
|
|
424
|
-
en: "Multiple items found",
|
|
425
|
-
fr: "Plusieurs articles trouvés",
|
|
426
|
-
es: "Se encontraron múltiples artículos",
|
|
427
|
-
}),
|
|
428
|
-
}),
|
|
429
|
-
false: t({
|
|
430
|
-
en: "Nessun dato valido disponibile",
|
|
431
|
-
fr: "Aucune donnée valide disponible",
|
|
432
|
-
es: "No hay datos válidos disponibles",
|
|
433
|
-
}),
|
|
434
|
-
}),
|
|
435
|
-
},
|
|
436
|
-
};
|
|
437
|
-
```
|
|
438
|
-
|
|
439
|
-
```javascript fileName="src/example.content.cjx" contentDeclarationFormat="commonjs"
|
|
440
|
-
const { t, enu, cond, nest, md } = require("intlayer");
|
|
441
|
-
|
|
442
|
-
const getName = async () => "John Doe";
|
|
443
|
-
|
|
444
|
-
/** @type {import('intlayer').Dictionary} */
|
|
445
|
-
module.exports = {
|
|
446
|
-
key: "page",
|
|
447
|
-
content: {
|
|
448
|
-
// `getIntlayer('page','en').hiMessage` restituisce `['Hi', ' ', 'John Doe']`
|
|
449
|
-
hiMessage: [
|
|
450
|
-
t({
|
|
451
|
-
en: "Hi",
|
|
452
|
-
fr: "Salut",
|
|
453
|
-
es: "Hola",
|
|
454
|
-
}),
|
|
455
|
-
" ",
|
|
456
|
-
getName(),
|
|
457
|
-
],
|
|
458
|
-
// Contenuto composito che combina condizione, enumerazione e contenuto multilingue
|
|
459
|
-
// `getIntlayer('page','en').advancedContent(true)(10) restituisce 'Multiple items found'`
|
|
460
|
-
advancedContent: cond({
|
|
461
|
-
true: enu({
|
|
462
|
-
"0": t({
|
|
463
|
-
en: "No items found",
|
|
464
|
-
fr: "Aucun article trouvé",
|
|
465
|
-
es: "No se encontraron artículos",
|
|
466
|
-
}),
|
|
467
|
-
"1": t({
|
|
468
|
-
en: "One item found",
|
|
469
|
-
fr: "Un article trouvé",
|
|
470
|
-
es: "Se encontró un artículo",
|
|
471
|
-
}),
|
|
472
|
-
">1": t({
|
|
473
|
-
en: "Multiple items found",
|
|
474
|
-
fr: "Plusieurs articles trouvés",
|
|
475
|
-
es: "Se encontraron múltiples artículos",
|
|
476
|
-
}),
|
|
477
|
-
}),
|
|
478
|
-
false: t({
|
|
479
|
-
en: "No valid data available",
|
|
480
|
-
fr: "Aucune donnée valide disponible",
|
|
481
|
-
es: "No hay datos válidos disponibles",
|
|
482
|
-
}),
|
|
483
|
-
}),
|
|
484
|
-
},
|
|
485
|
-
};
|
|
486
|
-
```
|
|
487
|
-
|
|
488
|
-
```json5 fileName="src/example.content.json" contentDeclarationFormat="json"
|
|
489
|
-
{
|
|
490
|
-
"$schema": "https://intlayer.org/schema.json",
|
|
491
|
-
"key": "page",
|
|
492
|
-
"content": {
|
|
493
|
-
"hiMessage": {
|
|
494
|
-
"nodeType": "composite",
|
|
495
|
-
"composite": [
|
|
496
|
-
{
|
|
497
|
-
"nodeType": "translation",
|
|
498
|
-
"translation": {
|
|
499
|
-
en: "Hi",
|
|
500
|
-
fr: "Salut",
|
|
501
|
-
es: "Hola",
|
|
502
|
-
},
|
|
503
|
-
},
|
|
504
|
-
" ",
|
|
505
|
-
"John Doe",
|
|
506
|
-
],
|
|
507
|
-
},
|
|
508
|
-
"advancedContent": {
|
|
509
|
-
"nodeType": "condition",
|
|
510
|
-
"condition": {
|
|
511
|
-
"true": {
|
|
512
|
-
"nodeType": "enumeration",
|
|
513
|
-
"enumeration": {
|
|
514
|
-
"0": {
|
|
515
|
-
"nodeType": "translation",
|
|
516
|
-
"translation": {
|
|
517
|
-
"en": "No items found",
|
|
518
|
-
"it": "Nessun elemento trovato",
|
|
519
|
-
"fr": "Aucun article trouvé",
|
|
520
|
-
"es": "No se encontraron artículos",
|
|
521
|
-
},
|
|
522
|
-
},
|
|
523
|
-
"1": {
|
|
524
|
-
"nodeType": "translation",
|
|
525
|
-
"translation": {
|
|
526
|
-
"en": "One item found",
|
|
527
|
-
"it": "Un elemento trovato",
|
|
528
|
-
"fr": "Un article trouvé",
|
|
529
|
-
"es": "Se encontró un artículo",
|
|
530
|
-
},
|
|
531
|
-
},
|
|
532
|
-
">1": {
|
|
533
|
-
"nodeType": "translation",
|
|
534
|
-
"translation": {
|
|
535
|
-
"en": "Multiple items found",
|
|
536
|
-
"it": "Più elementi trovati",
|
|
537
|
-
"fr": "Plusieurs articles trouvés",
|
|
538
|
-
"es": "Se encontraron múltiples artículos",
|
|
539
|
-
},
|
|
540
|
-
},
|
|
541
|
-
},
|
|
542
|
-
},
|
|
543
|
-
"false": {
|
|
544
|
-
"nodeType": "translation",
|
|
545
|
-
"translation": {
|
|
546
|
-
"en": "No valid data available",
|
|
547
|
-
"fr": "Aucune donnée valide disponible",
|
|
548
|
-
"es": "No hay datos válidos disponibles",
|
|
549
|
-
},
|
|
550
|
-
},
|
|
551
|
-
},
|
|
552
|
-
},
|
|
553
|
-
},
|
|
554
|
-
}
|
|
555
|
-
```
|
|
556
|
-
|
|
557
|
-
## Risorse Aggiuntive
|
|
558
|
-
|
|
559
|
-
Per maggiori dettagli su Intlayer, fare riferimento alle seguenti risorse:
|
|
560
|
-
|
|
561
|
-
- [Documentazione sulla Dichiarazione di Contenuti per Locale](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/per_locale_file.md)
|
|
562
|
-
- [Documentazione sul Contenuto di Traduzione](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/translation.md)
|
|
563
|
-
- [Documentazione sul Contenuto di Enumerazione](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/enumeration.md)
|
|
564
|
-
- [Documentazione del Contenuto Condizionale](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/condition.md)
|
|
565
|
-
- [Documentazione del Contenuto di Inserimento](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/insertion.md)
|
|
566
|
-
- [Documentazione del Contenuto File](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/file.md)
|
|
567
|
-
- [Documentazione del Contenuto Annidato](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/nesting.md)
|
|
568
|
-
- [Documentazione del Contenuto Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/markdown.md)
|
|
569
|
-
- [Documentazione del Contenuto di Recupero Funzioni](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/function_fetching.md)
|
|
570
|
-
|
|
571
|
-
## Cronologia del Documento
|
|
572
|
-
|
|
573
|
-
- 5.5.10 - 2025-06-29: Storia iniziale
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
createdAt: 2025-02-07
|
|
3
|
-
updatedAt: 2025-06-29
|
|
4
|
-
title: コンテンツ拡張子のカスタマイズ
|
|
5
|
-
description: コンテンツ宣言ファイルの拡張子をカスタマイズする方法を学びます。このドキュメントに従って、プロジェクトで条件を効率的に実装してください。
|
|
6
|
-
keywords:
|
|
7
|
-
- コンテンツ拡張子のカスタマイズ
|
|
8
|
-
- ドキュメント
|
|
9
|
-
- Intlayer
|
|
10
|
-
slugs:
|
|
11
|
-
- doc
|
|
12
|
-
- concept
|
|
13
|
-
- content
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
# コンテンツ拡張子のカスタマイズ
|
|
17
|
-
|
|
18
|
-
## コンテンツファイルの拡張子
|
|
19
|
-
|
|
20
|
-
Intlayerでは、コンテンツ宣言ファイルの拡張子をカスタマイズすることができます。このカスタマイズにより、大規模プロジェクトの管理が柔軟になり、他のモジュールとの競合を回避するのに役立ちます。
|
|
21
|
-
|
|
22
|
-
### デフォルトの拡張子
|
|
23
|
-
|
|
24
|
-
デフォルトでは、Intlayerは以下の拡張子を持つすべてのファイルをコンテンツ宣言用として監視します:
|
|
25
|
-
|
|
26
|
-
- `.content.json`
|
|
27
|
-
- `.content.ts`
|
|
28
|
-
- `.content.tsx`
|
|
29
|
-
- `.content.js`
|
|
30
|
-
- `.content.jsx`
|
|
31
|
-
- `.content.mjs`
|
|
32
|
-
- `.content.mjx`
|
|
33
|
-
- `.content.cjs`
|
|
34
|
-
- `.content.cjx`
|
|
35
|
-
|
|
36
|
-
これらのデフォルト拡張子はほとんどのアプリケーションに適しています。しかし、特定のニーズがある場合は、カスタム拡張子を定義してビルドプロセスを効率化し、他のコンポーネントとの競合リスクを減らすことができます。
|
|
37
|
-
|
|
38
|
-
### コンテンツ拡張子のカスタマイズ
|
|
39
|
-
|
|
40
|
-
Intlayerがコンテンツ宣言ファイルを識別するために使用するファイル拡張子をカスタマイズするには、Intlayerの設定ファイルでそれらを指定できます。この方法は、監視プロセスの範囲を制限することでビルドパフォーマンスを向上させる大規模プロジェクトに特に有効です。
|
|
41
|
-
|
|
42
|
-
以下は、設定ファイルでカスタムコンテンツ拡張子を定義する例です:
|
|
43
|
-
|
|
44
|
-
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
45
|
-
import type { IntlayerConfig } from "intlayer";
|
|
46
|
-
|
|
47
|
-
const config: IntlayerConfig = {
|
|
48
|
-
content: {
|
|
49
|
-
fileExtensions: [".my_content.ts", ".my_content.tsx"], // あなたのカスタム拡張子
|
|
50
|
-
},
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
export default config;
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
57
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
58
|
-
const config = {
|
|
59
|
-
content: {
|
|
60
|
-
fileExtensions: [".my_content.cjs", ".my_content.cjx"], // あなたのカスタム拡張子
|
|
61
|
-
},
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
export default config;
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
68
|
-
/** @type {import('intlayer').IntlayerConfig} */
|
|
69
|
-
const config = {
|
|
70
|
-
content: {
|
|
71
|
-
fileExtensions: [".my_content.mjs", ".my_content.mjx"], // あなたのカスタム拡張子
|
|
72
|
-
},
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
module.exports = config;
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
この例では、設定ファイルで2つのカスタム拡張子 `.my_content.ts` と `.my_content.tsx` が指定されています。Intlayerはこれらの拡張子を持つファイルのみを監視して辞書を構築します。
|
|
79
|
-
|
|
80
|
-
### カスタム拡張子の利点
|
|
81
|
-
|
|
82
|
-
- **ビルドパフォーマンス**: 監視対象のファイル範囲を絞ることで、大規模プロジェクトにおけるビルドパフォーマンスが大幅に向上します。
|
|
83
|
-
- **競合回避**: カスタム拡張子は、プロジェクト内の他のJavaScriptやTypeScriptファイルとの競合を防ぐのに役立ちます。
|
|
84
|
-
- **整理整頓**: カスタム拡張子を使用することで、プロジェクトのニーズに応じてコンテンツ宣言ファイルを整理することができます。
|
|
85
|
-
|
|
86
|
-
### カスタム拡張子のガイドライン
|
|
87
|
-
|
|
88
|
-
コンテンツファイルの拡張子をカスタマイズする際は、以下のガイドラインを守ってください。
|
|
89
|
-
|
|
90
|
-
- **一意性**: 競合を避けるために、プロジェクト内で一意の拡張子を選択してください。
|
|
91
|
-
- **一貫した命名**: コードの可読性と保守性を高めるために、一貫した命名規則を使用してください。
|
|
92
|
-
- **一般的な拡張子の回避**: 他のモジュールやライブラリとの競合を防ぐために、`.ts`や`.js`などの一般的な拡張子の使用は避けてください。
|
|
93
|
-
|
|
94
|
-
## 結論
|
|
95
|
-
|
|
96
|
-
- **競合回避**: カスタム拡張子は、プロジェクト内の他のJavaScriptやTypeScriptファイルとの競合を防ぐのに役立ちます。
|
|
97
|
-
- **整理整頓**: カスタム拡張子を使用することで、プロジェクトのニーズに応じてコンテンツ宣言ファイルを整理できます。
|
|
98
|
-
|
|
99
|
-
### カスタム拡張子のガイドライン
|
|
100
|
-
|
|
101
|
-
コンテンツファイルの拡張子をカスタマイズする際は、以下のガイドラインを守ってください:
|
|
102
|
-
|
|
103
|
-
- **一意性**: プロジェクト内で一意の拡張子を選び、競合を避けること。
|
|
104
|
-
- **一貫した命名**: コードの可読性とメンテナンス性を高めるために、一貫した命名規則を使用すること。
|
|
105
|
-
- **一般的な拡張子の回避**: `.ts` や `.js` のような一般的な拡張子は、他のモジュールやライブラリとの競合を避けるために使用しないこと。
|
|
106
|
-
|
|
107
|
-
## 結論
|
|
108
|
-
|
|
109
|
-
Intlayerでコンテンツファイルの拡張子をカスタマイズすることは、大規模アプリケーションのパフォーマンス最適化や競合回避に役立つ重要な機能です。本ドキュメントで示したガイドラインに従うことで、コンテンツ宣言を効果的に管理し、プロジェクトの他の部分とのスムーズな統合を実現できます。
|
|
110
|
-
|
|
111
|
-
## ドキュメント履歴
|
|
112
|
-
|
|
113
|
-
- 5.5.10 - 2025-06-29: 履歴初期化
|