Vigia

Aktualizacja i18next z 26.x do 27.x

Porównanie publicznego API i18next 26.7.2 i 27.0.0, obliczone automatycznie na podstawie typów TypeScript. Zmieniona sygnatura to możliwa zmiana niekompatybilna, a nie pewność.

Podsumowanie

Usunięte ścieżki importu0
Usunięte eksporty87
Zmienione sygnatury5
Usunięte składowe klas lub interfejsów21
Zmienione składowe klas lub interfejsów1
Nowo wycofane2
Zmiany wymagań (engines, zależności peer)1
Nowe eksporty0

Usunięte eksporty

importexportkindPrzed
i18next_IcuArgtypeA extends `${infer Name},${infer Type},${infer Cases}` ? _IcuTrim<Type> extends "plural" | "selectordinal" ? [_IcuTrim<Name>, _IcuFormatType<_IcuTrim<Type>>] | _IcuCases<Cases, never, never>[1] : _IcuTrim<Type> extends "select" ? _IcuCases<Cases, never, never> extends [infer Keys, infer E] ? E | [_IcuTrim<Name>, "other" extends Keys ? Exclude<Keys, "other"> | (string & {}) : Keys] : never : [_IcuTrim<Name>, _IcuFormatType<_IcuTrim<Type>>] : A extends `${infer Name},${infer Type}` ? [_IcuTrim<Name>, _IcuFormatType<_IcuTrim<Type>>] : [_IcuTrim<A>, string | number]
i18next_KeysOftype[Res] extends [unknown] ? keyof Res : never
i18next_IcuTrimtypeS extends ` ${infer R}` | ` ${infer R}` | `\t${infer R}` | `\r${infer R}` ? _IcuTrim<R> : S extends `${infer R} ` | `${infer R} ` | `${infer R}\t` | `${infer R}\r` ? _IcuTrim<R> : S
i18next_Mf2NametypeS extends `${infer N} ${string}` ? _Mf2Name<N> : S extends `${infer N}/${string}` ? N : S
i18next_Mf2VarstypeS extends `${string}$${infer R}` ? _Mf2Vars<R, Acc | [_Mf2Name<R>, string | number]> : Acc
i18next_ValueOftypeKey extends _KeysOf<Res> ? Res[Key] : _IsLiteral<Key & PropertyKey> extends true ? never : Res[Key & _KeysOf<Res>]
i18next_IcuBlocktypeS extends `${infer L}}${infer R}` ? L extends `${infer L2}{${infer R2}` ? _IcuBlock<`${R2}}${R}`, `${Acc}${L2}{`, [...Depth, 0]> : Depth extends [0, ...infer D extends 0[]] ? _IcuBlock<R, `${Acc}${L}}`, D> : [`${Acc}${L}`, R] : never
i18next_IcuCasestypeS extends `${infer L}{${infer R}` ? _IcuBlock<R, "", []> extends [infer Msg, infer Rest] ? _IcuCases<Rest, Keys | _IcuTrim<L>, Acc | _IcuEntries<Msg, never>> : [Keys, Acc] : [Keys, Acc]
i18next_Mf2SpacetypeS extends `${infer L}${C}${infer R}` ? _Mf2Space<`${L} ${R}`, C> : S
i18next_HasPluraltype0 extends 1 & R ? false : [Extract<R, PluralValue<string>>] extends [never] ? false : true
i18next_IsLiteraltype{} extends Record<S, unknown> ? false : true
i18next_Mf2LocalstypeS extends `${string}.local${infer R}` ? _Mf2Locals<R, Acc | (_IcuTrim<R> extends `$${infer N}=${string}` ? _IcuTrim<N> : never)> : Acc
i18next_Mf2Spacestype_Mf2Space<_Mf2Space<_Mf2Space<S, "\n">, "\t">, "\r"> extends ` ${infer R}` | ` ${infer R}` | `\t${infer R}` | `\r${infer R}` ? _IcuTrim<R> : _Mf2Space<_Mf2Space<_Mf2Space<S, "\n">, "\t">, "\r"> extends `${infer R} ` | `${infer R} ` | `${infer R}\t` | `${infer R}\r` ? _IcuTrim<R> : _Mf2Space<_Mf2Space<_Mf2Space<S, "\n">, "\t">, "\r">
i18next_Resourcestypeobject
i18next_IcuArgsMaptypeRet extends string ? string extends Ret ? never : _ArgsFromEntries<_IcuEntries<_IcuStripQuotes<Ret, "">, never>> : never
i18next_IcuEntriestypeS extends `${string}{${infer R}` ? _IcuBlock<R, "", []> extends [infer Arg, infer Rest] ? _IcuEntries<Rest, Acc | _IcuArg<Arg>> : Acc : Acc
i18next_Mf2ArgsMaptypeRet extends string ? string extends Ret ? never : _Mf2StripEscapes<Ret, ""> extends infer S ? _ArgsFromEntries<Exclude<_Mf2Entries<S, never>, [_IcuTrim<S> extends `.${string}` ? _Mf2Locals<S, never> : never, unknown]> | Exclude<_Mf2Selectors<S>, [_IcuTrim<S> extends `.${string}` ? _Mf2Locals<S, never> : never, unknown]>> : never : never
i18next_Mf2EntriestypeS extends `${string}{${infer R}` ? R extends `{${infer Pattern}` ? _Mf2Entries<Pattern, Acc> : _Mf2Expression<R, ""> extends [infer Body, infer Rest] ? _Mf2Entries<Rest, Acc | _Mf2ExprEntries<_IcuTrim<_Mf2Space<_Mf2Space<_Mf2Space<Body, "\n">, "\t">, "\r">>>> : Acc : Acc
i18next_ReturnNulltypefalse
i18next$PluralBrandvariabletypeof $PluralBrand
i18next_DefinedKeystype[T] extends [unknown] ? keyof { [P in keyof T as [T[P]] extends [undefined] ? never : P]: true; } : never
i18next_NsSeparatortype":"
i18next_ContextBasestype[T] extends [unknown] ? _ContextPrefixes<T>[1] : never
i18next_KeySeparatortype"."
i18next_Mf2SelectorstypeS extends `${string}.match${infer R}` ? _Mf2Vars<_IcuTrim<_Mf2Space<_Mf2Space<_Mf2Space<R extends `${infer Sel}{${string}` ? Sel : R, "\n">, "\t">, "\r">>, never> : never
i18next_NonNeverKeystype{ [K in keyof T]: [T[K]] extends [never] ? never : K; }[keyof T]
i18next_PerPropMergetype{ [K in keyof L | keyof R]: K extends keyof L ? K extends keyof R ? L[K] & R[K] : L[K] : K extends keyof R ? R[K] : never; }
i18next_PrimaryParsetype(ActualKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends …
i18next_CountIfPluraltype_HasPlural<R> extends true ? { count: number; } : {}
i18next_FallbackParsetype[FallbackResourcesOf<FallbackNS, $Dictionary<string>>] extends [never] ? never : ParseTReturnWithFallback<ActualKey, ActualKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithFallback<RestKey, RestKey extends `${infer K1}.${infer RestKey}` ? ParseTReturnWithF…
i18next_HasDefinedKeytype[false extends (Pattern extends unknown ? _IsLiteral<Pattern> : never) ? keyof _DefinedContextKeys<T, Pattern> : Extract<Pattern, _DefinedKeys<T>>] extends [never] ? false : true
i18next_IcuFormatTypetype[F] extends [never] ? string | number : F extends never ? {}[F] : F extends "number" | "plural" | "selectordinal" ? number : F extends "date" | "time" ? Date : string | number
i18next_IcuSkipQuotedtypeS extends `${string}'${infer R}` ? R extends `'${infer R2}` ? _IcuSkipQuoted<R2> : R : ""
i18next_IcuWhitespacetype" " | "\n" | "\t" | "\r"
i18next_KeyAndOptionstype[key: Key | Key[], options?: Opts | undefined]
i18next_Mf2ExpressiontypeS extends `${infer B}}${infer Rest}` ? B extends `${infer Before}|${infer Lit}` ? `${Lit}}${Rest}` extends `${string}|${infer After}` ? _Mf2Expression<After, `${Acc}${Before} `> : never : [`${Acc}${B}`, Rest] : never
i18next_ReturnObjectstypefalse
i18next$FirstNamespacetypeNs extends readonly any[] ? Ns[0] : Ns
i18next_EnableSelectortypefalse
i18next_IcuStripQuotestypeS extends `${infer L}'${infer R}` ? R extends `'${infer R2}` ? _IcuStripQuotes<R2, `${Acc}${L}`> : R extends `{${string}` | `}${string}` | `<${string}` | `>${string}` | `#${string}` ? _IcuStripQuotes<_IcuSkipQuoted<R>, `${Acc}${L}`> : _IcuStripQuotes<R, `${Acc}${L}'`> : `${Acc}${S & string}`
i18next_Mf2ExprEntriestypeBody extends `$${infer R}` ? R extends `${infer Name} ${infer Tail}` ? [Name, _Mf2FunctionType<_IcuTrim<Tail> extends `:${infer F}` ? _Mf2Name<F> : never>] | _Mf2Vars<Tail, never> : [_Mf2Name<R>, string | number] : _Mf2Vars<Body, never>
i18next_UnescapePrefixtype"-"
i18next_UnescapeSuffixtype""
i18next_ArgsFromEntriestype_UnionToIntersection<E extends [infer Name extends string, infer Type] ? Name extends `${string}.${string}` ? $StringKeyPathToRecord<Name, Type> : { [K in Name]: Type; } : never> extends infer M ? [E] extends [never] ? never : { [K in keyof M]: M[K]; } : never
i18next_ContextPrefixestype[T] extends [unknown] ? _ContextPrefixesOf<_DefinedKeys<T> & string, "", never, never> : never
i18next_IsContextualKeytype_IsLiteral<K> extends true ? K extends _ContextBases<T> ? true : false : [Exclude<keyof _DefinedContextKeys<T, `${K}_${string}`>, `${K}_zero` | `${K}_one` | `${K}_two` | `${K}_few` | `${K}_many` | `${K}_other` | `${K}_ordinal_zero` | `${K}_ordinal_one` | `${K}_ordinal_two` | `${K}_ordinal_few` | `${K}_ordinal_many` | `${K}_ordinal_other`>] extends [never] ? false : true
i18next_LegacyResourcestypeobject
i18next_MergeNamespacestype{ [K in keyof L | keyof R]: K extends keyof L ? K extends keyof R ? _DropConflictKeys<_PerPropMerge<L[K], R[K]>> : L[K] : K extends keyof R ? R[K] : never; }
i18next_MergedResourcestypeobject
i18next_Mf2FunctionTypetype[F] extends [never] ? string | number : F extends never ? {}[F] : F extends "number" | "currency" | "integer" | "percent" | "offset" | "unit" | "math" ? number : F extends "datetime" | "date" | "time" ? Date : F extends "string" ? string : string | number
i18next_Mf2StripEscapestypeS extends `${infer L}\\${string}${infer R}` ? _Mf2StripEscapes<R, `${Acc}${L}`> : `${Acc}${S & string}`
i18next_PluralSeparatortype"_"
i18next_SelectorsReturntypeFns[number] extends (...args: any[]) => infer R ? R : never
i18next_StrictKeyCheckstypefalse
i18next$SelectorKeyBrandvariabletypeof $SelectorKeyBrand
i18next_ContextSeparatortype"_"
i18next_DefaultVariablestype{}
i18next_DropConflictKeystype{ [P in _NonNeverKeys<T>]: T[P]; }
i18next_NsResourceStricttypeNs extends readonly any[] ? PickNamespaces<$Dictionary<string>, Ns[number]> : PickNamespaces<$Dictionary<string>, Ns & (string | number)>
i18next_ResolveEntryTypetype[Format] extends [never] ? Name extends "count" ? number : string | number : Format extends never ? {}[Format] : _StripFormatOptions<Format> extends never ? never : Format extends keyof _BuiltInFormatTypeMap ? _BuiltInFormatTypeMap[Format] : _StripFormatOptions<Format> extends keyof _BuiltInFormatTypeMap ? _BuiltInFormatTypeMap[_StripFormatOptions<Format> & keyof _BuiltInFormatTypeMap] : string
i18next_CompatibilityJSONtype"v4"
i18next_ContextPrefixesOftypeP extends `${infer B}_${string}` ? P extends `${B}${infer FromSep}` ? FromSep extends `${infer C}${infer Rest}` ? _ContextPrefixesOf<Rest, `${Head}${B}${C}`, All | `${Head}${B}`, FromSep extends "_zero" | "_one" | "_two" | "_few" | "_many" | "_other" | "_ordinal_zero" | "_ordinal_one" | "_ordinal_two" | "_ordinal_few" | "_ordinal_many" | "_ordinal_other" ? Bases : Bases | `${Head}${B}`> : [All, Bases] : [All, Bases] : [All, Bases]
i18next_FallbackNamespacetypefalse
i18next_HasContextVarianttypestring extends Context ? _IsLiteral<K> extends true ? K extends _AllContextPrefixes<T> ? true : false : _HasDefinedKey<T, `${K}_${string}`> : _HasDefinedKey<T, `${K}_${Context & string}` | `${K}_${Context & string}_zero` | `${K}_${Context & string}_one` | `${K}_${Context & string}_two` | `${K}_${Context & string}_few` | `${K}_${Context & string}_many` | `${K}_${Context & string}_other`>
i18next_IfOptionalOptionstypeunknown
i18next_ReturnEmptyStringtypetrue
i18next$IsResourcesDefinedtypefalse
i18next_AllContextPrefixestype[T] extends [unknown] ? _ContextPrefixes<T>[0] : never
i18next_DefinedContextKeystype{ [P in keyof T as P extends Pattern ? [T[P]] extends [undefined] ? never : P : never]: true; }
i18next_ParseInterpolationtypetrue
i18next_SelectorOptionsArgtype[options?: Opts | undefined]
i18next_StripFormatOptionstypeF extends `${infer Name}(${string})` ? Name : F
i18next_InterpolationPrefixtype"{{"
i18next_InterpolationSuffixtype"}}"
i18next_ParsesMessageFormattypefalse
i18next_UnionToIntersectiontype(T extends unknown ? (k: T) => void : never) extends (k: infer I) => void ? I : never
i18next_BuiltInFormatTypeMaptype{ number: number; currency: number; datetime: Date; relativetime: number; list: readonly string[]; }
i18next_KeysWithoutVariablestypeKey extends string ? Key : never
i18next_WithDefaultVariablestypeMap
i18next_RequiresMessageOptionstypefalse
i18next$ValueIfResourcesDefinedtypeFallback
i18next_SelectorArrayOptionsArgtype_HasPlural<R> extends true ? [options: Opts & { count: number; } & $PreservedValue<_UnionToIntersection<(DeepUnwrapPlural<R> extends `${string}{{${infer Value}}}${infer Rest}` ? (Value extends `${infer ActualValue},${infer Format}` ? [ParseActualValue<ActualValue>, TrimSpaces<Format, "">] : [ParseActualValue<Value>, never]) | (Rest extends `${string}{{${infer Value}}}${infer Rest}` ? any : never) : never) extends [infer Name extends string, infer Format] ? $UnionToIntersection<$StringKeyPathToRecordUnion<Name, _ResolveEntryType<Name, Format>>> : never>, Record<string, unknown>>] : [options?: (…
i18next_IfOptionalDefaultOptionstypeunknown
i18next_StrictInterpolationCheckstypefalse
i18next_InterpolationFormatTypeMaptype{}
i18next_InterpolationMapFromEntriestype((E extends [infer Name extends string, infer Format] ? $StringKeyPathToRecord<Name, _ResolveEntryType<Name, Format>> : never) extends unknown ? (k: E extends [infer Name extends string, infer Format] ? $StringKeyPathToRecord<Name, _ResolveEntryType<Name, Format>> : never) => void : never) extends (k: infer I) => void ? I : never
i18next_InterpolationFormatSeparatortype","

Zmienione sygnatury

exportPrzedPo
i18next · t<const Key extends ParseKeys<["translation", ...string[]], TOpt, EffectiveKPrefix<undefined, TOpt>> | TemplateStringsArray, const TOpt extends TOptions, Ret extends TOpt["returnObjects"] extends true ? $SpecialObject : string, const ActualOptions extends Omit<TOpt, "context"> & $PreservedValue<_UnionToIntersection<(Ret extends `${string}{{${infer Value}}}${infer Rest}` ? (Value extends `${infer ActualValue},${infer Format}` ? [ParseActualValue<ActualValue>, TrimSpaces<Format, "">] : [ParseActualValue<Value>, never]) | (Rest extends `${string}{{${infer Value}}}${infer Rest}` ? any : never) : ne…<const Key extends ParseKeys<["translation", ...string[]], TOpt, EffectiveKPrefix<undefined, TOpt>> | TemplateStringsArray, const TOpt extends TOptions, Ret extends TOpt["returnObjects"] extends true ? $SpecialObject : string, const ActualOptions extends Omit<TOpt, "context"> & $PreservedValue<_UnionToIntersection<($NoInfer<string extends Ret ? _CheckedValue<["translation", ...string[]], AppendKeyPrefix<Key, EffectiveKPrefix<undefined, TOpt>>, TOpt> : Ret> extends `${string}{{${infer Value}}}${infer Rest}` ? (Value extends `${infer ActualValue},${infer Format}` ? [ParseActualValue<ActualValue>…
i18next · TypeOptionsOmit<$MergeBy<{ returnNull: false; returnEmptyString: true; returnObjects: false; keySeparator: "."; nsSeparator: ":"; pluralSeparator: "_"; contextSeparator: "_"; defaultNS: "translation"; fallbackNS: false; compatibilityJSON: "v4"; resources: object; allowObjectInHTMLChildren: false; strictKeyChecks: false; strictInterpolationChecks: false; interpolationPrefix: "{{"; interpolationSuffix: "}}"; interpolationFormatSeparator: ","; unescapePrefix: "-"; unescapeSuffix: ""; parseInterpolation: true; enableSelector: false; interpolationFormatTypeMap: {}; defaultVariables: {}; }, CustomTypeOptions>,…Omit<$MergeBy<{ returnNull: false; returnEmptyString: false; returnObjects: false; keySeparator: "."; nsSeparator: ":"; pluralSeparator: "_"; contextSeparator: "_"; defaultNS: "translation"; fallbackNS: false; resources: object; allowObjectInHTMLChildren: false; strictKeyChecks: false; strictInterpolationChecks: true; interpolationPrefix: "{{"; interpolationSuffix: "}}"; interpolationFormatSeparator: ","; unescapePrefix: "-"; unescapeSuffix: ""; parseInterpolation: true; enableSelector: false; interpolationFormatTypeMap: {}; defaultVariables: {}; }, CustomTypeOptions>, "resources"> & { resourc…
i18next · ParseTReturnWithFallbackVal extends "" ? "" : Val extends null ? Key : ValVal extends "" ? Key : Val extends null ? Key : Val
i18next · ParseKeysWithoutVariablesstring{} extends $PreservedValue<_UnionToIntersection<(_CheckedValue<Ns, AppendKeyPrefix<string, KPrefix>, {}> extends `${string}{{${infer Value}}}${infer Rest}` ? (Value extends `${infer ActualValue},${infer Format}` ? [ParseActualValue<ActualValue>, TrimSpaces<Format, "">] : [ParseActualValue<Value>, never]) | (Rest extends `${string}{{${infer Value}}}${infer Rest}` ? any : never) : never) extends [infer Name extends string, infer Format] ? $UnionToIntersection<$StringKeyPathToRecordUnion<Name, _ResolveEntryType<Name, Format>>> : never>, Record<string, unknown>> ? string : never
i18next · KeysBuilderWithReturnObjectsKey extends _KeysOf<Res> ? Res[Key] extends $Dictionary | readonly unknown[] ? `${Key & string}.${(keyof $OmitArrayKeys<Res[Key]> extends `${infer KeyWithoutOrdinalPlural}_ordinal_zero` | `${infer KeyWithoutOrdinalPlural}_ordinal_one` | `${infer KeyWithoutOrdinalPlural}_ordinal_two` | `${infer KeyWithoutOrdinalPlural}_ordinal_few` | `${infer KeyWithoutOrdinalPlural}_ordinal_many` | `${infer KeyWithoutOrdinalPlural}_ordinal_other` ? KeyWithoutOrdinalPlural | ((`${KeyWithoutOrdinalPlural}_ordinal_zero` | `${KeyWithoutOrdinalPlural}_ordinal_one` | `${KeyWithoutOrdinalPlural}_ordinal_two` | `${Key…Key extends _KeysOf<Res> ? Res[Key] extends $Dictionary | readonly unknown[] ? `${Key & string}.${WithOrWithoutPlural<keyof $OmitArrayKeys<Res[Key]>> & string}` | `${Key & string}.${KeysBuilderWithReturnObjects<Res[Key], keyof Res[Key]> & string}` : never : never

Usunięte składowe klas lub interfejsów

memberimportPrzed
InitOptions.locizeLastUsedi18next{ projectId: string; apiKey?: string | undefined; referenceLng?: string | undefined; version?: string | undefined; debounceSubmit?: number | undefined; allowedHosts?: readonly string[] | undefined; } | undefined
InitOptions.compatibilityJSONi18next"v4" | undefined
CloneOptions.locizeLastUsedi18next{ projectId: string; apiKey?: string | undefined; referenceLng?: string | undefined; version?: string | undefined; debounceSubmit?: number | undefined; allowedHosts?: readonly string[] | undefined; } | undefined
CloneOptions.compatibilityJSONi18next"v4" | undefined
ReactOptions.nsModei18next"fallback" | "default" | undefined
ReactOptions.bindI18ni18nextstring | false | undefined
ReactOptions.unescapei18next((str: string) => string) | undefined
ReactOptions.keyPrefixi18nextstring | (($: any) => any) | undefined
ReactOptions.useSuspensei18nextboolean | undefined
ReactOptions.hashTransKeyi18next((defaultValue: unknown) => unknown) | undefined
ReactOptions.bindI18nStorei18nextstring | false | undefined
ReactOptions.transDefaultPropsi18next{ tOptions?: TOptions<$Dictionary> | undefined; values?: object | undefined; shouldUnescape?: boolean | undefined; components?: readonly unknown[] | { readonly [tagName: string]: unknown; } | undefined; } | undefined
ReactOptions.defaultTransParenti18nextstring | undefined
ReactOptions.transWrapTextNodesi18nextstring | undefined
ReactOptions.transEmptyNodeValuei18nextstring | undefined
ReactOptions.transKeepBasicHtmlNodesFori18nextreadonly string[] | undefined
ReactOptions.transSupportBasicHtmlNodesi18nextboolean | undefined
InterpolationOptions.prefixEscapedi18nextstring | undefined
InterpolationOptions.suffixEscapedi18nextstring | undefined
InterpolationOptions.nestingPrefixEscapedi18nextstring | undefined
InterpolationOptions.nestingSuffixEscapedi18nextstring | undefined

Zmienione składowe klas lub interfejsów

memberPrzedPo
WithT.t<const Key extends ParseKeys<Ns, TOpt, EffectiveKPrefix<undefined, TOpt>> | TemplateStringsArray, const TOpt extends TOptions, Ret extends TOpt["returnObjects"] extends true ? $SpecialObject : string, const ActualOptions extends Omit<TOpt, "context"> & $PreservedValue<_UnionToIntersection<(Ret exten…<const Key extends ParseKeys<Ns, TOpt, EffectiveKPrefix<undefined, TOpt>> | TemplateStringsArray, const TOpt extends TOptions, Ret extends TOpt["returnObjects"] extends true ? $SpecialObject : string, const ActualOptions extends Omit<TOpt, "context"> & $PreservedValue<_UnionToIntersection<($NoInfer<…

Nowo wycofane

export@deprecated
i18next · InitOptions.cleanCodecanonical codes are the default since v27
i18next · CloneOptions.cleanCodecanonical codes are the default since v27

Zmiany wymagań (engines, zależności peer)

PrzedPo
engines.node—>=22

Przekaż te dane swojemu agentowi AI

Vigia to darmowy serwer MCP: Twój agent programistyczny sprawdza wersje, zmiany łamiące zgodność i podatności, zanim napisze kod. Bez rejestracji i klucza API.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Dodaj do CursorDodaj do VS Code★ Gwiazdka na GitHubie

Dowolny inny klient MCP
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

Skill dla agentów (SKILL.md): mówi agentowi, kiedy używać Vigii · GitHub Action dla pull requestów

Najczęściej zadawane pytania

Jakie są zmiany niekompatybilne przy aktualizacji i18next z 26 do 27?

Między i18next 26.7.2 a 27.0.0 Vigia znalazła 87 usuniętych eksportów, 5 zmienionych sygnatur i 22 usuniętych lub zmienionych składowych klas lub interfejsów.

Co zostało wycofane w i18next 27?

2 eksportów lub składowych oznaczono w i18next 27.0.0 jako wycofane.

Dla agentów

GET https://vigia.coredls.cloud/v1/packages/npm/i18next/upgrade?from=26.7.2&to=27.0.0