next-intl 4.0.0 → 4.0.2

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/config.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  // Needed for projects with `moduleResolution: 'node'`
2
2
  import config from './dist/types/config';
3
3
 
4
- export = config;
4
+ export default config;
@@ -1,4 +1,4 @@
1
- import { getSortedPathnames, matchesPathname, normalizeTrailingSlash, getLocalePrefix, templateToRegex, prefixPathname, getLocalizedTemplate } from '../shared/utils.js';
1
+ import { normalizeTrailingSlash, getSortedPathnames, matchesPathname, prefixPathname, getLocalePrefix, templateToRegex, getLocalizedTemplate } from '../shared/utils.js';
2
2
 
3
3
  function getInternalTemplate(pathnames, pathname, locale) {
4
4
  const sortedPathnames = getSortedPathnames(Object.keys(pathnames));
@@ -1,4 +1,4 @@
1
- import { getSortedPathnames, matchesPathname, getLocalizedTemplate, isLocalizableHref, prefixPathname, getLocalePrefix, normalizeTrailingSlash } from '../../shared/utils.js';
1
+ import { getSortedPathnames, matchesPathname, isLocalizableHref, prefixPathname, getLocalizedTemplate, normalizeTrailingSlash, getLocalePrefix } from '../../shared/utils.js';
2
2
 
3
3
  // Minor false positive: A route that has both optional and
4
4
  // required params will allow optional params.
@@ -1,4 +1,4 @@
1
- import { useTranslations as useTranslations$1, useFormatter as useFormatter$1 } from 'use-intl';
1
+ import { useFormatter as useFormatter$1, useTranslations as useTranslations$1 } from 'use-intl';
2
2
  export * from 'use-intl';
3
3
 
4
4
  /**
@@ -2,9 +2,9 @@ import getConfigNow from '../server/react-server/getConfigNow.js';
2
2
  import getFormats from '../server/react-server/getFormats.js';
3
3
  import NextIntlClientProvider from '../shared/NextIntlClientProvider.js';
4
4
  import { jsx } from 'react/jsx-runtime';
5
- import getLocaleCached from '../server/react-server/getLocale.js';
6
- import getMessages from '../server/react-server/getMessages.js';
7
5
  import getTimeZone from '../server/react-server/getTimeZone.js';
6
+ import getMessages from '../server/react-server/getMessages.js';
7
+ import getLocaleCached from '../server/react-server/getLocale.js';
8
8
 
9
9
  async function NextIntlClientProviderServer({
10
10
  formats,
@@ -1,5 +1,5 @@
1
1
  import { cache } from 'react';
2
- import { _createIntlFormatters, _createCache, initializeConfig } from 'use-intl/core';
2
+ import { initializeConfig, _createIntlFormatters, _createCache } from 'use-intl/core';
3
3
  import { isPromise } from '../../shared/utils.js';
4
4
  import { getRequestLocale } from './RequestLocale.js';
5
5
  import getRuntimeConfig from 'next-intl/config';
@@ -2,7 +2,7 @@ export { default as getRequestConfig } from './server/react-server/getRequestCon
2
2
  export { default as getFormatter } from './server/react-server/getFormatter.js';
3
3
  export { default as getNow } from './server/react-server/getNow.js';
4
4
  export { default as getTimeZone } from './server/react-server/getTimeZone.js';
5
- export { default as getTranslations } from './server/react-server/getTranslations.js';
6
5
  export { default as getMessages } from './server/react-server/getMessages.js';
7
6
  export { default as getLocale } from './server/react-server/getLocale.js';
7
+ export { default as getTranslations } from './server/react-server/getTranslations.js';
8
8
  export { setCachedRequestLocale as setRequestLocale } from './server/react-server/RequestLocaleCache.js';
@@ -1 +1 @@
1
- import{getSortedPathnames as e,matchesPathname as t,normalizeTrailingSlash as n,getLocalePrefix as r,templateToRegex as o,prefixPathname as c,getLocalizedTemplate as i}from"../shared/utils.js";function s(n,r,o){const c=e(Object.keys(n));for(const e of c){const c=n[e];if("string"==typeof c){if(t(c,r))return[void 0,e]}else{const s=Object.entries(c),f=s.findIndex((([e])=>e===o));f>0&&s.unshift(s.splice(f,1)[0]);for(const[o]of s){const c=i(n[e],o,e);if(t(c,r))return[o,e]}}}for(const e of Object.keys(n))if(t(e,r))return[void 0,e];return[void 0,void 0]}function f(e,t,r,o){let c="";return c+=h(r,d(t,e)),c=n(c),c}function l(e,t,r){e.endsWith("/")||(e+="/");const o=u(t,r),c=new RegExp(`^(${o.map((([,e])=>e.replaceAll("/","\\/"))).join("|")})/(.*)`,"i"),i=e.match(c);let s=i?"/"+i[2]:e;return"/"!==s&&(s=n(s)),s}function u(e,t,n=!0){const o=e.map((e=>[e,r(e,t)]));return n&&o.sort(((e,t)=>t[1].length-e[1].length)),o}function a(e,t,n,r){const o=u(t,n);r&&o.sort((([e],[t])=>{if(e===r.defaultLocale)return-1;if(t===r.defaultLocale)return 1;const n=r.locales.includes(e),o=r.locales.includes(t);return n&&!o?-1:!n&&o?1:0}));for(const[t,n]of o){let r,o;if(e===n||e.startsWith(n+"/"))r=o=!0;else{const t=e.toLowerCase(),c=n.toLowerCase();(t===c||t.startsWith(c+"/"))&&(r=!1,o=!0)}if(o)return{locale:t,prefix:n,matchedPrefix:e.slice(0,n.length),exact:r}}}function d(e,t){const r=n(t),c=n(e),i=o(c).exec(r);if(!i)return;const s={};for(let e=1;e<i.length;e++){const t=c.match(/\[([^\]]+)\]/g)?.[e-1].replace(/[[\]]/g,"");t&&(s[t]=i[e])}return s}function h(e,t){if(!t)return e;let n=e=e.replace(/\[\[/g,"[").replace(/\]\]/g,"]");return Object.entries(t).forEach((([e,t])=>{n=n.replace(`[${e}]`,t)})),n}function p(e,t,n){let r=e;return t&&(r=c(t,r)),n&&(r+=n),r}function g(e){return e.get("x-forwarded-host")??e.get("host")??void 0}function x(e,t){return t.defaultLocale===e||t.locales.includes(e)}function m(e,t,n){let r;return e&&x(t,e)&&(r=e),r||(r=n.find((e=>e.defaultLocale===t))),r||(r=n.find((e=>e.locales.includes(t)))),r}function j(e,t){return n(t+e)}function L(e){return`/${e}`}function v(e){return e.replace(/\\/g,"%5C").replace(/\/+/g,"/")}export{j as applyBasePath,p as formatPathname,h as formatPathnameTemplate,f as formatTemplatePathname,m as getBestMatchingDomain,g as getHost,s as getInternalTemplate,L as getLocaleAsPrefix,u as getLocalePrefixes,l as getNormalizedPathname,a as getPathnameMatch,d as getRouteParams,x as isLocaleSupportedOnDomain,v as sanitizePathname};
1
+ import{normalizeTrailingSlash as e,getSortedPathnames as t,matchesPathname as n,prefixPathname as r,getLocalePrefix as o,templateToRegex as c,getLocalizedTemplate as i}from"../shared/utils.js";function s(e,r,o){const c=t(Object.keys(e));for(const t of c){const c=e[t];if("string"==typeof c){if(n(c,r))return[void 0,t]}else{const s=Object.entries(c),f=s.findIndex((([e])=>e===o));f>0&&s.unshift(s.splice(f,1)[0]);for(const[o]of s){const c=i(e[t],o,t);if(n(c,r))return[o,t]}}}for(const t of Object.keys(e))if(n(t,r))return[void 0,t];return[void 0,void 0]}function f(t,n,r,o){let c="";return c+=h(r,d(n,t)),c=e(c),c}function l(t,n,r){t.endsWith("/")||(t+="/");const o=u(n,r),c=new RegExp(`^(${o.map((([,e])=>e.replaceAll("/","\\/"))).join("|")})/(.*)`,"i"),i=t.match(c);let s=i?"/"+i[2]:t;return"/"!==s&&(s=e(s)),s}function u(e,t,n=!0){const r=e.map((e=>[e,o(e,t)]));return n&&r.sort(((e,t)=>t[1].length-e[1].length)),r}function a(e,t,n,r){const o=u(t,n);r&&o.sort((([e],[t])=>{if(e===r.defaultLocale)return-1;if(t===r.defaultLocale)return 1;const n=r.locales.includes(e),o=r.locales.includes(t);return n&&!o?-1:!n&&o?1:0}));for(const[t,n]of o){let r,o;if(e===n||e.startsWith(n+"/"))r=o=!0;else{const t=e.toLowerCase(),c=n.toLowerCase();(t===c||t.startsWith(c+"/"))&&(r=!1,o=!0)}if(o)return{locale:t,prefix:n,matchedPrefix:e.slice(0,n.length),exact:r}}}function d(t,n){const r=e(n),o=e(t),i=c(o).exec(r);if(!i)return;const s={};for(let e=1;e<i.length;e++){const t=o.match(/\[([^\]]+)\]/g)?.[e-1].replace(/[[\]]/g,"");t&&(s[t]=i[e])}return s}function h(e,t){if(!t)return e;let n=e=e.replace(/\[\[/g,"[").replace(/\]\]/g,"]");return Object.entries(t).forEach((([e,t])=>{n=n.replace(`[${e}]`,t)})),n}function p(e,t,n){let o=e;return t&&(o=r(t,o)),n&&(o+=n),o}function g(e){return e.get("x-forwarded-host")??e.get("host")??void 0}function x(e,t){return t.defaultLocale===e||t.locales.includes(e)}function m(e,t,n){let r;return e&&x(t,e)&&(r=e),r||(r=n.find((e=>e.defaultLocale===t))),r||(r=n.find((e=>e.locales.includes(t)))),r}function j(t,n){return e(n+t)}function L(e){return`/${e}`}function v(e){return e.replace(/\\/g,"%5C").replace(/\/+/g,"/")}export{j as applyBasePath,p as formatPathname,h as formatPathnameTemplate,f as formatTemplatePathname,m as getBestMatchingDomain,g as getHost,s as getInternalTemplate,L as getLocaleAsPrefix,u as getLocalePrefixes,l as getNormalizedPathname,a as getPathnameMatch,d as getRouteParams,x as isLocaleSupportedOnDomain,v as sanitizePathname};
@@ -1 +1 @@
1
- import{getSortedPathnames as e,matchesPathname as n,getLocalizedTemplate as t,isLocalizableHref as r,prefixPathname as o,getLocalePrefix as a,normalizeTrailingSlash as i}from"../../shared/utils.js";function c(e){return"string"==typeof e?{pathname:e}:e}function s(e){function n(e){return String(e)}const t=new URLSearchParams;for(const[r,o]of Object.entries(e))Array.isArray(o)?o.forEach((e=>{t.append(r,n(e))})):t.set(r,n(o));return"?"+t.toString()}function f({pathname:e,locale:n,params:r,pathnames:o,query:a}){function c(e){let n=o[e];return n||(n=e),n}function f(e,o){let c=t(e,n,o);return r&&Object.entries(r).forEach((([e,n])=>{let t,r;Array.isArray(n)?(t=`(\\[)?\\[...${e}\\](\\])?`,r=n.map((e=>String(e))).join("/")):(t=`\\[${e}\\]`,r=String(n)),c=c.replace(new RegExp(t,"g"),r)})),c=c.replace(/\[\[\.\.\..+\]\]/g,""),c=i(c),a&&(c+=s(a)),c}if("string"==typeof e){return f(c(e),e)}{const{pathname:n,...t}=e;return{...t,pathname:f(c(n),n)}}}function u(r,o,a){const i=e(Object.keys(a)),c=decodeURI(o);for(const e of i){const o=a[e];if("string"==typeof o){if(n(o,c))return e}else if(n(t(o,r,e),c))return e}return o}function l(e,n=window.location.pathname){return"/"===e?n:n.replace(e,"")}function p(e,n,t,i){const{mode:c}=t.localePrefix;let s;return void 0!==i?s=i:r(e)&&("always"===c?s=!0:"as-needed"===c&&(s=t.domains?!t.domains.some((e=>e.defaultLocale===n)):n!==t.defaultLocale)),s?o(a(n,t.localePrefix),e):e}export{p as applyPathnamePrefix,f as compileLocalizedPathname,l as getBasePath,u as getRoute,c as normalizeNameOrNameWithParams,s as serializeSearchParams};
1
+ import{getSortedPathnames as e,matchesPathname as n,isLocalizableHref as t,prefixPathname as r,getLocalizedTemplate as o,normalizeTrailingSlash as a,getLocalePrefix as i}from"../../shared/utils.js";function c(e){return"string"==typeof e?{pathname:e}:e}function s(e){function n(e){return String(e)}const t=new URLSearchParams;for(const[r,o]of Object.entries(e))Array.isArray(o)?o.forEach((e=>{t.append(r,n(e))})):t.set(r,n(o));return"?"+t.toString()}function f({pathname:e,locale:n,params:t,pathnames:r,query:i}){function c(e){let n=r[e];return n||(n=e),n}function f(e,r){let c=o(e,n,r);return t&&Object.entries(t).forEach((([e,n])=>{let t,r;Array.isArray(n)?(t=`(\\[)?\\[...${e}\\](\\])?`,r=n.map((e=>String(e))).join("/")):(t=`\\[${e}\\]`,r=String(n)),c=c.replace(new RegExp(t,"g"),r)})),c=c.replace(/\[\[\.\.\..+\]\]/g,""),c=a(c),i&&(c+=s(i)),c}if("string"==typeof e){return f(c(e),e)}{const{pathname:n,...t}=e;return{...t,pathname:f(c(n),n)}}}function u(t,r,a){const i=e(Object.keys(a)),c=decodeURI(r);for(const e of i){const r=a[e];if("string"==typeof r){if(n(r,c))return e}else if(n(o(r,t,e),c))return e}return r}function l(e,n=window.location.pathname){return"/"===e?n:n.replace(e,"")}function p(e,n,o,a){const{mode:c}=o.localePrefix;let s;return void 0!==a?s=a:t(e)&&("always"===c?s=!0:"as-needed"===c&&(s=o.domains?!o.domains.some((e=>e.defaultLocale===n)):n!==o.defaultLocale)),s?r(i(n,o.localePrefix),e):e}export{p as applyPathnamePrefix,f as compileLocalizedPathname,l as getBasePath,u as getRoute,c as normalizeNameOrNameWithParams,s as serializeSearchParams};
@@ -1 +1 @@
1
- import{useTranslations as r,useFormatter as t}from"use-intl";export*from"use-intl";function o(r,t){return(...r)=>{try{return t(...r)}catch{throw new Error(void 0)}}}const e=o(0,r),n=o(0,t);export{n as useFormatter,e as useTranslations};
1
+ import{useFormatter as r,useTranslations as t}from"use-intl";export*from"use-intl";function o(r,t){return(...r)=>{try{return t(...r)}catch{throw new Error(void 0)}}}const e=o(0,t),n=o(0,r);export{n as useFormatter,e as useTranslations};
@@ -1 +1 @@
1
- import e from"../server/react-server/getConfigNow.js";import r from"../server/react-server/getFormats.js";import t from"../shared/NextIntlClientProvider.js";import{jsx as o}from"react/jsx-runtime";import s from"../server/react-server/getLocale.js";import a from"../server/react-server/getMessages.js";import m from"../server/react-server/getTimeZone.js";async function i({formats:i,locale:n,messages:v,now:f,timeZone:c,...g}){return o(t,{formats:void 0===i?await r():i,locale:n??await s(),messages:void 0===v?await a():v,now:f??await e(),timeZone:c??await m(),...g})}export{i as default};
1
+ import e from"../server/react-server/getConfigNow.js";import r from"../server/react-server/getFormats.js";import t from"../shared/NextIntlClientProvider.js";import{jsx as o}from"react/jsx-runtime";import s from"../server/react-server/getTimeZone.js";import a from"../server/react-server/getMessages.js";import m from"../server/react-server/getLocale.js";async function i({formats:i,locale:n,messages:v,now:f,timeZone:c,...g}){return o(t,{formats:void 0===i?await r():i,locale:n??await m(),messages:void 0===v?await a():v,now:f??await e(),timeZone:c??await s(),...g})}export{i as default};
@@ -1 +1 @@
1
- import{cache as e}from"react";import{_createIntlFormatters as t,_createCache as o,initializeConfig as r}from"use-intl/core";import{isPromise as n}from"../../shared/utils.js";import{getRequestLocale as i}from"./RequestLocale.js";import s from"next-intl/config";const a=e((function(){return Intl.DateTimeFormat().resolvedOptions().timeZone}));const c=e((async function(e,t){let o=e({locale:t,get requestLocale(){return t?Promise.resolve(t):i()}});if(n(o)&&(o=await o),!o.locale)throw new Error("No locale was returned from `getRequestConfig`.\n\nSee https://next-intl.dev/docs/usage/configuration#i18n-request");return o})),m=e(t),l=e(o);const u=e((async function(e){const t=await c(s,e);return{...r(t),_formatters:m(l()),timeZone:t.timeZone||a()}}));export{u as default};
1
+ import{cache as e}from"react";import{initializeConfig as t,_createIntlFormatters as o,_createCache as r}from"use-intl/core";import{isPromise as n}from"../../shared/utils.js";import{getRequestLocale as i}from"./RequestLocale.js";import s from"next-intl/config";const a=e((function(){return Intl.DateTimeFormat().resolvedOptions().timeZone}));const c=e((async function(e,t){let o=e({locale:t,get requestLocale(){return t?Promise.resolve(t):i()}});if(n(o)&&(o=await o),!o.locale)throw new Error("No locale was returned from `getRequestConfig`.\n\nSee https://next-intl.dev/docs/usage/configuration#i18n-request");return o})),m=e(o),l=e(r);const u=e((async function(e){const o=await c(s,e);return{...t(o),_formatters:m(l()),timeZone:o.timeZone||a()}}));export{u as default};
@@ -1 +1 @@
1
- export{default as getRequestConfig}from"./server/react-server/getRequestConfig.js";export{default as getFormatter}from"./server/react-server/getFormatter.js";export{default as getNow}from"./server/react-server/getNow.js";export{default as getTimeZone}from"./server/react-server/getTimeZone.js";export{default as getTranslations}from"./server/react-server/getTranslations.js";export{default as getMessages}from"./server/react-server/getMessages.js";export{default as getLocale}from"./server/react-server/getLocale.js";export{setCachedRequestLocale as setRequestLocale}from"./server/react-server/RequestLocaleCache.js";
1
+ export{default as getRequestConfig}from"./server/react-server/getRequestConfig.js";export{default as getFormatter}from"./server/react-server/getFormatter.js";export{default as getNow}from"./server/react-server/getNow.js";export{default as getTimeZone}from"./server/react-server/getTimeZone.js";export{default as getMessages}from"./server/react-server/getMessages.js";export{default as getLocale}from"./server/react-server/getLocale.js";export{default as getTranslations}from"./server/react-server/getTranslations.js";export{setCachedRequestLocale as setRequestLocale}from"./server/react-server/RequestLocaleCache.js";
@@ -3,140 +3,138 @@ import type { RoutingConfigLocalizedNavigation, RoutingConfigSharedNavigation }
3
3
  import type { DomainsConfig, LocalePrefixMode, Locales, Pathnames } from '../../routing/types.js';
4
4
  export default function createNavigation<const AppLocales extends Locales, const AppLocalePrefixMode extends LocalePrefixMode = 'always', const AppPathnames extends Pathnames<AppLocales> = never, const AppDomains extends DomainsConfig<AppLocales> = never>(routing?: [AppPathnames] extends [never] ? RoutingConfigSharedNavigation<AppLocales, AppLocalePrefixMode, AppDomains> | undefined : RoutingConfigLocalizedNavigation<AppLocales, AppLocalePrefixMode, AppPathnames, AppDomains>): {
5
5
  Link: import("react").ForwardRefExoticComponent<Omit<{
6
- slot?: string | undefined;
6
+ slot?: string | undefined | undefined;
7
7
  style?: import("react").CSSProperties | undefined;
8
- title?: string | undefined;
8
+ title?: string | undefined | undefined;
9
9
  locale?: Locale | undefined;
10
10
  onError?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
11
- children?: import("react").ReactNode | undefined;
12
- ref?: import("react").LegacyRef<HTMLAnchorElement> | undefined;
11
+ children?: import("react").ReactNode;
12
+ ref?: import("react").Ref<HTMLAnchorElement> | undefined;
13
13
  replace?: boolean | undefined;
14
- prefix?: string | undefined;
14
+ prefix?: string | undefined | undefined;
15
15
  key?: import("react").Key | null | undefined;
16
16
  as?: (string | import("url").UrlObject) | undefined;
17
17
  scroll?: boolean | undefined;
18
18
  shallow?: boolean | undefined;
19
19
  passHref?: boolean | undefined;
20
- prefetch?: (boolean | null) | undefined;
20
+ prefetch?: boolean | null | undefined;
21
21
  legacyBehavior?: boolean | undefined;
22
22
  onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
23
23
  onTouchStart?: React.TouchEventHandler<HTMLAnchorElement> | undefined;
24
24
  onClick?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
25
25
  download?: any;
26
- hrefLang?: string | undefined;
27
- media?: string | undefined;
28
- ping?: string | undefined;
26
+ hrefLang?: string | undefined | undefined;
27
+ media?: string | undefined | undefined;
28
+ ping?: string | undefined | undefined;
29
29
  target?: import("react").HTMLAttributeAnchorTarget | undefined;
30
- type?: string | undefined;
30
+ type?: string | undefined | undefined;
31
31
  referrerPolicy?: import("react").HTMLAttributeReferrerPolicy | undefined;
32
- defaultChecked?: boolean | undefined;
32
+ defaultChecked?: boolean | undefined | undefined;
33
33
  defaultValue?: string | number | readonly string[] | undefined;
34
- suppressContentEditableWarning?: boolean | undefined;
35
- suppressHydrationWarning?: boolean | undefined;
36
- accessKey?: string | undefined;
37
- autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {});
38
- autoFocus?: boolean | undefined;
39
- className?: string | undefined;
34
+ suppressContentEditableWarning?: boolean | undefined | undefined;
35
+ suppressHydrationWarning?: boolean | undefined | undefined;
36
+ accessKey?: string | undefined | undefined;
37
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {}) | undefined;
38
+ autoFocus?: boolean | undefined | undefined;
39
+ className?: string | undefined | undefined;
40
40
  contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
41
- contextMenu?: string | undefined;
42
- dir?: string | undefined;
41
+ contextMenu?: string | undefined | undefined;
42
+ dir?: string | undefined | undefined;
43
43
  draggable?: (boolean | "true" | "false") | undefined;
44
- enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
45
- hidden?: boolean | undefined;
46
- id?: string | undefined;
47
- lang?: string | undefined;
48
- nonce?: string | undefined;
44
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
45
+ hidden?: boolean | undefined | undefined;
46
+ id?: string | undefined | undefined;
47
+ lang?: string | undefined | undefined;
48
+ nonce?: string | undefined | undefined;
49
49
  spellCheck?: (boolean | "true" | "false") | undefined;
50
- tabIndex?: number | undefined;
51
- translate?: "yes" | "no" | undefined;
52
- radioGroup?: string | undefined;
50
+ tabIndex?: number | undefined | undefined;
51
+ translate?: "yes" | "no" | undefined | undefined;
52
+ radioGroup?: string | undefined | undefined;
53
53
  role?: import("react").AriaRole | undefined;
54
- about?: string | undefined;
55
- content?: string | undefined;
56
- datatype?: string | undefined;
54
+ about?: string | undefined | undefined;
55
+ content?: string | undefined | undefined;
56
+ datatype?: string | undefined | undefined;
57
57
  inlist?: any;
58
- property?: string | undefined;
59
- rel?: string | undefined;
60
- resource?: string | undefined;
61
- rev?: string | undefined;
62
- typeof?: string | undefined;
63
- vocab?: string | undefined;
64
- autoCorrect?: string | undefined;
65
- autoSave?: string | undefined;
66
- color?: string | undefined;
67
- itemProp?: string | undefined;
68
- itemScope?: boolean | undefined;
69
- itemType?: string | undefined;
70
- itemID?: string | undefined;
71
- itemRef?: string | undefined;
72
- results?: number | undefined;
73
- security?: string | undefined;
74
- unselectable?: "on" | "off" | undefined;
75
- inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
76
- is?: string | undefined;
77
- popover?: "" | "auto" | "manual" | undefined;
78
- popoverTargetAction?: "toggle" | "show" | "hide" | undefined;
79
- popoverTarget?: string | undefined;
80
- onToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
81
- onBeforeToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
82
- inert?: boolean | undefined;
58
+ property?: string | undefined | undefined;
59
+ rel?: string | undefined | undefined;
60
+ resource?: string | undefined | undefined;
61
+ rev?: string | undefined | undefined;
62
+ typeof?: string | undefined | undefined;
63
+ vocab?: string | undefined | undefined;
64
+ autoCorrect?: string | undefined | undefined;
65
+ autoSave?: string | undefined | undefined;
66
+ color?: string | undefined | undefined;
67
+ itemProp?: string | undefined | undefined;
68
+ itemScope?: boolean | undefined | undefined;
69
+ itemType?: string | undefined | undefined;
70
+ itemID?: string | undefined | undefined;
71
+ itemRef?: string | undefined | undefined;
72
+ results?: number | undefined | undefined;
73
+ security?: string | undefined | undefined;
74
+ unselectable?: "on" | "off" | undefined | undefined;
75
+ popover?: "" | "auto" | "manual" | undefined | undefined;
76
+ popoverTargetAction?: "toggle" | "show" | "hide" | undefined | undefined;
77
+ popoverTarget?: string | undefined | undefined;
78
+ inert?: boolean | undefined | undefined;
79
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
80
+ is?: string | undefined | undefined;
83
81
  tw?: string | undefined;
84
- "aria-activedescendant"?: string | undefined;
82
+ "aria-activedescendant"?: string | undefined | undefined;
85
83
  "aria-atomic"?: (boolean | "true" | "false") | undefined;
86
- "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
87
- "aria-braillelabel"?: string | undefined;
88
- "aria-brailleroledescription"?: string | undefined;
84
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined | undefined;
85
+ "aria-braillelabel"?: string | undefined | undefined;
86
+ "aria-brailleroledescription"?: string | undefined | undefined;
89
87
  "aria-busy"?: (boolean | "true" | "false") | undefined;
90
- "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
91
- "aria-colcount"?: number | undefined;
92
- "aria-colindex"?: number | undefined;
93
- "aria-colindextext"?: string | undefined;
94
- "aria-colspan"?: number | undefined;
95
- "aria-controls"?: string | undefined;
96
- "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined;
97
- "aria-describedby"?: string | undefined;
98
- "aria-description"?: string | undefined;
99
- "aria-details"?: string | undefined;
88
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
89
+ "aria-colcount"?: number | undefined | undefined;
90
+ "aria-colindex"?: number | undefined | undefined;
91
+ "aria-colindextext"?: string | undefined | undefined;
92
+ "aria-colspan"?: number | undefined | undefined;
93
+ "aria-controls"?: string | undefined | undefined;
94
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined | undefined;
95
+ "aria-describedby"?: string | undefined | undefined;
96
+ "aria-description"?: string | undefined | undefined;
97
+ "aria-details"?: string | undefined | undefined;
100
98
  "aria-disabled"?: (boolean | "true" | "false") | undefined;
101
- "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
102
- "aria-errormessage"?: string | undefined;
99
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined | undefined;
100
+ "aria-errormessage"?: string | undefined | undefined;
103
101
  "aria-expanded"?: (boolean | "true" | "false") | undefined;
104
- "aria-flowto"?: string | undefined;
102
+ "aria-flowto"?: string | undefined | undefined;
105
103
  "aria-grabbed"?: (boolean | "true" | "false") | undefined;
106
- "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
104
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined | undefined;
107
105
  "aria-hidden"?: (boolean | "true" | "false") | undefined;
108
- "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
109
- "aria-keyshortcuts"?: string | undefined;
110
- "aria-label"?: string | undefined;
111
- "aria-labelledby"?: string | undefined;
112
- "aria-level"?: number | undefined;
113
- "aria-live"?: "off" | "assertive" | "polite" | undefined;
106
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined | undefined;
107
+ "aria-keyshortcuts"?: string | undefined | undefined;
108
+ "aria-label"?: string | undefined | undefined;
109
+ "aria-labelledby"?: string | undefined | undefined;
110
+ "aria-level"?: number | undefined | undefined;
111
+ "aria-live"?: "off" | "assertive" | "polite" | undefined | undefined;
114
112
  "aria-modal"?: (boolean | "true" | "false") | undefined;
115
113
  "aria-multiline"?: (boolean | "true" | "false") | undefined;
116
114
  "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
117
- "aria-orientation"?: "horizontal" | "vertical" | undefined;
118
- "aria-owns"?: string | undefined;
119
- "aria-placeholder"?: string | undefined;
120
- "aria-posinset"?: number | undefined;
121
- "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
115
+ "aria-orientation"?: "horizontal" | "vertical" | undefined | undefined;
116
+ "aria-owns"?: string | undefined | undefined;
117
+ "aria-placeholder"?: string | undefined | undefined;
118
+ "aria-posinset"?: number | undefined | undefined;
119
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
122
120
  "aria-readonly"?: (boolean | "true" | "false") | undefined;
123
- "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
121
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined | undefined;
124
122
  "aria-required"?: (boolean | "true" | "false") | undefined;
125
- "aria-roledescription"?: string | undefined;
126
- "aria-rowcount"?: number | undefined;
127
- "aria-rowindex"?: number | undefined;
128
- "aria-rowindextext"?: string | undefined;
129
- "aria-rowspan"?: number | undefined;
123
+ "aria-roledescription"?: string | undefined | undefined;
124
+ "aria-rowcount"?: number | undefined | undefined;
125
+ "aria-rowindex"?: number | undefined | undefined;
126
+ "aria-rowindextext"?: string | undefined | undefined;
127
+ "aria-rowspan"?: number | undefined | undefined;
130
128
  "aria-selected"?: (boolean | "true" | "false") | undefined;
131
- "aria-setsize"?: number | undefined;
132
- "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
133
- "aria-valuemax"?: number | undefined;
134
- "aria-valuemin"?: number | undefined;
135
- "aria-valuenow"?: number | undefined;
136
- "aria-valuetext"?: string | undefined;
129
+ "aria-setsize"?: number | undefined | undefined;
130
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined | undefined;
131
+ "aria-valuemax"?: number | undefined | undefined;
132
+ "aria-valuemin"?: number | undefined | undefined;
133
+ "aria-valuenow"?: number | undefined | undefined;
134
+ "aria-valuetext"?: string | undefined | undefined;
137
135
  dangerouslySetInnerHTML?: {
138
136
  __html: string | TrustedHTML;
139
- } | undefined;
137
+ } | undefined | undefined;
140
138
  onCopy?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
141
139
  onCopyCapture?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
142
140
  onCut?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
@@ -291,10 +289,12 @@ export default function createNavigation<const AppLocales extends Locales, const
291
289
  onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
292
290
  onAnimationIteration?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
293
291
  onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
294
- onTransitionEnd?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
295
- onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
292
+ onToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
293
+ onBeforeToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
296
294
  onTransitionCancel?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
297
295
  onTransitionCancelCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
296
+ onTransitionEnd?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
297
+ onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
298
298
  onTransitionRun?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
299
299
  onTransitionRunCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
300
300
  onTransitionStart?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
@@ -4,140 +4,138 @@ export default function createNavigation<const AppLocales extends Locales, const
4
4
  usePathname: () => never;
5
5
  useRouter: () => never;
6
6
  Link: import("react").ForwardRefExoticComponent<Omit<{
7
- slot?: string | undefined;
7
+ slot?: string | undefined | undefined;
8
8
  style?: import("react").CSSProperties | undefined;
9
- title?: string | undefined;
9
+ title?: string | undefined | undefined;
10
10
  locale?: import("use-intl").Locale | undefined;
11
11
  onError?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
12
- children?: import("react").ReactNode | undefined;
13
- ref?: import("react").LegacyRef<HTMLAnchorElement> | undefined;
12
+ children?: import("react").ReactNode;
13
+ ref?: import("react").Ref<HTMLAnchorElement> | undefined;
14
14
  replace?: boolean | undefined;
15
- prefix?: string | undefined;
15
+ prefix?: string | undefined | undefined;
16
16
  key?: import("react").Key | null | undefined;
17
17
  as?: (string | import("url").UrlObject) | undefined;
18
18
  scroll?: boolean | undefined;
19
19
  shallow?: boolean | undefined;
20
20
  passHref?: boolean | undefined;
21
- prefetch?: (boolean | null) | undefined;
21
+ prefetch?: boolean | null | undefined;
22
22
  legacyBehavior?: boolean | undefined;
23
23
  onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
24
24
  onTouchStart?: React.TouchEventHandler<HTMLAnchorElement> | undefined;
25
25
  onClick?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
26
26
  download?: any;
27
- hrefLang?: string | undefined;
28
- media?: string | undefined;
29
- ping?: string | undefined;
27
+ hrefLang?: string | undefined | undefined;
28
+ media?: string | undefined | undefined;
29
+ ping?: string | undefined | undefined;
30
30
  target?: import("react").HTMLAttributeAnchorTarget | undefined;
31
- type?: string | undefined;
31
+ type?: string | undefined | undefined;
32
32
  referrerPolicy?: import("react").HTMLAttributeReferrerPolicy | undefined;
33
- defaultChecked?: boolean | undefined;
33
+ defaultChecked?: boolean | undefined | undefined;
34
34
  defaultValue?: string | number | readonly string[] | undefined;
35
- suppressContentEditableWarning?: boolean | undefined;
36
- suppressHydrationWarning?: boolean | undefined;
37
- accessKey?: string | undefined;
38
- autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {});
39
- autoFocus?: boolean | undefined;
40
- className?: string | undefined;
35
+ suppressContentEditableWarning?: boolean | undefined | undefined;
36
+ suppressHydrationWarning?: boolean | undefined | undefined;
37
+ accessKey?: string | undefined | undefined;
38
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {}) | undefined;
39
+ autoFocus?: boolean | undefined | undefined;
40
+ className?: string | undefined | undefined;
41
41
  contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
42
- contextMenu?: string | undefined;
43
- dir?: string | undefined;
42
+ contextMenu?: string | undefined | undefined;
43
+ dir?: string | undefined | undefined;
44
44
  draggable?: (boolean | "true" | "false") | undefined;
45
- enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
46
- hidden?: boolean | undefined;
47
- id?: string | undefined;
48
- lang?: string | undefined;
49
- nonce?: string | undefined;
45
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
46
+ hidden?: boolean | undefined | undefined;
47
+ id?: string | undefined | undefined;
48
+ lang?: string | undefined | undefined;
49
+ nonce?: string | undefined | undefined;
50
50
  spellCheck?: (boolean | "true" | "false") | undefined;
51
- tabIndex?: number | undefined;
52
- translate?: "yes" | "no" | undefined;
53
- radioGroup?: string | undefined;
51
+ tabIndex?: number | undefined | undefined;
52
+ translate?: "yes" | "no" | undefined | undefined;
53
+ radioGroup?: string | undefined | undefined;
54
54
  role?: import("react").AriaRole | undefined;
55
- about?: string | undefined;
56
- content?: string | undefined;
57
- datatype?: string | undefined;
55
+ about?: string | undefined | undefined;
56
+ content?: string | undefined | undefined;
57
+ datatype?: string | undefined | undefined;
58
58
  inlist?: any;
59
- property?: string | undefined;
60
- rel?: string | undefined;
61
- resource?: string | undefined;
62
- rev?: string | undefined;
63
- typeof?: string | undefined;
64
- vocab?: string | undefined;
65
- autoCorrect?: string | undefined;
66
- autoSave?: string | undefined;
67
- color?: string | undefined;
68
- itemProp?: string | undefined;
69
- itemScope?: boolean | undefined;
70
- itemType?: string | undefined;
71
- itemID?: string | undefined;
72
- itemRef?: string | undefined;
73
- results?: number | undefined;
74
- security?: string | undefined;
75
- unselectable?: "on" | "off" | undefined;
76
- inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
77
- is?: string | undefined;
78
- popover?: "" | "auto" | "manual" | undefined;
79
- popoverTargetAction?: "toggle" | "show" | "hide" | undefined;
80
- popoverTarget?: string | undefined;
81
- onToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
82
- onBeforeToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
83
- inert?: boolean | undefined;
59
+ property?: string | undefined | undefined;
60
+ rel?: string | undefined | undefined;
61
+ resource?: string | undefined | undefined;
62
+ rev?: string | undefined | undefined;
63
+ typeof?: string | undefined | undefined;
64
+ vocab?: string | undefined | undefined;
65
+ autoCorrect?: string | undefined | undefined;
66
+ autoSave?: string | undefined | undefined;
67
+ color?: string | undefined | undefined;
68
+ itemProp?: string | undefined | undefined;
69
+ itemScope?: boolean | undefined | undefined;
70
+ itemType?: string | undefined | undefined;
71
+ itemID?: string | undefined | undefined;
72
+ itemRef?: string | undefined | undefined;
73
+ results?: number | undefined | undefined;
74
+ security?: string | undefined | undefined;
75
+ unselectable?: "on" | "off" | undefined | undefined;
76
+ popover?: "" | "auto" | "manual" | undefined | undefined;
77
+ popoverTargetAction?: "toggle" | "show" | "hide" | undefined | undefined;
78
+ popoverTarget?: string | undefined | undefined;
79
+ inert?: boolean | undefined | undefined;
80
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
81
+ is?: string | undefined | undefined;
84
82
  tw?: string | undefined;
85
- "aria-activedescendant"?: string | undefined;
83
+ "aria-activedescendant"?: string | undefined | undefined;
86
84
  "aria-atomic"?: (boolean | "true" | "false") | undefined;
87
- "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
88
- "aria-braillelabel"?: string | undefined;
89
- "aria-brailleroledescription"?: string | undefined;
85
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined | undefined;
86
+ "aria-braillelabel"?: string | undefined | undefined;
87
+ "aria-brailleroledescription"?: string | undefined | undefined;
90
88
  "aria-busy"?: (boolean | "true" | "false") | undefined;
91
- "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
92
- "aria-colcount"?: number | undefined;
93
- "aria-colindex"?: number | undefined;
94
- "aria-colindextext"?: string | undefined;
95
- "aria-colspan"?: number | undefined;
96
- "aria-controls"?: string | undefined;
97
- "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined;
98
- "aria-describedby"?: string | undefined;
99
- "aria-description"?: string | undefined;
100
- "aria-details"?: string | undefined;
89
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
90
+ "aria-colcount"?: number | undefined | undefined;
91
+ "aria-colindex"?: number | undefined | undefined;
92
+ "aria-colindextext"?: string | undefined | undefined;
93
+ "aria-colspan"?: number | undefined | undefined;
94
+ "aria-controls"?: string | undefined | undefined;
95
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined | undefined;
96
+ "aria-describedby"?: string | undefined | undefined;
97
+ "aria-description"?: string | undefined | undefined;
98
+ "aria-details"?: string | undefined | undefined;
101
99
  "aria-disabled"?: (boolean | "true" | "false") | undefined;
102
- "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
103
- "aria-errormessage"?: string | undefined;
100
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined | undefined;
101
+ "aria-errormessage"?: string | undefined | undefined;
104
102
  "aria-expanded"?: (boolean | "true" | "false") | undefined;
105
- "aria-flowto"?: string | undefined;
103
+ "aria-flowto"?: string | undefined | undefined;
106
104
  "aria-grabbed"?: (boolean | "true" | "false") | undefined;
107
- "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
105
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined | undefined;
108
106
  "aria-hidden"?: (boolean | "true" | "false") | undefined;
109
- "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
110
- "aria-keyshortcuts"?: string | undefined;
111
- "aria-label"?: string | undefined;
112
- "aria-labelledby"?: string | undefined;
113
- "aria-level"?: number | undefined;
114
- "aria-live"?: "off" | "assertive" | "polite" | undefined;
107
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined | undefined;
108
+ "aria-keyshortcuts"?: string | undefined | undefined;
109
+ "aria-label"?: string | undefined | undefined;
110
+ "aria-labelledby"?: string | undefined | undefined;
111
+ "aria-level"?: number | undefined | undefined;
112
+ "aria-live"?: "off" | "assertive" | "polite" | undefined | undefined;
115
113
  "aria-modal"?: (boolean | "true" | "false") | undefined;
116
114
  "aria-multiline"?: (boolean | "true" | "false") | undefined;
117
115
  "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
118
- "aria-orientation"?: "horizontal" | "vertical" | undefined;
119
- "aria-owns"?: string | undefined;
120
- "aria-placeholder"?: string | undefined;
121
- "aria-posinset"?: number | undefined;
122
- "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
116
+ "aria-orientation"?: "horizontal" | "vertical" | undefined | undefined;
117
+ "aria-owns"?: string | undefined | undefined;
118
+ "aria-placeholder"?: string | undefined | undefined;
119
+ "aria-posinset"?: number | undefined | undefined;
120
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
123
121
  "aria-readonly"?: (boolean | "true" | "false") | undefined;
124
- "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
122
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined | undefined;
125
123
  "aria-required"?: (boolean | "true" | "false") | undefined;
126
- "aria-roledescription"?: string | undefined;
127
- "aria-rowcount"?: number | undefined;
128
- "aria-rowindex"?: number | undefined;
129
- "aria-rowindextext"?: string | undefined;
130
- "aria-rowspan"?: number | undefined;
124
+ "aria-roledescription"?: string | undefined | undefined;
125
+ "aria-rowcount"?: number | undefined | undefined;
126
+ "aria-rowindex"?: number | undefined | undefined;
127
+ "aria-rowindextext"?: string | undefined | undefined;
128
+ "aria-rowspan"?: number | undefined | undefined;
131
129
  "aria-selected"?: (boolean | "true" | "false") | undefined;
132
- "aria-setsize"?: number | undefined;
133
- "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
134
- "aria-valuemax"?: number | undefined;
135
- "aria-valuemin"?: number | undefined;
136
- "aria-valuenow"?: number | undefined;
137
- "aria-valuetext"?: string | undefined;
130
+ "aria-setsize"?: number | undefined | undefined;
131
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined | undefined;
132
+ "aria-valuemax"?: number | undefined | undefined;
133
+ "aria-valuemin"?: number | undefined | undefined;
134
+ "aria-valuenow"?: number | undefined | undefined;
135
+ "aria-valuetext"?: string | undefined | undefined;
138
136
  dangerouslySetInnerHTML?: {
139
137
  __html: string | TrustedHTML;
140
- } | undefined;
138
+ } | undefined | undefined;
141
139
  onCopy?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
142
140
  onCopyCapture?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
143
141
  onCut?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
@@ -292,10 +290,12 @@ export default function createNavigation<const AppLocales extends Locales, const
292
290
  onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
293
291
  onAnimationIteration?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
294
292
  onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
295
- onTransitionEnd?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
296
- onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
293
+ onToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
294
+ onBeforeToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
297
295
  onTransitionCancel?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
298
296
  onTransitionCancelCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
297
+ onTransitionEnd?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
298
+ onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
299
299
  onTransitionRun?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
300
300
  onTransitionRunCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
301
301
  onTransitionStart?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
@@ -22,140 +22,138 @@ export default function createSharedNavigationFns<const AppLocales extends Local
22
22
  alternateLinks: NonNullable<boolean | undefined>;
23
23
  };
24
24
  Link: import("react").ForwardRefExoticComponent<Omit<{
25
- slot?: string | undefined;
25
+ slot?: string | undefined | undefined;
26
26
  style?: import("react").CSSProperties | undefined;
27
- title?: string | undefined;
27
+ title?: string | undefined | undefined;
28
28
  locale?: Locale | undefined;
29
29
  onError?: import("react").ReactEventHandler<HTMLAnchorElement> | undefined;
30
- children?: import("react").ReactNode | undefined;
31
- ref?: import("react").LegacyRef<HTMLAnchorElement> | undefined;
30
+ children?: import("react").ReactNode;
31
+ ref?: import("react").Ref<HTMLAnchorElement> | undefined;
32
32
  replace?: boolean | undefined;
33
- prefix?: string | undefined;
33
+ prefix?: string | undefined | undefined;
34
34
  key?: import("react").Key | null | undefined;
35
35
  as?: (string | import("url").UrlObject) | undefined;
36
36
  scroll?: boolean | undefined;
37
37
  shallow?: boolean | undefined;
38
38
  passHref?: boolean | undefined;
39
- prefetch?: (boolean | null) | undefined;
39
+ prefetch?: boolean | null | undefined;
40
40
  legacyBehavior?: boolean | undefined;
41
41
  onMouseEnter?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
42
42
  onTouchStart?: React.TouchEventHandler<HTMLAnchorElement> | undefined;
43
43
  onClick?: React.MouseEventHandler<HTMLAnchorElement> | undefined;
44
44
  download?: any;
45
- hrefLang?: string | undefined;
46
- media?: string | undefined;
47
- ping?: string | undefined;
45
+ hrefLang?: string | undefined | undefined;
46
+ media?: string | undefined | undefined;
47
+ ping?: string | undefined | undefined;
48
48
  target?: import("react").HTMLAttributeAnchorTarget | undefined;
49
- type?: string | undefined;
49
+ type?: string | undefined | undefined;
50
50
  referrerPolicy?: import("react").HTMLAttributeReferrerPolicy | undefined;
51
- defaultChecked?: boolean | undefined;
51
+ defaultChecked?: boolean | undefined | undefined;
52
52
  defaultValue?: string | number | readonly string[] | undefined;
53
- suppressContentEditableWarning?: boolean | undefined;
54
- suppressHydrationWarning?: boolean | undefined;
55
- accessKey?: string | undefined;
56
- autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {});
57
- autoFocus?: boolean | undefined;
58
- className?: string | undefined;
53
+ suppressContentEditableWarning?: boolean | undefined | undefined;
54
+ suppressHydrationWarning?: boolean | undefined | undefined;
55
+ accessKey?: string | undefined | undefined;
56
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {}) | undefined;
57
+ autoFocus?: boolean | undefined | undefined;
58
+ className?: string | undefined | undefined;
59
59
  contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
60
- contextMenu?: string | undefined;
61
- dir?: string | undefined;
60
+ contextMenu?: string | undefined | undefined;
61
+ dir?: string | undefined | undefined;
62
62
  draggable?: (boolean | "true" | "false") | undefined;
63
- enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
64
- hidden?: boolean | undefined;
65
- id?: string | undefined;
66
- lang?: string | undefined;
67
- nonce?: string | undefined;
63
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
64
+ hidden?: boolean | undefined | undefined;
65
+ id?: string | undefined | undefined;
66
+ lang?: string | undefined | undefined;
67
+ nonce?: string | undefined | undefined;
68
68
  spellCheck?: (boolean | "true" | "false") | undefined;
69
- tabIndex?: number | undefined;
70
- translate?: "yes" | "no" | undefined;
71
- radioGroup?: string | undefined;
69
+ tabIndex?: number | undefined | undefined;
70
+ translate?: "yes" | "no" | undefined | undefined;
71
+ radioGroup?: string | undefined | undefined;
72
72
  role?: import("react").AriaRole | undefined;
73
- about?: string | undefined;
74
- content?: string | undefined;
75
- datatype?: string | undefined;
73
+ about?: string | undefined | undefined;
74
+ content?: string | undefined | undefined;
75
+ datatype?: string | undefined | undefined;
76
76
  inlist?: any;
77
- property?: string | undefined;
78
- rel?: string | undefined;
79
- resource?: string | undefined;
80
- rev?: string | undefined;
81
- typeof?: string | undefined;
82
- vocab?: string | undefined;
83
- autoCorrect?: string | undefined;
84
- autoSave?: string | undefined;
85
- color?: string | undefined;
86
- itemProp?: string | undefined;
87
- itemScope?: boolean | undefined;
88
- itemType?: string | undefined;
89
- itemID?: string | undefined;
90
- itemRef?: string | undefined;
91
- results?: number | undefined;
92
- security?: string | undefined;
93
- unselectable?: "on" | "off" | undefined;
94
- inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
95
- is?: string | undefined;
96
- popover?: "" | "auto" | "manual" | undefined;
97
- popoverTargetAction?: "toggle" | "show" | "hide" | undefined;
98
- popoverTarget?: string | undefined;
99
- onToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
100
- onBeforeToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
101
- inert?: boolean | undefined;
77
+ property?: string | undefined | undefined;
78
+ rel?: string | undefined | undefined;
79
+ resource?: string | undefined | undefined;
80
+ rev?: string | undefined | undefined;
81
+ typeof?: string | undefined | undefined;
82
+ vocab?: string | undefined | undefined;
83
+ autoCorrect?: string | undefined | undefined;
84
+ autoSave?: string | undefined | undefined;
85
+ color?: string | undefined | undefined;
86
+ itemProp?: string | undefined | undefined;
87
+ itemScope?: boolean | undefined | undefined;
88
+ itemType?: string | undefined | undefined;
89
+ itemID?: string | undefined | undefined;
90
+ itemRef?: string | undefined | undefined;
91
+ results?: number | undefined | undefined;
92
+ security?: string | undefined | undefined;
93
+ unselectable?: "on" | "off" | undefined | undefined;
94
+ popover?: "" | "auto" | "manual" | undefined | undefined;
95
+ popoverTargetAction?: "toggle" | "show" | "hide" | undefined | undefined;
96
+ popoverTarget?: string | undefined | undefined;
97
+ inert?: boolean | undefined | undefined;
98
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
99
+ is?: string | undefined | undefined;
102
100
  tw?: string | undefined;
103
- "aria-activedescendant"?: string | undefined;
101
+ "aria-activedescendant"?: string | undefined | undefined;
104
102
  "aria-atomic"?: (boolean | "true" | "false") | undefined;
105
- "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
106
- "aria-braillelabel"?: string | undefined;
107
- "aria-brailleroledescription"?: string | undefined;
103
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined | undefined;
104
+ "aria-braillelabel"?: string | undefined | undefined;
105
+ "aria-brailleroledescription"?: string | undefined | undefined;
108
106
  "aria-busy"?: (boolean | "true" | "false") | undefined;
109
- "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
110
- "aria-colcount"?: number | undefined;
111
- "aria-colindex"?: number | undefined;
112
- "aria-colindextext"?: string | undefined;
113
- "aria-colspan"?: number | undefined;
114
- "aria-controls"?: string | undefined;
115
- "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined;
116
- "aria-describedby"?: string | undefined;
117
- "aria-description"?: string | undefined;
118
- "aria-details"?: string | undefined;
107
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
108
+ "aria-colcount"?: number | undefined | undefined;
109
+ "aria-colindex"?: number | undefined | undefined;
110
+ "aria-colindextext"?: string | undefined | undefined;
111
+ "aria-colspan"?: number | undefined | undefined;
112
+ "aria-controls"?: string | undefined | undefined;
113
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined | undefined;
114
+ "aria-describedby"?: string | undefined | undefined;
115
+ "aria-description"?: string | undefined | undefined;
116
+ "aria-details"?: string | undefined | undefined;
119
117
  "aria-disabled"?: (boolean | "true" | "false") | undefined;
120
- "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
121
- "aria-errormessage"?: string | undefined;
118
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined | undefined;
119
+ "aria-errormessage"?: string | undefined | undefined;
122
120
  "aria-expanded"?: (boolean | "true" | "false") | undefined;
123
- "aria-flowto"?: string | undefined;
121
+ "aria-flowto"?: string | undefined | undefined;
124
122
  "aria-grabbed"?: (boolean | "true" | "false") | undefined;
125
- "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
123
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined | undefined;
126
124
  "aria-hidden"?: (boolean | "true" | "false") | undefined;
127
- "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
128
- "aria-keyshortcuts"?: string | undefined;
129
- "aria-label"?: string | undefined;
130
- "aria-labelledby"?: string | undefined;
131
- "aria-level"?: number | undefined;
132
- "aria-live"?: "off" | "assertive" | "polite" | undefined;
125
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined | undefined;
126
+ "aria-keyshortcuts"?: string | undefined | undefined;
127
+ "aria-label"?: string | undefined | undefined;
128
+ "aria-labelledby"?: string | undefined | undefined;
129
+ "aria-level"?: number | undefined | undefined;
130
+ "aria-live"?: "off" | "assertive" | "polite" | undefined | undefined;
133
131
  "aria-modal"?: (boolean | "true" | "false") | undefined;
134
132
  "aria-multiline"?: (boolean | "true" | "false") | undefined;
135
133
  "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
136
- "aria-orientation"?: "horizontal" | "vertical" | undefined;
137
- "aria-owns"?: string | undefined;
138
- "aria-placeholder"?: string | undefined;
139
- "aria-posinset"?: number | undefined;
140
- "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
134
+ "aria-orientation"?: "horizontal" | "vertical" | undefined | undefined;
135
+ "aria-owns"?: string | undefined | undefined;
136
+ "aria-placeholder"?: string | undefined | undefined;
137
+ "aria-posinset"?: number | undefined | undefined;
138
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined | undefined;
141
139
  "aria-readonly"?: (boolean | "true" | "false") | undefined;
142
- "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
140
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined | undefined;
143
141
  "aria-required"?: (boolean | "true" | "false") | undefined;
144
- "aria-roledescription"?: string | undefined;
145
- "aria-rowcount"?: number | undefined;
146
- "aria-rowindex"?: number | undefined;
147
- "aria-rowindextext"?: string | undefined;
148
- "aria-rowspan"?: number | undefined;
142
+ "aria-roledescription"?: string | undefined | undefined;
143
+ "aria-rowcount"?: number | undefined | undefined;
144
+ "aria-rowindex"?: number | undefined | undefined;
145
+ "aria-rowindextext"?: string | undefined | undefined;
146
+ "aria-rowspan"?: number | undefined | undefined;
149
147
  "aria-selected"?: (boolean | "true" | "false") | undefined;
150
- "aria-setsize"?: number | undefined;
151
- "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
152
- "aria-valuemax"?: number | undefined;
153
- "aria-valuemin"?: number | undefined;
154
- "aria-valuenow"?: number | undefined;
155
- "aria-valuetext"?: string | undefined;
148
+ "aria-setsize"?: number | undefined | undefined;
149
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined | undefined;
150
+ "aria-valuemax"?: number | undefined | undefined;
151
+ "aria-valuemin"?: number | undefined | undefined;
152
+ "aria-valuenow"?: number | undefined | undefined;
153
+ "aria-valuetext"?: string | undefined | undefined;
156
154
  dangerouslySetInnerHTML?: {
157
155
  __html: string | TrustedHTML;
158
- } | undefined;
156
+ } | undefined | undefined;
159
157
  onCopy?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
160
158
  onCopyCapture?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
161
159
  onCut?: import("react").ClipboardEventHandler<HTMLAnchorElement> | undefined;
@@ -310,10 +308,12 @@ export default function createSharedNavigationFns<const AppLocales extends Local
310
308
  onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
311
309
  onAnimationIteration?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
312
310
  onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLAnchorElement> | undefined;
313
- onTransitionEnd?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
314
- onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
311
+ onToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
312
+ onBeforeToggle?: import("react").ToggleEventHandler<HTMLAnchorElement> | undefined;
315
313
  onTransitionCancel?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
316
314
  onTransitionCancelCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
315
+ onTransitionEnd?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
316
+ onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
317
317
  onTransitionRun?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
318
318
  onTransitionRunCapture?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
319
319
  onTransitionStart?: import("react").TransitionEventHandler<HTMLAnchorElement> | undefined;
@@ -13,8 +13,8 @@ declare function getFormatterCachedImpl(config: Parameters<typeof createFormatte
13
13
  (date: number | Date, options?: import("use-intl/core").RelativeTimeFormatOptions): string;
14
14
  };
15
15
  list: {
16
- <Value extends string | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>>(value: Iterable<Value>, options?: Intl.ListFormatOptions): Value extends string ? string : Iterable<import("react").ReactElement>;
17
- <Value extends string | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>>(value: Iterable<Value>, format?: string, options?: Intl.ListFormatOptions): Value extends string ? string : Iterable<import("react").ReactElement>;
16
+ <Value extends string | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>>(value: Iterable<Value>, options?: Intl.ListFormatOptions): Value extends string ? string : Iterable<import("react").ReactElement>;
17
+ <Value extends string | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>>(value: Iterable<Value>, format?: string, options?: Intl.ListFormatOptions): Value extends string ? string : Iterable<import("react").ReactElement>;
18
18
  };
19
19
  dateTimeRange: {
20
20
  (start: Date | number, end: Date | number, options?: import("use-intl/core").DateTimeFormatOptions): string;
package/middleware.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  // Needed for projects with `moduleResolution: 'node'`
2
2
  import createMiddleware from './dist/types/middleware';
3
3
 
4
- export = createMiddleware;
4
+ export default createMiddleware;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "next-intl",
3
- "version": "4.0.0",
3
+ "version": "4.0.2",
4
4
  "sideEffects": false,
5
5
  "author": "Jan Amann <jan@amann.work>",
6
6
  "funding": [
@@ -112,7 +112,7 @@
112
112
  "dependencies": {
113
113
  "@formatjs/intl-localematcher": "^0.5.4",
114
114
  "negotiator": "^1.0.0",
115
- "use-intl": "^4.0.0"
115
+ "use-intl": "^4.0.2"
116
116
  },
117
117
  "peerDependencies": {
118
118
  "next": "^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0",
@@ -124,5 +124,5 @@
124
124
  "optional": true
125
125
  }
126
126
  },
127
- "gitHead": "6ae3e6405df7fc611d87a6cc5eef67f66e25cec4"
127
+ "gitHead": "d6c0e91cab1bbfada8cb213140ac9a3f28cc06aa"
128
128
  }
package/plugin.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  // Needed for projects with `moduleResolution: 'node'`
2
2
  import plugin from './dist/types/plugin';
3
3
 
4
- export = plugin;
4
+ export default plugin;