@uiw/react-md-editor 3.3.7 → 3.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/markdown-editor.css +3 -7
  2. package/lib/cjs/Context.js +2 -8
  3. package/lib/cjs/Editor.js +54 -86
  4. package/lib/cjs/commands/bold.js +5 -9
  5. package/lib/cjs/commands/code.js +5 -11
  6. package/lib/cjs/commands/comment.js +5 -7
  7. package/lib/cjs/commands/divider.js +1 -1
  8. package/lib/cjs/commands/fullscreen.js +1 -5
  9. package/lib/cjs/commands/group.js +3 -10
  10. package/lib/cjs/commands/hr.js +1 -4
  11. package/lib/cjs/commands/image.js +5 -9
  12. package/lib/cjs/commands/index.js +52 -87
  13. package/lib/cjs/commands/italic.js +5 -9
  14. package/lib/cjs/commands/link.js +5 -9
  15. package/lib/cjs/commands/list.js +7 -11
  16. package/lib/cjs/commands/preview.js +2 -5
  17. package/lib/cjs/commands/quote.js +3 -6
  18. package/lib/cjs/commands/strikeThrough.js +5 -9
  19. package/lib/cjs/commands/title.js +1 -6
  20. package/lib/cjs/commands/title1.js +1 -6
  21. package/lib/cjs/commands/title2.js +1 -6
  22. package/lib/cjs/commands/title3.js +1 -6
  23. package/lib/cjs/commands/title4.js +1 -6
  24. package/lib/cjs/commands/title5.js +1 -6
  25. package/lib/cjs/commands/title6.js +1 -6
  26. package/lib/cjs/components/DragBar/index.js +3 -14
  27. package/lib/cjs/components/TextArea/Markdown.js +8 -20
  28. package/lib/cjs/components/TextArea/Textarea.js +17 -36
  29. package/lib/cjs/components/TextArea/handleKeyDown.js +1 -19
  30. package/lib/cjs/components/TextArea/index.js +11 -27
  31. package/lib/cjs/components/TextArea/shortcuts.js +1 -17
  32. package/lib/cjs/components/Toolbar/Child.js +9 -18
  33. package/lib/cjs/components/Toolbar/index.js +12 -32
  34. package/lib/cjs/index.js +2 -11
  35. package/lib/cjs/utils/InsertTextAtPosition.js +28 -33
  36. package/lib/cjs/utils/getSurroundingWord.js +9 -12
  37. package/lib/cjs/utils/index.js +1 -1
  38. package/lib/cjs/utils/markdownUtils.js +12 -23
  39. package/lib/esm/Context.js +1 -1
  40. package/lib/esm/Editor.js +54 -71
  41. package/lib/esm/commands/bold.js +5 -5
  42. package/lib/esm/commands/code.js +5 -7
  43. package/lib/esm/commands/comment.js +5 -5
  44. package/lib/esm/commands/divider.js +1 -1
  45. package/lib/esm/commands/fullscreen.js +1 -2
  46. package/lib/esm/commands/group.js +3 -5
  47. package/lib/esm/commands/hr.js +1 -1
  48. package/lib/esm/commands/image.js +5 -5
  49. package/lib/esm/commands/index.js +8 -18
  50. package/lib/esm/commands/italic.js +5 -5
  51. package/lib/esm/commands/link.js +5 -5
  52. package/lib/esm/commands/list.js +5 -5
  53. package/lib/esm/commands/preview.js +1 -1
  54. package/lib/esm/commands/quote.js +3 -2
  55. package/lib/esm/commands/strikeThrough.js +5 -5
  56. package/lib/esm/commands/title.js +1 -1
  57. package/lib/esm/commands/title1.js +1 -3
  58. package/lib/esm/commands/title2.js +1 -3
  59. package/lib/esm/commands/title3.js +1 -3
  60. package/lib/esm/commands/title4.js +1 -3
  61. package/lib/esm/commands/title5.js +1 -3
  62. package/lib/esm/commands/title6.js +1 -3
  63. package/lib/esm/components/DragBar/index.js +3 -12
  64. package/lib/esm/components/TextArea/Markdown.js +9 -13
  65. package/lib/esm/components/TextArea/Textarea.js +17 -20
  66. package/lib/esm/components/TextArea/handleKeyDown.js +2 -14
  67. package/lib/esm/components/TextArea/index.css +1 -2
  68. package/lib/esm/components/TextArea/index.js +11 -14
  69. package/lib/esm/components/TextArea/shortcuts.js +1 -14
  70. package/lib/esm/components/Toolbar/Child.js +9 -10
  71. package/lib/esm/components/Toolbar/index.css +2 -5
  72. package/lib/esm/components/Toolbar/index.js +12 -23
  73. package/lib/esm/index.js +1 -1
  74. package/lib/esm/utils/InsertTextAtPosition.js +28 -31
  75. package/lib/esm/utils/getSurroundingWord.js +9 -10
  76. package/lib/esm/utils/index.js +1 -1
  77. package/lib/esm/utils/markdownUtils.js +10 -16
  78. package/package.json +2 -49
@@ -1,50 +1,37 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
-
5
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.ToolbarItems = ToolbarItems;
11
9
  exports.default = Toolbar;
12
-
13
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
-
15
11
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
16
-
17
12
  var _react = _interopRequireWildcard(require("react"));
18
-
19
13
  var _Context = require("../../Context");
20
-
21
14
  var _Child = _interopRequireDefault(require("./Child"));
22
-
23
15
  function ToolbarItems(props) {
24
16
  var prefixCls = props.prefixCls;
25
-
26
17
  var _useContext = (0, _react.useContext)(_Context.EditorContext),
27
- fullscreen = _useContext.fullscreen,
28
- preview = _useContext.preview,
29
- _useContext$barPopup = _useContext.barPopup,
30
- barPopup = _useContext$barPopup === void 0 ? {} : _useContext$barPopup,
31
- commandOrchestrator = _useContext.commandOrchestrator,
32
- dispatch = _useContext.dispatch;
33
-
18
+ fullscreen = _useContext.fullscreen,
19
+ preview = _useContext.preview,
20
+ _useContext$barPopup = _useContext.barPopup,
21
+ barPopup = _useContext$barPopup === void 0 ? {} : _useContext$barPopup,
22
+ commandOrchestrator = _useContext.commandOrchestrator,
23
+ dispatch = _useContext.dispatch;
34
24
  function handleClick(command, name) {
35
25
  if (!dispatch) return;
36
26
  var state = {
37
27
  barPopup: (0, _objectSpread2.default)({}, barPopup)
38
28
  };
39
-
40
29
  if (command.keyCommand === 'preview') {
41
30
  state.preview = command.value;
42
31
  }
43
-
44
32
  if (command.keyCommand === 'fullscreen') {
45
33
  state.fullscreen = !fullscreen;
46
34
  }
47
-
48
35
  if (props.commands && command.keyCommand === 'group') {
49
36
  props.commands.forEach(function (item) {
50
37
  if (name === item.groupName) {
@@ -58,14 +45,11 @@ function ToolbarItems(props) {
58
45
  state.barPopup[keyName] = false;
59
46
  });
60
47
  }
61
-
62
48
  if (Object.keys(state).length) {
63
49
  dispatch((0, _objectSpread2.default)({}, state));
64
50
  }
65
-
66
51
  commandOrchestrator && commandOrchestrator.executeCommand(command);
67
52
  }
68
-
69
53
  (0, _react.useEffect)(function () {
70
54
  if (document) {
71
55
  document.body.style.overflow = !fullscreen ? 'initial' : 'hidden';
@@ -79,7 +63,6 @@ function ToolbarItems(props) {
79
63
  className: "".concat(prefixCls, "-toolbar-divider")
80
64
  }));
81
65
  }
82
-
83
66
  if (!item.keyCommand) return /*#__PURE__*/_react.default.createElement(_react.Fragment, null);
84
67
  var activeBtn = fullscreen && item.keyCommand === 'fullscreen' || item.keyCommand === 'preview' && preview === item.value;
85
68
  var childNode = item.children && typeof item.children === 'function' ? item.children({
@@ -118,18 +101,15 @@ function ToolbarItems(props) {
118
101
  }));
119
102
  }));
120
103
  }
121
-
122
104
  function Toolbar() {
123
105
  var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
124
106
  var prefixCls = props.prefixCls,
125
- _props$height = props.height,
126
- height = _props$height === void 0 ? 29 : _props$height,
127
- isChild = props.isChild;
128
-
107
+ _props$height = props.height,
108
+ height = _props$height === void 0 ? 29 : _props$height,
109
+ isChild = props.isChild;
129
110
  var _useContext2 = (0, _react.useContext)(_Context.EditorContext),
130
- commands = _useContext2.commands,
131
- extraCommands = _useContext2.extraCommands;
132
-
111
+ commands = _useContext2.commands,
112
+ extraCommands = _useContext2.extraCommands;
133
113
  return /*#__PURE__*/_react.default.createElement("div", {
134
114
  className: "".concat(prefixCls, "-toolbar"),
135
115
  style: {
@@ -141,4 +121,4 @@ function Toolbar() {
141
121
  commands: extraCommands || []
142
122
  })));
143
123
  }
144
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1Rvb2xiYXIvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlRvb2xiYXJJdGVtcyIsInByb3BzIiwicHJlZml4Q2xzIiwiRWRpdG9yQ29udGV4dCIsImZ1bGxzY3JlZW4iLCJwcmV2aWV3IiwiYmFyUG9wdXAiLCJjb21tYW5kT3JjaGVzdHJhdG9yIiwiZGlzcGF0Y2giLCJoYW5kbGVDbGljayIsImNvbW1hbmQiLCJuYW1lIiwic3RhdGUiLCJrZXlDb21tYW5kIiwidmFsdWUiLCJjb21tYW5kcyIsImZvckVhY2giLCJpdGVtIiwiZ3JvdXBOYW1lIiwicGFyZW50IiwiT2JqZWN0Iiwia2V5cyIsImtleU5hbWUiLCJsZW5ndGgiLCJleGVjdXRlQ29tbWFuZCIsImRvY3VtZW50IiwiYm9keSIsInN0eWxlIiwib3ZlcmZsb3ciLCJtYXAiLCJpZHgiLCJsaVByb3BzIiwiYWN0aXZlQnRuIiwiY2hpbGROb2RlIiwiY2hpbGRyZW4iLCJnZXRTdGF0ZSIsInRleHRBcGkiLCJ1bmRlZmluZWQiLCJjbG9zZSIsImV4ZWN1dGUiLCJkaXNhYmxlZCIsInRlc3QiLCJidXR0b25Qcm9wcyIsImljb24iLCJSZWFjdCIsImNyZWF0ZUVsZW1lbnQiLCJ0eXBlIiwib25DbGljayIsImV2biIsInN0b3BQcm9wYWdhdGlvbiIsIkFycmF5IiwiaXNBcnJheSIsIlRvb2xiYXIiLCJoZWlnaHQiLCJpc0NoaWxkIiwiZXh0cmFDb21tYW5kcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBOztBQUVBOztBQVVPLFNBQVNBLFlBQVQsQ0FBc0JDLEtBQXRCLEVBQTRDO0FBQ2pELE1BQVFDLFNBQVIsR0FBc0JELEtBQXRCLENBQVFDLFNBQVI7O0FBQ0Esb0JBQThFLHVCQUFXQyxzQkFBWCxDQUE5RTtBQUFBLE1BQVFDLFVBQVIsZUFBUUEsVUFBUjtBQUFBLE1BQW9CQyxPQUFwQixlQUFvQkEsT0FBcEI7QUFBQSx5Q0FBNkJDLFFB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QU4sSUFBa0JBLFFBQWxCLElBQThCO0FBQWpFLEtBREYsRUFFRyxDQUFDdUMsT0FBRCxpQkFBWSw2QkFBQyxZQUFELDZCQUFrQnJELEtBQWxCO0FBQXlCLElBQUEsUUFBUSxFQUFFc0QsYUFBYSxJQUFJO0FBQXBELEtBRmYsQ0FERjtBQU1EIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50LCB1c2VDb250ZXh0LCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJUHJvcHMgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBFZGl0b3JDb250ZXh0LCBQcmV2aWV3VHlwZSwgQ29udGV4dFN0b3JlIH0gZnJvbSAnLi4vLi4vQ29udGV4dCc7XG5pbXBvcnQgeyBJQ29tbWFuZCB9IGZyb20gJy4uLy4uL2NvbW1hbmRzJztcbmltcG9ydCBDaGlsZCBmcm9tICcuL0NoaWxkJztcbmltcG9ydCAnLi9pbmRleC5sZXNzJztcblxuZXhwb3J0IGludGVyZmFjZSBJVG9vbGJhclByb3BzIGV4dGVuZHMgSVByb3BzIHtcbiAgaGVpZ2h0PzogUmVhY3QuQ1NTUHJvcGVydGllc1snaGVpZ2h0J107XG4gIG9uQ29tbWFuZD86IChjb21tYW5kOiBJQ29tbWFuZDxzdHJpbmc+LCBncm91cE5hbWU/OiBzdHJpbmcpID0+IHZvaWQ7XG4gIGNvbW1hbmRzPzogSUNvbW1hbmQ8c3RyaW5nPltdO1xuICBpc0NoaWxkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFRvb2xiYXJJdGVtcyhwcm9wczogSVRvb2xiYXJQcm9wcykge1xuICBjb25zdCB7IHByZWZpeENscyB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgZnVsbHNjcmVlbiwgcHJldmlldywgYmFyUG9wdXAgPSB7fSwgY29tbWFuZE9yY2hlc3RyYXRvciwgZGlzcGF0Y2ggfSA9IHVzZUNvbnRleHQoRWRpdG9yQ29udGV4dCk7XG4gIGZ1bmN0aW9uIGhhbmRsZUNsaWNrKGNvbW1hbmQ6IElDb21tYW5kPHN0cmluZz4sIG5hbWU/OiBzdHJpbmcpIHtcbiAgICBpZiAoIWRpc3BhdGNoKSByZXR1cm47XG4gICAgY29uc3Qgc3RhdGU6IENvbnRleHRTdG9yZSA9IHsgYmFyUG9wdXA6IHsgLi4uYmFyUG9wdXAgfSB9O1xuICAgIGlmIChjb21tYW5kLmtleUNvbW1hbmQgPT09ICdwcmV2aWV3Jykge1xuICAgICAgc3RhdGUucHJldmlldyA9IGNvbW1hbmQudmFsdWUgYXMgUHJldmlld1R5cGU7XG4gICAgfVxuICAgIGlmIChjb21tYW5kLmtleUNvbW1hbmQgPT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgc3RhdGUuZnVsbHNjcmVlbiA9ICFmdWxsc2NyZWVuO1xuICAgIH1cbiAgICBpZiAocHJvcHMuY29tbWFuZHMgJiYgY29tbWFuZC5rZXlDb21tYW5kID09PSAnZ3JvdXAnKSB7XG4gICAgICBwcm9wcy5jb21tYW5kcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgIGlmIChuYW1lID09PSBpdGVtLmdyb3VwTmFtZSkge1xuICAgICAgICAgIHN0YXRlLmJhclBvcHVwIVtuYW1lIV0gPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0ua2V5Q29tbWFuZCkge1xuICAgICAgICAgIHN0YXRlLmJhclBvcHVwIVtpdGVtLmdyb3VwTmFtZSFdID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAobmFtZSB8fCBjb21tYW5kLnBhcmVudCkge1xuICAgICAgT2JqZWN0LmtleXMoc3RhdGUuYmFyUG9wdXAgfHwge30pLmZvckVhY2goKGtleU5hbWUpID0+IHtcbiAgICAgICAgc3RhdGUuYmFyUG9wdXAhW2tleU5hbWVdID0gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoT2JqZWN0LmtleXMoc3RhdGUpLmxlbmd0aCkge1xuICAgICAgZGlzcGF0Y2goeyAuLi5zdGF0ZSB9KTtcbiAgICB9XG4gICAgY29tbWFuZE9yY2hlc3RyYXRvciAmJiBjb21tYW5kT3JjaGVzdHJhdG9yLmV4ZWN1dGVDb21tYW5kKGNvbW1hbmQpO1xuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZG9jdW1lbnQpIHtcbiAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAhZnVsbHNjcmVlbiA/ICdpbml0aWFsJyA6ICdoaWRkZW4nO1xuICAgIH1cbiAgfSwgW2Z1bGxzY3JlZW5dKTtcblxuICByZXR1cm4gKFxuICAgIDx1bD5cbiAgICAgIHsocHJvcHMuY29tbWFuZHMgfHwgW10pLm1hcCgoaXRlbSwgaWR4KSA9PiB7XG4gICAgICAgIGlmIChpdGVtLmtleUNvbW1hbmQgPT09ICdkaXZpZGVyJykge1xuICAgICAgICAgIHJldHVybiA8bGkga2V5PXtpZHh9IHsuLi5pdGVtLmxpUHJvcHN9IGNsYXNzTmFtZT17YCR7cHJlZml4Q2xzfS10b29sYmFyLWRpdmlkZXJgfSAvPjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWl0ZW0ua2V5Q29tbWFuZCkgcmV0dXJuIDxGcmFnbWVudCAvPjtcbiAgICAgICAgY29uc3QgYWN0aXZlQnRuID1cbiAgICAgICAgICAoZnVsbHNjcmVlbiAmJiBpdGVtLmtleUNvbW1hbmQgPT09ICdmdWxsc2NyZWVuJykgfHwgKGl0ZW0ua2V5Q29tbWFuZCA9PT0gJ3ByZXZpZXcnICYmIHByZXZpZXcgPT09IGl0ZW0udmFsdWUpO1xuICAgICAgICBjb25zdCBjaGlsZE5vZGUgPVxuICAgICAgICAgIGl0ZW0uY2hpbGRyZW4gJiYgdHlwZW9mIGl0ZW0uY2hpbGRyZW4gPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgID8gaXRlbS5jaGlsZHJlbih7XG4gICAgICAgICAgICAgICAgZ2V0U3RhdGU6ICgpID0+IGNvbW1hbmRPcmNoZXN0cmF0b3IhLmdldFN0YXRlKCksXG4gICAgICAgICAgICAgICAgdGV4dEFwaTogY29tbWFuZE9yY2hlc3RyYXRvciA/IGNvbW1hbmRPcmNoZXN0cmF0b3IhLnRleHRBcGkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgY2xvc2U6ICgpID0+IGhhbmRsZUNsaWNrKHt9LCBpdGVtLmdyb3VwTmFtZSksXG4gICAgICAgICAgICAgICAgZXhlY3V0ZTogKCkgPT4gaGFuZGxlQ2xpY2soeyBleGVjdXRlOiBpdGVtLmV4ZWN1dGUgfSksXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgZGlzYWJsZWQgPSBiYXJQb3B1cCAmJiBwcmV2aWV3ICYmIHByZXZpZXcgPT09ICdwcmV2aWV3JyAmJiAhLyhwcmV2aWV3fGZ1bGxzY3JlZW4pLy50ZXN0KGl0ZW0ua2V5Q29tbWFuZCk7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGxpIGtleT17aWR4fSB7Li4uaXRlbS5saVByb3BzfSBjbGFzc05hbWU9e2FjdGl2ZUJ0biA/IGBhY3RpdmVgIDogJyd9PlxuICAgICAgICAgICAgeyFpdGVtLmJ1dHRvblByb3BzICYmIGl0ZW0uaWNvbn1cbiAgICAgICAgICAgIHtpdGVtLmJ1dHRvblByb3BzICYmXG4gICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAgICdkYXRhLW5hbWUnOiBpdGVtLm5hbWUsXG4gICAgICAgICAgICAgICAgICAuLi5pdGVtLmJ1dHRvblByb3BzLFxuICAgICAgICAgICAgICAgICAgb25DbGljazogKGV2bjogUmVhY3QuTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudCwgTW91c2VFdmVudD4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZXZuLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGljayhpdGVtLCBpdGVtLmdyb3VwTmFtZSk7XG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaXRlbS5pY29uLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAge2l0ZW0uY2hpbGRyZW4gJiYgKFxuICAgICAgICAgICAgICA8Q2hpbGRcbiAgICAgICAgICAgICAgICBncm91cE5hbWU9e2l0ZW0uZ3JvdXBOYW1lfVxuICAgICAgICAgICAgICAgIHByZWZpeENscz17cHJlZml4Q2xzfVxuICAgICAgICAgICAgICAgIGNoaWxkcmVuPXtjaGlsZE5vZGV9XG4gICAgICAgICAgICAgICAgY29tbWFuZHM9e0FycmF5LmlzQXJyYXkoaXRlbS5jaGlsZHJlbikgPyBpdGVtLmNoaWxkcmVuIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICApO1xuICAgICAgfSl9XG4gICAgPC91bD5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gVG9vbGJhcihwcm9wczogSVRvb2xiYXJQcm9wcyA9IHt9KSB7XG4gIGNvbnN0IHsgcHJlZml4Q2xzLCBoZWlnaHQgPSAyOSwgaXNDaGlsZCB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgY29tbWFuZHMsIGV4dHJhQ29tbWFuZHMgfSA9IHVzZUNvbnRleHQoRWRpdG9yQ29udGV4dCk7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2Ake3ByZWZpeENsc30tdG9vbGJhcmB9IHN0eWxlPXt7IGhlaWdodCB9fT5cbiAgICAgIDxUb29sYmFySXRlbXMgey4uLnByb3BzfSBjb21tYW5kcz17cHJvcHMuY29tbWFuZHMgfHwgY29tbWFuZHMgfHwgW119IC8+XG4gICAgICB7IWlzQ2hpbGQgJiYgPFRvb2xiYXJJdGVtcyB7Li4ucHJvcHN9IGNvbW1hbmRzPXtleHRyYUNvbW1hbmRzIHx8IFtdfSAvPn1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cbiJdfQ==
124
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUb29sYmFySXRlbXMiLCJwcm9wcyIsInByZWZpeENscyIsInVzZUNvbnRleHQiLCJFZGl0b3JDb250ZXh0IiwiZnVsbHNjcmVlbiIsInByZXZpZXciLCJiYXJQb3B1cCIsImNvbW1hbmRPcmNoZXN0cmF0b3IiLCJkaXNwYXRjaCIsImhhbmRsZUNsaWNrIiwiY29tbWFuZCIsIm5hbWUiLCJzdGF0ZSIsImtleUNvbW1hbmQiLCJ2YWx1ZSIsImNvbW1hbmRzIiwiZm9yRWFjaCIsIml0ZW0iLCJncm91cE5hbWUiLCJwYXJlbnQiLCJPYmplY3QiLCJrZXlzIiwia2V5TmFtZSIsImxlbmd0aCIsImV4ZWN1dGVDb21tYW5kIiwidXNlRWZmZWN0IiwiZG9jdW1lbnQiLCJib2R5Iiwic3R5bGUiLCJvdmVyZmxvdyIsIm1hcCIsImlkeCIsImxpUHJvcHMiLCJhY3RpdmVCdG4iLCJjaGlsZE5vZGUiLCJjaGlsZHJlbiIsImdldFN0YXRlIiwidGV4dEFwaSIsInVuZGVmaW5lZCIsImNsb3NlIiwiZXhlY3V0ZSIsImRpc2FibGVkIiwidGVzdCIsImJ1dHRvblByb3BzIiwiaWNvbiIsIlJlYWN0IiwiY3JlYXRlRWxlbWVudCIsInR5cGUiLCJvbkNsaWNrIiwiZXZuIiwic3RvcFByb3BhZ2F0aW9uIiwiQXJyYXkiLCJpc0FycmF5IiwiVG9vbGJhciIsImhlaWdodCIsImlzQ2hpbGQiLCJleHRyYUNvbW1hbmRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVG9vbGJhci9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50LCB1c2VDb250ZXh0LCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJUHJvcHMgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBFZGl0b3JDb250ZXh0LCBQcmV2aWV3VHlwZSwgQ29udGV4dFN0b3JlIH0gZnJvbSAnLi4vLi4vQ29udGV4dCc7XG5pbXBvcnQgeyBJQ29tbWFuZCB9IGZyb20gJy4uLy4uL2NvbW1hbmRzJztcbmltcG9ydCBDaGlsZCBmcm9tICcuL0NoaWxkJztcbmltcG9ydCAnLi9pbmRleC5sZXNzJztcblxuZXhwb3J0IGludGVyZmFjZSBJVG9vbGJhclByb3BzIGV4dGVuZHMgSVByb3BzIHtcbiAgaGVpZ2h0PzogUmVhY3QuQ1NTUHJvcGVydGllc1snaGVpZ2h0J107XG4gIG9uQ29tbWFuZD86IChjb21tYW5kOiBJQ29tbWFuZDxzdHJpbmc+LCBncm91cE5hbWU/OiBzdHJpbmcpID0+IHZvaWQ7XG4gIGNvbW1hbmRzPzogSUNvbW1hbmQ8c3RyaW5nPltdO1xuICBpc0NoaWxkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFRvb2xiYXJJdGVtcyhwcm9wczogSVRvb2xiYXJQcm9wcykge1xuICBjb25zdCB7IHByZWZpeENscyB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgZnVsbHNjcmVlbiwgcHJldmlldywgYmFyUG9wdXAgPSB7fSwgY29tbWFuZE9yY2hlc3RyYXRvciwgZGlzcGF0Y2ggfSA9IHVzZUNvbnRleHQoRWRpdG9yQ29udGV4dCk7XG4gIGZ1bmN0aW9uIGhhbmRsZUNsaWNrKGNvbW1hbmQ6IElDb21tYW5kPHN0cmluZz4sIG5hbWU/OiBzdHJpbmcpIHtcbiAgICBpZiAoIWRpc3BhdGNoKSByZXR1cm47XG4gICAgY29uc3Qgc3RhdGU6IENvbnRleHRTdG9yZSA9IHsgYmFyUG9wdXA6IHsgLi4uYmFyUG9wdXAgfSB9O1xuICAgIGlmIChjb21tYW5kLmtleUNvbW1hbmQgPT09ICdwcmV2aWV3Jykge1xuICAgICAgc3RhdGUucHJldmlldyA9IGNvbW1hbmQudmFsdWUgYXMgUHJldmlld1R5cGU7XG4gICAgfVxuICAgIGlmIChjb21tYW5kLmtleUNvbW1hbmQgPT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgc3RhdGUuZnVsbHNjcmVlbiA9ICFmdWxsc2NyZWVuO1xuICAgIH1cbiAgICBpZiAocHJvcHMuY29tbWFuZHMgJiYgY29tbWFuZC5rZXlDb21tYW5kID09PSAnZ3JvdXAnKSB7XG4gICAgICBwcm9wcy5jb21tYW5kcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgIGlmIChuYW1lID09PSBpdGVtLmdyb3VwTmFtZSkge1xuICAgICAgICAgIHN0YXRlLmJhclBvcHVwIVtuYW1lIV0gPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0ua2V5Q29tbWFuZCkge1xuICAgICAgICAgIHN0YXRlLmJhclBvcHVwIVtpdGVtLmdyb3VwTmFtZSFdID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAobmFtZSB8fCBjb21tYW5kLnBhcmVudCkge1xuICAgICAgT2JqZWN0LmtleXMoc3RhdGUuYmFyUG9wdXAgfHwge30pLmZvckVhY2goKGtleU5hbWUpID0+IHtcbiAgICAgICAgc3RhdGUuYmFyUG9wdXAhW2tleU5hbWVdID0gZmFsc2U7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoT2JqZWN0LmtleXMoc3RhdGUpLmxlbmd0aCkge1xuICAgICAgZGlzcGF0Y2goeyAuLi5zdGF0ZSB9KTtcbiAgICB9XG4gICAgY29tbWFuZE9yY2hlc3RyYXRvciAmJiBjb21tYW5kT3JjaGVzdHJhdG9yLmV4ZWN1dGVDb21tYW5kKGNvbW1hbmQpO1xuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZG9jdW1lbnQpIHtcbiAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAhZnVsbHNjcmVlbiA/ICdpbml0aWFsJyA6ICdoaWRkZW4nO1xuICAgIH1cbiAgfSwgW2Z1bGxzY3JlZW5dKTtcblxuICByZXR1cm4gKFxuICAgIDx1bD5cbiAgICAgIHsocHJvcHMuY29tbWFuZHMgfHwgW10pLm1hcCgoaXRlbSwgaWR4KSA9PiB7XG4gICAgICAgIGlmIChpdGVtLmtleUNvbW1hbmQgPT09ICdkaXZpZGVyJykge1xuICAgICAgICAgIHJldHVybiA8bGkga2V5PXtpZHh9IHsuLi5pdGVtLmxpUHJvcHN9IGNsYXNzTmFtZT17YCR7cHJlZml4Q2xzfS10b29sYmFyLWRpdmlkZXJgfSAvPjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWl0ZW0ua2V5Q29tbWFuZCkgcmV0dXJuIDxGcmFnbWVudCAvPjtcbiAgICAgICAgY29uc3QgYWN0aXZlQnRuID1cbiAgICAgICAgICAoZnVsbHNjcmVlbiAmJiBpdGVtLmtleUNvbW1hbmQgPT09ICdmdWxsc2NyZWVuJykgfHwgKGl0ZW0ua2V5Q29tbWFuZCA9PT0gJ3ByZXZpZXcnICYmIHByZXZpZXcgPT09IGl0ZW0udmFsdWUpO1xuICAgICAgICBjb25zdCBjaGlsZE5vZGUgPVxuICAgICAgICAgIGl0ZW0uY2hpbGRyZW4gJiYgdHlwZW9mIGl0ZW0uY2hpbGRyZW4gPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgID8gaXRlbS5jaGlsZHJlbih7XG4gICAgICAgICAgICAgICAgZ2V0U3RhdGU6ICgpID0+IGNvbW1hbmRPcmNoZXN0cmF0b3IhLmdldFN0YXRlKCksXG4gICAgICAgICAgICAgICAgdGV4dEFwaTogY29tbWFuZE9yY2hlc3RyYXRvciA/IGNvbW1hbmRPcmNoZXN0cmF0b3IhLnRleHRBcGkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgY2xvc2U6ICgpID0+IGhhbmRsZUNsaWNrKHt9LCBpdGVtLmdyb3VwTmFtZSksXG4gICAgICAgICAgICAgICAgZXhlY3V0ZTogKCkgPT4gaGFuZGxlQ2xpY2soeyBleGVjdXRlOiBpdGVtLmV4ZWN1dGUgfSksXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgZGlzYWJsZWQgPSBiYXJQb3B1cCAmJiBwcmV2aWV3ICYmIHByZXZpZXcgPT09ICdwcmV2aWV3JyAmJiAhLyhwcmV2aWV3fGZ1bGxzY3JlZW4pLy50ZXN0KGl0ZW0ua2V5Q29tbWFuZCk7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGxpIGtleT17aWR4fSB7Li4uaXRlbS5saVByb3BzfSBjbGFzc05hbWU9e2FjdGl2ZUJ0biA/IGBhY3RpdmVgIDogJyd9PlxuICAgICAgICAgICAgeyFpdGVtLmJ1dHRvblByb3BzICYmIGl0ZW0uaWNvbn1cbiAgICAgICAgICAgIHtpdGVtLmJ1dHRvblByb3BzICYmXG4gICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAgICdkYXRhLW5hbWUnOiBpdGVtLm5hbWUsXG4gICAgICAgICAgICAgICAgICAuLi5pdGVtLmJ1dHRvblByb3BzLFxuICAgICAgICAgICAgICAgICAgb25DbGljazogKGV2bjogUmVhY3QuTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudCwgTW91c2VFdmVudD4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZXZuLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGljayhpdGVtLCBpdGVtLmdyb3VwTmFtZSk7XG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaXRlbS5pY29uLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAge2l0ZW0uY2hpbGRyZW4gJiYgKFxuICAgICAgICAgICAgICA8Q2hpbGRcbiAgICAgICAgICAgICAgICBncm91cE5hbWU9e2l0ZW0uZ3JvdXBOYW1lfVxuICAgICAgICAgICAgICAgIHByZWZpeENscz17cHJlZml4Q2xzfVxuICAgICAgICAgICAgICAgIGNoaWxkcmVuPXtjaGlsZE5vZGV9XG4gICAgICAgICAgICAgICAgY29tbWFuZHM9e0FycmF5LmlzQXJyYXkoaXRlbS5jaGlsZHJlbikgPyBpdGVtLmNoaWxkcmVuIDogdW5kZWZpbmVkfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICApO1xuICAgICAgfSl9XG4gICAgPC91bD5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gVG9vbGJhcihwcm9wczogSVRvb2xiYXJQcm9wcyA9IHt9KSB7XG4gIGNvbnN0IHsgcHJlZml4Q2xzLCBoZWlnaHQgPSAyOSwgaXNDaGlsZCB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgY29tbWFuZHMsIGV4dHJhQ29tbWFuZHMgfSA9IHVzZUNvbnRleHQoRWRpdG9yQ29udGV4dCk7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2Ake3ByZWZpeENsc30tdG9vbGJhcmB9IHN0eWxlPXt7IGhlaWdodCB9fT5cbiAgICAgIDxUb29sYmFySXRlbXMgey4uLnByb3BzfSBjb21tYW5kcz17cHJvcHMuY29tbWFuZHMgfHwgY29tbWFuZHMgfHwgW119IC8+XG4gICAgICB7IWlzQ2hpbGQgJiYgPFRvb2xiYXJJdGVtcyB7Li4ucHJvcHN9IGNvbW1hbmRzPXtleHRyYUNvbW1hbmRzIHx8IFtdfSAvPn1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUVBO0FBRUE7QUFVTyxTQUFTQSxZQUFZLENBQUNDLEtBQW9CLEVBQUU7RUFDakQsSUFBUUMsU0FBUyxHQUFLRCxLQUFLLENBQW5CQyxTQUFTO0VBQ2pCLGtCQUE4RSxJQUFBQyxpQkFBVSxFQUFDQyxzQkFBYSxDQUFDO0lBQS9GQyxVQUFVLGVBQVZBLFVBQVU7SUFBRUMsT0FBTyxlQUFQQSxPQUFPO0lBQUEsbUNBQUVDLFFBQVE7SUFBUkEsUUFBUSxxQ0FBRyxDQUFDLENBQUM7SUFBRUMsbUJBQW1CLGVBQW5CQSxtQkFBbUI7SUFBRUMsUUFBUSxlQUFSQSxRQUFRO0VBQ3pFLFNBQVNDLFdBQVcsQ0FBQ0MsT0FBeUIsRUFBRUMsSUFBYSxFQUFFO0lBQzdELElBQUksQ0FBQ0gsUUFBUSxFQUFFO0lB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
package/lib/cjs/index.js CHANGED
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
@@ -9,10 +8,8 @@ var _exportNames = {
9
8
  commands: true,
10
9
  MarkdownUtil: true
11
10
  };
12
- exports.MarkdownUtil = exports.commands = exports.default = void 0;
13
-
11
+ exports.default = exports.commands = exports.MarkdownUtil = void 0;
14
12
  var _Editor = _interopRequireWildcard(require("./Editor"));
15
-
16
13
  Object.keys(_Editor).forEach(function (key) {
17
14
  if (key === "default" || key === "__esModule") return;
18
15
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -24,9 +21,7 @@ Object.keys(_Editor).forEach(function (key) {
24
21
  }
25
22
  });
26
23
  });
27
-
28
24
  var commands = _interopRequireWildcard(require("./commands"));
29
-
30
25
  exports.commands = commands;
31
26
  Object.keys(commands).forEach(function (key) {
32
27
  if (key === "default" || key === "__esModule") return;
@@ -39,9 +34,7 @@ Object.keys(commands).forEach(function (key) {
39
34
  }
40
35
  });
41
36
  });
42
-
43
37
  var MarkdownUtil = _interopRequireWildcard(require("./utils/markdownUtils"));
44
-
45
38
  exports.MarkdownUtil = MarkdownUtil;
46
39
  Object.keys(MarkdownUtil).forEach(function (key) {
47
40
  if (key === "default" || key === "__esModule") return;
@@ -54,9 +47,7 @@ Object.keys(MarkdownUtil).forEach(function (key) {
54
47
  }
55
48
  });
56
49
  });
57
-
58
50
  var _Context = require("./Context");
59
-
60
51
  Object.keys(_Context).forEach(function (key) {
61
52
  if (key === "default" || key === "__esModule") return;
62
53
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -70,4 +61,4 @@ Object.keys(_Context).forEach(function (key) {
70
61
  });
71
62
  var _default = _Editor.default;
72
63
  exports.default = _default;
73
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50c3giXSwibmFtZXMiOlsiTURFZGl0b3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUxBOzs7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUZBOzs7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUVBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7ZUFJZUEsZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNREVkaXRvciBmcm9tICcuL0VkaXRvcic7XG5pbXBvcnQgKiBhcyBjb21tYW5kcyBmcm9tICcuL2NvbW1hbmRzJztcbmltcG9ydCAqIGFzIE1hcmtkb3duVXRpbCBmcm9tICcuL3V0aWxzL21hcmtkb3duVXRpbHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbW1hbmRzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvbWFya2Rvd25VdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL0VkaXRvcic7XG5leHBvcnQgKiBmcm9tICcuL0NvbnRleHQnO1xuXG5leHBvcnQgeyBNYXJrZG93blV0aWwsIGNvbW1hbmRzIH07XG5cbmV4cG9ydCBkZWZhdWx0IE1ERWRpdG9yO1xuIl19
64
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNREVkaXRvciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1ERWRpdG9yIGZyb20gJy4vRWRpdG9yJztcbmltcG9ydCAqIGFzIGNvbW1hbmRzIGZyb20gJy4vY29tbWFuZHMnO1xuaW1wb3J0ICogYXMgTWFya2Rvd25VdGlsIGZyb20gJy4vdXRpbHMvbWFya2Rvd25VdGlscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY29tbWFuZHMnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscy9tYXJrZG93blV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vRWRpdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vQ29udGV4dCc7XG5cbmV4cG9ydCB7IE1hcmtkb3duVXRpbCwgY29tbWFuZHMgfTtcblxuZXhwb3J0IGRlZmF1bHQgTURFZGl0b3I7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7QUFNQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0lBQUE7SUFBQTtNQUFBO0lBQUE7RUFBQTtBQUFBO0FBTEE7QUFBdUM7QUFHdkM7RUFBQTtFQUFBO0VBQUE7RUFBQTtJQUFBO0lBQUE7TUFBQTtJQUFBO0VBQUE7QUFBQTtBQUZBO0FBQXNEO0FBR3REO0VBQUE7RUFBQTtFQUFBO0VBQUE7SUFBQTtJQUFBO01BQUE7SUFBQTtFQUFBO0FBQUE7QUFFQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7SUFBQTtJQUFBO01BQUE7SUFBQTtFQUFBO0FBQUE7QUFBMEIsZUFJWEEsZUFBUTtBQUFBIn0=
@@ -4,70 +4,66 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = insertTextAtPosition;
7
-
8
7
  /**
9
8
  * The MIT License
10
9
  * Copyright (c) 2018 Dmitriy Kubyshkin
11
10
  * Copied from https://github.com/grassator/insert-text-at-cursor
12
11
  */
12
+
13
13
  var browserSupportsTextareaTextNodes;
14
+
14
15
  /**
15
16
  * @param {HTMLElement} input
16
17
  * @return {boolean}
17
18
  */
18
-
19
19
  function canManipulateViaTextNodes(input) {
20
20
  if (input.nodeName !== 'TEXTAREA') {
21
21
  return false;
22
22
  }
23
-
24
23
  if (typeof browserSupportsTextareaTextNodes === 'undefined') {
25
24
  var textarea = document.createElement('textarea');
26
25
  textarea.value = '1';
27
26
  browserSupportsTextareaTextNodes = !!textarea.firstChild;
28
27
  }
29
-
30
28
  return browserSupportsTextareaTextNodes;
31
29
  }
30
+
32
31
  /**
33
32
  * @param {HTMLTextAreaElement|HTMLInputElement} input
34
33
  * @param {string} text
35
34
  * @returns {void}
36
35
  */
37
-
38
-
39
36
  function insertTextAtPosition(input, text) {
40
37
  // Most of the used APIs only work with the field selected
41
- input.focus(); // IE 8-10
38
+ input.focus();
42
39
 
40
+ // IE 8-10
43
41
  if (document.selection) {
44
42
  var ieRange = document.selection.createRange();
45
- ieRange.text = text; // Move cursor after the inserted text
43
+ ieRange.text = text;
46
44
 
47
- ieRange.collapse(false
48
- /* to the end */
49
- );
45
+ // Move cursor after the inserted text
46
+ ieRange.collapse(false /* to the end */);
50
47
  ieRange.select();
51
48
  return;
52
- } // Webkit + Edge
53
-
49
+ }
54
50
 
51
+ // Webkit + Edge
55
52
  var isSuccess = document.execCommand('insertText', false, text);
56
-
57
53
  if (!isSuccess) {
58
54
  var start = input.selectionStart;
59
- var end = input.selectionEnd; // Firefox (non-standard method)
60
-
55
+ var end = input.selectionEnd;
56
+ // Firefox (non-standard method)
61
57
  if (typeof input.setRangeText === 'function') {
62
58
  input.setRangeText(text);
63
59
  } else {
64
60
  // To make a change we just need a Range, not a Selection
65
61
  var range = document.createRange();
66
62
  var textNode = document.createTextNode(text);
67
-
68
63
  if (canManipulateViaTextNodes(input)) {
69
- var node = input.firstChild; // If textarea is empty, just insert the text
64
+ var node = input.firstChild;
70
65
 
66
+ // If textarea is empty, just insert the text
71
67
  if (!node) {
72
68
  input.appendChild(textNode);
73
69
  } else {
@@ -75,35 +71,34 @@ function insertTextAtPosition(input, text) {
75
71
  var offset = 0;
76
72
  var startNode = null;
77
73
  var endNode = null;
78
-
79
74
  while (node && (startNode === null || endNode === null)) {
80
- var nodeLength = node.nodeValue.length; // if start of the selection falls into current node
75
+ var nodeLength = node.nodeValue.length;
81
76
 
77
+ // if start of the selection falls into current node
82
78
  if (start >= offset && start <= offset + nodeLength) {
83
79
  range.setStart(startNode = node, start - offset);
84
- } // if end of the selection falls into current node
85
-
80
+ }
86
81
 
82
+ // if end of the selection falls into current node
87
83
  if (end >= offset && end <= offset + nodeLength) {
88
84
  range.setEnd(endNode = node, end - offset);
89
85
  }
90
-
91
86
  offset += nodeLength;
92
87
  node = node.nextSibling;
93
- } // If there is some text selected, remove it as we should replace it
94
-
88
+ }
95
89
 
90
+ // If there is some text selected, remove it as we should replace it
96
91
  if (start !== end) {
97
92
  range.deleteContents();
98
93
  }
99
94
  }
100
- } // If the node is a textarea and the range doesn't span outside the element
95
+ }
96
+
97
+ // If the node is a textarea and the range doesn't span outside the element
101
98
  //
102
99
  // Get the commonAncestorContainer of the selected range and test its type
103
100
  // If the node is of type `#text` it means that we're still working with text nodes within our textarea element
104
101
  // otherwise, if it's of type `#document` for example it means our selection spans outside the textarea.
105
-
106
-
107
102
  if (canManipulateViaTextNodes(input) && range.commonAncestorContainer.nodeName === '#text') {
108
103
  // Finally insert a new node. The browser will automatically split start and end nodes into two if necessary
109
104
  range.insertNode(textNode);
@@ -112,16 +107,16 @@ function insertTextAtPosition(input, text) {
112
107
  var value = input.value;
113
108
  input.value = value.slice(0, start) + text + value.slice(end);
114
109
  }
115
- } // Correct the cursor position to be at the end of the insertion
116
-
110
+ }
117
111
 
118
- input.setSelectionRange(start + text.length, start + text.length); // Notify any possible listeners of the change
112
+ // Correct the cursor position to be at the end of the insertion
113
+ input.setSelectionRange(start + text.length, start + text.length);
119
114
 
115
+ // Notify any possible listeners of the change
120
116
  var e = document.createEvent('UIEvent');
121
117
  e.initEvent('input', true, false);
122
118
  input.dispatchEvent(e);
123
119
  }
124
120
  }
125
-
126
121
  module.exports = exports.default;
127
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9JbnNlcnRUZXh0QXRQb3NpdGlvbi50cyJdLCJuYW1lcyI6WyJicm93c2VyU3VwcG9ydHNUZXh0YXJlYVRleHROb2RlcyIsImNhbk1hbmlwdWxhdGVWaWFUZXh0Tm9kZXMiLCJpbnB1dCIsIm5vZGVOYW1lIiwidGV4dGFyZWEiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJ2YWx1ZSIsImZpcnN0Q2hpbGQiLCJpbnNlcnRUZXh0QXRQb3NpdGlvbiIsInRleHQiLCJmb2N1cyIsInNlbGVjdGlvbiIsImllUmFuZ2UiLCJjcmVhdGVSYW5nZSIsImNvbGxhcHNlIiwic2VsZWN0IiwiaXNTdWNjZXNzIiwiZXhlY0NvbW1hbmQiLCJzdGFydCIsInNlbGVjdGlvblN0YXJ0IiwiZW5kIiwic2VsZWN0aW9uRW5kIiwic2V0UmFuZ2VUZXh0IiwicmFuZ2UiLCJ0ZXh0Tm9kZSIsImNyZWF0ZVRleHROb2RlIiwibm9kZSIsImFwcGVuZENoaWxkIiwib2Zmc2V0Iiwic3RhcnROb2RlIiwiZW5kTm9kZSIsIm5vZGVMZW5ndGgiLCJub2RlVmFsdWUiLCJsZW5ndGgiLCJzZXRTdGFydCIsInNldEVuZCIsIm5leHRTaWJsaW5nIiwiZGVsZXRlQ29udGVudHMiLCJjb21tb25BbmNlc3RvckNvbnRhaW5lciIsImluc2VydE5vZGUiLCJzbGljZSIsInNldFNlbGVjdGlvblJhbmdlIiwiZSIsImNyZWF0ZUV2ZW50IiwiaW5pdEV2ZW50IiwiZGlzcGF0Y2hFdmVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQSxJQUFJQSxnQ0FBSjtBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUNBLFNBQVNDLHlCQUFULENBQW1DQyxLQUFuQyxFQUFrRjtBQUNoRixNQUFJQSxLQUFLLENBQUNDLFFBQU4sS0FBbUIsVUFBdkIsRUFBbUM7QUFDakMsV0FBTyxLQUFQO0FBQ0Q7O0FBQ0QsTUFBSSxPQUFPSCxnQ0FBUCxLQUE0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LEtBQUssS0FBS0UsR0FBZCxFQUFtQjtBQUNqQkcsWUFBQUEsS0FBSyxDQUFDYyxjQUFOO0FBQ0Q7QUFDRjtBQUNGLE9BdkNJLENBeUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNBLFVBQUlyQyx5QkFBeUIsQ0FBQ0MsS0FBRCxDQUF6QixJQUFvQ3NCLEtBQUssQ0FBQ2UsdUJBQU4sQ0FBOEJwQyxRQUE5QixLQUEyQyxPQUFuRixFQUE0RjtBQUMxRjtBQUNBcUIsUUFBQUEsS0FBSyxDQUFDZ0IsVUFBTixDQUFpQmYsUUFBakI7QUFDRCxPQUhELE1BR087QUFDTDtBQUNBLFlBQU1sQixLQUFLLEdBQUdMLEtBQUssQ0FBQ0ssS0FBcEI7QUFDQUwsUUFBQUEsS0FBSyxDQUFDSyxLQUFOLEdBQWNBLEtBQUssQ0FBQ2tDLEtBQU4sQ0FBWSxDQUFaLEVBQWV0QixLQUFmLElBQXdCVCxJQUF4QixHQUErQkgsS0FBSyxDQUFDa0MsS0FBTixDQUFZcEIsR0FBWixDQUE3QztBQUNEO0FBQ0YsS0E1RGEsQ0E4RGQ7OztBQUNBbkIsSUFBQUEsS0FBSyxDQUFDd0MsaUJBQU4sQ0FBd0J2QixLQUFLLEdBQUdULElBQUksQ0FBQ3dCLE1BQXJDLEVBQTZDZixLQUFLLEdBQUdULElBQUksQ0FBQ3dCLE1BQTFELEVBL0RjLENBaUVkOztBQUNBLFFBQU1TLENBQUMsR0FBR3RDLFFBQVEsQ0FBQ3VDLFdBQVQsQ0FBcUIsU0FBckIsQ0FBVjtBQUNBRCxJQUFBQSxDQUFDLENBQUNFLFNBQUYsQ0FBWSxPQUFaLEVBQXFCLElBQXJCLEVBQTJCLEtBQTNCO0FBQ0EzQyxJQUFBQSxLQUFLLENBQUM0QyxhQUFOLENBQW9CSCxDQUFwQjtBQUNEO0FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBNSVQgTGljZW5zZVxuICogQ29weXJpZ2h0IChjKSAyMDE4IERtaXRyaXkgS3VieXNoa2luXG4gKiBDb3BpZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vZ3Jhc3NhdG9yL2luc2VydC10ZXh0LWF0LWN1cnNvclxuICovXG5cbmxldCBicm93c2VyU3VwcG9ydHNUZXh0YXJlYVRleHROb2RlczogYW55O1xuXG4vKipcbiAqIEBwYXJhbSB7SFRNTEVsZW1lbnR9IGlucHV0XG4gKiBAcmV0dXJuIHtib29sZWFufVxuICovXG5mdW5jdGlvbiBjYW5NYW5pcHVsYXRlVmlhVGV4dE5vZGVzKGlucHV0OiBIVE1MVGV4dEFyZWFFbGVtZW50IHwgSFRNTElucHV0RWxlbWVudCkge1xuICBpZiAoaW5wdXQubm9kZU5hbWUgIT09ICdURVhUQVJFQScpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgaWYgKHR5cGVvZiBicm93c2VyU3VwcG9ydHNUZXh0YXJlYVRleHROb2RlcyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBjb25zdCB0ZXh0YXJlYTogSFRNTFRleHRBcmVhRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RleHRhcmVhJyk7XG4gICAgdGV4dGFyZWEudmFsdWUgPSAnMSc7XG4gICAgYnJvd3NlclN1cHBvcnRzVGV4dGFyZWFUZXh0Tm9kZXMgPSAhIXRleHRhcmVhLmZpcnN0Q2hpbGQ7XG4gIH1cbiAgcmV0dXJuIGJyb3dzZXJTdXBwb3J0c1RleHRhcmVhVGV4dE5vZGVzO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7SFRNTFRleHRBcmVhRWxlbWVudHxIVE1MSW5wdXRFbGVtZW50fSBpbnB1dFxuICogQHBhcmFtIHtzdHJpbmd9IHRleHRcbiAqIEByZXR1cm5zIHt2b2lkfVxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBpbnNlcnRUZXh0QXRQb3NpdGlvbihpbnB1dDogSFRNTFRleHRBcmVhRWxlbWVudCB8IEhUTUxJbnB1dEVsZW1lbnQsIHRleHQ6IHN0cmluZykge1xuICAvLyBNb3N0IG9mIHRoZSB1c2VkIEFQSXMgb25seSB3b3JrIHdpdGggdGhlIGZpZWxkIHNlbGVjdGVkXG4gIGlucHV0LmZvY3VzKCk7XG5cbiAgLy8gSUUgOC0xMFxuICBpZiAoKGRvY3VtZW50IGFzIGFueSkuc2VsZWN0aW9uKSB7XG4gICAgY29uc3QgaWVSYW5nZSA9IChkb2N1bWVudCBhcyBhbnkpLnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpO1xuICAgIGllUmFuZ2UudGV4dCA9IHRleHQ7XG5cbiAgICAvLyBNb3ZlIGN1cnNvciBhZnRlciB0aGUgaW5zZXJ0ZWQgdGV4dFxuICAgIGllUmFuZ2UuY29sbGFwc2UoZmFsc2UgLyogdG8gdGhlIGVuZCAqLyk7XG4gICAgaWVSYW5nZS5zZWxlY3QoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIC8vIFdlYmtpdCArIEVkZ2VcbiAgY29uc3QgaXNTdWNjZXNzID0gZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2luc2VydFRleHQnLCBmYWxzZSwgdGV4dCk7XG4gIGlmICghaXNTdWNjZXNzKSB7XG4gICAgY29uc3Qgc3RhcnQgPSBpbnB1dC5zZWxlY3Rpb25TdGFydCE7XG4gICAgY29uc3QgZW5kID0gaW5wdXQuc2VsZWN0aW9uRW5kITtcbiAgICAvLyBGaXJlZm94IChub24tc3RhbmRhcmQgbWV0aG9kKVxuICAgIGlmICh0eXBlb2YgaW5wdXQuc2V0UmFuZ2VUZXh0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBpbnB1dC5zZXRSYW5nZVRleHQodGV4dCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRvIG1ha2UgYSBjaGFuZ2Ugd2UganVzdCBuZWVkIGEgUmFuZ2UsIG5vdCBhIFNlbGVjdGlvblxuICAgICAgY29uc3QgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpO1xuICAgICAgY29uc3QgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KTtcblxuICAgICAgaWYgKGNhbk1hbmlwdWxhdGVWaWFUZXh0Tm9kZXMoaW5wdXQpKSB7XG4gICAgICAgIGxldCBub2RlID0gaW5wdXQuZmlyc3RDaGlsZDtcblxuICAgICAgICAvLyBJZiB0ZXh0YXJlYSBpcyBlbXB0eSwganVzdCBpbnNlcnQgdGhlIHRleHRcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgaW5wdXQuYXBwZW5kQ2hpbGQodGV4dE5vZGUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE90aGVyd2lzZSB3ZSBuZWVkIHRvIGZpbmQgYSBub2RlcyBmb3Igc3RhcnQgYW5kIGVuZFxuICAgICAgICAgIGxldCBvZmZzZXQgPSAwO1xuICAgICAgICAgIGxldCBzdGFydE5vZGUgPSBudWxsO1xuICAgICAgICAgIGxldCBlbmROb2RlID0gbnVsbDtcblxuICAgICAgICAgIHdoaWxlIChub2RlICYmIChzdGFydE5vZGUgPT09IG51bGwgfHwgZW5kTm9kZSA9PT0gbnVsbCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vZGVMZW5ndGggPSBub2RlLm5vZGVWYWx1ZSEubGVuZ3RoO1xuXG4gICAgICAgICAgICAvLyBpZiBzdGFydCBvZiB0aGUgc2VsZWN0aW9uIGZhbGxzIGludG8gY3VycmVudCBub2RlXG4gICAgICAgICAgICBpZiAoc3RhcnQgPj0gb2Zmc2V0ICYmIHN0YXJ0IDw9IG9mZnNldCArIG5vZGVMZW5ndGgpIHtcbiAgICAgICAgICAgICAgcmFuZ2Uuc2V0U3RhcnQoKHN0YXJ0Tm9kZSA9IG5vZGUpLCBzdGFydCAtIG9mZnNldCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGlmIGVuZCBvZiB0aGUgc2VsZWN0aW9uIGZhbGxzIGludG8gY3VycmVudCBub2RlXG4gICAgICAgICAgICBpZiAoZW5kID49IG9mZnNldCAmJiBlbmQgPD0gb2Zmc2V0ICsgbm9kZUxlbmd0aCkge1xuICAgICAgICAgICAgICByYW5nZS5zZXRFbmQoKGVuZE5vZGUgPSBub2RlKSwgZW5kIC0gb2Zmc2V0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgb2Zmc2V0ICs9IG5vZGVMZW5ndGg7XG4gICAgICAgICAgICBub2RlID0gbm9kZS5uZXh0U2libGluZztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBJZiB0aGVyZSBpcyBzb21lIHRleHQgc2VsZWN0ZWQsIHJlbW92ZSBpdCBhcyB3ZSBzaG91bGQgcmVwbGFjZSBpdFxuICAgICAgICAgIGlmIChzdGFydCAhPT0gZW5kKSB7XG4gICAgICAgICAgICByYW5nZS5kZWxldGVDb250ZW50cygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgbm9kZSBpcyBhIHRleHRhcmVhIGFuZCB0aGUgcmFuZ2UgZG9lc24ndCBzcGFuIG91dHNpZGUgdGhlIGVsZW1lbnRcbiAgICAgIC8vXG4gICAgICAvLyBHZXQgdGhlIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyIG9mIHRoZSBzZWxlY3RlZCByYW5nZSBhbmQgdGVzdCBpdHMgdHlwZVxuICAgICAgLy8gSWYgdGhlIG5vZGUgaXMgb2YgdHlwZSBgI3RleHRgIGl0IG1lYW5zIHRoYXQgd2UncmUgc3RpbGwgd29ya2luZyB3aXRoIHRleHQgbm9kZXMgd2l0aGluIG91ciB0ZXh0YXJlYSBlbGVtZW50XG4gICAgICAvLyBvdGhlcndpc2UsIGlmIGl0J3Mgb2YgdHlwZSBgI2RvY3VtZW50YCBmb3IgZXhhbXBsZSBpdCBtZWFucyBvdXIgc2VsZWN0aW9uIHNwYW5zIG91dHNpZGUgdGhlIHRleHRhcmVhLlxuICAgICAgaWYgKGNhbk1hbmlwdWxhdGVWaWFUZXh0Tm9kZXMoaW5wdXQpICYmIHJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyLm5vZGVOYW1lID09PSAnI3RleHQnKSB7XG4gICAgICAgIC8vIEZpbmFsbHkgaW5zZXJ0IGEgbmV3IG5vZGUuIFRoZSBicm93c2VyIHdpbGwgYXV0b21hdGljYWxseSBzcGxpdCBzdGFydCBhbmQgZW5kIG5vZGVzIGludG8gdHdvIGlmIG5lY2Vzc2FyeVxuICAgICAgICByYW5nZS5pbnNlcnROb2RlKHRleHROb2RlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIElmIHRoZSBub2RlIGlzIG5vdCBhIHRleHRhcmVhIG9yIHRoZSByYW5nZSBzcGFucyBvdXRzaWRlIGEgdGV4dGFyZWEgdGhlIG9ubHkgd2F5IGlzIHRvIHJlcGxhY2UgdGhlIHdob2xlIHZhbHVlXG4gICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQudmFsdWU7XG4gICAgICAgIGlucHV0LnZhbHVlID0gdmFsdWUuc2xpY2UoMCwgc3RhcnQpICsgdGV4dCArIHZhbHVlLnNsaWNlKGVuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHBvc2l0aW9uIHRvIGJlIGF0IHRoZSBlbmQgb2YgdGhlIGluc2VydGlvblxuICAgIGlucHV0LnNldFNlbGVjdGlvblJhbmdlKHN0YXJ0ICsgdGV4dC5sZW5ndGgsIHN0YXJ0ICsgdGV4dC5sZW5ndGgpO1xuXG4gICAgLy8gTm90aWZ5IGFueSBwb3NzaWJsZSBsaXN0ZW5lcnMgb2YgdGhlIGNoYW5nZVxuICAgIGNvbnN0IGUgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgnVUlFdmVudCcpO1xuICAgIGUuaW5pdEV2ZW50KCdpbnB1dCcsIHRydWUsIGZhbHNlKTtcbiAgICBpbnB1dC5kaXNwYXRjaEV2ZW50KGUpO1xuICB9XG59XG4iXX0=
122
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJicm93c2VyU3VwcG9ydHNUZXh0YXJlYVRleHROb2RlcyIsImNhbk1hbmlwdWxhdGVWaWFUZXh0Tm9kZXMiLCJpbnB1dCIsIm5vZGVOYW1lIiwidGV4dGFyZWEiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJ2YWx1ZSIsImZpcnN0Q2hpbGQiLCJpbnNlcnRUZXh0QXRQb3NpdGlvbiIsInRleHQiLCJmb2N1cyIsInNlbGVjdGlvbiIsImllUmFuZ2UiLCJjcmVhdGVSYW5nZSIsImNvbGxhcHNlIiwic2VsZWN0IiwiaXNTdWNjZXNzIiwiZXhlY0NvbW1hbmQiLCJzdGFydCIsInNlbGVjdGlvblN0YXJ0IiwiZW5kIiwic2VsZWN0aW9uRW5kIiwic2V0UmFuZ2VUZXh0IiwicmFuZ2UiLCJ0ZXh0Tm9kZSIsImNyZWF0ZVRleHROb2RlIiwibm9kZSIsImFwcGVuZENoaWxkIiwib2Zmc2V0Iiwic3RhcnROb2RlIiwiZW5kTm9kZSIsIm5vZGVMZW5ndGgiLCJub2RlVmFsdWUiLCJsZW5ndGgiLCJzZXRTdGFydCIsInNldEVuZCIsIm5leHRTaWJsaW5nIiwiZGVsZXRlQ29udGVudHMiLCJjb21tb25BbmNlc3RvckNvbnRhaW5lciIsImluc2VydE5vZGUiLCJzbGljZSIsInNldFNlbGVjdGlvblJhbmdlIiwiZSIsImNyZWF0ZUV2ZW50IiwiaW5pdEV2ZW50IiwiZGlzcGF0Y2hFdmVudCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9JbnNlcnRUZXh0QXRQb3NpdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBNSVQgTGljZW5zZVxuICogQ29weXJpZ2h0IChjKSAyMDE4IERtaXRyaXkgS3VieXNoa2luXG4gKiBDb3BpZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vZ3Jhc3NhdG9yL2luc2VydC10ZXh0LWF0LWN1cnNvclxuICovXG5cbmxldCBicm93c2VyU3VwcG9ydHNUZXh0YXJlYVRleHROb2RlczogYW55O1xuXG4vKipcbiAqIEBwYXJhbSB7SFRNTEVsZW1lbnR9IGlucHV0XG4gKiBAcmV0dXJuIHtib29sZWFufVxuICovXG5mdW5jdGlvbiBjYW5NYW5pcHVsYXRlVmlhVGV4dE5vZGVzKGlucHV0OiBIVE1MVGV4dEFyZWFFbGVtZW50IHwgSFRNTElucHV0RWxlbWVudCkge1xuICBpZiAoaW5wdXQubm9kZU5hbWUgIT09ICdURVhUQVJFQScpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgaWYgKHR5cGVvZiBicm93c2VyU3VwcG9ydHNUZXh0YXJlYVRleHROb2RlcyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBjb25zdCB0ZXh0YXJlYTogSFRNTFRleHRBcmVhRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RleHRhcmVhJyk7XG4gICAgdGV4dGFyZWEudmFsdWUgPSAnMSc7XG4gICAgYnJvd3NlclN1cHBvcnRzVGV4dGFyZWFUZXh0Tm9kZXMgPSAhIXRleHRhcmVhLmZpcnN0Q2hpbGQ7XG4gIH1cbiAgcmV0dXJuIGJyb3dzZXJTdXBwb3J0c1RleHRhcmVhVGV4dE5vZGVzO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7SFRNTFRleHRBcmVhRWxlbWVudHxIVE1MSW5wdXRFbGVtZW50fSBpbnB1dFxuICogQHBhcmFtIHtzdHJpbmd9IHRleHRcbiAqIEByZXR1cm5zIHt2b2lkfVxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBpbnNlcnRUZXh0QXRQb3NpdGlvbihpbnB1dDogSFRNTFRleHRBcmVhRWxlbWVudCB8IEhUTUxJbnB1dEVsZW1lbnQsIHRleHQ6IHN0cmluZykge1xuICAvLyBNb3N0IG9mIHRoZSB1c2VkIEFQSXMgb25seSB3b3JrIHdpdGggdGhlIGZpZWxkIHNlbGVjdGVkXG4gIGlucHV0LmZvY3VzKCk7XG5cbiAgLy8gSUUgOC0xMFxuICBpZiAoKGRvY3VtZW50IGFzIGFueSkuc2VsZWN0aW9uKSB7XG4gICAgY29uc3QgaWVSYW5nZSA9IChkb2N1bWVudCBhcyBhbnkpLnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpO1xuICAgIGllUmFuZ2UudGV4dCA9IHRleHQ7XG5cbiAgICAvLyBNb3ZlIGN1cnNvciBhZnRlciB0aGUgaW5zZXJ0ZWQgdGV4dFxuICAgIGllUmFuZ2UuY29sbGFwc2UoZmFsc2UgLyogdG8gdGhlIGVuZCAqLyk7XG4gICAgaWVSYW5nZS5zZWxlY3QoKTtcblxuICAgIHJldHVybjtcbiAgfVxuXG4gIC8vIFdlYmtpdCArIEVkZ2VcbiAgY29uc3QgaXNTdWNjZXNzID0gZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2luc2VydFRleHQnLCBmYWxzZSwgdGV4dCk7XG4gIGlmICghaXNTdWNjZXNzKSB7XG4gICAgY29uc3Qgc3RhcnQgPSBpbnB1dC5zZWxlY3Rpb25TdGFydCE7XG4gICAgY29uc3QgZW5kID0gaW5wdXQuc2VsZWN0aW9uRW5kITtcbiAgICAvLyBGaXJlZm94IChub24tc3RhbmRhcmQgbWV0aG9kKVxuICAgIGlmICh0eXBlb2YgaW5wdXQuc2V0UmFuZ2VUZXh0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBpbnB1dC5zZXRSYW5nZVRleHQodGV4dCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRvIG1ha2UgYSBjaGFuZ2Ugd2UganVzdCBuZWVkIGEgUmFuZ2UsIG5vdCBhIFNlbGVjdGlvblxuICAgICAgY29uc3QgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpO1xuICAgICAgY29uc3QgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KTtcblxuICAgICAgaWYgKGNhbk1hbmlwdWxhdGVWaWFUZXh0Tm9kZXMoaW5wdXQpKSB7XG4gICAgICAgIGxldCBub2RlID0gaW5wdXQuZmlyc3RDaGlsZDtcblxuICAgICAgICAvLyBJZiB0ZXh0YXJlYSBpcyBlbXB0eSwganVzdCBpbnNlcnQgdGhlIHRleHRcbiAgICAgICAgaWYgKCFub2RlKSB7XG4gICAgICAgICAgaW5wdXQuYXBwZW5kQ2hpbGQodGV4dE5vZGUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE90aGVyd2lzZSB3ZSBuZWVkIHRvIGZpbmQgYSBub2RlcyBmb3Igc3RhcnQgYW5kIGVuZFxuICAgICAgICAgIGxldCBvZmZzZXQgPSAwO1xuICAgICAgICAgIGxldCBzdGFydE5vZGUgPSBudWxsO1xuICAgICAgICAgIGxldCBlbmROb2RlID0gbnVsbDtcblxuICAgICAgICAgIHdoaWxlIChub2RlICYmIChzdGFydE5vZGUgPT09IG51bGwgfHwgZW5kTm9kZSA9PT0gbnVsbCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vZGVMZW5ndGggPSBub2RlLm5vZGVWYWx1ZSEubGVuZ3RoO1xuXG4gICAgICAgICAgICAvLyBpZiBzdGFydCBvZiB0aGUgc2VsZWN0aW9uIGZhbGxzIGludG8gY3VycmVudCBub2RlXG4gICAgICAgICAgICBpZiAoc3RhcnQgPj0gb2Zmc2V0ICYmIHN0YXJ0IDw9IG9mZnNldCArIG5vZGVMZW5ndGgpIHtcbiAgICAgICAgICAgICAgcmFuZ2Uuc2V0U3RhcnQoKHN0YXJ0Tm9kZSA9IG5vZGUpLCBzdGFydCAtIG9mZnNldCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGlmIGVuZCBvZiB0aGUgc2VsZWN0aW9uIGZhbGxzIGludG8gY3VycmVudCBub2RlXG4gICAgICAgICAgICBpZiAoZW5kID49IG9mZnNldCAmJiBlbmQgPD0gb2Zmc2V0ICsgbm9kZUxlbmd0aCkge1xuICAgICAgICAgICAgICByYW5nZS5zZXRFbmQoKGVuZE5vZGUgPSBub2RlKSwgZW5kIC0gb2Zmc2V0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgb2Zmc2V0ICs9IG5vZGVMZW5ndGg7XG4gICAgICAgICAgICBub2RlID0gbm9kZS5uZXh0U2libGluZztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBJZiB0aGVyZSBpcyBzb21lIHRleHQgc2VsZWN0ZWQsIHJlbW92ZSBpdCBhcyB3ZSBzaG91bGQgcmVwbGFjZSBpdFxuICAgICAgICAgIGlmIChzdGFydCAhPT0gZW5kKSB7XG4gICAgICAgICAgICByYW5nZS5kZWxldGVDb250ZW50cygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgbm9kZSBpcyBhIHRleHRhcmVhIGFuZCB0aGUgcmFuZ2UgZG9lc24ndCBzcGFuIG91dHNpZGUgdGhlIGVsZW1lbnRcbiAgICAgIC8vXG4gICAgICAvLyBHZXQgdGhlIGNvbW1vbkFuY2VzdG9yQ29udGFpbmVyIG9mIHRoZSBzZWxlY3RlZCByYW5nZSBhbmQgdGVzdCBpdHMgdHlwZVxuICAgICAgLy8gSWYgdGhlIG5vZGUgaXMgb2YgdHlwZSBgI3RleHRgIGl0IG1lYW5zIHRoYXQgd2UncmUgc3RpbGwgd29ya2luZyB3aXRoIHRleHQgbm9kZXMgd2l0aGluIG91ciB0ZXh0YXJlYSBlbGVtZW50XG4gICAgICAvLyBvdGhlcndpc2UsIGlmIGl0J3Mgb2YgdHlwZSBgI2RvY3VtZW50YCBmb3IgZXhhbXBsZSBpdCBtZWFucyBvdXIgc2VsZWN0aW9uIHNwYW5zIG91dHNpZGUgdGhlIHRleHRhcmVhLlxuICAgICAgaWYgKGNhbk1hbmlwdWxhdGVWaWFUZXh0Tm9kZXMoaW5wdXQpICYmIHJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyLm5vZGVOYW1lID09PSAnI3RleHQnKSB7XG4gICAgICAgIC8vIEZpbmFsbHkgaW5zZXJ0IGEgbmV3IG5vZGUuIFRoZSBicm93c2VyIHdpbGwgYXV0b21hdGljYWxseSBzcGxpdCBzdGFydCBhbmQgZW5kIG5vZGVzIGludG8gdHdvIGlmIG5lY2Vzc2FyeVxuICAgICAgICByYW5nZS5pbnNlcnROb2RlKHRleHROb2RlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIElmIHRoZSBub2RlIGlzIG5vdCBhIHRleHRhcmVhIG9yIHRoZSByYW5nZSBzcGFucyBvdXRzaWRlIGEgdGV4dGFyZWEgdGhlIG9ubHkgd2F5IGlzIHRvIHJlcGxhY2UgdGhlIHdob2xlIHZhbHVlXG4gICAgICAgIGNvbnN0IHZhbHVlID0gaW5wdXQudmFsdWU7XG4gICAgICAgIGlucHV0LnZhbHVlID0gdmFsdWUuc2xpY2UoMCwgc3RhcnQpICsgdGV4dCArIHZhbHVlLnNsaWNlKGVuZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHBvc2l0aW9uIHRvIGJlIGF0IHRoZSBlbmQgb2YgdGhlIGluc2VydGlvblxuICAgIGlucHV0LnNldFNlbGVjdGlvblJhbmdlKHN0YXJ0ICsgdGV4dC5sZW5ndGgsIHN0YXJ0ICsgdGV4dC5sZW5ndGgpO1xuXG4gICAgLy8gTm90aWZ5IGFueSBwb3NzaWJsZSBsaXN0ZW5lcnMgb2YgdGhlIGNoYW5nZVxuICAgIGNvbnN0IGUgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgnVUlFdmVudCcpO1xuICAgIGUuaW5pdEV2ZW50KCdpbnB1dCcsIHRydWUsIGZhbHNlKTtcbiAgICBpbnB1dC5kaXNwYXRjaEV2ZW50KGUpO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsSUFBSUEsZ0NBQXFDOztBQUV6QztBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNDLHlCQUF5QixDQUFDQyxLQUE2QyxFQUFFO0VBQ2hGLElBQUlBLEtBQUssQ0FBQ0MsUUFBUSxLQUFLLFVBQVUsRUFBRTtJQUNqQyxPQUFPLEtBQUs7RUFDZDtFQUNBLElBQUksT0FBT0gsZ0NBQWdDLEtBQUssV0FBVyxFQUFFO0lBQzNELElBQU1JLFFBQTZCLEdBQUdDLFFBQVEsQ0FBQ0MsYUFBYSxDQUFDLFVBQVUsQ0FBQztJQUN4RUYsUUFBUSxDQUFDRyxLQUFLLEdBQUcsR0FBRztJQUNwQlAsZ0NBQWdDLEdBQUcsQ0FBQyxDQUFDSSxRQUFRLENBQUNJLFVBQVU7RUFDMUQ7RUFDQSxPQUFPUixnQ0FBZ0M7QUFDekM7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNlLFNBQVNTLG9CQUFvQixDQUFDUCxLQUE2QyxFQUFFUSxJQUFZLEVBQUU7RUFDeEc7RUFDQVIsS0FB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
@@ -4,39 +4,36 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = getSurroundingWord;
7
-
8
7
  function getSurroundingWord(text, position) {
9
8
  if (!text) throw Error("Argument 'text' should be truthy");
10
-
11
9
  var isWordDelimiter = function isWordDelimiter(c) {
12
10
  return c === ' ' || c.charCodeAt(0) === 10;
13
- }; // leftIndex is initialized to 0 because if selection is 0, it won't even enter the iteration
14
-
15
-
16
- var start = 0; // rightIndex is initialized to text.length because if selection is equal to text.length it won't even enter the interation
11
+ };
17
12
 
18
- var end = text.length; // iterate to the left
13
+ // leftIndex is initialized to 0 because if selection is 0, it won't even enter the iteration
14
+ var start = 0;
15
+ // rightIndex is initialized to text.length because if selection is equal to text.length it won't even enter the interation
16
+ var end = text.length;
19
17
 
18
+ // iterate to the left
20
19
  for (var i = position; i - 1 > -1; i--) {
21
20
  if (isWordDelimiter(text[i - 1])) {
22
21
  start = i;
23
22
  break;
24
23
  }
25
- } // iterate to the right
26
-
24
+ }
27
25
 
26
+ // iterate to the right
28
27
  for (var _i = position; _i < text.length; _i++) {
29
28
  if (isWordDelimiter(text[_i])) {
30
29
  end = _i;
31
30
  break;
32
31
  }
33
32
  }
34
-
35
33
  return {
36
34
  start: start,
37
35
  end: end
38
36
  };
39
37
  }
40
-
41
38
  module.exports = exports.default;
42
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9nZXRTdXJyb3VuZGluZ1dvcmQudHMiXSwibmFtZXMiOlsiZ2V0U3Vycm91bmRpbmdXb3JkIiwidGV4dCIsInBvc2l0aW9uIiwiRXJyb3IiLCJpc1dvcmREZWxpbWl0ZXIiLCJjIiwiY2hhckNvZGVBdCIsInN0YXJ0IiwiZW5kIiwibGVuZ3RoIiwiaSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUVlLFNBQVNBLGtCQUFULENBQTRCQyxJQUE1QixFQUEwQ0MsUUFBMUMsRUFBdUU7QUFDcEYsTUFBSSxDQUFDRCxJQUFMLEVBQVcsTUFBTUUsS0FBSyxDQUFDLGtDQUFELENBQVg7O0FBRVgsTUFBTUMsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixDQUFDQyxDQUFEO0FBQUEsV0FBZUEsQ0FBQyxLQUFLLEdBQU4sSUFBYUEsQ0FBQyxDQUFDQyxVQUFGLENBQWEsQ0FBYixNQUFvQixFQUFoRDtBQUFBLEdBQXhCLENBSG9GLENBS3BGOzs7QUFDQSxNQUFJQyxLQUFLLEdBQUcsQ0FBWixDQU5vRixDQU9wRjs7QUFDQSxNQUFJQyxHQUFHLEdBQUdQLElBQUksQ0FBQ1EsTUFBZixDQVJvRixDQVVwRjs7QUFDQSxPQUFLLElBQUlDLENBQUMsR0FBR1IsUUFBYixFQUF1QlEsQ0FBQyxHQUFHLENBQUosR0FBUSxDQUFDLENBQWhDLEVBQW1DQSxDQUFDLEVBQXBDLEVBQXdDO0FBQ3RDLFFBQUlOLGVBQWUsQ0FBQ0gsSUFBSSxDQUFDUyxDQUFDLEdBQUcsQ0FBTCxDQUFMLENBQW5CLEVBQWtDO0FBQ2hDSCxNQUFBQSxLQUFLLEdBQUdHLENBQVI7QUFDQTtBQUNEO0FBQ0YsR0FoQm1GLENBa0JwRjs7O0FBQ0EsT0FBSyxJQUFJQSxFQUFDLEdBQUdSLFFBQWIsRUFBdUJRLEVBQUMsR0FBR1QsSUFBSSxDQUFDUSxNQUFoQyxFQUF3Q0MsRUFBQyxFQUF6QyxFQUE2QztBQUMzQyxRQUFJTixlQUFlLENBQUNILElBQUksQ0FBQ1MsRUFBRCxDQUFMLENBQW5CLEVBQThCO0FBQzVCRixNQUFBQSxHQUFHLEdBQUdFLEVBQU47QUFDQTtBQUNEO0FBQ0Y7O0FBRUQsU0FBTztBQUFFSCxJQUFBQSxLQUFLLEVBQUxBLEtBQUY7QUFBU0MsSUFBQUEsR0FBRyxFQUFIQTtBQUFULEdBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRleHRSYW5nZSB9IGZyb20gJy4uL2NvbW1hbmRzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0U3Vycm91bmRpbmdXb3JkKHRleHQ6IHN0cmluZywgcG9zaXRpb246IG51bWJlcik6IFRleHRSYW5nZSB7XG4gIGlmICghdGV4dCkgdGhyb3cgRXJyb3IoXCJBcmd1bWVudCAndGV4dCcgc2hvdWxkIGJlIHRydXRoeVwiKTtcblxuICBjb25zdCBpc1dvcmREZWxpbWl0ZXIgPSAoYzogc3RyaW5nKSA9PiBjID09PSAnICcgfHwgYy5jaGFyQ29kZUF0KDApID09PSAxMDtcblxuICAvLyBsZWZ0SW5kZXggaXMgaW5pdGlhbGl6ZWQgdG8gMCBiZWNhdXNlIGlmIHNlbGVjdGlvbiBpcyAwLCBpdCB3b24ndCBldmVuIGVudGVyIHRoZSBpdGVyYXRpb25cbiAgbGV0IHN0YXJ0ID0gMDtcbiAgLy8gcmlnaHRJbmRleCBpcyBpbml0aWFsaXplZCB0byB0ZXh0Lmxlbmd0aCBiZWNhdXNlIGlmIHNlbGVjdGlvbiBpcyBlcXVhbCB0byB0ZXh0Lmxlbmd0aCBpdCB3b24ndCBldmVuIGVudGVyIHRoZSBpbnRlcmF0aW9uXG4gIGxldCBlbmQgPSB0ZXh0Lmxlbmd0aDtcblxuICAvLyBpdGVyYXRlIHRvIHRoZSBsZWZ0XG4gIGZvciAobGV0IGkgPSBwb3NpdGlvbjsgaSAtIDEgPiAtMTsgaS0tKSB7XG4gICAgaWYgKGlzV29yZERlbGltaXRlcih0ZXh0W2kgLSAxXSkpIHtcbiAgICAgIHN0YXJ0ID0gaTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIC8vIGl0ZXJhdGUgdG8gdGhlIHJpZ2h0XG4gIGZvciAobGV0IGkgPSBwb3NpdGlvbjsgaSA8IHRleHQubGVuZ3RoOyBpKyspIHtcbiAgICBpZiAoaXNXb3JkRGVsaW1pdGVyKHRleHRbaV0pKSB7XG4gICAgICBlbmQgPSBpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHsgc3RhcnQsIGVuZCB9O1xufVxuIl19
39
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRTdXJyb3VuZGluZ1dvcmQiLCJ0ZXh0IiwicG9zaXRpb24iLCJFcnJvciIsImlzV29yZERlbGltaXRlciIsImMiLCJjaGFyQ29kZUF0Iiwic3RhcnQiLCJlbmQiLCJsZW5ndGgiLCJpIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2dldFN1cnJvdW5kaW5nV29yZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXh0UmFuZ2UgfSBmcm9tICcuLi9jb21tYW5kcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldFN1cnJvdW5kaW5nV29yZCh0ZXh0OiBzdHJpbmcsIHBvc2l0aW9uOiBudW1iZXIpOiBUZXh0UmFuZ2Uge1xuICBpZiAoIXRleHQpIHRocm93IEVycm9yKFwiQXJndW1lbnQgJ3RleHQnIHNob3VsZCBiZSB0cnV0aHlcIik7XG5cbiAgY29uc3QgaXNXb3JkRGVsaW1pdGVyID0gKGM6IHN0cmluZykgPT4gYyA9PT0gJyAnIHx8IGMuY2hhckNvZGVBdCgwKSA9PT0gMTA7XG5cbiAgLy8gbGVmdEluZGV4IGlzIGluaXRpYWxpemVkIHRvIDAgYmVjYXVzZSBpZiBzZWxlY3Rpb24gaXMgMCwgaXQgd29uJ3QgZXZlbiBlbnRlciB0aGUgaXRlcmF0aW9uXG4gIGxldCBzdGFydCA9IDA7XG4gIC8vIHJpZ2h0SW5kZXggaXMgaW5pdGlhbGl6ZWQgdG8gdGV4dC5sZW5ndGggYmVjYXVzZSBpZiBzZWxlY3Rpb24gaXMgZXF1YWwgdG8gdGV4dC5sZW5ndGggaXQgd29uJ3QgZXZlbiBlbnRlciB0aGUgaW50ZXJhdGlvblxuICBsZXQgZW5kID0gdGV4dC5sZW5ndGg7XG5cbiAgLy8gaXRlcmF0ZSB0byB0aGUgbGVmdFxuICBmb3IgKGxldCBpID0gcG9zaXRpb247IGkgLSAxID4gLTE7IGktLSkge1xuICAgIGlmIChpc1dvcmREZWxpbWl0ZXIodGV4dFtpIC0gMV0pKSB7XG4gICAgICBzdGFydCA9IGk7XG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvLyBpdGVyYXRlIHRvIHRoZSByaWdodFxuICBmb3IgKGxldCBpID0gcG9zaXRpb247IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKGlzV29yZERlbGltaXRlcih0ZXh0W2ldKSkge1xuICAgICAgZW5kID0gaTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7IHN0YXJ0LCBlbmQgfTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRWUsU0FBU0Esa0JBQWtCLENBQUNDLElBQVksRUFBRUMsUUFBZ0IsRUFBYTtFQUNwRixJQUFJLENBQUNELElBQUksRUFBRSxNQUFNRSxLQUFLLENBQUMsa0NBQWtDLENBQUM7RUFFMUQsSUFBTUMsZUFBZSxHQUFHLFNBQWxCQSxlQUFlLENBQUlDLENBQVM7SUFBQSxPQUFLQSxDQUFDLEtBQUssR0FBRyxJQUFJQSxDQUFDLENBQUNDLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO0VBQUE7O0VBRTFFO0VBQ0EsSUFBSUMsS0FBSyxHQUFHLENBQUM7RUFDYjtFQUNBLElBQUlDLEdBQUcsR0FBR1AsSUFBSSxDQUFDUSxNQUFNOztFQUVyQjtFQUNBLEtBQUssSUFBSUMsQ0FBQyxHQUFHUixRQUFRLEVBQUVRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUVBLENBQUMsRUFBRSxFQUFFO0lBQ3RDLElBQUlOLGVBQWUsQ0FBQ0gsSUFBSSxDQUFDUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtNQUNoQ0gsS0FBSyxHQUFHRyxDQUFDO01BQ1Q7SUFDRjtFQUNGOztFQUVBO0VBQ0EsS0FBSyxJQUFJQSxFQUFDLEdBQUdSLFFBQVEsRUFBRVEsRUFBQyxHQUFHVCxJQUFJLENBQUNRLE1BQU0sRUFBRUMsRUFBQyxFQUFFLEVBQUU7SUFDM0MsSUFBSU4sZUFBZSxDQUFDSCxJQUFJLENBQUNTLEVBQUMsQ0FBQyxDQUFDLEVBQUU7TUFDNUJGLEdBQUcsR0FBR0UsRUFBQztNQUNQO0lBQ0Y7RUFDRjtFQUVBLE9BQU87SUFBRUgsS0FBSyxFQUFMQSxLQUFLO0lBQUVDLEdBQUcsRUFBSEE7RUFBSSxDQUFDO0FBQ3ZCO0FBQUMifQ==
@@ -3,4 +3,4 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbXX0=
6
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVByb3BzIHtcbiAgcHJlZml4Q2xzPzogc3RyaW5nO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG59XG4iXSwibWFwcGluZ3MiOiIifQ==
@@ -1,97 +1,86 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.selectWord = selectWord;
9
- exports.getBreaksNeededForEmptyLineBefore = getBreaksNeededForEmptyLineBefore;
10
7
  exports.getBreaksNeededForEmptyLineAfter = getBreaksNeededForEmptyLineAfter;
11
-
8
+ exports.getBreaksNeededForEmptyLineBefore = getBreaksNeededForEmptyLineBefore;
9
+ exports.selectWord = selectWord;
12
10
  var _getSurroundingWord = _interopRequireDefault(require("./getSurroundingWord"));
13
-
14
11
  function selectWord(_ref) {
15
12
  var text = _ref.text,
16
- selection = _ref.selection;
17
-
13
+ selection = _ref.selection;
18
14
  if (text && text.length && selection.start === selection.end) {
19
15
  // the user is pointing to a word
20
16
  return (0, _getSurroundingWord.default)(text, selection.start);
21
17
  }
22
-
23
18
  return selection;
24
19
  }
20
+
25
21
  /**
26
22
  * Gets the number of line-breaks that would have to be inserted before the given 'startPosition'
27
23
  * to make sure there's an empty line between 'startPosition' and the previous text
28
24
  */
29
-
30
-
31
25
  function getBreaksNeededForEmptyLineBefore() {
32
26
  var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
33
27
  var startPosition = arguments.length > 1 ? arguments[1] : undefined;
34
- if (startPosition === 0) return 0; // rules:
28
+ if (startPosition === 0) return 0;
29
+
30
+ // rules:
35
31
  // - If we're in the first line, no breaks are needed
36
32
  // - Otherwise there must be 2 breaks before the previous character. Depending on how many breaks exist already, we
37
33
  // may need to insert 0, 1 or 2 breaks
38
34
 
39
35
  var neededBreaks = 2;
40
36
  var isInFirstLine = true;
41
-
42
37
  for (var i = startPosition - 1; i >= 0 && neededBreaks >= 0; i--) {
43
38
  switch (text.charCodeAt(i)) {
44
39
  case 32:
45
40
  // blank space
46
41
  continue;
47
-
48
42
  case 10:
49
43
  // line break
50
44
  neededBreaks--;
51
45
  isInFirstLine = false;
52
46
  break;
53
-
54
47
  default:
55
48
  return neededBreaks;
56
49
  }
57
50
  }
58
-
59
51
  return isInFirstLine ? 0 : neededBreaks;
60
52
  }
53
+
61
54
  /**
62
55
  * Gets the number of line-breaks that would have to be inserted after the given 'startPosition'
63
56
  * to make sure there's an empty line between 'startPosition' and the next text
64
57
  */
65
-
66
-
67
58
  function getBreaksNeededForEmptyLineAfter() {
68
59
  var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
69
60
  var startPosition = arguments.length > 1 ? arguments[1] : undefined;
70
- if (startPosition === text.length - 1) return 0; // rules:
61
+ if (startPosition === text.length - 1) return 0;
62
+
63
+ // rules:
71
64
  // - If we're in the first line, no breaks are needed
72
65
  // - Otherwise there must be 2 breaks before the previous character. Depending on how many breaks exist already, we
73
66
  // may need to insert 0, 1 or 2 breaks
74
67
 
75
68
  var neededBreaks = 2;
76
69
  var isInLastLine = true;
77
-
78
70
  for (var i = startPosition; i < text.length && neededBreaks >= 0; i++) {
79
71
  switch (text.charCodeAt(i)) {
80
72
  case 32:
81
73
  continue;
82
-
83
74
  case 10:
84
75
  {
85
76
  neededBreaks--;
86
77
  isInLastLine = false;
87
78
  break;
88
79
  }
89
-
90
80
  default:
91
81
  return neededBreaks;
92
82
  }
93
83
  }
94
-
95
84
  return isInLastLine ? 0 : neededBreaks;
96
85
  }
97
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9tYXJrZG93blV0aWxzLnRzIl0sIm5hbWVzIjpbInNlbGVjdFdvcmQiLCJ0ZXh0Iiwic2VsZWN0aW9uIiwibGVuZ3RoIiwic3RhcnQiLCJlbmQiLCJnZXRCcmVha3NOZWVkZWRGb3JFbXB0eUxpbmVCZWZvcmUiLCJzdGFydFBvc2l0aW9uIiwibmVlZGVkQnJlYWtzIiwiaXNJbkZpcnN0TGluZSIsImkiLCJjaGFyQ29kZUF0IiwiZ2V0QnJlYWtzTmVlZGVkRm9yRW1wdHlMaW5lQWZ0ZXIiLCJpc0luTGFzdExpbmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQ0E7O0FBT08sU0FBU0EsVUFBVCxPQUFpRTtBQUFBLE1BQTNDQyxJQUEyQyxRQUEzQ0EsSUFBMkM7QUFBQSxNQUFyQ0MsU0FBcUMsUUFBckNBLFNBQXFDOztBQUN0RSxNQUFJRCxJQUFJLElBQUlBLElBQUksQ0FBQ0UsTUFBYixJQUF1QkQsU0FBUyxDQUFDRSxLQUFWLEtBQW9CRixTQUFTLENBQUNHLEdBQXpELEVBQThEO0FBQzVEO0FBQ0EsV0FBTyxpQ0FBbUJKLElBQW5CLEVBQXlCQyxTQUFTLENBQUNFLEtBQW5DLENBQVA7QUFDRDs7QUFDRCxTQUFPRixTQUFQO0FBQ0Q7QUFFRDtBQUNBO0FBQ0E7QUFDQTs7O0FBQ08sU0FBU0ksaUNBQVQsR0FBcUY7QUFBQSxNQUExQ0wsSUFBMEMsdUVBQW5DLEVBQW1DO0FBQUEsTUFBL0JNLGFBQStCO0FBQzFGLE1BQUlBLGFBQWEsS0FBSyxDQUF0QixFQUF5QixPQUFPLENBQVAsQ0FEaUUsQ0FHMUY7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsTUFBSUMsWUFBWSxHQUFHLENBQW5CO0FBQ0EsTUFBSUMsYUFBYSxHQUFHLElBQXBCOztBQUNBLE9BQUssSUFBSUMsQ0FBQyxHQUFHSCxhQUFhLEdBQUcsQ0FBN0IsRUFBZ0NHLENBQUMsSUFBSSxDQUFMLElBQVVGLFlBQVksSUFBSSxDQUExRCxFQUE2REUsQ0FBQyxFQUE5RCxFQUFrRTtBQUNoRSxZQUFRVCxJQUFJLENBQUNVLFVBQUwsQ0FBZ0JELENBQWhCLENBQVI7QUFDRSxXQUFLLEVBQUw7QUFBUztBQUNQOztBQUNGLFdBQUssRUFBTDtBQUFTO0FBQ1BGLFFBQUFBLFlBQVk7QUFDWkMsUUFBQUEsYUFBYSxHQUFHLEtBQWhCO0FBQ0E7O0FBQ0Y7QUFDRSxlQUFPRCxZQUFQO0FBUko7QUFVRDs7QUFDRCxTQUFPQyxhQUFhLEdBQUcsQ0FBSCxHQUFPRCxZQUEzQjtBQUNEO0FBRUQ7QUFDQTtBQUNBO0FBQ0E7OztBQUNPLFNBQVNJLGdDQUFULEdBQW9GO0FBQUEsTUFBMUNYLElBQTBDLHVFQUFuQyxFQUFtQztBQUFBLE1BQS9CTSxhQUErQjtBQUN6RixNQUFJQSxhQUFhLEtBQUtOLElBQUksQ0FBQ0UsTUFBTCxHQUFjLENBQXBDLEVBQXVDLE9BQU8sQ0FBUCxDQURrRCxDQUd6RjtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxNQUFJSyxZQUFZLEdBQUcsQ0FBbkI7QUFDQSxNQUFJSyxZQUFZLEdBQUcsSUFBbkI7O0FBQ0EsT0FBSyxJQUFJSCxDQUFDLEdBQUdILGFBQWIsRUFBNEJHLENBQUMsR0FBR1QsSUFBSSxDQUFDRSxNQUFULElBQW1CSyxZQUFZLElBQUksQ0FBL0QsRUFBa0VFLENBQUMsRUFBbkUsRUFBdUU7QUFDckUsWUFBUVQsSUFBSSxDQUFDVSxVQUFMLENBQWdCRCxDQUFoQixDQUFSO0FBQ0UsV0FBSyxFQUFMO0FBQ0U7O0FBQ0YsV0FBSyxFQUFMO0FBQVM7QUFDUEYsVUFBQUEsWUFBWTtBQUNaSyxVQUFBQSxZQUFZLEdBQUcsS0FBZjtBQUNBO0FBQ0Q7O0FBQ0Q7QUFDRSxlQUFPTCxZQUFQO0FBVEo7QUFXRDs7QUFDRCxTQUFPSyxZQUFZLEdBQUcsQ0FBSCxHQUFPTCxZQUExQjtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGV4dFJhbmdlIH0gZnJvbSAnLi4vY29tbWFuZHMnO1xuaW1wb3J0IGdldFN1cnJvdW5kaW5nV29yZCBmcm9tICcuL2dldFN1cnJvdW5kaW5nV29yZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGV4dFNlY3Rpb24ge1xuICB0ZXh0OiBzdHJpbmc7XG4gIHNlbGVjdGlvbjogVGV4dFJhbmdlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2VsZWN0V29yZCh7IHRleHQsIHNlbGVjdGlvbiB9OiBUZXh0U2VjdGlvbik6IFRleHRSYW5nZSB7XG4gIGlmICh0ZXh0ICYmIHRleHQubGVuZ3RoICYmIHNlbGVjdGlvbi5zdGFydCA9PT0gc2VsZWN0aW9uLmVuZCkge1xuICAgIC8vIHRoZSB1c2VyIGlzIHBvaW50aW5nIHRvIGEgd29yZFxuICAgIHJldHVybiBnZXRTdXJyb3VuZGluZ1dvcmQodGV4dCwgc2VsZWN0aW9uLnN0YXJ0KTtcbiAgfVxuICByZXR1cm4gc2VsZWN0aW9uO1xufVxuXG4vKipcbiAqICBHZXRzIHRoZSBudW1iZXIgb2YgbGluZS1icmVha3MgdGhhdCB3b3VsZCBoYXZlIHRvIGJlIGluc2VydGVkIGJlZm9yZSB0aGUgZ2l2ZW4gJ3N0YXJ0UG9zaXRpb24nXG4gKiAgdG8gbWFrZSBzdXJlIHRoZXJlJ3MgYW4gZW1wdHkgbGluZSBiZXR3ZWVuICdzdGFydFBvc2l0aW9uJyBhbmQgdGhlIHByZXZpb3VzIHRleHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJyZWFrc05lZWRlZEZvckVtcHR5TGluZUJlZm9yZSh0ZXh0ID0gJycsIHN0YXJ0UG9zaXRpb246IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChzdGFydFBvc2l0aW9uID09PSAwKSByZXR1cm4gMDtcblxuICAvLyBydWxlczpcbiAgLy8gLSBJZiB3ZSdyZSBpbiB0aGUgZmlyc3QgbGluZSwgbm8gYnJlYWtzIGFyZSBuZWVkZWRcbiAgLy8gLSBPdGhlcndpc2UgdGhlcmUgbXVzdCBiZSAyIGJyZWFrcyBiZWZvcmUgdGhlIHByZXZpb3VzIGNoYXJhY3Rlci4gRGVwZW5kaW5nIG9uIGhvdyBtYW55IGJyZWFrcyBleGlzdCBhbHJlYWR5LCB3ZVxuICAvLyAgICAgIG1heSBuZWVkIHRvIGluc2VydCAwLCAxIG9yIDIgYnJlYWtzXG5cbiAgbGV0IG5lZWRlZEJyZWFrcyA9IDI7XG4gIGxldCBpc0luRmlyc3RMaW5lID0gdHJ1ZTtcbiAgZm9yIChsZXQgaSA9IHN0YXJ0UG9zaXRpb24gLSAxOyBpID49IDAgJiYgbmVlZGVkQnJlYWtzID49IDA7IGktLSkge1xuICAgIHN3aXRjaCAodGV4dC5jaGFyQ29kZUF0KGkpKSB7XG4gICAgICBjYXNlIDMyOiAvLyBibGFuayBzcGFjZVxuICAgICAgICBjb250aW51ZTtcbiAgICAgIGNhc2UgMTA6IC8vIGxpbmUgYnJlYWtcbiAgICAgICAgbmVlZGVkQnJlYWtzLS07XG4gICAgICAgIGlzSW5GaXJzdExpbmUgPSBmYWxzZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbmVlZGVkQnJlYWtzO1xuICAgIH1cbiAgfVxuICByZXR1cm4gaXNJbkZpcnN0TGluZSA/IDAgOiBuZWVkZWRCcmVha3M7XG59XG5cbi8qKlxuICogIEdldHMgdGhlIG51bWJlciBvZiBsaW5lLWJyZWFrcyB0aGF0IHdvdWxkIGhhdmUgdG8gYmUgaW5zZXJ0ZWQgYWZ0ZXIgdGhlIGdpdmVuICdzdGFydFBvc2l0aW9uJ1xuICogIHRvIG1ha2Ugc3VyZSB0aGVyZSdzIGFuIGVtcHR5IGxpbmUgYmV0d2VlbiAnc3RhcnRQb3NpdGlvbicgYW5kIHRoZSBuZXh0IHRleHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJyZWFrc05lZWRlZEZvckVtcHR5TGluZUFmdGVyKHRleHQgPSAnJywgc3RhcnRQb3NpdGlvbjogbnVtYmVyKTogbnVtYmVyIHtcbiAgaWYgKHN0YXJ0UG9zaXRpb24gPT09IHRleHQubGVuZ3RoIC0gMSkgcmV0dXJuIDA7XG5cbiAgLy8gcnVsZXM6XG4gIC8vIC0gSWYgd2UncmUgaW4gdGhlIGZpcnN0IGxpbmUsIG5vIGJyZWFrcyBhcmUgbmVlZGVkXG4gIC8vIC0gT3RoZXJ3aXNlIHRoZXJlIG11c3QgYmUgMiBicmVha3MgYmVmb3JlIHRoZSBwcmV2aW91cyBjaGFyYWN0ZXIuIERlcGVuZGluZyBvbiBob3cgbWFueSBicmVha3MgZXhpc3QgYWxyZWFkeSwgd2VcbiAgLy8gICAgICBtYXkgbmVlZCB0byBpbnNlcnQgMCwgMSBvciAyIGJyZWFrc1xuXG4gIGxldCBuZWVkZWRCcmVha3MgPSAyO1xuICBsZXQgaXNJbkxhc3RMaW5lID0gdHJ1ZTtcbiAgZm9yIChsZXQgaSA9IHN0YXJ0UG9zaXRpb247IGkgPCB0ZXh0Lmxlbmd0aCAmJiBuZWVkZWRCcmVha3MgPj0gMDsgaSsrKSB7XG4gICAgc3dpdGNoICh0ZXh0LmNoYXJDb2RlQXQoaSkpIHtcbiAgICAgIGNhc2UgMzI6XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgY2FzZSAxMDoge1xuICAgICAgICBuZWVkZWRCcmVha3MtLTtcbiAgICAgICAgaXNJbkxhc3RMaW5lID0gZmFsc2U7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG5lZWRlZEJyZWFrcztcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGlzSW5MYXN0TGluZSA/IDAgOiBuZWVkZWRCcmVha3M7XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzZWxlY3RXb3JkIiwidGV4dCIsInNlbGVjdGlvbiIsImxlbmd0aCIsInN0YXJ0IiwiZW5kIiwiZ2V0U3Vycm91bmRpbmdXb3JkIiwiZ2V0QnJlYWtzTmVlZGVkRm9yRW1wdHlMaW5lQmVmb3JlIiwic3RhcnRQb3NpdGlvbiIsIm5lZWRlZEJyZWFrcyIsImlzSW5GaXJzdExpbmUiLCJpIiwiY2hhckNvZGVBdCIsImdldEJyZWFrc05lZWRlZEZvckVtcHR5TGluZUFmdGVyIiwiaXNJbkxhc3RMaW5lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL21hcmtkb3duVXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGV4dFJhbmdlIH0gZnJvbSAnLi4vY29tbWFuZHMnO1xuaW1wb3J0IGdldFN1cnJvdW5kaW5nV29yZCBmcm9tICcuL2dldFN1cnJvdW5kaW5nV29yZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGV4dFNlY3Rpb24ge1xuICB0ZXh0OiBzdHJpbmc7XG4gIHNlbGVjdGlvbjogVGV4dFJhbmdlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2VsZWN0V29yZCh7IHRleHQsIHNlbGVjdGlvbiB9OiBUZXh0U2VjdGlvbik6IFRleHRSYW5nZSB7XG4gIGlmICh0ZXh0ICYmIHRleHQubGVuZ3RoICYmIHNlbGVjdGlvbi5zdGFydCA9PT0gc2VsZWN0aW9uLmVuZCkge1xuICAgIC8vIHRoZSB1c2VyIGlzIHBvaW50aW5nIHRvIGEgd29yZFxuICAgIHJldHVybiBnZXRTdXJyb3VuZGluZ1dvcmQodGV4dCwgc2VsZWN0aW9uLnN0YXJ0KTtcbiAgfVxuICByZXR1cm4gc2VsZWN0aW9uO1xufVxuXG4vKipcbiAqICBHZXRzIHRoZSBudW1iZXIgb2YgbGluZS1icmVha3MgdGhhdCB3b3VsZCBoYXZlIHRvIGJlIGluc2VydGVkIGJlZm9yZSB0aGUgZ2l2ZW4gJ3N0YXJ0UG9zaXRpb24nXG4gKiAgdG8gbWFrZSBzdXJlIHRoZXJlJ3MgYW4gZW1wdHkgbGluZSBiZXR3ZWVuICdzdGFydFBvc2l0aW9uJyBhbmQgdGhlIHByZXZpb3VzIHRleHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJyZWFrc05lZWRlZEZvckVtcHR5TGluZUJlZm9yZSh0ZXh0ID0gJycsIHN0YXJ0UG9zaXRpb246IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChzdGFydFBvc2l0aW9uID09PSAwKSByZXR1cm4gMDtcblxuICAvLyBydWxlczpcbiAgLy8gLSBJZiB3ZSdyZSBpbiB0aGUgZmlyc3QgbGluZSwgbm8gYnJlYWtzIGFyZSBuZWVkZWRcbiAgLy8gLSBPdGhlcndpc2UgdGhlcmUgbXVzdCBiZSAyIGJyZWFrcyBiZWZvcmUgdGhlIHByZXZpb3VzIGNoYXJhY3Rlci4gRGVwZW5kaW5nIG9uIGhvdyBtYW55IGJyZWFrcyBleGlzdCBhbHJlYWR5LCB3ZVxuICAvLyAgICAgIG1heSBuZWVkIHRvIGluc2VydCAwLCAxIG9yIDIgYnJlYWtzXG5cbiAgbGV0IG5lZWRlZEJyZWFrcyA9IDI7XG4gIGxldCBpc0luRmlyc3RMaW5lID0gdHJ1ZTtcbiAgZm9yIChsZXQgaSA9IHN0YXJ0UG9zaXRpb24gLSAxOyBpID49IDAgJiYgbmVlZGVkQnJlYWtzID49IDA7IGktLSkge1xuICAgIHN3aXRjaCAodGV4dC5jaGFyQ29kZUF0KGkpKSB7XG4gICAgICBjYXNlIDMyOiAvLyBibGFuayBzcGFjZVxuICAgICAgICBjb250aW51ZTtcbiAgICAgIGNhc2UgMTA6IC8vIGxpbmUgYnJlYWtcbiAgICAgICAgbmVlZGVkQnJlYWtzLS07XG4gICAgICAgIGlzSW5GaXJzdExpbmUgPSBmYWxzZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gbmVlZGVkQnJlYWtzO1xuICAgIH1cbiAgfVxuICByZXR1cm4gaXNJbkZpcnN0TGluZSA/IDAgOiBuZWVkZWRCcmVha3M7XG59XG5cbi8qKlxuICogIEdldHMgdGhlIG51bWJlciBvZiBsaW5lLWJyZWFrcyB0aGF0IHdvdWxkIGhhdmUgdG8gYmUgaW5zZXJ0ZWQgYWZ0ZXIgdGhlIGdpdmVuICdzdGFydFBvc2l0aW9uJ1xuICogIHRvIG1ha2Ugc3VyZSB0aGVyZSdzIGFuIGVtcHR5IGxpbmUgYmV0d2VlbiAnc3RhcnRQb3NpdGlvbicgYW5kIHRoZSBuZXh0IHRleHRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJyZWFrc05lZWRlZEZvckVtcHR5TGluZUFmdGVyKHRleHQgPSAnJywgc3RhcnRQb3NpdGlvbjogbnVtYmVyKTogbnVtYmVyIHtcbiAgaWYgKHN0YXJ0UG9zaXRpb24gPT09IHRleHQubGVuZ3RoIC0gMSkgcmV0dXJuIDA7XG5cbiAgLy8gcnVsZXM6XG4gIC8vIC0gSWYgd2UncmUgaW4gdGhlIGZpcnN0IGxpbmUsIG5vIGJyZWFrcyBhcmUgbmVlZGVkXG4gIC8vIC0gT3RoZXJ3aXNlIHRoZXJlIG11c3QgYmUgMiBicmVha3MgYmVmb3JlIHRoZSBwcmV2aW91cyBjaGFyYWN0ZXIuIERlcGVuZGluZyBvbiBob3cgbWFueSBicmVha3MgZXhpc3QgYWxyZWFkeSwgd2VcbiAgLy8gICAgICBtYXkgbmVlZCB0byBpbnNlcnQgMCwgMSBvciAyIGJyZWFrc1xuXG4gIGxldCBuZWVkZWRCcmVha3MgPSAyO1xuICBsZXQgaXNJbkxhc3RMaW5lID0gdHJ1ZTtcbiAgZm9yIChsZXQgaSA9IHN0YXJ0UG9zaXRpb247IGkgPCB0ZXh0Lmxlbmd0aCAmJiBuZWVkZWRCcmVha3MgPj0gMDsgaSsrKSB7XG4gICAgc3dpdGNoICh0ZXh0LmNoYXJDb2RlQXQoaSkpIHtcbiAgICAgIGNhc2UgMzI6XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgY2FzZSAxMDoge1xuICAgICAgICBuZWVkZWRCcmVha3MtLTtcbiAgICAgICAgaXNJbkxhc3RMaW5lID0gZmFsc2U7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG5lZWRlZEJyZWFrcztcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGlzSW5MYXN0TGluZSA/IDAgOiBuZWVkZWRCcmVha3M7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBO0FBT08sU0FBU0EsVUFBVSxPQUE4QztFQUFBLElBQTNDQyxJQUFJLFFBQUpBLElBQUk7SUFBRUMsU0FBUyxRQUFUQSxTQUFTO0VBQzFDLElBQUlELElBQUksSUFBSUEsSUFBSSxDQUFDRSxNQUFNLElBQUlELFNBQVMsQ0FBQ0UsS0FBSyxLQUFLRixTQUFTLENBQUNHLEdBQUcsRUFBRTtJQUM1RDtJQUNBLE9BQU8sSUFBQUMsMkJBQWtCLEVBQUNMLElBQUksRUFBRUMsU0FBUyxDQUFDRSxLQUFLLENBQUM7RUFDbEQ7RUFDQSxPQUFPRixTQUFTO0FBQ2xCOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sU0FBU0ssaUNBQWlDLEdBQTJDO0VBQUEsSUFBMUNOLElBQUksdUVBQUcsRUFBRTtFQUFBLElBQUVPLGFBQXFCO0VBQ2hGLElBQUlBLGFBQWEsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDOztFQUVqQztFQUNBO0VBQ0E7RUFDQTs7RUFFQSxJQUFJQyxZQUFZLEdBQUcsQ0FBQztFQUNwQixJQUFJQyxhQUFhLEdBQUcsSUFBSTtFQUN4QixLQUFLLElBQUlDLENBQUMsR0FBR0gsYUFBYSxHQUFHLENBQUMsRUFBRUcsQ0FBQyxJQUFJLENBQUMsSUFBSUYsWUFBWSxJQUFJLENBQUMsRUFBRUUsQ0FBQyxFQUFFLEVBQUU7SUFDaEUsUUFBUVYsSUFBSSxDQUFDVyxVQUFVLENBQUNELENBQUMsQ0FBQztNQUN4QixLQUFLLEVBQUU7UUFBRTtRQUNQO01BQ0YsS0FBSyxFQUFFO1FBQUU7UUFDUEYsWUFBWSxFQUFFO1FBQ2RDLGFBQWEsR0FBRyxLQUFLO1FBQ3JCO01BQ0Y7UUFDRSxPQUFPRCxZQUFZO0lBQUM7RUFFMUI7RUFDQSxPQUFPQyxhQUFhLEdBQUcsQ0FBQyxHQUFHRCxZQUFZO0FBQ3pDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sU0FBU0ksZ0NBQWdDLEdBQTJDO0VBQUEsSUFBMUNaLElBQUksdUVBQUcsRUFBRTtFQUFBLElBQUVPLGFBQXFCO0VBQy9FLElBQUlBLGFBQWEsS0FBS1AsSUFBSSxDQUFDRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLE9BQU8sQ0FBQzs7RUFFL0M7RUFDQTtFQUNBO0VBQ0E7O0VBRUEsSUFBSU0sWUFBWSxHQUFHLENBQUM7RUFDcEIsSUFBSUssWUFBWSxHQUFHLElBQUk7RUFDdkIsS0FBSyxJQUFJSCxDQUFDLEdBQUdILGFBQWEsRUFBRUcsQ0FBQyxHQUFHVixJQUFJLENBQUNFLE1BQU0sSUFBSU0sWUFBWSxJQUFJLENBQUMsRUFBRUUsQ0FBQyxFQUFFLEVBQUU7SUFDckUsUUFBUVYsSUFBSSxDQUFDVyxVQUFVLENBQUNELENBQUMsQ0FBQztNQUN4QixLQUFLLEVBQUU7UUFDTDtNQUNGLEtBQUssRUFBRTtRQUFFO1VBQ1BGLFlBQVksRUFBRTtVQUNkSyxZQUFZLEdBQUcsS0FBSztVQUNwQjtRQUNGO01BQ0E7UUFDRSxPQUFPTCxZQUFZO0lBQUM7RUFFMUI7RUFDQSxPQUFPSyxZQUFZLEdBQUcsQ0FBQyxHQUFHTCxZQUFZO0FBQ3hDIn0=
@@ -6,4 +6,4 @@ export function reducer(state, action) {
6
6
  export var EditorContext = /*#__PURE__*/React.createContext({
7
7
  markdown: ''
8
8
  });
9
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Db250ZXh0LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsInJlZHVjZXIiLCJzdGF0ZSIsImFjdGlvbiIsIkVkaXRvckNvbnRleHQiLCJjcmVhdGVDb250ZXh0IiwibWFya2Rvd24iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPQSxLQUFQLE1BQWtCLE9BQWxCO0FBNkJBLE9BQU8sU0FBU0MsT0FBVCxDQUFpQkMsS0FBakIsRUFBc0NDLE1BQXRDLEVBQTREO0FBQ2pFLHlDQUFZRCxLQUFaLEdBQXNCQyxNQUF0QjtBQUNEO0FBRUQsT0FBTyxJQUFNQyxhQUFhLGdCQUFHSixLQUFLLENBQUNLLGFBQU4sQ0FBa0M7QUFBRUMsRUFBQUEsUUFBUSxFQUFFO0FBQVosQ0FBbEMsQ0FBdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSUNvbW1hbmQsIFRleHRBcmVhQ29tbWFuZE9yY2hlc3RyYXRvciB9IGZyb20gJy4vY29tbWFuZHMnO1xuXG5leHBvcnQgdHlwZSBQcmV2aWV3VHlwZSA9ICdsaXZlJyB8ICdlZGl0JyB8ICdwcmV2aWV3JztcblxuZXhwb3J0IHR5cGUgQ29udGV4dFN0b3JlID0ge1xuICBjb21tYW5kcz86IElDb21tYW5kPHN0cmluZz5bXTtcbiAgZXh0cmFDb21tYW5kcz86IElDb21tYW5kPHN0cmluZz5bXTtcbiAgbWFya2Rvd24/OiBzdHJpbmc7XG4gIHByZXZpZXc/OiBQcmV2aWV3VHlwZTtcbiAgaGVpZ2h0PzogbnVtYmVyO1xuICBmdWxsc2NyZWVuPzogYm9vbGVhbjtcbiAgaGlnaGxpZ2h0RW5hYmxlPzogYm9vbGVhbjtcbiAgYXV0b0ZvY3VzPzogYm9vbGVhbjtcbiAgb25DaGFuZ2U/OiAodmFsdWU/OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHRleHRhcmVhPzogSFRNTFRleHRBcmVhRWxlbWVudDtcbiAgY29tbWFuZE9yY2hlc3RyYXRvcj86IFRleHRBcmVhQ29tbWFuZE9yY2hlc3RyYXRvcjtcbiAgdGV4dGFyZWFXYXJwPzogSFRNTERpdkVsZW1lbnQ7XG4gIHRleHRhcmVhUHJlPzogSFRNTFByZUVsZW1lbnQ7XG4gIGNvbnRhaW5lcj86IEhUTUxEaXZFbGVtZW50IHwgbnVsbDtcbiAgZGlzcGF0Y2g/OiBSZWFjdC5EaXNwYXRjaDxDb250ZXh0U3RvcmU+O1xuICBiYXJQb3B1cD86IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+O1xuICBzY3JvbGxUb3A/OiBudW1iZXI7XG4gIHNjcm9sbFRvcFByZXZpZXc/OiBudW1iZXI7XG4gIHRhYlNpemU/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBFeGVjdXRlQ29tbWFuZFN0YXRlID0gUGljazxDb250ZXh0U3RvcmUsICdmdWxsc2NyZWVuJyB8ICdwcmV2aWV3JyB8ICdoaWdobGlnaHRFbmFibGUnPjtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZHVjZXIoc3RhdGU6IENvbnRleHRTdG9yZSwgYWN0aW9uOiBDb250ZXh0U3RvcmUpIHtcbiAgcmV0dXJuIHsgLi4uc3RhdGUsIC4uLmFjdGlvbiB9O1xufVxuXG5leHBvcnQgY29uc3QgRWRpdG9yQ29udGV4dCA9IFJlYWN0LmNyZWF0ZUNvbnRleHQ8Q29udGV4dFN0b3JlPih7IG1hcmtkb3duOiAnJyB9KTtcbiJdfQ==
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInJlZHVjZXIiLCJzdGF0ZSIsImFjdGlvbiIsIkVkaXRvckNvbnRleHQiLCJjcmVhdGVDb250ZXh0IiwibWFya2Rvd24iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvQ29udGV4dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IElDb21tYW5kLCBUZXh0QXJlYUNvbW1hbmRPcmNoZXN0cmF0b3IgfSBmcm9tICcuL2NvbW1hbmRzJztcblxuZXhwb3J0IHR5cGUgUHJldmlld1R5cGUgPSAnbGl2ZScgfCAnZWRpdCcgfCAncHJldmlldyc7XG5cbmV4cG9ydCB0eXBlIENvbnRleHRTdG9yZSA9IHtcbiAgY29tbWFuZHM/OiBJQ29tbWFuZDxzdHJpbmc+W107XG4gIGV4dHJhQ29tbWFuZHM/OiBJQ29tbWFuZDxzdHJpbmc+W107XG4gIG1hcmtkb3duPzogc3RyaW5nO1xuICBwcmV2aWV3PzogUHJldmlld1R5cGU7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgZnVsbHNjcmVlbj86IGJvb2xlYW47XG4gIGhpZ2hsaWdodEVuYWJsZT86IGJvb2xlYW47XG4gIGF1dG9Gb2N1cz86IGJvb2xlYW47XG4gIG9uQ2hhbmdlPzogKHZhbHVlPzogc3RyaW5nKSA9PiB2b2lkO1xuICB0ZXh0YXJlYT86IEhUTUxUZXh0QXJlYUVsZW1lbnQ7XG4gIGNvbW1hbmRPcmNoZXN0cmF0b3I/OiBUZXh0QXJlYUNvbW1hbmRPcmNoZXN0cmF0b3I7XG4gIHRleHRhcmVhV2FycD86IEhUTUxEaXZFbGVtZW50O1xuICB0ZXh0YXJlYVByZT86IEhUTUxQcmVFbGVtZW50O1xuICBjb250YWluZXI/OiBIVE1MRGl2RWxlbWVudCB8IG51bGw7XG4gIGRpc3BhdGNoPzogUmVhY3QuRGlzcGF0Y2g8Q29udGV4dFN0b3JlPjtcbiAgYmFyUG9wdXA/OiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPjtcbiAgc2Nyb2xsVG9wPzogbnVtYmVyO1xuICBzY3JvbGxUb3BQcmV2aWV3PzogbnVtYmVyO1xuICB0YWJTaXplPzogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgRXhlY3V0ZUNvbW1hbmRTdGF0ZSA9IFBpY2s8Q29udGV4dFN0b3JlLCAnZnVsbHNjcmVlbicgfCAncHJldmlldycgfCAnaGlnaGxpZ2h0RW5hYmxlJz47XG5cbmV4cG9ydCBmdW5jdGlvbiByZWR1Y2VyKHN0YXRlOiBDb250ZXh0U3RvcmUsIGFjdGlvbjogQ29udGV4dFN0b3JlKSB7XG4gIHJldHVybiB7IC4uLnN0YXRlLCAuLi5hY3Rpb24gfTtcbn1cblxuZXhwb3J0IGNvbnN0IEVkaXRvckNvbnRleHQgPSBSZWFjdC5jcmVhdGVDb250ZXh0PENvbnRleHRTdG9yZT4oeyBtYXJrZG93bjogJycgfSk7XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPQSxLQUFLLE1BQU0sT0FBTztBQTZCekIsT0FBTyxTQUFTQyxPQUFPLENBQUNDLEtBQW1CLEVBQUVDLE1BQW9CLEVBQUU7RUFDakUsdUNBQVlELEtBQUssR0FBS0MsTUFBTTtBQUM5QjtBQUVBLE9BQU8sSUFBTUMsYUFBYSxnQkFBR0osS0FBSyxDQUFDSyxhQUFhLENBQWU7RUFBRUMsUUFBUSxFQUFFO0FBQUcsQ0FBQyxDQUFDIn0=