Upgrading nuxt 3 to 4
Breaking3.21.11 → 4.6.3Breaking57Security50Platform4Deprecated5New198Changed209Fixed719Other729
37 breaking changes and 4 platform requirement changes and 46 security fixes.
- Modules that relied on Nuxt 2 support in @nuxt/kit will need updating.
- The default value handling for async data changes in a way that can affect existing code.
- Supports loading Nuxt 4 and drops support for Nuxt 2 and below.
- The global __NUXT__ data object is deleted once the page hydrates.
nuxt publishes official migration guides for versions 4, 4. They cover more than the release notes do.
Upgrade guide ↗Upgrade guide ↗Node.js requirement changed in 4.6.0: ^20.19.0 || >=22.12.0 → ^22.22.3 || ^24.15.0 || >=26.0.0.
Adds @jridgewell/trace-mapping ^0.3.31, @nuxt/devalue ^2.0.2, @nuxt/vite-server 4.6.3, clickable-path ^0.1.1, fetchdts ^0.2.0, fnv1a-64 ^0.1.2, iron-webcrypto ^2.0.0, my-bad ^0.2.11, nostics ^1.3.0, object-identity ^0.2.3, picomatch ^4.0.7, rolldown-string ^0.3.1, undici ^8.12.3, unhead ^3.4.3, unrouting ^0.3.1, verkit ^0.5.0, vue-bundle-renderer ^2.4.0, vue-component-type-helpers ^3.3.13.
Drops c12, h3, mlly, nypm, oxc-minify, oxc-parser, oxc-transform, semver, unplugin-vue-router.
Installs 624 packages in all (was 699).
What you must change
@nuxt/kitasyncData__NUXT__globalName property.globalNamecompatibilityVersion: 3.compatibilityVersioncompatibilityDate to 2025-07-15.compatibilityDatenuxt init@nuxt/bridgenuxt/server imports raises a NUXT_E8012 error.defineEventHandlergetQueryreadBodyNUXT_E8012unhead v3 narrows useHead types and no longer supports promise input, which can break code relying on looser v2 types.useHeadsource with compatibilityVersion 5.sourcecompatibilityVersionrender:html hook for server islands.render:htmlcompatibilityVersionbuilder:watch hook.builder:watchuseAsyncData.useAsyncDatagenerate#app/components/layout to #app/components/nuxt-layout.#app/components/layout#app/components/nuxt-layoutconfig.schema.jsonconfig.schema.json export and its defaults.config.schema.jsontoNuxtRequestEvent from nuxt/server.toNuxtRequestEventnuxt/serversetResponseHeader and setResponseHeaders from nuxt/server.setResponseHeadersetResponseHeadersnuxt/serverconfig.cjsfuture.compatibilityVersionshortPath property.shortPathmajorVersion to 4.majorVersionvitevitenitrovitenitronuxtModerate · CVSS 6.5nuxtredirect, headers, proxy, ssr) are skipped for case-variant paths when routing is case-insensitiveuseHeadSafe input without sanitisationjavascript: URL prefixed with an ASCII control character executes from <NuxtLink> when pages is disabled@nuxt/devtoolscacheswrisr_payload.jsonnoSSR before deciding payload extraction in nitro.noSSRallowDirs for Vite.allowDirspathe resolve for the buildCache path boundary check.pathebuildCachenavigateTo and reloadNuxtApp: SSR open redirect, client-side script execution via the open option, and protocol-relative bypass in reloadNuxtAppisScriptProtocolnavigateToreloadNuxtAppModerate · CVSS 6.1<NuxtClientFallback> SSR output.NuxtClientFallbackNoScriptLow<NuxtLink> href.NuxtLinknavigateTo.navigateToreloadNuxtApp.reloadNuxtApp<NuxtLink> via unsanitised javascript: or data: URL/.well-known/appspecific/com.chrome.devtools.jsonnavigateTo() external redirect.server.vue pages via /__nuxt_island/page_*__nuxt_island endpoint does not bind responses to request props, enabling shared-cache poisoningappMiddleware on dynamic and catch-all routes^22.22.3 || ^24.15.0 || >=26.0.0.@nuxt/kitrolldownunctxDeprecations to plan for
nitrocreateErrorstatusCodestatusMessagestatusstatusTextImportPresetWithDeprecation in kit, nuxt and schema.ImportPresetWithDeprecationextend, extendConfig, and configResolved hooks in schema.extendextendConfigconfigResolvedAPI changes
Generated by DepDelta from published .d.ts files. Not mixed with prose notes.
- removed:
export * from '../dist/app/defaults'
- changed:
interface DefineNuxtConfig extends DefineConfig<NuxtConfig, ConfigLayerMeta> → interface DefineNuxtConfig extends _DefineNuxtConfig<NuxtConfig>
- changed:
interface ImportMeta extends NuxtStaticBuildFlags → interface ImportMeta - added:
interface NuxtGlobalFetch extends TypedFetch - added:
property ImportMeta.envName: string - added:
property ImportMeta.prerender: boolean - added:
property ImportMeta.url: string - added:
readonly property ImportMeta.env: ImportMetaEnv
- added:
interface AppConfig extends _AppConfig - added:
interface AppConfigInput extends _AppConfigInput - added:
interface ConfigSchema extends _ConfigSchema - added:
interface CustomAppConfig extends _CustomAppConfig - added:
interface ModuleDependencies extends _ModuleDependencies - added:
interface NuxtConfig extends _NuxtConfig - added:
interface NuxtDebugOptions extends _NuxtDebugOptions - added:
interface NuxtHooks extends _NuxtHooks - added:
interface NuxtOptions extends _NuxtOptions - added:
interface NuxtPage extends _NuxtPage - added:
interface ServerRoutes extends _ServerRoutes - added:
interface ServerTypes extends _ServerTypes - added:
interface SharedAppConfig extends _SharedAppConfig - added:
interface ViteOptions extends _ViteOptions - added:
property ConfigSchema.hooks: NuxtHooks - added:
property NuxtConfig.hooks?: Partial<NuxtHooks> - added:
property NuxtOptions.hooks: NuxtHooks
- removed:
export * from './capi' - added:
export * from 'vue' - added:
export { del } - added:
export { install } - added:
export { set }
- removed:
const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ fallbackTag: { type: StringConstructor; default: () => string }; fallback: { type: StringConstru… - removed:
default _default - added:
const default: DefineSetupFnComponent<NuxtClientFallbackProps, NuxtClientFallbackEmits, NuxtClientFallbackSlots>
- removed:
const NuxtClientFallbackServer: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ fallbackTag: { type: StringConstructor; default: () => string }; fallback: { type: StringConstru… - removed:
default NuxtClientFallbackServer - added:
const default: DefineSetupFnComponent<NuxtClientFallbackProps, NuxtClientFallbackEmits, NuxtClientFallbackSlots>
- removed:
const _default: import('vue').DefineComponent<{ placeholder?: any; fallback?: any; placeholderTag?: any; fallbackTag?: any }, () => VNode<import('vue').RendererNode, import('v… - removed:
default _default - changed:
function createClientOnly<T extends ComponentOptions>(component: T): any → function createClientOnly<T extends ComponentOptions>(component: T): Component - added:
const default: DefineSetupFnComponent<ClientOnlyProps, {}, ClientOnlySlots>
- removed:
const _default: import('vue').DefineComponent<{}, () => VNode<import('vue').RendererNode, import('vue').RendererElement, { [key: string]: any }>[] | undefined, {}, {}, {}, imp… - removed:
default _default - added:
const default: DefineSetupFnComponent<{}, {}, DevOnlySlots>
- added:
type __VLS_GlobalComponents = import('vue').GlobalComponents - added:
type __VLS_LocalComponents = {} - added:
type __VLS_LocalDirectives = {} - added:
type __VLS_StyleScopedClasses = {} & { 'grid': boolean } & { 'mb-2': boolean } & { 'mb-4': boolean } & { 'max-w-520px': boolean } & { 'min-h-screen': boolean } & { 'w-full': boolean } & { 'fl…
- added:
type __VLS_GlobalComponents = import('vue').GlobalComponents - added:
type __VLS_LocalComponents = {} - added:
type __VLS_LocalDirectives = {} - added:
type __VLS_StyleScopedClasses = {} & { 'grid': boolean } & { 'mb-2': boolean } & { 'mb-4': boolean } & { 'max-w-520px': boolean } & { 'min-h-screen': boolean } & { 'place-content-center': boo…
- removed:
export { NuxtLinkOptions } from './nuxt-link' - removed:
export { NuxtLinkProps } from './nuxt-link' - removed:
export { NuxtTimeProps } from './nuxt-time.vue' - removed:
export { defineNuxtLink } from './nuxt-link' - added:
export { NuxtLinkOptions } - added:
export { NuxtLinkProps } - added:
export { NuxtTimeProps } - added:
export { defineNuxtLink }
- added:
const LayoutSymbol: InjectionKey<Readonly<ComputedRef<string | false>>>
- removed:
const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ context: { type: () => { name: string; props?: Record<string, any> }; required: true } }>, () =>… - removed:
default _default - added:
const default: DefineSetupFnComponent<IslandRendererProps>
- removed:
export { default } from './nuxt-layout'
- added:
const default: DefineSetupFnComponent<NuxtAnnouncerProps, {}, NuxtAnnouncerSlots>
- added:
type __VLS_GlobalComponents = import('vue').GlobalComponents - added:
type __VLS_LocalComponents = import('vue').ShallowUnwrapRef<{ ErrorTemplate: typeof ErrorTemplate }> - added:
type __VLS_LocalDirectives = {}
- removed:
const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ name: { type: StringConstructor; required: true }; lazy: BooleanConstructor; props: { type: Obje… - removed:
default _default - added:
const default: DefineSetupFnComponent<NuxtIslandProps, NuxtIslandEmits, NuxtIslandSlots>
- removed:
const _default: DefineComponent<ExtractPublicPropTypes<typeof nuxtLayoutProps>> - removed:
default _default - added:
const default: DefineComponent<ExtractPublicPropTypes<typeof nuxtLayoutProps>>
- removed:
const _default: (new <CustomProp extends boolean = false>(props: NuxtLinkProps<CustomProp> & VNodeProps & AllowedComponentProps & Omit<AnchorHTMLAttributes, keyof NuxtLinkProp… - removed:
default _default - removed:
function isSlowConnection(): boolean | undefined - removed:
interface NuxtLinkOptions extends Partial<Pick<RouterLinkProps, 'activeClass' | 'exactActiveClass'>>, Partial<Pick<NuxtLinkProps, 'prefetch' | 'prefetchedClass'>> - removed:
property NuxtLinkOptions.componentName?: string - removed:
property NuxtLinkOptions.externalRelAttribute?: string | null - removed:
property NuxtLinkOptions.prefetchOn?: Exclude<NuxtLinkProps['prefetchOn'], string> - removed:
property NuxtLinkOptions.trailingSlash?: 'append' | 'remove' - changed:
function defineNuxtLink(options: NuxtLinkOptions): (new <CustomProp extends boolean = false>(props: NuxtLinkProps<CustomProp> & VNodeProps & AllowedComponentProps & Omit<AnchorHTMLAttributes, keyof NuxtLinkProps<CustomProp>>) => InstanceType<DefineSetupFnComponent<NuxtLinkProps<CustomProp> & VNodeProps & AllowedComponentProps & Omit<AnchorHTMLAttributes, keyof NuxtLinkProps<CustomProp>>, [], Slot… → function defineNuxtLink(options: NuxtLinkOptions): NuxtLinkComponent & Record<string, any> - added:
const default: NuxtLinkComponent & Record<string, any> - added:
export { NuxtLinkOptions } - added:
type NuxtLinkComponent = { new (props: NuxtLinkComponentProps<true> & { custom: true }): NuxtLinkComponentInstance<true>; new (props: NuxtLinkComponentProps<false>): NuxtLinkComponentI…
- removed:
const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ throttle: { type: NumberConstructor; default: number }; duration: { type: NumberConstructor; def… - removed:
default _default - added:
const default: DefineSetupFnComponent<NuxtLoadingIndicatorProps>
- added:
type __VLS_GlobalComponents = import('vue').GlobalComponents - added:
type __VLS_LocalComponents = import('vue').ShallowUnwrapRef<{ ErrorComponent: typeof ErrorComponent; IslandRenderer: typeof IslandRenderer; AppComponent: typeof AppComponent }> - added:
type __VLS_LocalDirectives = {}
- removed:
const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ atomic: { type: BooleanConstructor; default: boolean }; politeness: { type: () => Politeness; de… - removed:
default _default - added:
const default: DefineSetupFnComponent<NuxtRouteAnnouncerProps, {}, NuxtRouteAnnouncerSlots>
- removed:
const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ nuxtClient: { type: BooleanConstructor; default: boolean } }>, () => import('vue').VNode<import(… - removed:
default _default - added:
const default: DefineSetupFnComponent<NuxtTeleportIslandComponentProps, {}, NuxtTeleportIslandComponentSlots>
- removed:
const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ name: { type: StringConstructor; required: true }; props: { type: () => Array<any> } }>, (() =>… - removed:
default _default - added:
const default: DefineSetupFnComponent<NuxtTeleportIslandSlotProps, {}, NuxtTeleportIslandSlotSlots>
- added:
const renderList: typeof renderList$1 - added:
function ssrRenderList(source: unknown, renderItem: Parameters<typeof ssrRenderList$1>[1]): void
- changed:
const RouteProvider: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ route: { type: () => RouteLocationNormalizedLoaded; required: true }; vnode: () => VNode; vnodeR… → const RouteProvider: RouteProviderComponent - changed:
const defineRouteProvider: (name?: string) => import('vue').DefineComponent<import('vue').ExtractPropTypes<{ route: { type: () => RouteLocationNormalizedLoaded; required: true }; vnode:… → const defineRouteProvider: (name?: string) => RouteProviderComponent - added:
type RouteProviderComponent = DefineSetupFnComponent<RouteProviderProps>
- removed:
const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicPro… - removed:
default _default - added:
const default: DefineSetupFnComponent<{}>
- removed:
const _default: (url: string) => import('vue').DefineComponent<{}, () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, { [key: string]: any }>… - removed:
default _default - added:
const default: (url: string, componentLoaders?: Record<string, () => Promise<any>>) => DefineSetupFnComponent<{}>
- changed:
const _wrapInTransition: (props: any, children: any) => { default: () => any } → const _wrapInTransition: (props: any, children: any) => { default: () => VNode | undefined } - changed:
function createBuffer(): { getBuffer(): SSRBuffer; push(item: SSRBufferItem): void } → function createBuffer(): { getBuffer: () => SSRBuffer; push: (item: SSRBufferItem) => void } - added:
function _finishTransition(nuxtApp: NuxtApp): void - added:
function _startTransition(nuxtApp: NuxtApp): void - added:
function isVaporSlot(slot: ((...args: any[]) => any) | undefined | null): boolean
- added:
type __VLS_GlobalComponents = import('vue').GlobalComponents - added:
type __VLS_LocalComponents = {} - added:
type __VLS_LocalDirectives = {} - added:
type __VLS_StyleScopedClasses = {} & { 'sr-only': boolean } & { 'absolute': boolean } & { 'relative': boolean } & { 'right-4': boolean } & { 'top-4': boolean } & { 'grid': boolean } & { 'grid…
- added:
function applyUseAsyncDataAddons(create: (options: Record<string, any>) => (...args: any[]) => AsyncData<unknown, unknown>, { addons, ...factoryOptions }: Record<string, any>): UseAsyncData - added:
function applyUseFetchAddons(create: (options: Record<string, any>) => (...args: any[]) => AsyncData<unknown, unknown>, { addons, ...factoryOptions }: Record<string, any>): UseFetch - added:
function defineUseAsyncDataAddon<Opts extends Record<string, any> = {}, Ext = {}>(addon: UseAsyncDataAddon<Opts, Ext>): UseAsyncDataAddon<Opts, Ext> - added:
function defineUseFetchAddon<Opts extends Record<string, any> = {}, Ext = {}>(addon: UseFetchAddon<Opts, Ext>): UseFetchAddon<Opts, Ext> - added:
interface UseAsyncDataAddon<Opts extends Record<string, any> = {}, Ext = {}> - added:
interface UseFetchAddon<Opts extends Record<string, any> = {}, Ext = {}> - added:
property UseAsyncDataAddon.setup: (options: UseAsyncDataAddonOptions<Opts>) => AsyncDataAddonSetup<Ext> | void - added:
property UseAsyncDataAddon[AddonMarker]?: { options: Opts; extension: Ext } - added:
property UseFetchAddon.key?: (options: UseFetchAddonOptions<Opts>) => SerializableValue - added:
property UseFetchAddon.setup: (options: UseFetchAddonOptions<Opts>) => AsyncDataAddonSetup<Ext> | void - added:
property UseFetchAddon[AddonMarker]?: { options: Opts; extension: Ext } - added:
type AsyncDataAddonInstance = _AsyncData<unknown, unknown> - added:
type AsyncDataAddonSetup<Ext> = (asyncData: AsyncDataAddonInstance) => Ext | void - added:
type MergedAddonsExtensions<Addons extends ReadonlyArray<any>> = [keyof AddonsExtensions<Addons>] extends [never] ? {} : Omit<AddonsExtensions<Addons>, PromiseMethod> - added:
type MergedAddonsOptions<Addons extends ReadonlyArray<any>> = [Addons[number]] extends [never] ? {} : UnionToIntersection<Addons[number] extends { [AddonMarker]?: { options: infer O; extension: any } } ? O : never> - added:
type UseAsyncDataAddonOptions<Opts extends Record<string, any> = {}> = Omit<AsyncDataOptions<any, any>, 'transform' | 'middleware'> & AddonChains & Opts - added:
type UseFetchAddonOptions<Opts extends Record<string, any> = {}> = Omit<UseFetchOptions<any, any>, 'transform' | 'middleware' | 'onRequest' | 'onRequestError' | 'onResponse' | 'onResponseError'> & AddonChains & { onRequest: Ar…
- added:
function useAnnouncer(opts?: NuxtAnnouncerOpts): Omit<NuxtAnnouncer, '_cleanup'> - added:
type AnnouncerPoliteness = 'assertive' | 'polite' | 'off' - added:
type NuxtAnnouncer = { message: Ref<string>; politeness: Ref<AnnouncerPoliteness>; set: (message: string, politeness?: AnnouncerPoliteness) => void; polite: (message: string) => vo… - added:
type NuxtAnnouncerOpts = { politeness?: AnnouncerPoliteness }
- changed:
function withAsyncContext(fn: () => PromiseLike<unknown>): any → function withAsyncContext(fn: () => PromiseLike<unknown>): [unknown, () => void]
- removed:
function useAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DataT>(handler: AsyncDataHandler<ResT>, options?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorDataT : NuxtError<NuxtErrorDataT>) | DefaultAsyncDataErrorValue> - removed:
function useAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DataT>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, options?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorDataT : NuxtError<NuxtErrorDataT>) | D… - removed:
function useAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DefaultAsyncDataValue>(handler: AsyncDataHandler<ResT>, options?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorDataT : NuxtError<NuxtErrorDataT>) | DefaultAsyncData… - removed:
function useAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DefaultAsyncDataValue>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, options?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorDataT : NuxtError<Nuxt… - removed:
function useLazyAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DataT>(handler: AsyncDataHandler<ResT>, options?: Omit<AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>, 'lazy'>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorDataT : NuxtError<NuxtErrorDataT>) | DefaultAsyncDa… - removed:
function useLazyAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DataT>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, options?: Omit<AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>, 'lazy'>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorDataT : NuxtError<Nu… - removed:
function useLazyAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DefaultAsyncDataValue>(handler: AsyncDataHandler<ResT>, options?: Omit<AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>, 'lazy'>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorDataT : NuxtError<NuxtErrorDataT>)… - removed:
function useLazyAsyncData<ResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DefaultAsyncDataValue>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, options?: Omit<AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>, 'lazy'>): AsyncData<PickFrom<DataT, PickKeys> | DefaultT, (NuxtErrorDataT extends Error | NuxtError ? NuxtErrorData… - removed:
property AsyncDataOptions.dedupe?: 'cancel' | 'defer' - removed:
property AsyncDataOptions.deep?: boolean - removed:
property AsyncDataOptions.default?: () => DefaultT | Ref<DefaultT> - removed:
property AsyncDataOptions.immediate?: boolean - removed:
property AsyncDataOptions.lazy?: boolean - removed:
property AsyncDataOptions.pick?: PickKeys - removed:
property AsyncDataOptions.server?: boolean - removed:
property AsyncDataOptions.timeout?: number - removed:
property AsyncDataOptions.watch?: MultiWatchSources - removed:
type DebouncedReturn<ArgumentsT extends unknown[], ReturnT> = ((...args: ArgumentsT) => Promise<ReturnT>) & { cancel: () => void; flush: () => Promise<ReturnT> | undefined; isPending: () => boolean } - changed:
function useNuxtData<DataT = any>(key: string): { data: Ref<DataT | DefaultAsyncDataValue> } → function useNuxtData<DataT = any>(key: string): { data: Ref<DataT | undefined> } - changed:
interface AsyncDataOptions<ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DefaultAsyncDataValue> → interface AsyncDataOptions<ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = undefined> extends BaseAsyncDataOptions<ResT, DataT, PickKeys, DefaultT> - changed:
property AsyncDataExecuteOptions.dedupe?: DedupeOption → property AsyncDataExecuteOptions.dedupe?: 'cancel' | 'defer' - changed:
property _AsyncData.error: Ref<ErrorT | DefaultAsyncDataErrorValue> → property _AsyncData.error: Ref<ErrorT | undefined> - changed:
type AsyncDataHandler<ResT> = (nuxtApp: NuxtApp, options: { signal: AbortSignal }) => Promise<ResT> → type AsyncDataHandler<ResT> = (nuxtApp: NuxtApp, ctx: AsyncDataHandlerContext) => Promise<ResT> - changed:
type PickFrom<T, K extends Array<string>> = T extends Array<any> ? T : T extends Record<string, any> ? keyof T extends K[number] ? T : K[number] extends never ? T : Pick<T, K[number]> : T → type PickFrom<T, K extends Array<string>> = KeysOf<T> extends K ? T : T extends Array<any> ? T : T extends Record<string, any> ? keyof T extends K[number] ? T : K[number] extends never ? T : Pick<T, K[nu… - added:
call CreateUseAsyncData<FResT, FDataT = FResT, FPickKeys extends KeysOf<FDataT> = KeysOf<FDataT>, FDefaultT = undefined, const FAddons extends ReadonlyArray<UseAsyncDataAddon<any, any>> = []>(options?: CreateUseAsyncDataOptions<FResT, FDataT, FPickKeys, FDefaultT, FAddons> | ((callerOptions: AsyncDataOptions<unknown>) => Partial<AsyncDataOptions<FResT, FDataT, FPickKeys, FDefaultT>>)): UseAsyncDa… - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = FactoryDataT<FDataT, ResT>, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, DataT>>(handler: AsyncDataHandler<ResT>, opts?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, FactoryPickKeys<FPickKeys, PickKeys, DataT>> | DefaultT, NuxtErrorFor<N… - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = FactoryDataT<FDataT, ResT>, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, DataT>>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, opts?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, FactoryPickKeys<FPickKeys, PickKeys, Dat… - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = FactoryDataT<FDataT, ResT>, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, undefined>>(handler: AsyncDataHandler<ResT>, opts?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, FactoryPickKeys<FPickKeys, PickKeys, DataT>> | DefaultT, NuxtErrorF… - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = FactoryDataT<FDataT, ResT>, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, undefined>>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, opts?: AsyncDataOptions<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, FactoryPickKeys<FPickKeys, PickKeys,… - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, DataT>>(handler: AsyncDataHandler<ResT>, opts: AsyncDataOptionsWithTransform<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, PickKeys> | DefaultT, NuxtErrorFor<NuxtErrorDataT> | undefined, FAddonExt> - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, DataT>>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, opts: AsyncDataOptionsWithTransform<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, PickKeys> | DefaultT, NuxtErrorFor<NuxtErrorDataT>… - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, undefined>>(handler: AsyncDataHandler<ResT>, opts: AsyncDataOptionsWithTransform<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, PickKeys> | DefaultT, NuxtErrorFor<NuxtErrorDataT> | undefined, FAddonExt> - added:
call UseAsyncData<ResT = FResT, NuxtErrorDataT = unknown, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FactoryDefaultT<FDefaultT, undefined>>(key: MaybeRefOrGetter<string>, handler: AsyncDataHandler<ResT>, opts: AsyncDataOptionsWithTransform<ResT, DataT, PickKeys, DefaultT> & FAddonOpts): AugmentedAsyncData<PickFrom<DataT, PickKeys> | DefaultT, NuxtErrorFor<NuxtErrorDa… - added:
const createUseAsyncData: CreateUseAsyncData - added:
const useAsyncData: UseAsyncData - added:
const useLazyAsyncData: UseAsyncData - added:
function _createUseAsyncData<FResT, FDataT = FResT, FPickKeys extends KeysOf<FDataT> = KeysOf<FDataT>, FDefaultT = undefined>(options?: Partial<AsyncDataOptions<FResT, FDataT, FPickKeys, FDefaultT>> | ((callerOptions: AsyncDataOptions<unknown>) => Partial<AsyncDataOptions<FResT, FDataT, FPickKeys, FDefaultT>>)): UseAsyncData<FResT, FDataT, FPickKeys, FDefaultT> - added:
function _isAutoKeyNeeded(keyOrFetcher: string | MaybeRefOrGetter<string> | (() => any), fetcher: () => any): boolean - added:
interface AsyncDataHandlerContext - added:
interface AsyncDataOptionsWithTransform<ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = undefined> extends BaseAsyncDataOptions<ResT, DataT, PickKeys, DefaultT> - added:
interface CreateUseAsyncData - added:
interface UseAsyncData<FResT = unknown, FDataT = unknown, FPickKeys extends KeysOf<FDataT> = never[], FDefaultT = undefined, FAddonOpts = {}, FAddonExt = {}> - added:
property AsyncDataHandlerContext.signal: AbortSignal - added:
property AsyncDataOptionsWithTransform.getCachedData?: (key: string, nuxtApp: NuxtApp, context: { cause: AsyncDataRefreshCause }) => NoInfer<DataT | undefined> - added:
property AsyncDataOptionsWithTransform.transform: _Transform<ResT, DataT> - added:
type AsyncDataMiddleware<ResT = unknown> = (next: () => Promise<ResT>, ctx: AsyncDataHandlerContext) => Promise<ResT> - added:
type AsyncDataWithExtensions<Data, Error, Ext> = _AsyncData<Data, Error> & Ext & Promise<_AsyncData<Data, Error> & Ext> - added:
type AugmentedAsyncData<Data, Error, Ext> = [keyof Ext] extends [never] ? AsyncData<Data, Error> : AsyncDataWithExtensions<Data, Error, Ext> - added:
type CreateUseAsyncDataOptions<FResT, FDataT = FResT, FPickKeys extends KeysOf<FDataT> = KeysOf<FDataT>, FDefaultT = undefined, FAddons extends ReadonlyArray<UseAsyncDataAddon<any, any>> = []> = Partial<AsyncDataOptions<FResT, FDataT, FPickKeys, FDefaultT>> & { addons?: FAddons }
- changed:
function useCookie<T = string | null | undefined>(name: string, _opts: CookieOptions<T> & { readonly: true }): Readonly<CookieRef<T>> → function useCookie<T = string | null | undefined>(name: string, _opts: UseCookieOptions<T> & { readonly: true }): Readonly<CookieRef<T>> - changed:
function useCookie<T = string | null | undefined>(name: string, _opts?: CookieOptions<T> & { readonly?: false }): CookieRef<T> → function useCookie<T = string | null | undefined>(name: string, _opts?: UseCookieOptions<T> & { readonly?: false }): CookieRef<T> - changed:
method CookieOptions.decode?(value: string): T → method CookieOptions.decode?(value: string | null | undefined): T - added:
interface UseCookieOptions<T = any> extends Omit<CookieOptions<T>, 'expires'> - added:
method CookieOptions.filter?(key: string): boolean - added:
property CookieOptions.refresh?: boolean - added:
property UseCookieOptions.expires?: Date | (() => Date | undefined)
- removed:
const NUXT_ERROR_SIGNATURE = '__nuxt_error' - removed:
const createError: <DataT = unknown>(error: string | Error | Partial<NuxtError<DataT>>) => NuxtError<DataT> - removed:
const isNuxtError: <DataT = unknown>(error: unknown) => error is NuxtError<DataT> - removed:
interface NuxtError<DataT = unknown> extends Omit<H3Error<DataT>, 'statusCode' | 'statusMessage'>, Error - removed:
property NuxtError.error?: true - removed:
property NuxtError.status?: number - removed:
property NuxtError.statusCode?: H3Error<DataT>['statusCode'] - removed:
property NuxtError.statusMessage?: H3Error<DataT>['statusMessage'] - removed:
property NuxtError.statusText?: string - added:
const _notifyCrawlerError: (nuxtApp: NuxtApp, error: Error) => Promise<void> | void - added:
const _showErrorUnlessCrawler: (nuxtApp: NuxtApp, error: Error) => Promise<void> - added:
export { NUXT_ERROR_SIGNATURE } - added:
export { NuxtError } - added:
export { THROWN_CONTEXT } - added:
export { THROWN_VALUE } - added:
export { ThrownContext } - added:
export { createError } - added:
export { createErrorFromThrown } - added:
export { isNuxtError }
- removed:
function useFetch<ResT = void, ErrorT = NuxtError<unknown>, ReqT extends NitroFetchRequest = NitroFetchRequest, const Method extends AvailableRouterMethod<ReqT> = ResT extends void ? 'get' extends AvailableRouterMethod<ReqT> ? 'get' : AvailableRouterMethod<ReqT> : AvailableRouterMethod<ReqT>, _ResT = ResT extends void ? FetchResult<ReqT, Method> : ResT, DataT = _ResT, PickKeys extends KeysOf<Data… - removed:
function useLazyFetch<ResT = void, ErrorT = NuxtError<unknown>, ReqT extends NitroFetchRequest = NitroFetchRequest, const Method extends AvailableRouterMethod<ReqT> = ResT extends void ? 'get' extends AvailableRouterMethod<ReqT> ? 'get' : AvailableRouterMethod<ReqT> : AvailableRouterMethod<ReqT>, _ResT = ResT extends void ? FetchResult<ReqT, Method> : ResT, DataT = _ResT, PickKeys extends KeysOf<… - changed:
interface UseFetchOptions<ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = DefaultAsyncDataValue, R extends NitroFetchRequest = string & {}, M extends AvailableRouterMethod<R> = AvailableRouterMethod<R>> extends Omit<AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>, 'watch'>, Omit<ComputedFetchOptions<R, M, DataT>, 'timeout'> → interface UseFetchOptions<ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = undefined, R extends string = string, M extends AnyServerRouteMethod = 'get', B extends string = string> extends Omit<AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>, 'watch'>, Omit<ComputedFetchOptions<R, M, DataT, B>, 'timeout'> - changed:
property UseFetchOptions.$fetch?: typeof globalThis.$fetch → property UseFetchOptions.$fetch?: TypedFetch - changed:
type FetchResult<ReqT extends NitroFetchRequest, M extends AvailableRouterMethod<ReqT>> = TypedInternalResponse<ReqT, unknown, Lowercase<M>> → type FetchResult<ReqT, M extends AnyServerRouteMethod> = TypedServerResponse<ReqT, unknown, M> - added:
call CreateUseFetch<FResT = void, FReqT extends TypedFetchRequest = TypedFetchRequest, const FMethod extends AnyServerRouteMethod = 'get', const FBaseURL extends string = FResT extends void ? '' : string, F_ResT = FResT extends void ? FetchResult<FReqT, FMethod> : FResT, FDataT = F_ResT, FPickKeys extends KeysOf<FDataT> = KeysOf<FDataT>, FDefaultT = undefined, const FAddons extends ReadonlyArray<… - added:
call CreateUseFetch<FSchema, FResT = void, FReqT extends DeclaredFetchRequest<FSchema> = DeclaredFetchRequest<FSchema>, const FMethod extends AnyServerRouteMethod = 'get', F_ResT = FResT extends void ? DeclaredFetchResult<FSchema, FReqT, FMethod> : FResT, FDataT = F_ResT, FPickKeys extends KeysOf<FDataT> = KeysOf<FDataT>, FDefaultT = undefined, const FAddons extends ReadonlyArray<UseFetchAddon<an… - added:
call DeclaredUseFetch<ReqT extends string, const Method extends AnyServerRouteMethod = 'get'>(request: (Ref<ReqT> | ReqT | (() => ReqT)) & ValidDeclaredFetchPath<Schema, ReqT, Method>, opts?: { method?: Method }, key?: string, ...resolves: unknown extends ValidDeclaredFetchPath<Schema, ReqT, Method> ? [never] : []): AsyncData<unknown, NuxtError<unknown> | undefined> - added:
call DeclaredUseFetch<ResT = void, ErrorT = NuxtError<unknown>, ReqT extends DeclaredFetchRequest<Schema> = DeclaredFetchRequest<Schema>, const Method extends AnyServerRouteMethod = ResT extends void ? 'get' : AnyServerRouteMethod, _ResT = ResT extends void ? DeclaredFetchResult<Schema, ReqT, Method> : ResT, DataT = FetchFactoryDataT<FDataT, _ResT>, PickKeys extends KeysOf<DataT> = KeysOf<DataT>,… - added:
call DeclaredUseFetch<ResT = void, ErrorT = NuxtError<unknown>, ReqT extends DeclaredFetchRequest<Schema> = DeclaredFetchRequest<Schema>, const Method extends AnyServerRouteMethod = ResT extends void ? 'get' : AnyServerRouteMethod, _ResT = ResT extends void ? DeclaredFetchResult<Schema, ReqT, Method> : ResT, DataT = _ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = FetchFactoryDef… - added:
call DeclaredUseFetch<ResT = void, ErrorT = NuxtError<unknown>, ReqT extends DeclaredFetchRequest<Schema> = DeclaredFetchRequest<Schema>, const Method extends AnyServerRouteMethod = ResT extends void ? 'get' : AnyServerRouteMethod, _ResT = ResT extends void ? DeclaredFetchResult<Schema, ReqT, Method> : ResT, DataT = _ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = undefined>(requ… - added:
call UseFetch<ResT = void, ErrorT = NuxtError<unknown>, ReqT extends TypedFetchPathInput = TypedFetchPathInput, const Method extends AnyServerRouteMethod = ResT extends void ? 'get' : AnyServerRouteMethod, const BaseURL extends string = FallbackBaseURL<ReqT, TypedFetchPathInput>, _ReqT = ResolvedFetchPath<ReqT, EffectiveBaseURL<FBaseURL, BaseURL>>, _ResT = ResT extends void ? FetchResult<_ReqT, M… - added:
call UseFetch<ResT = void, ErrorT = NuxtError<unknown>, ReqT extends TypedFetchRequest = TypedFetchRequest, const Method extends AnyServerRouteMethod = ResT extends void ? 'get' : AnyServerRouteMethod, const BaseURL extends string = FallbackBaseURL<ReqT, TypedFetchRequest>, _ReqT = ResolvedFetchPath<ReqT, EffectiveBaseURL<FBaseURL, BaseURL>>, _ResT = ResT extends void ? FetchResult<_ReqT, Method>… - added:
const createUseFetch: CreateUseFetch - added:
const useFetch: UseFetch - added:
const useLazyFetch: UseFetch - added:
export { AnyServerRouteMethod } - added:
export { AvailableServerRouteMethod } - added:
export { ServerRouteMethod } - added:
export { ServerRouteMethods } - added:
export { TypedFetch as $Fetch } - added:
export { TypedFetch } - added:
export { TypedFetchOptions } - added:
export { TypedFetchRequest } - added:
export { TypedServerError } - added:
export { TypedServerResponse } - added:
function _createUseFetch<FResT = void, FReqT extends TypedFetchRequest = TypedFetchRequest, const FMethod extends AnyServerRouteMethod = 'get', F_ResT = FResT extends void ? FetchResult<FReqT, FMethod> : FResT, FDataT = F_ResT, FPickKeys extends KeysOf<FDataT> = KeysOf<FDataT>, FDefaultT = undefined>(options?: Partial<UseFetchOptions<F_ResT, FDataT, FPickKeys, FDefaultT, FReqT & string, FMethod>>… - added:
interface CreateUseFetch - added:
interface DeclaredUseFetch<Schema, FDataT = unknown, FPickKeys extends KeysOf<FDataT> = never[], FDefaultT = undefined, FAddonOpts = {}, FAddonExt = {}> - added:
interface DeclaredUseFetchOptions<Schema, ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = undefined, R = string, M extends AnyServerRouteMethod = 'get'> extends Omit<AsyncDataOptions<ResT, DataT, PickKeys, DefaultT>, 'watch'>, Omit<ComputedOptions<DeclaredFetchOptionsBase<Schema, R, M, DataT>>, 'timeout'> - added:
interface DeclaredUseFetchOptionsWithTransform<Schema, ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = undefined, R = string, M extends AnyServerRouteMethod = 'get'> extends Omit<DeclaredUseFetchOptions<Schema, ResT, DataT, PickKeys, DefaultT, R, M>, 'transform'> - added:
interface UseFetch<FDataT = unknown, FPickKeys extends KeysOf<FDataT> = never[], FDefaultT = undefined, FBaseURL extends string = '', FAddonOpts = {}, FAddonExt = {}> - added:
interface UseFetchOptionsWithTransform<ResT, DataT = ResT, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = undefined, R extends string = string, M extends AnyServerRouteMethod = 'get', B extends string = string> extends Omit<UseFetchOptions<ResT, DataT, PickKeys, DefaultT, R, M, B>, 'transform'> - added:
property DeclaredUseFetchOptions.$fetch?: TypedFetch - added:
property DeclaredUseFetchOptions.key?: MaybeRefOrGetter<string> - added:
property DeclaredUseFetchOptions.routes?: Schema - added:
property DeclaredUseFetchOptions.watch?: MultiWatchSources | false - added:
property DeclaredUseFetchOptionsWithTransform.transform: _Transform<ResT, DataT> - added:
property UseFetchOptionsWithTransform.transform: _Transform<ResT, DataT> - added:
type DeclaredFetchResult<Schema, ReqT, M extends AnyServerRouteMethod> = DeclaredServerResponse<Schema, ReqT, unknown, M>
- removed:
export { injectHead } from '#unhead/composables' - removed:
export { useHead } from '#unhead/composables' - removed:
export { useHeadSafe } from '#unhead/composables' - removed:
export { useSeoMeta } from '#unhead/composables' - removed:
export { useServerHead } from '#unhead/composables' - removed:
export { useServerHeadSafe } from '#unhead/composables' - removed:
export { useServerSeoMeta } from '#unhead/composables' - added:
export { injectHead } - added:
export { useHead } - added:
export { useHeadSafe } - added:
export { useSeoMeta } - added:
export { useServerHead } - added:
export { useServerHeadSafe } - added:
export { useServerSeoMeta }
- changed:
const useId: typeof _useId → const useId: typeof useId$1
- removed:
export { AddRouteMiddlewareOptions } from './router' - removed:
export { AsyncData } from './asyncData' - removed:
export { AsyncDataOptions } from './asyncData' - removed:
export { AsyncDataRequestStatus } from './asyncData' - removed:
export { CookieOptions } from './cookie' - removed:
export { CookieRef } from './cookie' - removed:
export { FetchResult } from './fetch' - removed:
export { NuxtAppManifest } from './manifest' - removed:
export { NuxtAppManifestMeta } from './manifest' - removed:
export { NuxtError } from './error' - removed:
export { Politeness } from './route-announcer' - removed:
export { ReloadNuxtAppOptions } from './chunk' - removed:
export { RouteMiddleware } from './router' - removed:
export { UseFetchOptions } from './fetch' - removed:
export { abortNavigation } from './router' - removed:
export { addRouteMiddleware } from './router' - removed:
export { callOnce } from './once' - removed:
export { clearError } from './error' - removed:
export { clearNuxtData } from './asyncData' - removed:
export { clearNuxtState } from './state' - removed:
export { createError } from './error' - removed:
export { defineNuxtComponent } from './component' - removed:
export { defineNuxtRouteMiddleware } from './router' - removed:
export { definePayloadReducer } from './payload' - removed:
export { definePayloadReviver } from './payload' - removed:
export { getAppManifest } from './manifest' - removed:
export { getRouteRules } from './manifest' - removed:
export { injectHead } from './head' - removed:
export { isNuxtError } from './error' - removed:
export { isPrerendered } from './payload' - removed:
export { loadPayload } from './payload' - removed:
export { navigateTo } from './router' - removed:
export { onBeforeRouteLeave } from './router' - removed:
export { onBeforeRouteUpdate } from './router' - removed:
export { onNuxtReady } from './ready' - removed:
export { onPrehydrate } from './ssr' - removed:
export { prefetchComponents } from './preload' - removed:
export { preloadComponents } from './preload' - removed:
export { preloadPayload } from './payload' - removed:
export { preloadRouteComponents } from './preload' - removed:
export { prerenderRoutes } from './ssr' - removed:
export { refreshCookie } from './cookie' - removed:
export { refreshNuxtData } from './asyncData' - removed:
export { reloadNuxtApp } from './chunk' - removed:
export { setPageLayout } from './router' - removed:
export { setResponseStatus } from './ssr' - removed:
export { showError } from './error' - removed:
export { useAsyncData } from './asyncData' - removed:
export { useCookie } from './cookie' - removed:
export { useError } from './error' - removed:
export { useFetch } from './fetch' - removed:
export { useHead } from './head' - removed:
export { useHeadSafe } from './head' - removed:
export { useHydration } from './hydrate' - removed:
export { useId } from './id' - removed:
export { useLazyAsyncData } from './asyncData' - removed:
export { useLazyFetch } from './fetch' - removed:
export { useNuxtData } from './asyncData' - removed:
export { usePreviewMode } from './preview' - removed:
export { useRequestEvent } from './ssr' - removed:
export { useRequestFetch } from './ssr' - removed:
export { useRequestHeaders } from './ssr' - removed:
export { useRequestURL } from './url' - removed:
export { useResponseHeader } from './ssr' - removed:
export { useRoute } from './router' - removed:
export { useRouteAnnouncer } from './route-announcer' - removed:
export { useRouter } from './router' - removed:
export { useRuntimeHook } from './runtime-hook' - removed:
export { useSeoMeta } from './head' - removed:
export { useServerHead } from './head' - removed:
export { useServerHeadSafe } from './head' - removed:
export { useServerSeoMeta } from './head' - removed:
export { useState } from './state' - added:
export { AddRouteMiddlewareOptions } - added:
export { AnnouncerPoliteness } - added:
export { AnyServerRouteMethod } - added:
export { AsyncData } - added:
export { AsyncDataAddonInstance } - added:
export { AsyncDataHandlerContext } - added:
export { AsyncDataMiddleware } - added:
export { AsyncDataOptions } - added:
export { AsyncDataOptionsWithTransform } - added:
export { AsyncDataRequestStatus } - added:
export { AsyncDataWithExtensions } - added:
export { AugmentedAsyncData } - added:
export { AvailableServerRouteMethod } - added:
export { CookieOptions } - added:
export { CookieRef } - added:
export { DeclaredUseFetch } - added:
export { Early404IncompatibleRouterMethods } - added:
export { FetchResult } - added:
export { KeysOf } - added:
export { LayoutName } - added:
export { LoadingIndicator } - added:
export { LoadingIndicatorOpts } - added:
export { MergedAddonsExtensions } - added:
export { NuxtAnnouncer } - added:
export { NuxtAnnouncerOpts } - added:
export { NuxtAppManifest } - added:
export { NuxtAppManifestMeta } - added:
export { NuxtError } - added:
export { NuxtRequestEvent } - added:
export { PickFrom } - added:
export { Politeness } - added:
export { ReloadNuxtAppOptions } - added:
export { RouteMiddleware } - added:
export { ServerRouteMethod } - added:
export { ServerRouteMethods } - added:
export { TypedFetch as $Fetch } - added:
export { TypedFetch } - added:
export { TypedFetchOptions } - added:
export { TypedFetchRequest } - added:
export { TypedServerError } - added:
export { TypedServerResponse } - added:
export { UseAsyncData } - added:
export { UseAsyncDataAddon } - added:
export { UseAsyncDataAddonOptions } - added:
export { UseCookieOptions } - added:
export { UseFetch } - added:
export { UseFetchAddon } - added:
export { UseFetchAddonOptions } - added:
export { UseFetchOptions } - added:
export { abortNavigation } - added:
export { addRouteMiddleware } - added:
export { callOnce } - added:
export { clearError } - added:
export { clearNuxtData } - added:
export { clearNuxtState } - added:
export { createError } - added:
export { defineNuxtComponent } - added:
export { defineNuxtRouteMiddleware } - added:
export { definePayloadReducer } - added:
export { definePayloadReviver } - added:
export { defineUseAsyncDataAddon } - added:
export { defineUseFetchAddon } - added:
export { getAppManifest } - added:
export { getRouteRules } - added:
export { injectHead } - added:
export { isNuxtError } - added:
export { isPrerendered } - added:
export { loadPayload } - added:
export { navigateTo } - added:
export { onBeforeRouteLeave } - added:
export { onBeforeRouteUpdate } - added:
export { onNuxtReady } - added:
export { onPrehydrate } - added:
export { prefetchComponents } - added:
export { preloadComponents } - added:
export { preloadPayload } - added:
export { preloadRouteComponents } - added:
export { prerenderRoutes } - added:
export { refreshCookie } - added:
export { refreshNuxtData } - added:
export { reloadNuxtApp } - added:
export { setPageLayout } - added:
export { setResponseStatus } - added:
export { showError } - added:
export { useAnnouncer } - added:
export { useAsyncData } - added:
export { useCookie } - added:
export { useError } - added:
export { useFetch } - added:
export { useHead } - added:
export { useHeadSafe } - added:
export { useHydration } - added:
export { useId } - added:
export { useLayout } - added:
export { useLazyAsyncData } - added:
export { useLazyFetch } - added:
export { useLoadingIndicator } - added:
export { useNuxtData } - added:
export { usePreviewMode } - added:
export { useRequestEvent } - added:
export { useRequestFetch } - added:
export { useRequestHeader } - added:
export { useRequestHeaders } - added:
export { useRequestURL } - added:
export { useResponseHeader } - added:
export { useRoute } - added:
export { useRouteAnnouncer } - added:
export { useRouter } - added:
export { useRuntimeHook } - added:
export { useSeoMeta } - added:
export { useServerHead } - added:
export { useServerHeadSafe } - added:
export { useServerSeoMeta } - added:
export { useState }
- added:
function resolveLayoutName(route: Pick<RouteLocationNormalizedLoaded, 'meta' | 'path'> | undefined, name?: unknown): LayoutName - added:
function useLayout(): Readonly<ComputedRef<LayoutName>> - added:
type LayoutName = keyof NuxtLayouts | 'default' | false
- added:
const neverHydratedSymbol: InjectionKey<boolean>
- changed:
function getRouteRules(event: H3Event): NitroRouteRules → function getRouteRules(event: NuxtRequestEvent): AppRouteRules
- added:
export { PageMeta } - added:
export { definePageMeta } - added:
export { defineRouteRules }
- changed:
function getNuxtClientPayload(): Promise<Partial<NuxtPayload> | null> → function getNuxtClientPayload(): Promise<NuxtPayload | Partial<NuxtPayload> | null>
- changed:
const prefetchComponents: (components: string | string[]) => Promise<void> | undefined → const prefetchComponents: (components: NuxtAppLiterals['componentName'] | Array<NuxtAppLiterals['componentName']>) => Promise<void> | undefined - changed:
const preloadComponents: (components: string | string[]) => Promise<void> → const preloadComponents: (components: NuxtAppLiterals['componentName'] | Array<NuxtAppLiterals['componentName']>) => Promise<void> - changed:
function _loadAsyncComponent(component: Component): any → function _loadAsyncComponent(component: Component): unknown - changed:
function preloadRouteComponents(to: RouteLocationRaw, router?: Router & { _routePreloaded?: Set<string>; _preloadPromises?: Array<Promise<unknown>> }): Promise<void> → function preloadRouteComponents(to: RouteLocationRaw, router?: Router): Promise<void> - added:
function prefetchRouteComponents(to: RouteLocationRaw, router: Router): void
- changed:
function usePreviewMode<S extends EnteredState>(options?: PreviewModeOptions<S>): { enabled: import('vue').Ref<boolean, boolean>; state: S extends void ? Preview['state'] : (NonNullable<S> & Preview['state']) } → function usePreviewMode<S extends EnteredState>(options?: PreviewModeOptions<S>): { enabled: Ref<boolean>; state: S extends void ? Preview['state'] : (NonNullable<S> & Preview['state']) }
- changed:
function useRouteAnnouncer(opts?: Partial<NuxtRouteAnnouncerOpts>): Omit<RouteAnnouncer, '_cleanup'> → function useRouteAnnouncer(opts?: NuxtRouteAnnouncerOpts): Omit<RouteAnnouncer, '_cleanup'> - changed:
type RouteAnnouncer = { message: Ref<string>; politeness: Ref<Politeness>; set: (message: string, politeness: Politeness) => void; polite: (message: string) => void; assertive: (mes… → type RouteAnnouncer = { message: Ref<string>; politeness: Ref<Politeness>; set: (message: string, politeness?: Politeness) => void; polite: (message: string) => void; assertive: (me…
- removed:
const navigateTo: (to: RouteLocationRaw | undefined | null, options?: NavigateToOptions) => Promise<void | NavigationFailure | false> | false | void | RouteLocationRaw - changed:
const setPageLayout: <Layout extends keyof NuxtLayouts>(layout: unknown extends Layout ? string : Layout, props?: typeof layout extends Layout ? MakeSerializableObject<NuxtLayouts[… → const setPageLayout: <Layout extends keyof NuxtLayouts | false>(layout: unknown extends Layout ? string | false : Layout, props?: Layout extends keyof NuxtLayouts ? MakeSerializabl… - changed:
const useRoute: typeof _useRoute → const useRoute: typeof useRoute$1 - changed:
const useRouter: typeof _useRouter → const useRouter: NuxtUseRouter - changed:
type OpenOptions = { target: '_blank' | '_parent' | '_self' | '_top' | (string & {}); windowFeatures?: OpenWindowFeatures } → type OpenOptions = { target?: '_blank' | '_parent' | '_self' | '_top' | (string & {}); windowFeatures?: OpenWindowFeatures } - added:
function _navigateToEarlyReturn(): (_ctx?: unknown, push?: unknown) => null | undefined - added:
function navigateTo(to: RouteLocationRaw | undefined | null, options?: NavigateToOptions): Promise<void | NavigationFailure | false> | false | void - added:
interface Early404IncompatibleRouterMethods
- changed:
function useRuntimeHook<THookName extends keyof RuntimeNuxtHooks>(name: THookName, fn: RuntimeNuxtHooks[THookName] extends HookCallback ? RuntimeNuxtHooks[THookName] : never): void → function useRuntimeHook<THookName extends keyof RuntimeNuxtHooks>(name: THookName, fn: RuntimeNuxtHooks[THookName] extends NuxtHookCallback ? RuntimeNuxtHooks[THookName] : never): void
- added:
function onServerPrefetch(target?: ComponentInternalInstance | null): void
- changed:
function setResponseStatus(event: H3Event, code?: number, message?: string): void → function setResponseStatus(event: NuxtRequestEvent$1, code?: number, message?: string): void - changed:
function useRequestEvent(nuxtApp?: NuxtApp): H3Event<import('h3').EventHandlerRequest> | undefined → function useRequestEvent(nuxtApp?: NuxtApp): NuxtRequestEvent$1 | undefined - changed:
function useRequestFetch(): H3Event$Fetch | typeof globalThis.$fetch → function useRequestFetch(): TypedFetch - changed:
function useRequestHeader(header: string): string | undefined → function useRequestHeader(header: string): string | null | undefined - changed:
function useResponseHeader(header: string): import('vue').Ref<any, any> → function useResponseHeader(header: string): import('vue').WritableComputedRef<string | number | string[] | undefined> | import('vue').Ref<string | number | string[] | undefined> - added:
export { NuxtRequestEvent }
- changed:
function clearNuxtState(keys?: string | string[] | ((key: string) => boolean)): void → function clearNuxtState(keys?: string | string[] | ((key: string) => boolean), opts?: ClearNuxtStateOptions): void - added:
interface ClearNuxtStateOptions - added:
property ClearNuxtStateOptions.reset?: boolean
- added:
type DeepPartial<T> = T extends Function ? T : T extends Record<string, any> ? { [P in keyof T]?: DeepPartial<T[P]> } : T
- removed:
type DedupeOption = boolean | 'cancel' | 'defer' - removed:
type DefaultAsyncDataErrorValue = null - removed:
type DefaultAsyncDataValue = null - removed:
type DefaultErrorValue = null
- added:
const prodReporters: readonly [DiagnosticReporter] - added:
const reporters: readonly [DiagnosticReporter<{ method?: import('nostics').ConsoleMethod }, any>, DiagnosticReporter] | readonly [DiagnosticReporter<{ method?: import('nostics'… - added:
function docsBase(code: string): string
- added:
const appDiagnostics: import('nostics').Diagnostics<Record<string, import('nostics').DiagnosticDefinition<any, Record<string, unknown>>>, readonly [import('nostics').DiagnosticRepor…
- added:
const dataDiagnostics: import('nostics').Diagnostics<Record<string, import('nostics').DiagnosticDefinition<any, Record<string, unknown>>>, readonly [import('nostics').DiagnosticRepor…
- added:
const unheadDiagnostics: import('nostics').Diagnostics<Record<string, import('nostics').DiagnosticDefinition<any, Record<string, unknown>>>, readonly [import('nostics').DiagnosticRepor…
- added:
const manifestDiagnostics: import('nostics').Diagnostics<Record<string, import('nostics').DiagnosticDefinition<any, Record<string, unknown>>>, readonly [import('nostics').DiagnosticRepor…
- added:
const navigationDiagnostics: import('nostics').Diagnostics<Record<string, import('nostics').DiagnosticDefinition<any, Record<string, unknown>>>, readonly [import('nostics').DiagnosticRepor…
- added:
const renderDiagnostics: import('nostics').Diagnostics<Record<string, import('nostics').DiagnosticDefinition<any, Record<string, unknown>>>, readonly [import('nostics').DiagnosticRepor…
- added:
function isRecordRendered(record: RouteRecordNormalized): boolean - added:
function trackRenderedRecord(record: RouteRecordNormalized): () => void
- added:
const stateDiagnostics: import('nostics').Diagnostics<Record<string, import('nostics').DiagnosticDefinition<any, Record<string, unknown>>>, readonly [import('nostics').DiagnosticRepor…
- removed:
const _default: Entry - removed:
default _default - added:
const default: Entry
- removed:
const _default: () => void - removed:
default _default - added:
const default: () => void
- removed:
const entry: Entry | (() => Promise<Entry>) - removed:
default entry - added:
const default: Entry | (() => Promise<Entry>)
- added:
const NUXT_ERROR_SIGNATURE: '__nuxt_error' - added:
const THROWN_CONTEXT: unique symbol - added:
const THROWN_VALUE: unique symbol - added:
const createError: <DataT = unknown>(error: string | Error | Partial<NuxtError<DataT>>) => NuxtError<DataT> - added:
const createErrorFromThrown: (thrown: unknown, context?: ThrownContext) => NuxtError - added:
const isNuxtError: <DataT = unknown>(error: unknown) => error is NuxtError<DataT> - added:
interface NuxtError<DataT = unknown> extends Error - added:
interface ThrownContext - added:
method NuxtError.toJSON(): NuxtErrorJSON<DataT> - added:
property NuxtError.data?: DataT - added:
property NuxtError.error?: true - added:
property NuxtError.fatal: boolean - added:
property NuxtError.status?: number - added:
property NuxtError.statusCode?: number - added:
property NuxtError.statusMessage?: string - added:
property NuxtError.statusText?: string - added:
property NuxtError.unhandled: boolean - added:
property ThrownContext.instance?: unknown - added:
property ThrownContext.route?: unknown - added:
readonly property NuxtError.__nuxt_error?: true - added:
type NuxtErrorDetails<DataT = unknown> = Partial<NuxtError<DataT>>
- removed:
export { AddRouteMiddlewareOptions } from './composables/index' - removed:
export { AsyncData } from './composables/index' - removed:
export { AsyncDataOptions } from './composables/index' - removed:
export { AsyncDataRequestStatus } from './composables/index' - removed:
export { CookieOptions } from './composables/index' - removed:
export { CookieRef } from './composables/index' - removed:
export { CreateOptions } from './nuxt' - removed:
export { FetchResult } from './composables/index' - removed:
export { NuxtApp } from './nuxt' - removed:
export { NuxtAppLiterals } from './types' - removed:
export { NuxtAppManifest } from './composables/index' - removed:
export { NuxtAppManifestMeta } from './composables/index' - removed:
export { NuxtError } from './composables/index' - removed:
export { NuxtIslandContext } from './types' - removed:
export { NuxtIslandResponse } from './types' - removed:
export { NuxtLayouts } from './types' - removed:
export { NuxtLinkOptions } from './components/index' - removed:
export { NuxtLinkProps } from './components/index' - removed:
export { NuxtPageProps } from './types' - removed:
export { NuxtPayload } from './nuxt' - removed:
export { NuxtPluginIndicator } from './nuxt' - removed:
export { NuxtRenderHTMLContext } from './types' - removed:
export { NuxtSSRContext } from './nuxt' - removed:
export { NuxtTimeProps } from './components/index' - removed:
export { ObjectPlugin } from './nuxt' - removed:
export { PageMeta } from './types' - removed:
export { Plugin } from './nuxt' - removed:
export { PluginEnvContext } from './nuxt' - removed:
export { PluginMeta } from './nuxt' - removed:
export { Politeness } from './composables/index' - removed:
export { ReloadNuxtAppOptions } from './composables/index' - removed:
export { ResolvedPluginMeta } from './nuxt' - removed:
export { RouteMiddleware } from './composables/index' - removed:
export { RuntimeNuxtHooks } from './nuxt' - removed:
export { UseFetchOptions } from './composables/index' - removed:
export { _getAppConfig } from './config' - removed:
export { abortNavigation } from './composables/index' - removed:
export { addRouteMiddleware } from './composables/index' - removed:
export { applyPlugin } from './nuxt' - removed:
export { applyPlugins } from './nuxt' - removed:
export { callOnce } from './composables/index' - removed:
export { callWithNuxt } from './nuxt' - removed:
export { cancelIdleCallback } from './compat/idle-callback' - removed:
export { clearError } from './composables/index' - removed:
export { clearNuxtData } from './composables/index' - removed:
export { clearNuxtState } from './composables/index' - removed:
export { createError } from './composables/index' - removed:
export { createNuxtApp } from './nuxt' - removed:
export { defineAppConfig } from './nuxt' - removed:
export { defineNuxtComponent } from './composables/index' - removed:
export { defineNuxtLink } from './components/index' - removed:
export { defineNuxtPlugin } from './nuxt' - removed:
export { defineNuxtRouteMiddleware } from './composables/index' - removed:
export { definePayloadPlugin } from './nuxt' - removed:
export { definePayloadReducer } from './composables/index' - removed:
export { definePayloadReviver } from './composables/index' - removed:
export { getAppManifest } from './composables/index' - removed:
export { getRouteRules } from './composables/index' - removed:
export { injectHead } from './composables/index' - removed:
export { isNuxtError } from './composables/index' - removed:
export { isNuxtPlugin } from './nuxt' - removed:
export { isPrerendered } from './composables/index' - removed:
export { loadPayload } from './composables/index' - removed:
export { navigateTo } from './composables/index' - removed:
export { onBeforeRouteLeave } from './composables/index' - removed:
export { onBeforeRouteUpdate } from './composables/index' - removed:
export { onNuxtReady } from './composables/index' - removed:
export { onPrehydrate } from './composables/index' - removed:
export { prefetchComponents } from './composables/index' - removed:
export { preloadComponents } from './composables/index' - removed:
export { preloadPayload } from './composables/index' - removed:
export { preloadRouteComponents } from './composables/index' - removed:
export { prerenderRoutes } from './composables/index' - removed:
export { refreshCookie } from './composables/index' - removed:
export { refreshNuxtData } from './composables/index' - removed:
export { registerPluginHooks } from './nuxt' - removed:
export { reloadNuxtApp } from './composables/index' - removed:
export { requestIdleCallback } from './compat/idle-callback' - removed:
export { setPageLayout } from './composables/index' - removed:
export { setResponseStatus } from './composables/index' - removed:
export { showError } from './composables/index' - removed:
export { tryUseNuxtApp } from './nuxt' - removed:
export { updateAppConfig } from './config' - removed:
export { useAppConfig } from './config' - removed:
export { useAsyncData } from './composables/index' - removed:
export { useCookie } from './composables/index' - removed:
export { useError } from './composables/index' - removed:
export { useFetch } from './composables/index' - removed:
export { useHead } from './composables/index' - removed:
export { useHeadSafe } from './composables/index' - removed:
export { useHydration } from './composables/index' - removed:
export { useId } from './composables/index' - removed:
export { useLazyAsyncData } from './composables/index' - removed:
export { useLazyFetch } from './composables/index' - removed:
export { useNuxtApp } from './nuxt' - removed:
export { useNuxtData } from './composables/index' - removed:
export { usePreviewMode } from './composables/index' - removed:
export { useRequestEvent } from './composables/index' - removed:
export { useRequestFetch } from './composables/index' - removed:
export { useRequestHeaders } from './composables/index' - removed:
export { useRequestURL } from './composables/index' - removed:
export { useResponseHeader } from './composables/index' - removed:
export { useRoute } from './composables/index' - removed:
export { useRouteAnnouncer } from './composables/index' - removed:
export { useRouter } from './composables/index' - removed:
export { useRuntimeConfig } from './nuxt' - removed:
export { useRuntimeHook } from './composables/index' - removed:
export { useSeoMeta } from './composables/index' - removed:
export { useServerHead } from './composables/index' - removed:
export { useServerHeadSafe } from './composables/index' - removed:
export { useServerSeoMeta } from './composables/index' - removed:
export { useState } from './composables/index' - added:
export { AddRouteMiddlewareOptions } - added:
export { AnnouncerPoliteness } - added:
export { AnyFetchPath } - added:
export { AnyHTTPMethod } - added:
export { AnyServerRouteMethod } - added:
export { AsyncData } - added:
export { AsyncDataAddonInstance } - added:
export { AsyncDataHandlerContext } - added:
export { AsyncDataMiddleware } - added:
export { AsyncDataOptions } - added:
export { AsyncDataRequestStatus } - added:
export { AsyncDataWithExtensions } - added:
export { AugmentedAsyncData } - added:
export { AvailableServerRouteMethod } - added:
export { CookieOptions } - added:
export { CookieRef } - added:
export { CreateOptions } - added:
export { DeclaredUseFetch } - added:
export { DevServerLog } - added:
export { DynamicParam } - added:
export { Early404IncompatibleRouterMethods } - added:
export { Endpoint } - added:
export { FetchResult } - added:
export { HTTPMethod } - added:
export { JsonPrimitive } - added:
export { KeysOf } - added:
export { LayoutName } - added:
export { LoadingIndicator } - added:
export { LoadingIndicatorOpts } - added:
export { MergedAddonsExtensions } - added:
export { NonJsonPrimitive } - added:
export { NuxtAnnouncer } - added:
export { NuxtAnnouncerOpts } - added:
export { NuxtApp } - added:
export { NuxtAppLiterals } - added:
export { NuxtAppManifest } - added:
export { NuxtAppManifestMeta } - added:
export { NuxtError } - added:
export { NuxtIslandContext } - added:
export { NuxtIslandResponse } - added:
export { NuxtLayouts } - added:
export { NuxtLinkOptions } - added:
export { NuxtLinkProps } - added:
export { NuxtPageProps } - added:
export { NuxtPayload } - added:
export { NuxtPluginIndicator } - added:
export { NuxtRenderChunkContext } - added:
export { NuxtRenderCloseContext } - added:
export { NuxtRenderHTMLContext } - added:
export { NuxtRenderRouteContext } - added:
export { NuxtRequestEvent } - added:
export { NuxtSSRContext } - added:
export { NuxtTimeProps } - added:
export { ObjectPlugin } - added:
export { PageMeta } - added:
export { PickFrom } - added:
export { Plugin } - added:
export { PluginEnvContext } - added:
export { PluginMeta } - added:
export { Politeness } - added:
export { ReloadNuxtAppOptions } - added:
export { ResolvedPluginMeta } - added:
export { RouteMiddleware } - added:
export { RuntimeNuxtHooks } - added:
export { Serialize } - added:
export { SerializeObject } - added:
export { SerializeTuple } - added:
export { SerializedErrorCause } - added:
export { ServerRouteMethod } - added:
export { ServerRouteMethods } - added:
export { TypedFetch as $Fetch } - added:
export { TypedFetch } - added:
export { TypedFetchErrorBody } - added:
export { TypedFetchMethods } - added:
export { TypedFetchOptions } - added:
export { TypedFetchRequest } - added:
export { TypedFetchRequestBody } - added:
export { TypedFetchRequestHeaders } - added:
export { TypedFetchRequestQuery } - added:
export { TypedFetchRequires } - added:
export { TypedFetchResponseBody } - added:
export { TypedFetchResponseHeaders } - added:
export { TypedServerError } - added:
export { TypedServerResponse } - added:
export { UseAsyncData } - added:
export { UseAsyncDataAddon } - added:
export { UseAsyncDataAddonOptions } - added:
export { UseCookieOptions } - added:
export { UseFetch } - added:
export { UseFetchAddon } - added:
export { UseFetchAddonOptions } - added:
export { UseFetchOptions } - added:
export { ValidFetchInput } - added:
export { WildcardParam } - added:
export { _NuxtAugments } - added:
export { _getAppConfig } - added:
export { abortNavigation } - added:
export { addRouteMiddleware } - added:
export { applyPlugin } - added:
export { applyPlugins } - added:
export { callOnce } - added:
export { callWithNuxt } - added:
export { cancelIdleCallback } - added:
export { clearError } - added:
export { clearNuxtData } - added:
export { clearNuxtState } - added:
export { createError } - added:
export { createNuxtApp } - added:
export { defineAppConfig } - added:
export { defineNuxtComponent } - added:
export { defineNuxtLink } - added:
export { defineNuxtPlugin } - added:
export { defineNuxtRouteMiddleware } - added:
export { definePayloadPlugin } - added:
export { definePayloadReducer } - added:
export { definePayloadReviver } - added:
export { defineUseAsyncDataAddon } - added:
export { defineUseFetchAddon } - added:
export { getAppManifest } - added:
export { getIslandHash } - added:
export { getRouteRules } - added:
export { hashKey } - added:
export { injectHead } - added:
export { isNuxtError } - added:
export { isNuxtPlugin } - added:
export { isPrerendered } - added:
export { loadPayload } - added:
export { navigateTo } - added:
export { onBeforeRouteLeave } - added:
export { onBeforeRouteUpdate } - added:
export { onNuxtReady } - added:
export { onPrehydrate } - added:
export { prefetchComponents } - added:
export { preloadComponents } - added:
export { preloadPayload } - added:
export { preloadRouteComponents } - added:
export { prerenderRoutes } - added:
export { refreshCookie } - added:
export { refreshNuxtData } - added:
export { registerPluginHooks } - added:
export { reloadNuxtApp } - added:
export { requestIdleCallback } - added:
export { serializeIslandProps } - added:
export { setPageLayout } - added:
export { setResponseStatus } - added:
export { showError } - added:
export { tryUseNuxtApp } - added:
export { updateAppConfig } - added:
export { useAnnouncer } - added:
export { useAppConfig } - added:
export { useAsyncData } - added:
export { useCookie } - added:
export { useError } - added:
export { useFetch } - added:
export { useHead } - added:
export { useHeadSafe } - added:
export { useHydration } - added:
export { useId } - added:
export { useLayout } - added:
export { useLazyAsyncData } - added:
export { useLazyFetch } - added:
export { useLoadingIndicator } - added:
export { useNuxtApp } - added:
export { useNuxtData } - added:
export { usePreviewMode } - added:
export { useRequestEvent } - added:
export { useRequestFetch } - added:
export { useRequestHeader } - added:
export { useRequestHeaders } - added:
export { useRequestURL } - added:
export { useResponseHeader } - added:
export { useRoute } - added:
export { useRouteAnnouncer } - added:
export { useRouter } - added:
export { useRuntimeConfig } - added:
export { useRuntimeHook } - added:
export { useSeoMeta } - added:
export { useServerHead } - added:
export { useServerHeadSafe } - added:
export { useServerSeoMeta } - added:
export { useState }
- added:
function getContext<T>(key: string, opts: { asyncContext?: boolean }): NuxtAppContext<T> - added:
interface NuxtAppContext<T> - added:
property NuxtAppContext.call: <R>(instance: T, callback: () => R) => R - added:
property NuxtAppContext.callAsync: <R>(instance: T, callback: () => R | Promise<R>) => Promise<R> - added:
property NuxtAppContext.set: (instance?: T, replace?: boolean) => void - added:
property NuxtAppContext.tryUse: () => T | null - added:
property NuxtAppContext.unset: () => void - added:
property NuxtAppContext.use: () => T
- added:
function createPrefetchScheduler(options?: PrefetchSchedulerOptions): PrefetchScheduler - added:
interface PrefetchScheduler - added:
interface PrefetchTask - added:
property PrefetchScheduler.inspect?: () => { active: number; pending: string[] } - added:
property PrefetchScheduler.promote: (group: string) => void - added:
property PrefetchScheduler.reset: (retainGroup?: string) => void - added:
property PrefetchScheduler.resume: () => void - added:
property PrefetchScheduler.schedule: (task: PrefetchTask | PrefetchTask[]) => void - added:
property PrefetchTask.group?: string - added:
property PrefetchTask.key: string - added:
property PrefetchTask.priority: PrefetchPriority - added:
property PrefetchTask.run: (signal: AbortSignal, promoted: boolean) => unknown | Promise<unknown> - added:
property PrefetchTask.scope: 'navigation' | 'app' - added:
type PrefetchPriority = typeof PREFETCH_PRIORITIES[number]
- added:
function usePrefetchScheduler(nuxtApp?: NuxtApp): PrefetchScheduler
- added:
function canPrefetch(): boolean - added:
function prefetchGroup(url: string): string
- added:
function traceAsync<T, C>(name: string, context: C, fn: () => Promise<T> | T): Promise<T> | T - added:
function traceAsync<T, C>(name: string, context: C, fn: () => Promise<T>): Promise<T>
- added:
function getIslandHash(input: { name: string; props: Record<string, any> | string | null | undefined; context?: Record<string, any>; source?: string }): string
- removed:
const _default: import('../composables/router.js').RouteMiddleware - removed:
default _default - added:
const default: RouteMiddleware
- removed:
index NuxtPayload[key: string]: unknown - removed:
interface NuxtPayload - removed:
interface NuxtSSRContext extends SSRContext - removed:
interface PluginMeta - removed:
property CreateOptions.globalName?: NuxtApp['globalName'] - removed:
property NuxtPayload._errors: Record<string, NuxtError | DefaultAsyncDataErrorValue> - removed:
property NuxtPayload.config?: Pick<RuntimeConfig, 'public' | 'app'> - removed:
property NuxtPayload.data: Record<string, any> - removed:
property NuxtPayload.error?: NuxtError | DefaultErrorValue - removed:
property NuxtPayload.once: Set<string> - removed:
property NuxtPayload.path?: string - removed:
property NuxtPayload.prerenderedAt?: number - removed:
property NuxtPayload.serverRendered?: boolean - removed:
property NuxtPayload.state: Record<string, any> - removed:
property NuxtSSRContext.config?: Pick<RuntimeConfig, 'public' | 'app'> - removed:
property NuxtSSRContext.error?: boolean - removed:
property NuxtSSRContext.event: H3Event - removed:
property NuxtSSRContext.head: VueHeadClient - removed:
property NuxtSSRContext.islandContext?: NuxtIslandContext - removed:
property NuxtSSRContext.noSSR: boolean - removed:
property NuxtSSRContext.nuxt: _NuxtApp - removed:
property NuxtSSRContext.payload: Partial<NuxtPayload> - removed:
property NuxtSSRContext.runtimeConfig: RuntimeConfig - removed:
property NuxtSSRContext.teleports?: Record<string, string> - removed:
property NuxtSSRContext.url: string - removed:
property NuxtSSRContext['~lazyHydratedModules']?: Set<string> - removed:
property NuxtSSRContext['~payloadReducers']: Record<string, (data: any) => any> - removed:
property NuxtSSRContext['~preloadManifest']?: boolean - removed:
property NuxtSSRContext['~renderResponse']?: Partial<RenderResponse> - removed:
property NuxtSSRContext['~sharedPrerenderCache']?: { get<T = unknown>(key: string): Promise<T> | undefined; set<T>(key: string, value: Promise<T>): Promise<void> } - removed:
property PluginMeta.dependsOn?: NuxtAppLiterals['pluginName'][] - removed:
property PluginMeta.enforce?: 'pre' | 'default' | 'post' - removed:
property PluginMeta.name?: string - removed:
property PluginMeta.order?: number - removed:
property RuntimeNuxtHooks.'app:error': (err: any) => HookResult - removed:
property RuntimeNuxtHooks.'app:rendered': (ctx: AppRenderedContext) => HookResult - changed:
call Plugin(nuxt: _NuxtApp): Promise<void> | Promise<{ provide?: Injections }> | void | { provide?: Injections } → call Plugin(nuxt: NuxtApp): Promise<void> | Promise<{ provide?: Injections }> | void | { provide?: Injections } - changed:
function getNuxtAppCtx(id?: string): UseContext<NuxtApp> → function getNuxtAppCtx(id?: string): NuxtAppContext<NuxtApp> - changed:
interface RuntimeNuxtHooks → interface RuntimeNuxtHooks extends NuxtServerRuntimeHooks - changed:
property RuntimeNuxtHooks.'dev:ssr-logs': (logs: LogObject[]) => HookResult → property RuntimeNuxtHooks.'dev:ssr-logs': (logs: DevServerLog[]) => HookResult - added:
export { DevServerLog } - added:
export { NuxtPayload } - added:
export { NuxtSSRContext } - added:
export { PluginMeta } - added:
function isInComponentSetup(nuxtApp: NuxtApp): boolean
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- added:
const default: Plugin<Record<string, unknown>> & ObjectPlugin<Record<string, unknown>>
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const plugin: Plugin & ObjectPlugin - removed:
default plugin - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<{ route: Route; router: Router }> & import('../nuxt.js').ObjectPlugin<{ route: Route; router: Router }> - removed:
default _default - added:
const default: Plugin<{ route: Route; router: Router }> & ObjectPlugin<{ route: Route; router: Router }>
- changed:
function isValidIslandKey(key: string): boolean → function isValidIslandKey(key: unknown): key is string
- added:
const default: import('#app/nuxt').Plugin<Record<string, unknown>> & import('#app/nuxt').ObjectPlugin<Record<string, unknown>>
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: import('../nuxt.js').Plugin<Record<string, unknown>> & import('../nuxt.js').ObjectPlugin<Record<string, unknown>> - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
export { NuxtLayouts } from '../pages/runtime/index' - removed:
export { NuxtPageProps } from '../pages/runtime/index' - removed:
export { PageMeta } from '../pages/runtime/index' - added:
export { AnyFetchPath } - added:
export { AnyHTTPMethod } - added:
export { DynamicParam } - added:
export { Endpoint } - added:
export { HTTPMethod } - added:
export { NuxtLinkOptions } - added:
export { Serialize } - added:
export { TypedFetchErrorBody } - added:
export { TypedFetchMethods } - added:
export { TypedFetchRequestBody } - added:
export { TypedFetchRequestHeaders } - added:
export { TypedFetchRequestQuery } - added:
export { TypedFetchRequires } - added:
export { TypedFetchResponseBody } - added:
export { TypedFetchResponseHeaders } - added:
export { ValidFetchInput } - added:
export { WildcardParam } - added:
index DevServerLog[key: string]: unknown - added:
index NuxtPayload[key: string]: unknown - added:
index NuxtServerApp[key: string]: unknown - added:
interface DevServerLog - added:
interface NuxtError<DataT = unknown> extends Error - added:
interface NuxtErrorJSON<DataT = unknown> - added:
interface NuxtPayload - added:
interface NuxtRenderChunkContext - added:
interface NuxtRenderCloseContext - added:
interface NuxtRenderRouteContext - added:
interface NuxtSSRContext extends SSRContext - added:
interface NuxtServerApp - added:
interface NuxtServerRuntimeHooks - added:
interface PluginMeta - added:
method NuxtError.toJSON(): NuxtErrorJSON<DataT> - added:
property DevServerLog.additional?: string | string[] - added:
property DevServerLog.args: any[] - added:
property DevServerLog.date: Date - added:
property DevServerLog.level: number - added:
property DevServerLog.message?: string - added:
property DevServerLog.tag: string - added:
property DevServerLog.type: string - added:
property NuxtError.data?: DataT - added:
property NuxtError.error?: true - added:
property NuxtError.fatal: boolean - added:
property NuxtError.status?: number - added:
property NuxtError.statusCode?: number - added:
property NuxtError.statusMessage?: string - added:
property NuxtError.statusText?: string - added:
property NuxtError.unhandled: boolean - added:
property NuxtErrorJSON.data?: DataT - added:
property NuxtErrorJSON.message: string - added:
property NuxtErrorJSON.statusCode: number - added:
property NuxtErrorJSON.statusMessage?: string - added:
property NuxtIslandSlotResponse.scopeId?: string - added:
property NuxtPayload._errors: Record<string, NuxtError | undefined> - added:
property NuxtPayload.config?: Pick<RuntimeConfig, 'public' | 'app'> - added:
property NuxtPayload.data: Record<string, any> - added:
property NuxtPayload.error?: NuxtError | undefined - added:
property NuxtPayload.once: Set<string> - added:
property NuxtPayload.path?: string - added:
property NuxtPayload.prefetchLinks?: Array<Record<string, string | boolean>> - added:
property NuxtPayload.prerenderedAt?: number - added:
property NuxtPayload.serverRendered?: boolean - added:
property NuxtPayload.state: Record<string, any> - added:
property NuxtRenderChunkContext.chunk: Uint8Array - added:
property NuxtRenderChunkContext.index: number - added:
property NuxtRenderCloseContext.bodyAppend: string[] - added:
property NuxtRenderRouteContext.prefersStream: boolean - added:
property NuxtSSRContext.config?: Pick<RuntimeConfig, 'public' | 'app'> - added:
property NuxtSSRContext.error?: boolean - added:
property NuxtSSRContext.event: NuxtRequestEvent - added:
property NuxtSSRContext.head: VueHeadClient<UseHeadInput, SSRHeadPayload> - added:
property NuxtSSRContext.islandContext?: NuxtIslandContext - added:
property NuxtSSRContext.noSSR: boolean - added:
property NuxtSSRContext.nuxt: NuxtServerApp - added:
property NuxtSSRContext.payload: Partial<NuxtPayload> - added:
property NuxtSSRContext.runtimeConfig: RuntimeConfig - added:
property NuxtSSRContext.teleports?: Record<string, string> - added:
property NuxtSSRContext.url: string - added:
property NuxtSSRContext['~lazyHydratedModules']?: Set<string> - added:
property NuxtSSRContext['~neverHydratedModules']?: Set<string> - added:
property NuxtSSRContext['~payloadReducers']: Record<string, (data: any) => any> - added:
property NuxtSSRContext['~preloadManifest']?: boolean - added:
property NuxtSSRContext['~renderResponse']?: Partial<RenderResponse> - added:
property NuxtSSRContext['~sharedPrerenderCache']?: { get<T = unknown>(key: string): Promise<T> | undefined; set<T>(key: string, value: Promise<T>): Promise<void> } - added:
property NuxtServerApp.hooks: Pick<NuxtHookRegistry<NuxtServerRuntimeHooks>, 'hook' | 'callHook'> - added:
property NuxtServerApp.payload: NuxtPayload - added:
property NuxtServerApp.ssrContext?: NuxtSSRContext - added:
property NuxtServerRuntimeHooks.'app:error': (err: any) => HookResult - added:
property NuxtServerRuntimeHooks.'app:rendered': (ctx: AppRenderedContext) => HookResult - added:
property PluginMeta.dependsOn?: NuxtAppLiterals['pluginName'][] - added:
property PluginMeta.enforce?: 'pre' | 'default' | 'post' - added:
property PluginMeta.name?: string - added:
property PluginMeta.order?: number - added:
readonly property NuxtError.__nuxt_error?: true - added:
readonly property NuxtRenderRouteContext.canStream: boolean - added:
type SerializedErrorCause = string | number | boolean | null | { name: string; message: string; stack?: string; cause?: SerializedErrorCause }
- added:
type _NuxtAugmentsAnchor = NuxtApp
- added:
interface CookieSerializeOptions - added:
property CookieSerializeOptions.domain?: string - added:
property CookieSerializeOptions.encode?: (value: string) => string - added:
property CookieSerializeOptions.expires?: Date - added:
property CookieSerializeOptions.httpOnly?: boolean - added:
property CookieSerializeOptions.maxAge?: number - added:
property CookieSerializeOptions.partitioned?: boolean - added:
property CookieSerializeOptions.path?: string - added:
property CookieSerializeOptions.priority?: 'low' | 'medium' | 'high' - added:
property CookieSerializeOptions.sameSite?: boolean | 'lax' | 'strict' | 'none' - added:
property CookieSerializeOptions.secure?: boolean - added:
property CookieSerializeOptions.stringify?: (value: unknown) => string
- added:
call TypedFetch<T = DefaultT, R extends AnyFetchPath = AnyFetchPath, M extends AnyServerRouteMethod = unknown extends T ? 'get' : AnyServerRouteMethod, const B extends string = FallbackBaseURL<R, AnyFetchPath>, _R = ResolvedFetchPath<R, EffectiveBaseURL<DefaultB, B>>>(request: R & ValidTypedFetchPath<_R, M>, opts?: TypedFetchOptions<_R, M, B>): Promise<TypedServerResponse<_R, T, M>> - added:
call TypedFetch<T = DefaultT, R extends TypedFetchRequest = TypedFetchRequest, M extends AnyServerRouteMethod = unknown extends T ? 'get' : AnyServerRouteMethod, const B extends string = FallbackBaseURL<R, TypedFetchRequest>, _R = ResolvedFetchPath<R, EffectiveBaseURL<DefaultB, B>>>(request: R, opts?: TypedFetchOptions<_R, M, B>, ...unmatched: UnmatchedRouteArgs<_R, M>): Promise<TypedServerRespon… - added:
export { AnyHTTPMethod } - added:
interface TypedFetch<DefaultT = unknown, DefaultB extends string = ''> - added:
property TypedFetch.create: <T = DefaultT, const B extends string = unknown extends T ? DefaultB : string>(defaults: Omit<FetchOptions, 'baseURL'> & { baseURL?: B }) => TypedFetch<T, EffectiveBaseURL<DefaultB, B>> - added:
property TypedFetch.raw: { <T = DefaultT, R extends TypedFetchRequest = TypedFetchRequest, M extends AnyServerRouteMethod = unknown extends T ? 'get' : AnyServerRouteMethod, const B extends string = FallbackBaseURL<R, TypedFetchRequest>, _R = ResolvedFetchPath<R, EffectiveBaseURL<DefaultB, B>>>(request: R, opts?: TypedFetchOptions<_R, M, B>, ...unmatched: UnmatchedRouteArgs<_R, M>): Promise<Fetch… - added:
type AcceptedDeclaredMethod<Schema, Request, Method extends AnyServerRouteMethod> = unknown extends ValidDeclaredFetchPath<Schema, Request, Method> ? Method : never - added:
type AcceptedMethod<Request, Method extends AnyServerRouteMethod> = LegacyEngine extends true ? Extract<Method, InternalApiMethods<Request> | Uppercase<InternalApiMethods<Request>>> : unknown extends ValidTypedFetchPath<Request… - added:
type AnyServerRouteMethod = ServerRouteMethod | Uppercase<ServerRouteMethod> - added:
type AvailableServerRouteMethod<Request> = LegacyEngine extends true ? InternalApiMethods<Request> : Lowercase<Methods<Request> & string> - added:
type DeclaredFetchRequest<Schema> = TypedFetchPath<Schema> | (string & {}) | Exclude<FetchRequest, string> - added:
type DeclaredRequestShape<Schema, Request, Method extends AnyServerRouteMethod> = { body?: Declared<TypedFetchRequestBody<Schema, Request, Uppercase<Method>, never>, FetchOptions['body']>; query?: Declared<TypedFetchRequestQuery<Schema, Requ… - added:
type DeclaredServerError<Schema, Request, Method extends AnyServerRouteMethod = 'get'> = TypedFetchErrorBody<Schema, Request, Uppercase<Method>> - added:
type DeclaredServerResponse<Schema, Request, Default = unknown, Method extends AnyServerRouteMethod = 'get'> = Default extends string | boolean | number | null | void | object ? Default : TypedFetchResponseBody<Schema, Request, Uppercase<Method>> extends (infer Resolved… - added:
type EffectiveBaseURL<Instance extends string, Call extends string> = Call extends '' ? Instance : Call - added:
type FallbackBaseURL<Request, Default> = [Default] extends [Request] ? string : '' - added:
type RequiredDeclaredBody<Schema, Request, Method extends AnyServerRouteMethod> = RequiresDeclaredBody<Schema, Request, Method> extends true ? { body: unknown } : unknown - added:
type RequiredFetchBody<Request, Method extends AnyServerRouteMethod> = LegacyEngine extends true ? unknown : RequiresBody<Request, Method> extends true ? { body: unknown } : unknown - added:
type RequiredRequestBody<Request, Method extends AnyServerRouteMethod> = LegacyEngine extends true ? unknown : RequiresBody<Request, Method> extends true ? { body: TypedRequestShape<Request, Method>['body'] } : unknown - added:
type ResolvedFetchPath<Request, BaseURL extends string> = LegacyEngine extends true ? Request : BaseURL extends '' ? Request : string extends BaseURL ? string : Request extends `${string}://${string}` ? Request : Base… - added:
type ServerRouteMethod = 'get' | 'head' | 'patch' | 'post' | 'put' | 'delete' | 'connect' | 'options' | 'trace' - added:
type ServerRouteMethods<Request> = LegacyEngine extends true ? Uppercase<InternalApiMethods<Request>> : Methods<Request> - added:
type TypedFetchOptions<Request, Method extends AnyServerRouteMethod = 'get', BaseURL extends string = string> = Omit<FetchOptions, 'method' | 'body' | 'query' | 'params' | 'headers' | 'baseURL'> & { baseURL?: BaseURL } & { method?: AcceptedMethod<Request, Method> } & Typ… - added:
type TypedFetchPathInput = StrictFetchPaths extends true ? `/${string}` | `${string}://${string}` : (string & {}) - added:
type TypedFetchRequest = LegacyEngine extends true ? InternalApiRequest : Path | Exclude<FetchRequest, string> - added:
type TypedRequestShape<Request, Method extends AnyServerRouteMethod> = LegacyEngine extends true ? InternalApiRequestShape : { body?: Declared<RequestBody<Request, Uppercase<Method>, never>, FetchOptions['body']>; query?: Declared… - added:
type TypedServerError<Request, Method extends AnyServerRouteMethod = 'get'> = ErrorBody<Request, Uppercase<Method>> - added:
type TypedServerResponse<Request, Default = unknown, Method extends AnyServerRouteMethod = 'get'> = LegacyEngine extends true ? InternalApiResponse<Request, Default, Lowercase<Method>> : Default extends string | boolean | number | null | void | object ? Defau… - added:
type UnmatchedDeclaredRouteArgs<Schema, Request, Method extends AnyServerRouteMethod> = unknown extends ValidDeclaredFetchPath<Schema, Request, Method> ? [] : [unmatched: ValidDeclaredFetchPath<Schema, Request, Method>] - added:
type UnmatchedRouteArgs<Request, Method extends AnyServerRouteMethod> = unknown extends ValidTypedFetchPath<Request, Method> ? [] : [unmatched: ValidTypedFetchPath<Request, Method>] - added:
type ValidDeclaredFetchPath<Schema, Request, Method extends AnyServerRouteMethod> = StrictFetchPaths extends false ? unknown : string extends Request ? unknown : Request extends string ? Request extends `${string}://${string}` ? unknown : Vali… - added:
type ValidTypedFetchPath<Request, Method extends AnyServerRouteMethod> = StrictFetchPaths extends false ? unknown : string extends Request ? unknown : Request extends string ? Request extends `${string}://${string}` ? unknown : Vali…
- added:
interface InternalApiRequestShape - added:
property InternalApiRequestShape.body?: FetchOptions['body'] - added:
property InternalApiRequestShape.headers?: FetchOptions['headers'] - added:
property InternalApiRequestShape.params?: FetchOptions['params'] - added:
property InternalApiRequestShape.query?: FetchOptions['query'] - added:
type InternalApiMethods<Request> = Request extends string ? keyof ServerRoutes$1[MatchedServerRoutes<Request>] extends undefined ? ServerRouteMethod : Extract<keyof ServerRoutes$1[MatchedServerR… - added:
type InternalApiRequest = Exclude<keyof ServerRoutes$1, `/_${string}` | `/api/_${string}`> | Exclude<FetchRequest, string> | (string & {}) - added:
type InternalApiResponse<Route, Default = unknown, Method extends ServerRouteMethod = ServerRouteMethod> = Default extends string | boolean | number | null | void | object ? Default : Route extends string ? HandlerOf<Route, Method> extends never ? HandlerOf<Route, '… - added:
type MatchedServerRoutes<Route extends string, MatchedKeysResult extends MatchResult<string> = MatchResult<keyof ServerRoutes$1>, Matches extends MatchResult<string> = _MatchedServerRoutes<Route, MatchedKeysResult>> = Route extends '/' ? keyof ServerRoutes$1 : Extract<Matches, { exact: true }> extends never ? Extract<Exclude<Matches, { score: never }>, { score: MaxScore<Matc…
- added:
type JsonPrimitive = string | number | boolean | null - added:
type NonJsonPrimitive = undefined | ((...args: any[]) => any) | symbol - added:
type Serialize<T> = unknown extends T ? T : T extends JsonPrimitive | undefined ? T : T extends Map<any, any> | Set<any> ? Record<string, never> : T extends NonJsonPrimitive ? nev… - added:
type SerializeObject<T extends object> = { [K in keyof T as K extends symbol ? never : T[K] extends NonJsonPrimitive ? never : K]: Serialize<T[K]> } - added:
type SerializeTuple<T extends [unknown, ...unknown[]]> = { [K in keyof T]: T[K] extends NonJsonPrimitive ? null : Serialize<T[K]> } - added:
type Simplify<T> = T extends any[] | Date ? T : { [K in keyof T]: Simplify<T[K]> }
- added:
function getScriptProtocol(value: string): string | null - added:
function isAbsoluteHref(value: string): boolean - added:
function isBotUserAgent(userAgent: string): boolean - added:
function isRootedPath(value: string): boolean - added:
function sanitizeAnchorHref(value: string): string | null - added:
type ArrayItems<T> = NonNullable<T> extends readonly (infer U)[] ? U : NonNullable<T> - added:
type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never
- added:
function debounceTick<ArgumentsT extends unknown[], ReturnT>(fn: (...args: ArgumentsT) => PromiseLike<ReturnT> | ReturnT, options?: DebounceTickOptions): (...args: ArgumentsT) => Promise<ReturnT> - added:
interface DebounceTickOptions - added:
readonly property DebounceTickOptions.leading?: boolean
- added:
function hashFunction(fn: (...args: any[]) => any): string - added:
function hashKey(value: unknown): string
- added:
function defineKeyedFunctionFactory<T extends Function>(factory: ObjectFactory<T>): T - added:
interface ObjectFactory<T extends Function> - added:
property ObjectFactory.factory: T - added:
property ObjectFactory.name: string
- changed:
function createClientPage(loader: AsyncComponentLoader): Promise<any> → function createClientPage(loader?: AsyncComponentLoader): Promise<Component>
- changed:
const createLazyIdleComponent: (id: string, loader: AsyncComponentLoader) => import('vue').DefineComponent<ExtractPropTypes<{ hydrateOnIdle: { type: () => true | number; required: false; def… → const createLazyIdleComponent: LazyComponentFactory<LazyIdleProps> - changed:
const createLazyIfComponent: (id: string, loader: AsyncComponentLoader) => import('vue').DefineComponent<ExtractPropTypes<{ hydrateWhen: { type: BooleanConstructor; default: boolean } }>,… → const createLazyIfComponent: LazyComponentFactory<LazyIfProps> - changed:
const createLazyInteractionComponent: (id: string, loader: AsyncComponentLoader) => import('vue').DefineComponent<ExtractPropTypes<{ hydrateOnInteraction: { type: () => keyof HTMLElementEventMap |… → const createLazyInteractionComponent: LazyComponentFactory<LazyInteractionProps> - changed:
const createLazyMediaQueryComponent: (id: string, loader: AsyncComponentLoader) => import('vue').DefineComponent<ExtractPropTypes<{ hydrateOnMediaQuery: { type: () => string; required: true } }>,… → const createLazyMediaQueryComponent: LazyComponentFactory<LazyMediaQueryProps> - changed:
const createLazyNeverComponent: (id: string, loader: AsyncComponentLoader) => import('vue').DefineComponent<ExtractPropTypes<{ hydrateNever: { type: () => true; required: false; default: bool… → const createLazyNeverComponent: LazyComponentFactory<LazyNeverProps> - changed:
const createLazyTimeComponent: (id: string, loader: AsyncComponentLoader) => import('vue').DefineComponent<ExtractPropTypes<{ hydrateAfter: { type: NumberConstructor; required: true } }>, ()… → const createLazyTimeComponent: LazyComponentFactory<LazyTimeProps> - changed:
const createLazyVisibleComponent: (id: string, loader: AsyncComponentLoader) => import('vue').DefineComponent<ExtractPropTypes<{ hydrateOnVisible: { type: () => true | IntersectionObserverInit;… → const createLazyVisibleComponent: LazyComponentFactory<LazyVisibleProps>
- changed:
const createIslandPage: (name: string, islandKey?: string) => import('vue').DefineComponent<import('vue').ExtractPropTypes<{ lazy: BooleanConstructor }>, () => import('vue').VNode<imp… → const createIslandPage: (name: string, islandKey?: string) => IslandPageType - changed:
const createServerComponent: (name: string) => import('vue').DefineComponent<import('vue').ExtractPropTypes<{ lazy: BooleanConstructor }>, () => import('vue').VNode<import('vue').RendererN… → const createServerComponent: (name: string) => ServerComponentType
- changed:
const Base: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ href: StringConstructor; target: PropType<Target>; accesskey: StringConstructor; autocapitalize:… → const Base: DefineSetupFnComponent<BaseComponentProps> - changed:
const Body: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ accesskey: StringConstructor; autocapitalize: StringConstructor; autofocus: { type: BooleanConst… → const Body: DefineSetupFnComponent<GlobalProps, {}, SlotWithDefault> - changed:
const Head: import('vue').DefineComponent<{}, () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, { [key: string]: any }>[] | undefined, {… → const Head: DefineSetupFnComponent<{}, {}, SlotWithDefault> - changed:
const Html: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ manifest: StringConstructor; version: StringConstructor; xmlns: StringConstructor; accesskey: St… → const Html: DefineSetupFnComponent<HtmlComponentProps, {}, SlotWithDefault> - changed:
const Link: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ as: StringConstructor; crossorigin: PropType<CrossOrigin>; disabled: BooleanConstructor; fetchpr… → const Link: DefineSetupFnComponent<LinkComponentProps> - changed:
const Meta: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ charset: StringConstructor; content: StringConstructor; httpEquiv: PropType<HTTPEquiv>; name: St… → const Meta: DefineSetupFnComponent<MetaComponentProps> - changed:
const NoScript: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ title: StringConstructor; body: { type: BooleanConstructor; default: undefined }; tagPosition: {… → const NoScript: DefineSetupFnComponent<GlobalProps & TagPositionPropsType & { title?: string }, {}, SlotWithDefault> - changed:
const Style: import('vue').DefineComponent<import('vue').ExtractPropTypes<{ type: StringConstructor; media: StringConstructor; nonce: StringConstructor; title: StringConstr… → const Style: DefineSetupFnComponent<StyleComponentProps, {}, SlotWithDefault> - changed:
const Title: import('vue').DefineComponent<{}, () => null, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').P… → const Title: DefineSetupFnComponent<{}, {}, SlotWithDefault>
- added:
function injectHead(nuxtApp?: NuxtApp): VueHeadClient - added:
function useHead(input: UseHeadInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadInput> - added:
function useHeadSafe(input: UseHeadSafeInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadSafeInput> - added:
function useSeoMeta(input: UseSeoMetaInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseSeoMetaInput> - added:
function useServerHead(input: UseHeadInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadInput> - added:
function useServerHeadSafe(input: UseHeadSafeInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadSafeInput> - added:
function useServerSeoMeta(input: UseSeoMetaInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseSeoMetaInput>
- removed:
function injectHead(nuxtApp?: NuxtApp): VueHeadClient - removed:
function useHead(input: UseHeadInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadInput> | void - removed:
function useHeadSafe(input: UseHeadSafeInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadSafeInput> | void - removed:
function useSeoMeta(input: UseSeoMetaInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseSeoMetaInput> | void - removed:
function useServerHead(input: UseHeadInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadInput> | void - removed:
function useServerHeadSafe(input: UseHeadSafeInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadSafeInput> | void - removed:
function useServerSeoMeta(input: UseSeoMetaInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseSeoMetaInput> | void
- removed:
function injectHead(nuxtApp?: NuxtApp): VueHeadClient - removed:
function useHead(input: UseHeadInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadInput> - removed:
function useHeadSafe(input: UseHeadSafeInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadSafeInput> - removed:
function useSeoMeta(input: UseSeoMetaInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseSeoMetaInput> - removed:
function useServerHead(input: UseHeadInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadInput> - removed:
function useServerHeadSafe(input: UseHeadSafeInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseHeadSafeInput> - removed:
function useServerSeoMeta(input: UseSeoMetaInput, options?: NuxtUseHeadOptions): ActiveHeadEntry<UseSeoMetaInput>
- added:
function installClientHead(nuxtApp: NuxtApp, head: ClientHead): void
- removed:
const _default: any - removed:
default _default
- added:
const default: Plugin & ObjectPlugin
- added:
const default: Plugin & ObjectPlugin
- added:
const default: Plugin & ObjectPlugin
- removed:
const _default: any - removed:
default _default - removed:
type VueHeadClientPollyFill = VueHeadClient & { headTags: VueHeadClient['resolveTags']; addEntry: VueHeadClient['push']; addHeadObjs: VueHeadClient['push']; addReactiveEntry: (input: UseHea…
- removed:
const _default: {} - removed:
default _default - added:
const default: {}
- changed:
const defineRouteRules: (rules: NitroRouteConfig) => void → const defineRouteRules: (rules: RouteRuleConfig) => void
- removed:
export { NuxtLayouts } from './composables' - removed:
export { NuxtPageProps } from './page' - removed:
export { PageMeta } from './composables' - removed:
export { definePageMeta } from './composables' - removed:
export { defineRouteRules } from './composables' - added:
export { NuxtLayouts } - added:
export { NuxtPageProps } - added:
export { PageMeta } - added:
export { definePageMeta } - added:
export { defineRouteRules }
- removed:
const _default: { new (): { $props: AllowedComponentProps & ComponentCustomProps & VNodeProps & NuxtPageProps; $slots: { default?: (routeProps: RouterViewSlotProps) => VNode[]… - removed:
default _default - added:
const default: { new (): { $props: AllowedComponentProps & ComponentCustomProps & VNodeProps & NuxtPageProps; $slots: { default?: (routeProps: RouterViewSlotProps) => VNode[]…
- removed:
const _default: import('vue').DefineComponent<{}, () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, { [key: string]: any }>[] | undefined, {… - removed:
default _default - added:
const default: DefineSetupFnComponent<{}, {}, PagePlaceholderSlots>
- removed:
const _default: any - removed:
default _default - added:
const NESTED_PAGE_CONFIRMATION_DELAY = 1000 - added:
const default: Plugin & ObjectPlugin - added:
function findUnrenderedNestedPage(route: RouteLocationNormalizedLoaded): { parent: RouteRecordNormalized; child: RouteRecordNormalized } | undefined
- removed:
const _default: any - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const _default: any - removed:
default _default - added:
const default: Plugin & ObjectPlugin
- removed:
const plugin: Plugin<{ router: Router }> - removed:
default plugin - added:
const default: Plugin<{ router: Router }>
- removed:
const _default: RouterConfig - removed:
default _default - added:
const default: RouterConfig
- changed:
const wrapInKeepAlive: (props: any, children: any) => { default: () => any } → const wrapInKeepAlive: (props: any, children: any) => { default: () => VNode } - changed:
type MakeSerializableObject<T> = T extends Function | symbol ? never : { [K in keyof T]: T[K] extends SerializablePrimitive ? T[K] : T[K] extends (infer U)[] ? U extends SerializablePrimitive… → type MakeSerializableObject<T> = T extends Function | symbol ? never : { [K in keyof T]: T[K] extends SerializableValue ? T[K] : never } - changed:
type SerializableValue = SerializablePrimitive | SerializablePrimitive[] | Record<string, unknown> → type SerializableValue = MaybeArray<SerializablePrimitive | Record<string, SerializablePrimitive>> - added:
type MaybeArray<T> = T | T[]
- removed:
const _default: any - removed:
default _default - added:
const default: RouteMiddleware
- added:
const ERROR_CHANNEL_BROADCAST = 'nuxt:dev:error' - added:
const ERROR_CHANNEL_ENV = 'NUXT_DEV_ERROR_CHANNEL' - added:
const REQUEST_ID_HEADER = 'x-nuxt-dev-request-id' - added:
export { SerializedErrorCause } - added:
function clearErrorReport(): Promise<void> - added:
function createDevErrorReporter<E>(options: DevErrorReporterOptions<E>): (error: unknown, event?: E, observe?: DevErrorObserveOptions) => Promise<DevErrorReport | undefined> - added:
function createErrorReport(error: unknown, options: ErrorReportOptions): Promise<ErrorReport> - added:
function openErrorBroadcast(): ErrorBroadcast - added:
function publishDevLog(entry: Omit<LogEntry, 'timestamp'> & { timestamp?: number }): Promise<void> - added:
function publishDevProgress(progress: BuildProgress): Promise<void> - added:
function publishErrorReport(report: ErrorReport, request?: ErrorRequestInfo): Promise<void> - added:
function resolveErrorPaths(error: unknown, resolve: (path: string) => string, seen?: Set<unknown>): void - added:
function serializeErrorCause(cause: unknown, depth?: number, seen?: WeakSet<Error>): SerializedErrorCause$1 | undefined - added:
function setErrorChannelForwarding(forward: () => boolean): void - added:
function thrownContext(error: unknown): { instance?: unknown; route?: unknown } - added:
function useErrorChannel(): Promise<Channel> - added:
interface DevErrorObserveOptions - added:
interface DevErrorReport - added:
interface DevErrorReporterOptions<E> - added:
interface ErrorReportOptions - added:
interface ErrorRequestInfo - added:
property DevErrorObserveOptions.expected?: boolean - added:
property DevErrorObserveOptions.print?: boolean - added:
property DevErrorObserveOptions.publish?: boolean - added:
property DevErrorReport.overlay: (html: string) => Promise<string> - added:
property DevErrorReport.page: () => Promise<string> - added:
property DevErrorReport.report: ErrorReport - added:
property DevErrorReporterOptions.channel: () => string - added:
property DevErrorReporterOptions.createReport: (error: unknown, event?: E) => Promise<ErrorReport> - added:
property DevErrorReporterOptions.cwd: string - added:
property DevErrorReporterOptions.mapStack?: (error: unknown) => void - added:
property DevErrorReporterOptions.requestInfo: (event: E) => ErrorRequestInfo - added:
property ErrorReportOptions.context?: Record<string, unknown> - added:
property ErrorReportOptions.cwd: string - added:
property ErrorReportOptions.loaders?: SourceLoader[] - added:
property ErrorRequestInfo.headers: Headers - added:
property ErrorRequestInfo.method: string - added:
property ErrorRequestInfo.url: URL - added:
type ErrorChannelMessage = { type: 'nuxt:dev:error:report'; report: ErrorReport; requestId?: string; request?: string } | { type: 'nuxt:dev:error:clear'; id?: string } | { type: 'nuxt:de…
- added:
export { TraceMap } - added:
function generatedPosition(trace: TraceMap$1, source: string, line: number, column?: number): { line: number; column: number } | undefined - added:
function originalPosition(trace: TraceMap$1, line: number, column: number): SourcePosition | undefined - added:
function resolveSource(trace: TraceMap$1, file: string): string | undefined - added:
function traceMapFor(map: object, id: string): TraceMap$1 - added:
interface SourcePosition - added:
property SourcePosition.column: number - added:
property SourcePosition.file: string - added:
property SourcePosition.line: number
- added:
function isLoopbackAddress(address: string | undefined | null): boolean
- added:
const default: (ssrContext: SSRContext) => Promise<App>
- added:
const entryFileName: string | undefined
- added:
const default: string[]
- added:
const default: Manifest | (() => Manifest | Promise<Manifest>)
- added:
const default: PrecomputedData | (() => PrecomputedData | Promise<PrecomputedData>) | undefined
- added:
const NUXT_EARLY_404: boolean - added:
const NUXT_EARLY_HINTS: boolean - added:
const NUXT_HAS_NO_SCRIPTS_ROUTES: boolean - added:
const NUXT_INLINE_ERROR_RENDERING: boolean - added:
const NUXT_INLINE_STYLES: boolean - added:
const NUXT_JSON_PAYLOADS: boolean - added:
const NUXT_NO_SCRIPTS: boolean - added:
const NUXT_NO_SCRIPTS_PATTERNS: string[] - added:
const NUXT_NO_SCRIPTS_PROD: boolean - added:
const NUXT_NO_SSR: boolean - added:
const NUXT_PAGE_MATCHER: ((method: string, path: string) => unknown) | undefined - added:
const NUXT_PAGE_PATTERNS: string[] - added:
const NUXT_PAYLOAD_EXTRACTION: boolean - added:
const NUXT_PAYLOAD_INLINE: boolean - added:
const NUXT_PRERENDER_ERROR_PAGES: number[] - added:
const NUXT_PRERENDER_NO_SSR_ROUTES: string[] - added:
const NUXT_RUNTIME_PAYLOAD_EXTRACTION: boolean - added:
const NUXT_SSR_STREAMING: boolean - added:
const NUXT_SSR_STREAMING_BOT_RE: RegExp - added:
const NUXT_VIEW_TRANSITIONS: boolean - added:
const PARSE_ERROR_DATA: boolean - added:
const appHead: SerializableHead - added:
const appId: string - added:
const appRootAttrs: Record<string, string> - added:
const appRootTag: string - added:
const appSpaLoaderAttrs: Record<string, string> - added:
const appSpaLoaderTag: string - added:
const appTeleportAttrs: Record<string, string> - added:
const appTeleportTag: string - added:
const componentIslands: boolean - added:
const componentIslandsActive: boolean - added:
const iifeChunkFileName: string | undefined - added:
const multiApp: boolean - added:
const renderSSRHeadOptions: { omitLineBreaks?: boolean } - added:
const spaLoadingTemplateOutside: boolean - added:
const spaTemplate: string - added:
const tracingChannelNuxt: boolean - added:
const unheadOptions: CreateServerHeadOptions
- added:
function createSSRContext(options: NuxtRendererOptions, event: RendererEvent): NuxtSSRContext - added:
function returnRenderResponse(options: NuxtRendererOptions, event: RendererEvent, response: RenderedResponse): Response - added:
function setSSRError(ssrContext: NuxtSSRContext, error: NuxtPayload['error'] & { url: string }): void
- added:
const APP_ROOT_CLOSE_TAG: string - added:
const APP_ROOT_OPEN_TAG: string - added:
const getInlinedCSS: () => Promise<Record<string, string[][]>> - added:
const getSSRStyles: () => Promise<Record<string, () => Promise<string[]>>> - added:
function createBuildFiles(options: NuxtRendererOptions): BuildFiles - added:
interface BuildFiles - added:
method BuildFiles.getRenderer(ssrContext: NuxtSSRContext): Promise<Renderer> - added:
method BuildFiles.getSSRRenderer(): Promise<Renderer> - added:
method BuildFiles.getServerApp(): Promise<Entry> - added:
type Entry = (ssrContext: NuxtSSRContext) => Promise<App>
- added:
function lazyCachedFunction<T>(fn: () => Promise<T>): () => Promise<T>
- added:
function extractCspNonce(headTags: string): string | undefined
- added:
function isStyleOfModule(file: string, modules: Set<string> | string[]): boolean
- added:
const rendererDiagnostics: import('nostics').Diagnostics<{ readonly NUXT_E8001: { readonly why: (p: { path: string }) => string; readonly fix: 'Use the `render:html:close` hook instead.'…
- added:
function throwIfUnmatchedPagePath(options: NuxtRendererOptions, event: RendererEvent, routeOptions: { cache?: { maxAge?: number } | false }): void
- added:
function appendVary(headers: Headers, value: string): void - added:
function describeError(error: unknown): DescribedError - added:
function isExpectedError(error: unknown, described: DescribedError): boolean - added:
function isJsonRequest(request: Request, pathname: string): boolean - added:
function stringifyErrorData(data: unknown): unknown - added:
interface DescribedError - added:
property DescribedError.data: unknown - added:
property DescribedError.headers: Headers - added:
property DescribedError.isHTTPError: boolean - added:
property DescribedError.message: string - added:
property DescribedError.status: number - added:
property DescribedError.statusText: string
- added:
const template: (messages: Partial<DefaultMessages>) => string - added:
type DefaultMessages = Record<'appName' | 'status' | 'statusText' | 'description' | 'refresh', string | boolean | number>
- added:
function mergeHeaders(base: Headers, overlay: Headers): Headers
- added:
export { CachedResponse } - added:
export { NuxtRendererInstance } - added:
export { NuxtRendererOptions } - added:
export { NuxtRequestState } - added:
export { PayloadCache } - added:
export { RenderedResponse } - added:
export { RendererEvent } - added:
export { RendererHooks } - added:
export { RendererRouteRules } - added:
export { appEvent } - added:
export { createRendererInstance } - added:
function createNuxtRenderer(optionsOrInstance: NuxtRendererOptions | NuxtRendererInstance): { fetch: (event: RendererEvent) => Promise<Response> }
- added:
function renderInlineStyles(usedModules: Set<string> | string[]): Promise<Style[]>
- added:
function createInlinedCSSFilter(modules: Set<string> | undefined): Promise<(file: string) => boolean>
- added:
function createRendererInstance(options: NuxtRendererOptions): NuxtRendererInstance - added:
interface NuxtRendererInstance extends BuildFiles - added:
readonly property NuxtRendererInstance.options: NuxtRendererOptions
- added:
function getClientIslandResponse(ssrContext: NuxtSSRContext): NuxtIslandResponse['components'] - added:
function getComponentSlotTeleport(clientUid: string, teleports: Record<string, string>): Record<string, string> - added:
function getServerComponentHTML(body: string): string - added:
function getSlotIslandResponse(ssrContext: NuxtSSRContext): NuxtIslandResponse['slots'] - added:
function renderStreamedIslandTeleports(ssrContext: NuxtSSRContext, nonceAttr?: string): string - added:
function replaceIslandTeleports(ssrContext: NuxtSSRContext, html: string): string
- added:
function detectClientScriptReliance(ssrContext: NuxtSSRContext): string[] - added:
function warnNoScriptsClientReliance(ssrContext: NuxtSSRContext, path: string): void
- added:
function getPayloadKeySizes(data: NuxtPayload['data'] | undefined, reducers: NuxtSSRContext['~payloadReducers']): Array<[string, number]> - added:
function renderPayloadJsonScript(opts: { ssrContext: NuxtSSRContext; data?: any; src?: string }): Script[] - added:
function renderPayloadResponse(ssrContext: NuxtSSRContext, event: RendererEvent): CachedResponse - added:
function renderPayloadScript(opts: { ssrContext: NuxtSSRContext; routeOptions: RendererRouteRules; data?: any; src?: string }): Script[] - added:
function splitPayload(ssrContext: NuxtSSRContext): SplitPayload
- added:
function addPrerenderRoutes(event: RendererEvent, ...paths: string[]): void - added:
function appEvent(event: RendererEvent): NuxtRequestEvent - added:
function getRequestState(event: RendererEvent): NuxtRequestState | undefined - added:
interface CachedResponse extends RenderedResponse - added:
interface NuxtRendererOptions - added:
interface NuxtRequestState - added:
interface PayloadCache - added:
interface RenderedResponse - added:
interface RendererEvent extends RequestEvent - added:
interface RendererRouteRules - added:
method PayloadCache.getItem(key: string): Promise<CachedResponse | null | undefined> | CachedResponse | null | undefined - added:
method PayloadCache.hasItem(key: string): Promise<boolean> | boolean - added:
method PayloadCache.setItem(key: string, value: CachedResponse): Promise<unknown> | unknown - added:
property CachedResponse.body: string - added:
property NuxtRendererOptions.buildAssetsURL: (...path: string[]) => string - added:
property NuxtRendererOptions.captureError?: (error: unknown, context: { event: RendererEvent; tags?: string[] }) => void | Promise<void> - added:
property NuxtRendererOptions.createError: (init: { status: number; statusText?: string; data?: unknown; headers?: Record<string, string> }) => Error - added:
property NuxtRendererOptions.createResponse: (body: BodyInit | null, init?: ResponseInit) => Response - added:
property NuxtRendererOptions.getRouteRules: (event: RendererEvent) => RendererRouteRules - added:
property NuxtRendererOptions.hooks: () => RendererHooks - added:
property NuxtRendererOptions.onDevError?: (error: unknown, event: RendererEvent, options?: DevErrorObserveOptions) => Promise<DevErrorReport | undefined> - added:
property NuxtRendererOptions.onRenderSuccess?: (event: RendererEvent) => void - added:
property NuxtRendererOptions.prerender?: { payloadCache: PayloadCache; sharedDataCache?: NuxtSSRContext['~sharedPrerenderCache']; wrapRender?: <T>(event: RendererEvent, render: () => Promise<T>) => Promise<T> } - added:
property NuxtRendererOptions.publicAssetsURL: (...path: string[]) => string - added:
property NuxtRendererOptions.renderIsland?: (event: RendererEvent) => Promise<Response> | Response - added:
property NuxtRendererOptions.runtimeConfig: (event: RendererEvent) => NuxtSSRContext['runtimeConfig'] - added:
property NuxtRendererOptions.writeEarlyHints?: (event: RendererEvent, hints: { link: string }) => void - added:
property NuxtRequestState.'noSSR'?: boolean - added:
property NuxtRequestState.'prerenderRoutes'?: string[] - added:
property NuxtRequestState.'~devClientCss'?: string[] - added:
property NuxtRequestState.'~error-cause'?: unknown - added:
property NuxtRequestState.'~internal'?: boolean - added:
property NuxtRequestState.'~rendering-error'?: boolean - added:
property RenderedResponse.body?: unknown - added:
property RenderedResponse.headers?: Record<string, string> - added:
property RenderedResponse.statusCode?: number - added:
property RenderedResponse.statusMessage?: string - added:
property RendererEvent.'~app'?: NuxtRequestEvent - added:
property RendererRouteRules.cache?: false | { maxAge?: number } - added:
property RendererRouteRules.isr?: number | boolean | object - added:
property RendererRouteRules.noScripts?: boolean - added:
property RendererRouteRules.prerender?: boolean - added:
property RendererRouteRules.redirect?: unknown - added:
property RendererRouteRules.ssr?: boolean - added:
property RendererRouteRules.streaming?: boolean - added:
type RendererHooks = Pick<ServerHookable<NuxtServerRendererHooks>, 'callHook'>
- added:
function parseRequestPath(path: string): URL - added:
function payloadRequestToRoute(path: string, filename?: string): string - added:
function routeToPayloadURL(baseURL: string, path: string, buildId: string, filename?: string): string - added:
function urlHash(url: URL): string - added:
function withRequestPath(url: URL, path: string): URL
- added:
const default: SharedAppConfig
- added:
export { AppRouteRules } - added:
export { CorsOptions } - added:
export { EventHandler } - added:
export { ForwardedOptions } - added:
export { NuxtError } - added:
export { NuxtErrorDetails } - added:
export { NuxtErrorJSON } - added:
export { NuxtErrorLike } - added:
export { NuxtRequestEvent } - added:
export { NuxtServerHooks } - added:
export { NuxtServerRendererHooks } - added:
export { RequestEvent } - added:
export { RequestEventContext } - added:
export { ServerFetchInit } - added:
export { ServerHookResult } - added:
export { ServerHookable } - added:
export { ServerRoutes } - added:
export { Session } - added:
export { SessionConfig } - added:
export { SessionData } - added:
export { SessionEvent } - added:
export { SessionManager } - added:
export { SessionPassword } - added:
export { SessionUpdate } - added:
export { ValidateResult } - added:
export { clearSession } - added:
export { createError } - added:
export { defineEventHandler } - added:
export { deleteCookie } - added:
export { deriveSecret } - added:
export { getCookie } - added:
export { getQuery } - added:
export { getRequestHeader } - added:
export { getRequestHeaders } - added:
export { getRequestHost } - added:
export { getRequestIP } - added:
export { getRequestProtocol } - added:
export { getRequestURL } - added:
export { getRouteRules } - added:
export { getRouterParam } - added:
export { getRouterParams } - added:
export { getSession } - added:
export { getValidatedQuery } - added:
export { handleCors } - added:
export { isNuxtError } - added:
export { matchRouteRules } - added:
export { parseCookies } - added:
export { readBody } - added:
export { readValidatedBody } - added:
export { resolveServerFetchInit } - added:
export { sendRedirect } - added:
export { serverFetch } - added:
export { setCookie } - added:
export { setResponseStatus } - added:
export { updateSession } - added:
export { useAppConfig } - added:
export { useRuntimeConfig } - added:
export { useServerHooks } - added:
export { useSession }
- added:
function useRuntimeConfig(): RuntimeConfig
- added:
const default: Record<string, () => Promise<string[]>> - added:
const inlinedCSS: Record<string, string[][]>
- added:
function handleCors(event: Pick<RequestEvent, 'req' | 'res'>, options?: CorsOptions): Response | false - added:
interface CorsOptions - added:
property CorsOptions.allowHeaders?: '*' | string[] - added:
property CorsOptions.credentials?: boolean - added:
property CorsOptions.exposeHeaders?: '*' | string[] - added:
property CorsOptions.maxAge?: string | false - added:
property CorsOptions.methods?: '*' | string[] - added:
property CorsOptions.origin?: '*' | 'null' | (string | RegExp)[] | ((origin: string) => boolean) - added:
property CorsOptions.preflight?: { statusCode?: number }
- added:
function resolveServerFetchInit(event: Pick<RequestEvent, 'req'>, init?: ServerFetchInit): RequestInit - added:
function serverFetch(_event: Pick<RequestEvent, 'req' | 'context'>, path: string, _init?: ServerFetchInit): Promise<Response> - added:
interface ServerFetchInit extends RequestInit - added:
property ServerFetchInit.forwardHeaders?: boolean | string[]
- added:
function useServerHooks(): ServerHookable<NuxtServerHooks & NuxtServerRendererHooks> - added:
interface NuxtServerRendererHooks - added:
interface ServerHookable<Hooks extends HookMap<Hooks>> - added:
method ServerHookable.callHook<Name extends keyof Hooks & string>(name: Name, ...args: Parameters<Hooks[Name]>): Promise<void> | void - added:
method ServerHookable.hook<Name extends keyof Hooks & string>(name: Name, handler: Hooks[Name]): () => void - added:
method ServerHookable.removeHook<Name extends keyof Hooks & string>(name: Name, handler: Hooks[Name]): void - added:
property NuxtServerRendererHooks.'render:html': (context: NuxtRenderHTMLContext, extra: { event: NuxtRequestEvent; streaming?: boolean }) => ServerHookResult - added:
property NuxtServerRendererHooks.'render:html:chunk': (context: NuxtRenderChunkContext, extra: { event: NuxtRequestEvent }) => ServerHookResult - added:
property NuxtServerRendererHooks.'render:html:close': (context: NuxtRenderCloseContext, extra: { event: NuxtRequestEvent }) => ServerHookResult - added:
property NuxtServerRendererHooks.'render:island': (response: NuxtIslandResponse, extra: { event: NuxtRequestEvent; islandContext: NuxtIslandContext }) => ServerHookResult - added:
property NuxtServerRendererHooks.'render:route': (context: NuxtRenderRouteContext, extra: { event: NuxtRequestEvent }) => ServerHookResult - added:
type ServerHookResult = void | Promise<void>
- added:
export { AppRouteRules } - added:
export { CorsOptions } - added:
export { NuxtError } - added:
export { NuxtErrorDetails } - added:
export { NuxtErrorJSON } - added:
export { NuxtRequestEvent } - added:
export { NuxtServerHooks } - added:
export { NuxtServerRendererHooks } - added:
export { RequestEvent } - added:
export { RequestEventContext } - added:
export { ServerFetchInit } - added:
export { ServerHookResult } - added:
export { ServerHookable } - added:
export { ServerRoutes } - added:
export { Session } - added:
export { SessionConfig } - added:
export { SessionData } - added:
export { SessionEvent } - added:
export { SessionManager } - added:
export { SessionPassword } - added:
export { SessionUpdate } - added:
export { ValidateResult } - added:
export { clearSession } - added:
export { createError } - added:
export { deriveSecret } - added:
export { getSession } - added:
export { getValidatedQuery } - added:
export { handleCors } - added:
export { readValidatedBody } - added:
export { serverFetch } - added:
export { updateSession } - added:
export { useServerHooks } - added:
export { useSession } - added:
function defineEventHandler<Result>(handler: EventHandler<Result>): EventHandler<Result> - added:
function deleteCookie(event: EventWithResponse, name: string, options?: CookieSerializeOptions): void - added:
function getCookie(event: EventWithRequest, name: string): string | undefined - added:
function getQuery<T extends Record<string, unknown> = Record<string, string | string[]>>(event: EventWithURL): T - added:
function getRequestHeader(event: EventWithRequest, name: string): string | undefined - added:
function getRequestHeaders(event: EventWithRequest): Record<string, string> - added:
function getRequestHost(event: EventWithRequest, options?: Pick<ForwardedOptions, 'xForwardedHost'>): string - added:
function getRequestIP(event: EventWithRequest, options?: { xForwardedFor?: boolean }): string | undefined - added:
function getRequestProtocol(event: EventWithURL, options?: Pick<ForwardedOptions, 'xForwardedProto'>): string - added:
function getRequestURL(event: EventWithURL, options?: ForwardedOptions): URL - added:
function getRouteRules(_event: Pick<RequestEvent$1, 'context'>): AppRouteRules$1 - added:
function getRouterParam(event: Pick<RequestEvent$1, 'context'>, name: string, options?: { decode?: boolean }): string | undefined - added:
function getRouterParams(event: Pick<RequestEvent$1, 'context'>, options?: { decode?: boolean }): Record<string, string | undefined> - added:
function isNuxtError<DataT = unknown>(error: unknown): error is NuxtErrorLike<DataT> - added:
function matchRouteRules(_path: string, _method?: string): AppRouteRules$1 - added:
function parseCookies(event: EventWithRequest): Record<string, string> - added:
function readBody<T = unknown>(event: EventWithRequest): Promise<T> - added:
function sendRedirect(event: EventWithResponse, location: string, status?: number): string - added:
function setCookie(event: EventWithResponse, name: string, value: string, options?: CookieSerializeOptions): void - added:
function setResponseStatus(event: EventWithResponse, status: number, statusText?: string): void - added:
function useAppConfig(event?: Pick<RequestEvent$1, 'context'>): SharedAppConfig - added:
function useRuntimeConfig(): RuntimeConfig - added:
interface ForwardedOptions - added:
property ForwardedOptions.xForwardedHost?: boolean - added:
property ForwardedOptions.xForwardedProto?: boolean - added:
type EventHandler<Result = unknown> = (event: RequestEvent$1) => Result - added:
type NuxtErrorLike<DataT = unknown> = Error & { status: number } & Partial<Pick<NuxtError<DataT>, 'statusText' | 'data' | 'unhandled'>>
- added:
function seal(value: unknown, password: SessionPassword, options?: SealOptions): Promise<string> - added:
function unseal(sealed: string, password: SessionPassword, options?: SealOptions): Promise<unknown> - added:
interface SealOptions - added:
property SealOptions.ttl?: number
- added:
function deriveSecret(purpose: string): Promise<string>
- added:
function clearSession(event: SessionEvent, config?: SessionConfig): Promise<void> - added:
function getSession<T extends SessionData = SessionData>(event: SessionEvent, config?: SessionConfig): Promise<Session<T>> - added:
function updateSession<T extends SessionData = SessionData>(event: SessionEvent, config?: SessionConfig, update?: SessionUpdate<T>): Promise<Session<T>> - added:
function useSession<T extends SessionData = SessionData>(event: SessionEvent, config?: SessionConfig): Promise<SessionManager<T>> - added:
interface Session<T extends SessionData = SessionData> - added:
interface SessionConfig - added:
interface SessionManager<T extends SessionData = SessionData> - added:
property Session.data: T - added:
property Session.id: string - added:
property SessionConfig.cookie?: CookieSerializeOptions - added:
property SessionConfig.maxAge?: number - added:
property SessionConfig.name?: string - added:
property SessionConfig.password?: SessionPassword - added:
property SessionManager.clear: () => Promise<SessionManager<T>> - added:
property SessionManager.update: (update: SessionUpdate<T>) => Promise<SessionManager<T>> - added:
readonly property SessionManager.data: T - added:
readonly property SessionManager.id: string - added:
type SessionData = Record<string, unknown> - added:
type SessionEvent = Pick<RequestEvent, 'req' | 'res'> - added:
type SessionPassword = string | Uint8Array - added:
type SessionUpdate<T extends SessionData = SessionData> = Partial<T> | ((data: T) => Partial<T> | undefined)
- added:
function getValidatedQuery<Output>(event: Pick<RequestEvent, 'req'> & { url?: URL }, validate: (data: Record<string, string | string[]>) => ValidateResult<Output> | Promise<ValidateResult<Output>>, options?: ValidateOptions): Promise<Output> - added:
function getValidatedQuery<S extends StandardSchema>(event: Pick<RequestEvent, 'req'> & { url?: URL }, validate: S, options?: ValidateOptions): Promise<SchemaOutput<S>> - added:
function readValidatedBody<Output>(event: Pick<RequestEvent, 'req'>, validate: (data: unknown) => ValidateResult<Output> | Promise<ValidateResult<Output>>, options?: ValidateOptions): Promise<Output> - added:
function readValidatedBody<S extends StandardSchema>(event: Pick<RequestEvent, 'req'>, validate: S, options?: ValidateOptions): Promise<SchemaOutput<S>> - added:
type ValidateResult<T> = T | true | false | void
- added:
declare module 'nuxt/schema'