No Description

index.js 4.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. 'use strict';
  2. Object.defineProperty(exports, '__esModule', { value: true });
  3. function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
  4. var React = require('react');
  5. var React__default = _interopDefault(React);
  6. var styleInject_es = require('../style-inject.es-dcee06b6.js');
  7. var defineProperty = require('../defineProperty-ba7cd53d.js');
  8. var index = require('../index-4c407188.js');
  9. var slicedToArray = require('../slicedToArray-172f4624.js');
  10. var BraftEditor = _interopDefault(require('braft-editor'));
  11. require('braft-editor/dist/index.css');
  12. require('braft-extensions/dist/emoticon.css');
  13. var Emoticon = require('braft-extensions/dist/emoticon');
  14. var Emoticon__default = _interopDefault(Emoticon);
  15. var MaxLength = _interopDefault(require('braft-extensions/dist/max-length'));
  16. var css = ".index_baseWrapper__1_-58 {\n position: relative;\n}\n.index_baseWrapper__1_-58 .bf-container {\n display: flex;\n flex-direction: column;\n}\n.index_baseWrapper__1_-58 .bf-container .index_controlBar__3SzSH {\n box-shadow: none;\n}\n.index_baseWrapper__1_-58 .bf-container .index_editorContent__2UOaX {\n border: 1px solid #ccc;\n border-radius: 4px;\n height: auto;\n transition: border-color 0.3s;\n}\n.index_baseWrapper__1_-58 .bf-container .index_editorContent__2UOaX.index_focus__puDJA {\n border-color: #1790ff;\n}\n";
  17. var styles = {
  18. "baseWrapper": "index_baseWrapper__1_-58",
  19. "controlBar": "index_controlBar__3SzSH",
  20. "editorContent": "index_editorContent__2UOaX",
  21. "focus": "index_focus__puDJA"
  22. };
  23. styleInject_es.styleInject(css);
  24. var lengthOptions = {
  25. defaultValue: 100
  26. };
  27. BraftEditor.use(MaxLength(lengthOptions));
  28. var emoticons = Emoticon.defaultEmoticons.map(function (item) {
  29. return require("braft-extensions/dist/assets/".concat(item));
  30. });
  31. var emotionOptions = {
  32. emoticons: emoticons,
  33. closeOnBlur: true,
  34. closeOnSelect: false
  35. };
  36. BraftEditor.use(Emoticon__default(emotionOptions));
  37. var BarftEditorPage = function BarftEditorPage(_ref) {
  38. var value = _ref.value,
  39. onChange = _ref.onChange,
  40. controls = _ref.controls,
  41. _ref$contentStyle = _ref.contentStyle,
  42. contentStyle = _ref$contentStyle === void 0 ? {} : _ref$contentStyle,
  43. draftProps = _ref.draftProps,
  44. placeholder = _ref.placeholder,
  45. blockRenderMap = _ref.blockRenderMap,
  46. blockRendererFn = _ref.blockRendererFn,
  47. blockStyleFn = _ref.blockStyleFn,
  48. onDelete = _ref.onDelete,
  49. onSave = _ref.onSave,
  50. onTab = _ref.onTab,
  51. _onFocus = _ref.onFocus,
  52. _onBlur = _ref.onBlur,
  53. converts = _ref.converts;
  54. var optionsControls = controls ? controls : ["bold", "italic", "underline", "separator", "link", "emoji", "separator", "media"];
  55. var options = {
  56. controls: optionsControls,
  57. showControlsBar: optionsControls && optionsControls.length > 0
  58. };
  59. var _useState = React.useState(false),
  60. _useState2 = slicedToArray._slicedToArray(_useState, 2),
  61. focusState = _useState2[0],
  62. setFocusState = _useState2[1];
  63. return React__default.createElement("div", {
  64. className: styles.baseWrapper
  65. }, React__default.createElement(BraftEditor, Object.assign({
  66. value: value,
  67. onChange: onChange,
  68. controls: options.controls,
  69. controlBarClassName: index.classnames(styles.controlBar, defineProperty._defineProperty({}, styles.focus, focusState)),
  70. controlBarStyle: options.showControlsBar ? {} : {
  71. display: "none"
  72. },
  73. contentClassName: index.classnames(styles.editorContent, defineProperty._defineProperty({}, styles.focus, focusState)),
  74. contentStyle: contentStyle,
  75. onFocus: function onFocus() {
  76. setFocusState(true);
  77. _onFocus && _onFocus();
  78. },
  79. onBlur: function onBlur() {
  80. setFocusState(false);
  81. _onBlur && _onBlur();
  82. },
  83. hooks: {
  84. "toggle-link": function toggleLink(_ref2) {
  85. var href = _ref2.href,
  86. target = _ref2.target;
  87. href = href.indexOf("http") === 0 ? href : "http://".concat(href);
  88. return {
  89. href: href,
  90. target: target
  91. };
  92. }
  93. }
  94. }, {
  95. blockRenderMap: blockRenderMap,
  96. blockRendererFn: blockRendererFn,
  97. blockStyleFn: blockStyleFn,
  98. converts: converts,
  99. placeholder: placeholder,
  100. draftProps: draftProps,
  101. onDelete: onDelete,
  102. onSave: onSave,
  103. onTab: onTab,
  104. onBlur: _onBlur
  105. })));
  106. };
  107. exports.BarftEditorPage = BarftEditorPage;
  108. exports.default = BarftEditorPage;
  109. //# sourceMappingURL=index.js.map