@patternfly/react-code-editor 6.0.0-alpha.9 → 6.0.0-alpha.91
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 +884 -0
- package/README.md +46 -36
- package/dist/esm/components/CodeEditor/CodeEditor.d.ts +8 -2
- package/dist/esm/components/CodeEditor/CodeEditor.d.ts.map +1 -1
- package/dist/esm/components/CodeEditor/CodeEditor.js +47 -41
- package/dist/esm/components/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/esm/components/CodeEditor/CodeEditorControl.d.ts.map +1 -1
- package/dist/esm/components/CodeEditor/CodeEditorControl.js +1 -1
- package/dist/esm/components/CodeEditor/CodeEditorControl.js.map +1 -1
- package/dist/js/components/CodeEditor/CodeEditor.d.ts +8 -2
- package/dist/js/components/CodeEditor/CodeEditor.d.ts.map +1 -1
- package/dist/js/components/CodeEditor/CodeEditor.js +47 -41
- package/dist/js/components/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/js/components/CodeEditor/CodeEditorControl.d.ts.map +1 -1
- package/dist/js/components/CodeEditor/CodeEditorControl.js +1 -1
- package/dist/js/components/CodeEditor/CodeEditorControl.js.map +1 -1
- package/package.json +9 -10
- package/src/components/CodeEditor/CodeEditor.tsx +77 -65
- package/src/components/CodeEditor/CodeEditorControl.tsx +8 -3
- package/src/components/CodeEditor/__test__/CodeEditor.test.tsx +69 -39
- package/src/components/CodeEditor/__test__/CodeEditorControl.test.tsx +18 -0
- package/src/components/CodeEditor/__test__/__snapshots__/CodeEditor.test.tsx.snap +116 -536
- package/src/components/CodeEditor/__test__/__snapshots__/CodeEditorControl.test.tsx.snap +26 -0
- package/src/components/CodeEditor/examples/CodeEditor.md +5 -0
- package/src/components/CodeEditor/examples/CodeEditorCustomControl.tsx +2 -1
- package/src/components/CodeEditor/examples/CodeEditorShortcutMainHeader.tsx +51 -18
|
@@ -7,7 +7,7 @@ const react_styles_1 = require("@patternfly/react-styles");
|
|
|
7
7
|
const code_editor_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/CodeEditor/code-editor"));
|
|
8
8
|
const file_upload_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/FileUpload/file-upload"));
|
|
9
9
|
const react_core_1 = require("@patternfly/react-core");
|
|
10
|
-
const
|
|
10
|
+
const react_1 = tslib_1.__importDefault(require("@monaco-editor/react"));
|
|
11
11
|
const copy_icon_1 = tslib_1.__importDefault(require('@patternfly/react-icons/dist/js/icons/copy-icon'));
|
|
12
12
|
const upload_icon_1 = tslib_1.__importDefault(require('@patternfly/react-icons/dist/js/icons/upload-icon'));
|
|
13
13
|
const download_icon_1 = tslib_1.__importDefault(require('@patternfly/react-icons/dist/js/icons/download-icon'));
|
|
@@ -93,8 +93,32 @@ var Language;
|
|
|
93
93
|
Language["verilog"] = "verilog";
|
|
94
94
|
Language["xml"] = "xml";
|
|
95
95
|
Language["yaml"] = "yaml";
|
|
96
|
-
})(Language
|
|
96
|
+
})(Language || (exports.Language = Language = {}));
|
|
97
97
|
class CodeEditor extends React.Component {
|
|
98
|
+
static getExtensionFromLanguage(language) {
|
|
99
|
+
switch (language) {
|
|
100
|
+
case Language.shell:
|
|
101
|
+
return 'sh';
|
|
102
|
+
case Language.ruby:
|
|
103
|
+
return 'rb';
|
|
104
|
+
case Language.perl:
|
|
105
|
+
return 'pl';
|
|
106
|
+
case Language.python:
|
|
107
|
+
return 'py';
|
|
108
|
+
case Language.mysql:
|
|
109
|
+
return 'sql';
|
|
110
|
+
case Language.javascript:
|
|
111
|
+
return 'js';
|
|
112
|
+
case Language.typescript:
|
|
113
|
+
return 'ts';
|
|
114
|
+
case Language.markdown:
|
|
115
|
+
return 'md';
|
|
116
|
+
case Language.plaintext:
|
|
117
|
+
return 'txt';
|
|
118
|
+
default:
|
|
119
|
+
return language.toString();
|
|
120
|
+
}
|
|
121
|
+
}
|
|
98
122
|
constructor(props) {
|
|
99
123
|
super(props);
|
|
100
124
|
this.editor = null;
|
|
@@ -194,30 +218,6 @@ class CodeEditor extends React.Component {
|
|
|
194
218
|
copied: false
|
|
195
219
|
};
|
|
196
220
|
}
|
|
197
|
-
static getExtensionFromLanguage(language) {
|
|
198
|
-
switch (language) {
|
|
199
|
-
case Language.shell:
|
|
200
|
-
return 'sh';
|
|
201
|
-
case Language.ruby:
|
|
202
|
-
return 'rb';
|
|
203
|
-
case Language.perl:
|
|
204
|
-
return 'pl';
|
|
205
|
-
case Language.python:
|
|
206
|
-
return 'py';
|
|
207
|
-
case Language.mysql:
|
|
208
|
-
return 'sql';
|
|
209
|
-
case Language.javascript:
|
|
210
|
-
return 'js';
|
|
211
|
-
case Language.typescript:
|
|
212
|
-
return 'ts';
|
|
213
|
-
case Language.markdown:
|
|
214
|
-
return 'md';
|
|
215
|
-
case Language.plaintext:
|
|
216
|
-
return 'txt';
|
|
217
|
-
default:
|
|
218
|
-
return language.toString();
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
221
|
setHeightToFitContent() {
|
|
222
222
|
const contentHeight = this.editor.getContentHeight();
|
|
223
223
|
const layoutInfo = this.editor.getLayoutInfo();
|
|
@@ -257,25 +257,22 @@ class CodeEditor extends React.Component {
|
|
|
257
257
|
}
|
|
258
258
|
render() {
|
|
259
259
|
const { height, value, isLoading, showEmptyState, copied } = this.state;
|
|
260
|
-
const { isDarkTheme, width, className, isCopyEnabled, copyButtonSuccessTooltipText, isReadOnly, isUploadEnabled, isLanguageLabelVisible, copyButtonAriaLabel, copyButtonToolTipText, uploadButtonAriaLabel, uploadButtonToolTipText, downloadButtonAriaLabel, downloadButtonToolTipText, toolTipDelay, toolTipCopyExitDelay, toolTipMaxWidth, toolTipPosition, isLineNumbersVisible, isDownloadEnabled, language, emptyState: providedEmptyState, emptyStateTitle, emptyStateBody, emptyStateButton, emptyStateLink, customControls, isMinimapVisible, headerMainContent, shortcutsPopoverButtonText, shortcutsPopoverProps: shortcutsPopoverPropsProp, showEditor, options: optionsProp, overrideServices } = this.props;
|
|
260
|
+
const { isDarkTheme, width, className, isCopyEnabled, copyButtonSuccessTooltipText, isReadOnly, isUploadEnabled, isLanguageLabelVisible, copyButtonAriaLabel, copyButtonToolTipText, uploadButtonAriaLabel, uploadButtonToolTipText, downloadButtonAriaLabel, downloadButtonToolTipText, toolTipDelay, toolTipCopyExitDelay, toolTipMaxWidth, toolTipPosition, isLineNumbersVisible, isDownloadEnabled, language, emptyState: providedEmptyState, emptyStateTitle, emptyStateBody, emptyStateButton, emptyStateLink, customControls, isMinimapVisible, isHeaderPlain, headerMainContent, shortcutsPopoverButtonText, shortcutsPopoverProps: shortcutsPopoverPropsProp, showEditor, options: optionsProp, overrideServices, editorProps } = this.props;
|
|
261
261
|
const shortcutsPopoverProps = Object.assign(Object.assign({}, CodeEditor.defaultProps.shortcutsPopoverProps), shortcutsPopoverPropsProp);
|
|
262
262
|
const options = Object.assign({ scrollBeyondLastLine: height !== 'sizeToFit', readOnly: isReadOnly, cursorStyle: 'line', lineNumbers: isLineNumbersVisible ? 'on' : 'off', tabIndex: -1, minimap: {
|
|
263
263
|
enabled: isMinimapVisible
|
|
264
264
|
} }, optionsProp);
|
|
265
265
|
return (React.createElement(react_dropzone_1.default, { multiple: false, onDropAccepted: this.onDropAccepted, onDropRejected: this.onDropRejected }, ({ getRootProps, getInputProps, isDragActive, open }) => {
|
|
266
266
|
const emptyState = providedEmptyState ||
|
|
267
|
-
(isUploadEnabled ? (React.createElement(react_core_1.EmptyState, { variant: react_core_1.EmptyStateVariant.sm },
|
|
268
|
-
React.createElement(react_core_1.EmptyStateHeader, { titleText: emptyStateTitle, icon: React.createElement(react_core_1.EmptyStateIcon, { icon: code_icon_1.default }), headingLevel: "h4" }),
|
|
267
|
+
(isUploadEnabled ? (React.createElement(react_core_1.EmptyState, { variant: react_core_1.EmptyStateVariant.sm, titleText: emptyStateTitle, icon: code_icon_1.default, headingLevel: "h4" },
|
|
269
268
|
React.createElement(react_core_1.EmptyStateBody, null, emptyStateBody),
|
|
270
269
|
!isReadOnly && (React.createElement(react_core_1.EmptyStateFooter, null,
|
|
271
270
|
React.createElement(react_core_1.EmptyStateActions, null,
|
|
272
271
|
React.createElement(react_core_1.Button, { variant: "primary", onClick: open }, emptyStateButton)),
|
|
273
272
|
React.createElement(react_core_1.EmptyStateActions, null,
|
|
274
|
-
React.createElement(react_core_1.Button, { variant: "link", onClick: this.toggleEmptyState }, emptyStateLink)))))) : (React.createElement(react_core_1.EmptyState, { variant: react_core_1.EmptyStateVariant.sm },
|
|
275
|
-
React.createElement(react_core_1.
|
|
276
|
-
|
|
277
|
-
React.createElement(react_core_1.EmptyStateActions, null,
|
|
278
|
-
React.createElement(react_core_1.Button, { variant: "primary", onClick: this.toggleEmptyState }, emptyStateLink)))))));
|
|
273
|
+
React.createElement(react_core_1.Button, { variant: "link", onClick: this.toggleEmptyState }, emptyStateLink)))))) : (React.createElement(react_core_1.EmptyState, { variant: react_core_1.EmptyStateVariant.sm, titleText: emptyStateTitle, icon: code_icon_1.default, headingLevel: "h4" }, !isReadOnly && (React.createElement(react_core_1.EmptyStateFooter, null,
|
|
274
|
+
React.createElement(react_core_1.EmptyStateActions, null,
|
|
275
|
+
React.createElement(react_core_1.Button, { variant: "primary", onClick: this.toggleEmptyState }, emptyStateLink)))))));
|
|
279
276
|
const tooltipProps = {
|
|
280
277
|
position: toolTipPosition,
|
|
281
278
|
exitDelay: toolTipDelay,
|
|
@@ -283,7 +280,12 @@ class CodeEditor extends React.Component {
|
|
|
283
280
|
maxWidth: toolTipMaxWidth,
|
|
284
281
|
trigger: 'mouseenter focus'
|
|
285
282
|
};
|
|
286
|
-
const
|
|
283
|
+
const hasEditorHeaderContent = ((isCopyEnabled || isDownloadEnabled) && (!showEmptyState || !!value)) ||
|
|
284
|
+
isUploadEnabled ||
|
|
285
|
+
customControls ||
|
|
286
|
+
headerMainContent ||
|
|
287
|
+
!!shortcutsPopoverProps.bodyContent;
|
|
288
|
+
const editorHeaderContent = (React.createElement(React.Fragment, null,
|
|
287
289
|
React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorControls) },
|
|
288
290
|
React.createElement(CodeEditorUtils_1.CodeEditorContext.Provider, { value: { code: value } },
|
|
289
291
|
isCopyEnabled && (!showEmptyState || !!value) && (React.createElement(CodeEditorControl_1.CodeEditorControl, { icon: React.createElement(copy_icon_1.default, null), "aria-label": copyButtonAriaLabel, tooltipProps: Object.assign(Object.assign({}, tooltipProps), { 'aria-live': 'polite', content: React.createElement("div", null, copied ? copyButtonSuccessTooltipText : copyButtonToolTipText), exitDelay: copied ? toolTipCopyExitDelay : toolTipDelay, onTooltipHidden: () => this.setState({ copied: false }) }), onClick: this.copyCode })),
|
|
@@ -293,20 +295,23 @@ class CodeEditor extends React.Component {
|
|
|
293
295
|
React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorHeaderMain) }, headerMainContent),
|
|
294
296
|
!!shortcutsPopoverProps.bodyContent && (React.createElement("div", { className: `${code_editor_1.default.codeEditor}__keyboard-shortcuts` },
|
|
295
297
|
React.createElement(react_core_1.Popover, Object.assign({}, shortcutsPopoverProps),
|
|
296
|
-
React.createElement(react_core_1.Button, { variant: react_core_1.ButtonVariant.link, icon: React.createElement(help_icon_1.default, null) }, shortcutsPopoverButtonText))))
|
|
298
|
+
React.createElement(react_core_1.Button, { variant: react_core_1.ButtonVariant.link, icon: React.createElement(help_icon_1.default, null) }, shortcutsPopoverButtonText))))));
|
|
299
|
+
const editorHeader = (React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorHeader, isHeaderPlain && code_editor_1.default.modifiers.plain) },
|
|
300
|
+
hasEditorHeaderContent && (React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorHeaderContent) }, editorHeaderContent)),
|
|
297
301
|
isLanguageLabelVisible && (React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorTab) },
|
|
298
302
|
React.createElement("span", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorTabIcon) },
|
|
299
303
|
React.createElement(code_icon_1.default, null)),
|
|
300
304
|
React.createElement("span", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorTabText) }, language.toUpperCase())))));
|
|
301
305
|
const editor = (React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorCode), ref: this.wrapperRef, tabIndex: 0, dir: "ltr" },
|
|
302
|
-
React.createElement(
|
|
306
|
+
React.createElement(react_1.default, Object.assign({ height: height, width: width, language: language, value: value, options: options, overrideServices: overrideServices, onChange: this.onChange, onMount: this.editorDidMount, theme: isDarkTheme ? 'vs-dark' : 'vs-light' }, editorProps))));
|
|
303
307
|
return (React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditor, isReadOnly && code_editor_1.default.modifiers.readOnly, className), ref: this.ref }, isUploadEnabled || providedEmptyState ? (React.createElement("div", Object.assign({}, getRootProps({
|
|
304
308
|
onClick: (event) => event.stopPropagation() // Prevents clicking TextArea from opening file dialog
|
|
305
|
-
}), { className:
|
|
309
|
+
}), { className: (0, react_styles_1.css)(isLoading && file_upload_1.default.modifiers.loading) }),
|
|
306
310
|
editorHeader,
|
|
307
|
-
React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorMain) },
|
|
308
|
-
React.createElement("
|
|
309
|
-
|
|
311
|
+
React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorMain, isDragActive && code_editor_1.default.modifiers.dragHover) },
|
|
312
|
+
React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorUpload) },
|
|
313
|
+
React.createElement("input", Object.assign({}, getInputProps())),
|
|
314
|
+
(showEmptyState || providedEmptyState) && !value ? emptyState : editor)))) : (React.createElement(React.Fragment, null,
|
|
310
315
|
editorHeader,
|
|
311
316
|
showEditor && React.createElement("div", { className: (0, react_styles_1.css)(code_editor_1.default.codeEditorMain) }, editor)))));
|
|
312
317
|
}));
|
|
@@ -335,6 +340,7 @@ CodeEditor.defaultProps = {
|
|
|
335
340
|
isUploadEnabled: false,
|
|
336
341
|
isDownloadEnabled: false,
|
|
337
342
|
isCopyEnabled: false,
|
|
343
|
+
isHeaderPlain: false,
|
|
338
344
|
copyButtonAriaLabel: 'Copy code to clipboard',
|
|
339
345
|
uploadButtonAriaLabel: 'Upload code',
|
|
340
346
|
downloadButtonAriaLabel: 'Download code',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeEditor.js","sourceRoot":"","sources":["../../../../src/components/CodeEditor/CodeEditor.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CodeEditor.js","sourceRoot":"","sources":["../../../../src/components/CodeEditor/CodeEditor.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeEditorControl.d.ts","sourceRoot":"","sources":["../../../../src/components/CodeEditor/CodeEditorControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAU,WAAW,EAAW,MAAM,wBAAwB,CAAC;AAGtE;;GAEG;AAEH,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;IAC1E,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,gDAAgD;IAChD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7C,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kEAAkE;IAClE,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC,sBAAsB,
|
|
1
|
+
{"version":3,"file":"CodeEditorControl.d.ts","sourceRoot":"","sources":["../../../../src/components/CodeEditor/CodeEditorControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAU,WAAW,EAAW,MAAM,wBAAwB,CAAC;AAGtE;;GAEG;AAEH,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;IAC1E,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,gDAAgD;IAChD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7C,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kEAAkE;IAClE,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC,sBAAsB,CA2B7E,CAAC"}
|
|
@@ -12,7 +12,7 @@ const CodeEditorControl = (_a) => {
|
|
|
12
12
|
onClick(context.code, event);
|
|
13
13
|
};
|
|
14
14
|
return isVisible ? (React.createElement(react_core_1.Tooltip, Object.assign({}, tooltipProps),
|
|
15
|
-
React.createElement(react_core_1.Button, Object.assign({ className: className, onClick: onCustomClick, variant: "
|
|
15
|
+
React.createElement(react_core_1.Button, Object.assign({ className: className, onClick: onCustomClick, variant: "plain", "aria-label": ariaLabel }, props, { icon: icon })))) : null;
|
|
16
16
|
};
|
|
17
17
|
exports.CodeEditorControl = CodeEditorControl;
|
|
18
18
|
exports.CodeEditorControl.displayName = 'CodeEditorControl';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeEditorControl.js","sourceRoot":"","sources":["../../../../src/components/CodeEditor/CodeEditorControl.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAC/B,uDAAsE;AACtE,uDAAsD;AAqB/C,MAAM,iBAAiB,GAAoD,CAAC,EAQ1D,EAAE,EAAE;QARsD,EACjF,IAAI,EACJ,SAAS,EACT,YAAY,EAAE,SAAS,EACvB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,IAAI,EAChB,YAAY,GAAG,EAAE,OAEM,EADpB,KAAK,sBAPyE,2EAQlF,CADS;IAER,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,mCAAiB,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,CAAC,KAAsD,EAAE,EAAE;QAC/E,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO,SAAS,CAAC,CAAC,CAAC,CACjB,oBAAC,oBAAO,oBAAK,YAAY;QACvB,oBAAC,mBAAM,
|
|
1
|
+
{"version":3,"file":"CodeEditorControl.js","sourceRoot":"","sources":["../../../../src/components/CodeEditor/CodeEditorControl.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAC/B,uDAAsE;AACtE,uDAAsD;AAqB/C,MAAM,iBAAiB,GAAoD,CAAC,EAQ1D,EAAE,EAAE;QARsD,EACjF,IAAI,EACJ,SAAS,EACT,YAAY,EAAE,SAAS,EACvB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,IAAI,EAChB,YAAY,GAAG,EAAE,OAEM,EADpB,KAAK,sBAPyE,2EAQlF,CADS;IAER,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,mCAAiB,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,CAAC,KAAsD,EAAE,EAAE;QAC/E,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO,SAAS,CAAC,CAAC,CAAC,CACjB,oBAAC,oBAAO,oBAAK,YAAY;QACvB,oBAAC,mBAAM,kBACL,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,aAAa,EACtB,OAAO,EAAC,OAAO,gBACH,SAAS,IACjB,KAAK,IACT,IAAI,EAAE,IAAI,IACV,CACM,CACX,CAAC,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC;AA3BW,QAAA,iBAAiB,qBA2B5B;AAEF,yBAAiB,CAAC,WAAW,GAAG,mBAAmB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@patternfly/react-code-editor",
|
|
3
|
-
"version": "6.0.0-alpha.
|
|
3
|
+
"version": "6.0.0-alpha.91",
|
|
4
4
|
"description": "This package provides a PatternFly wrapper for the Monaco code editor\n",
|
|
5
5
|
"main": "dist/js/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -30,20 +30,19 @@
|
|
|
30
30
|
"clean": "rimraf dist"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@
|
|
34
|
-
"@patternfly/react-
|
|
35
|
-
"@patternfly/react-
|
|
33
|
+
"@monaco-editor/react": "^4.6.0",
|
|
34
|
+
"@patternfly/react-core": "^6.0.0-alpha.91",
|
|
35
|
+
"@patternfly/react-icons": "^6.0.0-alpha.32",
|
|
36
|
+
"@patternfly/react-styles": "^6.0.0-alpha.31",
|
|
36
37
|
"react-dropzone": "14.2.3",
|
|
37
|
-
"tslib": "^2.
|
|
38
|
+
"tslib": "^2.6.2"
|
|
38
39
|
},
|
|
39
40
|
"peerDependencies": {
|
|
40
41
|
"react": "^17 || ^18",
|
|
41
|
-
"react-dom": "^17 || ^18"
|
|
42
|
-
"react-monaco-editor": "^0.51.0"
|
|
42
|
+
"react-dom": "^17 || ^18"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
|
-
"
|
|
46
|
-
"typescript": "^4.7.4"
|
|
45
|
+
"monaco-editor": "^0.49.0"
|
|
47
46
|
},
|
|
48
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "dc76e64f53bc2e2796b2fb91462bd95d78fbcb32"
|
|
49
48
|
}
|
|
@@ -7,18 +7,16 @@ import {
|
|
|
7
7
|
ButtonVariant,
|
|
8
8
|
EmptyState,
|
|
9
9
|
EmptyStateBody,
|
|
10
|
-
EmptyStateIcon,
|
|
11
10
|
EmptyStateActions,
|
|
12
11
|
EmptyStateVariant,
|
|
13
12
|
EmptyStateFooter,
|
|
14
13
|
getResizeObserver,
|
|
15
14
|
Popover,
|
|
16
15
|
PopoverProps,
|
|
17
|
-
TooltipPosition
|
|
18
|
-
EmptyStateHeader
|
|
16
|
+
TooltipPosition
|
|
19
17
|
} from '@patternfly/react-core';
|
|
20
|
-
import
|
|
21
|
-
import { editor } from 'monaco-editor
|
|
18
|
+
import Editor, { EditorProps, Monaco } from '@monaco-editor/react';
|
|
19
|
+
import type { editor } from 'monaco-editor';
|
|
22
20
|
import CopyIcon from '@patternfly/react-icons/dist/esm/icons/copy-icon';
|
|
23
21
|
import UploadIcon from '@patternfly/react-icons/dist/esm/icons/upload-icon';
|
|
24
22
|
import DownloadIcon from '@patternfly/react-icons/dist/esm/icons/download-icon';
|
|
@@ -28,6 +26,9 @@ import Dropzone, { FileRejection } from 'react-dropzone';
|
|
|
28
26
|
import { CodeEditorContext } from './CodeEditorUtils';
|
|
29
27
|
import { CodeEditorControl } from './CodeEditorControl';
|
|
30
28
|
|
|
29
|
+
export type ChangeHandler = (value: string, event: editor.IModelContentChangedEvent) => void;
|
|
30
|
+
export type EditorDidMount = (editor: editor.IStandaloneCodeEditor, monaco: Monaco) => void;
|
|
31
|
+
|
|
31
32
|
export interface Shortcut {
|
|
32
33
|
description: string;
|
|
33
34
|
keys: string[];
|
|
@@ -134,6 +135,8 @@ export interface CodeEditorProps extends Omit<React.HTMLProps<HTMLDivElement>, '
|
|
|
134
135
|
downloadButtonToolTipText?: string;
|
|
135
136
|
/** Name of the file if user downloads code to local file. */
|
|
136
137
|
downloadFileName?: string;
|
|
138
|
+
/** Additional props to pass to the monaco editor. */
|
|
139
|
+
editorProps?: EditorProps;
|
|
137
140
|
/** Content to display in space of the code editor when there is no code to display. */
|
|
138
141
|
emptyState?: React.ReactNode;
|
|
139
142
|
/** Override default empty state body text. */
|
|
@@ -154,6 +157,8 @@ export interface CodeEditorProps extends Omit<React.HTMLProps<HTMLDivElement>, '
|
|
|
154
157
|
isCopyEnabled?: boolean;
|
|
155
158
|
/** Flag indicating the editor is styled using monaco's dark theme. */
|
|
156
159
|
isDarkTheme?: boolean;
|
|
160
|
+
/** Flag indicating the editor has a plain header. */
|
|
161
|
+
isHeaderPlain?: boolean;
|
|
157
162
|
/** Flag to add download button to code editor actions. */
|
|
158
163
|
isDownloadEnabled?: boolean;
|
|
159
164
|
/** Flag to include a label indicating the currently configured editor language. */
|
|
@@ -260,6 +265,7 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
260
265
|
isUploadEnabled: false,
|
|
261
266
|
isDownloadEnabled: false,
|
|
262
267
|
isCopyEnabled: false,
|
|
268
|
+
isHeaderPlain: false,
|
|
263
269
|
copyButtonAriaLabel: 'Copy code to clipboard',
|
|
264
270
|
uploadButtonAriaLabel: 'Upload code',
|
|
265
271
|
downloadButtonAriaLabel: 'Download code',
|
|
@@ -491,12 +497,14 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
491
497
|
emptyStateLink,
|
|
492
498
|
customControls,
|
|
493
499
|
isMinimapVisible,
|
|
500
|
+
isHeaderPlain,
|
|
494
501
|
headerMainContent,
|
|
495
502
|
shortcutsPopoverButtonText,
|
|
496
503
|
shortcutsPopoverProps: shortcutsPopoverPropsProp,
|
|
497
504
|
showEditor,
|
|
498
505
|
options: optionsProp,
|
|
499
|
-
overrideServices
|
|
506
|
+
overrideServices,
|
|
507
|
+
editorProps
|
|
500
508
|
} = this.props;
|
|
501
509
|
const shortcutsPopoverProps: PopoverProps = {
|
|
502
510
|
...CodeEditor.defaultProps.shortcutsPopoverProps,
|
|
@@ -520,12 +528,7 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
520
528
|
const emptyState =
|
|
521
529
|
providedEmptyState ||
|
|
522
530
|
(isUploadEnabled ? (
|
|
523
|
-
<EmptyState variant={EmptyStateVariant.sm}>
|
|
524
|
-
<EmptyStateHeader
|
|
525
|
-
titleText={emptyStateTitle}
|
|
526
|
-
icon={<EmptyStateIcon icon={CodeIcon} />}
|
|
527
|
-
headingLevel="h4"
|
|
528
|
-
/>
|
|
531
|
+
<EmptyState variant={EmptyStateVariant.sm} titleText={emptyStateTitle} icon={CodeIcon} headingLevel="h4">
|
|
529
532
|
<EmptyStateBody>{emptyStateBody}</EmptyStateBody>
|
|
530
533
|
{!isReadOnly && (
|
|
531
534
|
<EmptyStateFooter>
|
|
@@ -543,12 +546,7 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
543
546
|
)}
|
|
544
547
|
</EmptyState>
|
|
545
548
|
) : (
|
|
546
|
-
<EmptyState variant={EmptyStateVariant.sm}>
|
|
547
|
-
<EmptyStateHeader
|
|
548
|
-
titleText={emptyStateTitle}
|
|
549
|
-
icon={<EmptyStateIcon icon={CodeIcon} />}
|
|
550
|
-
headingLevel="h4"
|
|
551
|
-
/>
|
|
549
|
+
<EmptyState variant={EmptyStateVariant.sm} titleText={emptyStateTitle} icon={CodeIcon} headingLevel="h4">
|
|
552
550
|
{!isReadOnly && (
|
|
553
551
|
<EmptyStateFooter>
|
|
554
552
|
<EmptyStateActions>
|
|
@@ -569,45 +567,50 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
569
567
|
trigger: 'mouseenter focus'
|
|
570
568
|
};
|
|
571
569
|
|
|
572
|
-
const
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
570
|
+
const hasEditorHeaderContent =
|
|
571
|
+
((isCopyEnabled || isDownloadEnabled) && (!showEmptyState || !!value)) ||
|
|
572
|
+
isUploadEnabled ||
|
|
573
|
+
customControls ||
|
|
574
|
+
headerMainContent ||
|
|
575
|
+
!!shortcutsPopoverProps.bodyContent;
|
|
576
|
+
|
|
577
|
+
const editorHeaderContent = (
|
|
578
|
+
<React.Fragment>
|
|
579
|
+
<div className={css(styles.codeEditorControls)}>
|
|
580
|
+
<CodeEditorContext.Provider value={{ code: value }}>
|
|
581
|
+
{isCopyEnabled && (!showEmptyState || !!value) && (
|
|
582
|
+
<CodeEditorControl
|
|
583
|
+
icon={<CopyIcon />}
|
|
584
|
+
aria-label={copyButtonAriaLabel}
|
|
585
|
+
tooltipProps={{
|
|
586
|
+
...tooltipProps,
|
|
587
|
+
'aria-live': 'polite',
|
|
588
|
+
content: <div>{copied ? copyButtonSuccessTooltipText : copyButtonToolTipText}</div>,
|
|
589
|
+
exitDelay: copied ? toolTipCopyExitDelay : toolTipDelay,
|
|
590
|
+
onTooltipHidden: () => this.setState({ copied: false })
|
|
591
|
+
}}
|
|
592
|
+
onClick={this.copyCode}
|
|
593
|
+
/>
|
|
594
|
+
)}
|
|
595
|
+
{isUploadEnabled && (
|
|
596
|
+
<CodeEditorControl
|
|
597
|
+
icon={<UploadIcon />}
|
|
598
|
+
aria-label={uploadButtonAriaLabel}
|
|
599
|
+
tooltipProps={{ content: <div>{uploadButtonToolTipText}</div>, ...tooltipProps }}
|
|
600
|
+
onClick={open}
|
|
601
|
+
/>
|
|
602
|
+
)}
|
|
603
|
+
{isDownloadEnabled && (!showEmptyState || !!value) && (
|
|
604
|
+
<CodeEditorControl
|
|
605
|
+
icon={<DownloadIcon />}
|
|
606
|
+
aria-label={downloadButtonAriaLabel}
|
|
607
|
+
tooltipProps={{ content: <div>{downloadButtonToolTipText}</div>, ...tooltipProps }}
|
|
608
|
+
onClick={this.download}
|
|
609
|
+
/>
|
|
610
|
+
)}
|
|
611
|
+
{customControls && customControls}
|
|
612
|
+
</CodeEditorContext.Provider>
|
|
613
|
+
</div>
|
|
611
614
|
{<div className={css(styles.codeEditorHeaderMain)}>{headerMainContent}</div>}
|
|
612
615
|
{!!shortcutsPopoverProps.bodyContent && (
|
|
613
616
|
<div className={`${styles.codeEditor}__keyboard-shortcuts`}>
|
|
@@ -618,6 +621,14 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
618
621
|
</Popover>
|
|
619
622
|
</div>
|
|
620
623
|
)}
|
|
624
|
+
</React.Fragment>
|
|
625
|
+
);
|
|
626
|
+
|
|
627
|
+
const editorHeader = (
|
|
628
|
+
<div className={css(styles.codeEditorHeader, isHeaderPlain && styles.modifiers.plain)}>
|
|
629
|
+
{hasEditorHeaderContent && (
|
|
630
|
+
<div className={css(styles.codeEditorHeaderContent)}>{editorHeaderContent}</div>
|
|
631
|
+
)}
|
|
621
632
|
{isLanguageLabelVisible && (
|
|
622
633
|
<div className={css(styles.codeEditorTab)}>
|
|
623
634
|
<span className={css(styles.codeEditorTabIcon)}>
|
|
@@ -631,7 +642,7 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
631
642
|
|
|
632
643
|
const editor = (
|
|
633
644
|
<div className={css(styles.codeEditorCode)} ref={this.wrapperRef} tabIndex={0} dir="ltr">
|
|
634
|
-
<
|
|
645
|
+
<Editor
|
|
635
646
|
height={height}
|
|
636
647
|
width={width}
|
|
637
648
|
language={language}
|
|
@@ -639,8 +650,9 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
639
650
|
options={options}
|
|
640
651
|
overrideServices={overrideServices}
|
|
641
652
|
onChange={this.onChange}
|
|
642
|
-
|
|
653
|
+
onMount={this.editorDidMount}
|
|
643
654
|
theme={isDarkTheme ? 'vs-dark' : 'vs-light'}
|
|
655
|
+
{...editorProps}
|
|
644
656
|
/>
|
|
645
657
|
</div>
|
|
646
658
|
);
|
|
@@ -652,14 +664,14 @@ class CodeEditor extends React.Component<CodeEditorProps, CodeEditorState> {
|
|
|
652
664
|
{...getRootProps({
|
|
653
665
|
onClick: (event) => event.stopPropagation() // Prevents clicking TextArea from opening file dialog
|
|
654
666
|
})}
|
|
655
|
-
className={
|
|
656
|
-
isLoading && fileUploadStyles.modifiers.loading
|
|
657
|
-
}`}
|
|
667
|
+
className={css(isLoading && fileUploadStyles.modifiers.loading)}
|
|
658
668
|
>
|
|
659
669
|
{editorHeader}
|
|
660
|
-
<div className={css(styles.codeEditorMain)}>
|
|
661
|
-
<
|
|
662
|
-
|
|
670
|
+
<div className={css(styles.codeEditorMain, isDragActive && styles.modifiers.dragHover)}>
|
|
671
|
+
<div className={css(styles.codeEditorUpload)}>
|
|
672
|
+
<input {...getInputProps()} /* hidden, necessary for react-dropzone */ />
|
|
673
|
+
{(showEmptyState || providedEmptyState) && !value ? emptyState : editor}
|
|
674
|
+
</div>
|
|
663
675
|
</div>
|
|
664
676
|
</div>
|
|
665
677
|
) : (
|
|
@@ -38,9 +38,14 @@ export const CodeEditorControl: React.FunctionComponent<CodeEditorControlProps>
|
|
|
38
38
|
|
|
39
39
|
return isVisible ? (
|
|
40
40
|
<Tooltip {...tooltipProps}>
|
|
41
|
-
<Button
|
|
42
|
-
{
|
|
43
|
-
|
|
41
|
+
<Button
|
|
42
|
+
className={className}
|
|
43
|
+
onClick={onCustomClick}
|
|
44
|
+
variant="plain"
|
|
45
|
+
aria-label={ariaLabel}
|
|
46
|
+
{...props}
|
|
47
|
+
icon={icon}
|
|
48
|
+
/>
|
|
44
49
|
</Tooltip>
|
|
45
50
|
) : null;
|
|
46
51
|
};
|