@@ -1207,23 +1207,23 @@ func tryGetModuleNameFromExportsOrImports(
12071207 case MatchingModePattern :
12081208 leadingSlice , trailingSlice , _ := strings .Cut (pathOrPattern , "*" )
12091209 caseSensitive := host .UseCaseSensitiveFileNames ()
1210- if canTryTsExtension && stringutil .HasPrefix (targetFilePath , leadingSlice , caseSensitive ) && stringutil . HasSuffix ( targetFilePath , trailingSlice , caseSensitive ) {
1210+ if canTryTsExtension && stringutil .HasPrefixAndSuffixWithoutOverlap (targetFilePath , leadingSlice , trailingSlice , caseSensitive ) {
12111211 starReplacement := targetFilePath [len (leadingSlice ) : len (targetFilePath )- len (trailingSlice )]
12121212 return replaceFirstStar (packageName , starReplacement )
12131213 }
1214- if len (extensionSwappedTarget ) > 0 && stringutil .HasPrefix (extensionSwappedTarget , leadingSlice , caseSensitive ) && stringutil . HasSuffix ( extensionSwappedTarget , trailingSlice , caseSensitive ) {
1214+ if len (extensionSwappedTarget ) > 0 && stringutil .HasPrefixAndSuffixWithoutOverlap (extensionSwappedTarget , leadingSlice , trailingSlice , caseSensitive ) {
12151215 starReplacement := extensionSwappedTarget [len (leadingSlice ) : len (extensionSwappedTarget )- len (trailingSlice )]
12161216 return replaceFirstStar (packageName , starReplacement )
12171217 }
1218- if ! canTryTsExtension && stringutil .HasPrefix (targetFilePath , leadingSlice , caseSensitive ) && stringutil . HasSuffix ( targetFilePath , trailingSlice , caseSensitive ) {
1218+ if ! canTryTsExtension && stringutil .HasPrefixAndSuffixWithoutOverlap (targetFilePath , leadingSlice , trailingSlice , caseSensitive ) {
12191219 starReplacement := targetFilePath [len (leadingSlice ) : len (targetFilePath )- len (trailingSlice )]
12201220 return replaceFirstStar (packageName , starReplacement )
12211221 }
1222- if len (outputFile ) > 0 && stringutil .HasPrefix (outputFile , leadingSlice , caseSensitive ) && stringutil . HasSuffix ( outputFile , trailingSlice , caseSensitive ) {
1222+ if len (outputFile ) > 0 && stringutil .HasPrefixAndSuffixWithoutOverlap (outputFile , leadingSlice , trailingSlice , caseSensitive ) {
12231223 starReplacement := outputFile [len (leadingSlice ) : len (outputFile )- len (trailingSlice )]
12241224 return replaceFirstStar (packageName , starReplacement )
12251225 }
1226- if len (declarationFile ) > 0 && stringutil .HasPrefix (declarationFile , leadingSlice , caseSensitive ) && stringutil . HasSuffix ( declarationFile , trailingSlice , caseSensitive ) {
1226+ if len (declarationFile ) > 0 && stringutil .HasPrefixAndSuffixWithoutOverlap (declarationFile , leadingSlice , trailingSlice , caseSensitive ) {
12271227 starReplacement := declarationFile [len (leadingSlice ) : len (declarationFile )- len (trailingSlice )]
12281228 substituted := replaceFirstStar (packageName , starReplacement )
12291229 jsExtension := tryGetJSExtensionForFile (declarationFile , options )
0 commit comments