@@ -29882,7 +29882,13 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
2988229882 // #38720/60122, allow null as jsxFragmentFactory
2988329883 let jsxFactorySym: Symbol | undefined;
2988429884 if (!(isJsxOpeningFragment(node) && jsxFactoryNamespace === "null")) {
29885- jsxFactorySym = resolveName(jsxFactoryLocation, jsxFactoryNamespace, compilerOptions.jsx === JsxEmit.Preserve ? SymbolFlags.Value & ~SymbolFlags.Enum : SymbolFlags.Value, jsxFactoryRefErr, /*isUse*/ true);
29885+ jsxFactorySym = resolveName(
29886+ jsxFactoryLocation,
29887+ jsxFactoryNamespace,
29888+ (compilerOptions.jsx === JsxEmit.Preserve || compilerOptions.jsx === JsxEmit.ReactNative) ? SymbolFlags.Value & ~SymbolFlags.Enum : SymbolFlags.Value,
29889+ jsxFactoryRefErr,
29890+ /*isUse*/ true,
29891+ );
2988629892 }
2988729893
2988829894 if (jsxFactorySym) {
@@ -29901,7 +29907,13 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
2990129907 const file = getSourceFileOfNode(node);
2990229908 const localJsxNamespace = getLocalJsxNamespace(file);
2990329909 if (localJsxNamespace) {
29904- resolveName(jsxFactoryLocation, localJsxNamespace, compilerOptions.jsx === JsxEmit.Preserve ? SymbolFlags.Value & ~SymbolFlags.Enum : SymbolFlags.Value, jsxFactoryRefErr, /*isUse*/ true);
29910+ resolveName(
29911+ jsxFactoryLocation,
29912+ localJsxNamespace,
29913+ (compilerOptions.jsx === JsxEmit.Preserve || compilerOptions.jsx === JsxEmit.ReactNative) ? SymbolFlags.Value & ~SymbolFlags.Enum : SymbolFlags.Value,
29914+ jsxFactoryRefErr,
29915+ /*isUse*/ true,
29916+ );
2990529917 }
2990629918 }
2990729919 }
@@ -36655,7 +36667,13 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
3665536667
3665636668 const jsxFactoryRefErr = diagnostics ? Diagnostics.Using_JSX_fragments_requires_fragment_factory_0_to_be_in_scope_but_it_could_not_be_found : undefined;
3665736669 const jsxFactorySymbol = getJsxNamespaceContainerForImplicitImport(node) ??
36658- resolveName(node, jsxFragmentFactoryName, compilerOptions.jsx === JsxEmit.Preserve ? SymbolFlags.Value & ~SymbolFlags.Enum : SymbolFlags.Value, /*nameNotFoundMessage*/ jsxFactoryRefErr, /*isUse*/ true);
36670+ resolveName(
36671+ node,
36672+ jsxFragmentFactoryName,
36673+ (compilerOptions.jsx === JsxEmit.Preserve || compilerOptions.jsx === JsxEmit.ReactNative) ? SymbolFlags.Value & ~SymbolFlags.Enum : SymbolFlags.Value,
36674+ /*nameNotFoundMessage*/ jsxFactoryRefErr,
36675+ /*isUse*/ true,
36676+ );
3665936677
3666036678 if (jsxFactorySymbol === undefined) return sourceFileLinks.jsxFragmentType = errorType;
3666136679 if (jsxFactorySymbol.escapedName === ReactNames.Fragment) return sourceFileLinks.jsxFragmentType = getTypeOfSymbol(jsxFactorySymbol);
0 commit comments