정의왕

Set reducer & Modify user-action

......@@ -1193,6 +1193,308 @@
"resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
"integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw=="
},
"@ckeditor/ckeditor5-adapter-ckfinder": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-31.0.0.tgz",
"integrity": "sha512-jWoQT8n8Ufg8hswRa0YU0yg387YpT65+PT7zuPbhgIRHkgyTzLFyDrVopD0uj11leDXPklzMk1lg4N5bHHIVew==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-autoformat": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-31.0.0.tgz",
"integrity": "sha512-G6+tstX6NX09Rh0JRLnZyyEyabqxlSAnixn7UTBGblXeKsZnNSVc8MbAD1cH0IesqHki/Yo8Z2cpFcTCQSl47Q==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-basic-styles": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-31.0.0.tgz",
"integrity": "sha512-1QXryQRj3uQ0Qmef6yMk5V0xjfk3T8fXESi1pHIsy/A3zgSUCUg+/xXJmIOBLp6LLRiL+bju/grbjerbHXEIHg==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-block-quote": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-31.0.0.tgz",
"integrity": "sha512-T9NPuCWVtNF4EGXn4q8YSyJI1Ry9jJ0PZUv2exKsQAh5DloVXA3ufdAqqi7W/h7S4e5ffF+VAhrgNa0js3BcnA==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-build-classic": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-build-classic/-/ckeditor5-build-classic-31.0.0.tgz",
"integrity": "sha512-H5HwmnXgLMztY7cEFSnl66I5QF9gkTXgibKlJ4bNsurfChYjvrpCzVQjuECmnbQPJ0ZW53qH332WibwcKAQhuw==",
"requires": {
"@ckeditor/ckeditor5-adapter-ckfinder": "^31.0.0",
"@ckeditor/ckeditor5-autoformat": "^31.0.0",
"@ckeditor/ckeditor5-basic-styles": "^31.0.0",
"@ckeditor/ckeditor5-block-quote": "^31.0.0",
"@ckeditor/ckeditor5-ckfinder": "^31.0.0",
"@ckeditor/ckeditor5-cloud-services": "^31.0.0",
"@ckeditor/ckeditor5-easy-image": "^31.0.0",
"@ckeditor/ckeditor5-editor-classic": "^31.0.0",
"@ckeditor/ckeditor5-essentials": "^31.0.0",
"@ckeditor/ckeditor5-heading": "^31.0.0",
"@ckeditor/ckeditor5-image": "^31.0.0",
"@ckeditor/ckeditor5-indent": "^31.0.0",
"@ckeditor/ckeditor5-link": "^31.0.0",
"@ckeditor/ckeditor5-list": "^31.0.0",
"@ckeditor/ckeditor5-media-embed": "^31.0.0",
"@ckeditor/ckeditor5-paragraph": "^31.0.0",
"@ckeditor/ckeditor5-paste-from-office": "^31.0.0",
"@ckeditor/ckeditor5-table": "^31.0.0",
"@ckeditor/ckeditor5-typing": "^31.0.0"
}
},
"@ckeditor/ckeditor5-ckfinder": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-31.0.0.tgz",
"integrity": "sha512-/YR1nwCeNkfdQuxbWmQmxMzJcqsW0mFUKuoAK6U9f7gd36AQq0gSvTmISzQgFZ66lrZd1IWGbEjC+Gtg5/OBOA==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-clipboard": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-31.0.0.tgz",
"integrity": "sha512-wmdYd/bNp3zYA9ERo2ednl+ivf2xYq91iTnUDybxgexRHrMc8mjYTTzevrF4aXY56kpQR8c7dhU+Mzy68F7dTg==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-engine": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0",
"@ckeditor/ckeditor5-widget": "^31.0.0",
"lodash-es": "^4.17.11"
}
},
"@ckeditor/ckeditor5-cloud-services": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-31.0.0.tgz",
"integrity": "sha512-wUmBDQUdtZbQUWgVV8uR9Vqi+0jaMtg6ZUQCqgnq/IOcZrcmzemE7y51fbzThI3AbmxGsuCHiD8yzUC9cOVUbw==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-core": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-core/-/ckeditor5-core-31.0.0.tgz",
"integrity": "sha512-8AvolCaFC/iTDJViNAQk2uJr2LLRieCEc0Kda5OUT0xgeoUF+/B5DYSU3ie8cJOghBSjZmEoZFUApqGaDm0QIA==",
"requires": {
"@ckeditor/ckeditor5-engine": "^31.0.0",
"@ckeditor/ckeditor5-ui": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-easy-image": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-31.0.0.tgz",
"integrity": "sha512-YKJxmrfHKdudR5q28U+0iiDbUUryj3/nJaZULTItxX6lTgYGbPp5+lqErIF4E1MrLMQmRQj3Ej+D8iM84B2qpw==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-editor-classic": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-31.0.0.tgz",
"integrity": "sha512-73uctgAl8cX6//KlW1CUMQFXEK3USw6DfpUJrKXucMrdRksNXllu1WcZbADwcXgQk006byr8DKA51wNI00+daQ==",
"requires": {
"ckeditor5": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-engine": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-31.0.0.tgz",
"integrity": "sha512-RVsGWx2R9T0cgDZtEo6O5GihvKB3PHoM7SJ/qbmDDWKuhJ/89KZDrWuFrgdNyfZsZwdgNplwnvX8gDvSHpRqkw==",
"requires": {
"@ckeditor/ckeditor5-utils": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-enter": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-31.0.0.tgz",
"integrity": "sha512-FCv890nP1CoBLpZ8gOWmgWhmtNhSzIYODmbogI42pVhtQXbu/wMdlA5PsJF81cdrDL1MlL7Tnmor7+Yk1Ej1QQ==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-engine": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0"
}
},
"@ckeditor/ckeditor5-essentials": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-31.0.0.tgz",
"integrity": "sha512-S14B/cyushn4n4ANz8H4TjjbxaeH94OG+EDwKL4bXAYn/B1S/I5Cm+MRi7Q8Z3A8A6fjzGhNPUyDx0GnpmKZHQ==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-heading": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-31.0.0.tgz",
"integrity": "sha512-bAcNG2K7sZWxvTJTriof/lsR81o4QGbpaFcwj62QfTjYP+To5jlD4YhUIcCbg1YpiwlbJr8tv6PuWH6MkNh/5g==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-image": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-image/-/ckeditor5-image-31.0.0.tgz",
"integrity": "sha512-t7eYiRx4fLbSrBuSV7DoRC8zmTyzUQyind5gWQNWWDq/nF+bEaMkijOmbvak/gKQIl/C15Eo3jV6dPbzDdwgbg==",
"requires": {
"@ckeditor/ckeditor5-ui": "^31.0.0",
"ckeditor5": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-indent": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-31.0.0.tgz",
"integrity": "sha512-3WuQFMvbxTzGJkAlNhmXaCqwyrSb0k/8HpTw3M9ef7nu0J0eutwT09bJQrfdyeyZ9I7thOXKjh00wTOAni8y2Q==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-link": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-link/-/ckeditor5-link-31.0.0.tgz",
"integrity": "sha512-CeX05fQIR1p3/aD512vuLedq2OVHJE/toEg3ewZOlWfKan71L3/6wiuuSHO7KkCbp1d/1I/pGOz9G9pBfLUtvg==",
"requires": {
"@ckeditor/ckeditor5-ui": "^31.0.0",
"ckeditor5": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-list": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-list/-/ckeditor5-list-31.0.0.tgz",
"integrity": "sha512-lSGobEoHdS94ueyhJ+N7XJmZ6CafCobVy+5cNCOymSVoHAY3GI5xOdkWO9slOxV+i8+/yiHT5NDWuCxTzj3WxQ==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-media-embed": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-31.0.0.tgz",
"integrity": "sha512-2Dy7+qsOz+jDOMggehR6Fe/imhGfeVIe82PBHTQs2MfI+gbhSY6ftbvEInkff3T/eTDUc6fg05VGQJsRMWQaiA==",
"requires": {
"@ckeditor/ckeditor5-ui": "^31.0.0",
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-paragraph": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-31.0.0.tgz",
"integrity": "sha512-v6zSihnX6/C2eQ1P0Q2V1po/u/vkiPqUKYBSagCvW6jexUhUWiAUiBfyc1mS2VUFdyr9Anw6eHaMjbauwnTmFw==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-ui": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0"
}
},
"@ckeditor/ckeditor5-paste-from-office": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-31.0.0.tgz",
"integrity": "sha512-ACdbjBOm9SjQGYkA43bX6e+SfCMcyIxnHX7yl2iEXLSZO5kk70xqpKv0tWlg8N5jlcsYPEXR9dHJheWRPehNsg==",
"requires": {
"ckeditor5": "^31.0.0"
}
},
"@ckeditor/ckeditor5-react": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-react/-/ckeditor5-react-3.0.3.tgz",
"integrity": "sha512-Zaazd9Brg64v1Q2qQNtbfryWeVLzXWlNbswLsOYwNgvHlxroa8+F7ZE33M2O8zxcL6sQHZ1vCNkQOPRUBG8pqA==",
"requires": {
"prop-types": "^15.7.2"
}
},
"@ckeditor/ckeditor5-select-all": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-31.0.0.tgz",
"integrity": "sha512-+n3LvYx9Kdr+A0AUr012FT8O+5/A7GdkSRMI/L0gAuy1IHXYmPYzbymO+qFLY8lyrAfJvZX6rqFLcnaqtLUL6A==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-ui": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0"
}
},
"@ckeditor/ckeditor5-table": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-table/-/ckeditor5-table-31.0.0.tgz",
"integrity": "sha512-KdotVXhRlJBuYUPkTo/VDvCSoPm4dZSeZDwV0PWTMiAutmxkpdHHG0FGnAJphCPA1BLO0eLj84DkSyMdw3WlsQ==",
"requires": {
"ckeditor5": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-typing": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-31.0.0.tgz",
"integrity": "sha512-7lILwGNhynpUcXKqzzAmPsL57myxqFcv0K1OPb+2jkzEruaYkAINJ3fMYNBwwAxtg2wZDP598ufwonplcSNsJA==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-engine": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-ui": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-31.0.0.tgz",
"integrity": "sha512-WDEwToA8FOPi/AeYqdF6isdTM7hJp26WzxDhDNGWC8aYu/zA146Z07qTbYuBOebG9TWqjsZOQYDXbH/4phmyDg==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-undo": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-31.0.0.tgz",
"integrity": "sha512-mTSjiMJ/sSTP485djBiMQ4yD7M0qDIcqDlTV6op34M1eXLY63ZwQUnd9NiOqOLrBiwaBBmnRYlSeZCQjoCuk0A==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-engine": "^31.0.0",
"@ckeditor/ckeditor5-ui": "^31.0.0"
}
},
"@ckeditor/ckeditor5-upload": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-31.0.0.tgz",
"integrity": "sha512-ChtGU66fdqwTaOazXtRXcOi6tOzAiTPC5UUv+LycxwSB6MKbqJANg8ny9RoTGWDpHUabb6UHyX8bwlfkXKIqbQ==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-ui": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0"
}
},
"@ckeditor/ckeditor5-utils": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-31.0.0.tgz",
"integrity": "sha512-T9S2x0AUBnhN8BJ7Pg4E8okEUccYBKyu5hp4nH2kMUSmfqeJ0JWC9CD5dA1nDOXvU10J6Rw8VoqkbRx/4MuYEw==",
"requires": {
"lodash-es": "^4.17.15"
}
},
"@ckeditor/ckeditor5-widget": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-31.0.0.tgz",
"integrity": "sha512-MCpBdT2sD/nRgC825aIaI1Tu7T6OQYvNxc6Q4D+gNkdRbLLZrGoWKHNZdgmQg9Di1WgVO1cPo+h45HO2KYHAMA==",
"requires": {
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-engine": "^31.0.0",
"@ckeditor/ckeditor5-enter": "^31.0.0",
"@ckeditor/ckeditor5-typing": "^31.0.0",
"@ckeditor/ckeditor5-ui": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0",
"lodash-es": "^4.17.15"
}
},
"@cnakazawa/watch": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz",
......@@ -4343,6 +4645,25 @@
"resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz",
"integrity": "sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw=="
},
"ckeditor5": {
"version": "31.0.0",
"resolved": "https://registry.npmjs.org/ckeditor5/-/ckeditor5-31.0.0.tgz",
"integrity": "sha512-6e6RJWn4mk3xKASy4DiwF0wz165wxagYfWsun7nB0oM4/s7Ri8T6Ihr433RVdepwaVLwrEp70yjk5pbY02cU9A==",
"requires": {
"@ckeditor/ckeditor5-clipboard": "^31.0.0",
"@ckeditor/ckeditor5-core": "^31.0.0",
"@ckeditor/ckeditor5-engine": "^31.0.0",
"@ckeditor/ckeditor5-enter": "^31.0.0",
"@ckeditor/ckeditor5-paragraph": "^31.0.0",
"@ckeditor/ckeditor5-select-all": "^31.0.0",
"@ckeditor/ckeditor5-typing": "^31.0.0",
"@ckeditor/ckeditor5-ui": "^31.0.0",
"@ckeditor/ckeditor5-undo": "^31.0.0",
"@ckeditor/ckeditor5-upload": "^31.0.0",
"@ckeditor/ckeditor5-utils": "^31.0.0",
"@ckeditor/ckeditor5-widget": "^31.0.0"
}
},
"class-utils": {
"version": "0.3.6",
"resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
......
......@@ -3,6 +3,8 @@
"version": "0.1.0",
"private": true,
"dependencies": {
"@ckeditor/ckeditor5-build-classic": "^31.0.0",
"@ckeditor/ckeditor5-react": "^3.0.3",
"@testing-library/jest-dom": "^5.15.0",
"@testing-library/react": "^11.2.7",
"@testing-library/user-event": "^12.8.3",
......
import {Button} from "semantic-ui-react"
import "../style/MainPage.scss";
import { useNavigate } from "react-router-dom";
import { CKEditor } from '@ckeditor/ckeditor5-react';
import ClassicEditor from '@ckeditor/ckeditor5-build-classic';
function MainPage() {
const navigate = useNavigate();
......@@ -32,7 +34,24 @@ function MainPage() {
</div>
<div className="contents">
<div className="ui segment">
<p>a</p>
<CKEditor
editor={ClassicEditor}
data="<p>Hello from CKEditor 5!</p>"
onReady={editor => {
// You can store the "editor" and use when it is needed.
console.log('Editor is ready to use!', editor);
}}
onChange={(event, editor) => {
const data = editor.getData();
console.log({ event, editor, data });
}}
onBlur={(event, editor) => {
console.log('Blur.', editor);
}}
onFocus={(event, editor) => {
console.log('Focus.', editor);
}}
/>
</div>
<div className="ui segment">
<p>a</p>
......@@ -51,7 +70,7 @@ function MainPage() {
tabIndex="0">
<div className="visible content">도착한 </div>
<div className="hidden content">
<i className="pencil alternate icon"></i>
<i className="paper plane ic on"></i>
</div>
</Button>
</div>
......
......@@ -39,7 +39,7 @@ function RegisterPage(props) {
}
dispatch(registerUser(body))
.then(response => {
if (response.payload.success) {
if (response.payload.registerSuccess) {
props.history.push('/login')
} else {
alert('Failed to sign up')
......