@mongodb-js/compass-editor 0.72.2 → 0.72.3
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/dist/action-button.d.ts.map +1 -1
- package/dist/action-button.js +10 -11
- package/dist/actions-container.d.ts.map +1 -1
- package/dist/actions-container.js +1 -1
- package/dist/codemirror/aggregation-autocompleter.d.ts.map +1 -1
- package/dist/codemirror/aggregation-autocompleter.js +5 -8
- package/dist/codemirror/query-autocompleter-with-history.d.ts +1 -1
- package/dist/codemirror/query-autocompleter-with-history.d.ts.map +1 -1
- package/dist/codemirror/query-autocompleter-with-history.js +2 -2
- package/dist/codemirror/query-history-autocompleter.js +7 -7
- package/dist/codemirror/use-safe-integer-linter.d.ts +1 -1
- package/dist/codemirror/use-safe-integer-linter.d.ts.map +1 -1
- package/dist/editor.d.ts +1 -2
- package/dist/editor.d.ts.map +1 -1
- package/dist/editor.js +5 -6
- package/dist/linter.d.ts +1 -1
- package/dist/linter.d.ts.map +1 -1
- package/dist/prettify.d.ts.map +1 -1
- package/dist/use-json-schema-autocompleter.d.ts.map +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-button.d.ts","sourceRoot":"","sources":["../src/action-button.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"action-button.d.ts","sourceRoot":"","sources":["../src/action-button.tsx"],"names":[],"mappings":"AACA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAA2C,MAAM,OAAO,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,GAAG,IAAI,CAAC;CAChD,CAAC;AA6CF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC;IACjD,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,CACR,GAAG,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,KAC5D,OAAO,GAAG,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAwEA,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,oBAGxB,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,sBAcnD,CAAC"}
|
package/dist/action-button.js
CHANGED
|
@@ -36,32 +36,31 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.FormatIcon = exports.ActionButton = void 0;
|
|
37
37
|
const compass_components_1 = require("@mongodb-js/compass-components");
|
|
38
38
|
const compass_components_2 = require("@mongodb-js/compass-components");
|
|
39
|
-
const compass_components_3 = require("@mongodb-js/compass-components");
|
|
40
39
|
const react_1 = __importStar(require("react"));
|
|
41
|
-
const actionButtonStyle = (0,
|
|
40
|
+
const actionButtonStyle = (0, compass_components_1.css)({
|
|
42
41
|
flex: 'none',
|
|
43
42
|
pointerEvents: 'all',
|
|
44
43
|
});
|
|
45
|
-
const actionCompactButtonStyle = (0,
|
|
44
|
+
const actionCompactButtonStyle = (0, compass_components_1.css)({
|
|
46
45
|
'& > div:has(svg)': {
|
|
47
46
|
paddingLeft: 3,
|
|
48
47
|
paddingRight: 3,
|
|
49
48
|
},
|
|
50
49
|
});
|
|
51
|
-
const actionButtonContentStyle = (0,
|
|
50
|
+
const actionButtonContentStyle = (0, compass_components_1.css)({
|
|
52
51
|
position: 'relative',
|
|
53
52
|
});
|
|
54
|
-
const actionButtonIconContainerStyle = (0,
|
|
53
|
+
const actionButtonIconContainerStyle = (0, compass_components_1.css)({
|
|
55
54
|
opacity: 1,
|
|
56
55
|
// leafygreen icon small size
|
|
57
56
|
width: 14,
|
|
58
57
|
height: 14,
|
|
59
58
|
transition: 'opacity .2s linear',
|
|
60
59
|
});
|
|
61
|
-
const actionButtonIconContainerHiddenStyle = (0,
|
|
60
|
+
const actionButtonIconContainerHiddenStyle = (0, compass_components_1.css)({
|
|
62
61
|
opacity: 0,
|
|
63
62
|
});
|
|
64
|
-
const actionButtonClickResultIconStyle = (0,
|
|
63
|
+
const actionButtonClickResultIconStyle = (0, compass_components_1.css)({
|
|
65
64
|
position: 'absolute',
|
|
66
65
|
// leafygreen icon small size
|
|
67
66
|
width: 14,
|
|
@@ -71,7 +70,7 @@ const actionButtonClickResultIconStyle = (0, compass_components_2.css)({
|
|
|
71
70
|
opacity: 1,
|
|
72
71
|
transition: 'opacity .2s linear',
|
|
73
72
|
});
|
|
74
|
-
const actionButtonClickResultIconHiddenStyle = (0,
|
|
73
|
+
const actionButtonClickResultIconHiddenStyle = (0, compass_components_1.css)({
|
|
75
74
|
opacity: 0,
|
|
76
75
|
});
|
|
77
76
|
const ActionButton = ({ label, icon, onClick, compact, ...props }) => {
|
|
@@ -95,11 +94,11 @@ const ActionButton = ({ label, icon, onClick, compact, ...props }) => {
|
|
|
95
94
|
clearTimeout(timeoutId);
|
|
96
95
|
};
|
|
97
96
|
}, [clickResultVisible]);
|
|
98
|
-
return (react_1.default.createElement(
|
|
97
|
+
return (react_1.default.createElement(compass_components_2.Button, { size: "xsmall", "aria-label": label, title: label, onClick: onButtonClick, className: (0, compass_components_1.cx)(actionButtonStyle, { [actionCompactButtonStyle]: compact }), "data-testid": props['data-testid'] ?? `editor-action-${label}` },
|
|
99
98
|
react_1.default.createElement("div", { className: actionButtonContentStyle },
|
|
100
|
-
react_1.default.createElement("div", { className: (0, compass_components_1.cx)(actionButtonIconContainerStyle, clickResultVisible && actionButtonIconContainerHiddenStyle) }, typeof icon === 'string' ? (react_1.default.createElement(
|
|
99
|
+
react_1.default.createElement("div", { className: (0, compass_components_1.cx)(actionButtonIconContainerStyle, clickResultVisible && actionButtonIconContainerHiddenStyle) }, typeof icon === 'string' ? (react_1.default.createElement(compass_components_2.Icon, { size: "small", role: "presentation", title: null, glyph: icon })) : (icon)),
|
|
101
100
|
react_1.default.createElement("div", { className: (0, compass_components_1.cx)(actionButtonClickResultIconStyle, !clickResultVisible && actionButtonClickResultIconHiddenStyle) },
|
|
102
|
-
react_1.default.createElement(
|
|
101
|
+
react_1.default.createElement(compass_components_2.Icon, { size: "small", glyph: clickResult === 'success' ? 'Checkmark' : 'X' })))));
|
|
103
102
|
};
|
|
104
103
|
exports.ActionButton = ActionButton;
|
|
105
104
|
const FormatIcon = ({ size = 16, ...props }) => (react_1.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", width: size, height: size, viewBox: "0 0 16 16", ...props },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions-container.d.ts","sourceRoot":"","sources":["../src/actions-container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"actions-container.d.ts","sourceRoot":"","sources":["../src/actions-container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG9C,OAAO,EAAE,KAAK,MAAM,EAA4B,MAAM,iBAAiB,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAuBF,eAAO,MAAM,gBAAgB,GAAI,qFAQ9B,qBAAqB,sBA6DvB,CAAC"}
|
|
@@ -5,8 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ActionsContainer = void 0;
|
|
7
7
|
const react_1 = __importDefault(require("react"));
|
|
8
|
-
const action_button_1 = require("./action-button");
|
|
9
8
|
const compass_components_1 = require("@mongodb-js/compass-components");
|
|
9
|
+
const action_button_1 = require("./action-button");
|
|
10
10
|
const actionsContainerStyle = (0, compass_components_1.css)({
|
|
11
11
|
position: 'absolute',
|
|
12
12
|
top: compass_components_1.spacing[100],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregation-autocompleter.d.ts","sourceRoot":"","sources":["../../src/codemirror/aggregation-autocompleter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregation-autocompleter.d.ts","sourceRoot":"","sources":["../../src/codemirror/aggregation-autocompleter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AA0C1D,wBAAgB,8BAA8B,CAAC,EAC7C,SAAS,EACT,SAAS,EACT,GAAG,OAAO,EACX,GAAE,IAAI,CACL,iBAAiB,EACjB,QAAQ,GAAG,eAAe,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,CAC5D,uDA0CL"}
|
|
@@ -4,20 +4,17 @@ exports.createAggregationAutocompleter = createAggregationAutocompleter;
|
|
|
4
4
|
const mongodb_constants_1 = require("@mongodb-js/mongodb-constants");
|
|
5
5
|
const autocompleter_1 = require("../autocompleter");
|
|
6
6
|
const utils_1 = require("./utils");
|
|
7
|
-
const utils_2 = require("./utils");
|
|
8
|
-
const utils_3 = require("./utils");
|
|
9
7
|
const ace_compat_autocompleter_1 = require("./ace-compat-autocompleter");
|
|
10
|
-
const ace_compat_autocompleter_2 = require("./ace-compat-autocompleter");
|
|
11
8
|
const stage_autocompleter_1 = require("./stage-autocompleter");
|
|
12
9
|
const StageOperatorNames = new Set(mongodb_constants_1.STAGE_OPERATOR_NAMES);
|
|
13
10
|
function getStageNameForToken(editorState, token) {
|
|
14
11
|
for (const parent of (0, utils_1.parents)(token)) {
|
|
15
12
|
if (parent.name === 'Property') {
|
|
16
|
-
const propertyName = (0,
|
|
13
|
+
const propertyName = (0, utils_1.getPropertyNameFromPropertyToken)(editorState, parent);
|
|
17
14
|
if (parent.firstChild &&
|
|
18
15
|
// We are inside a stage, but not right at the stage name token (we
|
|
19
16
|
// don't want to autocomplete as stage while the stage is being typed)
|
|
20
|
-
!(0,
|
|
17
|
+
!(0, utils_1.isTokenEqual)(parent.firstChild, token) &&
|
|
21
18
|
StageOperatorNames.has(propertyName)) {
|
|
22
19
|
return propertyName;
|
|
23
20
|
}
|
|
@@ -27,7 +24,7 @@ function getStageNameForToken(editorState, token) {
|
|
|
27
24
|
}
|
|
28
25
|
function createAggregationAutocompleter({ utmSource, utmMedium, ...options } = {}) {
|
|
29
26
|
const stageAutocompletions = (0, autocompleter_1.completer)('', { ...options, meta: ['stage'] });
|
|
30
|
-
return (0,
|
|
27
|
+
return (0, ace_compat_autocompleter_1.createAceCompatAutocompleter)({
|
|
31
28
|
IdentifierLike({ context, prefix, token }) {
|
|
32
29
|
const stageOperator = getStageNameForToken(context.state, token);
|
|
33
30
|
if (stageOperator) {
|
|
@@ -46,14 +43,14 @@ function createAggregationAutocompleter({ utmSource, utmMedium, ...options } = {
|
|
|
46
43
|
return {
|
|
47
44
|
...completion,
|
|
48
45
|
...(completion.description && {
|
|
49
|
-
description: `<p>${(0,
|
|
46
|
+
description: `<p>${(0, utils_1.aggLink)(opName, {
|
|
50
47
|
utmSource,
|
|
51
48
|
utmMedium,
|
|
52
49
|
})} pipeline stage</p>` + `<p>${completion.description}</p>`,
|
|
53
50
|
}),
|
|
54
51
|
...(completion.snippet && {
|
|
55
52
|
snippet: !isInsideBlock
|
|
56
|
-
? `{\n${(0,
|
|
53
|
+
? `{\n${(0, utils_1.padLines)(`${opName}: ${completion.snippet}`)}\n}`
|
|
57
54
|
: `${opName}: ${completion.snippet}`,
|
|
58
55
|
}),
|
|
59
56
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { type SavedQuery } from './query-history-autocompleter';
|
|
2
1
|
import { type CompletionSource } from '@codemirror/autocomplete';
|
|
3
2
|
import type { CompletionOptions } from '../autocompleter';
|
|
4
3
|
import type { CodemirrorThemeType } from '../editor';
|
|
4
|
+
import { type SavedQuery } from './query-history-autocompleter';
|
|
5
5
|
export declare const createQueryWithHistoryAutocompleter: ({ savedQueries, options, queryProperty, onApply, theme, }: {
|
|
6
6
|
savedQueries: SavedQuery[];
|
|
7
7
|
options?: Pick<CompletionOptions, "fields" | "serverVersion">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-autocompleter-with-history.d.ts","sourceRoot":"","sources":["../../src/codemirror/query-autocompleter-with-history.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,
|
|
1
|
+
{"version":3,"file":"query-autocompleter-with-history.d.ts","sourceRoot":"","sources":["../../src/codemirror/query-autocompleter-with-history.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAItB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAErD,OAAO,EACL,KAAK,UAAU,EAEhB,MAAM,+BAA+B,CAAC;AAEvC,eAAO,MAAM,mCAAmC,GAAI,2DAMjD;IACD,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,eAAe,CAAC,CAAC;IAC9D,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACxD,KAAK,EAAE,mBAAmB,CAAC;CAC5B,KAAG,gBAgDH,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createQueryWithHistoryAutocompleter = void 0;
|
|
4
|
-
const query_history_autocompleter_1 = require("./query-history-autocompleter");
|
|
5
|
-
const query_autocompleter_1 = require("./query-autocompleter");
|
|
6
4
|
const compass_components_1 = require("@mongodb-js/compass-components");
|
|
5
|
+
const query_autocompleter_1 = require("./query-autocompleter");
|
|
6
|
+
const query_history_autocompleter_1 = require("./query-history-autocompleter");
|
|
7
7
|
const createQueryWithHistoryAutocompleter = ({ savedQueries, options = {}, queryProperty, onApply, theme, }) => {
|
|
8
8
|
const queryHistoryAutocompleter = (0, query_history_autocompleter_1.createQueryHistoryAutocompleter)({
|
|
9
9
|
savedQueries,
|
|
@@ -5,9 +5,9 @@ exports.createQueryLabel = createQueryLabel;
|
|
|
5
5
|
exports.createQueryDisplayLabel = createQueryDisplayLabel;
|
|
6
6
|
exports.scaleBetween = scaleBetween;
|
|
7
7
|
const compass_components_1 = require("@mongodb-js/compass-components");
|
|
8
|
-
const
|
|
9
|
-
const editor_1 = require("../editor");
|
|
8
|
+
const shell_bson_parser_1 = require("@mongodb-js/shell-bson-parser");
|
|
10
9
|
const highlight_1 = require("@lezer/highlight");
|
|
10
|
+
const editor_1 = require("../editor");
|
|
11
11
|
const editor_2 = require("../editor");
|
|
12
12
|
const MAX_RESULTS = 10;
|
|
13
13
|
const MAX_FIELDS = 10;
|
|
@@ -33,12 +33,12 @@ function createQueryLabel(query, propertyName) {
|
|
|
33
33
|
}
|
|
34
34
|
// The autocompletion uses a fuzzy search on the label, we only want to
|
|
35
35
|
// auto complete property that is being edited, not all of them.
|
|
36
|
-
return (0,
|
|
36
|
+
return (0, shell_bson_parser_1.toJSString)(queryProperty) || '';
|
|
37
37
|
}
|
|
38
38
|
function createQueryDisplayLabel(query) {
|
|
39
39
|
return Object.entries(query.queryProperties)
|
|
40
40
|
.map(([key, value]) => {
|
|
41
|
-
const formattedQuery = (0,
|
|
41
|
+
const formattedQuery = (0, shell_bson_parser_1.toJSString)(value, 1);
|
|
42
42
|
if (!formattedQuery)
|
|
43
43
|
return '';
|
|
44
44
|
// Hide the `filter` key in the display label as it's the default field.
|
|
@@ -68,7 +68,7 @@ function prepareQueries(savedQueries, queryProperty) {
|
|
|
68
68
|
if (queryValue?.length && queryValue?.length > MAX_VALUE_LENGTH) {
|
|
69
69
|
return null;
|
|
70
70
|
}
|
|
71
|
-
const str = (0,
|
|
71
|
+
const str = (0, shell_bson_parser_1.toJSString)(queryValue) || '';
|
|
72
72
|
if (!str || str.length > MAX_VALUE_LENGTH) {
|
|
73
73
|
return null;
|
|
74
74
|
}
|
|
@@ -94,7 +94,7 @@ function prepareQueries(savedQueries, queryProperty) {
|
|
|
94
94
|
// We don't provide matching on array or object values, as they can be
|
|
95
95
|
// very long and we want to prioritize matching on field names.
|
|
96
96
|
const fieldValue = typeof value === 'object' || Array.isArray(value) ? '' : value;
|
|
97
|
-
const fieldString = (0,
|
|
97
|
+
const fieldString = (0, shell_bson_parser_1.toJSString)({ [key]: fieldValue }) || '';
|
|
98
98
|
return {
|
|
99
99
|
simplified: simplifyQueryStringForAutocomplete(fieldString),
|
|
100
100
|
};
|
|
@@ -194,7 +194,7 @@ function createInfo(query, theme) {
|
|
|
194
194
|
const customHighlighter = editor_2.highlightStyles[theme];
|
|
195
195
|
const container = document.createElement('div');
|
|
196
196
|
Object.entries(query.queryProperties).forEach(([key, value]) => {
|
|
197
|
-
const formattedQuery = (0,
|
|
197
|
+
const formattedQuery = (0, shell_bson_parser_1.toJSString)(value);
|
|
198
198
|
const codeDiv = document.createElement('div');
|
|
199
199
|
const label = document.createElement('label');
|
|
200
200
|
label.className = queryLabelStyles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-safe-integer-linter.d.ts","sourceRoot":"","sources":["../../src/codemirror/use-safe-integer-linter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"use-safe-integer-linter.d.ts","sourceRoot":"","sources":["../../src/codemirror/use-safe-integer-linter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IAIX,qBAAqB,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF,KAAK,wBAAwB,GAAG,UAAU,GAAG;IAC3C,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,mBAAmB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;CACrD,CAAC;AAuGF,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACT,cAAsC,EACtC,gBAAgB,EAChB,mBAAmB,EACnB,SAAS,EACT,gBAAgB,EAChB,KAAK,GACN,EAAE,wBAAwB;;;;EAgG1B"}
|
package/dist/editor.d.ts
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { KeyBinding } from '@codemirror/view';
|
|
3
3
|
import { placeholder as codemirrorPlaceholder, EditorView } from '@codemirror/view';
|
|
4
|
-
import { syntaxTree } from '@codemirror/language';
|
|
4
|
+
import { syntaxTree, LanguageSupport, HighlightStyle } from '@codemirror/language';
|
|
5
5
|
import type { Diagnostic } from '@codemirror/lint';
|
|
6
6
|
import type { CompletionSource } from '@codemirror/autocomplete';
|
|
7
7
|
import type { Extension } from '@codemirror/state';
|
|
8
8
|
import { Facet } from '@codemirror/state';
|
|
9
|
-
import { LanguageSupport, HighlightStyle } from '@codemirror/language';
|
|
10
9
|
import type { Action } from './action-button';
|
|
11
10
|
import type { EditorRef } from './types';
|
|
12
11
|
export type CodemirrorThemeType = 'light' | 'dark';
|
package/dist/editor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../src/editor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAEL,WAAW,IAAI,qBAAqB,EAMpC,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EASL,UAAU,
|
|
1
|
+
{"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../src/editor.tsx"],"names":[],"mappings":"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"}
|
package/dist/editor.js
CHANGED
|
@@ -46,7 +46,6 @@ const compass_components_1 = require("@mongodb-js/compass-components");
|
|
|
46
46
|
const lang_javascript_1 = require("@codemirror/lang-javascript");
|
|
47
47
|
const lang_json_1 = require("@codemirror/lang-json");
|
|
48
48
|
const state_1 = require("@codemirror/state");
|
|
49
|
-
const language_2 = require("@codemirror/language");
|
|
50
49
|
const highlight_1 = require("@lezer/highlight");
|
|
51
50
|
const polished_1 = require("polished");
|
|
52
51
|
const prettify_1 = require("./prettify");
|
|
@@ -64,7 +63,7 @@ const readOnlyStyle = (0, compass_components_1.css)({
|
|
|
64
63
|
});
|
|
65
64
|
const hiddenScrollStyle = (0, compass_components_1.css)({
|
|
66
65
|
'& .cm-scroller': {
|
|
67
|
-
|
|
66
|
+
scrollbarWidth: 'none',
|
|
68
67
|
msOverflowStyle: 'none',
|
|
69
68
|
},
|
|
70
69
|
'& .cm-scroller::-webkit-scrollbar': {
|
|
@@ -462,7 +461,7 @@ function getHighlightStyleForTheme(theme) {
|
|
|
462
461
|
// For the full list of tags parsed by lezer for javascript / json see:
|
|
463
462
|
// https://github.com/lezer-parser/javascript/blob/main/src/highlight.js
|
|
464
463
|
// https://github.com/lezer-parser/json/blob/main/src/highlight.js
|
|
465
|
-
return
|
|
464
|
+
return language_1.HighlightStyle.define([
|
|
466
465
|
{
|
|
467
466
|
tag: [
|
|
468
467
|
highlight_1.tags.null,
|
|
@@ -545,7 +544,7 @@ exports.languages = {
|
|
|
545
544
|
json: lang_json_1.json,
|
|
546
545
|
javascript: lang_javascript_1.javascript,
|
|
547
546
|
'javascript-expression': () => {
|
|
548
|
-
return new
|
|
547
|
+
return new language_1.LanguageSupport(javascriptExpression);
|
|
549
548
|
},
|
|
550
549
|
};
|
|
551
550
|
exports.languageName = state_1.Facet.define({});
|
|
@@ -806,8 +805,8 @@ const BaseEditor = react_1.default.forwardRef(function BaseEditor({ initialText:
|
|
|
806
805
|
autocompletionExtension,
|
|
807
806
|
linterExtension,
|
|
808
807
|
languageExtension,
|
|
809
|
-
(0,
|
|
810
|
-
(0,
|
|
808
|
+
(0, language_1.syntaxHighlighting)(highlightStyles['light']),
|
|
809
|
+
(0, language_1.syntaxHighlighting)(highlightStyles['dark']),
|
|
811
810
|
activeLineExtension,
|
|
812
811
|
lineHeightExtension,
|
|
813
812
|
themeConfigExtension,
|
package/dist/linter.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { syntaxTree } from '@codemirror/language';
|
|
2
|
-
import type { Annotation } from './editor';
|
|
3
2
|
import { EditorView } from '@codemirror/view';
|
|
4
3
|
import type { Extension } from '@codemirror/state';
|
|
4
|
+
import type { Annotation } from './editor';
|
|
5
5
|
export type LintConfig = {
|
|
6
6
|
lintDelay?: number;
|
|
7
7
|
tooltipExitDelay?: number;
|
package/dist/linter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../src/linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,
|
|
1
|
+
{"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../src/linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAO3C,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAI1B,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KAClD,CAAC;CACH,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,CACb,IAAI,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,EACnC,IAAI,EAAE,UAAU,KACb,UAAU,EAAE,EACjB,MAAM,CAAC,EAAE,UAAU,GAClB,SAAS,CAgBX"}
|
package/dist/prettify.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prettify.d.ts","sourceRoot":"","sources":["../src/prettify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEjE,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAC;AAE7E,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,MAAM,
|
|
1
|
+
{"version":3,"file":"prettify.d.ts","sourceRoot":"","sources":["../src/prettify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEjE,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAC;AAE7E,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,MAAM,GACJ,uBAAuB,GAAG,YAAY,GAAG,MAAgC,EAC3E,aAAa,GAAE,aAAkB,UAqBlC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-json-schema-autocompleter.d.ts","sourceRoot":"","sources":["../src/use-json-schema-autocompleter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAQnD,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"use-json-schema-autocompleter.d.ts","sourceRoot":"","sources":["../src/use-json-schema-autocompleter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAQnD,OAAO,KAAK,EAAE,gBAAgB,EAAc,MAAM,0BAA0B,CAAC;AAgB7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AA4L3C,MAAM,MAAM,6BAA6B,GAAG;IAC1C,uDAAuD;IACvD,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACxC,sFAAsF;IACtF,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,iDAAiD;IACjD,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,6DAA6D;IAC7D,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,GACX,6BAA6B,CA6U/B"}
|
package/package.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"email": "compass@mongodb.com"
|
|
14
14
|
},
|
|
15
15
|
"homepage": "https://github.com/mongodb-js/compass",
|
|
16
|
-
"version": "0.72.
|
|
16
|
+
"version": "0.72.3",
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|
|
19
19
|
"url": "https://github.com/mongodb-js/compass.git"
|
|
@@ -46,11 +46,11 @@
|
|
|
46
46
|
"reformat": "npm run eslint . -- --fix && npm run prettier -- --write ."
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@mongodb-js/eslint-config-compass": "^1.4.
|
|
50
|
-
"@mongodb-js/mocha-config-compass": "^1.8.
|
|
51
|
-
"@mongodb-js/prettier-config-compass": "^1.2.
|
|
52
|
-
"@mongodb-js/testing-library-compass": "^1.7.
|
|
53
|
-
"@mongodb-js/tsconfig-compass": "^1.3.
|
|
49
|
+
"@mongodb-js/eslint-config-compass": "^1.4.30",
|
|
50
|
+
"@mongodb-js/mocha-config-compass": "^1.8.2",
|
|
51
|
+
"@mongodb-js/prettier-config-compass": "^1.2.10",
|
|
52
|
+
"@mongodb-js/testing-library-compass": "^1.7.4",
|
|
53
|
+
"@mongodb-js/tsconfig-compass": "^1.3.2",
|
|
54
54
|
"@types/chai": "^4.2.21",
|
|
55
55
|
"@types/hast": "^3.0.4",
|
|
56
56
|
"@types/mocha": "^9.0.0",
|
|
@@ -73,13 +73,13 @@
|
|
|
73
73
|
"@codemirror/state": "^6.5.2",
|
|
74
74
|
"@codemirror/view": "^6.38.0",
|
|
75
75
|
"@lezer/highlight": "^1.2.1",
|
|
76
|
-
"@mongodb-js/compass-components": "^1.70.
|
|
77
|
-
"@mongodb-js/mongodb-constants": "^0.34.
|
|
76
|
+
"@mongodb-js/compass-components": "^1.70.3",
|
|
77
|
+
"@mongodb-js/mongodb-constants": "^0.34.14",
|
|
78
|
+
"@mongodb-js/shell-bson-parser": "^1.6.3",
|
|
78
79
|
"hast": "^0.0.2",
|
|
79
80
|
"json-schema": "^0.4.0",
|
|
80
|
-
"mongodb-query-parser": "^5.1.3",
|
|
81
81
|
"polished": "^4.2.2",
|
|
82
|
-
"prettier": "^2.
|
|
82
|
+
"prettier": "^2.8.8",
|
|
83
83
|
"react": "^18.3.1",
|
|
84
84
|
"rehype-sanitize": "^5.0.1",
|
|
85
85
|
"rehype-stringify": "^9.0.4",
|
|
@@ -89,5 +89,5 @@
|
|
|
89
89
|
"vscode-json-languageservice": "^5.7.2",
|
|
90
90
|
"vscode-languageserver-textdocument": "^1.0.12"
|
|
91
91
|
},
|
|
92
|
-
"gitHead": "
|
|
92
|
+
"gitHead": "ba44a9dbfe032bf5acb4b6daac0718fbc96892c0"
|
|
93
93
|
}
|