@fc-components/monaco-editor 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -34
- package/dist/monaco-editor.cjs.development.js +31 -22
- package/dist/monaco-editor.cjs.development.js.map +1 -1
- package/dist/monaco-editor.cjs.production.min.js +1 -1
- package/dist/monaco-editor.cjs.production.min.js.map +1 -1
- package/dist/monaco-editor.esm.js +32 -23
- package/dist/monaco-editor.esm.js.map +1 -1
- package/dist/promql/index.d.ts +2 -2
- package/package.json +1 -1
- package/src/promql/index.tsx +32 -25
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { useRef, useEffect } from 'react';
|
|
1
|
+
import React, { forwardRef, useRef, useEffect, useImperativeHandle } from 'react';
|
|
2
2
|
import MonacoEditor from 'react-monaco-editor';
|
|
3
3
|
import * as monaco from 'monaco-editor';
|
|
4
4
|
import { languages, editor, KeyMod, KeyCode, Range, MarkerSeverity } from 'monaco-editor';
|
|
@@ -1984,7 +1984,7 @@ var getStyles = function getStyles(placeholder) {
|
|
|
1984
1984
|
})
|
|
1985
1985
|
};
|
|
1986
1986
|
};
|
|
1987
|
-
function PromQLEditor(props) {
|
|
1987
|
+
var index = /*#__PURE__*/forwardRef(function PromQLEditor(props, ref) {
|
|
1988
1988
|
var id = v4();
|
|
1989
1989
|
var _props$size = props.size,
|
|
1990
1990
|
size = _props$size === void 0 ? 'middle' : _props$size,
|
|
@@ -2002,27 +2002,10 @@ function PromQLEditor(props) {
|
|
|
2002
2002
|
var autocompleteDisposeFun = useRef(null);
|
|
2003
2003
|
var containerRef = useRef(null);
|
|
2004
2004
|
var dataProviderRef = useRef(null);
|
|
2005
|
+
var editorRef = useRef(null);
|
|
2005
2006
|
var styles = getStyles(placeholder);
|
|
2006
|
-
useEffect(function () {
|
|
2007
|
-
// 注册 PromQL 语言
|
|
2008
|
-
var aliases = promLanguageDefinition.aliases,
|
|
2009
|
-
extensions = promLanguageDefinition.extensions,
|
|
2010
|
-
mimetypes = promLanguageDefinition.mimetypes;
|
|
2011
|
-
languages.register({
|
|
2012
|
-
id: PROMQL_LANG_ID,
|
|
2013
|
-
aliases: aliases,
|
|
2014
|
-
extensions: extensions,
|
|
2015
|
-
mimetypes: mimetypes
|
|
2016
|
-
});
|
|
2017
|
-
// 设置语法高亮
|
|
2018
|
-
languages.setMonarchTokensProvider(PROMQL_LANG_ID, language);
|
|
2019
|
-
// 设置语言配置
|
|
2020
|
-
languages.setLanguageConfiguration(PROMQL_LANG_ID, languageConfiguration);
|
|
2021
|
-
return function () {
|
|
2022
|
-
autocompleteDisposeFun.current == null || autocompleteDisposeFun.current();
|
|
2023
|
-
};
|
|
2024
|
-
}, []);
|
|
2025
2007
|
var handleEditorDidMount = function handleEditorDidMount(editor$1) {
|
|
2008
|
+
editorRef.current = editor$1;
|
|
2026
2009
|
editor.defineTheme('n9e-dark', {
|
|
2027
2010
|
base: 'vs-dark',
|
|
2028
2011
|
inherit: true,
|
|
@@ -2137,6 +2120,32 @@ function PromQLEditor(props) {
|
|
|
2137
2120
|
dataProvider.setVariablesNames(variablesNames || []);
|
|
2138
2121
|
}
|
|
2139
2122
|
}, [JSON.stringify(variablesNames)]);
|
|
2123
|
+
useEffect(function () {
|
|
2124
|
+
// 注册 PromQL 语言
|
|
2125
|
+
var aliases = promLanguageDefinition.aliases,
|
|
2126
|
+
extensions = promLanguageDefinition.extensions,
|
|
2127
|
+
mimetypes = promLanguageDefinition.mimetypes;
|
|
2128
|
+
languages.register({
|
|
2129
|
+
id: PROMQL_LANG_ID,
|
|
2130
|
+
aliases: aliases,
|
|
2131
|
+
extensions: extensions,
|
|
2132
|
+
mimetypes: mimetypes
|
|
2133
|
+
});
|
|
2134
|
+
// 设置语法高亮
|
|
2135
|
+
languages.setMonarchTokensProvider(PROMQL_LANG_ID, language);
|
|
2136
|
+
// 设置语言配置
|
|
2137
|
+
languages.setLanguageConfiguration(PROMQL_LANG_ID, languageConfiguration);
|
|
2138
|
+
return function () {
|
|
2139
|
+
autocompleteDisposeFun.current == null || autocompleteDisposeFun.current();
|
|
2140
|
+
};
|
|
2141
|
+
}, []);
|
|
2142
|
+
useImperativeHandle(ref, function () {
|
|
2143
|
+
return {
|
|
2144
|
+
getEditor: function getEditor() {
|
|
2145
|
+
return editorRef.current;
|
|
2146
|
+
}
|
|
2147
|
+
};
|
|
2148
|
+
});
|
|
2140
2149
|
return React.createElement("div", {
|
|
2141
2150
|
className: 'ant-input' + (size ? " " + SIZE_MAP[size].className : '')
|
|
2142
2151
|
}, React.createElement("div", {
|
|
@@ -2182,7 +2191,7 @@ function PromQLEditor(props) {
|
|
|
2182
2191
|
wordWrap: 'on'
|
|
2183
2192
|
}
|
|
2184
2193
|
})));
|
|
2185
|
-
}
|
|
2194
|
+
});
|
|
2186
2195
|
|
|
2187
|
-
export {
|
|
2196
|
+
export { index as PromQLMonacoEditor };
|
|
2188
2197
|
//# sourceMappingURL=monaco-editor.esm.js.map
|