vuejs/vuejs-backend/resources/intellij.vuejs.backend.xml (338 lines of code) (raw):

<idea-plugin visibility="internal"> <dependencies> <module name="intellij.platform.backend"/> <module name="intellij.vuejs.common"/> <plugin id="com.intellij.modules.xml"/> <plugin id="JavaScript"/> <plugin id="com.intellij.css"/> <plugin id="intellij.webpack"/> <plugin id="org.intellij.plugins.postcss"/> <module name="intellij.spellchecker"/> <module name="intellij.javascript.ultimate"/> <!-- region Generated dependencies - run `Generate Product Layouts` to regenerate --> <module name="intellij.libraries.commons.text"/> <!-- endregion --> </dependencies> <extensionPoints> <extensionPoint qualifiedName="com.intellij.vuejs.containerInfoProvider" interface="org.jetbrains.vuejs.model.source.VueContainerInfoProvider" dynamic="true"/> <extensionPoint qualifiedName="com.intellij.vuejs.templateScopesProvider" interface="org.jetbrains.vuejs.codeInsight.template.VueTemplateScopesProvider" dynamic="true"/> </extensionPoints> <extensions defaultExtensionNs="com.intellij"> <registryKey defaultValue="true" description="Use bundled Vue service" key="vue.language.server.bundled.enabled"/> <registryKey defaultValue="" description="Vue service version for downloading" key="vue.language.server.default.version"/> <registryKey defaultValue="" description="Vue TypeScript plugin version for downloading" key="vue.ts.plugin.default.version"/> <registryKey defaultValue="true" description="Use bundled Vue TypeScript plugin" key="vue.ts.plugin.bundled.enabled"/> <css.embeddedCssProvider implementation="org.jetbrains.vuejs.css.VueEmbeddedCssProvider"/> <css.inclusionContext implementation="org.jetbrains.vuejs.css.VueCssInclusionContext"/> <html.attributeValueProvider implementation="org.jetbrains.vuejs.codeInsight.attributes.VueCustomAttributeValueProvider"/> <metaLanguage implementation="org.jetbrains.vuejs.lang.expr.VueExprMetaLanguage"/> <fileType name="Vue.js" extensions="vue" language="Vue" implementationClass="org.jetbrains.vuejs.lang.html.VueFileType" fieldName="INSTANCE"/> <lang.parserDefinition language="Vue" implementationClass="org.jetbrains.vuejs.lang.html.parser.VueParserDefinition"/> <lang.parserDefinition language="VueJS" implementationClass="org.jetbrains.vuejs.lang.expr.parser.VueJSParserDefinition"/> <lang.parserDefinition language="VueTS" implementationClass="org.jetbrains.vuejs.lang.expr.parser.VueTSParserDefinition"/> <tree.CustomLanguageASTComparator language="Vue" implementationClass="org.jetbrains.vuejs.lang.html.parser.VueASTComparator"/> <html.embeddedContentSupport implementation="org.jetbrains.vuejs.lang.html.lexer.VueEmbeddedContentSupport"/> <html.embeddedContentSupport implementation="org.jetbrains.vuejs.libraries.i18n.VueI18nEmbeddedContentSupport"/> <typedHandler implementation="org.jetbrains.vuejs.editor.VueJSBracesInterpolationTypedHandler"/> <lang.braceMatcher language="VueExpr" implementationClass="com.intellij.lang.javascript.highlighting.JSBraceMatcher"/> <psi.referenceContributor language="JavaScript" implementation="org.jetbrains.vuejs.codeInsight.refs.VueJSReferenceContributor"/> <psi.referenceContributor language="Vue" implementation="org.jetbrains.vuejs.codeInsight.refs.VueReferenceContributor"/> <psi.referenceContributor language="JavaScript" implementation="org.jetbrains.vuejs.libraries.vuex.codeInsight.refs.VuexReferenceContributor"/> <psi.referenceContributor language="VueExpr" implementation="org.jetbrains.vuejs.css.refs.VueCssReferencesContributor"/> <psi.referenceContributor language="CSS" implementation="org.jetbrains.vuejs.css.refs.VueCssReferencesContributor"/> <pom.declarationSearcher implementation="org.jetbrains.vuejs.codeInsight.refs.VuePomDeclarationSearcher"/> <psi.fileReferenceHelper implementation="org.jetbrains.vuejs.libraries.nuxt.codeInsight.NuxtFileReferenceHelper"/> <useScopeEnlarger implementation="org.jetbrains.vuejs.findUsages.VueUseScopeEnlarger"/> <implicitUsageProvider implementation="org.jetbrains.vuejs.codeInsight.refs.VueImplicitUsageProvider"/> <platform.lsp.serverSupportProvider implementation="org.jetbrains.vuejs.lang.typescript.service.lsp.VueLspServerSupportProvider"/> <quoteHandler className="com.intellij.codeInsight.editorActions.HtmlQuoteHandler" fileType="Vue.js"/> <copyPastePostProcessor implementation="org.jetbrains.vuejs.codeInsight.imports.VueTemplateExpressionsCopyPasteProcessor"/> <copyPastePostProcessor implementation="org.jetbrains.vuejs.codeInsight.imports.VueComponentCopyPasteProcessor"/> <lang.syntaxHighlighterFactory language="Vue" implementationClass="org.jetbrains.vuejs.lang.html.highlighting.VueSyntaxHighlighterFactory"/> <xml.xmlExtension implementation="org.jetbrains.vuejs.codeInsight.VueXmlExtension" order="before poly-symbols-react"/> <xml.xmlSuppressionProvider implementation="org.jetbrains.vuejs.inspections.VueXmlSuppressionProvider" order="first"/> <notificationGroup displayType="BALLOON" id="Vue" isLogByDefault="true" bundle="messages.VueBundle" key="vue.documentation.vue"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueComponentsIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueCompositionAppIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueOptionsIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueMixinBindingIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueExtendsBindingIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueGlobalDirectivesIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueUrlIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueIdIndex"/> <stubIndex implementation="org.jetbrains.vuejs.index.VueGlobalFiltersIndex"/> <stubIndex implementation="org.jetbrains.vuejs.libraries.vuex.index.VuexStoreIndex"/> <fileBasedIndex implementation="org.jetbrains.vuejs.index.VueEmptyComponentInitializersIndex"/> <fileBasedIndex implementation="org.jetbrains.vuejs.index.VueComponentStylesIndex"/> <languageStubDefinition language="Vue" implementationClass="org.jetbrains.vuejs.lang.stubs.VueLanguageStubDefinition"/> <stubElementRegistryExtension implementation="org.jetbrains.vuejs.lang.stubs.VueStubRegistryExtension"/> <langCodeStyleSettingsProvider implementation="org.jetbrains.vuejs.options.VueCodeStyleSettingsProvider"/> <fileIndentOptionsProvider implementation="org.jetbrains.vuejs.lang.html.psi.formatter.VueFileIndentOptionsProvider" id="vue" order="before html"/> <!-- we store settings under ts since there are only ts server specific options there --> <projectConfigurable parentId="settings.typescriptcompiler" instance="org.jetbrains.vuejs.options.VueConfigurable" id="settings.vue" bundle="messages.VueBundle" key="vue.configurable.title" nonDefaultProject="true" /> <postStartupActivity implementation="org.jetbrains.vuejs.lang.html.psi.arrangement.VueArrangementSettingsMigration"/> <!-- works in WebStorm and other SmallIDEs --> <directoryProjectGenerator implementation="org.jetbrains.vuejs.cli.VueCliProjectGenerator"/> <directoryProjectGenerator implementation="org.jetbrains.vuejs.cli.NuxtProjectGenerator"/> <!-- works in IDEA --> <projectTemplatesFactory implementation="org.jetbrains.vuejs.cli.VueProjectTemplateFactory"/> <projectTemplatesFactory implementation="org.jetbrains.vuejs.cli.NuxtProjectTemplateFactory"/> <!-- works in new IDEA wizard --> <moduleBuilder builderClass="org.jetbrains.vuejs.cli.VueCLIProjectModuleBuilder"/> <moduleBuilder builderClass="org.jetbrains.vuejs.cli.NuxtProjectModuleBuilder"/> <workspaceModel.fileIndexContributor implementation="org.jetbrains.vuejs.libraries.nuxt.library.NuxtFolderLibraryContributor"/> <postStartupActivity implementation="org.jetbrains.vuejs.libraries.nuxt.library.NuxtFolderLibraryStartupActivity"/> <localInspection language="Vue" groupKey="vue.inspection.group.name" shortName="VueDataFunction" enabledByDefault="true" level="WARNING" implementationClass="org.jetbrains.vuejs.inspections.DataFunctionInspection" key="vue.inspection.display.name.data.function" bundle="messages.VueBundle"/> <localInspection language="Vue" groupKey="vue.inspection.group.name" shortName="VueDuplicateTag" enabledByDefault="true" level="WARNING" implementationClass="org.jetbrains.vuejs.inspections.DuplicateTagInspection" key="vue.inspection.display.name.duplicate.tag" bundle="messages.VueBundle"/> <localInspection language="Vue" groupKey="vue.inspection.group.name" shortName="VueMissingComponentImportInspection" enabledByDefault="true" level="WARNING" implementationClass="org.jetbrains.vuejs.inspections.VueMissingComponentImportInspection" key="vue.inspection.display.name.missing.component.import" bundle="messages.VueBundle"/> <localInspection language="Vue" groupKey="vue.inspection.group.name" shortName="VueUnrecognizedSlot" enabledByDefault="true" level="WEAK WARNING" implementationClass="org.jetbrains.vuejs.inspections.VueUnrecognizedSlotInspection" key="vue.inspection.display.name.unrecognized.slot" bundle="messages.VueBundle"/> <polySymbols.inspectionToolMapping problemKind="UnknownSymbol" symbolNamespace="html" symbolKind="vue-available-slots" toolShortName="VueUnrecognizedSlot"/> <localInspection language="Vue" groupKey="vue.inspection.group.name" shortName="VueUnrecognizedDirective" enabledByDefault="true" level="WARNING" implementationClass="org.jetbrains.vuejs.inspections.VueUnrecognizedDirectiveInspection" key="vue.inspection.display.name.unrecognized.directive" bundle="messages.VueBundle"/> <polySymbols.inspectionToolMapping problemKind="UnknownSymbol" symbolNamespace="html" symbolKind="vue-directives" toolShortName="VueUnrecognizedDirective"/> <localInspection language="Vue" groupKey="vue.inspection.group.name" shortName="VueDeprecatedSymbol" enabledByDefault="true" level="WARNING" implementationClass="org.jetbrains.vuejs.inspections.VueDeprecatedSymbolInspection" key="vue.inspection.display.name.deprecated.symbol" bundle="messages.VueBundle"/> <polySymbols.inspectionToolMapping problemKind="DeprecatedSymbol" symbolNamespace="html" symbolKind="vue-available-slots" toolShortName="VueDeprecatedSymbol"/> <polySymbols.inspectionToolMapping problemKind="DeprecatedSymbol" symbolNamespace="html" symbolKind="vue-components" toolShortName="VueDeprecatedSymbol"/> <polySymbols.inspectionToolMapping problemKind="DeprecatedSymbol" symbolNamespace="html" symbolKind="vue-directives" toolShortName="VueDeprecatedSymbol"/> <polySymbols.inspectionToolMapping problemKind="DeprecatedSymbol" symbolNamespace="html" symbolKind="vue-special-properties" toolShortName="VueDeprecatedSymbol"/> <polySymbols.inspectionToolMapping problemKind="DeprecatedSymbol" symbolNamespace="html" symbolKind="vue-file-top-elements" toolShortName="VueDeprecatedSymbol"/> <polySymbols.inspectionToolMapping problemKind="DeprecatedSymbol" symbolNamespace="html" symbolKind="vue-model-modifiers" toolShortName="VueDeprecatedSymbol"/> <polySymbols.documentationCustomizer implementation="org.jetbrains.vuejs.web.VueDocumentationCustomizer"/> <intentionAction> <language>Vue</language> <className>org.jetbrains.vuejs.intentions.extractComponent.VueExtractComponentIntention</className> <!--suppress PluginXmlI18n --> <category>VueJS</category> </intentionAction> <intentionAction> <language>Vue</language> <className>org.jetbrains.vuejs.intentions.VueExpandVModelIntention</className> <!--suppress PluginXmlI18n --> <category>VueJS</category> </intentionAction> <intentionAction> <language>Vue</language> <className>org.jetbrains.vuejs.intentions.VueImportComponentIntention</className> <!--suppress PluginXmlI18n --> <category>VueJS</category> </intentionAction> <!--suppress PluginXmlValidity --> <multiHostInjector implementation="org.jetbrains.vuejs.editor.VueInjector" order="before JSConfigurationInjector, before PolySymbolsHtmlText, after TemporaryPlacesInjector" id="VueInjector"/> <internalFileTemplate name="Vue Composition API Component"/> <internalFileTemplate name="Vue Options API Component"/> <internalFileTemplate name="Vue Class API Component"/> <createFromTemplateHandler implementation="org.jetbrains.vuejs.VueCreateFromTemplateHandler"/> <defaultTemplatePropertiesProvider implementation="org.jetbrains.vuejs.VueDefaultTemplatePropertiesProvider"/> <spellchecker.bundledDictionaryProvider implementation="org.jetbrains.vuejs.spellchecker.VueSpellcheckingDictionaryProvider"/> <liveTemplateContext contextId="Vue" implementation="org.jetbrains.vuejs.liveTemplate.VueBaseLiveTemplateContextType"/> <liveTemplateContext contextId="VUE_SCRIPT" baseContextId="Vue" implementation="org.jetbrains.vuejs.liveTemplate.VueScriptLiveTemplateContextType"/> <liveTemplateContext contextId="VUE_COMPONENT_DESCRIPTOR" baseContextId="Vue" implementation="org.jetbrains.vuejs.liveTemplate.VueComponentDescriptorLiveTemplateContextType"/> <liveTemplateContext contextId="VUE_TEMPLATE" baseContextId="Vue" implementation="org.jetbrains.vuejs.liveTemplate.VueTemplateLiveTemplateContextType"/> <liveTemplateContext contextId="VUE_INSIDE_TAG" baseContextId="Vue" implementation="org.jetbrains.vuejs.liveTemplate.VueInsideTagLiveTemplateContextType"/> <liveTemplateContext contextId="VUE_TOP_LEVEL" baseContextId="Vue" implementation="org.jetbrains.vuejs.liveTemplate.VueTopLevelLiveTemplateContextType"/> <defaultLiveTemplates file="liveTemplates/Vue"/> <referencesSearch implementation="org.jetbrains.vuejs.findUsages.VueReferenceSearcher"/> <completion.contributor language="any" implementationClass="org.jetbrains.vuejs.codeInsight.VueCompletionContributor" id="VueCompletionContributor" order="before JSPatternBasedCompletionContributor, before JSCompletionContributor, before xmlNonFirst, before cssClassOrIdReferenceCompletionContributor"/> <completion.contributor language="JavaScript" implementationClass="org.jetbrains.vuejs.libraries.vuex.codeInsight.VuexCompletionContributor" id="VuexCompletionContributor"/> <typedHandler implementation="org.jetbrains.vuejs.codeInsight.completion.VueAutoPopupHandler"/> <include.provider implementation="org.jetbrains.vuejs.index.VueFileIncludeProvider"/> <lang.formatter language="Vue" implementationClass="org.jetbrains.vuejs.lang.html.psi.formatter.VueFormattingModelBuilder"/> <lang.formatter language="VueExpr" implementationClass="org.jetbrains.vuejs.lang.expr.psi.formatter.VueExprFormattingModelBuilder"/> <lang.rearranger language="Vue" implementationClass="org.jetbrains.vuejs.lang.html.psi.arrangement.VueRearranger"/> <multiLangCommenter implementation="org.jetbrains.vuejs.editor.VueCommenterProvider"/> <lang.syntaxHighlighterFactory language="VueJS" implementationClass="org.jetbrains.vuejs.lang.expr.highlighting.VueJSHighlighterFactory"/> <lang.syntaxHighlighterFactory language="VueTS" implementationClass="org.jetbrains.vuejs.lang.expr.highlighting.VueTSHighlighterFactory"/> <idIndexer filetype="Vue.js" implementationClass="org.jetbrains.vuejs.lang.html.index.VueIdIndexer"/> <todoIndexer filetype="Vue.js" implementationClass="org.jetbrains.vuejs.lang.html.index.VueTodoIndexer"/> <codeInsight.parameterInfo language="VueExpr" implementationClass="com.intellij.javascript.JSParameterInfoHandler"/> <codeInsight.parameterNameHints language="Vue" implementationClass="org.jetbrains.vuejs.editor.VueInlayParameterHintsProvider"/> <eslint.ruleMappersFactory implementation="org.jetbrains.vuejs.libraries.eslint.VueEslintRuleMappersFactory"/> <polySymbols.psiReferenceProvider hostElementClass="com.intellij.psi.xml.XmlAttributeValue" hostLanguage="HtmlCompatible" implementationClass="org.jetbrains.vuejs.web.VueDeprecatedSlotAttributeReferenceProvider"/> <polySymbols.declarationProvider implementation="org.jetbrains.vuejs.web.VueSymbolDeclarationProvider"/> <vetoRenameCondition implementation="org.jetbrains.vuejs.web.VueRenameHandlerVeto"/> <lang.elementManipulator forClass="org.jetbrains.vuejs.model.VueFakeSrcAttributeValue" implementationClass="org.jetbrains.vuejs.model.VueFakeScrAttributeValueManipulator"/> <polySymbols.framework id="vue" implementation="org.jetbrains.vuejs.web.VueFramework"/> <polySymbols.context kind="framework" name="vue" implementation="org.jetbrains.vuejs.context.VueFileContextProvider" id="vue.file"/> <polySymbols.webTypes source="web-types/vue@1.0.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.0.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.1.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.1.8.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.2.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.3.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.4.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.5.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.6.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@2.7.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@3.0.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@3.1.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@3.2.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@3.3.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@3.4.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue@3.5.0.web-types.json" enableByDefault="true"/> <polySymbols.webTypes source="web-types/vue@3.6.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue-i18n@0.0.0.web-types.json"/> <polySymbols.webTypes source="web-types/vue-contexts@0.0.0.web-types.json" enableByDefault="true"/> <polySymbols.webTypes source="web-types/nuxt@0.0.0.web-types.json"/> <polySymbols.queryConfigurator implementation="org.jetbrains.vuejs.web.VueSymbolQueryConfigurator" id="vue"/> <polySymbols.queryScopeContributor implementation="org.jetbrains.vuejs.web.VueSymbolQueryScopeContributor" id="vue"/> <polySymbols.queryScopeContributor implementation="org.jetbrains.vuejs.libraries.i18n.VueI18NSymbolQueryScopeContributor" id="vue-i18n"/> <polySymbols.queryResultsCustomizerFactory implementation="org.jetbrains.vuejs.web.VueSymbolQueryResultsCustomizer$Factory"/> <polySymbols.webTypes.filter name="vue-bind" implementation="org.jetbrains.vuejs.web.VueBindFilter"/> <polySymbols.codeCompletionItemCustomizer implementation="org.jetbrains.vuejs.web.VueCodeCompletionItemCustomizer"/> <vuejs.templateScopesProvider implementation="org.jetbrains.vuejs.codeInsight.template.VueStandardSymbolsScopesProvider" id="standardSymbols" order="before templateElements"/> <vuejs.templateScopesProvider implementation="org.jetbrains.vuejs.codeInsight.template.VueTemplateElementsScopeProvider" id="templateElements"/> <vuejs.templateScopesProvider implementation="org.jetbrains.vuejs.codeInsight.template.VueScriptSetupScopeProvider" id="scriptSetupScope" order="after templateElements"/> <vuejs.templateScopesProvider implementation="org.jetbrains.vuejs.codeInsight.template.VueContainerScopeProvider" id="containerScope" order="after scriptSetupScope"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.model.source.VueDefaultContainerInfoProvider" id="default"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.model.source.VueComponentTemplateInfoProvider" id="defaultTemplate" order="after default, before decoratedComponent"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.model.source.VueCompositionInfoProvider" id="composition" order="after default, before decoratedComponent"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.model.source.VueScriptSetupInfoProvider" id="scriptSetup" order="after default, before decoratedComponent"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.libraries.componentDecorator.VueDecoratedComponentInfoProvider" id="decoratedComponent" order="after default"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.libraries.vuex.model.component.VuexBasicComponentInfoProvider" id="vuexBasic" order="after decoratedComponent"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.libraries.vuex.model.component.VuexDecoratedComponentInfoProvider" id="vuexDecoratedComponent" order="after decoratedComponent"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.libraries.templateLoader.TemplateLoaderComponentInfoProvider" id="templateLoader" order="after defaultTemplate"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.libraries.vuelidate.VuelidateContainerInfoProvider" id="vuelidate" order="after decoratedComponent"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.libraries.nuxt.model.NuxtComponentProvider" id="nuxt"/> <vuejs.containerInfoProvider implementation="org.jetbrains.vuejs.libraries.cssModules.VueCssModulesInfoProvider" id="css-modules"/> <platform.backend.documentation.psiTargetProvider implementation="org.jetbrains.vuejs.web.VuePsiDocumentationProvider"/> <codeInsight.codeVisionSettingsPreviewLanguage language="Vue" modelId="component.usage"/> </extensions> <actions resource-bundle="messages.VueBundle"> <action class="org.jetbrains.vuejs.CreateVueSingleFileComponentAction" id="CreateVueSingleFileComp" icon="org.jetbrains.vuejs.VuejsIcons.Vue"> <add-to-group group-id="NewWebDevelopment" anchor="before" relative-to-action="NewJavaScriptFile"/> </action> <action id="VueExtractComponentAction" class="org.jetbrains.vuejs.intentions.extractComponent.VueExtractComponentAction" icon="org.jetbrains.vuejs.VuejsIcons.Vue"> <add-to-group group-id="IntroduceActionsGroup" anchor="last"/> </action> </actions> <applicationListeners> <listener class="org.jetbrains.vuejs.lang.html.VueFileType$FileTypeChangeListener" topic="com.intellij.openapi.fileTypes.FileTypeListener"/> </applicationListeners> <extensions defaultExtensionNs="JavaScript"> <elementScopeProvider implementation="org.jetbrains.vuejs.VueElementResolveScopeProvider"/> <indexedFileTypeProvider implementation="org.jetbrains.vuejs.lang.html.VueIndexedFileTypeProvider"/> <frameworkIndexingHandler implementation="org.jetbrains.vuejs.index.VueFrameworkHandler" version="39"/> <frameworkIndexingHandler implementation="org.jetbrains.vuejs.libraries.vuex.index.VuexFrameworkHandler" version="7"/> <frameworkIndexingHandler implementation="org.jetbrains.vuejs.libraries.templateLoader.TemplateLoaderFrameworkHandler" version="1"/> <intentionAndInspectionFilter language="VueExpr" implementationClass="org.jetbrains.vuejs.inspections.VueInspectionFilter"/> <inheritedLanguagesConfigurableProvider language="VueExpr" implementationClass="org.jetbrains.vuejs.codeInsight.VueExprLanguageConfigurableProvider"/> <dialectSpecificHandlersFactory language="VueJS" implementationClass="org.jetbrains.vuejs.codeInsight.VueJSSpecificHandlersFactory"/> <dialectSpecificHandlersFactory language="VueTS" implementationClass="org.jetbrains.vuejs.codeInsight.VueTSSpecificHandlersFactory"/> <!-- control flow, strict null checks --> <dialectSpecificHandlersFactory language="Vue" implementationClass="org.jetbrains.vuejs.codeInsight.VueFileSpecificHandlersFactory"/> <handlersFactory language="VueJS" implementationClass="org.jetbrains.vuejs.codeInsight.VueJSHandlersFactory"/> <handlersFactory language="VueTS" implementationClass="org.jetbrains.vuejs.codeInsight.VueTSHandlersFactory"/> <handlersFactory language="Vue" implementationClass="org.jetbrains.vuejs.codeInsight.VueJSHandlersFactory"/> <!-- JSImportOnCopyCollectors --> <analysisHandlersFactory language="VueJS" implementationClass="org.jetbrains.vuejs.inspections.VueJSAnalysisHandlersFactory"/> <analysisHandlersFactory language="VueTS" implementationClass="org.jetbrains.vuejs.inspections.VueTSAnalysisHandlersFactory"/> <frameworkSpecificHandler language="JavaScript" implementationClass="org.jetbrains.vuejs.libraries.nuxt.codeInsight.NuxtFrameworkSpecificHandler"/> <frameworkSpecificHandler language="JavaScript" implementationClass="org.jetbrains.vuejs.codeInsight.VueFrameworkSpecificHandler"/> <frameworkSpecificHandler language="JavaScript" implementationClass="org.jetbrains.vuejs.codeInsight.VueFrameworkInsideScriptSpecificHandler"/> <frameworkSpecificHandler language="JavaScript" implementationClass="org.jetbrains.vuejs.libraries.vuex.codeInsight.VuexFrameworkSpecificHandler"/> <tsImportResolver implementation="org.jetbrains.vuejs.lang.typescript.VueTypeScriptImportsResolverProvider" order="first"/> <importModulePathStrategy order="after TypeScript" implementation="org.jetbrains.vuejs.lang.VueImportModulePathStrategy"/> <languageServiceProvider order="first" implementation="org.jetbrains.vuejs.lang.typescript.service.VueLanguageServiceProvider"/> <importCandidatesFactory implementation="org.jetbrains.vuejs.codeInsight.imports.VueScriptCandidatesProviderFactory"/> <importCandidatesFactory implementation="org.jetbrains.vuejs.codeInsight.imports.VueComponentImportCandidatesProviderFactory"/> <scanningFileListenerContributor implementation="org.jetbrains.vuejs.libraries.nuxt.library.NuxtFolderScanningListenerContributor"/> <moduleExportsProvider id="vue" implementation="org.jetbrains.vuejs.codeInsight.imports.VueModuleExportsProvider"/> <componentUsageProvider language="Vue" implementationClass="org.jetbrains.vuejs.codeInsight.hints.VueComponentUsageProvider"/> <typeScriptCompilerTypeFilter implementation="org.jetbrains.vuejs.libraries.nuxt.codeInsight.NuxtTypeScriptTypeFilter"/> </extensions> <extensions defaultExtensionNs="intellij.webpack"> <webpackLocator implementation="org.jetbrains.vuejs.cli.VueCliWebpackConfigLocator"/> <webpackLocator implementation="org.jetbrains.vuejs.libraries.nuxt.codeInsight.NuxtWebpackConfigLocator"/> </extensions> </idea-plugin>