@eccenca/gui-elements 24.1.0-rc.4 → 24.1.0-rc.6
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 +35 -2
- package/dist/cjs/cmem/ActivityControl/ActivityControlWidget.js +7 -2
- package/dist/cjs/cmem/ActivityControl/ActivityControlWidget.js.map +1 -1
- package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js +8 -0
- package/dist/cjs/components/AutoSuggestion/AutoSuggestion.js.map +1 -1
- package/dist/cjs/components/Icon/canonicalIconNames.js +10 -0
- package/dist/cjs/components/Icon/canonicalIconNames.js.map +1 -1
- package/dist/cjs/components/OverviewItem/OverviewItem.js +5 -2
- package/dist/cjs/components/OverviewItem/OverviewItem.js.map +1 -1
- package/dist/cjs/components/OverviewItem/OverviewItemList.js +2 -2
- package/dist/cjs/components/OverviewItem/OverviewItemList.js.map +1 -1
- package/dist/cjs/components/TextField/SearchField.js +19 -2
- package/dist/cjs/components/TextField/SearchField.js.map +1 -1
- package/dist/cjs/components/Typography/OverflowText.js +1 -1
- package/dist/cjs/components/Typography/OverflowText.js.map +1 -1
- package/dist/cjs/extensions/codemirror/CodeMirror.js +37 -8
- package/dist/cjs/extensions/codemirror/CodeMirror.js.map +1 -1
- package/dist/cjs/extensions/codemirror/toolbars/commands/markdown.command.js +278 -0
- package/dist/cjs/extensions/codemirror/toolbars/commands/markdown.command.js.map +1 -0
- package/dist/cjs/extensions/codemirror/toolbars/markdown.toolbar.js +47 -0
- package/dist/cjs/extensions/codemirror/toolbars/markdown.toolbar.js.map +1 -0
- package/dist/esm/cmem/ActivityControl/ActivityControlWidget.js +7 -2
- package/dist/esm/cmem/ActivityControl/ActivityControlWidget.js.map +1 -1
- package/dist/esm/components/AutoSuggestion/AutoSuggestion.js +8 -0
- package/dist/esm/components/AutoSuggestion/AutoSuggestion.js.map +1 -1
- package/dist/esm/components/Icon/canonicalIconNames.js +10 -0
- package/dist/esm/components/Icon/canonicalIconNames.js.map +1 -1
- package/dist/esm/components/OverviewItem/OverviewItem.js +5 -2
- package/dist/esm/components/OverviewItem/OverviewItem.js.map +1 -1
- package/dist/esm/components/OverviewItem/OverviewItemList.js +2 -2
- package/dist/esm/components/OverviewItem/OverviewItemList.js.map +1 -1
- package/dist/esm/components/TextField/SearchField.js +35 -2
- package/dist/esm/components/TextField/SearchField.js.map +1 -1
- package/dist/esm/components/Typography/OverflowText.js +1 -1
- package/dist/esm/components/Typography/OverflowText.js.map +1 -1
- package/dist/esm/extensions/codemirror/CodeMirror.js +38 -9
- package/dist/esm/extensions/codemirror/CodeMirror.js.map +1 -1
- package/dist/esm/extensions/codemirror/toolbars/commands/markdown.command.js +283 -0
- package/dist/esm/extensions/codemirror/toolbars/commands/markdown.command.js.map +1 -0
- package/dist/esm/extensions/codemirror/toolbars/markdown.toolbar.js +41 -0
- package/dist/esm/extensions/codemirror/toolbars/markdown.toolbar.js.map +1 -0
- package/dist/types/cmem/ActivityControl/ActivityControlWidget.d.ts +1 -1
- package/dist/types/components/Icon/canonicalIconNames.d.ts +10 -0
- package/dist/types/components/OverviewItem/OverviewItem.d.ts +13 -1
- package/dist/types/components/OverviewItem/OverviewItemList.d.ts +3 -2
- package/dist/types/components/TextField/SearchField.d.ts +1 -1
- package/dist/types/components/Typography/OverflowText.d.ts +23 -2
- package/dist/types/extensions/codemirror/CodeMirror.d.ts +10 -1
- package/dist/types/extensions/codemirror/toolbars/commands/markdown.command.d.ts +55 -0
- package/dist/types/extensions/codemirror/toolbars/markdown.toolbar.d.ts +12 -0
- package/package.json +21 -19
- package/src/cmem/ActivityControl/ActivityControlWidget.tsx +5 -2
- package/src/components/AutoSuggestion/AutoSuggestion.tsx +9 -0
- package/src/components/CodeAutocompleteField/CodeAutocompleteField.stories.tsx +3 -2
- package/src/components/ContextOverlay/ContextOverlay.stories.tsx +15 -4
- package/src/components/Depiction/depiction.scss +7 -0
- package/src/components/Dialog/stories/AlertDialog.stories.tsx +5 -1
- package/src/components/Dialog/stories/Modal.stories.tsx +4 -2
- package/src/components/Dialog/stories/SimpleDialog.stories.tsx +5 -2
- package/src/components/Icon/canonicalIconNames.tsx +10 -0
- package/src/components/OverviewItem/OverviewItem.tsx +24 -1
- package/src/components/OverviewItem/OverviewItemList.tsx +3 -2
- package/src/components/OverviewItem/stories/OverviewItem.stories.tsx +6 -12
- package/src/components/Select/Select.stories.tsx +4 -1
- package/src/components/TextField/SearchField.tsx +37 -9
- package/src/components/TextField/stories/SearchField.stories.tsx +15 -1
- package/src/components/TextField/textfield.scss +17 -3
- package/src/components/Typography/OverflowText.tsx +24 -3
- package/src/components/Typography/stories/OverflowText.stories.tsx +33 -0
- package/src/extensions/codemirror/CodeMirror.stories.tsx +5 -17
- package/src/extensions/codemirror/CodeMirror.tsx +67 -8
- package/src/extensions/codemirror/_codemirror.scss +35 -2
- package/src/extensions/codemirror/toolbars/commands/markdown.command.ts +340 -0
- package/src/extensions/codemirror/toolbars/markdown.toolbar.tsx +117 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverviewItemList.js","sourceRoot":"","sources":["../../../../src/components/OverviewItem/OverviewItemList.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"OverviewItemList.js","sourceRoot":"","sources":["../../../../src/components/OverviewItem/OverviewItemList.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAuBtE;;;GAGG;AACH,MAAM,CAAC,IAAM,gBAAgB,GAAG,UAAC,EAQT;IAPpB,IAAA,QAAQ,cAAA,EACR,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,mBAAmB,EAAnB,WAAW,mBAAG,KAAK,KAAA,EACnB,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,eAAW,EAAX,OAAO,mBAAG,CAAC,KAAA,EACR,SAAS,cAPiB,+EAQhC,CADe;IAEZ,OAAO,CACH,uCACQ,SAAS,IACb,SAAS,EACL,UAAG,MAAM,yBAAsB;YAC/B,CAAC,WAAW,CAAC,CAAC,CAAC,UAAG,MAAM,sCAAmC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,CAAC,UAAU,CAAC,CAAC,CAAC,UAAG,MAAM,qCAAkC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,CAAC,UAAU,CAAC,CAAC,CAAC,UAAG,MAAM,qCAAkC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,UAAG,MAAM,qCAAkC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,6BAA6B;YAChG,SAAS,KAGZ,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAC,KAAK;QAChC,OAAO,gCAAK,KAAK,CAAM,CAAC;IAC5B,CAAC,CAAC,CACD,CACR,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -20,6 +20,22 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
20
20
|
}
|
|
21
21
|
return t;
|
|
22
22
|
};
|
|
23
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
24
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
25
|
+
if (!m) return o;
|
|
26
|
+
var i = m.call(o), r, ar = [], e;
|
|
27
|
+
try {
|
|
28
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
29
|
+
}
|
|
30
|
+
catch (error) { e = { error: error }; }
|
|
31
|
+
finally {
|
|
32
|
+
try {
|
|
33
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
34
|
+
}
|
|
35
|
+
finally { if (e) throw e.error; }
|
|
36
|
+
}
|
|
37
|
+
return ar;
|
|
38
|
+
};
|
|
23
39
|
import React from "react";
|
|
24
40
|
import { CLASSPREFIX as eccgui } from "../../configuration/constants.js";
|
|
25
41
|
import Icon from "../Icon/Icon.js";
|
|
@@ -29,10 +45,27 @@ import TextField from "./TextField.js";
|
|
|
29
45
|
* Special `TextField` element for search term inputs.
|
|
30
46
|
*/
|
|
31
47
|
export var SearchField = function (_a) {
|
|
32
|
-
var _b = _a.className, className = _b === void 0 ? "" : _b, _c = _a.emptySearchInputMessage, emptySearchInputMessage = _c === void 0 ? "Enter search term" : _c, onClearanceHandler = _a.onClearanceHandler, _d = _a.onClearanceText, onClearanceText = _d === void 0 ? "Clear
|
|
48
|
+
var _b = _a.className, className = _b === void 0 ? "" : _b, _c = _a.emptySearchInputMessage, emptySearchInputMessage = _c === void 0 ? "Enter search term" : _c, onClearanceHandler = _a.onClearanceHandler, _d = _a.onClearanceText, onClearanceText = _d === void 0 ? "Clear current search term" : _d, onChange = _a.onChange, _e = _a.leftIcon, leftIcon = _e === void 0 ? React.createElement(Icon, { name: "operation-search" }) : _e, rightElement = _a.rightElement, otherProps = __rest(_a, ["className", "emptySearchInputMessage", "onClearanceHandler", "onClearanceText", "onChange", "leftIcon", "rightElement"]);
|
|
49
|
+
var _f = __read(React.useState(""), 2), value = _f[0], setValue = _f[1];
|
|
50
|
+
var clearanceButton = onClearanceHandler && value ? (React.createElement(IconButton, { "data-test-id": otherProps["data-test-id"] && "".concat(otherProps["data-test-id"], "-clear-btn"), name: "operation-clear", text: onClearanceText, onClick: function () {
|
|
51
|
+
setValue("");
|
|
52
|
+
onClearanceHandler();
|
|
53
|
+
} })) : undefined;
|
|
54
|
+
var changeHandlerProcess = function (e) {
|
|
55
|
+
setValue(e.target.value);
|
|
56
|
+
if (onChange) {
|
|
57
|
+
onChange(e);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
React.useEffect(function () {
|
|
61
|
+
var _a, _b;
|
|
62
|
+
setValue((_b = (_a = otherProps.value) !== null && _a !== void 0 ? _a : otherProps.defaultValue) !== null && _b !== void 0 ? _b : "");
|
|
63
|
+
}, [otherProps.value, otherProps.defaultValue]);
|
|
33
64
|
return (React.createElement(TextField, __assign({ className: "".concat(eccgui, "-textfield--searchinput") +
|
|
34
65
|
(onClearanceHandler ? " ".concat(eccgui, "-textfield--justifyclearance") : "") +
|
|
35
|
-
(className ? " ".concat(className) : ""), dir: "auto", placeholder: emptySearchInputMessage, "aria-label": emptySearchInputMessage, rightElement:
|
|
66
|
+
(className ? " ".concat(className) : ""), dir: "auto", placeholder: emptySearchInputMessage, "aria-label": emptySearchInputMessage, rightElement: (clearanceButton || rightElement) && (React.createElement(React.Fragment, null,
|
|
67
|
+
rightElement,
|
|
68
|
+
clearanceButton)), onChange: changeHandlerProcess }, otherProps, { value: value, type: "search", leftIcon: leftIcon, round: true })));
|
|
36
69
|
};
|
|
37
70
|
export default SearchField;
|
|
38
71
|
//# sourceMappingURL=SearchField.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchField.js","sourceRoot":"","sources":["../../../../src/components/TextField/SearchField.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SearchField.js","sourceRoot":"","sources":["../../../../src/components/TextField/SearchField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,IAAI,MAAM,cAAc,CAAC;AAChC,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAE5C,OAAO,SAA6B,MAAM,aAAa,CAAC;AAuBxD;;GAEG;AACH,MAAM,CAAC,IAAM,WAAW,GAAG,UAAC,EAST;IARf,IAAA,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,+BAA6C,EAA7C,uBAAuB,mBAAG,mBAAmB,KAAA,EAC7C,kBAAkB,wBAAA,EAClB,uBAA6C,EAA7C,eAAe,mBAAG,2BAA2B,KAAA,EAC7C,QAAQ,cAAA,EACR,gBAA2C,EAA3C,QAAQ,mBAAG,oBAAC,IAAI,IAAC,IAAI,EAAC,kBAAkB,GAAG,KAAA,EAC3C,YAAY,kBAAA,EACT,UAAU,cARW,yHAS3B,CADgB;IAEP,IAAA,KAAA,OAAoB,KAAK,CAAC,QAAQ,CAAS,EAAE,CAAC,IAAA,EAA7C,KAAK,QAAA,EAAE,QAAQ,QAA8B,CAAC;IAErD,IAAM,eAAe,GACjB,kBAAkB,IAAI,KAAK,CAAC,CAAC,CAAC,CAC1B,oBAAC,UAAU,oBACO,UAAU,CAAC,cAAc,CAAC,IAAI,UAAG,UAAU,CAAC,cAAc,CAAC,eAAY,EACrF,IAAI,EAAC,iBAAiB,EACtB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE;YACL,QAAQ,CAAC,EAAE,CAAC,CAAC;YACb,kBAAkB,EAAE,CAAC;QACzB,CAAC,GACH,CACL,CAAC,CAAC,CAAC,SAAS,CAAC;IAElB,IAAM,oBAAoB,GAAG,UAAC,CAAsC;QAChE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACL,CAAC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC;;QACZ,QAAQ,CAAC,MAAA,MAAA,UAAU,CAAC,KAAK,mCAAI,UAAU,CAAC,YAAY,mCAAI,EAAE,CAAC,CAAC;IAChE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IAEhD,OAAO,CACH,oBAAC,SAAS,aACN,SAAS,EACL,UAAG,MAAM,4BAAyB;YAClC,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAI,MAAM,iCAA8B,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,CAAC,SAAS,CAAC,CAAC,CAAC,WAAI,SAAS,CAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAEtC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,uBAAuB,gBACxB,uBAAuB,EACnC,YAAY,EACR,CAAC,eAAe,IAAI,YAAY,CAAC,IAAI,CACjC;YACK,YAAY;YACZ,eAAe,CACjB,CACN,EAEL,QAAQ,EAAE,oBAAoB,IAC1B,UAAU,IACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,IAAI,IACb,CACL,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -24,7 +24,7 @@ import React from "react";
|
|
|
24
24
|
import { CLASSPREFIX as eccgui } from "../../configuration/constants.js";
|
|
25
25
|
/** Prevents text from overflowing. */
|
|
26
26
|
export var OverflowText = function (_a) {
|
|
27
|
-
var _b = _a.className, className = _b === void 0 ? "" : _b, children = _a.children,
|
|
27
|
+
var _b = _a.className, className = _b === void 0 ? "" : _b, children = _a.children, _c = _a.ellipsis, ellipsis = _c === void 0 ? "add" : _c, _d = _a.inline, inline = _d === void 0 ? false : _d, _e = _a.passDown, passDown = _e === void 0 ? false : _e, useHtmlElement = _a.useHtmlElement, otherProps = __rest(_a, ["className", "children", "ellipsis", "inline", "passDown", "useHtmlElement"]);
|
|
28
28
|
var defaultHtmlElement = inline ? "span" : "div";
|
|
29
29
|
var overflowtextElement = useHtmlElement
|
|
30
30
|
? React.createElement(useHtmlElement)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverflowText.js","sourceRoot":"","sources":["../../../../src/components/Typography/OverflowText.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"OverflowText.js","sourceRoot":"","sources":["../../../../src/components/Typography/OverflowText.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAgCtE,sCAAsC;AACtC,MAAM,CAAC,IAAM,YAAY,GAAG,UAAC,EAQT;IAPhB,IAAA,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,QAAQ,cAAA,EACR,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,cAAc,EAAd,MAAM,mBAAG,KAAK,KAAA,EACd,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,cAAc,oBAAA,EACX,UAAU,cAPY,6EAQ5B,CADgB;IAEb,IAAM,kBAAkB,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IACnD,IAAM,mBAAmB,GAAG,cAAc;QACtC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC;QACrC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAE9C,OAAO,CACH,oBAAC,mBAAmB,CAAC,IAAI,eACjB,UAAU,IACd,SAAS,EACL,UAAG,MAAM,8BAA2B;YACpC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,CAAC,QAAQ,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,MAAM,CAAC;gBACxD,CAAC,CAAC,WAAI,MAAM,yCAAsC,GAAG,QAAQ;gBAC7D,CAAC,CAAC,EAAE,CAAC;YACT,CAAC,MAAM,CAAC,CAAC,CAAC,WAAI,MAAM,sCAAmC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAI,MAAM,wCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,KAGpE,QAAQ,CACc,CAC9B,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -52,13 +52,15 @@ import { EditorState } from "@codemirror/state";
|
|
|
52
52
|
import { EditorView, keymap } from "@codemirror/view";
|
|
53
53
|
import { minimalSetup } from "codemirror";
|
|
54
54
|
import { markField } from "../../components/AutoSuggestion/extensions/markText.js";
|
|
55
|
+
import { MarkdownToolbar } from "./toolbars/markdown.toolbar.js";
|
|
56
|
+
import { Markdown } from "../../cmem/markdown/Markdown.js";
|
|
55
57
|
import { CLASSPREFIX as eccgui } from "../../configuration/constants.js";
|
|
56
58
|
//hooks
|
|
57
59
|
import { supportedCodeEditorModes, useCodeMirrorModeExtension, } from "./hooks/useCodemirrorModeExtension.hooks.js";
|
|
58
60
|
import { jsLinter } from "./linters/jsLinter.js";
|
|
59
61
|
import { turtleLinter } from "./linters/turtleLinter.js";
|
|
60
62
|
//adaptations
|
|
61
|
-
import { adaptedCodeFolding, AdaptedEditorView, AdaptedEditorViewDomEventHandlers, adaptedFoldGutter, adaptedHighlightActiveLine, adaptedHighlightSpecialChars, adaptedLineNumbers,
|
|
63
|
+
import { adaptedCodeFolding, AdaptedEditorView, AdaptedEditorViewDomEventHandlers, adaptedFoldGutter, adaptedHighlightActiveLine, adaptedHighlightSpecialChars, adaptedLineNumbers, adaptedLintGutter, adaptedPlaceholder, } from "./tests/codemirrorTestHelper.js";
|
|
62
64
|
var addExtensionsFor = function (flag) {
|
|
63
65
|
var extensions = [];
|
|
64
66
|
for (var _i = 1; _i < arguments.length; _i++) {
|
|
@@ -81,12 +83,15 @@ var ModeLinterMap = new Map([
|
|
|
81
83
|
["turtle", [turtleLinter]],
|
|
82
84
|
["javascript", [jsLinter]],
|
|
83
85
|
]);
|
|
86
|
+
var ModeToolbarSupport = ["markdown"];
|
|
84
87
|
/**
|
|
85
88
|
* Includes a code editor, currently we use CodeMirror library as base.
|
|
86
89
|
*/
|
|
87
90
|
export var CodeEditor = function (_a) {
|
|
88
|
-
var onChange = _a.onChange, onSelection = _a.onSelection, onMouseDown = _a.onMouseDown, onFocusChange = _a.onFocusChange, onKeyDown = _a.onKeyDown, onCursorChange = _a.onCursorChange, name = _a.name, id = _a.id, mode = _a.mode, _b = _a.preventLineNumbers, preventLineNumbers = _b === void 0 ? false : _b, _c = _a.defaultValue, defaultValue = _c === void 0 ? "" : _c, _d = _a.readOnly, readOnly = _d === void 0 ? false : _d, _e = _a.shouldHaveMinimalSetup, shouldHaveMinimalSetup = _e === void 0 ? true : _e, _f = _a.wrapLines, wrapLines = _f === void 0 ? false : _f, onScroll = _a.onScroll, setEditorView = _a.setEditorView, _g = _a.supportCodeFolding, supportCodeFolding = _g === void 0 ? false : _g, _h = _a.shouldHighlightActiveLine, shouldHighlightActiveLine = _h === void 0 ? false : _h, outerDivAttributes = _a.outerDivAttributes, _j = _a.tabIntentSize, tabIntentSize = _j === void 0 ? 2 : _j, _k = _a.tabIntentStyle, tabIntentStyle = _k === void 0 ? "tab" : _k, placeholder = _a.placeholder, _l = _a.additionalExtensions, additionalExtensions = _l === void 0 ? [] : _l, _m = _a.tabForceSpaceForModes, tabForceSpaceForModes = _m === void 0 ? ["python", "yaml"] : _m, _o = _a.enableTab, enableTab = _o === void 0 ? false : _o, height = _a.height, _p = _a.useLinting, useLinting = _p === void 0 ? false : _p, dataTestId = _a["data-test-id"], _q = _a.autoFocus, autoFocus = _q === void 0 ? false : _q, _r = _a.disabled, disabled = _r === void 0 ? false : _r, intent = _a.intent, otherCodeEditorProps = __rest(_a, ["onChange", "onSelection", "onMouseDown", "onFocusChange", "onKeyDown", "onCursorChange", "name", "id", "mode", "preventLineNumbers", "defaultValue", "readOnly", "shouldHaveMinimalSetup", "wrapLines", "onScroll", "setEditorView", "supportCodeFolding", "shouldHighlightActiveLine", "outerDivAttributes", "tabIntentSize", "tabIntentStyle", "placeholder", "additionalExtensions", "tabForceSpaceForModes", "enableTab", "height", "useLinting", "data-test-id", "autoFocus", "disabled", "intent"]);
|
|
91
|
+
var onChange = _a.onChange, onSelection = _a.onSelection, onMouseDown = _a.onMouseDown, onFocusChange = _a.onFocusChange, onKeyDown = _a.onKeyDown, onCursorChange = _a.onCursorChange, name = _a.name, id = _a.id, mode = _a.mode, _b = _a.preventLineNumbers, preventLineNumbers = _b === void 0 ? false : _b, _c = _a.defaultValue, defaultValue = _c === void 0 ? "" : _c, _d = _a.readOnly, readOnly = _d === void 0 ? false : _d, _e = _a.shouldHaveMinimalSetup, shouldHaveMinimalSetup = _e === void 0 ? true : _e, _f = _a.wrapLines, wrapLines = _f === void 0 ? false : _f, onScroll = _a.onScroll, setEditorView = _a.setEditorView, _g = _a.supportCodeFolding, supportCodeFolding = _g === void 0 ? false : _g, _h = _a.shouldHighlightActiveLine, shouldHighlightActiveLine = _h === void 0 ? false : _h, outerDivAttributes = _a.outerDivAttributes, _j = _a.tabIntentSize, tabIntentSize = _j === void 0 ? 2 : _j, _k = _a.tabIntentStyle, tabIntentStyle = _k === void 0 ? "tab" : _k, placeholder = _a.placeholder, _l = _a.additionalExtensions, additionalExtensions = _l === void 0 ? [] : _l, _m = _a.tabForceSpaceForModes, tabForceSpaceForModes = _m === void 0 ? ["python", "yaml"] : _m, _o = _a.enableTab, enableTab = _o === void 0 ? false : _o, height = _a.height, _p = _a.useLinting, useLinting = _p === void 0 ? false : _p, dataTestId = _a["data-test-id"], _q = _a.autoFocus, autoFocus = _q === void 0 ? false : _q, _r = _a.disabled, disabled = _r === void 0 ? false : _r, intent = _a.intent, useToolbar = _a.useToolbar, translate = _a.translate, otherCodeEditorProps = __rest(_a, ["onChange", "onSelection", "onMouseDown", "onFocusChange", "onKeyDown", "onCursorChange", "name", "id", "mode", "preventLineNumbers", "defaultValue", "readOnly", "shouldHaveMinimalSetup", "wrapLines", "onScroll", "setEditorView", "supportCodeFolding", "shouldHighlightActiveLine", "outerDivAttributes", "tabIntentSize", "tabIntentStyle", "placeholder", "additionalExtensions", "tabForceSpaceForModes", "enableTab", "height", "useLinting", "data-test-id", "autoFocus", "disabled", "intent", "useToolbar", "translate"]);
|
|
89
92
|
var parent = useRef(undefined);
|
|
93
|
+
var _s = __read(React.useState(), 2), view = _s[0], setView = _s[1];
|
|
94
|
+
var _t = __read(React.useState(false), 2), showPreview = _t[0], setShowPreview = _t[1];
|
|
90
95
|
var linters = useMemo(function () {
|
|
91
96
|
if (!mode) {
|
|
92
97
|
return [];
|
|
@@ -116,6 +121,12 @@ export var CodeEditor = function (_a) {
|
|
|
116
121
|
}
|
|
117
122
|
}
|
|
118
123
|
};
|
|
124
|
+
var getTranslation = function (key) {
|
|
125
|
+
if (translate && typeof translate === "function") {
|
|
126
|
+
return translate(key);
|
|
127
|
+
}
|
|
128
|
+
return false;
|
|
129
|
+
};
|
|
119
130
|
React.useEffect(function () {
|
|
120
131
|
var tabIndent = !!(tabIntentStyle === "tab" && mode && !(tabForceSpaceForModes !== null && tabForceSpaceForModes !== void 0 ? tabForceSpaceForModes : []).includes(mode)) || enableTab;
|
|
121
132
|
var keyMapConfigs = __spreadArray(__spreadArray([
|
|
@@ -133,10 +144,11 @@ export var CodeEditor = function (_a) {
|
|
|
133
144
|
EditorView === null || EditorView === void 0 ? void 0 : EditorView.editable.of(!disabled),
|
|
134
145
|
AdaptedEditorViewDomEventHandlers(domEventHandlers),
|
|
135
146
|
EditorView === null || EditorView === void 0 ? void 0 : EditorView.updateListener.of(function (v) {
|
|
136
|
-
var _a;
|
|
147
|
+
var _a, _b;
|
|
137
148
|
if (disabled)
|
|
138
149
|
return;
|
|
139
|
-
if (onChange) {
|
|
150
|
+
if (onChange && v.docChanged) {
|
|
151
|
+
// Only fire if the text has actually been changed
|
|
140
152
|
onChange(v.state.doc.toString());
|
|
141
153
|
}
|
|
142
154
|
if (onSelection)
|
|
@@ -144,11 +156,11 @@ export var CodeEditor = function (_a) {
|
|
|
144
156
|
var from = _a.from, to = _a.to;
|
|
145
157
|
return ({ from: from, to: to });
|
|
146
158
|
}));
|
|
147
|
-
if (onFocusChange) {
|
|
148
|
-
v.view.dom.
|
|
159
|
+
if (onFocusChange && intent && !((_a = v.view.dom.classList) === null || _a === void 0 ? void 0 : _a.contains("".concat(eccgui, "-intent--").concat(intent)))) {
|
|
160
|
+
v.view.dom.classList.add("".concat(eccgui, "-intent--").concat(intent));
|
|
149
161
|
}
|
|
150
162
|
if (onCursorChange) {
|
|
151
|
-
var cursorPosition = (
|
|
163
|
+
var cursorPosition = (_b = v.state.selection.main.head) !== null && _b !== void 0 ? _b : 0;
|
|
152
164
|
var editorRect = v.view.dom.getBoundingClientRect();
|
|
153
165
|
var coords = v.view.coordsAtPos(cursorPosition), scrollInfo = v.view.scrollDOM;
|
|
154
166
|
if (coords && scrollInfo && editorRect) {
|
|
@@ -174,6 +186,7 @@ export var CodeEditor = function (_a) {
|
|
|
174
186
|
}),
|
|
175
187
|
parent: parent.current,
|
|
176
188
|
});
|
|
189
|
+
setView(view);
|
|
177
190
|
if (view === null || view === void 0 ? void 0 : view.dom) {
|
|
178
191
|
if (height) {
|
|
179
192
|
view.dom.style.height = typeof height === "string" ? height : "".concat(height, "px");
|
|
@@ -195,13 +208,29 @@ export var CodeEditor = function (_a) {
|
|
|
195
208
|
view.destroy();
|
|
196
209
|
if (setEditorView) {
|
|
197
210
|
setEditorView(undefined);
|
|
211
|
+
setView(undefined);
|
|
198
212
|
}
|
|
199
213
|
};
|
|
200
|
-
}, [parent.current, mode, preventLineNumbers]);
|
|
214
|
+
}, [parent.current, mode, preventLineNumbers, wrapLines]);
|
|
215
|
+
var hasToolbarSupport = mode && ModeToolbarSupport.indexOf(mode) > -1 && useToolbar;
|
|
216
|
+
var editorToolbar = function (mode) {
|
|
217
|
+
var _a;
|
|
218
|
+
switch (mode) {
|
|
219
|
+
case "markdown":
|
|
220
|
+
return (React.createElement("div", null,
|
|
221
|
+
React.createElement("div", { className: "".concat(eccgui, "-codeeditor__toolbar") },
|
|
222
|
+
React.createElement(MarkdownToolbar, { view: view, togglePreviewStatus: function () { return setShowPreview(function (p) { return !p; }); }, showPreview: showPreview, translate: getTranslation, disabled: disabled, readonly: readOnly })),
|
|
223
|
+
showPreview && (React.createElement("div", { className: "".concat(eccgui, "-codeeditor__preview") },
|
|
224
|
+
React.createElement(Markdown, null, (_a = view === null || view === void 0 ? void 0 : view.state.doc.toString()) !== null && _a !== void 0 ? _a : "")))));
|
|
225
|
+
default:
|
|
226
|
+
return React.createElement(React.Fragment, null);
|
|
227
|
+
}
|
|
228
|
+
};
|
|
201
229
|
return (React.createElement("div", __assign({}, outerDivAttributes, {
|
|
202
230
|
// overwrite/extend some attributes
|
|
203
231
|
id: id ? id : name ? "codemirror-".concat(name) : undefined, ref: parent, "data-test-id": dataTestId ? dataTestId : "codemirror-wrapper", className: "".concat(eccgui, "-codeeditor ").concat(eccgui, "-codeeditor--mode-").concat(mode) +
|
|
204
|
-
((outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className) ? " ".concat(outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className) : "")
|
|
232
|
+
((outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className) ? " ".concat(outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className) : "") +
|
|
233
|
+
(hasToolbarSupport ? " ".concat(eccgui, "-codeeditor--has-toolbar") : "") }, otherCodeEditorProps), hasToolbarSupport && editorToolbar(mode)));
|
|
205
234
|
};
|
|
206
235
|
CodeEditor.supportedModes = supportedCodeEditorModes;
|
|
207
236
|
//# sourceMappingURL=CodeMirror.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeMirror.js","sourceRoot":"","sources":["../../../../src/extensions/codemirror/CodeMirror.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAa,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAoB,UAAU,EAAc,MAAM,EAAoB,MAAM,kBAAkB,CAAC;AACtG,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,qDAAqD,CAAC;AAEhF,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO;AACP,OAAO,EAEH,wBAAwB,EACxB,0BAA0B,GAC7B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,aAAa;AACb,OAAO,EACH,kBAAkB,EAClB,iBAAiB,EACjB,iCAAiC,EACjC,iBAAiB,EACjB,0BAA0B,EAC1B,4BAA4B,EAC5B,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"CodeMirror.js","sourceRoot":"","sources":["../../../../src/extensions/codemirror/CodeMirror.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAa,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAoB,UAAU,EAAc,MAAM,EAAoB,MAAM,kBAAkB,CAAC;AACtG,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,qDAAqD,CAAC;AAEhF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO;AACP,OAAO,EAEH,wBAAwB,EACxB,0BAA0B,GAC7B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,aAAa;AACb,OAAO,EACH,kBAAkB,EAClB,iBAAiB,EACjB,iCAAiC,EACjC,iBAAiB,EACjB,0BAA0B,EAC1B,4BAA4B,EAC5B,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACrB,MAAM,8BAA8B,CAAC;AAyItC,IAAM,gBAAgB,GAAG,UAAC,IAAa;IAAE,oBAA0B;SAA1B,UAA0B,EAA1B,qBAA0B,EAA1B,IAA0B;QAA1B,mCAA0B;;IAAK,OAAA,CAAC,IAAI,CAAC,CAAC,0BAAK,UAAU,UAAE,CAAC,CAAC,EAAE,CAAC;AAA7B,CAA6B,CAAC;AACtG,IAAM,oBAAoB,GAAG,UAAC,IAAa;IAAE,cAAY;SAAZ,UAAY,EAAZ,qBAAY,EAAZ,IAAY;QAAZ,6BAAY;;IAAK,OAAA,CAAC,IAAI,CAAC,CAAC,0BAAK,IAAI,UAAE,CAAC,CAAC,EAAE,CAAC;AAAvB,CAAuB,CAAC;AACtF,IAAM,cAAc,GAAG,UAAC,IAAa,EAAE,WAAmB,EAAE,OAAY;;IACpE,OAAA,IAAI,CAAC,CAAC,EAAE,SAAE,GAAC,WAAW,IAAG,OAAO,IAA4B,EAAC,CAAC,CAAC,EAAE;AAAjE,CAAiE,CAAC;AAEtE,IAAM,aAAa,GAA2E,IAAI,GAAG,CAAC;IAClG,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC;IAC1B,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,CAAC;CAC7B,CAAC,CAAC;AAEH,IAAM,kBAAkB,GAA4C,CAAC,UAAU,CAAC,CAAC;AAEjF;;GAEG;AACH,MAAM,CAAC,IAAM,UAAU,GAAG,UAAC,EAmCT;IAlCd,IAAA,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,WAAW,iBAAA,EACX,aAAa,mBAAA,EACb,SAAS,eAAA,EACT,cAAc,oBAAA,EACd,IAAI,UAAA,EACJ,EAAE,QAAA,EACF,IAAI,UAAA,EACJ,0BAA0B,EAA1B,kBAAkB,mBAAG,KAAK,KAAA,EAC1B,oBAAiB,EAAjB,YAAY,mBAAG,EAAE,KAAA,EACjB,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,8BAA6B,EAA7B,sBAAsB,mBAAG,IAAI,KAAA,EAC7B,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,QAAQ,cAAA,EACR,aAAa,mBAAA,EACb,0BAA0B,EAA1B,kBAAkB,mBAAG,KAAK,KAAA,EAC1B,iCAAiC,EAAjC,yBAAyB,mBAAG,KAAK,KAAA,EACjC,kBAAkB,wBAAA,EAClB,qBAAiB,EAAjB,aAAa,mBAAG,CAAC,KAAA,EACjB,sBAAsB,EAAtB,cAAc,mBAAG,KAAK,KAAA,EACtB,WAAW,iBAAA,EACX,4BAAyB,EAAzB,oBAAoB,mBAAG,EAAE,KAAA,EACzB,6BAA0C,EAA1C,qBAAqB,mBAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAA,EAC1C,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,MAAM,YAAA,EACN,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EACF,UAAU,qBAAA,EAC1B,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,MAAM,YAAA,EACN,UAAU,gBAAA,EACV,SAAS,eAAA,EACN,oBAAoB,cAlCA,qgBAmC1B,CAD0B;IAEvB,IAAM,MAAM,GAAG,MAAM,CAAM,SAAS,CAAC,CAAC;IAChC,IAAA,KAAA,OAAkB,KAAK,CAAC,QAAQ,EAA0B,IAAA,EAAzD,IAAI,QAAA,EAAE,OAAO,QAA4C,CAAC;IAC3D,IAAA,KAAA,OAAgC,KAAK,CAAC,QAAQ,CAAU,KAAK,CAAC,IAAA,EAA7D,WAAW,QAAA,EAAE,cAAc,QAAkC,CAAC;IAErE,IAAM,OAAO,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,EAAE,CAAC;QACd,CAAC;QAED,IAAM,MAAM,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAErC,IAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,OAAX,MAAM,2BAAS,OAAO,CAAC,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,EAAE,EAAR,CAAQ,CAAC,WAAE;QACtD,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,IAAM,gBAAgB,GAAG,UAAC,KAAoB,EAAE,IAAgB;QAC5D,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;gBACxB,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9C,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;gBACxD,IAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;gBAC/D,IAAI,CAAC,QAAQ,CAAC;oBACV,OAAO,EAAE;wBACL,IAAI,EAAE,mBAAmB;wBACzB,MAAM,EAAE,IAAI;qBACf;oBACD,SAAS,EAAE;wBACP,MAAM,EAAE,mBAAmB,GAAG,CAAC;qBAClC;iBACJ,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC,CAAC;IAEF,IAAM,cAAc,GAAG,UAAC,GAAW;QAC/B,IAAI,SAAS,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;YAC/C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC;QACZ,IAAM,SAAS,GACX,CAAC,CAAC,CAAC,cAAc,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,qBAAqB,aAArB,qBAAqB,cAArB,qBAAqB,GAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,SAAS,CAAC;QACvG,IAAM,aAAa;YACf,aAA2B;kBACxB,oBAAoB,CAAC,kBAAkB,EAAE,UAAU,CAAC,kBACpD,oBAAoB,CAAC,SAAS,EAAE,aAAa,CAAC,SACpD,CAAC;QACF,IAAM,gBAAgB,GAAG,iDAClB,cAAc,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAC9C,cAAc,CACb,CAAC,CAAC,WAAW,EACb,WAAW,EACX,UAAC,CAAM,EAAE,IAAgB,IAAK,OAAA,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,EAAhC,CAAgC,CACjE,GACE,cAAc,CAAC,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,cAAM,OAAA,aAAa,IAAI,aAAa,CAAC,KAAK,CAAC,EAArC,CAAqC,CAAC,GACpF,cAAc,CAAC,CAAC,CAAC,aAAa,EAAE,OAAO,EAAE,cAAM,OAAA,aAAa,IAAI,aAAa,CAAC,IAAI,CAAC,EAApC,CAAoC,CAAC,GACpF,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,CACrC,CAAC;QAC3B,IAAM,UAAU,GAAG;YACf,SAAS;YACT,kBAAkB,CAAC,WAAW,CAAC;YAC/B,4BAA4B,EAAE;YAC9B,0BAA0B,CAAC,IAAI,CAAC;YAChC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,CAAC,aAAa,CAAC;YACzB,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC;YACtC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC;YAClC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;YAClC,iCAAiC,CAAC,gBAAgB,CAAc;YAChE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,cAAc,CAAC,EAAE,CAAC,UAAC,CAAa;;gBACxC,IAAI,QAAQ;oBAAE,OAAO;gBAErB,IAAI,QAAQ,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;oBAC3B,kDAAkD;oBAClD,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACrC,CAAC;gBAED,IAAI,WAAW;oBACX,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,KAAK,EAAR,CAAQ,CAAC,CAAC,GAAG,CAAC,UAAC,EAAY;4BAAV,IAAI,UAAA,EAAE,EAAE,QAAA;wBAAO,OAAA,CAAC,EAAE,IAAI,MAAA,EAAE,EAAE,IAAA,EAAE,CAAC;oBAAd,CAAc,CAAC,CAAC,CAAC;gBAExG,IAAI,aAAa,IAAI,MAAM,IAAI,CAAC,CAAA,MAAA,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,0CAAE,QAAQ,CAAC,UAAG,MAAM,sBAAY,MAAM,CAAE,CAAC,CAAA,EAAE,CAAC;oBAC5F,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,UAAG,MAAM,sBAAY,MAAM,CAAE,CAAC,CAAC;gBAC5D,CAAC;gBAED,IAAI,cAAc,EAAE,CAAC;oBACjB,IAAM,cAAc,GAAG,MAAA,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,mCAAI,CAAC,CAAC;oBACxD,IAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;oBACtD,IAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAC7C,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;oBAClC,IAAI,MAAM,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;wBACrC,qEAAqE;wBACrE,IAAM,YAAY,GAAG,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;wBACnD,IAAM,cAAc,GAAG,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;wBAEzD,cAAc,CACV,cAAc,wBACT,MAAM,KAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,KACvD,UAAU,EACV,CAAC,CAAC,IAAI,CACT,CAAC;oBACN,CAAC;gBACL,CAAC;YACL,CAAC,CAAC;YACF,gBAAgB,CAAC,sBAAsB,EAAE,YAAY,CAAC;YACtD,gBAAgB,CAAC,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;YAC3D,gBAAgB,CAAC,yBAAyB,EAAE,0BAA0B,EAAE,CAAC;YACzE,gBAAgB,CAAC,SAAS,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,YAAY,CAAC;YACrD,gBAAgB,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,EAAE,kBAAkB,EAAE,CAAC;YAC/E,gBAAgB,8BAAC,UAAU,UAAK,OAAO;YACvC,oBAAoB;SACvB,CAAC;QAEF,IAAM,IAAI,GAAe,IAAI,iBAAiB,CAAC;YAC3C,KAAK,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,CAAC;gBACvB,GAAG,EAAE,YAAY;gBACjB,UAAU,YAAA;aACb,CAAC;YACF,MAAM,EAAE,MAAM,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC;QAEd,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,EAAE,CAAC;YACZ,IAAI,MAAM,EAAE,CAAC;gBACT,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAG,MAAM,OAAI,CAAC;YAChF,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACX,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,WAAI,MAAM,cAAW,CAAC;YAChD,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACT,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,WAAI,MAAM,sBAAY,MAAM,CAAE,CAAC;YACzD,CAAC;YAED,IAAI,SAAS,EAAE,CAAC;gBACZ,IAAI,CAAC,KAAK,EAAE,CAAC;YACjB,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;QAED,OAAO;YACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,SAAS,CAAC,CAAC;gBACzB,OAAO,CAAC,SAAS,CAAC,CAAC;YACvB,CAAC;QACL,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC,CAAC;IAE1D,IAAM,iBAAiB,GAAG,IAAI,IAAI,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,UAAU,CAAC;IAEtF,IAAM,aAAa,GAAG,UAAC,IAA+B;;QAClD,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,UAAU;gBACX,OAAO,CACH;oBACI,6BAAK,SAAS,EAAE,UAAG,MAAM,yBAAsB;wBAC3C,oBAAC,eAAe,IACZ,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,cAAM,OAAA,cAAc,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAF,CAAE,CAAC,EAAzB,CAAyB,EACpD,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,cAAc,EACzB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GACpB,CACA;oBACL,WAAW,IAAI,CACZ,6BAAK,SAAS,EAAE,UAAG,MAAM,yBAAsB;wBAC3C,oBAAC,QAAQ,QAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,mCAAI,EAAE,CAAY,CACrD,CACT,CACC,CACT,CAAC;YACN;gBACI,OAAO,yCAAK,CAAC;QACrB,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACH,wCACQ,kBAAkB;QACtB,mCAAmC;QACnC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAc,IAAI,CAAE,CAAC,CAAC,CAAC,SAAS,EACrD,GAAG,EAAE,MAAM,kBAEG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,oBAAoB,EAC5D,SAAS,EACL,UAAG,MAAM,yBAAe,MAAM,+BAAqB,IAAI,CAAE;YACzD,CAAC,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,SAAS,EAAC,CAAC,CAAC,WAAI,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,SAAS,CAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,CAAC,iBAAiB,CAAC,CAAC,CAAC,WAAI,MAAM,6BAA0B,CAAC,CAAC,CAAC,EAAE,CAAC,IAE/D,oBAAoB,GAEvB,iBAAiB,IAAI,aAAa,CAAC,IAAI,CAAC,CACvC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,UAAU,CAAC,cAAc,GAAG,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import { EditorSelection } from "@codemirror/state";
|
|
2
|
+
var Commands;
|
|
3
|
+
(function (Commands) {
|
|
4
|
+
Commands["header1"] = "Heading 1";
|
|
5
|
+
Commands["header2"] = "Heading 2";
|
|
6
|
+
Commands["header3"] = "Heading 3";
|
|
7
|
+
Commands["header4"] = "Heading 4";
|
|
8
|
+
Commands["header5"] = "Heading 5";
|
|
9
|
+
Commands["header6"] = "Heading 6";
|
|
10
|
+
Commands["codeBlock"] = "Code block";
|
|
11
|
+
Commands["quote"] = "Block quote";
|
|
12
|
+
Commands["bold"] = "Bold";
|
|
13
|
+
Commands["italic"] = "Italic";
|
|
14
|
+
Commands["strike"] = "StrikeThrough";
|
|
15
|
+
Commands["inlineCode"] = "Inline code";
|
|
16
|
+
Commands["unorderedList"] = "Unordered list";
|
|
17
|
+
Commands["orderedList"] = "Ordered list";
|
|
18
|
+
Commands["todoList"] = "Todo list";
|
|
19
|
+
Commands["link"] = "Link";
|
|
20
|
+
Commands["image"] = "Image";
|
|
21
|
+
})(Commands || (Commands = {}));
|
|
22
|
+
//contains all utilities for markdown toolbar
|
|
23
|
+
var MarkdownCommand = /** @class */ (function () {
|
|
24
|
+
function MarkdownCommand(view) {
|
|
25
|
+
var _this = this;
|
|
26
|
+
this.view = null;
|
|
27
|
+
/**
|
|
28
|
+
* Supported list types are ol, ul, todo.
|
|
29
|
+
* utility helps to determine which at the start of the line
|
|
30
|
+
*/
|
|
31
|
+
this.getListTypeOfLine = function (text) {
|
|
32
|
+
if (!text)
|
|
33
|
+
return;
|
|
34
|
+
text = text === null || text === void 0 ? void 0 : text.trimStart();
|
|
35
|
+
if (text.startsWith("- ")) {
|
|
36
|
+
if (text.startsWith("- [ ] ") || text.startsWith("- [x] "))
|
|
37
|
+
return ["todo"];
|
|
38
|
+
return ["ul"];
|
|
39
|
+
}
|
|
40
|
+
var v = text.match(/^(\d+)\. /);
|
|
41
|
+
return v ? ["ol", Number.parseInt(v[1], 10)] : undefined;
|
|
42
|
+
};
|
|
43
|
+
//factory for different list types.
|
|
44
|
+
this.createList = function (type) {
|
|
45
|
+
if (!_this.view)
|
|
46
|
+
return;
|
|
47
|
+
var view = _this.view;
|
|
48
|
+
var doc = view.state.doc;
|
|
49
|
+
var orderedList = { currentIndex: 1 };
|
|
50
|
+
view.dispatch(view.state.changeByRange(function (range) {
|
|
51
|
+
var text = doc.slice(range.from, range.to);
|
|
52
|
+
var changes = [];
|
|
53
|
+
var selectionStart = range.from;
|
|
54
|
+
var selectionLength = range.to - range.from;
|
|
55
|
+
Array.from({ length: text.lines }).forEach(function (_, index) {
|
|
56
|
+
var line = doc.line(doc.lineAt(range.from).number + index);
|
|
57
|
+
var currentListType = _this.getListTypeOfLine(line.text);
|
|
58
|
+
if (currentListType && currentListType[0] === type) {
|
|
59
|
+
if (currentListType[0] === "ol" && currentListType[1]) {
|
|
60
|
+
orderedList.currentIndex = currentListType[1];
|
|
61
|
+
}
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
var content = _this.createListDelimiter(line.text, type, orderedList);
|
|
65
|
+
var diffLength = content.length - line.length;
|
|
66
|
+
changes.push({
|
|
67
|
+
from: line.from,
|
|
68
|
+
to: line.to,
|
|
69
|
+
insert: content,
|
|
70
|
+
});
|
|
71
|
+
if (index === 0) {
|
|
72
|
+
selectionStart = selectionStart + diffLength;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
selectionLength = selectionLength + diffLength;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
return {
|
|
79
|
+
changes: changes,
|
|
80
|
+
range: EditorSelection.range(selectionStart, selectionStart + selectionLength),
|
|
81
|
+
};
|
|
82
|
+
}));
|
|
83
|
+
view.focus();
|
|
84
|
+
};
|
|
85
|
+
this.enforceCursorFocus = function (cursorPosition) {
|
|
86
|
+
if (!_this.view)
|
|
87
|
+
return;
|
|
88
|
+
var view = _this.view;
|
|
89
|
+
setTimeout(function () {
|
|
90
|
+
view.dispatch({
|
|
91
|
+
selection: EditorSelection.cursor(cursorPosition),
|
|
92
|
+
});
|
|
93
|
+
view.focus();
|
|
94
|
+
}, 50);
|
|
95
|
+
};
|
|
96
|
+
//supported headers from h1-h6, h6 being the smallest
|
|
97
|
+
this.createHeading = function (level) {
|
|
98
|
+
if (!_this.view)
|
|
99
|
+
return;
|
|
100
|
+
var view = _this.view;
|
|
101
|
+
var state = view.state;
|
|
102
|
+
var flags = "#".repeat(level) + " ";
|
|
103
|
+
var lastCursorPosition = 0;
|
|
104
|
+
view.dispatch(state.changeByRange(function (range) {
|
|
105
|
+
var line = state.doc.lineAt(range.from);
|
|
106
|
+
var content = line.text.replace(/^((#+) )?/, flags);
|
|
107
|
+
var diffLength = content.length - line.length;
|
|
108
|
+
lastCursorPosition = line.to + diffLength;
|
|
109
|
+
return {
|
|
110
|
+
changes: {
|
|
111
|
+
from: line.from,
|
|
112
|
+
to: line.to,
|
|
113
|
+
insert: content,
|
|
114
|
+
},
|
|
115
|
+
range: EditorSelection.range(range.anchor + diffLength, range.head + diffLength),
|
|
116
|
+
};
|
|
117
|
+
}));
|
|
118
|
+
_this.enforceCursorFocus(lastCursorPosition);
|
|
119
|
+
};
|
|
120
|
+
this.applyFormatting = function (_a) {
|
|
121
|
+
var start = _a.start, startDelimiter = _a.startDelimiter, _b = _a.endDelimiter, endDelimiter = _b === void 0 ? startDelimiter : _b, _c = _a.stop, stop = _c === void 0 ? start : _c;
|
|
122
|
+
if (!_this.view)
|
|
123
|
+
return;
|
|
124
|
+
var view = _this.view;
|
|
125
|
+
var _d = view.state.selection.main, from = _d.from, to = _d.to;
|
|
126
|
+
var text = view.state.sliceDoc(from, to);
|
|
127
|
+
view.dispatch(view.state.changeByRange(function (range) {
|
|
128
|
+
return {
|
|
129
|
+
changes: [{ from: range.from, to: range.to, insert: "".concat(startDelimiter).concat(text).concat(endDelimiter) }],
|
|
130
|
+
range: EditorSelection.range(range.from + start, range.to + stop),
|
|
131
|
+
};
|
|
132
|
+
}));
|
|
133
|
+
view.focus();
|
|
134
|
+
};
|
|
135
|
+
this.applyAttachment = function (type) {
|
|
136
|
+
if (!_this.view)
|
|
137
|
+
return;
|
|
138
|
+
var view = _this.view;
|
|
139
|
+
var state = view.state;
|
|
140
|
+
var isImageAttachmentType = type === Commands.image;
|
|
141
|
+
var doc = state.doc;
|
|
142
|
+
view.dispatch(state.changeByRange(function (range) {
|
|
143
|
+
var from = range.from, to = range.to;
|
|
144
|
+
var text = doc.sliceString(from, to);
|
|
145
|
+
var link = "".concat(isImageAttachmentType ? "!" : "", "[").concat(text, "]()");
|
|
146
|
+
var cursor = from + (text.length ? 3 + text.length : 1 + Number(isImageAttachmentType));
|
|
147
|
+
return {
|
|
148
|
+
changes: [
|
|
149
|
+
{
|
|
150
|
+
from: from,
|
|
151
|
+
to: to,
|
|
152
|
+
insert: link,
|
|
153
|
+
},
|
|
154
|
+
],
|
|
155
|
+
range: EditorSelection.range(cursor, cursor),
|
|
156
|
+
};
|
|
157
|
+
}));
|
|
158
|
+
view.focus();
|
|
159
|
+
};
|
|
160
|
+
this.applyQuoteFormatting = function () {
|
|
161
|
+
if (!_this.view)
|
|
162
|
+
return;
|
|
163
|
+
var view = _this.view;
|
|
164
|
+
var state = view.state;
|
|
165
|
+
var doc = state.doc;
|
|
166
|
+
var lastCursorPosition = 0;
|
|
167
|
+
view.dispatch(view.state.changeByRange(function (range) {
|
|
168
|
+
var startLine = doc.lineAt(range.from);
|
|
169
|
+
var text = doc.slice(range.from, range.to);
|
|
170
|
+
var lineCount = text.lines;
|
|
171
|
+
var changes = [];
|
|
172
|
+
var selectionStart = range.from;
|
|
173
|
+
var selectionLength = range.to - range.from;
|
|
174
|
+
new Array(lineCount).fill(0).forEach(function (_, index) {
|
|
175
|
+
var line = doc.line(startLine.number + index);
|
|
176
|
+
if (line.text.startsWith("> ")) {
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
changes.push({
|
|
180
|
+
from: line.from,
|
|
181
|
+
insert: "> ",
|
|
182
|
+
});
|
|
183
|
+
if (index === 0) {
|
|
184
|
+
selectionStart = selectionStart + 2;
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
selectionLength += 2;
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
lastCursorPosition = selectionStart + selectionLength;
|
|
191
|
+
return {
|
|
192
|
+
changes: changes,
|
|
193
|
+
range: EditorSelection.range(selectionStart, selectionStart + selectionLength),
|
|
194
|
+
};
|
|
195
|
+
}));
|
|
196
|
+
_this.enforceCursorFocus(lastCursorPosition);
|
|
197
|
+
};
|
|
198
|
+
this.executeCommand = function (command) {
|
|
199
|
+
var _a;
|
|
200
|
+
switch (command) {
|
|
201
|
+
case Commands.bold:
|
|
202
|
+
return _this.applyFormatting({ start: 2, startDelimiter: "**" });
|
|
203
|
+
case Commands.italic:
|
|
204
|
+
return _this.applyFormatting({ start: 1, startDelimiter: "*" });
|
|
205
|
+
case Commands.codeBlock:
|
|
206
|
+
return _this.applyFormatting({ start: 3, startDelimiter: "```\n", endDelimiter: "\n```" });
|
|
207
|
+
case Commands.strike:
|
|
208
|
+
return _this.applyFormatting({ start: 2, startDelimiter: "~~" });
|
|
209
|
+
case Commands.inlineCode:
|
|
210
|
+
return _this.applyFormatting({ start: 1, startDelimiter: "`" });
|
|
211
|
+
case Commands.header1:
|
|
212
|
+
case Commands.header2:
|
|
213
|
+
case Commands.header3:
|
|
214
|
+
case Commands.header4:
|
|
215
|
+
case Commands.header5:
|
|
216
|
+
case Commands.header6:
|
|
217
|
+
return _this.createHeading(Number(command.slice(-1)));
|
|
218
|
+
case Commands.unorderedList:
|
|
219
|
+
case Commands.orderedList:
|
|
220
|
+
case Commands.todoList:
|
|
221
|
+
return _this.createList((_a = MarkdownCommand.commands.lists.find(function (l) { return l.title === command; })) === null || _a === void 0 ? void 0 : _a.moniker);
|
|
222
|
+
case Commands.image:
|
|
223
|
+
case Commands.link:
|
|
224
|
+
return _this.applyAttachment(command);
|
|
225
|
+
case Commands.quote:
|
|
226
|
+
return _this.applyQuoteFormatting();
|
|
227
|
+
default:
|
|
228
|
+
return; //do nothing;
|
|
229
|
+
}
|
|
230
|
+
};
|
|
231
|
+
this.view = view;
|
|
232
|
+
}
|
|
233
|
+
//inserts the list delimiters of "-", "- [ ]" and "{number}."
|
|
234
|
+
MarkdownCommand.prototype.createListDelimiter = function (text, type, orderedList) {
|
|
235
|
+
return text.replace(/^(( *)(-( \[[x ]])?|\d+\.) )?/, function () {
|
|
236
|
+
var args = [];
|
|
237
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
238
|
+
args[_i] = arguments[_i];
|
|
239
|
+
}
|
|
240
|
+
var _a = args[args.length - 1].space, space = _a === void 0 ? "" : _a;
|
|
241
|
+
var newFlag = "- ";
|
|
242
|
+
if (type === "ol") {
|
|
243
|
+
newFlag = "".concat(orderedList.currentIndex, ". ");
|
|
244
|
+
orderedList.currentIndex++;
|
|
245
|
+
}
|
|
246
|
+
else if (type === "todo") {
|
|
247
|
+
newFlag = "- [ ] ";
|
|
248
|
+
}
|
|
249
|
+
return space + newFlag;
|
|
250
|
+
});
|
|
251
|
+
};
|
|
252
|
+
//list of supported commands as well as the valid icon names.
|
|
253
|
+
MarkdownCommand.commands = {
|
|
254
|
+
paragraphs: [
|
|
255
|
+
Commands.header1,
|
|
256
|
+
Commands.header2,
|
|
257
|
+
Commands.header3,
|
|
258
|
+
Commands.header4,
|
|
259
|
+
Commands.header5,
|
|
260
|
+
Commands.header6,
|
|
261
|
+
Commands.quote,
|
|
262
|
+
Commands.codeBlock,
|
|
263
|
+
],
|
|
264
|
+
basic: [
|
|
265
|
+
{ title: Commands.bold, icon: "operation-format-text-bold" },
|
|
266
|
+
{ title: Commands.italic, icon: "operation-format-text-italic" },
|
|
267
|
+
{ title: Commands.strike, icon: "operation-format-text-strikethrough" },
|
|
268
|
+
{ title: Commands.inlineCode, icon: "operation-format-text-code" },
|
|
269
|
+
],
|
|
270
|
+
lists: [
|
|
271
|
+
{ title: Commands.unorderedList, icon: "operation-format-list-bullet", moniker: "ul" },
|
|
272
|
+
{ title: Commands.orderedList, icon: "operation-format-list-numbered", moniker: "ol" },
|
|
273
|
+
{ title: Commands.todoList, icon: "operation-format-list-checked", moniker: "todo" },
|
|
274
|
+
],
|
|
275
|
+
attachments: [
|
|
276
|
+
{ title: Commands.link, icon: "operation-link" },
|
|
277
|
+
{ title: Commands.image, icon: "item-image" },
|
|
278
|
+
],
|
|
279
|
+
};
|
|
280
|
+
return MarkdownCommand;
|
|
281
|
+
}());
|
|
282
|
+
export default MarkdownCommand;
|
|
283
|
+
//# sourceMappingURL=markdown.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.command.js","sourceRoot":"","sources":["../../../../../../src/extensions/codemirror/toolbars/commands/markdown.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Button } from "../../../components/Button/Button.js";
|
|
3
|
+
import { ContextMenu } from "../../../components/ContextOverlay/index.js";
|
|
4
|
+
import { Icon, IconButton } from "../../../components/Icon/index.js";
|
|
5
|
+
import { MenuItem } from "../../../components/Menu/index.js";
|
|
6
|
+
import { Spacing } from "../../../components/Separation/Spacing.js";
|
|
7
|
+
import { Toolbar, ToolbarSection } from "../../../components/Toolbar/index.js";
|
|
8
|
+
import MarkdownCommand from "./commands/markdown.command.js";
|
|
9
|
+
export var MarkdownToolbar = function (_a) {
|
|
10
|
+
var view = _a.view, togglePreviewStatus = _a.togglePreviewStatus, showPreview = _a.showPreview, disabled = _a.disabled, readonly = _a.readonly, translate = _a.translate;
|
|
11
|
+
var commandRef = React.useRef(null);
|
|
12
|
+
React.useEffect(function () {
|
|
13
|
+
if (view) {
|
|
14
|
+
commandRef.current = new MarkdownCommand(view);
|
|
15
|
+
}
|
|
16
|
+
}, [view]);
|
|
17
|
+
var getTranslation = function (fallback) {
|
|
18
|
+
var key = fallback.toLowerCase().replace(" ", "-");
|
|
19
|
+
return translate(key) || fallback;
|
|
20
|
+
};
|
|
21
|
+
var _b = MarkdownCommand.commands, basic = _b.basic, lists = _b.lists, attachments = _b.attachments;
|
|
22
|
+
return (React.createElement(Toolbar, { noWrap: true },
|
|
23
|
+
React.createElement(ToolbarSection, { canShrink: true, hideOverflow: true },
|
|
24
|
+
React.createElement(ContextMenu, { togglerElement: React.createElement(Button, { rightIcon: React.createElement(Icon, { name: "toggler-showmore" }), text: getTranslation("Paragraphs"), minimal: true, fill: true, ellipsizeText: true, disabled: showPreview || disabled || readonly }) }, MarkdownCommand.commands.paragraphs.map(function (p, i) { return (React.createElement(MenuItem, { key: p, text: React.createElement(React.Fragment, null,
|
|
25
|
+
React.createElement("span", { style: p.startsWith("Head") ? { fontSize: 22 - (i * (22 - 12)) / 5 } : {} }, getTranslation(p))), onClick: function () { var _a; return (_a = commandRef.current) === null || _a === void 0 ? void 0 : _a.executeCommand(p); } })); }))),
|
|
26
|
+
React.createElement(ToolbarSection, { canShrink: true },
|
|
27
|
+
React.createElement(Spacing, { vertical: true, hasDivider: true, size: "tiny" })),
|
|
28
|
+
[basic, lists, attachments].map(function (section, i) {
|
|
29
|
+
return (React.createElement(React.Fragment, { key: i },
|
|
30
|
+
React.createElement(ToolbarSection, null, section.map(function (command) {
|
|
31
|
+
return (React.createElement(IconButton, { key: command.title, name: command.icon, onClick: function () { var _a; return (_a = commandRef.current) === null || _a === void 0 ? void 0 : _a.executeCommand(command.title); }, text: getTranslation(command.title), disabled: showPreview || disabled || readonly }));
|
|
32
|
+
})),
|
|
33
|
+
i < 2 && (React.createElement(ToolbarSection, { canShrink: true },
|
|
34
|
+
React.createElement(Spacing, { vertical: true, hasDivider: true, size: "tiny" })))));
|
|
35
|
+
}),
|
|
36
|
+
React.createElement(ToolbarSection, { canGrow: true, canShrink: true },
|
|
37
|
+
React.createElement(Spacing, { vertical: true, size: "small" })),
|
|
38
|
+
React.createElement(ToolbarSection, { canShrink: true, hideOverflow: true },
|
|
39
|
+
React.createElement(Button, { minimal: true, ellipsizeText: true, onClick: togglePreviewStatus, text: showPreview ? getTranslation("Continue editing") : getTranslation("Preview"), icon: showPreview ? "item-edit" : "item-viewdetails", disabled: disabled }))));
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=markdown.toolbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.toolbar.js","sourceRoot":"","sources":["../../../../../src/extensions/codemirror/toolbars/markdown.toolbar.tsx"],"names":[],"mappings":"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"}
|