aboutsummaryrefslogtreecommitdiff
path: root/plugins/base/frontend
diff options
context:
space:
mode:
authorMarcin Aman <maman@virtuslab.com>2020-08-04 11:02:51 +0200
committerPaweł Marks <Kordyjan@users.noreply.github.com>2020-08-05 15:21:13 +0200
commit08845a66bb86e824f14695a96aa5062ed64edb20 (patch)
tree13f666fb605de3218d358f8490be1ee666abc310 /plugins/base/frontend
parent046ae90fc7fcf97c6718093b240b55a66670af09 (diff)
downloaddokka-08845a66bb86e824f14695a96aa5062ed64edb20.tar.gz
dokka-08845a66bb86e824f14695a96aa5062ed64edb20.tar.bz2
dokka-08845a66bb86e824f14695a96aa5062ed64edb20.zip
Fix JS markdown component generating lots of files with highlighting
Diffstat (limited to 'plugins/base/frontend')
-rw-r--r--plugins/base/frontend/package-lock.json6
-rw-r--r--plugins/base/frontend/package.json2
-rw-r--r--plugins/base/frontend/src/main/components/search/searchResultRow.tsx20
-rw-r--r--plugins/base/frontend/src/main/types/@jetbrains/index.d.ts4
-rw-r--r--plugins/base/frontend/tsconfig.json3
5 files changed, 28 insertions, 7 deletions
diff --git a/plugins/base/frontend/package-lock.json b/plugins/base/frontend/package-lock.json
index 0940acc8..c671c752 100644
--- a/plugins/base/frontend/package-lock.json
+++ b/plugins/base/frontend/package-lock.json
@@ -1520,6 +1520,12 @@
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz",
"integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ=="
},
+ "@types/lodash": {
+ "version": "4.14.158",
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.158.tgz",
+ "integrity": "sha512-InCEXJNTv/59yO4VSfuvNrZHt7eeNtWQEgnieIA+mIC+MOWM9arOWG2eQ8Vhk6NbOre6/BidiXhkZYeDY9U35w==",
+ "dev": true
+ },
"@types/minimatch": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
diff --git a/plugins/base/frontend/package.json b/plugins/base/frontend/package.json
index 4415dd1c..14a44e8e 100644
--- a/plugins/base/frontend/package.json
+++ b/plugins/base/frontend/package.json
@@ -31,6 +31,7 @@
"@types/react": "^16.9.0",
"@types/react-dom": "^16.9.0",
"babel-loader": "^8.0.6",
+ "lodash": "^4.17.19",
"postcss-import": "^12.0.1",
"postcss-preset-env": "^6.7.0",
"react": "^16.12.0",
@@ -44,6 +45,7 @@
},
"devDependencies": {
"@jetbrains/stylelint-config": "^2.0.0",
+ "@types/lodash": "^4.14.158",
"babel-eslint": "^10.0.3",
"eslint": "^6.8.0",
"react-svg-loader": "^3.0.3",
diff --git a/plugins/base/frontend/src/main/components/search/searchResultRow.tsx b/plugins/base/frontend/src/main/components/search/searchResultRow.tsx
index 81e1bad9..83dd2bcb 100644
--- a/plugins/base/frontend/src/main/components/search/searchResultRow.tsx
+++ b/plugins/base/frontend/src/main/components/search/searchResultRow.tsx
@@ -1,6 +1,14 @@
import React from "react";
import {OptionWithSearchResult, SearchProps, SearchRank} from "./types";
-import Markdown from '@jetbrains/ring-ui/components/markdown/markdown';
+import _ from "lodash";
+
+type HighlighterProps = {
+ label: string
+}
+
+const Highlighter: React.FC<HighlighterProps> = ({label}: HighlighterProps) => {
+ return <strong>{label}</strong>
+}
export const SearchResultRow: React.FC<SearchProps> = ({searchResult}: SearchProps) => {
const signatureFromSearchResult = (searchResult: OptionWithSearchResult): string => {
@@ -10,9 +18,17 @@ export const SearchResultRow: React.FC<SearchProps> = ({searchResult}: SearchPro
return searchResult.highlight
}
+ /*
+ This is a work-around for an issue: https://youtrack.jetbrains.com/issue/RG-2108
+ */
+ const out = _.chunk(signatureFromSearchResult(searchResult).split('**'), 2).flatMap(([txt, label]) => [
+ txt,
+ label ? <Highlighter label={label}></Highlighter> : null,
+ ]);
+
return (
<div className="template-wrapper">
- <span><Markdown source={signatureFromSearchResult(searchResult)}/></span>
+ <span>{out}</span>
<span className="template-description">{searchResult.description}</span>
</div>
)
diff --git a/plugins/base/frontend/src/main/types/@jetbrains/index.d.ts b/plugins/base/frontend/src/main/types/@jetbrains/index.d.ts
index ceee5179..3d209657 100644
--- a/plugins/base/frontend/src/main/types/@jetbrains/index.d.ts
+++ b/plugins/base/frontend/src/main/types/@jetbrains/index.d.ts
@@ -2,7 +2,3 @@ declare module '@jetbrains/ring-ui' {
export const Select: any;
export const List: any;
}
-
-declare module '@jetbrains/ring-ui/components/markdown/markdown' {
- export const Markdown: any
-}
diff --git a/plugins/base/frontend/tsconfig.json b/plugins/base/frontend/tsconfig.json
index 4cc8fd37..0f0a4555 100644
--- a/plugins/base/frontend/tsconfig.json
+++ b/plugins/base/frontend/tsconfig.json
@@ -5,7 +5,8 @@
"lib": [
"dom",
"dom.iterable",
- "esnext"
+ "esnext",
+ "es2019"
],
"noImplicitAny": true,
"allowJs": true,