Files
openide/json/resources/intellij.json.xml
Nikita Katkov 6390536f69 [json] Introduced experimental API for file content aware json schema provider
GitOrigin-RevId: 42258d8c3ab07fbcbb4191ee13f48a1d897c9b49
2021-08-05 14:31:39 +00:00

204 lines
16 KiB
XML

<idea-plugin>
<module value="com.intellij.modules.json"/>
<actions>
<action id="JsonCopyPointer" class="com.intellij.json.editor.JsonCopyPointerAction">
<add-to-group group-id="CutCopyPasteGroup" anchor="after" relative-to-action="CopyReference"/>
<add-to-group group-id="EditorTabPopupMenu" anchor="after" relative-to-action="CopyReference"/>
<add-to-group group-id="EditorPopupMenu" anchor="after" relative-to-action="Copy.Paste.Special"/>
</action>
<action id="JsonPathEvaluateAction" class="com.intellij.jsonpath.ui.JsonPathEvaluateAction" icon="AllIcons.FileTypes.Json">
<add-to-group group-id="FindMenuGroup" anchor="after" relative-to-action="StructuralSearchActions" />
<add-to-group group-id="EditorPopupMenu" anchor="last"/>
</action>
<action id="JsonPathExportEvaluateResultAction" class="com.intellij.jsonpath.ui.JsonPathExportEvaluateResultAction"
use-shortcut-of="ExportToTextFile" icon="AllIcons.Actions.MenuSaveall">
<add-to-group group-id="EditorContextBarMenu"/>
</action>
</actions>
<extensions defaultExtensionNs="com.intellij">
<fileType name="JSON" extensions="har;json" implementationClass="com.intellij.json.JsonFileType" fieldName="INSTANCE" language="JSON"/>
<fileType name="JSON5" extensions="json5" implementationClass="com.intellij.json.json5.Json5FileType" fieldName="INSTANCE" language="JSON5"/>
<fileType name="JSON-lines" extensions="jsonl;jsonlines;ldjson;ndjson"
implementationClass="com.intellij.json.jsonLines.JsonLinesFileType" fieldName="INSTANCE" language="JSON Lines"/>
<fileIconProvider implementation="com.jetbrains.jsonSchema.JsonSchemaIconProvider"/>
<lang.parserDefinition language="JSON" implementationClass="com.intellij.json.JsonParserDefinition"/>
<lang.parserDefinition language="JSON5" implementationClass="com.intellij.json.json5.Json5ParserDefinition"/>
<lang.parserDefinition language="JSON Lines" implementationClass="com.intellij.json.jsonLines.JsonLinesParserDefinition"/>
<lang.syntaxHighlighterFactory language="JSON" implementationClass="com.intellij.json.highlighting.JsonSyntaxHighlighterFactory"/>
<lang.syntaxHighlighterFactory language="JSON5" implementationClass="com.intellij.json.json5.highlighting.Json5SyntaxHighlightingFactory"/>
<outerLanguageRangePatcher language="JSON" implementationClass="com.intellij.psi.templateLanguages.DefaultOuterLanguagePatcher"/>
<statusBarWidgetFactory implementation="com.jetbrains.jsonSchema.widget.JsonSchemaStatusWidgetFactory" order="after codeStyleWidget, before readOnlyWidget"/>
<fileBasedIndex implementation="com.jetbrains.jsonSchema.impl.JsonSchemaFileValuesIndex" />
<!-- Code style and formatting -->
<codeStyleSettingsProvider implementation="com.intellij.json.formatter.JsonCodeStyleSettingsProvider"/>
<langCodeStyleSettingsProvider implementation="com.intellij.json.formatter.JsonLanguageCodeStyleSettingsProvider"/>
<colorSettingsPage implementation="com.intellij.json.highlighting.JsonColorsPage"/>
<lang.formatter language="JSON" implementationClass="com.intellij.json.formatter.JsonFormattingBuilderModel"/>
<preFormatProcessor implementation="com.intellij.json.formatter.JsonTrailingCommaRemover"/>
<lang.braceMatcher language="JSON" implementationClass="com.intellij.json.JsonBraceMatcher"/>
<quoteHandler fileType="JSON" className="com.intellij.json.JsonQuoteHandler"/>
<quoteHandler fileType="JSON5" className="com.intellij.json.JsonQuoteHandler"/>
<enterBetweenBracesDelegate language="JSON" implementationClass="com.intellij.codeInsight.editorActions.enter.EnterBetweenBracesAndBracketsDelegate"/>
<enterHandlerDelegate implementation="com.intellij.json.editor.JsonEnterHandler" id="JsonEnterHandler"/>
<typedHandler implementation="com.intellij.json.editor.JsonTypedHandler" id="JsonTypedHandler"/>
<copyPastePreProcessor implementation="com.intellij.json.editor.JsonCopyPasteProcessor"/>
<editorSmartKeysConfigurable instance="com.intellij.json.editor.JsonSmartKeysConfigurable" id="editor.preferences.jsonOptions"/>
<applicationService serviceImplementation="com.intellij.json.editor.JsonEditorOptions"/>
<!-- Codeinsight -->
<breadcrumbsInfoProvider implementation="com.intellij.json.breadcrumbs.JsonBreadcrumbsProvider"/>
<focusModeProvider language="JSON" implementationClass="com.intellij.json.editor.JsonFocusModeProvider"/>
<qualifiedNameProvider implementation="com.intellij.json.navigation.JsonQualifiedNameProvider"/>
<completion.contributor language="JSON" id="JsonCompletionContributor" order="last" implementationClass="com.intellij.json.codeinsight.JsonCompletionContributor"/>
<lang.psiStructureViewFactory language="JSON" implementationClass="com.intellij.json.structureView.JsonStructureViewBuilderFactory"/>
<lang.foldingBuilder language="JSON" implementationClass="com.intellij.json.editor.folding.JsonFoldingBuilder"/>
<lang.smartEnterProcessor language="JSON" implementationClass="com.intellij.json.editor.smartEnter.JsonSmartEnterProcessor"/>
<lang.namesValidator language="JSON" implementationClass="com.intellij.json.JsonNamesValidator"/>
<lang.commenter language="JSON" implementationClass="com.intellij.json.editor.JsonCommenter"/>
<lang.surroundDescriptor language="JSON" implementationClass="com.intellij.json.surroundWith.JsonSurroundDescriptor"/>
<lang.findUsagesProvider language="JSON" implementationClass="com.intellij.json.findUsages.JsonFindUsagesProvider"/>
<statementUpDownMover implementation="com.intellij.json.editor.lineMover.JsonLineMover" id="JSON" order="before line"/>
<liveTemplateContext implementation="com.intellij.json.liveTemplates.JsonContextType"/>
<liveTemplateContext implementation="com.intellij.json.liveTemplates.JsonInLiteralsContextType"/>
<liveTemplateContext implementation="com.intellij.json.liveTemplates.JsonInPropertyKeysContextType"/>
<spellchecker.support language="JSON" implementationClass="com.intellij.json.JsonSpellcheckerStrategy"/>
<extendWordSelectionHandler implementation="com.intellij.json.editor.selection.JsonStringLiteralSelectionHandler"/>
<json.jsonLiteralChecker implementation="com.intellij.json.codeinsight.StandardJsonLiteralChecker"/>
<json.jsonLiteralChecker implementation="com.intellij.json.json5.codeinsight.Json5JsonLiteralChecker"/>
<!-- Annotators -->
<annotator language="JSON" implementationClass="com.intellij.json.codeinsight.JsonLiteralAnnotator"/>
<!-- Inspections -->
<localInspection language="JSON" shortName="JsonStandardCompliance"
bundle="messages.JsonBundle" key="inspection.compliance.name" groupKey="json.inspection.group"
enabledByDefault="true" level="ERROR"
implementationClass="com.intellij.json.codeinsight.JsonStandardComplianceInspection"/>
<localInspection language="JSON5" shortName="Json5StandardCompliance"
bundle="messages.JsonBundle" key="inspection.compliance5.name" groupKey="json.inspection.group"
enabledByDefault="true" level="ERROR"
implementationClass="com.intellij.json.json5.codeinsight.Json5StandardComplianceInspection"/>
<localInspection language="JSON" shortName="JsonDuplicatePropertyKeys"
bundle="messages.JsonBundle" key="inspection.duplicate.keys.name" groupKey="json.inspection.group"
enabledByDefault="true" level="WARNING"
implementationClass="com.intellij.json.codeinsight.JsonDuplicatePropertyKeysInspection"/>
<localInspection language="JSON" shortName="JsonSchemaCompliance"
bundle="messages.JsonBundle" key="json.schema.inspection.compliance.name" groupKey="json.inspection.group"
enabledByDefault="true" level="WARNING"
implementationClass="com.jetbrains.jsonSchema.impl.inspections.JsonSchemaComplianceInspection"/>
<localInspection language="JSON" shortName="JsonSchemaDeprecation"
bundle="messages.JsonBundle" key="json.schema.inspection.deprecation.name" groupKey="json.inspection.group"
enabledByDefault="true" level="WEAK WARNING"
implementationClass="com.jetbrains.jsonSchema.impl.inspections.JsonSchemaDeprecationInspection"/>
<localInspection language="JSON" shortName="JsonSchemaRefReference"
bundle="messages.JsonBundle" key="json.schema.ref.refs.inspection.name" groupKey="json.inspection.group"
enabledByDefault="true" level="WARNING"
implementationClass="com.jetbrains.jsonSchema.impl.inspections.JsonSchemaRefReferenceInspection" />
<lang.elementManipulator forClass="com.intellij.json.psi.JsonStringLiteral"
implementationClass="com.intellij.json.psi.JsonStringLiteralManipulator"/>
<projectService serviceImplementation="com.jetbrains.jsonSchema.JsonSchemaMappingsProjectConfiguration"/>
<projectService serviceImplementation="com.jetbrains.jsonSchema.JsonSchemaCatalogProjectConfiguration"/>
<projectConfigurable groupId="preferences.externalResources" id="settings.json.schema"
bundle="messages.JsonBundle"
key="configurable.JsonSchemaMappingsConfigurable.display.name"
instance="com.jetbrains.jsonSchema.settings.mappings.JsonSchemaMappingsConfigurable" nonDefaultProject="true"/>
<projectConfigurable groupId="preferences.externalResources" id="settings.json.schema.catalog"
bundle="messages.JsonBundle"
key="configurable.JsonSchemaCatalogConfigurable.display.name"
instance="com.jetbrains.jsonSchema.JsonSchemaCatalogConfigurable" nonDefaultProject="true"/>
<projectService serviceInterface="com.jetbrains.jsonSchema.ide.JsonSchemaService"
serviceImplementation="com.jetbrains.jsonSchema.impl.JsonSchemaServiceImpl"/>
<completion.contributor order="last, before JsonCompletionContributor" language="JSON"
implementationClass="com.jetbrains.jsonSchema.impl.JsonSchemaCompletionContributor"/>
<lang.documentationProvider language="JSON"
id="JsonSchemaDocumentationProvider"
implementationClass="com.jetbrains.jsonSchema.impl.JsonSchemaDocumentationProvider"/>
<refactoring.elementListenerProvider implementation="com.jetbrains.jsonSchema.JsonSchemaRefactoringListenerProvider"/>
<statistics.counterUsagesCollector implementationClass="com.jetbrains.jsonSchema.impl.JsonSchemaUsageTriggerCollector"/>
<psi.referenceContributor language="JSON" implementation="com.jetbrains.jsonSchema.impl.JsonSchemaReferenceContributor"/>
<multiHostInjector implementation="com.jetbrains.jsonSchema.impl.JsonSchemaRegexInjector"/>
<multiHostInjector implementation="com.jetbrains.jsonSchema.impl.JsonSchemaBasedLanguageInjector"/>
<lang.lineWrapStrategy language="JSON" implementationClass="com.intellij.json.formatter.JsonLineWrapPositionStrategy"/>
<gotoDeclarationHandler id="JsonSchemaGotoDeclarationHandler" implementation="com.jetbrains.jsonSchema.impl.JsonSchemaGotoDeclarationHandler"/>
<copyPastePostProcessor implementation="com.intellij.json.editor.JsonCopyPastePostProcessor"/>
<highlightVisitor implementation="com.intellij.json.highlighting.JsonRainbowVisitor"/>
<intentionAction>
<className>com.intellij.json.intentions.JsonSortPropertiesIntention</className>
<bundleName>messages.JsonBundle</bundleName>
<categoryKey>json.intention.category.name</categoryKey>
</intentionAction>
<notificationGroup id="JSON Schema" displayType="NONE"/>
<lang.parserDefinition language="JSONPath" implementationClass="com.intellij.jsonpath.psi.JsonPathParserDefinition"/>
<lang.braceMatcher language="JSONPath" implementationClass="com.intellij.jsonpath.JsonPathPairedBraceMatcher"/>
<lang.quoteHandler language="JSONPath" implementationClass="com.intellij.jsonpath.JsonPathQuoteHandler"/>
<lang.syntaxHighlighterFactory language="JSONPath" implementationClass="com.intellij.jsonpath.JsonPathSyntaxHighlighterFactory"/>
<annotator language="JSONPath" implementationClass="com.intellij.jsonpath.JsonPathFunctionCallAnnotator"/>
<colorSettingsPage implementation="com.intellij.jsonpath.JsonPathColorSettingsPage"/>
<completion.contributor language="JSONPath" order="last" implementationClass="com.intellij.jsonpath.JsonPathCompletionContributor"/>
<spellchecker.support language="JSONPath" implementationClass="com.intellij.jsonpath.JsonPathSpellcheckerStrategy"/>
<localInspection language="JSONPath" shortName="JsonPathUnknownFunction"
implementationClass="com.intellij.jsonpath.inspections.JsonPathUnknownFunctionInspection"
bundle="messages.JsonBundle" key="inspection.jsonpath.unknown.function"
groupBundle="messages.JsonBundle" groupKey="json.inspection.group"
level="WARNING" enabledByDefault="true"/>
<localInspection language="JSONPath" shortName="JsonPathUnknownOperator"
implementationClass="com.intellij.jsonpath.inspections.JsonPathUnknownOperatorInspection"
bundle="messages.JsonBundle" key="inspection.jsonpath.unknown.operator"
groupBundle="messages.JsonBundle" groupKey="json.inspection.group"
level="WARNING" enabledByDefault="true"/>
<localInspection language="JSONPath" shortName="JsonPathEvaluateUnknownKey"
implementationClass="com.intellij.jsonpath.inspections.JsonPathEvaluateUnknownKeyInspection"
bundle="messages.JsonBundle" key="inspection.jsonpath.unknown.key"
groupBundle="messages.JsonBundle" groupKey="json.inspection.group"
level="WARNING" enabledByDefault="true"/>
<toolWindowAllowlist id="JSONPathEvaluate"/>
<intentionAction>
<className>com.intellij.jsonpath.ui.JsonPathEvaluateIntentionAction</className>
<bundleName>messages.JsonBundle</bundleName>
<categoryKey>json.intention.category.name</categoryKey>
</intentionAction>
</extensions>
<extensions defaultExtensionNs="JavaScript">
<JsonSchema.ProviderFactory implementation="com.jetbrains.jsonSchema.extension.JsonSchemaUserDefinedProviderFactory"/>
<JsonSchema.ProviderFactory implementation="com.jetbrains.jsonSchema.extension.JsonSchemaProjectSelfProviderFactory"/>
</extensions>
<extensions defaultExtensionNs="com.intellij.json">
<jsonLikePsiWalkerFactory implementation="com.intellij.json.json5.Json5PsiWalkerFactory"/>
<jsonSchemaEnabler implementation="com.jetbrains.jsonSchema.impl.JsonSchemaInJsonFilesEnabler" />
</extensions>
<extensionPoints>
<extensionPoint qualifiedName="com.intellij.json.jsonStandardComplianceProvider"
interface="com.intellij.json.codeinsight.JsonStandardComplianceProvider" dynamic="true"/>
<extensionPoint qualifiedName="JavaScript.JsonSchema.ProviderFactory"
interface="com.jetbrains.jsonSchema.extension.JsonSchemaProviderFactory" dynamic="true"/>
<extensionPoint qualifiedName="JavaScript.JsonSchema.ContentAwareSchemaFileProvider"
interface="com.jetbrains.jsonSchema.extension.ContentAwareJsonSchemaFileProvider" dynamic="true"/>
<extensionPoint qualifiedName="com.intellij.json.jsonLikePsiWalkerFactory"
interface="com.jetbrains.jsonSchema.extension.JsonLikePsiWalkerFactory" dynamic="true"/>
<extensionPoint qualifiedName="com.intellij.json.jsonSchemaEnabler" interface="com.jetbrains.jsonSchema.extension.JsonSchemaEnabler"
dynamic="true"/>
<extensionPoint qualifiedName="com.intellij.json.jsonWidgetSuppressor"
interface="com.jetbrains.jsonSchema.extension.JsonWidgetSuppressor" dynamic="true"/>
<extensionPoint qualifiedName="com.intellij.json.jsonLiteralChecker" interface="com.intellij.json.codeinsight.JsonLiteralChecker"
dynamic="true"/>
<extensionPoint qualifiedName="com.intellij.json.catalog.exclusion"
interface="com.jetbrains.jsonSchema.remote.JsonSchemaCatalogExclusion" dynamic="true"/>
<extensionPoint qualifiedName="com.intellij.json.customStructureViewFactory"
interface="com.intellij.json.structureView.JsonCustomStructureViewFactory" dynamic="true"/>
</extensionPoints>
</idea-plugin>