@djangocfg/nextjs 2.1.145 → 2.1.146
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/config/index.mjs +1 -1
- package/dist/config/index.mjs.map +1 -1
- package/dist/i18n/client.mjs +1 -1
- package/dist/i18n/client.mjs.map +1 -1
- package/dist/i18n/components.mjs +1 -1
- package/dist/i18n/components.mjs.map +1 -1
- package/dist/i18n/index.mjs +1 -1
- package/dist/i18n/index.mjs.map +1 -1
- package/dist/i18n/navigation.mjs +1 -1
- package/dist/i18n/navigation.mjs.map +1 -1
- package/dist/i18n/proxy.mjs +1 -1
- package/dist/i18n/proxy.mjs.map +1 -1
- package/dist/i18n/request.mjs +1 -1
- package/dist/i18n/request.mjs.map +1 -1
- package/dist/i18n/routing.d.mts +4 -4
- package/dist/i18n/routing.mjs +1 -1
- package/dist/i18n/routing.mjs.map +1 -1
- package/dist/i18n/server.mjs +1 -1
- package/dist/i18n/server.mjs.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +8 -8
- package/src/i18n/routing.ts +1 -1
package/dist/i18n/server.mjs
CHANGED
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
|
|
11
11
|
// src/i18n/routing.ts
|
|
12
12
|
import { defineRouting } from "next-intl/routing";
|
|
13
|
-
var DEFAULT_LOCALES = ["en", "ru", "ko"];
|
|
13
|
+
var DEFAULT_LOCALES = ["en", "ru", "ko", "ja", "de", "fr", "zh", "it", "es", "nl", "ar", "tr", "pt-BR", "pl", "sv", "no", "da"];
|
|
14
14
|
var DEFAULT_LOCALE = "en";
|
|
15
15
|
function createRouting(config) {
|
|
16
16
|
const locales = config?.locales ?? DEFAULT_LOCALES;
|
package/dist/i18n/server.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/i18n/server.ts","../../src/i18n/routing.ts"],"sourcesContent":["/**\n * Server-side i18n Utilities\n *\n * For use in Server Components, Server Actions, and Route Handlers\n *\n * @example\n * ```tsx\n * // In a Server Component\n * import { getTranslations, getLocale } from '@djangocfg/nextjs/i18n/server';\n *\n * export default async function Page() {\n * const t = await getTranslations('HomePage');\n * const locale = await getLocale();\n *\n * return <h1>{t('title')}</h1>;\n * }\n * ```\n */\n\nimport {\n getFormatter, getLocale as getNextIntlLocale, getMessages as getNextIntlMessages, getNow,\n getTimeZone, getTranslations as getNextIntlTranslations\n} from 'next-intl/server';\n\nimport { generateLocaleParams, isValidLocale } from './routing';\n\nimport type { LocaleCode, Messages, LocaleParams } from './types';\n// Re-export routing utilities for convenience\nexport { isValidLocale, generateLocaleParams };\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Core Server Functions\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get translations for Server Components\n *\n * @example\n * ```tsx\n * const t = await getTranslations('HomePage');\n * return <h1>{t('title')}</h1>;\n *\n * // Or without namespace\n * const t = await getTranslations();\n * return <h1>{t('HomePage.title')}</h1>;\n * ```\n */\nexport async function getTranslations<Namespace extends string = never>(\n namespace?: Namespace\n) {\n return getNextIntlTranslations(namespace);\n}\n\n/**\n * Get current locale in Server Components\n */\nexport async function getLocale(): Promise<LocaleCode> {\n return (await getNextIntlLocale()) as LocaleCode;\n}\n\n/**\n * Get all messages for the current request\n * Useful for passing to I18nProvider in layouts\n */\nexport async function getMessages(): Promise<Messages> {\n return (await getNextIntlMessages()) as Messages;\n}\n\n/**\n * Get current time for the request\n * Useful for consistent time-based formatting\n */\nexport { getNow };\n\n/**\n * Get timezone for the request\n */\nexport { getTimeZone };\n\n/**\n * Get formatter for dates, numbers, etc.\n */\nexport { getFormatter };\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Locale Extraction Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Extract locale from page/layout params\n *\n * @example\n * ```tsx\n * // app/[locale]/page.tsx\n * export default async function Page({ params }) {\n * const locale = await getLocaleFromParams(params);\n * // ...\n * }\n * ```\n */\nexport async function getLocaleFromParams(\n params: Promise<LocaleParams> | LocaleParams\n): Promise<LocaleCode> {\n const resolved = await params;\n return resolved.locale as LocaleCode;\n}\n\n/**\n * Shorthand for getting locale from params\n * Alias for getLocaleFromParams\n */\nexport const extractLocale = getLocaleFromParams;\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Typed Translation Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get typed translations for a specific namespace\n *\n * @example\n * ```tsx\n * const t = await getNamespacedTranslations('payments');\n * return <span>{t('balance.available')}</span>;\n * ```\n */\nexport async function getNamespacedTranslations(namespace: string) {\n return getNextIntlTranslations(namespace);\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Metadata Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Generate localized metadata for pages\n *\n * @example\n * ```tsx\n * // app/[locale]/about/page.tsx\n * import { generateLocalizedMetadata } from '@djangocfg/nextjs/i18n/server';\n *\n * export async function generateMetadata({ params }) {\n * return generateLocalizedMetadata(params, {\n * titleKey: 'AboutPage.meta.title',\n * descriptionKey: 'AboutPage.meta.description',\n * });\n * }\n * ```\n */\nexport async function generateLocalizedMetadata(\n params: Promise<LocaleParams> | LocaleParams,\n options: {\n titleKey?: string;\n descriptionKey?: string;\n namespace?: string;\n } = {}\n) {\n const locale = await getLocaleFromParams(params);\n const t = await getTranslations(options.namespace);\n\n return {\n title: options.titleKey ? t(options.titleKey as never) : undefined,\n description: options.descriptionKey ? t(options.descriptionKey as never) : undefined,\n // Add locale to alternate languages\n alternates: {\n languages: {\n [locale]: `/${locale}`,\n },\n },\n };\n}\n","/**\n * i18n Routing Configuration\n *\n * Creates routing configuration for next-intl\n * Used by proxy and navigation components\n */\n\nimport { defineRouting } from 'next-intl/routing';\n\nimport type { I18nConfig, LocaleCode } from './types';\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Default Configuration\n// ─────────────────────────────────────────────────────────────────────────────\n\nconst DEFAULT_LOCALES: LocaleCode[] = ['en', 'ru', 'ko'];\nconst DEFAULT_LOCALE: LocaleCode = 'en';\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Routing Factory\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Create routing configuration for next-intl\n *\n * @example\n * ```ts\n * // i18n/routing.ts\n * import { createRouting } from '@djangocfg/nextjs/i18n';\n *\n * export const routing = createRouting({\n * locales: ['en', 'ru', 'ko'],\n * defaultLocale: 'en',\n * });\n * ```\n */\nexport function createRouting(config?: Partial<I18nConfig>) {\n const locales = config?.locales ?? DEFAULT_LOCALES;\n const defaultLocale = config?.defaultLocale ?? DEFAULT_LOCALE;\n const localePrefix = config?.localePrefix ?? 'as-needed';\n\n return defineRouting({\n locales,\n defaultLocale,\n localePrefix,\n });\n}\n\n/**\n * Default routing configuration\n * Can be overridden by app-specific configuration\n */\nexport const routing = createRouting();\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Locale Utilities\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Check if a locale is supported\n */\nexport function isValidLocale(\n locale: string,\n supportedLocales: readonly string[] = DEFAULT_LOCALES\n): locale is LocaleCode {\n return supportedLocales.includes(locale as LocaleCode);\n}\n\n/**\n * Get locale from params (handles async params in Next.js 15+)\n */\nexport async function getLocaleFromParams(\n params: Promise<{ locale: string }> | { locale: string }\n): Promise<LocaleCode> {\n const resolved = await params;\n return resolved.locale as LocaleCode;\n}\n\n/**\n * Generate static params for all locales\n * Use in generateStaticParams for locale pages\n */\nexport function generateLocaleParams(locales: readonly string[] = DEFAULT_LOCALES) {\n return locales.map((locale) => ({ locale }));\n}\n"],"mappings":";AAmBA;AAAA,EACI;AAAA,EAAc,aAAa;AAAA,EAAmB,eAAe;AAAA,EAAqB;AAAA,EAClF;AAAA,EAAa,mBAAmB;AAAA,OAC7B;;;ACfP,SAAS,qBAAqB;AAQ9B,IAAM,kBAAgC,CAAC,MAAM,MAAM,IAAI;
|
|
1
|
+
{"version":3,"sources":["../../src/i18n/server.ts","../../src/i18n/routing.ts"],"sourcesContent":["/**\n * Server-side i18n Utilities\n *\n * For use in Server Components, Server Actions, and Route Handlers\n *\n * @example\n * ```tsx\n * // In a Server Component\n * import { getTranslations, getLocale } from '@djangocfg/nextjs/i18n/server';\n *\n * export default async function Page() {\n * const t = await getTranslations('HomePage');\n * const locale = await getLocale();\n *\n * return <h1>{t('title')}</h1>;\n * }\n * ```\n */\n\nimport {\n getFormatter, getLocale as getNextIntlLocale, getMessages as getNextIntlMessages, getNow,\n getTimeZone, getTranslations as getNextIntlTranslations\n} from 'next-intl/server';\n\nimport { generateLocaleParams, isValidLocale } from './routing';\n\nimport type { LocaleCode, Messages, LocaleParams } from './types';\n// Re-export routing utilities for convenience\nexport { isValidLocale, generateLocaleParams };\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Core Server Functions\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get translations for Server Components\n *\n * @example\n * ```tsx\n * const t = await getTranslations('HomePage');\n * return <h1>{t('title')}</h1>;\n *\n * // Or without namespace\n * const t = await getTranslations();\n * return <h1>{t('HomePage.title')}</h1>;\n * ```\n */\nexport async function getTranslations<Namespace extends string = never>(\n namespace?: Namespace\n) {\n return getNextIntlTranslations(namespace);\n}\n\n/**\n * Get current locale in Server Components\n */\nexport async function getLocale(): Promise<LocaleCode> {\n return (await getNextIntlLocale()) as LocaleCode;\n}\n\n/**\n * Get all messages for the current request\n * Useful for passing to I18nProvider in layouts\n */\nexport async function getMessages(): Promise<Messages> {\n return (await getNextIntlMessages()) as Messages;\n}\n\n/**\n * Get current time for the request\n * Useful for consistent time-based formatting\n */\nexport { getNow };\n\n/**\n * Get timezone for the request\n */\nexport { getTimeZone };\n\n/**\n * Get formatter for dates, numbers, etc.\n */\nexport { getFormatter };\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Locale Extraction Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Extract locale from page/layout params\n *\n * @example\n * ```tsx\n * // app/[locale]/page.tsx\n * export default async function Page({ params }) {\n * const locale = await getLocaleFromParams(params);\n * // ...\n * }\n * ```\n */\nexport async function getLocaleFromParams(\n params: Promise<LocaleParams> | LocaleParams\n): Promise<LocaleCode> {\n const resolved = await params;\n return resolved.locale as LocaleCode;\n}\n\n/**\n * Shorthand for getting locale from params\n * Alias for getLocaleFromParams\n */\nexport const extractLocale = getLocaleFromParams;\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Typed Translation Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get typed translations for a specific namespace\n *\n * @example\n * ```tsx\n * const t = await getNamespacedTranslations('payments');\n * return <span>{t('balance.available')}</span>;\n * ```\n */\nexport async function getNamespacedTranslations(namespace: string) {\n return getNextIntlTranslations(namespace);\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Metadata Helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Generate localized metadata for pages\n *\n * @example\n * ```tsx\n * // app/[locale]/about/page.tsx\n * import { generateLocalizedMetadata } from '@djangocfg/nextjs/i18n/server';\n *\n * export async function generateMetadata({ params }) {\n * return generateLocalizedMetadata(params, {\n * titleKey: 'AboutPage.meta.title',\n * descriptionKey: 'AboutPage.meta.description',\n * });\n * }\n * ```\n */\nexport async function generateLocalizedMetadata(\n params: Promise<LocaleParams> | LocaleParams,\n options: {\n titleKey?: string;\n descriptionKey?: string;\n namespace?: string;\n } = {}\n) {\n const locale = await getLocaleFromParams(params);\n const t = await getTranslations(options.namespace);\n\n return {\n title: options.titleKey ? t(options.titleKey as never) : undefined,\n description: options.descriptionKey ? t(options.descriptionKey as never) : undefined,\n // Add locale to alternate languages\n alternates: {\n languages: {\n [locale]: `/${locale}`,\n },\n },\n };\n}\n","/**\n * i18n Routing Configuration\n *\n * Creates routing configuration for next-intl\n * Used by proxy and navigation components\n */\n\nimport { defineRouting } from 'next-intl/routing';\n\nimport type { I18nConfig, LocaleCode } from './types';\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Default Configuration\n// ─────────────────────────────────────────────────────────────────────────────\n\nconst DEFAULT_LOCALES: LocaleCode[] = ['en', 'ru', 'ko', 'ja', 'de', 'fr', 'zh', 'it', 'es', 'nl', 'ar', 'tr', 'pt-BR', 'pl', 'sv', 'no', 'da'];\nconst DEFAULT_LOCALE: LocaleCode = 'en';\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Routing Factory\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Create routing configuration for next-intl\n *\n * @example\n * ```ts\n * // i18n/routing.ts\n * import { createRouting } from '@djangocfg/nextjs/i18n';\n *\n * export const routing = createRouting({\n * locales: ['en', 'ru', 'ko'],\n * defaultLocale: 'en',\n * });\n * ```\n */\nexport function createRouting(config?: Partial<I18nConfig>) {\n const locales = config?.locales ?? DEFAULT_LOCALES;\n const defaultLocale = config?.defaultLocale ?? DEFAULT_LOCALE;\n const localePrefix = config?.localePrefix ?? 'as-needed';\n\n return defineRouting({\n locales,\n defaultLocale,\n localePrefix,\n });\n}\n\n/**\n * Default routing configuration\n * Can be overridden by app-specific configuration\n */\nexport const routing = createRouting();\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Locale Utilities\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Check if a locale is supported\n */\nexport function isValidLocale(\n locale: string,\n supportedLocales: readonly string[] = DEFAULT_LOCALES\n): locale is LocaleCode {\n return supportedLocales.includes(locale as LocaleCode);\n}\n\n/**\n * Get locale from params (handles async params in Next.js 15+)\n */\nexport async function getLocaleFromParams(\n params: Promise<{ locale: string }> | { locale: string }\n): Promise<LocaleCode> {\n const resolved = await params;\n return resolved.locale as LocaleCode;\n}\n\n/**\n * Generate static params for all locales\n * Use in generateStaticParams for locale pages\n */\nexport function generateLocaleParams(locales: readonly string[] = DEFAULT_LOCALES) {\n return locales.map((locale) => ({ locale }));\n}\n"],"mappings":";AAmBA;AAAA,EACI;AAAA,EAAc,aAAa;AAAA,EAAmB,eAAe;AAAA,EAAqB;AAAA,EAClF;AAAA,EAAa,mBAAmB;AAAA,OAC7B;;;ACfP,SAAS,qBAAqB;AAQ9B,IAAM,kBAAgC,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,SAAS,MAAM,MAAM,MAAM,IAAI;AAC9I,IAAM,iBAA6B;AAoB5B,SAAS,cAAc,QAA8B;AAC1D,QAAM,UAAU,QAAQ,WAAW;AACnC,QAAM,gBAAgB,QAAQ,iBAAiB;AAC/C,QAAM,eAAe,QAAQ,gBAAgB;AAE7C,SAAO,cAAc;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;AAMO,IAAM,UAAU,cAAc;AAS9B,SAAS,cACd,QACA,mBAAsC,iBAChB;AACtB,SAAO,iBAAiB,SAAS,MAAoB;AACvD;AAgBO,SAAS,qBAAqB,UAA6B,iBAAiB;AACjF,SAAO,QAAQ,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE;AAC7C;;;ADrCA,eAAsB,gBACpB,WACA;AACA,SAAO,wBAAwB,SAAS;AAC1C;AAKA,eAAsB,YAAiC;AACrD,SAAQ,MAAM,kBAAkB;AAClC;AAMA,eAAsB,cAAiC;AACrD,SAAQ,MAAM,oBAAoB;AACpC;AAkCA,eAAsB,oBACpB,QACqB;AACrB,QAAM,WAAW,MAAM;AACvB,SAAO,SAAS;AAClB;AAMO,IAAM,gBAAgB;AAe7B,eAAsB,0BAA0B,WAAmB;AACjE,SAAO,wBAAwB,SAAS;AAC1C;AAsBA,eAAsB,0BACpB,QACA,UAII,CAAC,GACL;AACA,QAAM,SAAS,MAAM,oBAAoB,MAAM;AAC/C,QAAM,IAAI,MAAM,gBAAgB,QAAQ,SAAS;AAEjD,SAAO;AAAA,IACL,OAAO,QAAQ,WAAW,EAAE,QAAQ,QAAiB,IAAI;AAAA,IACzD,aAAa,QAAQ,iBAAiB,EAAE,QAAQ,cAAuB,IAAI;AAAA;AAAA,IAE3E,YAAY;AAAA,MACV,WAAW;AAAA,QACT,CAAC,MAAM,GAAG,IAAI,MAAM;AAAA,MACtB;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
package/dist/index.mjs
CHANGED
|
@@ -14,7 +14,7 @@ var require_package = __commonJS({
|
|
|
14
14
|
"package.json"(exports, module) {
|
|
15
15
|
module.exports = {
|
|
16
16
|
name: "@djangocfg/nextjs",
|
|
17
|
-
version: "2.1.
|
|
17
|
+
version: "2.1.146",
|
|
18
18
|
description: "Next.js server utilities: sitemap, health, OG images, contact forms, navigation, config",
|
|
19
19
|
keywords: [
|
|
20
20
|
"nextjs",
|