소스 검색

Added control over whether Markdown table created by HandsontableModal should be formatted or not.

Ryu Sato 5 년 전
부모
커밋
4be28a944b
2개의 변경된 파일11개의 추가작업 그리고 1개의 파일을 삭제
  1. 5 0
      src/client/js/components/PageEditor/CodeMirrorEditor.jsx
  2. 6 1
      src/client/js/components/PageEditor/HandsontableModal.jsx

+ 5 - 0
src/client/js/components/PageEditor/CodeMirrorEditor.jsx

@@ -823,6 +823,10 @@ export default class CodeMirrorEditor extends AbstractEditor {
 
     const placeholder = this.state.isGfmMode ? 'Input with Markdown..' : 'Input with Plane Text..';
 
+    const markdownTableOption = {
+      pad: this.props.editorOptions.formattingMarkdownTable === true,
+    };
+
     return (
       <React.Fragment>
 
@@ -898,6 +902,7 @@ export default class CodeMirrorEditor extends AbstractEditor {
         <HandsontableModal
           ref={this.handsontableModal}
           onSave={(table) => { return mtu.replaceFocusedMarkdownTableWithEditor(this.getCodeMirror(), table) }}
+          markdownTableAdditionalOption={markdownTableOption}
         />
         <DrawioModal
           ref={this.drawioModal}

+ 6 - 1
src/client/js/components/PageEditor/HandsontableModal.jsx

@@ -156,9 +156,13 @@ export default class HandsontableModal extends React.PureComponent {
   }
 
   save() {
+    const markdownTableOption = Object.assign(
+      { align: [].concat(this.state.markdownTable.options.align) },
+      this.props.markdownTableAdditionalOption,
+    );
     const markdownTable = new MarkdownTable(
       this.hotTable.hotInstance.getData(),
-      { align: [].concat(this.state.markdownTable.options.align) },
+      markdownTableOption,
     ).normalizeCells();
 
     if (this.props.onSave != null) {
@@ -504,4 +508,5 @@ export default class HandsontableModal extends React.PureComponent {
 
 HandsontableModal.propTypes = {
   onSave: PropTypes.func,
+  markdownTableAdditionalOption: PropTypes.object,
 };