저장된 문서들의 추가/삭제된 이력을 비교할 수 있는 플러그인입니다.

사용방법

플러그인 파일 불러오기

<!-- SynapEditor 객체가 존재해야 적용할 수 있기 때문에 에디터 스크립트 파일 아래에 include 해야 합니다 -->

<script src="documentComparison.min.js의 url"></script>

UI

플러그인 이름인 'documentComparison'을 사용하여 툴바 영역에 버튼을 추가할 수 있습니다.

툴바에 추가

//...
'editor.toolbar': [
    //...,
    'documentComparison',
    //...
],
// ...

메뉴에 추가

//...
'editor.menu.definition': {
	//...,
	'tools': [
		//...,
		'documentComparison',
		//...
	],
	//...
},
//...

플러그인 설정하기

사용 가능한 키

Key


Type

필수

설명

list

url

string

O

  • 요청을 보낼 URL을 설정합니다.

    • 저장된 문서 목록 리스트를 가져오는 API 주소

  • 설정이 되지 않으면 문서 이력 플러그인이 동작하지 않습니다.

headers

string


  • 요청을 보낼 헤더를 설정합니다.

params

string


  • 요청을 보낼 때 함께 보낼 기본 파라미터를 설정합니다.

dataurlstringO
  • 요청을 보낼 URL을 설정합니다.

    • 저장된 문서 목록 리스트 중 하나의 데이터를 가져오는 API 주소

  • 설정이 되지 않으면 문서 이력 플러그인이 동작하지 않습니다.

headersstring
  • 요청을 보낼 헤더를 설정합니다.
paramsstring
  • 요청을 보낼 때 함께 보낼 기본 파라미터를 설정합니다.
paramKeystring
  • 요청을 보낼 때 함께 보낼 파라미터의 Key 값을 설정합니다.


'documentComparison.config': {
    'list': { // 저장된 문서 목록 리스트에 대한 config 설정입니다.
        'url': '/getDocumentVersionList',
        'headers': {},
        'params': {}
    },
    'data': { // 저장된 문서 목록 중 하나의 데이터에 대한 config 설정입니다.
        'url': '/getDocumentVersionData', 
        'headers': {},
        'params': {},
        'paramKey': ''
    }
}

API 예제

// SEModel(json 타입)로 에디터 열기
window.editor = new SynapEditor(editorId, that.editorConfig);
window.editor.openSEModel(json); // db에서 꺼내온 json
var documentComparisonPlugin = window.editor.plugins.documentComparison;
if (documentComparisonPlugin) {
    documentComparisonPlugin.addListParam('docId', docId); // addListParam: 문서이력 목록조회 API(ex:'/getDocumentVersionList')의 param을 추가합니다.
}

// 모델로 저장하기
var json = window.editor.getBodyModelJSON(true);
// 저장하는 API로 json을 전송해서 저장하게 해야 함