@neo4j-cypher/react-codemirror 2.0.0-next.37 → 2.0.0-next.38

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/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # @neo4j-cypher/react-codemirror
2
2
 
3
+ ## 2.0.0-next.38
4
+
5
+ ### Patch Changes
6
+
7
+ - 6866132: Update grammar and semantic analysis to 2026.07
8
+ - 9c65003: Declares `react-dom` as a peer dependency, since `CypherEditor` now imports `createPortal` from it to render the editor action buttons overlay
9
+ - Updated dependencies [6866132]
10
+ - @neo4j-cypher/language-support@2.0.0-next.35
11
+ - @neo4j-cypher/lint-worker@1.10.1-next.12
12
+
3
13
  ## 2.0.0-next.37
4
14
 
5
15
  ### Patch Changes
@@ -3,7 +3,7 @@ import { EditorView, KeyBinding, ViewUpdate } from '@codemirror/view';
3
3
  import { type InlinePanelCallbacks } from './inlinePanel';
4
4
  import { type DiffProps } from './diffView';
5
5
  import { CypherLanguageService, type DbSchema } from '@neo4j-cypher/language-support';
6
- import { Component } from 'react';
6
+ import { Component, type ReactNode } from 'react';
7
7
  type DomEventHandlers = Parameters<typeof EditorView.domEventHandlers>[0];
8
8
  export interface CypherEditorProps {
9
9
  /**
@@ -158,6 +158,12 @@ export interface CypherEditorProps {
158
158
  * Deleted lines are shown as uneditable widgets.
159
159
  */
160
160
  diff?: DiffProps | null;
161
+ /**
162
+ * React content rendered as a cluster of action buttons (e.g. a context menu
163
+ * + Run) pinned to the top-right corner of the editor. Omit (or `null`) to
164
+ * hide it.
165
+ */
166
+ editorActions?: ReactNode;
161
167
  }
162
168
  export type InlinePanelProps = {
163
169
  /**
@@ -172,7 +178,7 @@ export type InlinePanelProps = {
172
178
  placement?: 'above' | 'below';
173
179
  } & InlinePanelCallbacks;
174
180
  type CypherEditorState = {
175
- cypherSupportEnabled: boolean;
181
+ editorActionsContainer: HTMLElement | null;
176
182
  };
177
183
  declare class CodemirrorSymbolFetcher {
178
184
  constructor(languageService: CypherLanguageService);
@@ -203,6 +209,9 @@ export declare class CypherEditor extends Component<CypherEditorProps, CypherEdi
203
209
  editorView: React.MutableRefObject<EditorView>;
204
210
  private schemaRef;
205
211
  private inlinePanelController;
212
+ private editorActionsController;
213
+ state: CypherEditorState;
214
+ private editorActionsCallbacks;
206
215
  /**
207
216
  * Format Cypher query
208
217
  */
@@ -223,6 +232,7 @@ export declare class CypherEditor extends Component<CypherEditorProps, CypherEdi
223
232
  static defaultProps: CypherEditorProps;
224
233
  private debouncedOnChange;
225
234
  componentDidMount(): void;
235
+ private setEditorActions;
226
236
  private openInlinePanel;
227
237
  private updateInlinePanel;
228
238
  private closeInlinePanel;
@@ -4,9 +4,11 @@ import { Annotation, Compartment, EditorState, } from '@codemirror/state';
4
4
  import { EditorView, keymap, lineNumbers, placeholder, } from '@codemirror/view';
5
5
  import { createInlinePanelController, } from './inlinePanel';
6
6
  import { createDiffExtension } from './diffView';
7
+ import { createEditorActionsController, } from './editorActions';
7
8
  import { formatQuery, CypherLanguageService, } from '@neo4j-cypher/language-support';
8
9
  import debounce from 'lodash.debounce';
9
10
  import { Component, createRef } from 'react';
11
+ import { createPortal } from 'react-dom';
10
12
  import { DEBOUNCE_TIME } from './constants';
11
13
  import { replaceHistory, replMode as historyNavigation, } from './historyNavigation';
12
14
  import { cypher } from './lang-cypher/langCypher';
@@ -166,6 +168,14 @@ export class CypherEditor extends Component {
166
168
  editorView = createRef();
167
169
  schemaRef = createRef();
168
170
  inlinePanelController = null;
171
+ editorActionsController = null;
172
+ state = {
173
+ editorActionsContainer: null,
174
+ };
175
+ editorActionsCallbacks = {
176
+ onMount: (container) => this.setState({ editorActionsContainer: container }),
177
+ onUnmount: () => this.setState({ editorActionsContainer: null }),
178
+ };
169
179
  /**
170
180
  * Format Cypher query
171
181
  */
@@ -248,6 +258,7 @@ export class CypherEditor extends Component {
248
258
  this.symbolFetcher = new CodemirrorSymbolFetcher(this.schemaRef.current.languageService);
249
259
  const themeExtension = getThemeExtension(theme, overrideThemeBackgroundColor);
250
260
  this.inlinePanelController = createInlinePanelController();
261
+ this.editorActionsController = createEditorActionsController();
251
262
  const changeListener = this.debouncedOnChange
252
263
  ? [
253
264
  EditorView.updateListener.of((upt) => {
@@ -296,6 +307,7 @@ export class CypherEditor extends Component {
296
307
  : [],
297
308
  this.inlinePanelController.extension,
298
309
  diffCompartment.of(this.props.diff ? createDiffExtension(this.props.diff) : []),
310
+ this.editorActionsController.extension,
299
311
  ],
300
312
  doc: this.props.value,
301
313
  });
@@ -315,6 +327,19 @@ export class CypherEditor extends Component {
315
327
  if (this.props.inlinePanel) {
316
328
  this.openInlinePanel(this.props.inlinePanel);
317
329
  }
330
+ if (this.props.editorActions != null) {
331
+ this.setEditorActions(true);
332
+ }
333
+ }
334
+ setEditorActions(active) {
335
+ const view = this.editorView.current;
336
+ const controller = this.editorActionsController;
337
+ if (!view || !controller) {
338
+ return;
339
+ }
340
+ view.dispatch({
341
+ effects: controller.set(active ? this.editorActionsCallbacks : null),
342
+ });
318
343
  }
319
344
  openInlinePanel(props) {
320
345
  const view = this.editorView.current;
@@ -426,6 +451,11 @@ export class CypherEditor extends Component {
426
451
  effects: diffCompartment.reconfigure(this.props.diff ? createDiffExtension(this.props.diff) : []),
427
452
  });
428
453
  }
454
+ const hadActions = prevProps.editorActions != null;
455
+ const hasActions = this.props.editorActions != null;
456
+ if (hadActions !== hasActions) {
457
+ this.setEditorActions(hasActions);
458
+ }
429
459
  if (prevProps.domEventHandlers !== this.props.domEventHandlers) {
430
460
  this.editorView.current.dispatch({
431
461
  effects: domEventHandlerCompartment.reconfigure(this.props.domEventHandlers
@@ -459,7 +489,9 @@ export class CypherEditor extends Component {
459
489
  render() {
460
490
  const { className, theme } = this.props;
461
491
  const themeClass = typeof theme === 'string' ? `cm-theme-${theme}` : 'cm-theme';
462
- return (_jsx("div", { ref: this.editorContainer, className: `${themeClass}${className ? ` ${className}` : ''}` }));
492
+ const { editorActionsContainer } = this.state;
493
+ return (_jsx("div", { ref: this.editorContainer, className: `${themeClass}${className ? ` ${className}` : ''}`, children: editorActionsContainer &&
494
+ createPortal(this.props.editorActions, editorActionsContainer) }));
463
495
  }
464
496
  }
465
497
  //# sourceMappingURL=CypherEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CypherEditor.js","sourceRoot":"","sources":["../../src/CypherEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CypherEditor.js","sourceRoot":"","sources":["../../src/CypherEditor.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { StateEffect, type Extension } from '@codemirror/state';
2
+ import type { HostPortalCallbacks } from './hostCallbacks';
3
+ /** Lifecycle callbacks for the editor action buttons. See {@link HostPortalCallbacks}. */
4
+ export type EditorActionsCallbacks = HostPortalCallbacks;
5
+ export type EditorActionsController = {
6
+ /** CodeMirror extension to register on the editor. */
7
+ extension: Extension;
8
+ /**
9
+ * Drive the action buttons from the host's state: pass callbacks to mount
10
+ * them, or `null` to unmount. Returns the effect for the host to dispatch.
11
+ *
12
+ * Visibility is purely a function of whether callbacks exist — there's no
13
+ * separate show/hide toggle.
14
+ */
15
+ set: (callbacks: EditorActionsCallbacks | null) => StateEffect<boolean>;
16
+ };
17
+ export declare function createEditorActionsController(): EditorActionsController;
@@ -0,0 +1,191 @@
1
+ import { StateEffect, StateField } from '@codemirror/state';
2
+ import { Decoration, EditorView, ViewPlugin, WidgetType, } from '@codemirror/view';
3
+ /**
4
+ * Renders a host-provided cluster of action buttons at the top-right corner
5
+ * of the editor.
6
+ *
7
+ * The cluster is split into two cooperating pieces so it can both reserve
8
+ * space *and* stay pinned — which a single element can't do (reserving needs
9
+ * to be in flow, pinning needs to be out of it):
10
+ *
11
+ * - A **spacer**: an empty, floated inline widget at the very start of the
12
+ * document. Being in flow, it makes the first line's text wrap around it —
13
+ * and because it's a float, the browser handles arbitrary cluster heights.
14
+ * It carries no content; it only reserves the footprint.
15
+ * - An **overlay**: the real, host-rendered buttons in a container pinned
16
+ * `absolute` on the editor element (which does not scroll). It never moves
17
+ * when the document grows, when an inline panel opens above the first line,
18
+ * or when the content scrolls — content simply scrolls behind it.
19
+ */
20
+ const SPACER_BOTTOM_GAP = 2;
21
+ const SPACER_LEFT_GAP = 4;
22
+ export function createEditorActionsController() {
23
+ const setActiveEffect = StateEffect.define();
24
+ let callbacksRef = null;
25
+ const activeField = StateField.define({
26
+ create: () => false,
27
+ update(active, transaction) {
28
+ for (const effect of transaction.effects) {
29
+ if (effect.is(setActiveEffect)) {
30
+ active = effect.value;
31
+ }
32
+ }
33
+ return active;
34
+ },
35
+ });
36
+ class SpacerWidget extends WidgetType {
37
+ toDOM() {
38
+ const spacer = document.createElement('div');
39
+ spacer.className = 'cm-editor-actions-spacer';
40
+ spacer.setAttribute('aria-hidden', 'true');
41
+ return spacer;
42
+ }
43
+ eq() {
44
+ return true;
45
+ }
46
+ ignoreEvent() {
47
+ return true;
48
+ }
49
+ }
50
+ const spacer = EditorView.decorations.compute(['doc', activeField], (state) => {
51
+ if (!state.field(activeField) || state.doc.length === 0) {
52
+ return Decoration.none;
53
+ }
54
+ return Decoration.set([
55
+ Decoration.widget({
56
+ widget: new SpacerWidget(),
57
+ side: -1,
58
+ }).range(0),
59
+ ]);
60
+ });
61
+ const overlay = ViewPlugin.fromClass(class {
62
+ dom = null;
63
+ resizeObserver = null;
64
+ mounted = null;
65
+ constructor(view) {
66
+ if (view.state.field(activeField)) {
67
+ this.mount(view);
68
+ }
69
+ }
70
+ update(update) {
71
+ const isActive = update.state.field(activeField);
72
+ if (isActive && !this.dom) {
73
+ this.mount(update.view);
74
+ }
75
+ else if (!isActive && this.dom) {
76
+ this.unmount();
77
+ }
78
+ else if (this.dom &&
79
+ (update.geometryChanged ||
80
+ update.docChanged ||
81
+ update.viewportChanged)) {
82
+ this.align(update.view);
83
+ }
84
+ }
85
+ destroy() {
86
+ this.unmount();
87
+ }
88
+ mount(view) {
89
+ const container = document.createElement('div');
90
+ container.className = 'cm-editor-actions';
91
+ view.dom.appendChild(container);
92
+ this.resizeObserver = new ResizeObserver(() => {
93
+ view.dom.style.setProperty('--cm-editor-actions-width', `${container.offsetWidth}px`);
94
+ view.dom.style.setProperty('--cm-editor-actions-height', `${container.offsetHeight}px`);
95
+ view.dom.style.setProperty('--cm-editor-actions-content-min-height', `${container.offsetHeight + SPACER_BOTTOM_GAP}px`);
96
+ this.align(view);
97
+ });
98
+ this.resizeObserver.observe(container);
99
+ this.dom = container;
100
+ this.mounted = callbacksRef;
101
+ callbacksRef?.onMount(container);
102
+ this.align(view);
103
+ }
104
+ align(view) {
105
+ view.requestMeasure({
106
+ read: () => {
107
+ if (!this.dom) {
108
+ return null;
109
+ }
110
+ const editorRect = view.dom.getBoundingClientRect();
111
+ const spacer = view.dom.querySelector('.cm-editor-actions-spacer');
112
+ let topClient;
113
+ let rightClient;
114
+ if (spacer) {
115
+ const rect = spacer.getBoundingClientRect();
116
+ topClient = rect.top;
117
+ rightClient = rect.right;
118
+ }
119
+ else {
120
+ const rect = view.contentDOM.getBoundingClientRect();
121
+ const style = window.getComputedStyle(view.contentDOM);
122
+ topClient = rect.top + (parseFloat(style.paddingTop) || 0);
123
+ rightClient = rect.right - (parseFloat(style.paddingRight) || 0);
124
+ }
125
+ return {
126
+ top: topClient - editorRect.top + view.scrollDOM.scrollTop,
127
+ right: editorRect.right - rightClient - view.scrollDOM.scrollLeft,
128
+ };
129
+ },
130
+ write: (pos) => {
131
+ if (!pos || !this.dom) {
132
+ return;
133
+ }
134
+ view.dom.style.setProperty('--cm-editor-actions-top', `${pos.top}px`);
135
+ view.dom.style.setProperty('--cm-editor-actions-right', `${pos.right}px`);
136
+ },
137
+ });
138
+ }
139
+ unmount() {
140
+ if (!this.dom) {
141
+ return;
142
+ }
143
+ this.resizeObserver?.disconnect();
144
+ this.resizeObserver = null;
145
+ this.mounted?.onUnmount();
146
+ this.mounted = null;
147
+ const root = this.dom?.parentElement;
148
+ if (root) {
149
+ root.style.removeProperty('--cm-editor-actions-width');
150
+ root.style.removeProperty('--cm-editor-actions-height');
151
+ root.style.removeProperty('--cm-editor-actions-content-min-height');
152
+ root.style.removeProperty('--cm-editor-actions-top');
153
+ root.style.removeProperty('--cm-editor-actions-right');
154
+ }
155
+ this.dom?.remove();
156
+ this.dom = null;
157
+ }
158
+ });
159
+ const theme = EditorView.theme({
160
+ '.cm-content': {
161
+ minHeight: 'var(--cm-editor-actions-content-min-height, 0px)',
162
+ },
163
+ '.cm-editor-actions-spacer': {
164
+ float: 'right',
165
+ boxSizing: 'content-box',
166
+ width: 'var(--cm-editor-actions-width, 0px)',
167
+ height: 'var(--cm-editor-actions-height, 0px)',
168
+ paddingLeft: `${SPACER_LEFT_GAP}px`,
169
+ paddingBottom: `${SPACER_BOTTOM_GAP}px`,
170
+ userSelect: 'none',
171
+ WebkitUserSelect: 'none',
172
+ pointerEvents: 'none',
173
+ },
174
+ '.cm-editor-actions': {
175
+ position: 'absolute',
176
+ top: 'var(--cm-editor-actions-top, 0px)',
177
+ right: 'var(--cm-editor-actions-right, 0px)',
178
+ zIndex: '2',
179
+ userSelect: 'none',
180
+ WebkitUserSelect: 'none',
181
+ },
182
+ });
183
+ return {
184
+ extension: [activeField, spacer, overlay, theme],
185
+ set: (callbacks) => {
186
+ callbacksRef = callbacks;
187
+ return setActiveEffect.of(callbacks !== null);
188
+ },
189
+ };
190
+ }
191
+ //# sourceMappingURL=editorActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editorActions.js","sourceRoot":"","sources":["../../src/editorActions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Lifecycle callbacks for host-rendered overlay content (inline panels, editor
3
+ * action buttons, …). The host renders into the provided DOM container (e.g.
4
+ * via React `createPortal`) and is expected to clean up on unmount.
5
+ */
6
+ export type HostPortalCallbacks = {
7
+ onMount: (container: HTMLElement) => void;
8
+ onUnmount: () => void;
9
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hostCallbacks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostCallbacks.js","sourceRoot":"","sources":["../../src/hostCallbacks.ts"],"names":[],"mappings":""}
@@ -1,13 +1,7 @@
1
1
  import { StateEffect, type Extension } from '@codemirror/state';
2
- /**
3
- * Lifecycle callbacks for an inline panel. The host renders into the
4
- * provided DOM container (e.g. via React `createPortal`) and is expected
5
- * to clean up on unmount.
6
- */
7
- export type InlinePanelCallbacks = {
8
- onMount: (container: HTMLElement) => void;
9
- onUnmount: () => void;
10
- };
2
+ import type { HostPortalCallbacks } from './hostCallbacks';
3
+ /** Lifecycle callbacks for an inline panel. See {@link HostPortalCallbacks}. */
4
+ export type InlinePanelCallbacks = HostPortalCallbacks;
11
5
  export type InlinePanelShowOptions = {
12
6
  /** Document position the panel anchors to. */
13
7
  pos: number;
@@ -1 +1 @@
1
- {"version":3,"file":"inlinePanel.js","sourceRoot":"","sources":["../../src/inlinePanel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inlinePanel.js","sourceRoot":"","sources":["../../src/inlinePanel.ts"],"names":[],"mappings":"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"}