nuudel-core 0.1.68 → 0.1.69

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.
@@ -1,2 +1,6 @@
1
- declare const Editor: () => JSX.Element;
1
+ interface IProps {
2
+ data?: string;
3
+ disabled?: boolean;
4
+ }
5
+ declare const Editor: (props: IProps) => JSX.Element;
2
6
  export default Editor;
@@ -2,7 +2,38 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const jsx_runtime_1 = require("react/jsx-runtime");
4
4
  const react_1 = require("react");
5
- const Editor = () => {
5
+ const i18n_1 = require("../../loc/i18n");
6
+ const uploadAdapter_1 = require("./uploadAdapter");
7
+ function CustomUploadAdapterPlugin(editor) {
8
+ editor.plugins.get('FileRepository').createUploadAdapter = (loader) => {
9
+ return new uploadAdapter_1.uploadAdapter(loader);
10
+ };
11
+ }
12
+ const custom_config = {
13
+ extraPlugins: [CustomUploadAdapterPlugin],
14
+ toolbar: {
15
+ items: [
16
+ 'heading',
17
+ '|',
18
+ 'bold',
19
+ 'italic',
20
+ 'link',
21
+ 'bulletedList',
22
+ 'numberedList',
23
+ '|',
24
+ 'blockQuote',
25
+ 'insertTable',
26
+ '|',
27
+ 'imageUpload',
28
+ 'undo',
29
+ 'redo',
30
+ ],
31
+ },
32
+ table: {
33
+ contentToolbar: ['tableColumn', 'tableRow', 'mergeTableCells'],
34
+ },
35
+ };
36
+ const Editor = (props) => {
6
37
  const editorRef = (0, react_1.useRef)();
7
38
  const [editorLoaded, setEditorLoaded] = (0, react_1.useState)(false);
8
39
  const { CKEditor, ClassicEditor } = editorRef.current || {};
@@ -13,8 +44,8 @@ const Editor = () => {
13
44
  };
14
45
  setEditorLoaded(true);
15
46
  }, []);
16
- const [data, setData] = (0, react_1.useState)('');
17
- return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: editorLoaded ? ((0, jsx_runtime_1.jsx)(CKEditor, { editor: ClassicEditor, data: data, onReady: (editor) => {
47
+ const [data, setData] = (0, react_1.useState)(props.data || '');
48
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: editorLoaded ? ((0, jsx_runtime_1.jsx)(CKEditor, { editor: ClassicEditor, config: custom_config, disabled: props.disabled === true, data: data, onReady: (editor) => {
18
49
  console.log('Editor is ready to use!', editor);
19
50
  }, onChange: (event, editor) => {
20
51
  const data = editor.getData();
@@ -23,7 +54,7 @@ const Editor = () => {
23
54
  console.log('Blur.', editor);
24
55
  }, onFocus: (event, editor) => {
25
56
  console.log('Focus.', editor);
26
- } }, void 0)) : ((0, jsx_runtime_1.jsx)("p", { children: "Loading..." }, void 0)) }, void 0));
57
+ } }, void 0)) : ((0, jsx_runtime_1.jsx)("p", { children: (0, i18n_1.t)('Loading') }, void 0)) }, void 0));
27
58
  };
28
59
  exports.default = Editor;
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Zvcm1zL0VkaXRvci9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQXNFO0FBR3RFLE1BQU0sTUFBTSxHQUFHLEdBQUcsRUFBRTtJQUNsQixNQUFNLFNBQVMsR0FBUSxJQUFBLGNBQU0sR0FBRSxDQUFDO0lBQ2hDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLEdBQUcsSUFBQSxnQkFBUSxFQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hELE1BQU0sRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEdBQUcsU0FBUyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFFNUQsSUFBQSxpQkFBUyxFQUFDLEdBQUcsRUFBRTtRQUNiLFNBQVMsQ0FBQyxPQUFPLEdBQUc7WUFDbEIsUUFBUSxFQUFFLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLFFBQVE7WUFDdkQsYUFBYSxFQUFFLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQztTQUM1RCxDQUFDO1FBQ0YsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVQLE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEdBQUcsSUFBQSxnQkFBUSxFQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXJDLE9BQU8sQ0FDTCwyREFDRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQ2QsdUJBQUMsUUFBUSxJQUNQLE1BQU0sRUFBRSxhQUFhLEVBQ3JCLElBQUksRUFBRSxJQUFJLEVBQ1YsT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBRWxCLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDakQsQ0FBQyxFQUNELFFBQVEsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDMUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM5QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEIsQ0FBQyxFQUNELE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDeEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDL0IsQ0FBQyxFQUNELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDaEMsQ0FBQyxXQUNELENBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FDRiwrREFBaUIsQ0FDbEIsV0FDQSxDQUNKLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixrQkFBZSxNQUFNLENBQUMifQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Zvcm1zL0VkaXRvci9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQXNFO0FBQ3RFLHlDQUFtQztBQUNuQyxtREFBZ0Q7QUFVaEQsU0FBUyx5QkFBeUIsQ0FBQyxNQUFNO0lBQ3ZDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsbUJBQW1CLEdBQUcsQ0FBQyxNQUFNLEVBQUUsRUFBRTtRQUNwRSxPQUFPLElBQUksNkJBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuQyxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxhQUFhLEdBQUc7SUFDcEIsWUFBWSxFQUFFLENBQUMseUJBQXlCLENBQUM7SUFDekMsT0FBTyxFQUFFO1FBQ1AsS0FBSyxFQUFFO1lBQ0wsU0FBUztZQUNULEdBQUc7WUFDSCxNQUFNO1lBQ04sUUFBUTtZQUNSLE1BQU07WUFDTixjQUFjO1lBQ2QsY0FBYztZQUNkLEdBQUc7WUFDSCxZQUFZO1lBQ1osYUFBYTtZQUNiLEdBQUc7WUFDSCxhQUFhO1lBQ2IsTUFBTTtZQUNOLE1BQU07U0FDUDtLQUNGO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsY0FBYyxFQUFFLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQztLQUMvRDtDQUNGLENBQUM7QUFHRixNQUFNLE1BQU0sR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQy9CLE1BQU0sU0FBUyxHQUFRLElBQUEsY0FBTSxHQUFFLENBQUM7SUFDaEMsTUFBTSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsR0FBRyxJQUFBLGdCQUFRLEVBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsTUFBTSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsR0FBRyxTQUFTLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUU1RCxJQUFBLGlCQUFTLEVBQUMsR0FBRyxFQUFFO1FBQ2IsU0FBUyxDQUFDLE9BQU8sR0FBRztZQUNsQixRQUFRLEVBQUUsT0FBTyxDQUFDLDJCQUEyQixDQUFDLENBQUMsUUFBUTtZQUN2RCxhQUFhLEVBQUUsT0FBTyxDQUFDLG1DQUFtQyxDQUFDO1NBQzVELENBQUM7UUFDRixlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRVAsTUFBTSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsR0FBRyxJQUFBLGdCQUFRLEVBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVuRCxPQUFPLENBQ0wsMkRBQ0csWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUNkLHVCQUFDLFFBQVEsSUFDUCxNQUFNLEVBQUUsYUFBYSxFQUNyQixNQUFNLEVBQUUsYUFBYSxFQUNyQixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsS0FBSyxJQUFJLEVBQ2pDLElBQUksRUFBRSxJQUFJLEVBQ1YsT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBRWxCLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDakQsQ0FBQyxFQUNELFFBQVEsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDMUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM5QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEIsQ0FBQyxFQUNELE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDeEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDL0IsQ0FBQyxFQUNELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDaEMsQ0FBQyxXQUNELENBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FDRix3Q0FBSSxJQUFBLFFBQUMsRUFBQyxTQUFTLENBQUMsV0FBSyxDQUN0QixXQUNBLENBQ0osQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLGtCQUFlLE1BQU0sQ0FBQyJ9
@@ -0,0 +1,7 @@
1
+ export declare class uploadAdapter {
2
+ protected loader: any;
3
+ protected _controller: any;
4
+ constructor(props: any);
5
+ upload(): Promise<unknown>;
6
+ abort(): void;
7
+ }
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.uploadAdapter = void 0;
7
+ const axios_1 = __importDefault(require("axios"));
8
+ const UI_1 = __importDefault(require("../../common/UI"));
9
+ class uploadAdapter {
10
+ constructor(props) {
11
+ this.loader = undefined;
12
+ this._controller = undefined;
13
+ this.loader = props;
14
+ this._controller = new AbortController();
15
+ }
16
+ upload() {
17
+ const uploadPreset = process.env.NEXT_PUBLIC_OBJECT_STORAGE_BUCKET;
18
+ let uploadUrl = process.env.NEXT_PUBLIC_IMAGE_UPLOAD_URL;
19
+ let isDirect = false;
20
+ if (uploadUrl.indexOf('cloudinary.com') < 0) {
21
+ uploadUrl = '/upload';
22
+ isDirect = true;
23
+ }
24
+ return new Promise((resolve, reject) => {
25
+ this.loader.file.then(async (file) => {
26
+ const data = new FormData();
27
+ const loader = this.loader;
28
+ const filename = file.name || (file.path && file.path.split('/').pop());
29
+ if (filename) {
30
+ data.append('name', filename);
31
+ }
32
+ data.append('file', file, filename);
33
+ data.append('upload_preset', uploadPreset);
34
+ let r = undefined;
35
+ try {
36
+ r = await (0, axios_1.default)({
37
+ url: uploadUrl,
38
+ method: 'post',
39
+ data: data,
40
+ headers: Object.assign({}, (isDirect ? await UI_1.default.headers() : {})),
41
+ signal: this._controller.signal,
42
+ onUploadProgress: (ProgressEvent) => {
43
+ loader.uploadTotal = ProgressEvent.total;
44
+ loader.uploaded = ProgressEvent.loaded;
45
+ },
46
+ });
47
+ }
48
+ catch (_a) {
49
+ reject("Couldn't upload file:" + ` ${filename}.`);
50
+ }
51
+ if (r && r.data) {
52
+ let res = r.data;
53
+ const url = res.secure_url || res.url;
54
+ resolve({
55
+ default: url,
56
+ });
57
+ }
58
+ else {
59
+ reject();
60
+ }
61
+ });
62
+ });
63
+ }
64
+ abort() {
65
+ if (this._controller) {
66
+ this._controller.abort();
67
+ }
68
+ }
69
+ }
70
+ exports.uploadAdapter = uploadAdapter;
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkQWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZm9ybXMvRWRpdG9yL3VwbG9hZEFkYXB0ZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGtEQUEwQjtBQUMxQix5REFBaUM7QUFHakMsTUFBYSxhQUFhO0lBR3hCLFlBQVksS0FBSztRQUZQLFdBQU0sR0FBUSxTQUFTLENBQUM7UUFDeEIsZ0JBQVcsR0FBUSxTQUFTLENBQUM7UUFHckMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFHRCxNQUFNO1FBQ0osTUFBTSxZQUFZLEdBQVcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQ0FBaUMsQ0FBQztRQUMzRSxJQUFJLFNBQVMsR0FBVyxPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixDQUFDO1FBQ2pFLElBQUksUUFBUSxHQUFZLEtBQUssQ0FBQztRQUM5QixJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDM0MsU0FBUyxHQUFHLFNBQVMsQ0FBQztZQUN0QixRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ2pCO1FBQ0QsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFO2dCQUNuQyxNQUFNLElBQUksR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO2dCQUM1QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO2dCQUUzQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO2dCQUN4RSxJQUFJLFFBQVEsRUFBRTtvQkFDWixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztpQkFDL0I7Z0JBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2dCQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUMsQ0FBQztnQkFFM0MsSUFBSSxDQUFDLEdBQVEsU0FBUyxDQUFDO2dCQUN2QixJQUFJO29CQUNGLENBQUMsR0FBRyxNQUFNLElBQUEsZUFBSyxFQUFDO3dCQUNkLEdBQUcsRUFBRSxTQUFTO3dCQUNkLE1BQU0sRUFBRSxNQUFNO3dCQUNkLElBQUksRUFBRSxJQUFJO3dCQUNWLE9BQU8sb0JBQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sWUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBRTt3QkFDcEQsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTTt3QkFDL0IsZ0JBQWdCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsRUFBRTs0QkFDbEMsTUFBTSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDOzRCQUN6QyxNQUFNLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUM7d0JBQ3pDLENBQUM7cUJBQ0YsQ0FBQyxDQUFDO2lCQUNKO2dCQUFDLFdBQU07b0JBQ04sTUFBTSxDQUFDLHVCQUF1QixHQUFHLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztpQkFDbkQ7Z0JBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRTtvQkFDZixJQUFJLEdBQUcsR0FBUSxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUN0QixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUM7b0JBR3RDLE9BQU8sQ0FBQzt3QkFDTixPQUFPLEVBQUUsR0FBRztxQkFDYixDQUFDLENBQUM7aUJBQ0o7cUJBQU07b0JBQ0wsTUFBTSxFQUFFLENBQUM7aUJBQ1Y7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELEtBQUs7UUFDSCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7Q0FDRjtBQXBFRCxzQ0FvRUMifQ==
@@ -69,5 +69,6 @@
69
69
  "ChangeEmail": "Change email",
70
70
  "TakePhoto": "Take photo",
71
71
  "ChooseFromLibrary": "Choose from library",
72
+ "Loading": "Loading...",
72
73
  "ErrorOnSavingListItem": "Error on loading lists: "
73
74
  }
@@ -69,5 +69,6 @@
69
69
  "ChangeEmail": "Имэйл өөрчлөх",
70
70
  "TakePhoto": "Зураг дарах",
71
71
  "ChooseFromLibrary": "Зургийн сангаас сонго",
72
+ "Loading": "Ачааллаж...",
72
73
  "ErrorOnSavingListItem": "Алдаа жагсаалтыг ачаалж чадсангүй: "
73
74
  }
@@ -1,2 +1,6 @@
1
- declare const Editor: () => JSX.Element;
1
+ interface IProps {
2
+ data?: string;
3
+ disabled?: boolean;
4
+ }
5
+ declare const Editor: (props: IProps) => JSX.Element;
2
6
  export default Editor;
@@ -1,6 +1,37 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useRef, useState, useEffect } from 'react';
3
- const Editor = () => {
3
+ import { t } from '../../loc/i18n';
4
+ import { uploadAdapter } from './uploadAdapter';
5
+ function CustomUploadAdapterPlugin(editor) {
6
+ editor.plugins.get('FileRepository').createUploadAdapter = (loader) => {
7
+ return new uploadAdapter(loader);
8
+ };
9
+ }
10
+ const custom_config = {
11
+ extraPlugins: [CustomUploadAdapterPlugin],
12
+ toolbar: {
13
+ items: [
14
+ 'heading',
15
+ '|',
16
+ 'bold',
17
+ 'italic',
18
+ 'link',
19
+ 'bulletedList',
20
+ 'numberedList',
21
+ '|',
22
+ 'blockQuote',
23
+ 'insertTable',
24
+ '|',
25
+ 'imageUpload',
26
+ 'undo',
27
+ 'redo',
28
+ ],
29
+ },
30
+ table: {
31
+ contentToolbar: ['tableColumn', 'tableRow', 'mergeTableCells'],
32
+ },
33
+ };
34
+ const Editor = (props) => {
4
35
  const editorRef = useRef();
5
36
  const [editorLoaded, setEditorLoaded] = useState(false);
6
37
  const { CKEditor, ClassicEditor } = editorRef.current || {};
@@ -11,8 +42,8 @@ const Editor = () => {
11
42
  };
12
43
  setEditorLoaded(true);
13
44
  }, []);
14
- const [data, setData] = useState('');
15
- return (_jsx(_Fragment, { children: editorLoaded ? (_jsx(CKEditor, { editor: ClassicEditor, data: data, onReady: (editor) => {
45
+ const [data, setData] = useState(props.data || '');
46
+ return (_jsx(_Fragment, { children: editorLoaded ? (_jsx(CKEditor, { editor: ClassicEditor, config: custom_config, disabled: props.disabled === true, data: data, onReady: (editor) => {
16
47
  console.log('Editor is ready to use!', editor);
17
48
  }, onChange: (event, editor) => {
18
49
  const data = editor.getData();
@@ -21,7 +52,7 @@ const Editor = () => {
21
52
  console.log('Blur.', editor);
22
53
  }, onFocus: (event, editor) => {
23
54
  console.log('Focus.', editor);
24
- } }, void 0)) : (_jsx("p", { children: "Loading..." }, void 0)) }, void 0));
55
+ } }, void 0)) : (_jsx("p", { children: t('Loading') }, void 0)) }, void 0));
25
56
  };
26
57
  export default Editor;
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Zvcm1zL0VkaXRvci9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQWMsRUFBYSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUd0RSxNQUFNLE1BQU0sR0FBRyxHQUFHLEVBQUU7SUFDbEIsTUFBTSxTQUFTLEdBQVEsTUFBTSxFQUFFLENBQUM7SUFDaEMsTUFBTSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsTUFBTSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsR0FBRyxTQUFTLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUU1RCxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ2IsU0FBUyxDQUFDLE9BQU8sR0FBRztZQUNsQixRQUFRLEVBQUUsT0FBTyxDQUFDLDJCQUEyQixDQUFDLENBQUMsUUFBUTtZQUN2RCxhQUFhLEVBQUUsT0FBTyxDQUFDLG1DQUFtQyxDQUFDO1NBQzVELENBQUM7UUFDRixlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRVAsTUFBTSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFckMsT0FBTyxDQUNMLDRCQUNHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FDZCxLQUFDLFFBQVEsSUFDUCxNQUFNLEVBQUUsYUFBYSxFQUNyQixJQUFJLEVBQUUsSUFBSSxFQUNWLE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUVsQixPQUFPLENBQUMsR0FBRyxDQUFDLHlCQUF5QixFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2pELENBQUMsRUFDRCxRQUFRLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUU7Z0JBQzFCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hCLENBQUMsRUFDRCxNQUFNLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUU7Z0JBQ3hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQy9CLENBQUMsRUFDRCxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUU7Z0JBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2hDLENBQUMsV0FDRCxDQUNILENBQUMsQ0FBQyxDQUFDLENBQ0YsNkNBQWlCLENBQ2xCLFdBQ0EsQ0FDSixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsZUFBZSxNQUFNLENBQUMifQ==
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2Zvcm1zL0VkaXRvci9pbmRleC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQWMsRUFBYSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUN0RSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBVWhELFNBQVMseUJBQXlCLENBQUMsTUFBTTtJQUN2QyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLG1CQUFtQixHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDcEUsT0FBTyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuQyxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxhQUFhLEdBQUc7SUFDcEIsWUFBWSxFQUFFLENBQUMseUJBQXlCLENBQUM7SUFDekMsT0FBTyxFQUFFO1FBQ1AsS0FBSyxFQUFFO1lBQ0wsU0FBUztZQUNULEdBQUc7WUFDSCxNQUFNO1lBQ04sUUFBUTtZQUNSLE1BQU07WUFDTixjQUFjO1lBQ2QsY0FBYztZQUNkLEdBQUc7WUFDSCxZQUFZO1lBQ1osYUFBYTtZQUNiLEdBQUc7WUFDSCxhQUFhO1lBQ2IsTUFBTTtZQUNOLE1BQU07U0FDUDtLQUNGO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsY0FBYyxFQUFFLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQztLQUMvRDtDQUNGLENBQUM7QUFHRixNQUFNLE1BQU0sR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQy9CLE1BQU0sU0FBUyxHQUFRLE1BQU0sRUFBRSxDQUFDO0lBQ2hDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hELE1BQU0sRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEdBQUcsU0FBUyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFFNUQsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLFNBQVMsQ0FBQyxPQUFPLEdBQUc7WUFDbEIsUUFBUSxFQUFFLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLFFBQVE7WUFDdkQsYUFBYSxFQUFFLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQztTQUM1RCxDQUFDO1FBQ0YsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVQLE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFFbkQsT0FBTyxDQUNMLDRCQUNHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FDZCxLQUFDLFFBQVEsSUFDUCxNQUFNLEVBQUUsYUFBYSxFQUNyQixNQUFNLEVBQUUsYUFBYSxFQUNyQixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsS0FBSyxJQUFJLEVBQ2pDLElBQUksRUFBRSxJQUFJLEVBQ1YsT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBRWxCLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDakQsQ0FBQyxFQUNELFFBQVEsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDMUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM5QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEIsQ0FBQyxFQUNELE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDeEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDL0IsQ0FBQyxFQUNELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtnQkFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDaEMsQ0FBQyxXQUNELENBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FDRixzQkFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLFdBQUssQ0FDdEIsV0FDQSxDQUNKLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixlQUFlLE1BQU0sQ0FBQyJ9
@@ -0,0 +1,7 @@
1
+ export declare class uploadAdapter {
2
+ protected loader: any;
3
+ protected _controller: any;
4
+ constructor(props: any);
5
+ upload(): Promise<unknown>;
6
+ abort(): void;
7
+ }
@@ -0,0 +1,64 @@
1
+ import axios from 'axios';
2
+ import UI from '../../common/UI';
3
+ export class uploadAdapter {
4
+ loader = undefined;
5
+ _controller = undefined;
6
+ constructor(props) {
7
+ this.loader = props;
8
+ this._controller = new AbortController();
9
+ }
10
+ upload() {
11
+ const uploadPreset = process.env.NEXT_PUBLIC_OBJECT_STORAGE_BUCKET;
12
+ let uploadUrl = process.env.NEXT_PUBLIC_IMAGE_UPLOAD_URL;
13
+ let isDirect = false;
14
+ if (uploadUrl.indexOf('cloudinary.com') < 0) {
15
+ uploadUrl = '/upload';
16
+ isDirect = true;
17
+ }
18
+ return new Promise((resolve, reject) => {
19
+ this.loader.file.then(async (file) => {
20
+ const data = new FormData();
21
+ const loader = this.loader;
22
+ const filename = file.name || (file.path && file.path.split('/').pop());
23
+ if (filename) {
24
+ data.append('name', filename);
25
+ }
26
+ data.append('file', file, filename);
27
+ data.append('upload_preset', uploadPreset);
28
+ let r = undefined;
29
+ try {
30
+ r = await axios({
31
+ url: uploadUrl,
32
+ method: 'post',
33
+ data: data,
34
+ headers: { ...(isDirect ? await UI.headers() : {}) },
35
+ signal: this._controller.signal,
36
+ onUploadProgress: (ProgressEvent) => {
37
+ loader.uploadTotal = ProgressEvent.total;
38
+ loader.uploaded = ProgressEvent.loaded;
39
+ },
40
+ });
41
+ }
42
+ catch {
43
+ reject("Couldn't upload file:" + ` ${filename}.`);
44
+ }
45
+ if (r && r.data) {
46
+ let res = r.data;
47
+ const url = res.secure_url || res.url;
48
+ resolve({
49
+ default: url,
50
+ });
51
+ }
52
+ else {
53
+ reject();
54
+ }
55
+ });
56
+ });
57
+ }
58
+ abort() {
59
+ if (this._controller) {
60
+ this._controller.abort();
61
+ }
62
+ }
63
+ }
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkQWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZm9ybXMvRWRpdG9yL3VwbG9hZEFkYXB0ZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdqQyxNQUFNLE9BQU8sYUFBYTtJQUNkLE1BQU0sR0FBUSxTQUFTLENBQUM7SUFDeEIsV0FBVyxHQUFRLFNBQVMsQ0FBQztJQUN2QyxZQUFZLEtBQUs7UUFFZixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUdELE1BQU07UUFDSixNQUFNLFlBQVksR0FBVyxPQUFPLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDO1FBQzNFLElBQUksU0FBUyxHQUFXLE9BQU8sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLENBQUM7UUFDakUsSUFBSSxRQUFRLEdBQVksS0FBSyxDQUFDO1FBQzlCLElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUMzQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1lBQ3RCLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDakI7UUFDRCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQ25DLE1BQU0sSUFBSSxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQzVCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7Z0JBRTNCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7Z0JBQ3hFLElBQUksUUFBUSxFQUFFO29CQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2lCQUMvQjtnQkFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxDQUFDO2dCQUUzQyxJQUFJLENBQUMsR0FBUSxTQUFTLENBQUM7Z0JBQ3ZCLElBQUk7b0JBQ0YsQ0FBQyxHQUFHLE1BQU0sS0FBSyxDQUFDO3dCQUNkLEdBQUcsRUFBRSxTQUFTO3dCQUNkLE1BQU0sRUFBRSxNQUFNO3dCQUNkLElBQUksRUFBRSxJQUFJO3dCQUNWLE9BQU8sRUFBRSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRTt3QkFDcEQsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTTt3QkFDL0IsZ0JBQWdCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsRUFBRTs0QkFDbEMsTUFBTSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDOzRCQUN6QyxNQUFNLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUM7d0JBQ3pDLENBQUM7cUJBQ0YsQ0FBQyxDQUFDO2lCQUNKO2dCQUFDLE1BQU07b0JBQ04sTUFBTSxDQUFDLHVCQUF1QixHQUFHLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztpQkFDbkQ7Z0JBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRTtvQkFDZixJQUFJLEdBQUcsR0FBUSxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUN0QixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUM7b0JBR3RDLE9BQU8sQ0FBQzt3QkFDTixPQUFPLEVBQUUsR0FBRztxQkFDYixDQUFDLENBQUM7aUJBQ0o7cUJBQU07b0JBQ0wsTUFBTSxFQUFFLENBQUM7aUJBQ1Y7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUdELEtBQUs7UUFDSCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7Q0FDRiJ9
@@ -69,5 +69,6 @@
69
69
  "ChangeEmail": "Change email",
70
70
  "TakePhoto": "Take photo",
71
71
  "ChooseFromLibrary": "Choose from library",
72
+ "Loading": "Loading...",
72
73
  "ErrorOnSavingListItem": "Error on loading lists: "
73
74
  }
@@ -69,5 +69,6 @@
69
69
  "ChangeEmail": "Имэйл өөрчлөх",
70
70
  "TakePhoto": "Зураг дарах",
71
71
  "ChooseFromLibrary": "Зургийн сангаас сонго",
72
+ "Loading": "Ачааллаж...",
72
73
  "ErrorOnSavingListItem": "Алдаа жагсаалтыг ачаалж чадсангүй: "
73
74
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nuudel-core",
3
- "version": "0.1.68",
3
+ "version": "0.1.69",
4
4
  "description": "Web components for react with material UI",
5
5
  "main": "build/main/index.js",
6
6
  "typings": "build/main/index.d.ts",