@codecademy/codebytes 0.6.15 → 0.6.16-alpha.7a875e.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.
- package/CHANGELOG.md +8 -0
- package/dist/codeByteEditor.js +4 -2
- package/dist/editor.d.ts +2 -1
- package/dist/editor.js +4 -3
- package/dist/types.d.ts +4 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
### [0.6.16-alpha.7a875e.0](https://github.com/Codecademy/client-modules/compare/@codecademy/codebytes@0.6.15...@codecademy/codebytes@0.6.16-alpha.7a875e.0) (2022-05-16)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @codecademy/codebytes
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
### [0.6.15](https://github.com/Codecademy/client-modules/compare/@codecademy/codebytes@0.6.14...@codecademy/codebytes@0.6.15) (2022-05-13)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @codecademy/codebytes
|
package/dist/codeByteEditor.js
CHANGED
|
@@ -38,7 +38,7 @@ var editorBaseStyles = system.css({
|
|
|
38
38
|
var EditorContainer = /*#__PURE__*/_styled(Background, {
|
|
39
39
|
target: "e1epka4g0",
|
|
40
40
|
label: "EditorContainer"
|
|
41
|
-
})(editorBaseStyles, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
41
|
+
})(editorBaseStyles, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb2RlQnl0ZUVkaXRvci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0J3QiIsImZpbGUiOiIuLi9zcmMvY29kZUJ5dGVFZGl0b3IudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm94LCBJY29uQnV0dG9uIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQnO1xuaW1wb3J0IHsgRmF2aWNvbkljb24gfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBCYWNrZ3JvdW5kLCBzeXN0ZW0gfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHsgU3R5bGVQcm9wcyB9IGZyb20gJ0Bjb2RlY2FkZW15L3ZhcmlhbmNlJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBoZWxsb1dvcmxkLCBMYW5ndWFnZU9wdGlvbiB9IGZyb20gJy4vY29uc3RzJztcbmltcG9ydCB7IEVkaXRvciB9IGZyb20gJy4vZWRpdG9yJztcbmltcG9ydCB7IHRyYWNrQ2xpY2sgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZWxlY3Rpb24gfSBmcm9tICcuL2xhbmd1YWdlU2VsZWN0aW9uJztcbmltcG9ydCB7IHRyYWNrVXNlckltcHJlc3Npb24gfSBmcm9tICcuL2xpYnMvZXZlbnRUcmFja2luZyc7XG5pbXBvcnQgeyBDb2RlQnl0ZUVkaXRvclByb3BzIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IGVkaXRvckJhc2VTdHlsZXMgPSBzeXN0ZW0uY3NzKHtcbiAgYm9yZGVyOiAxLFxuICBib3JkZXJDb2xvcjogJ2dyYXktOTAwJyxcbiAgZGlzcGxheTogJ2ZsZXgnLFxuICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgbWluSGVpZ2h0OiAnMjVyZW0nLFxufSk7XG5cbmNvbnN0IEVkaXRvckNvbnRhaW5lciA9IHN0eWxlZChCYWNrZ3JvdW5kKTxTdHlsZVByb3BzPHR5cGVvZiBlZGl0b3JCYXNlU3R5bGVzPj4oXG4gIGVkaXRvckJhc2VTdHlsZXNcbik7XG5cbmV4cG9ydCBjb25zdCBDb2RlQnl0ZUVkaXRvcjogUmVhY3QuRkM8Q29kZUJ5dGVFZGl0b3JQcm9wcz4gPSAoe1xuICB0ZXh0OiBpbml0aWFsVGV4dCxcbiAgbGFuZ3VhZ2U6IGluaXRpYWxMYW5ndWFnZSxcbiAgaGlkZUNvcHlCdXR0b24gPSBmYWxzZSxcbiAgc25pcHBldHNCYXNlVXJsLFxuICBvbkVkaXQsXG4gIG9uTGFuZ3VhZ2VDaGFuZ2UsXG4gIG9uQ29weSxcbiAgY29weUZvcm1hdHRlcixcbiAgdHJhY2tpbmdEYXRhLFxuICB0cmFja0ZpcnN0RWRpdCA9IGZhbHNlLFxuICAuLi5yZXN0XG59KSA9PiB7XG4gIGNvbnN0IGdldEluaXRpYWxUZXh0ID0gKCkgPT4ge1xuICAgIGlmIChpbml0aWFsVGV4dCAhPT0gdW5kZWZpbmVkKSByZXR1cm4gaW5pdGlhbFRleHQ7XG4gICAgcmV0dXJuIGluaXRpYWxMYW5ndWFnZSA/IGhlbGxvV29ybGRbaW5pdGlhbExhbmd1YWdlXSA6ICcnO1xuICB9O1xuXG4gIGNvbnN0IFt0ZXh0LCBzZXRUZXh0XSA9IHVzZVN0YXRlPHN0cmluZz4oZ2V0SW5pdGlhbFRleHQoKSk7XG4gIGNvbnN0IFtsYW5ndWFnZSwgc2V0TGFuZ3VhZ2VdID0gdXNlU3RhdGU8TGFuZ3VhZ2VPcHRpb24+KFxuICAgIGluaXRpYWxMYW5ndWFnZSA/PyAnJ1xuICApO1xuICBjb25zdCBbaGFzQmVlbkVkaXRlZCwgc2V0SGFzQmVlbkVkaXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICB0cmFja1VzZXJJbXByZXNzaW9uKHtcbiAgICAgIHBhZ2VfbmFtZTogdHJhY2tpbmdEYXRhPy5wYWdlX25hbWUgPz8gJ1Vua25vd24nLFxuICAgICAgY29udGV4dDogdHJhY2tpbmdEYXRhPy5jb250ZXh0ID8/IGRvY3VtZW50LnJlZmVycmVyLFxuICAgICAgdGFyZ2V0OiAnY29kZWJ5dGUnLFxuICAgIH0pO1xuICB9LCBbdHJhY2tpbmdEYXRhXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8RWRpdG9yQ29udGFpbmVyIGJnPVwiYmxhY2tcIiBtYXhXaWR0aD1cIjQzcmVtXCIgey4uLnJlc3R9IG92ZXJmbG93PVwiaGlkZGVuXCI+XG4gICAgICA8Qm94IGJvcmRlckJvdHRvbT17MX0gYm9yZGVyQ29sb3I9XCJncmF5LTkwMFwiIHB5PXs0fSBwbD17OH0+XG4gICAgICAgIDxJY29uQnV0dG9uXG4gICAgICAgICAgaWNvbj17RmF2aWNvbkljb259XG4gICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgaHJlZj1cImh0dHBzOi8vd3d3LmNvZGVjYWRlbXkuY29tL1wiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICByZWw9XCJub3JlZmVycmVyXCJcbiAgICAgICAgICBhcmlhLWxhYmVsPVwidmlzaXQgY29kZWNhZGVteS5jb21cIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHRyYWNrQ2xpY2soJ2xvZ28nLCB0cmFja2luZ0RhdGEpfVxuICAgICAgICAvPlxuICAgICAgPC9Cb3g+XG4gICAgICB7bGFuZ3VhZ2UgPyAoXG4gICAgICAgIDxFZGl0b3JcbiAgICAgICAgICBsYW5ndWFnZT17bGFuZ3VhZ2V9XG4gICAgICAgICAgdGV4dD17dGV4dH1cbiAgICAgICAgICBoaWRlQ29weUJ1dHRvbj17aGlkZUNvcHlCdXR0b259XG4gICAgICAgICAgb25DaGFuZ2U9eyhuZXdUZXh0OiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIHNldFRleHQobmV3VGV4dCk7XG4gICAgICAgICAgICBvbkVkaXQ/LihuZXdUZXh0LCBsYW5ndWFnZSk7XG4gICAgICAgICAgICBpZiAodHJhY2tGaXJzdEVkaXQgJiYgaGFzQmVlbkVkaXRlZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgc2V0SGFzQmVlbkVkaXRlZCh0cnVlKTtcbiAgICAgICAgICAgICAgdHJhY2tDbGljaygnZWRpdCcsIHRyYWNraW5nRGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICBzbmlwcGV0c0Jhc2VVcmw9e3NuaXBwZXRzQmFzZVVybH1cbiAgICAgICAgICBvbkNvcHk9e29uQ29weX1cbiAgICAgICAgICBjb3B5Rm9ybWF0dGVyPXtjb3B5Rm9ybWF0dGVyfVxuICAgICAgICAgIHRyYWNraW5nRGF0YT17dHJhY2tpbmdEYXRhfVxuICAgICAgICAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPExhbmd1YWdlU2VsZWN0aW9uXG4gICAgICAgICAgb25DaGFuZ2U9eyhuZXdMYW5ndWFnZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmV3VGV4dDogc3RyaW5nID1cbiAgICAgICAgICAgICAgdGV4dCB8fCAobmV3TGFuZ3VhZ2UgPyBoZWxsb1dvcmxkW25ld0xhbmd1YWdlXSA6ICcnKTtcbiAgICAgICAgICAgIHNldExhbmd1YWdlKG5ld0xhbmd1YWdlKTtcbiAgICAgICAgICAgIHNldFRleHQobmV3VGV4dCk7XG4gICAgICAgICAgICB0cmFja0NsaWNrKCdsYW5nX3NlbGVjdCcsIHRyYWNraW5nRGF0YSk7XG4gICAgICAgICAgICBvbkxhbmd1YWdlQ2hhbmdlPy4obmV3VGV4dCwgbmV3TGFuZ3VhZ2UpO1xuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvRWRpdG9yQ29udGFpbmVyPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQ29kZUJ5dGVFZGl0b3I7XG4iXX0= */");
|
|
42
42
|
|
|
43
43
|
export var CodeByteEditor = function CodeByteEditor(_ref) {
|
|
44
44
|
var initialText = _ref.text,
|
|
@@ -49,10 +49,11 @@ export var CodeByteEditor = function CodeByteEditor(_ref) {
|
|
|
49
49
|
onEdit = _ref.onEdit,
|
|
50
50
|
onLanguageChange = _ref.onLanguageChange,
|
|
51
51
|
onCopy = _ref.onCopy,
|
|
52
|
+
copyFormatter = _ref.copyFormatter,
|
|
52
53
|
trackingData = _ref.trackingData,
|
|
53
54
|
_ref$trackFirstEdit = _ref.trackFirstEdit,
|
|
54
55
|
trackFirstEdit = _ref$trackFirstEdit === void 0 ? false : _ref$trackFirstEdit,
|
|
55
|
-
rest = _objectWithoutProperties(_ref, ["text", "language", "hideCopyButton", "snippetsBaseUrl", "onEdit", "onLanguageChange", "onCopy", "trackingData", "trackFirstEdit"]);
|
|
56
|
+
rest = _objectWithoutProperties(_ref, ["text", "language", "hideCopyButton", "snippetsBaseUrl", "onEdit", "onLanguageChange", "onCopy", "copyFormatter", "trackingData", "trackFirstEdit"]);
|
|
56
57
|
|
|
57
58
|
var getInitialText = function getInitialText() {
|
|
58
59
|
if (initialText !== undefined) return initialText;
|
|
@@ -118,6 +119,7 @@ export var CodeByteEditor = function CodeByteEditor(_ref) {
|
|
|
118
119
|
},
|
|
119
120
|
snippetsBaseUrl: snippetsBaseUrl,
|
|
120
121
|
onCopy: onCopy,
|
|
122
|
+
copyFormatter: copyFormatter,
|
|
121
123
|
trackingData: trackingData
|
|
122
124
|
}) : /*#__PURE__*/React.createElement(LanguageSelection, {
|
|
123
125
|
onChange: function onChange(newLanguage) {
|
package/dist/editor.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { UserClickData } from '@codecademy/tracking';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { LanguageOption } from './consts';
|
|
4
|
-
import { CodebytesChangeHandler } from './types';
|
|
4
|
+
import { CodebytesChangeHandler, CodebytesCopyFormatter } from './types';
|
|
5
5
|
declare type EditorProps = {
|
|
6
6
|
hideCopyButton: boolean;
|
|
7
7
|
language: LanguageOption;
|
|
@@ -9,6 +9,7 @@ declare type EditorProps = {
|
|
|
9
9
|
onChange: (text: string) => void;
|
|
10
10
|
snippetsBaseUrl?: string;
|
|
11
11
|
onCopy?: CodebytesChangeHandler;
|
|
12
|
+
copyFormatter?: CodebytesCopyFormatter;
|
|
12
13
|
trackingData?: Omit<UserClickData, 'target'>;
|
|
13
14
|
};
|
|
14
15
|
export declare const Editor: React.FC<EditorProps>;
|
package/dist/editor.js
CHANGED
|
@@ -34,7 +34,7 @@ var Output = _styled("pre", {
|
|
|
34
34
|
var hasError = _ref.hasError,
|
|
35
35
|
theme = _ref.theme;
|
|
36
36
|
return "\n color: ".concat(hasError ? theme.colors.orange : theme.colors.text, ";\n background-color: ").concat(theme.colors['navy-900'], ";\n");
|
|
37
|
-
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
37
|
+
}, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1CZ0QiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGaWxsQnV0dG9uLFxuICBGbGV4Qm94LFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQgeyBDb3B5SWNvbiB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LWljb25zJztcbmltcG9ydCB7IFVzZXJDbGlja0RhdGEgfSBmcm9tICdAY29kZWNhZGVteS90cmFja2luZyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IHBvc3RTbmlwcGV0IH0gZnJvbSAnLi9hcGknO1xuaW1wb3J0IHR5cGUgeyBMYW5ndWFnZU9wdGlvbiB9IGZyb20gJy4vY29uc3RzJztcbmltcG9ydCB7IERyYXdlcnMgfSBmcm9tICcuL2RyYXdlcnMnO1xuaW1wb3J0IHsgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBTaW1wbGVNb25hY29FZGl0b3IgfSBmcm9tICcuL01vbmFjb0VkaXRvcic7XG5pbXBvcnQgeyBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyLCBDb2RlYnl0ZXNDb3B5Rm9ybWF0dGVyIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IE91dHB1dCA9IHN0eWxlZC5wcmU8eyBoYXNFcnJvcjogYm9vbGVhbiB9PmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBNb25hY287XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICAkeyh7IGhhc0Vycm9yLCB0aGVtZSB9KSA9PiBgXG4gIGNvbG9yOiAke2hhc0Vycm9yID8gdGhlbWUuY29sb3JzLm9yYW5nZSA6IHRoZW1lLmNvbG9ycy50ZXh0fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHt0aGVtZS5jb2xvcnNbJ25hdnktOTAwJ119O1xuYH1cbmA7XG5cbmNvbnN0IENvcHlJY29uU3R5bGVkID0gc3R5bGVkKENvcHlJY29uKWBcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG5gO1xuXG5jb25zdCBET0NLRVJfU0lHVEVSTSA9IDE0MztcblxudHlwZSBFZGl0b3JQcm9wcyA9IHtcbiAgaGlkZUNvcHlCdXR0b246IGJvb2xlYW47XG4gIGxhbmd1YWdlOiBMYW5ndWFnZU9wdGlvbjtcbiAgdGV4dDogc3RyaW5nO1xuICBvbkNoYW5nZTogKHRleHQ6IHN0cmluZykgPT4gdm9pZDtcbiAgc25pcHBldHNCYXNlVXJsPzogc3RyaW5nO1xuICBvbkNvcHk/OiBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyO1xuICBjb3B5Rm9ybWF0dGVyPzogQ29kZWJ5dGVzQ29weUZvcm1hdHRlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIGNvcHlGb3JtYXR0ZXIsXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KGNvcHlGb3JtYXR0ZXIgPyBjb3B5Rm9ybWF0dGVyKHRleHQsIGxhbmd1YWdlKSA6IHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQgPSAobWVzc2FnZTogc3RyaW5nKSA9PiB7XG4gICAgc2V0T3V0cHV0KG1lc3NhZ2UpO1xuICAgIHNldFN0YXR1cygnZXJyb3InKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSBhc3luYyAoKSA9PiB7XG4gICAgaWYgKHRleHQudHJpbSgpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgbGFuZ3VhZ2UsXG4gICAgICBjb2RlOiB0ZXh0LFxuICAgIH07XG4gICAgc2V0U3RhdHVzKCd3YWl0aW5nJyk7XG4gICAgc2V0T3V0cHV0KCcnKTtcbiAgICB0cmFja0NsaWNrKCdydW4nLCB0cmFja2luZ0RhdGEpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgcG9zdFNuaXBwZXQoZGF0YSwgc25pcHBldHNCYXNlVXJsKTtcbiAgICAgIGlmIChyZXNwb25zZS5zdGRlcnIubGVuZ3RoID4gMCkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChyZXNwb25zZS5zdGRlcnIpO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgPT09IERPQ0tFUl9TSUdURVJNKSB7XG4gICAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KFxuICAgICAgICAgICdZb3VyIGNvZGUgdG9vayB0b28gbG9uZyB0byByZXR1cm4gYSByZXN1bHQuIERvdWJsZSBjaGVjayB5b3VyIGNvZGUgZm9yIGFueSBpc3N1ZXMgYW5kIHRyeSBhZ2FpbiEnXG4gICAgICAgICk7XG4gICAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLmV4aXRfY29kZSAhPT0gMCkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dCgnQW4gdW5rbm93biBlcnJvciBvY2N1cmVkLicpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0T3V0cHV0KHJlc3BvbnNlLnN0ZG91dCk7XG4gICAgICAgIHNldFN0YXR1cygncmVhZHknKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8RHJhd2Vyc1xuICAgICAgICBsZWZ0Q2hpbGQ9e1xuICAgICAgICAgIDxTaW1wbGVNb25hY29FZGl0b3JcbiAgICAgICAgICAgIHZhbHVlPXt0ZXh0fVxuICAgICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgICAgcmlnaHRDaGlsZD17XG4gICAgICAgICAgPE91dHB1dCBoYXNFcnJvcj17c3RhdHVzID09PSAnZXJyb3InfSBhcmlhLWxpdmU9XCJwb2xpdGVcIj5cbiAgICAgICAgICAgIHtvdXRwdXR9XG4gICAgICAgICAgPC9PdXRwdXQ+XG4gICAgICAgIH1cbiAgICAgIC8+XG4gICAgICA8RmxleEJveFxuICAgICAgICBqdXN0aWZ5Q29udGVudD17aGlkZUNvcHlCdXR0b24gPyAnZmxleC1lbmQnIDogJ3NwYWNlLWJldHdlZW4nfVxuICAgICAgICBwbD17OH1cbiAgICAgID5cbiAgICAgICAgeyFoaWRlQ29weUJ1dHRvbiA/IChcbiAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgaWQ9XCJjb2RlYnl0ZS1jb3BpZWRcIlxuICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgIG1vZGU9XCJkYXJrXCJcbiAgICAgICAgICAgIHRhcmdldD17XG4gICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25Db3B5Q2xpY2t9XG4gICAgICAgICAgICAgICAgb25CbHVyPXsoKSA9PiBzZXRJc0NvZGVCeXRlQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cImNvcHktY29kZWJ5dGUtYnRuXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxDb3B5SWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBDb3B5IENvZGVieXRlXG4gICAgICAgICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aXNDb2RlQnl0ZUNvcGllZCA/IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LWNvbmZpcm1hdGlvbi10b29sdGlwXCIgcm9sZT1cImFsZXJ0XCI+XG4gICAgICAgICAgICAgICAgQ29waWVkIVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRlc3RpZD1cImNvcHktcHJvbXB0LXRvb2x0aXBcIj5cbiAgICAgICAgICAgICAgICBDb3B5IHRvIHlvdXIgY2xpcGJvYXJkXG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPEZpbGxCdXR0b24gb25DbGljaz17aGFuZGxlU3VibWl0fT5cbiAgICAgICAgICB7c3RhdHVzID09PSAnd2FpdGluZycgPyA8U3Bpbm5lciAvPiA6ICdSdW4nfVxuICAgICAgICA8L0ZpbGxCdXR0b24+XG4gICAgICA8L0ZsZXhCb3g+XG4gICAgPC8+XG4gICk7XG59O1xuIl19 */"));
|
|
38
38
|
|
|
39
39
|
var CopyIconStyled = /*#__PURE__*/_styled(CopyIcon, {
|
|
40
40
|
target: "e1lzxy8e0",
|
|
@@ -45,7 +45,7 @@ var CopyIconStyled = /*#__PURE__*/_styled(CopyIcon, {
|
|
|
45
45
|
} : {
|
|
46
46
|
name: "u7ytkp",
|
|
47
47
|
styles: "margin-right:0.5rem",
|
|
48
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
48
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlDdUMiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGaWxsQnV0dG9uLFxuICBGbGV4Qm94LFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQgeyBDb3B5SWNvbiB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LWljb25zJztcbmltcG9ydCB7IFVzZXJDbGlja0RhdGEgfSBmcm9tICdAY29kZWNhZGVteS90cmFja2luZyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IHBvc3RTbmlwcGV0IH0gZnJvbSAnLi9hcGknO1xuaW1wb3J0IHR5cGUgeyBMYW5ndWFnZU9wdGlvbiB9IGZyb20gJy4vY29uc3RzJztcbmltcG9ydCB7IERyYXdlcnMgfSBmcm9tICcuL2RyYXdlcnMnO1xuaW1wb3J0IHsgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBTaW1wbGVNb25hY29FZGl0b3IgfSBmcm9tICcuL01vbmFjb0VkaXRvcic7XG5pbXBvcnQgeyBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyLCBDb2RlYnl0ZXNDb3B5Rm9ybWF0dGVyIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IE91dHB1dCA9IHN0eWxlZC5wcmU8eyBoYXNFcnJvcjogYm9vbGVhbiB9PmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBNb25hY287XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICAkeyh7IGhhc0Vycm9yLCB0aGVtZSB9KSA9PiBgXG4gIGNvbG9yOiAke2hhc0Vycm9yID8gdGhlbWUuY29sb3JzLm9yYW5nZSA6IHRoZW1lLmNvbG9ycy50ZXh0fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHt0aGVtZS5jb2xvcnNbJ25hdnktOTAwJ119O1xuYH1cbmA7XG5cbmNvbnN0IENvcHlJY29uU3R5bGVkID0gc3R5bGVkKENvcHlJY29uKWBcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG5gO1xuXG5jb25zdCBET0NLRVJfU0lHVEVSTSA9IDE0MztcblxudHlwZSBFZGl0b3JQcm9wcyA9IHtcbiAgaGlkZUNvcHlCdXR0b246IGJvb2xlYW47XG4gIGxhbmd1YWdlOiBMYW5ndWFnZU9wdGlvbjtcbiAgdGV4dDogc3RyaW5nO1xuICBvbkNoYW5nZTogKHRleHQ6IHN0cmluZykgPT4gdm9pZDtcbiAgc25pcHBldHNCYXNlVXJsPzogc3RyaW5nO1xuICBvbkNvcHk/OiBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyO1xuICBjb3B5Rm9ybWF0dGVyPzogQ29kZWJ5dGVzQ29weUZvcm1hdHRlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIGNvcHlGb3JtYXR0ZXIsXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KGNvcHlGb3JtYXR0ZXIgPyBjb3B5Rm9ybWF0dGVyKHRleHQsIGxhbmd1YWdlKSA6IHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQgPSAobWVzc2FnZTogc3RyaW5nKSA9PiB7XG4gICAgc2V0T3V0cHV0KG1lc3NhZ2UpO1xuICAgIHNldFN0YXR1cygnZXJyb3InKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSBhc3luYyAoKSA9PiB7XG4gICAgaWYgKHRleHQudHJpbSgpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgbGFuZ3VhZ2UsXG4gICAgICBjb2RlOiB0ZXh0LFxuICAgIH07XG4gICAgc2V0U3RhdHVzKCd3YWl0aW5nJyk7XG4gICAgc2V0T3V0cHV0KCcnKTtcbiAgICB0cmFja0NsaWNrKCdydW4nLCB0cmFja2luZ0RhdGEpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgcG9zdFNuaXBwZXQoZGF0YSwgc25pcHBldHNCYXNlVXJsKTtcbiAgICAgIGlmIChyZXNwb25zZS5zdGRlcnIubGVuZ3RoID4gMCkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChyZXNwb25zZS5zdGRlcnIpO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgPT09IERPQ0tFUl9TSUdURVJNKSB7XG4gICAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KFxuICAgICAgICAgICdZb3VyIGNvZGUgdG9vayB0b28gbG9uZyB0byByZXR1cm4gYSByZXN1bHQuIERvdWJsZSBjaGVjayB5b3VyIGNvZGUgZm9yIGFueSBpc3N1ZXMgYW5kIHRyeSBhZ2FpbiEnXG4gICAgICAgICk7XG4gICAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLmV4aXRfY29kZSAhPT0gMCkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dCgnQW4gdW5rbm93biBlcnJvciBvY2N1cmVkLicpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0T3V0cHV0KHJlc3BvbnNlLnN0ZG91dCk7XG4gICAgICAgIHNldFN0YXR1cygncmVhZHknKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8RHJhd2Vyc1xuICAgICAgICBsZWZ0Q2hpbGQ9e1xuICAgICAgICAgIDxTaW1wbGVNb25hY29FZGl0b3JcbiAgICAgICAgICAgIHZhbHVlPXt0ZXh0fVxuICAgICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgICAgcmlnaHRDaGlsZD17XG4gICAgICAgICAgPE91dHB1dCBoYXNFcnJvcj17c3RhdHVzID09PSAnZXJyb3InfSBhcmlhLWxpdmU9XCJwb2xpdGVcIj5cbiAgICAgICAgICAgIHtvdXRwdXR9XG4gICAgICAgICAgPC9PdXRwdXQ+XG4gICAgICAgIH1cbiAgICAgIC8+XG4gICAgICA8RmxleEJveFxuICAgICAgICBqdXN0aWZ5Q29udGVudD17aGlkZUNvcHlCdXR0b24gPyAnZmxleC1lbmQnIDogJ3NwYWNlLWJldHdlZW4nfVxuICAgICAgICBwbD17OH1cbiAgICAgID5cbiAgICAgICAgeyFoaWRlQ29weUJ1dHRvbiA/IChcbiAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgaWQ9XCJjb2RlYnl0ZS1jb3BpZWRcIlxuICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgIG1vZGU9XCJkYXJrXCJcbiAgICAgICAgICAgIHRhcmdldD17XG4gICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17b25Db3B5Q2xpY2t9XG4gICAgICAgICAgICAgICAgb25CbHVyPXsoKSA9PiBzZXRJc0NvZGVCeXRlQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cImNvcHktY29kZWJ5dGUtYnRuXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxDb3B5SWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBDb3B5IENvZGVieXRlXG4gICAgICAgICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aXNDb2RlQnl0ZUNvcGllZCA/IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LWNvbmZpcm1hdGlvbi10b29sdGlwXCIgcm9sZT1cImFsZXJ0XCI+XG4gICAgICAgICAgICAgICAgQ29waWVkIVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRlc3RpZD1cImNvcHktcHJvbXB0LXRvb2x0aXBcIj5cbiAgICAgICAgICAgICAgICBDb3B5IHRvIHlvdXIgY2xpcGJvYXJkXG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPEZpbGxCdXR0b24gb25DbGljaz17aGFuZGxlU3VibWl0fT5cbiAgICAgICAgICB7c3RhdHVzID09PSAnd2FpdGluZycgPyA8U3Bpbm5lciAvPiA6ICdSdW4nfVxuICAgICAgICA8L0ZpbGxCdXR0b24+XG4gICAgICA8L0ZsZXhCb3g+XG4gICAgPC8+XG4gICk7XG59O1xuIl19 */",
|
|
49
49
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
50
50
|
});
|
|
51
51
|
|
|
@@ -56,6 +56,7 @@ export var Editor = function Editor(_ref2) {
|
|
|
56
56
|
hideCopyButton = _ref2.hideCopyButton,
|
|
57
57
|
onChange = _ref2.onChange,
|
|
58
58
|
onCopy = _ref2.onCopy,
|
|
59
|
+
copyFormatter = _ref2.copyFormatter,
|
|
59
60
|
snippetsBaseUrl = _ref2.snippetsBaseUrl,
|
|
60
61
|
trackingData = _ref2.trackingData;
|
|
61
62
|
|
|
@@ -76,7 +77,7 @@ export var Editor = function Editor(_ref2) {
|
|
|
76
77
|
|
|
77
78
|
var onCopyClick = function onCopyClick() {
|
|
78
79
|
if (!isCodeByteCopied) {
|
|
79
|
-
navigator.clipboard.writeText(text) // eslint-disable-next-line no-console
|
|
80
|
+
navigator.clipboard.writeText(copyFormatter ? copyFormatter(text, language) : text) // eslint-disable-next-line no-console
|
|
80
81
|
["catch"](function () {
|
|
81
82
|
return console.error('Failed to copy');
|
|
82
83
|
});
|
package/dist/types.d.ts
CHANGED
|
@@ -4,11 +4,15 @@ import { LanguageOption } from './consts';
|
|
|
4
4
|
export interface CodebytesChangeHandler {
|
|
5
5
|
(text: string, language: LanguageOption): void;
|
|
6
6
|
}
|
|
7
|
+
export interface CodebytesCopyFormatter {
|
|
8
|
+
(text: string, language: LanguageOption): string;
|
|
9
|
+
}
|
|
7
10
|
export interface CodeByteEditorProps extends Omit<BackgroundProps, 'onCopy' | 'bg'> {
|
|
8
11
|
text?: string;
|
|
9
12
|
language?: LanguageOption;
|
|
10
13
|
hideCopyButton?: boolean;
|
|
11
14
|
onCopy?: CodebytesChangeHandler;
|
|
15
|
+
copyFormatter?: CodebytesCopyFormatter;
|
|
12
16
|
snippetsBaseUrl?: string;
|
|
13
17
|
onEdit?: CodebytesChangeHandler;
|
|
14
18
|
onLanguageChange?: CodebytesChangeHandler;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codecademy/codebytes",
|
|
3
3
|
"description": "Codebytes Code Editor",
|
|
4
|
-
"version": "0.6.
|
|
4
|
+
"version": "0.6.16-alpha.7a875e.0",
|
|
5
5
|
"author": "Codecademy Engineering <dev@codecademy.com>",
|
|
6
6
|
"sideEffects": [
|
|
7
7
|
"**/*.css",
|
|
@@ -64,5 +64,5 @@
|
|
|
64
64
|
"files": [
|
|
65
65
|
"dist/**"
|
|
66
66
|
],
|
|
67
|
-
"gitHead": "
|
|
67
|
+
"gitHead": "150853b30b6cdf5046c3ad0c875f963a6d0379b6"
|
|
68
68
|
}
|