diff --git a/plugins/kotlin/base/analysis/src/org/jetbrains/kotlin/idea/decompiler/js/KotlinJavaScriptMetaFileDecompiler.kt b/plugins/kotlin/base/analysis/src/org/jetbrains/kotlin/idea/decompiler/js/KotlinJavaScriptMetaFileDecompiler.kt deleted file mode 100644 index 8304b84d5092..000000000000 --- a/plugins/kotlin/base/analysis/src/org/jetbrains/kotlin/idea/decompiler/js/KotlinJavaScriptMetaFileDecompiler.kt +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. - -package org.jetbrains.kotlin.idea.decompiler.js - -import com.intellij.openapi.vfs.VirtualFile -import org.jetbrains.kotlin.analysis.decompiler.psi.KotlinMetadataDecompiler -import org.jetbrains.kotlin.analysis.decompiler.stub.file.KotlinMetadataStubBuilder -import org.jetbrains.kotlin.idea.base.psi.fileTypes.KotlinJavaScriptMetaFileType -import org.jetbrains.kotlin.metadata.ProtoBuf -import org.jetbrains.kotlin.metadata.js.JsProtoBuf -import org.jetbrains.kotlin.psi.stubs.KotlinStubVersions -import org.jetbrains.kotlin.serialization.js.DynamicTypeDeserializer -import org.jetbrains.kotlin.serialization.js.JsSerializerProtocol -import org.jetbrains.kotlin.utils.JsMetadataVersion -import java.io.ByteArrayInputStream - -class KotlinJavaScriptMetaFileDecompiler : KotlinMetadataDecompiler( - fileType = KotlinJavaScriptMetaFileType, - serializerProtocol = { JsSerializerProtocol }, - flexibleTypeDeserializer = DynamicTypeDeserializer, - expectedBinaryVersion = { JsMetadataVersion.INSTANCE }, - invalidBinaryVersion = { JsMetadataVersion.INVALID_VERSION }, - stubVersion = KotlinStubVersions.JS_STUB_VERSION -) { - override fun readFile(bytes: ByteArray, file: VirtualFile): KotlinMetadataStubBuilder.FileWithMetadata { - val stream = ByteArrayInputStream(bytes) - - val version = JsMetadataVersion.readFrom(stream) - if (!version.isCompatible()) { - return KotlinMetadataStubBuilder.FileWithMetadata.Incompatible(version) - } - - JsProtoBuf.Header.parseDelimitedFrom(stream) - - val proto = ProtoBuf.PackageFragment.parseFrom(stream, JsSerializerProtocol.extensionRegistry) - return KotlinMetadataStubBuilder.FileWithMetadata.Compatible(proto, version, JsSerializerProtocol) - } -} diff --git a/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinJavaScriptMetaFileIndex.kt b/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinJavaScriptMetaFileIndex.kt index 4d18ed69c0e9..5536f94ceb1f 100644 --- a/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinJavaScriptMetaFileIndex.kt +++ b/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinJavaScriptMetaFileIndex.kt @@ -4,7 +4,7 @@ package org.jetbrains.kotlin.idea.vfilefinder import com.intellij.util.indexing.DefaultFileTypeSpecificInputFilter import com.intellij.util.indexing.FileContent import com.intellij.util.indexing.ID -import org.jetbrains.kotlin.idea.base.psi.fileTypes.KotlinJavaScriptMetaFileType +import org.jetbrains.kotlin.analysis.decompiler.js.KotlinJavaScriptMetaFileType import org.jetbrains.kotlin.metadata.js.JsProtoBuf import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.utils.JsMetadataVersion diff --git a/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinPartialPackageNamesIndex.kt b/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinPartialPackageNamesIndex.kt index 6a4223f70c03..2d6c51870f4f 100644 --- a/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinPartialPackageNamesIndex.kt +++ b/plugins/kotlin/base/indices/src/org/jetbrains/kotlin/idea/vfilefinder/KotlinPartialPackageNamesIndex.kt @@ -12,7 +12,7 @@ import org.jetbrains.kotlin.analysis.decompiler.konan.KlibMetaFileType import org.jetbrains.kotlin.analysis.decompiler.psi.KotlinBuiltInFileType import org.jetbrains.kotlin.analysis.decompiler.stub.file.ClsKotlinBinaryClassCache import org.jetbrains.kotlin.idea.KotlinFileType -import org.jetbrains.kotlin.idea.base.psi.fileTypes.KotlinJavaScriptMetaFileType +import org.jetbrains.kotlin.analysis.decompiler.js.KotlinJavaScriptMetaFileType import org.jetbrains.kotlin.library.metadata.KlibMetadataProtoBuf import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.Name diff --git a/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/KotlinBinaryExtension.kt b/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/KotlinBinaryExtension.kt index 1698fde6042c..1f1d9ee2f8c9 100644 --- a/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/KotlinBinaryExtension.kt +++ b/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/KotlinBinaryExtension.kt @@ -7,7 +7,7 @@ import com.intellij.openapi.fileTypes.FileType import org.jetbrains.kotlin.analysis.decompiler.konan.KlibMetaFileType import org.jetbrains.kotlin.analysis.decompiler.psi.KotlinBuiltInFileType import org.jetbrains.kotlin.idea.KotlinModuleFileType -import org.jetbrains.kotlin.idea.base.psi.fileTypes.KotlinJavaScriptMetaFileType +import org.jetbrains.kotlin.analysis.decompiler.js.KotlinJavaScriptMetaFileType abstract class KotlinBinaryExtension(val fileType: FileType) { companion object { diff --git a/plugins/kotlin/base/psi/src/org/jetbrains/kotlin/idea/base/psi/fileTypes/IdeKotlinLabelProviderService.kt b/plugins/kotlin/base/psi/src/org/jetbrains/kotlin/idea/base/psi/fileTypes/IdeKotlinLabelProviderService.kt index b20b45131445..e149eded77e8 100644 --- a/plugins/kotlin/base/psi/src/org/jetbrains/kotlin/idea/base/psi/fileTypes/IdeKotlinLabelProviderService.kt +++ b/plugins/kotlin/base/psi/src/org/jetbrains/kotlin/idea/base/psi/fileTypes/IdeKotlinLabelProviderService.kt @@ -8,4 +8,5 @@ import org.jetbrains.kotlin.idea.base.psi.KotlinBasePsiBundle class IdeKotlinLabelProviderService : KotlinLabelProviderService() { override fun getLabelForBuiltInFileType(): String = KotlinBasePsiBundle.message("kotlin.built.in.file.type") override fun getLabelForKlibMetaFileType(): String = KotlinBasePsiBundle.message("klib.metadata.short") + override fun getLabelForKotlinJavaScriptMetaFileType(): String = KotlinBasePsiBundle.message("kotlin.javascript.meta.file") } diff --git a/plugins/kotlin/base/psi/src/org/jetbrains/kotlin/idea/base/psi/fileTypes/KotlinJavaScriptMetaFileType.kt b/plugins/kotlin/base/psi/src/org/jetbrains/kotlin/idea/base/psi/fileTypes/KotlinJavaScriptMetaFileType.kt deleted file mode 100644 index 889a265a538e..000000000000 --- a/plugins/kotlin/base/psi/src/org/jetbrains/kotlin/idea/base/psi/fileTypes/KotlinJavaScriptMetaFileType.kt +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. - -package org.jetbrains.kotlin.idea.base.psi.fileTypes - -import com.intellij.openapi.fileTypes.FileType -import com.intellij.openapi.vfs.VirtualFile -import org.jetbrains.kotlin.idea.base.psi.KotlinBasePsiBundle -import org.jetbrains.kotlin.serialization.js.KotlinJavascriptSerializationUtil - -object KotlinJavaScriptMetaFileType : FileType { - override fun getName() = "KJSM" - override fun getDescription() = KotlinBasePsiBundle.message("kotlin.javascript.meta.file") - override fun getDefaultExtension() = KotlinJavascriptSerializationUtil.CLASS_METADATA_FILE_EXTENSION - override fun getIcon() = null - override fun isBinary() = true - override fun isReadOnly() = true - override fun getCharset(file: VirtualFile, content: ByteArray) = null -} diff --git a/plugins/kotlin/plugin/common/resources/META-INF/file-types.xml b/plugins/kotlin/plugin/common/resources/META-INF/file-types.xml index e799c5af3653..b6923e4f2756 100644 --- a/plugins/kotlin/plugin/common/resources/META-INF/file-types.xml +++ b/plugins/kotlin/plugin/common/resources/META-INF/file-types.xml @@ -21,7 +21,7 @@ + implementationClass="org.jetbrains.kotlin.analysis.decompiler.js.KotlinJavaScriptMetaFileType"/> - +