@mirrormedia/lilith-draft-editor 1.1.0-alpha.1 → 1.1.0-alpha.3

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 (72) hide show
  1. package/lib/draft-js/buttons/annotation.js +0 -22
  2. package/lib/draft-js/buttons/audio.js +52 -0
  3. package/lib/draft-js/buttons/background-color.js +0 -26
  4. package/lib/draft-js/buttons/background-image.js +13 -32
  5. package/lib/draft-js/buttons/background-video.js +13 -32
  6. package/lib/draft-js/buttons/color-box.js +5 -21
  7. package/lib/draft-js/buttons/divider.js +3 -12
  8. package/lib/draft-js/buttons/embedded-code.js +5 -16
  9. package/lib/draft-js/buttons/enlarge.js +0 -3
  10. package/lib/draft-js/buttons/font-color.js +0 -26
  11. package/lib/draft-js/buttons/image.js +5 -16
  12. package/lib/draft-js/buttons/info-box.js +5 -21
  13. package/lib/draft-js/buttons/link.js +0 -19
  14. package/lib/draft-js/buttons/media.js +3 -16
  15. package/lib/draft-js/buttons/related-post.js +3 -14
  16. package/lib/draft-js/buttons/selector/align-selector.js +2 -11
  17. package/lib/draft-js/buttons/selector/audio-selector.js +252 -0
  18. package/lib/draft-js/buttons/selector/image-selector.js +6 -50
  19. package/lib/draft-js/buttons/selector/pagination.js +2 -6
  20. package/lib/draft-js/buttons/selector/post-selector.js +6 -39
  21. package/lib/draft-js/buttons/selector/search-box.js +0 -9
  22. package/lib/draft-js/buttons/selector/video-selector.js +4 -33
  23. package/lib/draft-js/buttons/side-index.js +15 -31
  24. package/lib/draft-js/buttons/slideshow.js +7 -16
  25. package/lib/draft-js/buttons/table.js +5 -11
  26. package/lib/draft-js/buttons/text-align.js +0 -14
  27. package/lib/draft-js/buttons/video.js +52 -0
  28. package/lib/draft-js/const.js +0 -2
  29. package/lib/draft-js/draft-converter/api-data-instance.js +0 -14
  30. package/lib/draft-js/draft-converter/atomic-block-processor.js +12 -41
  31. package/lib/draft-js/draft-converter/entities.js +1 -0
  32. package/lib/draft-js/draft-converter/index.js +10 -29
  33. package/lib/draft-js/draft-converter/inline-styles-processor.js +22 -55
  34. package/lib/draft-js/modifier.js +5 -13
  35. package/lib/index.js +0 -4
  36. package/lib/website/mirrormedia/block-renderer/background-image-block.js +2 -14
  37. package/lib/website/mirrormedia/block-renderer/background-video-block.js +2 -14
  38. package/lib/website/mirrormedia/block-renderer/color-box-block.js +2 -14
  39. package/lib/website/mirrormedia/block-renderer/embedded-code-block.js +3 -12
  40. package/lib/website/mirrormedia/block-renderer/info-box-block.js +2 -14
  41. package/lib/website/mirrormedia/block-renderer/side-index-block.js +2 -13
  42. package/lib/website/mirrormedia/block-renderer/slideshow-block.js +4 -11
  43. package/lib/website/mirrormedia/block-renderer/table-block.js +28 -62
  44. package/lib/website/mirrormedia/block-renderer-fn.js +11 -29
  45. package/lib/website/mirrormedia/draft-editor.js +31 -105
  46. package/lib/website/mirrormedia/entity-decorator.js +0 -4
  47. package/lib/website/mirrormedia/index.js +0 -3
  48. package/lib/website/mirrormedia/selector/align-selector.js +2 -11
  49. package/lib/website/mirrormedia/selector/audio-selector.js +252 -0
  50. package/lib/website/mirrormedia/selector/image-selector.js +10 -50
  51. package/lib/website/mirrormedia/selector/pagination.js +2 -6
  52. package/lib/website/mirrormedia/selector/post-selector.js +6 -39
  53. package/lib/website/mirrormedia/selector/search-box.js +0 -9
  54. package/lib/website/mirrormedia/selector/video-selector.js +8 -33
  55. package/lib/website/readr/block-renderer/background-image-block.js +2 -14
  56. package/lib/website/readr/block-renderer/background-video-block.js +2 -14
  57. package/lib/website/readr/block-renderer/color-box-block.js +2 -14
  58. package/lib/website/readr/block-renderer/info-box-block.js +2 -14
  59. package/lib/website/readr/block-renderer/side-index-block.js +2 -13
  60. package/lib/website/readr/block-renderer/table-block.js +28 -62
  61. package/lib/website/readr/block-renderer-fn.js +11 -27
  62. package/lib/website/readr/draft-editor.js +31 -105
  63. package/lib/website/readr/entity-decorator.js +0 -4
  64. package/lib/website/readr/index.js +0 -3
  65. package/lib/website/readr/selector/align-selector.js +2 -11
  66. package/lib/website/readr/selector/audio-selector.js +252 -0
  67. package/lib/website/readr/selector/image-selector.js +10 -50
  68. package/lib/website/readr/selector/pagination.js +2 -6
  69. package/lib/website/readr/selector/post-selector.js +6 -39
  70. package/lib/website/readr/selector/search-box.js +0 -9
  71. package/lib/website/readr/selector/video-selector.js +8 -33
  72. package/package.json +2 -2
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.EmbeddedCodeButton = EmbeddedCodeButton;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _draftJs = require("draft-js");
11
-
12
9
  var _modals = require("@keystone-ui/modals");
13
-
14
10
  var _fields = require("@keystone-ui/fields");
15
-
16
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
-
18
12
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
-
20
13
  function EmbeddedCodeButton(props) {
21
14
  const {
22
15
  editorState,
@@ -28,7 +21,6 @@ function EmbeddedCodeButton(props) {
28
21
  caption: '',
29
22
  embeddedCode: ''
30
23
  });
31
-
32
24
  const promptForInput = () => {
33
25
  setToShowInput(true);
34
26
  setInputValue({
@@ -36,18 +28,16 @@ function EmbeddedCodeButton(props) {
36
28
  embeddedCode: ''
37
29
  });
38
30
  };
39
-
40
31
  const confirmInput = () => {
41
32
  const contentState = editorState.getCurrentContent();
42
33
  const contentStateWithEntity = contentState.createEntity('EMBEDDEDCODE', 'IMMUTABLE', inputValue);
43
34
  const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
44
-
45
35
  const newEditorState = _draftJs.EditorState.set(editorState, {
46
36
  currentContent: contentStateWithEntity
47
- }); // The third parameter here is a space string, not an empty string
48
- // If you set an empty string, you will get an error: Unknown DraftEntity key: null
49
-
37
+ });
50
38
 
39
+ // The third parameter here is a space string, not an empty string
40
+ // If you set an empty string, you will get an error: Unknown DraftEntity key: null
51
41
  onChange(_draftJs.AtomicBlockUtils.insertAtomicBlock(newEditorState, entityKey, ' '));
52
42
  setToShowInput(false);
53
43
  setInputValue({
@@ -55,11 +45,11 @@ function EmbeddedCodeButton(props) {
55
45
  embeddedCode: ''
56
46
  });
57
47
  };
58
-
59
48
  const input = /*#__PURE__*/_react.default.createElement(_modals.DrawerController, {
60
49
  isOpen: toShowInput
61
50
  }, /*#__PURE__*/_react.default.createElement(_modals.Drawer, {
62
- title: `Insert Embedded Code` //isOpen={toShowInput}
51
+ title: `Insert Embedded Code`
52
+ //isOpen={toShowInput}
63
53
  ,
64
54
  actions: {
65
55
  cancel: {
@@ -97,7 +87,6 @@ function EmbeddedCodeButton(props) {
97
87
  marginBottom: '30px'
98
88
  }
99
89
  })));
100
-
101
90
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, input, /*#__PURE__*/_react.default.createElement("div", {
102
91
  onClick: () => {
103
92
  promptForInput();
@@ -4,11 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.EnlargeButton = EnlargeButton;
7
-
8
7
  var _react = _interopRequireDefault(require("react"));
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
9
  function EnlargeButton(props) {
13
10
  const {
14
11
  onToggle,
@@ -4,33 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.FontColorButton = FontColorButton;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _modals = require("@keystone-ui/modals");
11
-
12
9
  var _draftJs = require("draft-js");
13
-
14
10
  var _fields = require("@keystone-ui/fields");
15
-
16
11
  var _styledComponents = _interopRequireDefault(require("styled-components"));
17
-
18
12
  var _modifier = require("../modifier");
19
-
20
13
  var _const = require("../const");
21
-
22
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
-
24
15
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
-
26
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
-
28
17
  const ColorHexInput = (0, _styledComponents.default)(_fields.TextInput)`
29
18
  font-family: Georgia, serif;
30
19
  margin-right: 10px;
31
20
  padding: 10px;
32
21
  `;
33
-
34
22
  function FontColorButton(props) {
35
23
  const {
36
24
  isActive,
@@ -39,53 +27,40 @@ function FontColorButton(props) {
39
27
  } = props;
40
28
  const [toShowColorInput, setToShowColorInput] = (0, _react.useState)(false);
41
29
  const [colorValue, setColorValue] = (0, _react.useState)('');
42
-
43
30
  const promptForColor = e => {
44
31
  e.preventDefault();
45
32
  const selection = editorState.getSelection();
46
-
47
33
  if (!selection.isCollapsed()) {
48
34
  setToShowColorInput(true);
49
35
  }
50
36
  };
51
-
52
37
  const confirmColor = () => {
53
38
  const selection = editorState.getSelection();
54
39
  const contentState = editorState.getCurrentContent();
55
-
56
40
  let newContentState = _modifier.Modifier.removeInlineStyleByPrefix(contentState, selection, _const.CUSTOM_STYLE_PREFIX_FONT_COLOR);
57
-
58
41
  if (colorValue) {
59
42
  newContentState = _modifier.Modifier.applyInlineStyle(newContentState, selection, _const.CUSTOM_STYLE_PREFIX_FONT_COLOR + colorValue);
60
43
  }
61
-
62
44
  onChange(_draftJs.EditorState.push(editorState, newContentState, 'change-inline-style'));
63
45
  setToShowColorInput(false);
64
46
  setColorValue('');
65
47
  };
66
-
67
48
  const onColorInputKeyDown = e => {
68
49
  if (e.which === 13) {
69
50
  e.preventDefault();
70
51
  confirmColor();
71
52
  }
72
53
  };
73
-
74
54
  const removeColor = () => {
75
55
  const selection = editorState.getSelection();
76
-
77
56
  if (!selection.isCollapsed()) {
78
57
  const contentState = editorState.getCurrentContent();
79
-
80
58
  const newContentState = _modifier.Modifier.removeInlineStyleByPrefix(contentState, selection, _const.CUSTOM_STYLE_PREFIX_FONT_COLOR);
81
-
82
59
  onChange(_draftJs.EditorState.push(editorState, newContentState, 'change-inline-style'));
83
60
  }
84
-
85
61
  setToShowColorInput(false);
86
62
  setColorValue('');
87
63
  };
88
-
89
64
  const colorInput = /*#__PURE__*/_react.default.createElement(_modals.AlertDialog, {
90
65
  title: "Hex Color Code (#ffffff)",
91
66
  isOpen: toShowColorInput,
@@ -105,7 +80,6 @@ function FontColorButton(props) {
105
80
  value: colorValue,
106
81
  onKeyDown: onColorInputKeyDown
107
82
  }));
108
-
109
83
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, colorInput, /*#__PURE__*/_react.default.createElement("div", {
110
84
  className: props.className,
111
85
  onMouseDown: isActive ? removeColor : promptForColor
@@ -4,17 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ImageButton = ImageButton;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _draftJs = require("draft-js");
11
-
12
9
  var _imageSelector = require("./selector/image-selector");
13
-
14
10
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
-
16
11
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
-
18
12
  function ImageButton(props) {
19
13
  const {
20
14
  editorState,
@@ -23,37 +17,32 @@ function ImageButton(props) {
23
17
  ImageSelector = _imageSelector.ImageSelector
24
18
  } = props;
25
19
  const [toShowImageSelector, setToShowImageSelector] = (0, _react.useState)(false);
26
-
27
20
  const promptForImageSelector = () => {
28
21
  setToShowImageSelector(true);
29
22
  };
30
-
31
23
  const onImageSelectorChange = (selectedImagesWithMeta, align) => {
32
24
  const selected = selectedImagesWithMeta === null || selectedImagesWithMeta === void 0 ? void 0 : selectedImagesWithMeta[0];
33
-
34
25
  if (!selected) {
35
26
  setToShowImageSelector(false);
36
27
  return;
37
28
  }
38
-
39
29
  const contentState = editorState.getCurrentContent();
40
- const contentStateWithEntity = contentState.createEntity('image', 'IMMUTABLE', { ...(selected === null || selected === void 0 ? void 0 : selected.image),
30
+ const contentStateWithEntity = contentState.createEntity('image', 'IMMUTABLE', {
31
+ ...(selected === null || selected === void 0 ? void 0 : selected.image),
41
32
  desc: selected === null || selected === void 0 ? void 0 : selected.desc,
42
33
  url: selected === null || selected === void 0 ? void 0 : selected.url,
43
34
  alignment: align
44
35
  });
45
36
  const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
46
-
47
37
  const newEditorState = _draftJs.EditorState.set(editorState, {
48
38
  currentContent: contentStateWithEntity
49
- }); // The third parameter here is a space string, not an empty string
50
- // If you set an empty string, you will get an error: Unknown DraftEntity key: null
51
-
39
+ });
52
40
 
41
+ // The third parameter here is a space string, not an empty string
42
+ // If you set an empty string, you will get an error: Unknown DraftEntity key: null
53
43
  onChange(_draftJs.AtomicBlockUtils.insertAtomicBlock(newEditorState, entityKey, ' '));
54
44
  setToShowImageSelector(false);
55
45
  };
56
-
57
46
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, toShowImageSelector && /*#__PURE__*/_react.default.createElement(ImageSelector, {
58
47
  onChange: onImageSelectorChange,
59
48
  enableCaption: true,
@@ -5,30 +5,19 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.InfoBoxButton = InfoBoxButton;
7
7
  exports.InfoBoxInput = InfoBoxInput;
8
-
9
8
  var _react = _interopRequireWildcard(require("react"));
10
-
11
9
  var _draftJs = require("draft-js");
12
-
13
10
  var _modals = require("@keystone-ui/modals");
14
-
15
11
  var _fields = require("@keystone-ui/fields");
16
-
17
12
  var _draftConverter = _interopRequireDefault(require("../draft-converter"));
18
-
19
13
  var _styledComponents = _interopRequireDefault(require("styled-components"));
20
-
21
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
-
23
15
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
-
25
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
-
27
17
  const TitleInput = (0, _styledComponents.default)(_fields.TextInput)`
28
18
  margin-top: 30px;
29
19
  margin-bottom: 10px;
30
20
  `;
31
-
32
21
  function InfoBoxInput(props) {
33
22
  const {
34
23
  isOpen,
@@ -49,11 +38,9 @@ function InfoBoxInput(props) {
49
38
  editorStateOfBasicEditor: _draftJs.EditorState.createWithContent((0, _draftJs.convertFromRaw)(rawContentState), decorators)
50
39
  };
51
40
  const [inputValue, setInputValue] = (0, _react.useState)(initialInputValue);
52
-
53
41
  const clearInputValue = () => {
54
42
  setInputValue(initialInputValue);
55
43
  };
56
-
57
44
  const basicEditorJsx = renderBasicEditor({
58
45
  editorState: inputValue.editorStateOfBasicEditor,
59
46
  onChange: editorStateOfBasicEditor => {
@@ -97,7 +84,6 @@ function InfoBoxInput(props) {
97
84
  value: inputValue.title
98
85
  }), basicEditorJsx));
99
86
  }
100
-
101
87
  function InfoBoxButton(props) {
102
88
  const [toShowInput, setToShowInput] = (0, _react.useState)(false);
103
89
  const {
@@ -106,30 +92,28 @@ function InfoBoxButton(props) {
106
92
  onChange: onEditorStateChange,
107
93
  renderBasicEditor
108
94
  } = props;
109
-
110
95
  const onChange = ({
111
96
  title,
112
97
  rawContentState
113
98
  }) => {
114
- const contentState = editorState.getCurrentContent(); // create an InfoBox entity
99
+ const contentState = editorState.getCurrentContent();
115
100
 
101
+ // create an InfoBox entity
116
102
  const contentStateWithEntity = contentState.createEntity('INFOBOX', 'IMMUTABLE', {
117
103
  title,
118
104
  rawContentState,
119
105
  body: _draftConverter.default.convertToHtml(rawContentState)
120
106
  });
121
107
  const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
122
-
123
108
  const newEditorState = _draftJs.EditorState.set(editorState, {
124
109
  currentContent: contentStateWithEntity
125
- }); //The third parameter here is a space string, not an empty string
126
- //If you set an empty string, you will get an error: Unknown DraftEntity key: null
127
-
110
+ });
128
111
 
112
+ //The third parameter here is a space string, not an empty string
113
+ //If you set an empty string, you will get an error: Unknown DraftEntity key: null
129
114
  onEditorStateChange(_draftJs.AtomicBlockUtils.insertAtomicBlock(newEditorState, entityKey, ' '));
130
115
  setToShowInput(false);
131
116
  };
132
-
133
117
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(InfoBoxInput, {
134
118
  renderBasicEditor: renderBasicEditor,
135
119
  onChange: onChange,
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.LinkButton = LinkButton;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _modals = require("@keystone-ui/modals");
11
-
12
9
  var _draftJs = require("draft-js");
13
-
14
10
  var _fields = require("@keystone-ui/fields");
15
-
16
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
-
18
12
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
-
20
13
  const styles = {
21
14
  urlInput: {
22
15
  fontFamily: "'Georgia', serif",
@@ -24,7 +17,6 @@ const styles = {
24
17
  padding: 10
25
18
  }
26
19
  };
27
-
28
20
  function LinkButton(props) {
29
21
  const {
30
22
  isActive,
@@ -33,50 +25,40 @@ function LinkButton(props) {
33
25
  } = props;
34
26
  const [toShowUrlInput, setToShowUrlInput] = (0, _react.useState)(false);
35
27
  const [urlValue, setUrlValue] = (0, _react.useState)('');
36
-
37
28
  const promptForLink = e => {
38
29
  e.preventDefault();
39
30
  const selection = editorState.getSelection();
40
-
41
31
  if (!selection.isCollapsed()) {
42
32
  setToShowUrlInput(true);
43
33
  }
44
34
  };
45
-
46
35
  const confirmLink = () => {
47
36
  const contentState = editorState.getCurrentContent();
48
37
  const contentStateWithEntity = contentState.createEntity('LINK', 'MUTABLE', {
49
38
  url: urlValue
50
39
  });
51
40
  const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
52
-
53
41
  const newEditorState = _draftJs.EditorState.set(editorState, {
54
42
  currentContent: contentStateWithEntity
55
43
  });
56
-
57
44
  onChange(_draftJs.RichUtils.toggleLink(newEditorState, newEditorState.getSelection(), entityKey));
58
45
  setToShowUrlInput(false);
59
46
  setUrlValue('');
60
47
  };
61
-
62
48
  const onLinkInputKeyDown = e => {
63
49
  if (e.which === 13) {
64
50
  e.preventDefault();
65
51
  confirmLink();
66
52
  }
67
53
  };
68
-
69
54
  const removeLink = () => {
70
55
  const selection = editorState.getSelection();
71
-
72
56
  if (!selection.isCollapsed()) {
73
57
  onChange(_draftJs.RichUtils.toggleLink(editorState, selection, null));
74
58
  }
75
-
76
59
  setToShowUrlInput(false);
77
60
  setUrlValue('');
78
61
  };
79
-
80
62
  const urlInput = /*#__PURE__*/_react.default.createElement(_modals.AlertDialog, {
81
63
  title: "Insert LINK",
82
64
  isOpen: toShowUrlInput,
@@ -97,7 +79,6 @@ function LinkButton(props) {
97
79
  value: urlValue,
98
80
  onKeyDown: onLinkInputKeyDown
99
81
  }));
100
-
101
82
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, urlInput, /*#__PURE__*/_react.default.createElement("div", {
102
83
  className: props.className,
103
84
  onMouseDown: isActive ? removeLink : promptForLink
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.MediaButton = MediaButton;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _modals = require("@keystone-ui/modals");
11
-
12
9
  var _draftJs = require("draft-js");
13
-
14
10
  var _fields = require("@keystone-ui/fields");
15
-
16
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
-
18
12
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
-
20
13
  const styles = {
21
14
  buttons: {
22
15
  marginBottom: 10,
@@ -36,7 +29,6 @@ const styles = {
36
29
  cursor: 'pointer'
37
30
  }
38
31
  };
39
-
40
32
  function MediaButton(props) {
41
33
  const {
42
34
  editorState,
@@ -46,31 +38,27 @@ function MediaButton(props) {
46
38
  const [toShowUrlInput, setToShowUrlInput] = (0, _react.useState)(false);
47
39
  const [urlValue, setUrlValue] = (0, _react.useState)('');
48
40
  const [urlType, setUrlType] = (0, _react.useState)('');
49
-
50
41
  const promptForMedia = mediaType => {
51
42
  setToShowUrlInput(true);
52
43
  setUrlValue('');
53
44
  setUrlType(mediaType);
54
45
  };
55
-
56
46
  const confirmMedia = () => {
57
47
  const contentState = editorState.getCurrentContent();
58
48
  const contentStateWithEntity = contentState.createEntity(urlType, 'IMMUTABLE', {
59
49
  src: urlValue
60
50
  });
61
51
  const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
62
-
63
52
  const newEditorState = _draftJs.EditorState.set(editorState, {
64
53
  currentContent: contentStateWithEntity
65
- }); // The third parameter here is a space string, not an empty string
66
- // If you set an empty string, you will get an error: Unknown DraftEntity key: null
67
-
54
+ });
68
55
 
56
+ // The third parameter here is a space string, not an empty string
57
+ // If you set an empty string, you will get an error: Unknown DraftEntity key: null
69
58
  onChange(_draftJs.AtomicBlockUtils.insertAtomicBlock(newEditorState, entityKey, ' '));
70
59
  setToShowUrlInput(false);
71
60
  setUrlType('');
72
61
  };
73
-
74
62
  const urlInput = /*#__PURE__*/_react.default.createElement(_modals.AlertDialog, {
75
63
  title: `Insert ${urlType.toUpperCase()} LINK`,
76
64
  isOpen: toShowUrlInput,
@@ -93,7 +81,6 @@ function MediaButton(props) {
93
81
  type: "text",
94
82
  value: urlValue
95
83
  }));
96
-
97
84
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, urlInput, /*#__PURE__*/_react.default.createElement("div", {
98
85
  style: styles.buttons
99
86
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -4,17 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.RelatedPostButton = RelatedPostButton;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _draftJs = require("draft-js");
11
-
12
9
  var _postSelector = require("./selector/post-selector");
13
-
14
10
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
-
16
11
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
-
18
12
  function RelatedPostButton(props) {
19
13
  const {
20
14
  editorState,
@@ -23,33 +17,28 @@ function RelatedPostButton(props) {
23
17
  PostSelector = _postSelector.PostSelector
24
18
  } = props;
25
19
  const [toShowPostSelector, setToShowPostSelector] = (0, _react.useState)(false);
26
-
27
20
  const promptForPostSelector = () => {
28
21
  setToShowPostSelector(true);
29
22
  };
30
-
31
23
  const onPostSelectorChange = selected => {
32
24
  if (!selected.length) {
33
25
  setToShowPostSelector(false);
34
26
  return;
35
27
  }
36
-
37
28
  const contentState = editorState.getCurrentContent();
38
29
  const contentStateWithEntity = contentState.createEntity('RELATEDPOST', 'IMMUTABLE', {
39
30
  posts: selected.map(ele => ele.post)
40
31
  });
41
32
  const entityKey = contentStateWithEntity.getLastCreatedEntityKey();
42
-
43
33
  const newEditorState = _draftJs.EditorState.set(editorState, {
44
34
  currentContent: contentStateWithEntity
45
- }); // The third parameter here is a space string, not an empty string
46
- // If you set an empty string, you will get an error: Unknown DraftEntity key: null
47
-
35
+ });
48
36
 
37
+ // The third parameter here is a space string, not an empty string
38
+ // If you set an empty string, you will get an error: Unknown DraftEntity key: null
49
39
  onChange(_draftJs.AtomicBlockUtils.insertAtomicBlock(newEditorState, entityKey, ' '));
50
40
  setToShowPostSelector(false);
51
41
  };
52
-
53
42
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, toShowPostSelector && /*#__PURE__*/_react.default.createElement(PostSelector, {
54
43
  onChange: onPostSelectorChange,
55
44
  enableMultiSelect: true,
@@ -4,19 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.AlignSelector = AlignSelector;
7
-
8
7
  var _react = _interopRequireWildcard(require("react"));
9
-
10
8
  var _styledComponents = _interopRequireDefault(require("styled-components"));
11
-
12
9
  var _fields = require("@keystone-ui/fields");
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
-
18
12
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
-
20
13
  const Label = _styledComponents.default.label`
21
14
  display: block;
22
15
  margin: 10px 0;
@@ -29,7 +22,6 @@ const AlignSelect = (0, _styledComponents.default)(_fields.Select)`
29
22
  return `margin-bottom: ${menuHeight}px;`;
30
23
  }}
31
24
  `;
32
-
33
25
  function AlignSelector(props) {
34
26
  const [isOpen, setIsOpen] = (0, _react.useState)(false);
35
27
  const [menuHeight, setMenuHeight] = (0, _react.useState)(0);
@@ -41,7 +33,6 @@ function AlignSelector(props) {
41
33
  } = props;
42
34
  (0, _react.useEffect)(() => {
43
35
  const selectMenu = document.querySelector('.css-nabggt-menu');
44
-
45
36
  if (selectMenu) {
46
37
  const styles = window.getComputedStyle(selectMenu);
47
38
  const margin = parseFloat(styles['marginTop']) + parseFloat(styles['marginBottom']);
@@ -49,7 +40,6 @@ function AlignSelector(props) {
49
40
  } else {
50
41
  setMenuHeight(0);
51
42
  }
52
-
53
43
  if (isOpen && onOpen) {
54
44
  onOpen();
55
45
  }
@@ -57,7 +47,8 @@ function AlignSelector(props) {
57
47
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Label, {
58
48
  htmlFor: "alignment"
59
49
  }, "\u5C0D\u9F4A"), /*#__PURE__*/_react.default.createElement(AlignSelect, {
60
- id: "alignment" // default align === undefined
50
+ id: "alignment"
51
+ // default align === undefined
61
52
  ,
62
53
  value: options.find(option => option.value === align),
63
54
  options: options,