@mongodb-js/compass-editor 0.4.1 → 0.5.0

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.
Files changed (35) hide show
  1. package/dist/ace/aggregation-autocompleter.d.ts.map +1 -1
  2. package/dist/ace/aggregation-autocompleter.js +17 -18
  3. package/dist/ace/aggregation-autocompleter.js.map +1 -1
  4. package/dist/ace/query-autocompleter.d.ts.map +1 -1
  5. package/dist/ace/query-autocompleter.js +14 -2
  6. package/dist/ace/query-autocompleter.js.map +1 -1
  7. package/dist/ace/stage-autocompleter.d.ts +0 -387
  8. package/dist/ace/stage-autocompleter.d.ts.map +1 -1
  9. package/dist/ace/stage-autocompleter.js +21 -40
  10. package/dist/ace/stage-autocompleter.js.map +1 -1
  11. package/dist/ace/theme.js +3 -3
  12. package/dist/ace/util.d.ts +1 -3
  13. package/dist/ace/util.d.ts.map +1 -1
  14. package/dist/ace/util.js +9 -21
  15. package/dist/ace/util.js.map +1 -1
  16. package/dist/ace/validation-autocompleter.d.ts.map +1 -1
  17. package/dist/ace/validation-autocompleter.js +10 -5
  18. package/dist/ace/validation-autocompleter.js.map +1 -1
  19. package/dist/autocompleter.d.ts +2252 -0
  20. package/dist/autocompleter.d.ts.map +1 -0
  21. package/dist/autocompleter.js +79 -0
  22. package/dist/autocompleter.js.map +1 -0
  23. package/dist/index.d.ts +1 -0
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +3 -1
  26. package/dist/index.js.map +1 -1
  27. package/dist/json-editor.d.ts +8 -1
  28. package/dist/json-editor.d.ts.map +1 -1
  29. package/dist/json-editor.js +148 -59
  30. package/dist/json-editor.js.map +1 -1
  31. package/dist/syntax-highlight.d.ts +10 -0
  32. package/dist/syntax-highlight.d.ts.map +1 -0
  33. package/dist/syntax-highlight.js +26 -0
  34. package/dist/syntax-highlight.js.map +1 -0
  35. package/package.json +7 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autocompleter.d.ts","sourceRoot":"","sources":["../src/autocompleter.ts"],"names":[],"mappings":"AAYA,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IASpB,CAAC;AAEF,aAAK,IAAI,GACL,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GACtC,kBAAkB,GAClB,iBAAiB,CAAC;AAQtB,oBAAY,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAeF,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EAAE,8BAK+B,UAAU,aAO/D;AAED,oBAAY,eAAe,GAAG;IAE5B,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,SAAS,GAAG,eAAe,GAAG,QAAQ,CAAC,EAAE,CAAC;CAC1D,CAAC;AAEF,oBAAY,gBAAgB,GAAG;IAE7B,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAsBF,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,UAItC;AAED,wBAAgB,SAAS,CACvB,MAAM,SAAK,EACX,OAAO,GAAE,eAAoB,EAC7B,WAAW,GAAE,UAAU,EAAoB,GAC1C,gBAAgB,EAAE,CA0BpB"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.completer = exports.wrapField = exports.createCompletionFilter = void 0;
4
+ const semver_1 = require("semver");
5
+ const mongodb_constants_1 = require("@mongodb-js/mongodb-constants");
6
+ const ALL_COMPLETIONS = [
7
+ ...mongodb_constants_1.ACCUMULATORS,
8
+ ...mongodb_constants_1.BSON_TYPES,
9
+ ...mongodb_constants_1.BSON_TYPE_ALIASES,
10
+ ...mongodb_constants_1.CONVERSION_OPERATORS,
11
+ ...mongodb_constants_1.EXPRESSION_OPERATORS,
12
+ ...mongodb_constants_1.JSON_SCHEMA,
13
+ ...mongodb_constants_1.QUERY_OPERATORS,
14
+ ...mongodb_constants_1.STAGE_OPERATORS,
15
+ ];
16
+ function matchesMeta(filter, meta) {
17
+ const metaParts = meta.split(':');
18
+ return filter.some((metaFilter) => {
19
+ const filterParts = metaFilter.split(':');
20
+ return (filterParts.length === metaParts.length &&
21
+ filterParts.every((part, index) => {
22
+ return part === '*' || part === metaParts[index];
23
+ }));
24
+ });
25
+ }
26
+ function createCompletionFilter(prefix, serverVersion, filterMeta) {
27
+ var _a, _b, _c;
28
+ const currentServerVersion = (_c = (_b = (_a = serverVersion.match(/^(?<version>\d+?\.\d+?\.\d+?)/)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.version) !== null && _c !== void 0 ? _c : serverVersion;
29
+ return ({ value, version: minServerVersion, meta }) => {
30
+ return (value.toLowerCase().startsWith(prefix.toLowerCase()) &&
31
+ (0, semver_1.gte)(currentServerVersion, minServerVersion) &&
32
+ (!filterMeta || matchesMeta(filterMeta, meta)));
33
+ };
34
+ }
35
+ exports.createCompletionFilter = createCompletionFilter;
36
+ function isValidIdentifier(identifier) {
37
+ if (/[.\s"'()[\];={}]/.test(identifier)) {
38
+ return false;
39
+ }
40
+ try {
41
+ new Function(`"use strict";let ${identifier};`);
42
+ return true;
43
+ }
44
+ catch (_a) {
45
+ return false;
46
+ }
47
+ }
48
+ function wrapField(field) {
49
+ return isValidIdentifier(field)
50
+ ? field
51
+ : `"${field.replace(/["\\]/g, '\\$&')}"`;
52
+ }
53
+ exports.wrapField = wrapField;
54
+ function completer(prefix = '', options = {}, completions = ALL_COMPLETIONS) {
55
+ const { serverVersion = '999.999.999', fields = [], meta } = options;
56
+ const completionsFilter = createCompletionFilter(prefix, serverVersion, meta);
57
+ const completionsWithFields = [].concat(completions, fields.flatMap((field) => {
58
+ return [
59
+ { value: field, meta: 'field:identifier', version: '0.0.0' },
60
+ { value: `$${field}`, meta: 'field:reference', version: '0.0.0' },
61
+ ];
62
+ }));
63
+ return completionsWithFields
64
+ .filter((completion) => {
65
+ return completionsFilter(completion);
66
+ })
67
+ .map((completion) => {
68
+ var _a;
69
+ return {
70
+ value: completion.value,
71
+ meta: completion.meta,
72
+ score: (_a = completion.score) !== null && _a !== void 0 ? _a : 1,
73
+ ...(completion.description && { description: completion.description }),
74
+ ...(completion.snippet && { snippet: completion.snippet }),
75
+ };
76
+ });
77
+ }
78
+ exports.completer = completer;
79
+ //# sourceMappingURL=autocompleter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autocompleter.js","sourceRoot":"","sources":["../src/autocompleter.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -13,4 +13,5 @@ export type { FormatOptions } from './prettify';
13
13
  export { Editor } from './multiline-editor';
14
14
  export { JSONEditor } from './json-editor';
15
15
  export type { EditorView } from './json-editor';
16
+ export { SyntaxHighlight } from './syntax-highlight';
16
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,oBAAY,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;AACnC,oBAAY,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC;AAC3C,YAAY,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,oBAAY,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;AACnC,oBAAY,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC;AAC3C,YAAY,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.JSONEditor = exports.Editor = exports.prettify = exports.InlineEditor = exports.AggregationAutoCompleter = exports.StageAutoCompleter = exports.QueryAutoCompleter = exports.ValidationAutoCompleter = void 0;
17
+ exports.SyntaxHighlight = exports.JSONEditor = exports.Editor = exports.prettify = exports.InlineEditor = exports.AggregationAutoCompleter = exports.StageAutoCompleter = exports.QueryAutoCompleter = exports.ValidationAutoCompleter = void 0;
18
18
  __exportStar(require("./base-editor"), exports);
19
19
  var validation_autocompleter_1 = require("./ace/validation-autocompleter");
20
20
  Object.defineProperty(exports, "ValidationAutoCompleter", { enumerable: true, get: function () { return validation_autocompleter_1.ValidationAutoCompleter; } });
@@ -32,4 +32,6 @@ var multiline_editor_1 = require("./multiline-editor");
32
32
  Object.defineProperty(exports, "Editor", { enumerable: true, get: function () { return multiline_editor_1.Editor; } });
33
33
  var json_editor_1 = require("./json-editor");
34
34
  Object.defineProperty(exports, "JSONEditor", { enumerable: true, get: function () { return json_editor_1.JSONEditor; } });
35
+ var syntax_highlight_1 = require("./syntax-highlight");
36
+ Object.defineProperty(exports, "SyntaxHighlight", { enumerable: true, get: function () { return syntax_highlight_1.SyntaxHighlight; } });
35
37
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,gDAA8B;AAC9B,2EAAyE;AAAhE,mIAAA,uBAAuB,OAAA;AAChC,iEAA+D;AAAtD,yHAAA,kBAAkB,OAAA;AAC3B,iEAA+D;AAAtD,yHAAA,kBAAkB,OAAA;AAC3B,6EAA2E;AAAlE,qIAAA,wBAAwB,OAAA;AAIjC,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AAEjB,uDAA4C;AAAnC,0GAAA,MAAM,OAAA;AACf,6CAA2C;AAAlC,yGAAA,UAAU,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,gDAA8B;AAC9B,2EAAyE;AAAhE,mIAAA,uBAAuB,OAAA;AAChC,iEAA+D;AAAtD,yHAAA,kBAAkB,OAAA;AAC3B,iEAA+D;AAAtD,yHAAA,kBAAkB,OAAA;AAC3B,6EAA2E;AAAlE,qIAAA,wBAAwB,OAAA;AAIjC,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AAEjB,uDAA4C;AAAnC,0GAAA,MAAM,OAAA;AACf,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AAEnB,uDAAqD;AAA5C,mHAAA,eAAe,OAAA"}
@@ -2,17 +2,20 @@ import React from 'react';
2
2
  import type { Command } from '@codemirror/view';
3
3
  import { EditorView } from '@codemirror/view';
4
4
  import { unfoldAll } from '@codemirror/language';
5
+ import type { Diagnostic } from '@codemirror/lint';
5
6
  declare type EditorLanguage = 'json' | 'javascript';
7
+ declare type Annotation = Pick<Diagnostic, 'from' | 'to' | 'severity' | 'message'>;
6
8
  declare type EditorProps = {
7
9
  language?: EditorLanguage;
8
10
  onChangeText?: (text: string, event?: any) => void;
9
11
  onLoad?: (editor: EditorView) => void;
10
12
  darkMode?: boolean;
11
- inline?: boolean;
12
13
  showLineNumbers?: boolean;
14
+ showFoldGutter?: boolean;
13
15
  readOnly?: boolean;
14
16
  className?: string;
15
17
  'data-testid'?: string;
18
+ annotations?: Annotation[];
16
19
  } & ({
17
20
  text: string;
18
21
  initialText?: never;
@@ -23,8 +26,12 @@ declare type EditorProps = {
23
26
  declare const BaseEditor: React.FunctionComponent<EditorProps> & {
24
27
  foldAll: typeof foldAll;
25
28
  unfoldAll: typeof unfoldAll;
29
+ copyAll: typeof copyAll;
30
+ prettify: typeof prettify;
26
31
  };
27
32
  declare const foldAll: Command;
33
+ declare const copyAll: Command;
34
+ declare const prettify: Command;
28
35
  export type { EditorView };
29
36
  export { BaseEditor as JSONEditor };
30
37
  //# sourceMappingURL=json-editor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"json-editor.d.ts","sourceRoot":"","sources":["../src/json-editor.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAML,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAKL,SAAS,EAOV,MAAM,sBAAsB,CAAC;AA6N9B,aAAK,cAAc,GAAG,MAAM,GAAG,YAAY,CAAC;AAE5C,aAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACnD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,CACA;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,GACrC;IAAE,IAAI,CAAC,EAAE,KAAK,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CACxC,CAAC;AAOF,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG;IACvD,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,SAAS,CAAC;CAgN7B,CAAC;AAYF,QAAA,MAAM,OAAO,EAAE,OAgCd,CAAC;AAMF,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,OAAO,EAAE,UAAU,IAAI,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"json-editor.d.ts","sourceRoot":"","sources":["../src/json-editor.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAA6C,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAML,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAKL,SAAS,EAOV,MAAM,sBAAsB,CAAC;AAO9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA0PnD,aAAK,cAAc,GAAG,MAAM,GAAG,YAAY,CAAC;AAE5C,aAAK,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AAE3E,aAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACnD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B,GAAG,CACA;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,GACrC;IAAE,IAAI,CAAC,EAAE,KAAK,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CACxC,CAAC;AA6DF,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG;IACvD,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,QAAQ,EAAE,OAAO,QAAQ,CAAC;CA+N3B,CAAC;AAYF,QAAA,MAAM,OAAO,EAAE,OAgCd,CAAC;AAEF,QAAA,MAAM,OAAO,EAAE,OAGd,CAAC;AAEF,QAAA,MAAM,QAAQ,EAAE,OA2Bf,CAAC;AAOF,YAAY,EAAE,UAAU,EAAE,CAAC;AAE3B,OAAO,EAAE,UAAU,IAAI,UAAU,EAAE,CAAC"}
@@ -28,6 +28,7 @@ const react_1 = __importStar(require("react"));
28
28
  const view_1 = require("@codemirror/view");
29
29
  const language_1 = require("@codemirror/language");
30
30
  const commands_1 = require("@codemirror/commands");
31
+ const lint_1 = require("@codemirror/lint");
31
32
  const autocomplete_1 = require("@codemirror/autocomplete");
32
33
  const compass_components_1 = require("@mongodb-js/compass-components");
33
34
  const lang_javascript_1 = require("@codemirror/lang-javascript");
@@ -36,6 +37,7 @@ const state_1 = require("@codemirror/state");
36
37
  const language_2 = require("@codemirror/language");
37
38
  const highlight_1 = require("@lezer/highlight");
38
39
  const polished_1 = require("polished");
40
+ const prettify_1 = require("./prettify");
39
41
  const editorStyle = (0, compass_components_1.css)({
40
42
  fontSize: 13,
41
43
  fontFamily: compass_components_1.fontFamilies.code,
@@ -52,18 +54,24 @@ const editorPalette = {
52
54
  activeLineBackgroundColor: (0, polished_1.rgba)(compass_components_1.palette.gray.light2, 0.5),
53
55
  selectionBackgroundColor: compass_components_1.palette.blue.light2,
54
56
  bracketBorderColor: compass_components_1.palette.gray.light1,
57
+ infoGutterIconColor: encodeURIComponent(compass_components_1.palette.blue.base),
58
+ warningGutterIconColor: encodeURIComponent(compass_components_1.palette.yellow.base),
59
+ errorGutterIconColor: encodeURIComponent(compass_components_1.palette.red.base),
55
60
  },
56
61
  dark: {
57
62
  color: compass_components_1.codePalette.dark[3],
58
63
  backgroundColor: compass_components_1.codePalette.dark[0],
59
64
  gutterColor: compass_components_1.palette.gray.light3,
60
- gutterBackgroundColor: compass_components_1.palette.gray.dark3,
65
+ gutterBackgroundColor: compass_components_1.palette.gray.dark4,
61
66
  gutterActiveLineBackgroundColor: (0, polished_1.rgba)(compass_components_1.palette.gray.dark2, 0.5),
62
67
  gutterFoldButtonColor: compass_components_1.palette.white,
63
68
  cursorColor: compass_components_1.palette.green.base,
64
69
  activeLineBackgroundColor: (0, polished_1.rgba)(compass_components_1.palette.gray.dark2, 0.5),
65
70
  selectionBackgroundColor: compass_components_1.palette.gray.dark1,
66
71
  bracketBorderColor: compass_components_1.palette.gray.light1,
72
+ infoGutterIconColor: encodeURIComponent(compass_components_1.palette.blue.light1),
73
+ warningGutterIconColor: encodeURIComponent(compass_components_1.palette.yellow.light2),
74
+ errorGutterIconColor: encodeURIComponent(compass_components_1.palette.red.light1),
67
75
  },
68
76
  };
69
77
  function getStylesForTheme(theme) {
@@ -73,6 +81,8 @@ function getStylesForTheme(theme) {
73
81
  backgroundColor: editorPalette[theme].backgroundColor,
74
82
  },
75
83
  '& .cm-scroller': {
84
+ fontSize: '13px',
85
+ fontFamily: compass_components_1.fontFamilies.code,
76
86
  lineHeight: `${compass_components_1.spacing[3]}px`,
77
87
  },
78
88
  '&.cm-editor.cm-focused': {
@@ -98,6 +108,26 @@ function getStylesForTheme(theme) {
98
108
  '& .cm-gutters > .cm-gutter:last-child > .cm-gutterElement': {
99
109
  paddingRight: `${compass_components_1.spacing[2]}px`,
100
110
  },
111
+ '& .cm-gutter-lint': {
112
+ width: 'auto',
113
+ },
114
+ '& .cm-gutter-lint .cm-gutterElement': {
115
+ padding: '0',
116
+ },
117
+ '& .cm-gutter-lint .cm-lint-marker': {
118
+ width: `${compass_components_1.spacing[3]}px`,
119
+ height: `${compass_components_1.spacing[3]}px`,
120
+ padding: '2px',
121
+ },
122
+ '& .cm-gutter-lint .cm-lint-marker-info': {
123
+ content: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='${editorPalette[theme].infoGutterIconColor}' fill-rule='evenodd' d='M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM9 4a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 6a1 1 0 0 1 1 1v4h.5a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1H7V7h-.5a.5.5 0 0 1 0-1H8Z' clip-rule='evenodd'/%3E%3C/svg%3E%0A")`,
124
+ },
125
+ '& .cm-gutter-lint .cm-lint-marker-warning': {
126
+ content: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='${editorPalette[theme].warningGutterIconColor}' fill-rule='evenodd' d='M8.864 2.514a.983.983 0 0 0-1.728 0L1.122 13.539A.987.987 0 0 0 1.986 15h12.028a.987.987 0 0 0 .864-1.461L8.864 2.514ZM7 6a1 1 0 0 1 2 0v4a1 1 0 1 1-2 0V6Zm2 7a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z' clip-rule='evenodd'/%3E%3C/svg%3E%0A")`,
127
+ },
128
+ '& .cm-gutter-lint .cm-lint-marker-error': {
129
+ content: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='${editorPalette[theme].errorGutterIconColor}' fill-rule='evenodd' d='M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14zm1.414-9.828a1 1 0 1 1 1.414 1.414L9.414 8l1.414 1.414a1 1 0 1 1-1.414 1.414L8 9.414l-1.414 1.414a1 1 0 1 1-1.414-1.414L6.586 8 5.172 6.586a1 1 0 0 1 1.414-1.414L8 6.586l1.414-1.414z' clip-rule='evenodd'/%3E%3C/svg%3E%0A")`,
130
+ },
101
131
  '& .cm-activeLineGutter': {
102
132
  background: 'none',
103
133
  },
@@ -206,73 +236,113 @@ const highlightStyles = {
206
236
  light: getHighlightStyleForTheme('light'),
207
237
  dark: getHighlightStyleForTheme('dark'),
208
238
  };
239
+ function createFoldGutterExtension() {
240
+ return (0, language_1.foldGutter)({
241
+ markerDOM(open) {
242
+ const marker = document.createElement('span');
243
+ marker.className = `foldMarker foldMarker${open ? 'Open' : 'Closed'}`;
244
+ marker.ariaHidden = 'true';
245
+ marker.title = open ? 'Fold code block' : 'Unfold code block';
246
+ marker.innerHTML = open
247
+ ? `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 16 16"><path fill="currentColor" d="M8.679 10.796a.554.554 0 0 1-.858 0L4.64 6.976C4.32 6.594 4.582 6 5.069 6h6.362c.487 0 .748.594.43.976l-3.182 3.82z"/></svg>`
248
+ : `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 16 16"><path fill="currentColor" d="M10.796 7.321a.554.554 0 0 1 0 .858l-3.82 3.181c-.382.319-.976.058-.976-.429V4.57c0-.487.594-.748.976-.43l3.82 3.182z"/></svg>`;
249
+ return marker;
250
+ },
251
+ });
252
+ }
253
+ const javascriptExpression = lang_javascript_1.javascriptLanguage.configure({
254
+ top: 'SingleExpression',
255
+ });
209
256
  const languages = {
210
257
  json: lang_json_1.json,
211
- javascript: lang_javascript_1.javascript,
258
+ javascript() {
259
+ return new language_2.LanguageSupport(javascriptExpression);
260
+ },
212
261
  };
262
+ const languageName = state_1.Facet.define({});
263
+ function useCodemirrorExtensionCompartment(fn, value, editorViewRef) {
264
+ var _a, _b;
265
+ const extensionCreatorRef = (0, react_1.useRef)();
266
+ extensionCreatorRef.current = fn;
267
+ const compartmentRef = (0, react_1.useRef)();
268
+ (_a = compartmentRef.current) !== null && _a !== void 0 ? _a : (compartmentRef.current = new state_1.Compartment());
269
+ const initialExtensionRef = (0, react_1.useRef)();
270
+ (_b = initialExtensionRef.current) !== null && _b !== void 0 ? _b : (initialExtensionRef.current = compartmentRef.current.of(extensionCreatorRef.current()));
271
+ (0, compass_components_1.useEffectOnChange)(() => {
272
+ var _a, _b;
273
+ (_a = editorViewRef.current) === null || _a === void 0 ? void 0 : _a.dispatch({
274
+ effects: (_b = compartmentRef.current) === null || _b === void 0 ? void 0 : _b.reconfigure(extensionCreatorRef.current()),
275
+ });
276
+ }, value);
277
+ return initialExtensionRef.current;
278
+ }
213
279
  const BaseEditor = ({ initialText: _initialText, text, onChangeText = () => {
214
- }, language = 'json', showLineNumbers = true, darkMode: _darkMode, className, readOnly = false, onLoad = () => {
280
+ }, language = 'json', showLineNumbers = true, showFoldGutter = true, annotations = [], darkMode: _darkMode, className, readOnly = false, onLoad = () => {
215
281
  }, ...props }) => {
216
282
  const darkMode = (0, compass_components_1.useDarkMode)(_darkMode);
217
283
  const onChangeTextRef = (0, react_1.useRef)(onChangeText);
218
284
  const onLoadRef = (0, react_1.useRef)(onLoad);
219
- const initialReadOnly = (0, react_1.useRef)(readOnly);
220
285
  const initialTextProvided = (0, react_1.useRef)(!!_initialText);
221
286
  const initialText = (0, react_1.useRef)(_initialText !== null && _initialText !== void 0 ? _initialText : text);
222
287
  const initialLanguage = (0, react_1.useRef)(language);
223
- const initialDarkMode = (0, react_1.useRef)(darkMode);
224
- const initialShowLineNumbers = (0, react_1.useRef)(showLineNumbers);
225
288
  const containerRef = (0, react_1.useRef)(null);
226
- const languageConfigRef = (0, react_1.useRef)();
227
- const readOnlyConfigRef = (0, react_1.useRef)();
228
- const themeConfigRef = (0, react_1.useRef)();
229
- const showLineNumbersConfigRef = (0, react_1.useRef)();
230
289
  const editorViewRef = (0, react_1.useRef)();
231
290
  onChangeTextRef.current = onChangeText;
232
291
  onLoadRef.current = onLoad;
292
+ const languageExtension = useCodemirrorExtensionCompartment(() => {
293
+ return [languages[language](), languageName.of(language)];
294
+ }, language, editorViewRef);
295
+ const readOnlyExtension = useCodemirrorExtensionCompartment(() => {
296
+ return [state_1.EditorState.readOnly.of(readOnly)].concat(readOnly ? [] : [(0, view_1.highlightActiveLine)(), (0, view_1.highlightActiveLineGutter)()]);
297
+ }, readOnly, editorViewRef);
298
+ const themeConfigExtension = useCodemirrorExtensionCompartment(() => {
299
+ return themeStyles[darkMode ? 'dark' : 'light'];
300
+ }, darkMode, editorViewRef);
301
+ const lineNumbersExtension = useCodemirrorExtensionCompartment(() => {
302
+ return showLineNumbers ? (0, view_1.lineNumbers)() : [];
303
+ }, showLineNumbers, editorViewRef);
304
+ const foldGutterExtension = useCodemirrorExtensionCompartment(() => {
305
+ return showFoldGutter ? createFoldGutterExtension() : [];
306
+ }, showFoldGutter, editorViewRef);
307
+ const annotationsGutterExtension = useCodemirrorExtensionCompartment(() => {
308
+ return annotations.length === 0 ? [] : (0, lint_1.lintGutter)();
309
+ }, annotations.length === 0, editorViewRef);
233
310
  (0, react_1.useLayoutEffect)(() => {
234
311
  if (!containerRef.current) {
235
312
  throw new Error("Can't mount editor: DOM node is missing");
236
313
  }
237
- languageConfigRef.current = new state_1.Compartment();
238
- readOnlyConfigRef.current = new state_1.Compartment();
239
- themeConfigRef.current = new state_1.Compartment();
240
- showLineNumbersConfigRef.current = new state_1.Compartment();
314
+ const domNode = containerRef.current;
241
315
  const editor = (editorViewRef.current = new view_1.EditorView({
242
316
  doc: initialText.current,
243
317
  extensions: [
244
- showLineNumbersConfigRef.current.of(initialShowLineNumbers.current ? (0, view_1.lineNumbers)() : []),
318
+ lineNumbersExtension,
245
319
  (0, commands_1.history)(),
246
- (0, language_1.foldGutter)({
247
- markerDOM(open) {
248
- const marker = document.createElement('span');
249
- marker.className = `foldMarker foldMarker${open ? 'Open' : 'Closed'}`;
250
- marker.ariaHidden = 'true';
251
- marker.title = open ? 'Fold code block' : 'Unfold code block';
252
- marker.innerHTML = open
253
- ? `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 16 16"><path fill="currentColor" d="M8.679 10.796a.554.554 0 0 1-.858 0L4.64 6.976C4.32 6.594 4.582 6 5.069 6h6.362c.487 0 .748.594.43.976l-3.182 3.82z"/></svg>`
254
- : `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 16 16"><path fill="currentColor" d="M10.796 7.321a.554.554 0 0 1 0 .858l-3.82 3.181c-.382.319-.976.058-.976-.429V4.57c0-.487.594-.748.976-.43l3.82 3.182z"/></svg>`;
255
- return marker;
256
- },
257
- }),
320
+ foldGutterExtension,
258
321
  (0, view_1.drawSelection)(),
259
322
  (0, language_1.indentOnInput)(),
260
323
  (0, language_1.bracketMatching)(),
261
324
  (0, autocomplete_1.closeBrackets)(),
262
- (0, view_1.highlightActiveLine)(),
263
- (0, view_1.highlightActiveLineGutter)(),
264
- languageConfigRef.current.of(languages[initialLanguage.current]()),
325
+ annotationsGutterExtension,
326
+ languageExtension,
265
327
  (0, language_2.syntaxHighlighting)(highlightStyles['light']),
266
328
  (0, language_2.syntaxHighlighting)(highlightStyles['dark']),
267
- themeConfigRef.current.of(themeStyles[initialDarkMode.current ? 'dark' : 'light']),
329
+ themeConfigExtension,
268
330
  view_1.keymap.of([
331
+ {
332
+ key: 'Ctrl-Shift-b',
333
+ run: prettify,
334
+ },
335
+ {
336
+ key: 'Ctrl-Shift-c',
337
+ run: copyAll,
338
+ },
269
339
  ...commands_1.defaultKeymap,
270
340
  ...autocomplete_1.closeBracketsKeymap,
271
341
  ...commands_1.historyKeymap,
272
342
  ...language_1.foldKeymap,
273
343
  commands_1.indentWithTab,
274
344
  ]),
275
- readOnlyConfigRef.current.of(state_1.EditorState.readOnly.of(initialReadOnly.current)),
345
+ readOnlyExtension,
276
346
  view_1.EditorView.updateListener.of((update) => {
277
347
  var _a, _b;
278
348
  if (update.docChanged) {
@@ -281,9 +351,9 @@ const BaseEditor = ({ initialText: _initialText, text, onChangeText = () => {
281
351
  }
282
352
  }),
283
353
  ],
284
- parent: containerRef.current,
354
+ parent: domNode,
285
355
  }));
286
- containerRef.current._cm = editor;
356
+ domNode._cm = editor;
287
357
  onLoadRef.current(editor);
288
358
  if (editor && initialLanguage.current === 'json') {
289
359
  const docLength = editor.state.doc.length;
@@ -296,33 +366,17 @@ const BaseEditor = ({ initialText: _initialText, text, onChangeText = () => {
296
366
  }
297
367
  }
298
368
  return () => {
369
+ delete domNode._cm;
299
370
  editor.destroy();
300
371
  };
301
- }, []);
302
- (0, compass_components_1.useEffectOnChange)(() => {
303
- var _a, _b;
304
- (_a = editorViewRef.current) === null || _a === void 0 ? void 0 : _a.dispatch({
305
- effects: (_b = languageConfigRef.current) === null || _b === void 0 ? void 0 : _b.reconfigure(languages[language]()),
306
- });
307
- }, language);
308
- (0, compass_components_1.useEffectOnChange)(() => {
309
- var _a, _b;
310
- (_a = editorViewRef.current) === null || _a === void 0 ? void 0 : _a.dispatch({
311
- effects: (_b = readOnlyConfigRef.current) === null || _b === void 0 ? void 0 : _b.reconfigure(state_1.EditorState.readOnly.of(readOnly)),
312
- });
313
- }, readOnly);
314
- (0, compass_components_1.useEffectOnChange)(() => {
315
- var _a, _b;
316
- (_a = editorViewRef.current) === null || _a === void 0 ? void 0 : _a.dispatch({
317
- effects: (_b = themeConfigRef.current) === null || _b === void 0 ? void 0 : _b.reconfigure(themeStyles[darkMode ? 'dark' : 'light']),
318
- });
319
- }, darkMode);
320
- (0, compass_components_1.useEffectOnChange)(() => {
321
- var _a, _b;
322
- (_a = editorViewRef.current) === null || _a === void 0 ? void 0 : _a.dispatch({
323
- effects: (_b = showLineNumbersConfigRef.current) === null || _b === void 0 ? void 0 : _b.reconfigure(showLineNumbers ? (0, view_1.lineNumbers)() : []),
324
- });
325
- }, showLineNumbers);
372
+ }, [
373
+ annotationsGutterExtension,
374
+ foldGutterExtension,
375
+ languageExtension,
376
+ lineNumbersExtension,
377
+ readOnlyExtension,
378
+ themeConfigExtension,
379
+ ]);
326
380
  (0, react_1.useEffect)(() => {
327
381
  var _a, _b;
328
382
  if (initialTextProvided.current) {
@@ -338,6 +392,12 @@ const BaseEditor = ({ initialText: _initialText, text, onChangeText = () => {
338
392
  });
339
393
  }
340
394
  }, [text]);
395
+ (0, react_1.useEffect)(() => {
396
+ var _a;
397
+ (_a = editorViewRef.current) === null || _a === void 0 ? void 0 : _a.dispatch({
398
+ effects: lint_1.setDiagnosticsEffect.of(annotations),
399
+ });
400
+ }, [annotations]);
341
401
  return (react_1.default.createElement("div", { ref: containerRef, className: (0, compass_components_1.cx)(editorStyle, className), "data-codemirror": "true", ...props }));
342
402
  };
343
403
  exports.JSONEditor = BaseEditor;
@@ -377,6 +437,35 @@ const foldAll = (editor) => {
377
437
  }
378
438
  return !!foldableProperties.length;
379
439
  };
440
+ const copyAll = (editorView) => {
441
+ void navigator.clipboard.writeText(editorView.state.sliceDoc());
442
+ return true;
443
+ };
444
+ const prettify = (editorView) => {
445
+ if (editorView.state.facet(state_1.EditorState.readOnly)) {
446
+ return false;
447
+ }
448
+ const language = editorView.state.facet(languageName)[0];
449
+ const doc = editorView.state.sliceDoc();
450
+ try {
451
+ const formatted = (0, prettify_1.prettify)(doc, language === 'json' ? 'json' : 'javascript-expression');
452
+ if (formatted !== doc) {
453
+ editorView.dispatch({
454
+ changes: {
455
+ from: 0,
456
+ to: editorView.state.doc.length,
457
+ insert: formatted,
458
+ },
459
+ });
460
+ return true;
461
+ }
462
+ }
463
+ catch (_a) {
464
+ }
465
+ return false;
466
+ };
380
467
  BaseEditor.foldAll = foldAll;
381
468
  BaseEditor.unfoldAll = language_1.unfoldAll;
469
+ BaseEditor.copyAll = copyAll;
470
+ BaseEditor.prettify = prettify;
382
471
  //# sourceMappingURL=json-editor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"json-editor.js","sourceRoot":"","sources":["../src/json-editor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-editor.js","sourceRoot":"","sources":["../src/json-editor.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { JSONEditor as BaseEditor } from './json-editor';
3
+ export declare const SyntaxHighlight: React.FunctionComponent<Pick<React.ComponentProps<typeof BaseEditor>, 'language' | 'showLineNumbers' | 'showFoldGutter' | 'className'> & ({
4
+ text: string;
5
+ initialText?: never;
6
+ } | {
7
+ text?: never;
8
+ initialText: string;
9
+ })>;
10
+ //# sourceMappingURL=syntax-highlight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syntax-highlight.d.ts","sourceRoot":"","sources":["../src/syntax-highlight.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,UAAU,IAAI,UAAU,EACzB,MAAM,eAAe,CAAC;AA2BvB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,iBAAiB,CACnD,IAAI,CACF,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,EACvC,UAAU,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,WAAW,CAChE,GACC,CACI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,GACrC;IAAE,IAAI,CAAC,EAAE,KAAK,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CACxC,CASJ,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SyntaxHighlight = void 0;
7
+ const compass_components_1 = require("@mongodb-js/compass-components");
8
+ const react_1 = __importDefault(require("react"));
9
+ const json_editor_1 = require("./json-editor");
10
+ const syntaxHighlightStyles = (0, compass_components_1.css)({
11
+ '& .cm-editor': {
12
+ backgroundColor: 'transparent',
13
+ },
14
+ '& .cm-line': {
15
+ paddingLeft: 1,
16
+ paddingRight: 1,
17
+ },
18
+ '& .cm-content': {
19
+ padding: 0,
20
+ },
21
+ });
22
+ const SyntaxHighlight = ({ className, ...props }) => {
23
+ return (react_1.default.createElement(json_editor_1.JSONEditor, { ...props, className: (0, compass_components_1.cx)(syntaxHighlightStyles, className), readOnly: true }));
24
+ };
25
+ exports.SyntaxHighlight = SyntaxHighlight;
26
+ //# sourceMappingURL=syntax-highlight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syntax-highlight.js","sourceRoot":"","sources":["../src/syntax-highlight.tsx"],"names":[],"mappings":";;;;;;AAAA,uEAAyD;AACzD,kDAA0B;AAC1B,+CAGuB;AAQvB,MAAM,qBAAqB,GAAG,IAAA,wBAAG,EAAC;IAChC,cAAc,EAAE;QACd,eAAe,EAAE,aAAa;KAC/B;IACD,YAAY,EAAE;QAGZ,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;KAChB;IACD,eAAe,EAAE;QACf,OAAO,EAAE,CAAC;KACX;CACF,CAAC,CAAC;AAMI,MAAM,eAAe,GASxB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAC9B,OAAO,CACL,8BAAC,wBAAU,OACL,KAAK,EACT,SAAS,EAAE,IAAA,uBAAE,EAAC,qBAAqB,EAAE,SAAS,CAAC,EAC/C,QAAQ,SACI,CACf,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,eAAe,mBAiB1B"}