@fc-components/monaco-editor 0.1.1 → 0.1.2

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 CHANGED
@@ -5,23 +5,33 @@ import { PromQLMonacoEditor } from '@fc-components/monaco-editor';
5
5
 
6
6
  const App = () => {
7
7
  return (
8
- <div>
9
- <PromQLMonacoEditor
10
- height="500px"
11
- apiPrefix="/api/n9e/proxy/1/api/v1"
12
- fetchFn={(resource, options: any) => {
13
- const params = options.body?.toString();
14
- const search = params ? `?${params}` : '';
15
- return fetch(resource + search, {
16
- method: 'Get',
17
- headers: new Headers({
18
- Authorization: `Bearer ${localStorage.getItem('access_token') ||
19
- ''}`,
20
- }),
21
- });
22
- }}
23
- />
24
- </div>
8
+ <PromQLMonacoEditor
9
+ theme='light'
10
+ size='middle'
11
+ placeholder='请输入PromQL查询语句'
12
+ variablesNames={['$job', '$instance']}
13
+ apiPrefix='/api/n9e/proxy/1/api/v1'
14
+ request={(resource, options) => {
15
+ const params = options?.body?.toString();
16
+ const search = params ? `?${params}` : '';
17
+ return fetch(resource + search, {
18
+ method: 'Get',
19
+ headers: new Headers({
20
+ Authorization: `Bearer ${localStorage.getItem('access_token') || ''}`,
21
+ }),
22
+ });
23
+ }}
24
+ interpolateString={(query) => {
25
+ // Example interpolation function
26
+ return query.replace(/\$__interval/g, '10s');
27
+ }}
28
+ onShiftEnter={(value) => {
29
+ console.log('Shift+Enter pressed, current value:', value);
30
+ }}
31
+ onBlur={(value) => {
32
+ console.log('Editor lost focus, current value:', value);
33
+ }}
34
+ />
25
35
  );
26
36
  };
27
37
 
@@ -862,7 +862,7 @@ function makeSelector(metricName, labels, labelName) {
862
862
  var allLabelTexts = allLabels.map(function (label) {
863
863
  return "" + label.name + label.op + "\"" + escapeLabelValueInExactSelector(label.value) + "\"";
864
864
  });
865
- return "{" + allLabelTexts.join(',') + "}";
865
+ return metricName + "{" + allLabelTexts.join(',') + "}";
866
866
  }
867
867
 
868
868
  var DEFAULT_SERIES_LIMIT = '40000';
@@ -1989,6 +1989,8 @@ function PromQLEditor(props) {
1989
1989
  value = props.value,
1990
1990
  placeholder = props.placeholder,
1991
1991
  interpolateString = props.interpolateString,
1992
+ _props$enableAutocomp = props.enableAutocomplete,
1993
+ enableAutocomplete = _props$enableAutocomp === void 0 ? true : _props$enableAutocomp,
1992
1994
  onChange = props.onChange,
1993
1995
  onShiftEnter = props.onShiftEnter,
1994
1996
  onBlur = props.onBlur;
@@ -2036,21 +2038,23 @@ function PromQLEditor(props) {
2036
2038
  });
2037
2039
  dataProviderRef.current = dataProvider;
2038
2040
  dataProvider.start();
2039
- var completionProvider = getCompletionProvider(monaco, dataProvider);
2040
- var filteringCompletionProvider = _extends({}, completionProvider, {
2041
- provideCompletionItems: function provideCompletionItems(model, position, context, token) {
2042
- var _editor$getModel;
2043
- if (((_editor$getModel = editor.getModel()) == null ? void 0 : _editor$getModel.id) !== model.id) {
2044
- return {
2045
- suggestions: []
2046
- };
2041
+ if (enableAutocomplete) {
2042
+ var completionProvider = getCompletionProvider(monaco, dataProvider);
2043
+ var filteringCompletionProvider = _extends({}, completionProvider, {
2044
+ provideCompletionItems: function provideCompletionItems(model, position, context, token) {
2045
+ var _editor$getModel;
2046
+ if (((_editor$getModel = editor.getModel()) == null ? void 0 : _editor$getModel.id) !== model.id) {
2047
+ return {
2048
+ suggestions: []
2049
+ };
2050
+ }
2051
+ return completionProvider.provideCompletionItems(model, position, context, token);
2047
2052
  }
2048
- return completionProvider.provideCompletionItems(model, position, context, token);
2049
- }
2050
- });
2051
- var _monaco$languages$reg = monaco.languages.registerCompletionItemProvider(PROMQL_LANG_ID, filteringCompletionProvider),
2052
- dispose = _monaco$languages$reg.dispose;
2053
- autocompleteDisposeFun.current = dispose;
2053
+ });
2054
+ var _monaco$languages$reg = monaco.languages.registerCompletionItemProvider(PROMQL_LANG_ID, filteringCompletionProvider),
2055
+ dispose = _monaco$languages$reg.dispose;
2056
+ autocompleteDisposeFun.current = dispose;
2057
+ }
2054
2058
  var updateElementHeight = function updateElementHeight() {
2055
2059
  var containerDiv = containerRef.current;
2056
2060
  if (containerDiv !== null) {
@@ -2073,7 +2077,6 @@ function PromQLEditor(props) {
2073
2077
  });
2074
2078
  // handle: shift + enter
2075
2079
  editor.addCommand(monaco.KeyMod.Shift | monaco.KeyCode.Enter, function () {
2076
- console.log(22222);
2077
2080
  onShiftEnter == null || onShiftEnter(editor.getValue());
2078
2081
  }, 'isEditorFocused' + id);
2079
2082
  if (placeholder) {