From 30d467e482ad16cc1dfef497106ba97b6dca62fe Mon Sep 17 00:00:00 2001 From: RahulSF4846 Date: Fri, 5 Sep 2025 14:57:09 +0530 Subject: [PATCH 1/2] Revert "Merge pull request #618 from syncfusion-content/980128-DEJsTs" This reverts commit e68784925f0e8b8cf897c35a66efe9227b2faa80, reversing changes made to c9a526357aee5d29f1c6e97a8481d1db4b3856c5. --- ej2-javascript-toc.html | 137 + ej2-javascript/chart/working-with-data.md | 369 ++ .../accessibility-cs1/index.css | 19 + .../accessibility-cs1/index.js | 15 + .../accessibility-cs1/index.ts | 22 + .../accessibility-cs1/js/index.html | 39 + .../accessibility-cs1/systemjs.config.js | 49 + .../accessibility-cs1/ts/index.html | 35 + .../document-editor/chart-cs1/index.css | 18 + .../document-editor/chart-cs1/index.js | 9 + .../document-editor/chart-cs1/index.ts | 15 + .../document-editor/chart-cs1/js/index.html | 57 + .../chart-cs1/systemjs.config.js | 49 + .../document-editor/chart-cs1/ts/index.html | 51 + .../collaborative-editing-cs1/index.js | 10 + .../collaborative-editing-cs1/index.ts | 12 + .../collaborative-editing-cs1/script-1.js | 45 + .../collaborative-editing-cs1/script-1.ts | 47 + .../collaborative-editing-cs1/script-2.js | 12 + .../collaborative-editing-cs1/script-2.ts | 12 + .../collaborative-editing-cs1/script-3.js | 6 + .../collaborative-editing-cs1/script-3.ts | 6 + .../collaborative-editing-java-cs1/index.js | 8 + .../collaborative-editing-java-cs1/index.ts | 9 + .../script-1.js | 23 + .../script-1.ts | 31 + .../script-2.js | 22 + .../script-2.ts | 22 + .../script-3.js | 5 + .../script-3.ts | 6 + .../customize-context-menu-cs1/app.ts | 0 .../customize-context-menu-cs1/index.css | 19 + .../customize-context-menu-cs1/index.js | 50 + .../customize-context-menu-cs1/index.ts | 64 + .../customize-context-menu-cs1/js/index.html | 39 + .../systemjs.config.js | 49 + .../customize-context-menu-cs1/ts/index.html | 34 + .../data-protection-cs1/index.css | 19 + .../data-protection-cs1/index.js | 12 + .../data-protection-cs1/index.ts | 18 + .../data-protection-cs1/js/index.html | 60 + .../data-protection-cs1/systemjs.config.js | 49 + .../data-protection-cs1/ts/index.html | 54 + .../data-protection-cs2/index.css | 19 + .../data-protection-cs2/index.js | 12 + .../data-protection-cs2/index.ts | 18 + .../data-protection-cs2/js/index.html | 60 + .../data-protection-cs2/systemjs.config.js | 49 + .../data-protection-cs2/ts/index.html | 54 + .../document-editor/dialog-cs1/app.ts | 0 .../document-editor/dialog-cs1/index.css | 18 + .../document-editor/dialog-cs1/index.js | 8 + .../document-editor/dialog-cs1/index.ts | 24 + .../document-editor/dialog-cs1/js/index.html | 43 + .../dialog-cs1/systemjs.config.js | 49 + .../document-editor/dialog-cs1/ts/index.html | 38 + .../document-editor/dialog-cs10/app.ts | 0 .../document-editor/dialog-cs10/index.css | 18 + .../document-editor/dialog-cs10/index.js | 8 + .../document-editor/dialog-cs10/index.ts | 22 + .../document-editor/dialog-cs10/js/index.html | 43 + .../dialog-cs10/systemjs.config.js | 49 + .../document-editor/dialog-cs10/ts/index.html | 38 + .../document-editor/dialog-cs11/app.ts | 0 .../document-editor/dialog-cs11/index.css | 18 + .../document-editor/dialog-cs11/index.js | 8 + .../document-editor/dialog-cs11/index.ts | 24 + .../document-editor/dialog-cs11/js/index.html | 43 + .../dialog-cs11/systemjs.config.js | 49 + .../document-editor/dialog-cs11/ts/index.html | 38 + .../document-editor/dialog-cs12/app.ts | 0 .../document-editor/dialog-cs12/index.css | 18 + .../document-editor/dialog-cs12/index.js | 8 + .../document-editor/dialog-cs12/index.ts | 26 + .../document-editor/dialog-cs12/js/index.html | 43 + .../dialog-cs12/systemjs.config.js | 49 + .../document-editor/dialog-cs12/ts/index.html | 38 + .../document-editor/dialog-cs13/app.ts | 0 .../document-editor/dialog-cs13/index.css | 18 + .../document-editor/dialog-cs13/index.js | 18 + .../document-editor/dialog-cs13/index.ts | 29 + .../document-editor/dialog-cs13/js/index.html | 43 + .../dialog-cs13/systemjs.config.js | 49 + .../document-editor/dialog-cs13/ts/index.html | 38 + .../document-editor/dialog-cs14/app.ts | 0 .../document-editor/dialog-cs14/index.css | 18 + .../document-editor/dialog-cs14/index.js | 8 + .../document-editor/dialog-cs14/index.ts | 22 + .../document-editor/dialog-cs14/js/index.html | 43 + .../dialog-cs14/systemjs.config.js | 49 + .../document-editor/dialog-cs14/ts/index.html | 38 + .../document-editor/dialog-cs15/app.ts | 0 .../document-editor/dialog-cs15/index.css | 18 + .../document-editor/dialog-cs15/index.js | 8 + .../document-editor/dialog-cs15/index.ts | 23 + .../document-editor/dialog-cs15/js/index.html | 43 + .../dialog-cs15/systemjs.config.js | 49 + .../document-editor/dialog-cs15/ts/index.html | 38 + .../document-editor/dialog-cs16/app.ts | 0 .../document-editor/dialog-cs16/index.css | 18 + .../document-editor/dialog-cs16/index.js | 8 + .../document-editor/dialog-cs16/index.ts | 24 + .../document-editor/dialog-cs16/js/index.html | 43 + .../dialog-cs16/systemjs.config.js | 49 + .../document-editor/dialog-cs16/ts/index.html | 38 + .../document-editor/dialog-cs2/app.ts | 0 .../document-editor/dialog-cs2/index.css | 18 + .../document-editor/dialog-cs2/index.js | 8 + .../document-editor/dialog-cs2/index.ts | 29 + .../document-editor/dialog-cs2/js/index.html | 43 + .../dialog-cs2/systemjs.config.js | 49 + .../document-editor/dialog-cs2/ts/index.html | 38 + .../document-editor/dialog-cs3/app.ts | 0 .../document-editor/dialog-cs3/index.css | 18 + .../document-editor/dialog-cs3/index.js | 8 + .../document-editor/dialog-cs3/index.ts | 22 + .../document-editor/dialog-cs3/js/index.html | 43 + .../dialog-cs3/systemjs.config.js | 49 + .../document-editor/dialog-cs3/ts/index.html | 38 + .../document-editor/dialog-cs4/app.ts | 0 .../document-editor/dialog-cs4/index.css | 18 + .../document-editor/dialog-cs4/index.js | 8 + .../document-editor/dialog-cs4/index.ts | 22 + .../document-editor/dialog-cs4/js/index.html | 43 + .../dialog-cs4/systemjs.config.js | 49 + .../document-editor/dialog-cs4/ts/index.html | 38 + .../document-editor/dialog-cs5/app.ts | 0 .../document-editor/dialog-cs5/index.css | 18 + .../document-editor/dialog-cs5/index.js | 8 + .../document-editor/dialog-cs5/index.ts | 22 + .../document-editor/dialog-cs5/js/index.html | 43 + .../dialog-cs5/systemjs.config.js | 49 + .../document-editor/dialog-cs5/ts/index.html | 38 + .../document-editor/dialog-cs6/app.ts | 0 .../document-editor/dialog-cs6/index.css | 18 + .../document-editor/dialog-cs6/index.js | 8 + .../document-editor/dialog-cs6/index.ts | 22 + .../document-editor/dialog-cs6/js/index.html | 43 + .../dialog-cs6/systemjs.config.js | 49 + .../document-editor/dialog-cs6/ts/index.html | 38 + .../document-editor/dialog-cs7/app.ts | 0 .../document-editor/dialog-cs7/index.css | 18 + .../document-editor/dialog-cs7/index.js | 8 + .../document-editor/dialog-cs7/index.ts | 22 + .../document-editor/dialog-cs7/js/index.html | 43 + .../dialog-cs7/systemjs.config.js | 49 + .../document-editor/dialog-cs7/ts/index.html | 38 + .../document-editor/dialog-cs8/app.ts | 0 .../document-editor/dialog-cs8/index.css | 18 + .../document-editor/dialog-cs8/index.js | 8 + .../document-editor/dialog-cs8/index.ts | 29 + .../document-editor/dialog-cs8/js/index.html | 43 + .../dialog-cs8/systemjs.config.js | 49 + .../document-editor/dialog-cs8/ts/index.html | 38 + .../document-editor/dialog-cs9/app.ts | 0 .../document-editor/dialog-cs9/index.css | 18 + .../document-editor/dialog-cs9/index.js | 8 + .../document-editor/dialog-cs9/index.ts | 28 + .../document-editor/dialog-cs9/js/index.html | 43 + .../dialog-cs9/systemjs.config.js | 49 + .../document-editor/dialog-cs9/ts/index.html | 38 + .../es5-getting-started-cs1/index.ts | 62 + .../es5-getting-started-cs1/js/index.html | 58 + .../es5-getting-started-cs1/ts/index.html | 0 .../es5-getting-started-cs2/index.ts | 59 + .../es5-getting-started-cs2/js/index.html | 57 + .../es5-getting-started-cs2/ts/index.html | 0 .../export-container-cs1/app.ts | 0 .../export-container-cs1/index.css | 12 + .../export-container-cs1/index.js | 9 + .../export-container-cs1/index.ts | 11 + .../export-container-cs1/js/index.html | 42 + .../export-container-cs1/systemjs.config.js | 49 + .../export-container-cs1/ts/index.html | 38 + .../export-container-cs2/app.ts | 0 .../export-container-cs2/index.css | 12 + .../export-container-cs2/index.js | 9 + .../export-container-cs2/index.ts | 11 + .../export-container-cs2/js/index.html | 42 + .../export-container-cs2/systemjs.config.js | 49 + .../export-container-cs2/ts/index.html | 38 + .../export-container-cs3/app.ts | 0 .../export-container-cs3/index.css | 12 + .../export-container-cs3/index.js | 9 + .../export-container-cs3/index.ts | 11 + .../export-container-cs3/js/index.html | 42 + .../export-container-cs3/systemjs.config.js | 49 + .../export-container-cs3/ts/index.html | 38 + .../export-container-cs4/app.ts | 0 .../export-container-cs4/index.css | 12 + .../export-container-cs4/index.js | 9 + .../export-container-cs4/index.ts | 11 + .../export-container-cs4/js/index.html | 42 + .../export-container-cs4/systemjs.config.js | 49 + .../export-container-cs4/ts/index.html | 38 + .../document-editor/export-cs1/app.ts | 0 .../document-editor/export-cs1/index.css | 13 + .../document-editor/export-cs1/index.js | 8 + .../document-editor/export-cs1/index.ts | 16 + .../document-editor/export-cs1/js/index.html | 34 + .../export-cs1/systemjs.config.js | 49 + .../document-editor/export-cs1/ts/index.html | 29 + .../document-editor/export-cs2/app.ts | 0 .../document-editor/export-cs2/index.css | 13 + .../document-editor/export-cs2/index.js | 8 + .../document-editor/export-cs2/index.ts | 16 + .../document-editor/export-cs2/js/index.html | 34 + .../export-cs2/systemjs.config.js | 49 + .../document-editor/export-cs2/ts/index.html | 29 + .../document-editor/export-cs3/app.ts | 0 .../document-editor/export-cs3/index.css | 13 + .../document-editor/export-cs3/index.js | 8 + .../document-editor/export-cs3/index.ts | 18 + .../document-editor/export-cs3/js/index.html | 34 + .../export-cs3/systemjs.config.js | 49 + .../document-editor/export-cs3/ts/index.html | 29 + .../document-editor/export-cs4/app.ts | 0 .../document-editor/export-cs4/index.css | 13 + .../document-editor/export-cs4/index.js | 8 + .../document-editor/export-cs4/index.ts | 18 + .../document-editor/export-cs4/js/index.html | 34 + .../export-cs4/systemjs.config.js | 49 + .../document-editor/export-cs4/ts/index.html | 29 + .../document-editor/find-cs1/app.ts | 0 .../document-editor/find-cs1/index.css | 13 + .../document-editor/find-cs1/index.js | 26 + .../document-editor/find-cs1/index.ts | 31 + .../document-editor/find-cs1/js/index.html | 42 + .../find-cs1/systemjs.config.js | 49 + .../document-editor/find-cs1/ts/index.html | 37 + .../getting-started-cs1/app.ts | 0 .../getting-started-cs1/index.css | 19 + .../getting-started-cs1/index.ts | 15 + .../getting-started-cs1/js/index.html | 39 + .../getting-started-cs1/systemjs.config.js | 49 + .../getting-started-cs1/ts/index.html | 34 + .../getting-started-cs2/app.ts | 0 .../getting-started-cs2/index.css | 19 + .../getting-started-cs2/index.ts | 15 + .../getting-started-cs2/js/index.html | 39 + .../getting-started-cs2/systemjs.config.js | 49 + .../getting-started-cs2/ts/index.html | 34 + .../document-editor/hyperlink-cs1/app.ts | 0 .../document-editor/hyperlink-cs1/index.css | 19 + .../document-editor/hyperlink-cs1/index.js | 15 + .../document-editor/hyperlink-cs1/index.ts | 24 + .../hyperlink-cs1/js/index.html | 30 + .../hyperlink-cs1/systemjs.config.js | 49 + .../hyperlink-cs1/ts/index.html | 25 + .../document-editor/hyperlink-cs2/app.ts | 0 .../document-editor/hyperlink-cs2/index.css | 19 + .../document-editor/hyperlink-cs2/index.js | 15 + .../document-editor/hyperlink-cs2/index.ts | 20 + .../hyperlink-cs2/js/index.html | 30 + .../hyperlink-cs2/systemjs.config.js | 49 + .../hyperlink-cs2/ts/index.html | 25 + .../document-editor/image-cs1/app.ts | 0 .../document-editor/image-cs1/index.css | 18 + .../document-editor/image-cs1/index.js | 41 + .../document-editor/image-cs1/index.ts | 57 + .../document-editor/image-cs1/js/index.html | 44 + .../image-cs1/systemjs.config.js | 49 + .../document-editor/image-cs1/ts/index.html | 39 + .../document-editor/import-cs1/app.ts | 0 .../document-editor/import-cs1/index.css | 18 + .../document-editor/import-cs1/index.js | 28 + .../document-editor/import-cs1/index.ts | 35 + .../document-editor/import-cs1/js/index.html | 31 + .../import-cs1/systemjs.config.js | 49 + .../document-editor/import-cs1/ts/index.html | 26 + .../document-editor/import-sfdt-cs1/app.ts | 0 .../document-editor/import-sfdt-cs1/index.css | 18 + .../document-editor/import-sfdt-cs1/index.js | 25 + .../document-editor/import-sfdt-cs1/index.ts | 36 + .../import-sfdt-cs1/js/index.html | 33 + .../import-sfdt-cs1/systemjs.config.js | 49 + .../import-sfdt-cs1/ts/index.html | 28 + .../document-editor/list-cs1/app.ts | 0 .../document-editor/list-cs1/index.css | 19 + .../document-editor/list-cs1/index.js | 47 + .../document-editor/list-cs1/index.ts | 58 + .../document-editor/list-cs1/js/index.html | 41 + .../list-cs1/systemjs.config.js | 49 + .../document-editor/list-cs1/ts/index.html | 36 + .../document-editor/open-aws-s3/index.ts | 40 + .../document-editor/open-aws-s3/js/index.html | 113 + .../open-aws-s3/systemjs.config.js | 45 + .../document-editor/open-aws-s3/ts/index.html | 30 + .../document-editor/open-azure-blob/index.ts | 40 + .../open-azure-blob/js/index.html | 86 + .../open-azure-blob/systemjs.config.js | 45 + .../open-azure-blob/ts/index.html | 30 + .../open-box-cloud-file-storage/index.ts | 41 + .../open-box-cloud-file-storage/js/index.html | 113 + .../systemjs.config.js | 45 + .../open-box-cloud-file-storage/ts/index.html | 30 + .../open-default-document-cs1/index.css | 19 + .../open-default-document-cs1/index.js | 12 + .../open-default-document-cs1/index.ts | 23 + .../open-default-document-cs1/js/index.html | 39 + .../systemjs.config.js | 49 + .../open-default-document-cs1/ts/index.html | 34 + .../open-default-document-cs2/index.css | 19 + .../open-default-document-cs2/index.js | 15 + .../open-default-document-cs2/index.ts | 23 + .../open-default-document-cs2/js/index.html | 39 + .../systemjs.config.js | 49 + .../open-default-document-cs2/ts/index.html | 34 + .../open-dropbox-cloud-file-storage/index.ts | 39 + .../js/index.html | 113 + .../systemjs.config.js | 45 + .../ts/index.html | 30 + .../open-google-cloud-storage/index.ts | 40 + .../open-google-cloud-storage/js/index.html | 113 + .../systemjs.config.js | 45 + .../open-google-cloud-storage/ts/index.html | 30 + .../open-google-drive/index.ts | 40 + .../open-google-drive/js/index.html | 113 + .../open-google-drive/systemjs.config.js | 45 + .../open-google-drive/ts/index.html | 30 + .../document-editor/open-one-drive/index.ts | 40 + .../open-one-drive/js/index.html | 113 + .../open-one-drive/systemjs.config.js | 45 + .../open-one-drive/ts/index.html | 30 + .../override-keyboard-cs1/app.ts | 0 .../override-keyboard-cs1/index.css | 19 + .../override-keyboard-cs1/index.js | 24 + .../override-keyboard-cs1/index.ts | 32 + .../override-keyboard-cs1/js/index.html | 39 + .../override-keyboard-cs1/systemjs.config.js | 49 + .../override-keyboard-cs1/ts/index.html | 34 + .../override-keyboard-cs2/app.ts | 0 .../override-keyboard-cs2/index.css | 19 + .../override-keyboard-cs2/index.js | 24 + .../override-keyboard-cs2/index.ts | 32 + .../override-keyboard-cs2/js/index.html | 39 + .../override-keyboard-cs2/systemjs.config.js | 49 + .../override-keyboard-cs2/ts/index.html | 34 + .../paragraph-format-cs1/app.ts | 0 .../paragraph-format-cs1/index.css | 19 + .../paragraph-format-cs1/index.js | 154 + .../paragraph-format-cs1/index.ts | 181 + .../paragraph-format-cs1/js/index.html | 41 + .../paragraph-format-cs1/systemjs.config.js | 49 + .../paragraph-format-cs1/ts/index.html | 36 + .../prevent-keyboard-cs1/app.ts | 0 .../prevent-keyboard-cs1/index.css | 19 + .../prevent-keyboard-cs1/index.js | 16 + .../prevent-keyboard-cs1/index.ts | 24 + .../prevent-keyboard-cs1/js/index.html | 39 + .../prevent-keyboard-cs1/systemjs.config.js | 49 + .../prevent-keyboard-cs1/ts/index.html | 34 + .../prevent-keyboard-cs2/app.ts | 0 .../prevent-keyboard-cs2/index.css | 19 + .../prevent-keyboard-cs2/index.js | 16 + .../prevent-keyboard-cs2/index.ts | 24 + .../prevent-keyboard-cs2/js/index.html | 39 + .../prevent-keyboard-cs2/systemjs.config.js | 49 + .../prevent-keyboard-cs2/ts/index.html | 34 + .../document-editor/print-cs1/app.ts | 0 .../document-editor/print-cs1/index.css | 18 + .../document-editor/print-cs1/index.js | 38 + .../document-editor/print-cs1/index.ts | 42 + .../document-editor/print-cs1/js/index.html | 31 + .../print-cs1/systemjs.config.js | 49 + .../document-editor/print-cs1/ts/index.html | 26 + .../document-editor/print-cs2/app.ts | 0 .../document-editor/print-cs2/index.css | 18 + .../document-editor/print-cs2/index.js | 18 + .../document-editor/print-cs2/index.ts | 24 + .../document-editor/print-cs2/js/index.html | 31 + .../print-cs2/systemjs.config.js | 49 + .../document-editor/print-cs2/ts/index.html | 26 + .../document-editor/print-cs3/app.ts | 0 .../document-editor/print-cs3/index.css | 18 + .../document-editor/print-cs3/index.js | 36 + .../document-editor/print-cs3/index.ts | 36 + .../document-editor/print-cs3/js/index.html | 31 + .../print-cs3/systemjs.config.js | 49 + .../document-editor/print-cs3/ts/index.html | 26 + .../read-container-cs1/index.css | 13 + .../read-container-cs1/index.js | 12 + .../read-container-cs1/index.ts | 23 + .../read-container-cs1/js/index.html | 39 + .../read-container-cs1/systemjs.config.js | 49 + .../read-container-cs1/ts/index.html | 34 + .../document-editor/read-cs1/index.css | 19 + .../document-editor/read-cs1/index.js | 14 + .../document-editor/read-cs1/index.ts | 26 + .../document-editor/read-cs1/js/index.html | 39 + .../read-cs1/systemjs.config.js | 49 + .../document-editor/read-cs1/ts/index.html | 34 + .../document-editor/replace-cs1/app.ts | 0 .../document-editor/replace-cs1/index.css | 13 + .../document-editor/replace-cs1/index.js | 35 + .../document-editor/replace-cs1/index.ts | 45 + .../document-editor/replace-cs1/js/index.html | 57 + .../replace-cs1/systemjs.config.js | 49 + .../document-editor/replace-cs1/ts/index.html | 52 + .../document-editor/rtl-cs1/app.ts | 0 .../document-editor/rtl-cs1/index.css | 19 + .../document-editor/rtl-cs1/index.js | 333 ++ .../document-editor/rtl-cs1/index.ts | 339 ++ .../document-editor/rtl-cs1/js/index.html | 41 + .../rtl-cs1/systemjs.config.js | 49 + .../document-editor/rtl-cs1/ts/index.html | 36 + .../document-editor/ruler-cs1/index.css | 19 + .../document-editor/ruler-cs1/index.js | 17 + .../document-editor/ruler-cs1/index.ts | 21 + .../document-editor/ruler-cs1/js/index.html | 39 + .../ruler-cs1/systemjs.config.js | 49 + .../document-editor/ruler-cs1/ts/index.html | 34 + .../document-editor/ruler-cs2/index.css | 19 + .../document-editor/ruler-cs2/index.js | 17 + .../document-editor/ruler-cs2/index.ts | 21 + .../document-editor/ruler-cs2/js/index.html | 39 + .../ruler-cs2/systemjs.config.js | 49 + .../document-editor/ruler-cs2/ts/index.html | 34 + .../document-editor/save-aws-s3/index.ts | 42 + .../document-editor/save-aws-s3/js/index.html | 114 + .../save-aws-s3/systemjs.config.js | 45 + .../document-editor/save-aws-s3/ts/index.html | 30 + .../document-editor/save-azure-blob/index.ts | 42 + .../save-azure-blob/js/index.html | 88 + .../save-azure-blob/systemjs.config.js | 45 + .../save-azure-blob/ts/index.html | 30 + .../save-box-cloud-file-storage/index.ts | 42 + .../save-box-cloud-file-storage/js/index.html | 114 + .../systemjs.config.js | 45 + .../save-box-cloud-file-storage/ts/index.html | 30 + .../save-dropbox-cloud-file-storage/index.ts | 42 + .../js/index.html | 114 + .../systemjs.config.js | 45 + .../ts/index.html | 30 + .../save-google-cloud-storage/index.ts | 42 + .../save-google-cloud-storage/js/index.html | 114 + .../systemjs.config.js | 45 + .../save-google-cloud-storage/ts/index.html | 30 + .../save-google-drive/index.ts | 42 + .../save-google-drive/js/index.html | 114 + .../save-google-drive/systemjs.config.js | 45 + .../save-google-drive/ts/index.html | 30 + .../document-editor/save-one-drive/index.ts | 42 + .../save-one-drive/js/index.html | 114 + .../save-one-drive/systemjs.config.js | 45 + .../save-one-drive/ts/index.html | 30 + .../scrolling-zooming-cs1/app.ts | 0 .../scrolling-zooming-cs1/index.css | 26 + .../scrolling-zooming-cs1/index.js | 62 + .../scrolling-zooming-cs1/index.ts | 68 + .../scrolling-zooming-cs1/js/index.html | 39 + .../scrolling-zooming-cs1/systemjs.config.js | 49 + .../scrolling-zooming-cs1/ts/index.html | 34 + .../scrolling-zooming-cs2/app.ts | 0 .../scrolling-zooming-cs2/index.css | 26 + .../scrolling-zooming-cs2/index.js | 78 + .../scrolling-zooming-cs2/index.ts | 83 + .../scrolling-zooming-cs2/js/index.html | 39 + .../scrolling-zooming-cs2/systemjs.config.js | 49 + .../scrolling-zooming-cs2/ts/index.html | 34 + .../scrolling-zooming-cs3/app.ts | 0 .../scrolling-zooming-cs3/index.css | 26 + .../scrolling-zooming-cs3/index.js | 153 + .../scrolling-zooming-cs3/index.ts | 163 + .../scrolling-zooming-cs3/js/index.html | 39 + .../scrolling-zooming-cs3/systemjs.config.js | 49 + .../scrolling-zooming-cs3/ts/index.html | 34 + .../document-editor/spinner-cs1/index.css | 19 + .../document-editor/spinner-cs1/index.js | 27 + .../document-editor/spinner-cs1/index.ts | 32 + .../document-editor/spinner-cs1/js/index.html | 39 + .../spinner-cs1/systemjs.config.js | 49 + .../document-editor/spinner-cs1/ts/index.html | 34 + .../document-editor/table-cs1/app.ts | 0 .../document-editor/table-cs1/index.css | 19 + .../document-editor/table-cs1/index.js | 119 + .../document-editor/table-cs1/index.ts | 137 + .../document-editor/table-cs1/js/index.html | 39 + .../table-cs1/systemjs.config.js | 49 + .../document-editor/table-cs1/ts/index.html | 34 + .../table-of-contents-cs1/app.ts | 0 .../table-of-contents-cs1/index.css | 13 + .../table-of-contents-cs1/index.js | 13 + .../table-of-contents-cs1/index.ts | 13 + .../table-of-contents-cs1/js/index.html | 31 + .../table-of-contents-cs1/systemjs.config.js | 49 + .../table-of-contents-cs1/ts/index.html | 26 + .../document-editor/text-format-cs1/app.ts | 0 .../document-editor/text-format-cs1/index.css | 19 + .../document-editor/text-format-cs1/index.js | 146 + .../document-editor/text-format-cs1/index.ts | 156 + .../text-format-cs1/js/index.html | 41 + .../text-format-cs1/systemjs.config.js | 49 + .../text-format-cs1/ts/index.html | 36 + .../document-editor/accessibility.md | 54 + ej2-javascript/document-editor/bookmark.md | 125 + ej2-javascript/document-editor/chart.md | 66 + ej2-javascript/document-editor/clipboard.md | 101 + .../collaborative-editing/overview.md | 43 + .../using-redis-cache-asp-net-core.md | 408 ++ .../using-redis-cache-java.md | 349 ++ ej2-javascript/document-editor/comments.md | 323 ++ .../document-editor/content-control.md | 166 + ej2-javascript/document-editor/dialog.md | 481 +++ .../document-editor/document-management.md | 89 + ej2-javascript/document-editor/export.md | 346 ++ .../faq/unsupported-file-format.md | 30 + .../document-editor/feature-module.md | 56 + ej2-javascript/document-editor/fields.md | 86 + .../document-editor/find-and-replace.md | 177 + ej2-javascript/document-editor/form-fields.md | 150 + .../document-editor/global-local.md | 528 +++ .../document-editor/header-footer.md | 92 + ej2-javascript/document-editor/history.md | 64 + ej2-javascript/document-editor/how-to.md | 78 + .../how-to/add-save-button-in-toolbar.md | 72 + .../auto-save-document-in-document-editor.md | 128 + .../how-to/auto-save-document.md | 89 + .../how-to/change-document-view.md | 32 + ...nge-the-cursor-color-in-document-editor.md | 26 + ...ange-the-default-search-highlight-color.md | 37 + .../how-to/customize-color-picker.md | 45 + .../how-to/customize-context-menu.md | 205 + .../how-to/customize-font-family-drop-down.md | 36 + .../how-to/customize-tool-bar.md | 61 + ...oy-document-editor-component-for-mobile.md | 53 + .../how-to/disable-auto-focus.md | 30 + .../how-to/disable-drag-and-drop.md | 30 + ...ader-and-footer-edit-in-document-editor.md | 97 + .../disable-optimized-text-measuring.md | 54 + ...able-ruler-in-document-editor-component.md | 79 + .../how-to/export-document-as-pdf.md | 210 + .../how-to/get-current-word.md | 74 + .../how-to/get-the-selected-content.md | 112 + .../hide-tool-bar-and-properties-pane.md | 60 + ...insert-page-number-and-navigate-to-page.md | 96 + .../how-to/insert-text-in-current-position.md | 120 + ...text-or-image-in-table-programmatically.md | 74 + .../move-selection-to-specific-position.md | 76 + .../how-to/open-default-document.md | 82 + .../how-to/open-document-by-address.md | 70 + .../how-to/override-the-keyboard-shortcuts.md | 46 + .../how-to/read-only-default.md | 74 + .../how-to/resize-document-editor.md | 84 + .../retrieve-the-bookmark-content-as-text.md | 130 + .../set-default-format-in-document-editor.md | 114 + .../how-to/show-hide-spinner.md | 55 + ej2-javascript/document-editor/image.md | 80 + ...BorderToSelectedCell_viaPropertiesPane.gif | Bin 0 -> 65910 bytes .../images/Column_Limit_Alert.png | Bin 0 -> 37740 bytes .../images/Row_Limit_Alert.png | Bin 0 -> 36061 bytes .../images/Shapes_images/shape_resizer.png | Bin 0 -> 4813 bytes .../images/Shapes_images/supported_shapes.png | Bin 0 -> 58487 bytes .../images/Shapes_images/textbox_shape.png | Bin 0 -> 57731 bytes .../behind-textwrapping.PNG | Bin 0 -> 88204 bytes .../infront-textwrapping.PNG | Bin 0 -> 83315 bytes .../inline-textwrapping.PNG | Bin 0 -> 75079 bytes .../square-textwrapping.PNG | Bin 0 -> 43509 bytes .../topandbottom-textwrapping.PNG | Bin 0 -> 79149 bytes .../images/azure_documenteditor.png | Bin 0 -> 53251 bytes .../images/azure_java_advancedtools.png | Bin 0 -> 30076 bytes .../images/azure_java_debugconsole.png | Bin 0 -> 41492 bytes .../document-editor/images/azure_publish.png | Bin 0 -> 22326 bytes .../document-editor/images/azure_target.png | Bin 0 -> 12220 bytes .../document-editor/images/commentsonly.png | Bin 0 -> 39057 bytes .../document-editor/images/cursor-css.png | Bin 0 -> 41538 bytes .../document-editor/images/font-family.png | Bin 0 -> 24222 bytes .../document-editor/images/fontColor.png | Bin 0 -> 90239 bytes .../document-editor/images/image.JPG | Bin 0 -> 17093 bytes .../document-editor/images/image.png | Bin 0 -> 58190 bytes .../document-editor/images/insert_text.gif | Bin 0 -> 75306 bytes .../images/java_azure_uploaded.png | Bin 0 -> 38251 bytes .../document-editor/images/list.JPG | Bin 0 -> 14307 bytes .../document-editor/images/list.png | Bin 0 -> 19667 bytes .../document-editor/images/note-toolbar.jpg | Bin 0 -> 5817 bytes .../document-editor/images/notes-option.jpg | Bin 0 -> 74828 bytes .../document-editor/images/paste.PNG | Bin 0 -> 99251 bytes .../document-editor/images/screentip.png | Bin 0 -> 26842 bytes .../document-editor/images/search-color.png | Bin 0 -> 75849 bytes .../images/spell-check-dialog.png | Bin 0 -> 28833 bytes .../images/spell-check-menu.png | Bin 0 -> 9966 bytes .../document-editor/images/table-image.png | Bin 0 -> 36082 bytes .../images/table-of-contents.jpeg | Bin 0 -> 16905 bytes .../images/table-of-contents.png | Bin 0 -> 59479 bytes .../images/toolbar-form-fields.png | Bin 0 -> 12233 bytes .../document-editor/images/track-changes.png | Bin 0 -> 44754 bytes .../images/tracked-changes.png | Bin 0 -> 36975 bytes .../document-editor/images/updatefields.png | Bin 0 -> 28015 bytes .../images/word2013justification.png | Bin 0 -> 67703 bytes ej2-javascript/document-editor/import.md | 209 + .../document-editor/js/getting-started.md | 383 ++ .../js/how-to/customize-ribbon.md | 246 ++ .../js/how-to/optimize-sfdt.md | 124 + ej2-javascript/document-editor/js/ribbon.md | 69 + ej2-javascript/document-editor/js/styles.md | 228 ++ .../js/web-services-overview.md | 120 + .../document-editor/keyboard-shortcut.md | 134 + ej2-javascript/document-editor/link.md | 204 + ej2-javascript/document-editor/list-format.md | 97 + ej2-javascript/document-editor/notes.md | 58 + .../opening-documents/aws-s3-bucket.md | 155 + .../opening-documents/azure-blob-storage.md | 141 + .../box-cloud-file-storage.md | 167 + .../dropbox-cloud-file-storage.md | 150 + .../opening-documents/google-cloud-storage.md | 156 + .../opening-documents/google-drive.md | 181 + .../opening-documents/one-drive.md | 185 + ej2-javascript/document-editor/overview.md | 68 + .../document-editor/paragraph-format.md | 191 + ej2-javascript/document-editor/print.md | 171 + ej2-javascript/document-editor/r-t-l.md | 41 + .../document-editor/restrict-editing.md | 79 + .../saving-documents/aws-s3-bucket.md | 163 + .../saving-documents/azure-blob-storage.md | 148 + .../box-cloud-file-storage.md | 172 + .../dropbox-cloud-file-storage.md | 164 + .../saving-documents/google-cloud-storage.md | 167 + .../saving-documents/google-drive.md | 192 + .../saving-documents/one-drive.md | 189 + .../saving-documents/server-side-export.md | 70 + .../document-editor/scrolling-zooming.md | 141 + .../document-editor/section-format.md | 98 + .../document-editor/security-advisories.md | 54 + ...oy-documenteditor-java-web-api-in-azure.md | 63 + ...-container-in-amazon-kubernetes-service.md | 151 + ...r-docker-container-in-azure-app-service.md | 57 + ...r-container-in-azure-kubernetes-service.md | 117 + ...in-azure-app-service-from-visual-studio.md | 44 + ...-processor-server-docker-image-overview.md | 231 ++ ej2-javascript/document-editor/shapes.md | 42 + ej2-javascript/document-editor/spell-check.md | 162 + .../document-editor/table-format.md | 211 + .../document-editor/table-of-contents.md | 80 + ej2-javascript/document-editor/table.md | 223 + ej2-javascript/document-editor/text-format.md | 230 ++ .../document-editor/text-wrapping-style.md | 52 + .../document-editor/track-changes.md | 379 ++ .../document-editor/ts/getting-started.md | 278 ++ .../ts/how-to/customize-ribbon.md | 232 ++ .../ts/how-to/optimize-sfdt.md | 124 + ej2-javascript/document-editor/ts/ribbon.md | 73 + ej2-javascript/document-editor/ts/styles.md | 209 + .../ts/web-services-overview.md | 123 + ej2-javascript/document-editor/view.md | 73 + .../document-editor/web-services/core.md | 523 +++ .../document-editor/web-services/java.md | 685 ++++ .../document-editor/web-services/mvc.md | 378 ++ .../stock-chart/working-with-data.md | 81 + ej2-typescript-toc.html | 3642 +++++++++++++++++ 649 files changed, 37274 insertions(+) create mode 100644 ej2-javascript/chart/working-with-data.md create mode 100644 ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/accessibility-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/accessibility-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/accessibility-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/chart-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/chart-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/chart-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/chart-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/chart-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/chart-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.ts create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.ts create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.ts create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.ts create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.ts create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.js create mode 100644 ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.ts create mode 100644 ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/data-protection-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs10/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs10/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs10/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs10/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs10/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs10/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs10/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs11/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs11/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs11/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs11/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs11/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs11/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs11/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs12/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs12/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs12/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs12/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs12/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs12/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs12/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs13/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs13/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs13/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs13/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs13/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs13/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs13/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs14/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs14/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs14/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs14/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs14/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs14/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs14/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs15/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs15/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs15/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs15/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs15/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs15/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs15/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs16/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs16/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs16/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs16/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs16/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs16/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs16/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs3/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs3/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs3/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs3/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs3/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs3/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs3/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs4/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs4/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs4/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs4/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs4/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs4/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs4/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs5/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs5/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs5/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs5/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs5/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs5/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs5/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs6/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs6/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs6/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs6/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs6/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs6/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs6/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs7/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs7/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs7/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs7/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs7/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs7/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs7/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs8/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs8/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs8/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs8/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs8/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs8/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs8/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs9/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs9/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs9/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs9/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs9/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs9/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/dialog-cs9/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs3/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs3/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs3/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs3/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs3/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs3/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs3/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs4/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs4/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs4/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs4/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs4/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs4/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-container-cs4/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs3/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs3/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs3/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs3/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs3/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs3/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs3/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs4/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs4/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs4/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs4/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs4/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs4/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/export-cs4/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/find-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/find-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/find-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/find-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/find-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/find-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/find-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/getting-started-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/hyperlink-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/image-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/image-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/image-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/image-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/image-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/image-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/image-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/import-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/import-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/import-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/import-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/import-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/import-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/import-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/list-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/list-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/list-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/list-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/list-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/list-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/list-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-aws-s3/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-aws-s3/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-aws-s3/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-aws-s3/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-azure-blob/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-azure-blob/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-azure-blob/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-azure-blob/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-default-document-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-drive/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-drive/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-drive/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-google-drive/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-one-drive/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/open-one-drive/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/open-one-drive/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/open-one-drive/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs3/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs3/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs3/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs3/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs3/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs3/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/print-cs3/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/read-container-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/read-container-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/read-container-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/read-container-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/read-container-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/read-container-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/read-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/read-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/read-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/read-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/read-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/read-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/replace-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/replace-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/replace-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/replace-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/replace-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/replace-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/replace-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/rtl-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/rtl-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/rtl-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/rtl-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/rtl-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/rtl-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/rtl-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/ruler-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-aws-s3/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/save-aws-s3/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-aws-s3/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/save-aws-s3/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-azure-blob/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/save-azure-blob/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-azure-blob/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/save-azure-blob/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-drive/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-drive/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-drive/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/save-google-drive/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-one-drive/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/save-one-drive/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/save-one-drive/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/save-one-drive/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/spinner-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/spinner-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/spinner-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/spinner-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/spinner-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/spinner-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/table-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/table-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/table-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/table-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/table-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/table-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/table-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/ts/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/text-format-cs1/app.ts create mode 100644 ej2-javascript/code-snippet/document-editor/text-format-cs1/index.css create mode 100644 ej2-javascript/code-snippet/document-editor/text-format-cs1/index.js create mode 100644 ej2-javascript/code-snippet/document-editor/text-format-cs1/index.ts create mode 100644 ej2-javascript/code-snippet/document-editor/text-format-cs1/js/index.html create mode 100644 ej2-javascript/code-snippet/document-editor/text-format-cs1/systemjs.config.js create mode 100644 ej2-javascript/code-snippet/document-editor/text-format-cs1/ts/index.html create mode 100644 ej2-javascript/document-editor/accessibility.md create mode 100644 ej2-javascript/document-editor/bookmark.md create mode 100644 ej2-javascript/document-editor/chart.md create mode 100644 ej2-javascript/document-editor/clipboard.md create mode 100644 ej2-javascript/document-editor/collaborative-editing/overview.md create mode 100644 ej2-javascript/document-editor/collaborative-editing/using-redis-cache-asp-net-core.md create mode 100644 ej2-javascript/document-editor/collaborative-editing/using-redis-cache-java.md create mode 100644 ej2-javascript/document-editor/comments.md create mode 100644 ej2-javascript/document-editor/content-control.md create mode 100644 ej2-javascript/document-editor/dialog.md create mode 100644 ej2-javascript/document-editor/document-management.md create mode 100644 ej2-javascript/document-editor/export.md create mode 100644 ej2-javascript/document-editor/faq/unsupported-file-format.md create mode 100644 ej2-javascript/document-editor/feature-module.md create mode 100644 ej2-javascript/document-editor/fields.md create mode 100644 ej2-javascript/document-editor/find-and-replace.md create mode 100644 ej2-javascript/document-editor/form-fields.md create mode 100644 ej2-javascript/document-editor/global-local.md create mode 100644 ej2-javascript/document-editor/header-footer.md create mode 100644 ej2-javascript/document-editor/history.md create mode 100644 ej2-javascript/document-editor/how-to.md create mode 100644 ej2-javascript/document-editor/how-to/add-save-button-in-toolbar.md create mode 100644 ej2-javascript/document-editor/how-to/auto-save-document-in-document-editor.md create mode 100644 ej2-javascript/document-editor/how-to/auto-save-document.md create mode 100644 ej2-javascript/document-editor/how-to/change-document-view.md create mode 100644 ej2-javascript/document-editor/how-to/change-the-cursor-color-in-document-editor.md create mode 100644 ej2-javascript/document-editor/how-to/change-the-default-search-highlight-color.md create mode 100644 ej2-javascript/document-editor/how-to/customize-color-picker.md create mode 100644 ej2-javascript/document-editor/how-to/customize-context-menu.md create mode 100644 ej2-javascript/document-editor/how-to/customize-font-family-drop-down.md create mode 100644 ej2-javascript/document-editor/how-to/customize-tool-bar.md create mode 100644 ej2-javascript/document-editor/how-to/deploy-document-editor-component-for-mobile.md create mode 100644 ej2-javascript/document-editor/how-to/disable-auto-focus.md create mode 100644 ej2-javascript/document-editor/how-to/disable-drag-and-drop.md create mode 100644 ej2-javascript/document-editor/how-to/disable-header-and-footer-edit-in-document-editor.md create mode 100644 ej2-javascript/document-editor/how-to/disable-optimized-text-measuring.md create mode 100644 ej2-javascript/document-editor/how-to/enable-ruler-in-document-editor-component.md create mode 100644 ej2-javascript/document-editor/how-to/export-document-as-pdf.md create mode 100644 ej2-javascript/document-editor/how-to/get-current-word.md create mode 100644 ej2-javascript/document-editor/how-to/get-the-selected-content.md create mode 100644 ej2-javascript/document-editor/how-to/hide-tool-bar-and-properties-pane.md create mode 100644 ej2-javascript/document-editor/how-to/insert-page-number-and-navigate-to-page.md create mode 100644 ej2-javascript/document-editor/how-to/insert-text-in-current-position.md create mode 100644 ej2-javascript/document-editor/how-to/insert-text-or-image-in-table-programmatically.md create mode 100644 ej2-javascript/document-editor/how-to/move-selection-to-specific-position.md create mode 100644 ej2-javascript/document-editor/how-to/open-default-document.md create mode 100644 ej2-javascript/document-editor/how-to/open-document-by-address.md create mode 100644 ej2-javascript/document-editor/how-to/override-the-keyboard-shortcuts.md create mode 100644 ej2-javascript/document-editor/how-to/read-only-default.md create mode 100644 ej2-javascript/document-editor/how-to/resize-document-editor.md create mode 100644 ej2-javascript/document-editor/how-to/retrieve-the-bookmark-content-as-text.md create mode 100644 ej2-javascript/document-editor/how-to/set-default-format-in-document-editor.md create mode 100644 ej2-javascript/document-editor/how-to/show-hide-spinner.md create mode 100644 ej2-javascript/document-editor/image.md create mode 100644 ej2-javascript/document-editor/images/ApplyBorderToSelectedCell_viaPropertiesPane.gif create mode 100644 ej2-javascript/document-editor/images/Column_Limit_Alert.png create mode 100644 ej2-javascript/document-editor/images/Row_Limit_Alert.png create mode 100644 ej2-javascript/document-editor/images/Shapes_images/shape_resizer.png create mode 100644 ej2-javascript/document-editor/images/Shapes_images/supported_shapes.png create mode 100644 ej2-javascript/document-editor/images/Shapes_images/textbox_shape.png create mode 100644 ej2-javascript/document-editor/images/Text-Wrapping-Style_images/behind-textwrapping.PNG create mode 100644 ej2-javascript/document-editor/images/Text-Wrapping-Style_images/infront-textwrapping.PNG create mode 100644 ej2-javascript/document-editor/images/Text-Wrapping-Style_images/inline-textwrapping.PNG create mode 100644 ej2-javascript/document-editor/images/Text-Wrapping-Style_images/square-textwrapping.PNG create mode 100644 ej2-javascript/document-editor/images/Text-Wrapping-Style_images/topandbottom-textwrapping.PNG create mode 100644 ej2-javascript/document-editor/images/azure_documenteditor.png create mode 100644 ej2-javascript/document-editor/images/azure_java_advancedtools.png create mode 100644 ej2-javascript/document-editor/images/azure_java_debugconsole.png create mode 100644 ej2-javascript/document-editor/images/azure_publish.png create mode 100644 ej2-javascript/document-editor/images/azure_target.png create mode 100644 ej2-javascript/document-editor/images/commentsonly.png create mode 100644 ej2-javascript/document-editor/images/cursor-css.png create mode 100644 ej2-javascript/document-editor/images/font-family.png create mode 100644 ej2-javascript/document-editor/images/fontColor.png create mode 100644 ej2-javascript/document-editor/images/image.JPG create mode 100644 ej2-javascript/document-editor/images/image.png create mode 100644 ej2-javascript/document-editor/images/insert_text.gif create mode 100644 ej2-javascript/document-editor/images/java_azure_uploaded.png create mode 100644 ej2-javascript/document-editor/images/list.JPG create mode 100644 ej2-javascript/document-editor/images/list.png create mode 100644 ej2-javascript/document-editor/images/note-toolbar.jpg create mode 100644 ej2-javascript/document-editor/images/notes-option.jpg create mode 100644 ej2-javascript/document-editor/images/paste.PNG create mode 100644 ej2-javascript/document-editor/images/screentip.png create mode 100644 ej2-javascript/document-editor/images/search-color.png create mode 100644 ej2-javascript/document-editor/images/spell-check-dialog.png create mode 100644 ej2-javascript/document-editor/images/spell-check-menu.png create mode 100644 ej2-javascript/document-editor/images/table-image.png create mode 100644 ej2-javascript/document-editor/images/table-of-contents.jpeg create mode 100644 ej2-javascript/document-editor/images/table-of-contents.png create mode 100644 ej2-javascript/document-editor/images/toolbar-form-fields.png create mode 100644 ej2-javascript/document-editor/images/track-changes.png create mode 100644 ej2-javascript/document-editor/images/tracked-changes.png create mode 100644 ej2-javascript/document-editor/images/updatefields.png create mode 100644 ej2-javascript/document-editor/images/word2013justification.png create mode 100644 ej2-javascript/document-editor/import.md create mode 100644 ej2-javascript/document-editor/js/getting-started.md create mode 100644 ej2-javascript/document-editor/js/how-to/customize-ribbon.md create mode 100644 ej2-javascript/document-editor/js/how-to/optimize-sfdt.md create mode 100644 ej2-javascript/document-editor/js/ribbon.md create mode 100644 ej2-javascript/document-editor/js/styles.md create mode 100644 ej2-javascript/document-editor/js/web-services-overview.md create mode 100644 ej2-javascript/document-editor/keyboard-shortcut.md create mode 100644 ej2-javascript/document-editor/link.md create mode 100644 ej2-javascript/document-editor/list-format.md create mode 100644 ej2-javascript/document-editor/notes.md create mode 100644 ej2-javascript/document-editor/opening-documents/aws-s3-bucket.md create mode 100644 ej2-javascript/document-editor/opening-documents/azure-blob-storage.md create mode 100644 ej2-javascript/document-editor/opening-documents/box-cloud-file-storage.md create mode 100644 ej2-javascript/document-editor/opening-documents/dropbox-cloud-file-storage.md create mode 100644 ej2-javascript/document-editor/opening-documents/google-cloud-storage.md create mode 100644 ej2-javascript/document-editor/opening-documents/google-drive.md create mode 100644 ej2-javascript/document-editor/opening-documents/one-drive.md create mode 100644 ej2-javascript/document-editor/overview.md create mode 100644 ej2-javascript/document-editor/paragraph-format.md create mode 100644 ej2-javascript/document-editor/print.md create mode 100644 ej2-javascript/document-editor/r-t-l.md create mode 100644 ej2-javascript/document-editor/restrict-editing.md create mode 100644 ej2-javascript/document-editor/saving-documents/aws-s3-bucket.md create mode 100644 ej2-javascript/document-editor/saving-documents/azure-blob-storage.md create mode 100644 ej2-javascript/document-editor/saving-documents/box-cloud-file-storage.md create mode 100644 ej2-javascript/document-editor/saving-documents/dropbox-cloud-file-storage.md create mode 100644 ej2-javascript/document-editor/saving-documents/google-cloud-storage.md create mode 100644 ej2-javascript/document-editor/saving-documents/google-drive.md create mode 100644 ej2-javascript/document-editor/saving-documents/one-drive.md create mode 100644 ej2-javascript/document-editor/saving-documents/server-side-export.md create mode 100644 ej2-javascript/document-editor/scrolling-zooming.md create mode 100644 ej2-javascript/document-editor/section-format.md create mode 100644 ej2-javascript/document-editor/security-advisories.md create mode 100644 ej2-javascript/document-editor/server-deployment/how-to-deploy-documenteditor-java-web-api-in-azure.md create mode 100644 ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-amazon-kubernetes-service.md create mode 100644 ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-app-service.md create mode 100644 ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-kubernetes-service.md create mode 100644 ej2-javascript/document-editor/server-deployment/how-to-publish-documenteditor-web-api-application-in-azure-app-service-from-visual-studio.md create mode 100644 ej2-javascript/document-editor/server-deployment/word-processor-server-docker-image-overview.md create mode 100644 ej2-javascript/document-editor/shapes.md create mode 100644 ej2-javascript/document-editor/spell-check.md create mode 100644 ej2-javascript/document-editor/table-format.md create mode 100644 ej2-javascript/document-editor/table-of-contents.md create mode 100644 ej2-javascript/document-editor/table.md create mode 100644 ej2-javascript/document-editor/text-format.md create mode 100644 ej2-javascript/document-editor/text-wrapping-style.md create mode 100644 ej2-javascript/document-editor/track-changes.md create mode 100644 ej2-javascript/document-editor/ts/getting-started.md create mode 100644 ej2-javascript/document-editor/ts/how-to/customize-ribbon.md create mode 100644 ej2-javascript/document-editor/ts/how-to/optimize-sfdt.md create mode 100644 ej2-javascript/document-editor/ts/ribbon.md create mode 100644 ej2-javascript/document-editor/ts/styles.md create mode 100644 ej2-javascript/document-editor/ts/web-services-overview.md create mode 100644 ej2-javascript/document-editor/view.md create mode 100644 ej2-javascript/document-editor/web-services/core.md create mode 100644 ej2-javascript/document-editor/web-services/java.md create mode 100644 ej2-javascript/document-editor/web-services/mvc.md create mode 100644 ej2-javascript/stock-chart/working-with-data.md create mode 100644 ej2-typescript-toc.html diff --git a/ej2-javascript-toc.html b/ej2-javascript-toc.html index f2e258c72..d698da21d 100644 --- a/ej2-javascript-toc.html +++ b/ej2-javascript-toc.html @@ -961,6 +961,143 @@
  • API Reference
  • +DocumentEditor + +
  • +
  • DropDown Menu -
  • -DocumentEditor -
  • DropDown Menu diff --git a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.css b/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.js b/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.js deleted file mode 100644 index fadff773c..000000000 --- a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.js +++ /dev/null @@ -1,15 +0,0 @@ -var documenteditorcontainer = new ej.documenteditor.DocumentEditorContainer({ - isReadOnly: false -}); -ej.documenteditor.DocumentEditorContainer.Inject( - ej.documenteditor.Toolbar -); -onCreated = function() { - var data = - {"optimizeSfdt":false,"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"headerDistance":36,"footerDistance":36,"differentFirstPage":false,"differentOddAndEvenPages":false,"bidi":false,"breakCode":"NewPage","endnoteNumberFormat":"LowerCaseRoman","footNoteNumberFormat":"Arabic","restartIndexForFootnotes":"DoNotRestart","restartIndexForEndnotes":"DoNotRestart","initialFootNoteNumber":1,"initialEndNoteNumber":1,"pageNumberStyle":"Arabic","numberOfColumns":1,"equalWidth":true,"lineBetweenColumns":false,"columns":[]},"blocks":[{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":18,"fontFamily":"Monotype Corsiva","fontSizeBidi":18,"fontFamilyAscii":"Monotype Corsiva","fontFamilyNonFarEast":"Monotype Corsiva","fontFamilyFarEast":"Monotype Corsiva"},"text":"List of text formatting options"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"bold":true,"boldBidi":true},"text":"Bold"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"bold":true,"boldBidi":true},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"fontColor":"#808080FF"},"inlines":[{"characterFormat":{"fontColor":"#CC99FFFF"},"text":"C"},{"characterFormat":{"fontColor":"#333333FF"},"text":"o"},{"characterFormat":{"fontColor":"#FF6600FF"},"text":"l"},{"characterFormat":{"fontColor":"#3366FFFF"},"text":"o"},{"characterFormat":{"fontColor":"#FF9900FF"},"text":"r"},{"characterFormat":{"fontColor":"#FF6600FF"},"text":"e"},{"characterFormat":{"fontColor":"#808080FF"},"text":"d"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"fontColor":"#808080FF"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"scaling":150},"inlines":[{"characterFormat":{"scaling":150},"text":"Scaling"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"fontColor":"#808080FF"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"characterSpacing":2},"inlines":[{"characterFormat":{"characterSpacing":2},"text":"Spacing"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"fontColor":"#00B0F0FF"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"bold":true,"boldBidi":true},"inlines":[{"characterFormat":{"strikethrough":"DoubleStrike"},"text":"Double Strike"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"strikethrough":"DoubleStrike"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"fontColor":"#ED7D31FF"},"inlines":[{"characterFormat":{"highlightColor":"Turquoise","fontColor":"#ED7D31FF"},"text":"Highlighted"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"italic":true,"italicBidi":true},"text":"Italicized"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"italic":true,"italicBidi":true},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"strikethrough":"SingleStrike"},"inlines":[{"characterFormat":{"strikethrough":"SingleStrike"},"text":"Strikeout "}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"strikethrough":"SingleStrike"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"strikethrough":"SingleStrike"},"inlines":[{"characterFormat":{},"text":"Some"},{"characterFormat":{"baselineAlignment":"Subscript"},"text":"Subscript"},{"characterFormat":{"baselineAlignment":"Subscript"},"text":" "}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"baselineAlignment":"Subscript"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"baselineAlignment":"Subscript"},"inlines":[{"characterFormat":{},"text":"Some"},{"characterFormat":{"baselineAlignment":"Superscript"},"text":"Superscript"},{"characterFormat":{"baselineAlignment":"Superscript"},"text":" "}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"baselineAlignment":"Superscript"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"underline":"Single"},"inlines":[{"characterFormat":{"underline":"Single"},"text":"Underlined"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":" "}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":18,"fontFamily":"Monotype Corsiva","fontSizeBidi":18,"fontFamilyAscii":"Monotype Corsiva","fontFamilyNonFarEast":"Monotype Corsiva","fontFamilyFarEast":"Monotype Corsiva"},"text":"Text with different fonts and sizes"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":11,"fontFamily":"Book Antiqua","underline":"Double","fontColor":"#7028E8FF","fontSizeBidi":11,"fontFamilyAscii":"Book Antiqua","fontFamilyNonFarEast":"Book Antiqua","fontFamilyFarEast":"Book Antiqua"},"inlines":[]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":11,"fontFamily":"Book Antiqua","fontColor":"#7028E8FF","fontSizeBidi":11,"fontFamilyAscii":"Book Antiqua","fontFamilyNonFarEast":"Book Antiqua","fontFamilyFarEast":"Book Antiqua"},"text":"The quick brown fox jumps over the lazy dog [Book Antiqua]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontFamily":"Cambria","fontColor":"#F1C084FF","fontFamilyAscii":"Cambria","fontFamilyNonFarEast":"Cambria","fontFamilyFarEast":"Cambria"},"text":"The quick brown fox jumps over the lazy dog [Bitstream Vera Sans]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":13,"fontFamily":"Comic Sans MS","fontColor":"#BD5DCDFF","fontSizeBidi":13,"fontFamilyAscii":"Comic Sans MS","fontFamilyNonFarEast":"Comic Sans MS","fontFamilyFarEast":"Comic Sans MS"},"text":"The quick brown fox jumps over the lazy dog [Comic Sans MS]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":14,"fontFamily":"Microsoft Sans Serif","fontColor":"#4D72EEFF","fontSizeBidi":14,"fontFamilyAscii":"Microsoft Sans Serif","fontFamilyNonFarEast":"Microsoft Sans Serif","fontFamilyFarEast":"Microsoft Sans Serif"},"text":"The quick brown fox jumps over the lazy dog [Microsoft Sans Serif]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":15,"fontFamily":"바탕","fontColor":"#335388FF","fontSizeBidi":15,"fontFamilyAscii":"바탕","fontFamilyNonFarEast":"바탕","fontFamilyFarEast":"바탕"},"text":"The quick brown fox jumps over the lazy dog ["},{"characterFormat":{"fontSize":15,"fontFamily":"바탕","fontColor":"#335388FF","fontSizeBidi":15,"fontFamilyAscii":"바탕","fontFamilyNonFarEast":"바탕","fontFamilyFarEast":"바탕"},"text":"Batang"},{"characterFormat":{"fontSize":15,"fontFamily":"바탕","fontColor":"#335388FF","fontSizeBidi":15,"fontFamilyAscii":"바탕","fontFamilyNonFarEast":"바탕","fontFamilyFarEast":"바탕"},"text":"]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Arial","fontColor":"#31B463FF","fontSizeBidi":16,"fontFamilyAscii":"Arial","fontFamilyNonFarEast":"Arial","fontFamilyFarEast":"Arial"},"inlines":[{"characterFormat":{"fontSize":16,"fontFamily":"Arial","fontColor":"#31B463FF","fontSizeBidi":16,"fontFamilyAscii":"Arial","fontFamilyNonFarEast":"Arial","fontFamilyFarEast":"Arial"},"text":"The quick brown fox jumps over the lazy dog [Arial]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":16,"fontSizeBidi":16},"inlines":[{"characterFormat":{"fontSize":16,"fontFamily":"Book Antiqua","fontColor":"#7028E8FF","fontSizeBidi":16,"fontFamilyAscii":"Book Antiqua","fontFamilyNonFarEast":"Book Antiqua","fontFamilyFarEast":"Book Antiqua"},"text":"The quick brown fox jumps over the lazy dog [Book Antiqua]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":15,"fontSizeBidi":15},"inlines":[{"characterFormat":{"fontSize":15,"fontFamily":"Cambria","fontColor":"#F1C084FF","fontSizeBidi":15,"fontFamilyAscii":"Cambria","fontFamilyNonFarEast":"Cambria","fontFamilyFarEast":"Cambria"},"text":"The quick brown fox jumps over the lazy dog [Bitstream Vera Sans]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":14,"fontSizeBidi":14},"inlines":[{"characterFormat":{"fontSize":14,"fontFamily":"Comic Sans MS","fontColor":"#BD5DCDFF","fontSizeBidi":14,"fontFamilyAscii":"Comic Sans MS","fontFamilyNonFarEast":"Comic Sans MS","fontFamilyFarEast":"Comic Sans MS"},"text":"The quick brown fox jumps over the lazy dog [Comic Sans MS]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":13,"fontSizeBidi":13},"inlines":[{"characterFormat":{"fontSize":13,"fontFamily":"Microsoft Sans Serif","fontColor":"#4D72EEFF","fontSizeBidi":13,"fontFamilyAscii":"Microsoft Sans Serif","fontFamilyNonFarEast":"Microsoft Sans Serif","fontFamilyFarEast":"Microsoft Sans Serif"},"text":"The quick brown fox jumps over the lazy dog [Microsoft Sans Serif]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":11,"fontSizeBidi":11},"inlines":[{"characterFormat":{"fontFamily":"바탕","fontColor":"#335388FF","fontFamilyAscii":"바탕","fontFamilyNonFarEast":"바탕","fontFamilyFarEast":"바탕"},"text":"The quick brown fox jumps over the lazy dog ["},{"characterFormat":{"fontFamily":"바탕","fontColor":"#335388FF","fontFamilyAscii":"바탕","fontFamilyNonFarEast":"바탕","fontFamilyFarEast":"바탕"},"text":"Batang"},{"characterFormat":{"fontFamily":"바탕","fontColor":"#335388FF","fontFamilyAscii":"바탕","fontFamilyNonFarEast":"바탕","fontFamilyFarEast":"바탕"},"text":"]"}]},{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":6,"afterSpacing":6,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontSizeBidi":10},"inlines":[{"characterFormat":{"fontSize":11,"fontFamily":"Arial","fontColor":"#31B463FF","fontSizeBidi":11,"fontFamilyAscii":"Arial","fontFamilyNonFarEast":"Arial","fontFamilyFarEast":"Arial"},"text":"The quick brown fox jumps over the lazy dog [Arial]"}]}],"headersFooters":{}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Times New Roman","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"#00000000","boldBidi":false,"italicBidi":false,"fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false,"localeIdBidi":1025,"fontFamilyAscii":"Times New Roman","fontFamilyNonFarEast":"Times New Roman","fontFamilyFarEast":"Times New Roman"},"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","outlineLevel":"BodyText","bidi":false,"keepLinesTogether":false,"keepWithNext":false,"widowControl":true,"listFormat":{}},"fontSubstitutionTable":{},"themeFontLanguages":{},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"compatibilityMode":"Word2013","allowSpaceOfSameStyleInTable":false,"themes":{"fontScheme":{"fontSchemeName":"Office","majorFontScheme":{"fontSchemeList":[{"name":"latin","typeface":"Calibri Light","panose":"020F0302020204030204"},{"name":"ea","panose":"020F0302020204030204"},{"name":"cs","panose":"020F0302020204030204"}],"fontTypeface":{"Jpan":"游ゴシック Light","Hang":"맑은 고딕","Hans":"等线 Light","Hant":"新細明體","Arab":"Times New Roman","Hebr":"Times New Roman","Thai":"Angsana New","Ethi":"Nyala","Beng":"Vrinda","Gujr":"Shruti","Khmr":"MoolBoran","Knda":"Tunga","Guru":"Raavi","Cans":"Euphemia","Cher":"Plantagenet Cherokee","Yiii":"Microsoft Yi Baiti","Tibt":"Microsoft Himalaya","Thaa":"MV Boli","Deva":"Mangal","Telu":"Gautami","Taml":"Latha","Syrc":"Estrangelo Edessa","Orya":"Kalinga","Mlym":"Kartika","Laoo":"DokChampa","Sinh":"Iskoola Pota","Mong":"Mongolian Baiti","Viet":"Times New Roman","Uigh":"Microsoft Uighur","Geor":"Sylfaen","Armn":"Arial","Bugi":"Leelawadee UI","Bopo":"Microsoft JhengHei","Java":"Javanese Text","Lisu":"Segoe UI","Mymr":"Myanmar Text","Nkoo":"Ebrima","Olck":"Nirmala UI","Osma":"Ebrima","Phag":"Phagspa","Syrn":"Estrangelo Edessa","Syrj":"Estrangelo Edessa","Syre":"Estrangelo Edessa","Sora":"Nirmala UI","Tale":"Microsoft Tai Le","Talu":"Microsoft New Tai Lue","Tfng":"Ebrima"}},"minorFontScheme":{"fontSchemeList":[{"name":"latin","typeface":"Calibri","panose":"020F0502020204030204"},{"name":"ea","panose":"020F0502020204030204"},{"name":"cs","panose":"020F0502020204030204"}],"fontTypeface":{"Jpan":"游明朝","Hang":"맑은 고딕","Hans":"等线","Hant":"新細明體","Arab":"Arial","Hebr":"Arial","Thai":"Cordia New","Ethi":"Nyala","Beng":"Vrinda","Gujr":"Shruti","Khmr":"DaunPenh","Knda":"Tunga","Guru":"Raavi","Cans":"Euphemia","Cher":"Plantagenet Cherokee","Yiii":"Microsoft Yi Baiti","Tibt":"Microsoft Himalaya","Thaa":"MV Boli","Deva":"Mangal","Telu":"Gautami","Taml":"Latha","Syrc":"Estrangelo Edessa","Orya":"Kalinga","Mlym":"Kartika","Laoo":"DokChampa","Sinh":"Iskoola Pota","Mong":"Mongolian Baiti","Viet":"Arial","Uigh":"Microsoft Uighur","Geor":"Sylfaen","Armn":"Arial","Bugi":"Leelawadee UI","Bopo":"Microsoft JhengHei","Java":"Javanese Text","Lisu":"Segoe UI","Mymr":"Myanmar Text","Nkoo":"Ebrima","Olck":"Nirmala UI","Osma":"Ebrima","Phag":"Phagspa","Syrn":"Estrangelo Edessa","Syrj":"Estrangelo Edessa","Syre":"Estrangelo Edessa","Sora":"Nirmala UI","Tale":"Microsoft Tai Le","Talu":"Microsoft New Tai Lue","Tfng":"Ebrima"}}}},"background":{"color":"#FFFFFF"},"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"listFormat":{}},"characterFormat":{"fontSize":12,"fontSizeBidi":12},"next":"Normal"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":12,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496FF","fontSizeBidi":16,"fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":2,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496FF","fontSizeBidi":13,"fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":2,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763FF","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":2,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496FF","italicBidi":true,"fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":2,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496FF","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"beforeSpacing":2,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763FF","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496FF","fontSizeBidi":16,"fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496FF","fontSizeBidi":13,"fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763FF","fontSizeBidi":12,"fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496FF","italicBidi":true,"fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496FF","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763FF","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 7","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level7","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#1F3763","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 7 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#1F3763","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 8","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level8","listFormat":{}},"characterFormat":{"fontSize":10.5,"fontFamily":"Calibri Light","fontColor":"#333333","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 8 Char","type":"Character","characterFormat":{"fontSize":10.5,"fontFamily":"Calibri Light","fontColor":"#333333","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Heading 9","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level9","listFormat":{}},"characterFormat":{"italic":true,"fontSize":10.5,"fontFamily":"Calibri Light","fontColor":"#333333","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Normal","next":"Normal"},{"name":"Heading 9 Char","type":"Character","characterFormat":{"italic":true,"fontSize":10.5,"fontFamily":"Calibri Light","fontColor":"#333333","fontFamilyAscii":"Calibri Light","fontFamilyNonFarEast":"Calibri Light","fontFamilyFarEast":"Calibri Light"},"basedOn":"Default Paragraph Font"},{"name":"Header","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{},"basedOn":"Normal","next":"Header"},{"name":"Footer","type":"Paragraph","paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{},"basedOn":"Normal","next":"Footer"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[],"images":{},"footnotes":{"separator":[{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"\u0003"}]}],"continuationSeparator":[{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"\u0004"}]}],"continuationNotice":[{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]}]},"endnotes":{"separator":[{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"\u0003"}]}],"continuationSeparator":[{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"\u0004"}]}],"continuationNotice":[{"paragraphFormat":{"borders":{"top":{},"left":{},"right":{},"bottom":{},"horizontal":{},"vertical":{}},"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]}]}}; - documenteditorcontainer.documentEditor.open(data); -}; -documenteditorcontainer.appendTo("#DocumentEditor"); -documenteditorcontainer.addEventListener("created", onCreated()); - - diff --git a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.ts deleted file mode 100644 index fb4ff73a4..000000000 --- a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component. -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, height: '590px' -}); - -//Open the default document in `created` event. -container.created = function () { - //load your default document here - let data: string = '{"sfdt":"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"}'; - container.documentEditor.open(data); -}; -//Render Document Editor Container component. -container.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/accessibility-cs1/js/index.html deleted file mode 100644 index cc556940b..000000000 --- a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - -

    Syncfusion Word Processor(a.k.a)Document Editor Component

    -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/accessibility-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/accessibility-cs1/ts/index.html deleted file mode 100644 index 1d0d04ccb..000000000 --- a/ej2-javascript/code-snippet/document-editor/accessibility-cs1/ts/index.html +++ /dev/null @@ -1,35 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -

    Syncfusion Word Processor(a.k.a)Document Editor Component

    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/chart-cs1/index.css b/ej2-javascript/code-snippet/document-editor/chart-cs1/index.css deleted file mode 100644 index 18578ab19..000000000 --- a/ej2-javascript/code-snippet/document-editor/chart-cs1/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} diff --git a/ej2-javascript/code-snippet/document-editor/chart-cs1/index.js b/ej2-javascript/code-snippet/document-editor/chart-cs1/index.js deleted file mode 100644 index 9be9e5549..000000000 --- a/ej2-javascript/code-snippet/document-editor/chart-cs1/index.js +++ /dev/null @@ -1,9 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - documenteditor.acceptTab = true; - documenteditor.enableAllModules(); - documenteditor.pageOutline = '#E0E0E0'; - documenteditor.appendTo('#DocumentEditor'); - -var sfdt ={"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"textAlignment":"Center","afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"bold":true,"fontSize":12,"fontFamily":"Verdana","fontSizeBidi":12,"fontFamilyBidi":"Verdana"},"inlines":[{"characterFormat":{"bold":true,"fontSize":14,"fontFamily":"Verdana","fontColor":"#17365DFF","styleName":"a","fontSizeBidi":14,"fontFamilyBidi":"Verdana"},"text":"Northwind Management Report"}]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"This management report provides information obtained through data analysis, regarding the "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"performance of Northwind Traders. This report will pay particular"},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":" "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":" attention to the "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"best-selling products, of our company. "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"The best-selling products of Northwind Traders "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Company as follows: "}]},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]},{"rows":[{"cells":[{"blocks":[{"paragraphFormat":{"rightIndent":26.850000381469727,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"S.No"}]}],"cellFormat":{"borders":{"top":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#4472C4FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Product Name"}]}],"cellFormat":{"borders":{"top":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#4472C4FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Sum of Sales(in $)"}]}],"cellFormat":{"borders":{"top":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#4472C4FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"1"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Côte de Blaye"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"141.396"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"2"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Thüringer Rostbratwurst"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"80.368"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"3"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Raclette Courdavault"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"71.155"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"4"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Tarte au sucre "}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"47.234"},{"characterFormat":{},"bookmarkType":1,"name":"_GoBack"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"bookmarkType":0,"name":"_GoBack"},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"5"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Camembert Pierrot "}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"46.825"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"6"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Gnocchi di nonna Alice"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"42.593"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"7"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Manjimup Dried Apples"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"41.819"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"8"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Alice Mutton"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"32.698"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"9"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Carnarvon Tigers"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"29.171"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"10"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Rössle Sauerkraut."}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"25.696"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}}],"grid":[64.71214527422465,292.87942351880633,117.95841899993776],"tableFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"cellSpacing":0,"leftIndent":0,"tableAlignment":"Left","topMargin":0,"rightMargin":0.5,"leftMargin":0.5,"bottomMargin":0,"preferredWidth":475.54998779296875,"preferredWidthType":"Point","bidi":false,"allowAutoFit":true},"description":null,"title":null},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontFamily":"Calibri","fontColor":"#000000FF","fontFamilyBidi":"Calibri"},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"The best-selling product of the company is Cote de Blaye, being part of the Beverages "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"category. The contribution of this product to the sum of our sales is $ 141.396."}]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"inlines":[]},{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"chartLegend":{"position":"Right","chartTitleArea":{"fontName":"+mn-lt","fontSize":9,"layout":{"layoutX":0,"layoutY":0},"dataFormat":{"fill":{"foreColor":"000000","rgb":"#000000"},"line":{"color":"808080","rgb":"#808080"}}}},"chartTitleArea":{"fontName":"+mn-lt","fontSize":14,"layout":{"layoutX":0,"layoutY":0},"dataFormat":{"fill":{"foreColor":"000000","rgb":"#000000"},"line":{"color":"000000","rgb":"#000000"}}},"chartArea":{"foreColor":"#FFFFFFFF"},"plotArea":{"foreColor":"#000000FF"},"chartCategory":[{"chartData":[{"yValue":141.396}],"categoryXName":"Côte de Blaye"},{"chartData":[{"yValue":80.368}],"categoryXName":"Thüringer Rostbratwurst"},{"chartData":[{"yValue":71.155}],"categoryXName":"Raclette Courdavault"},{"chartData":[{"yValue":47.234}],"categoryXName":"Tarte au sucre"},{"chartData":[{"yValue":46.825}],"categoryXName":"Camembert Pierrot"},{"chartData":[{"yValue":42.593}],"categoryXName":"Gnocchi di nonna Alice"},{"chartData":[{"yValue":41.819}],"categoryXName":"Manjimup Dried Apples"},{"chartData":[{"yValue":32.698}],"categoryXName":"Alice Mutton"},{"chartData":[{"yValue":29.171}],"categoryXName":"Carnarvon Tigers"},{"chartData":[{"yValue":25.696}],"categoryXName":"Rössle Sauerkraut"}],"chartSeries":[{"dataPoints":[{"fill":{"foreColor":"4472c4","rgb":"#4472c4"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"ed7d31","rgb":"#ed7d31"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"a5a5a5","rgb":"#a5a5a5"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"ffc000","rgb":"#ffc000"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"5b9bd5","rgb":"#5b9bd5"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"70ad47","rgb":"#70ad47"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"264379","rgb":"#264379"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"9f480e","rgb":"#9f480e"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"636363","rgb":"#636363"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"9a7200","rgb":"#9a7200"},"line":{"color":"ffffff","rgb":"#ffffff"}}],"seriesName":"Sales"}],"chartPrimaryCategoryAxis":{"chartTitle":null,"chartTitleArea":{"layout":{},"dataFormat":{"fill":{},"line":{}}},"categoryType":"Automatic","fontSize":11,"fontName":"Calibri","numberFormat":"General","maximumValue":0,"minimumValue":0,"majorUnit":0,"hasMajorGridLines":false,"hasMinorGridLines":false,"majorTickMark":"TickMark_Outside","minorTickMark":"TickMark_None","tickLabelPosition":"TickLabelPosition_NextToAxis"},"chartPrimaryValueAxis":{"chartTitle":null,"chartTitleArea":{"layout":{},"dataFormat":{"fill":{},"line":{}}},"fontSize":11,"fontName":"Calibri","maximumValue":0,"minimumValue":0,"majorUnit":0,"hasMajorGridLines":false,"hasMinorGridLines":false,"majorTickMark":"TickMark_Outside","minorTickMark":"TickMark_None","tickLabelPosition":"TickLabelPosition_NextToAxis"},"chartTitle":"Best Selling Products","chartType":"Pie","gapWidth":0,"overlap":0,"height":225,"width":432}]},{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"According to the above chart, the total count of the selling products is 24 and the average "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"sales attributed to this product is $ 5.891 with highest sale $ 15.810 in the month of May in "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"2014. In the same year, in the month of March the same product reached the amount of $ "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"15.019. These were the highest sales of the product among the other products for the year "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"2014."}]}],"headersFooters":{}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"#000000","fontSizeBidi":11,"fontFamilyBidi":"Calibri"},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":8,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"listFormat":{}},"characterFormat":{},"next":"Normal"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":3,"lineSpacing":1,"lineSpacingType":"Multiple","outlineLevel":"Level1","listFormat":{}},"characterFormat":{"bold":true,"fontSize":16,"fontFamily":"Arial","boldBidi":true,"fontSizeBidi":16,"fontFamilyBidi":"Arial"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 1 Char","type":"Character","characterFormat":{"bold":true,"fontSize":16,"fontFamily":"Arial","boldBidi":true,"fontSizeBidi":16,"fontFamilyBidi":"Arial"},"basedOn":"Default Paragraph Font"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Balloon Text","type":"Paragraph","paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontSize":9,"fontFamily":"Segoe UI","fontSizeBidi":9,"fontFamilyBidi":"Segoe UI"},"basedOn":"Normal","link":"Balloon Text Char"},{"name":"Balloon Text Char","type":"Character","characterFormat":{"fontSize":9,"fontFamily":"Segoe UI","fontSizeBidi":9,"fontFamilyBidi":"Segoe UI"},"basedOn":"Default Paragraph Font"},{"name":"a","type":"Character","characterFormat":{},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[]}; -documenteditor.open(JSON.stringify(sfdt)); - diff --git a/ej2-javascript/code-snippet/document-editor/chart-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/chart-cs1/index.ts deleted file mode 100644 index 6fab84d93..000000000 --- a/ej2-javascript/code-snippet/document-editor/chart-cs1/index.ts +++ /dev/null @@ -1,15 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -//Initialize DocumentEditor Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px'}); - -documenteditor.appendTo('#DocumentEditor'); - -let sfdt: string = `{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"textAlignment":"Center","afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"bold":true,"fontSize":12,"fontFamily":"Verdana","fontSizeBidi":12,"fontFamilyBidi":"Verdana"},"inlines":[{"characterFormat":{"bold":true,"fontSize":14,"fontFamily":"Verdana","fontColor":"#17365DFF","styleName":"a","fontSizeBidi":14,"fontFamilyBidi":"Verdana"},"text":"Northwind Management Report"}]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"This management report provides information obtained through data analysis, regarding the "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"performance of Northwind Traders. This report will pay particular"},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":" "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":" attention to the "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"best-selling products, of our company. "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"The best-selling products of Northwind Traders "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Company as follows: "}]},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]},{"rows":[{"cells":[{"blocks":[{"paragraphFormat":{"rightIndent":26.850000381469727,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"S.No"}]}],"cellFormat":{"borders":{"top":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#4472C4FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Product Name"}]}],"cellFormat":{"borders":{"top":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#4472C4FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Sum of Sales(in $)"}]}],"cellFormat":{"borders":{"top":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#4472C4FF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#4472C4FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"1"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Côte de Blaye"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"141.396"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"2"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Thüringer Rostbratwurst"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"80.368"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"3"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Raclette Courdavault"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"71.155"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"4"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Tarte au sucre "}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"47.234"},{"characterFormat":{},"bookmarkType":1,"name":"_GoBack"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"bookmarkType":0,"name":"_GoBack"},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"5"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Camembert Pierrot "}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"46.825"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"6"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Gnocchi di nonna Alice"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"42.593"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"7"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Manjimup Dried Apples"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"41.819"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"8"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Alice Mutton"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"32.698"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"9"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Carnarvon Tigers"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"29.171"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#D9E2F3FF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}},{"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"10"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":13.420000076293945,"preferredWidthType":"Percent","cellWidth":64.71214527422465,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":0},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"Rössle Sauerkraut."}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":48.86000061035156,"preferredWidthType":"Percent","cellWidth":292.87942351880633,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":1},{"blocks":[{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"25.696"}]}],"cellFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"vertical":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"preferredWidth":37.720001220703125,"preferredWidthType":"Percent","cellWidth":117.95841899993776,"columnSpan":1,"rowSpan":1,"verticalAlignment":"Top"},"columnIndex":2}],"rowFormat":{"height":14.399999618530273,"allowBreakAcrossPages":true,"heightType":"Exactly","isHeader":false,"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"gridBefore":0,"gridBeforeWidth":0,"gridBeforeWidthType":"Point","gridAfter":0,"gridAfterWidth":0,"gridAfterWidthType":"Point"}}],"grid":[64.71214527422465,292.87942351880633,117.95841899993776],"tableFormat":{"borders":{"top":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"left":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"right":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"bottom":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"diagonalDown":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"diagonalUp":{"color":"#000000","hasNoneStyle":false,"lineStyle":"None","lineWidth":0,"shadow":false,"space":0},"horizontal":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0},"vertical":{"color":"#8EAADBFF","hasNoneStyle":false,"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0}},"shading":{"backgroundColor":"#FFFFFFFF","foregroundColor":"empty","textureStyle":"TextureNone"},"cellSpacing":0,"leftIndent":0,"tableAlignment":"Left","topMargin":0,"rightMargin":0.5,"leftMargin":0.5,"bottomMargin":0,"preferredWidth":475.54998779296875,"preferredWidthType":"Point","bidi":false,"allowAutoFit":true},"description":null,"title":null},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{"fontFamily":"Calibri","fontColor":"#000000FF","fontFamilyBidi":"Calibri"},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"The best-selling product of the company is Cote de Blaye, being part of the Beverages "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"text":"category. The contribution of this product to the sum of our sales is $ 141.396."}]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Times New Roman"},"inlines":[]},{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"chartLegend":{"position":"Right","chartTitleArea":{"fontName":"+mn-lt","fontSize":9,"layout":{"layoutX":0,"layoutY":0},"dataFormat":{"fill":{"foreColor":"000000","rgb":"#000000"},"line":{"color":"808080","rgb":"#808080"}}}},"chartTitleArea":{"fontName":"+mn-lt","fontSize":14,"layout":{"layoutX":0,"layoutY":0},"dataFormat":{"fill":{"foreColor":"000000","rgb":"#000000"},"line":{"color":"000000","rgb":"#000000"}}},"chartArea":{"foreColor":"#FFFFFFFF"},"plotArea":{"foreColor":"#000000FF"},"chartCategory":[{"chartData":[{"yValue":141.396}],"categoryXName":"Côte de Blaye"},{"chartData":[{"yValue":80.368}],"categoryXName":"Thüringer Rostbratwurst"},{"chartData":[{"yValue":71.155}],"categoryXName":"Raclette Courdavault"},{"chartData":[{"yValue":47.234}],"categoryXName":"Tarte au sucre"},{"chartData":[{"yValue":46.825}],"categoryXName":"Camembert Pierrot"},{"chartData":[{"yValue":42.593}],"categoryXName":"Gnocchi di nonna Alice"},{"chartData":[{"yValue":41.819}],"categoryXName":"Manjimup Dried Apples"},{"chartData":[{"yValue":32.698}],"categoryXName":"Alice Mutton"},{"chartData":[{"yValue":29.171}],"categoryXName":"Carnarvon Tigers"},{"chartData":[{"yValue":25.696}],"categoryXName":"Rössle Sauerkraut"}],"chartSeries":[{"dataPoints":[{"fill":{"foreColor":"4472c4","rgb":"#4472c4"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"ed7d31","rgb":"#ed7d31"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"a5a5a5","rgb":"#a5a5a5"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"ffc000","rgb":"#ffc000"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"5b9bd5","rgb":"#5b9bd5"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"70ad47","rgb":"#70ad47"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"264379","rgb":"#264379"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"9f480e","rgb":"#9f480e"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"636363","rgb":"#636363"},"line":{"color":"ffffff","rgb":"#ffffff"}},{"fill":{"foreColor":"9a7200","rgb":"#9a7200"},"line":{"color":"ffffff","rgb":"#ffffff"}}],"seriesName":"Sales"}],"chartPrimaryCategoryAxis":{"chartTitle":null,"chartTitleArea":{"layout":{},"dataFormat":{"fill":{},"line":{}}},"categoryType":"Automatic","fontSize":11,"fontName":"Calibri","numberFormat":"General","maximumValue":0,"minimumValue":0,"majorUnit":0,"hasMajorGridLines":false,"hasMinorGridLines":false,"majorTickMark":"TickMark_Outside","minorTickMark":"TickMark_None","tickLabelPosition":"TickLabelPosition_NextToAxis"},"chartPrimaryValueAxis":{"chartTitle":null,"chartTitleArea":{"layout":{},"dataFormat":{"fill":{},"line":{}}},"fontSize":11,"fontName":"Calibri","maximumValue":0,"minimumValue":0,"majorUnit":0,"hasMajorGridLines":false,"hasMinorGridLines":false,"majorTickMark":"TickMark_Outside","minorTickMark":"TickMark_None","tickLabelPosition":"TickLabelPosition_NextToAxis"},"chartTitle":"Best Selling Products","chartType":"Pie","gapWidth":0,"overlap":0,"height":225,"width":432}]},{"paragraphFormat":{"styleName":"Normal","listFormat":{}},"characterFormat":{},"inlines":[]},{"paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","styleName":"Normal","listFormat":{}},"characterFormat":{"fontSize":10,"fontFamily":"Verdana","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"inlines":[{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"According to the above chart, the total count of the selling products is 24 and the average "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"sales attributed to this product is $ 5.891 with highest sale $ 15.810 in the month of May in "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"2014. In the same year, in the month of March the same product reached the amount of $ "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"15.019. These were the highest sales of the product among the other products for the year "},{"characterFormat":{"fontSize":10,"fontFamily":"Verdana","styleName":"a","fontSizeBidi":10,"fontFamilyBidi":"Verdana"},"text":"2014."}]}],"headersFooters":{}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"#000000","fontSizeBidi":11,"fontFamilyBidi":"Calibri"},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":8,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"listFormat":{}},"characterFormat":{},"next":"Normal"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":3,"lineSpacing":1,"lineSpacingType":"Multiple","outlineLevel":"Level1","listFormat":{}},"characterFormat":{"bold":true,"fontSize":16,"fontFamily":"Arial","boldBidi":true,"fontSizeBidi":16,"fontFamilyBidi":"Arial"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 1 Char","type":"Character","characterFormat":{"bold":true,"fontSize":16,"fontFamily":"Arial","boldBidi":true,"fontSizeBidi":16,"fontFamilyBidi":"Arial"},"basedOn":"Default Paragraph Font"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Balloon Text","type":"Paragraph","paragraphFormat":{"afterSpacing":0,"lineSpacing":1,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontSize":9,"fontFamily":"Segoe UI","fontSizeBidi":9,"fontFamilyBidi":"Segoe UI"},"basedOn":"Normal","link":"Balloon Text Char"},{"name":"Balloon Text Char","type":"Character","characterFormat":{"fontSize":9,"fontFamily":"Segoe UI","fontSizeBidi":9,"fontFamilyBidi":"Segoe UI"},"basedOn":"Default Paragraph Font"},{"name":"a","type":"Character","characterFormat":{},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[]}`; - -//Open the document in Document Editor. -documenteditor.open(sfdt); - - diff --git a/ej2-javascript/code-snippet/document-editor/chart-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/chart-cs1/js/index.html deleted file mode 100644 index 8b83f8cd9..000000000 --- a/ej2-javascript/code-snippet/document-editor/chart-cs1/js/index.html +++ /dev/null @@ -1,57 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/chart-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/chart-cs1/systemjs.config.js deleted file mode 100644 index ec1789dce..000000000 --- a/ej2-javascript/code-snippet/document-editor/chart-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); diff --git a/ej2-javascript/code-snippet/document-editor/chart-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/chart-cs1/ts/index.html deleted file mode 100644 index 3a1623af3..000000000 --- a/ej2-javascript/code-snippet/document-editor/chart-cs1/ts/index.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    -
    - - - diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.js deleted file mode 100644 index 28de21fc2..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.js +++ /dev/null @@ -1,10 +0,0 @@ -// Inject collaborative editing module. -ej.documenteditor.DocumentEditor.Inject(ej.documenteditor.CollaborativeEditingHandler); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); -let container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px',}); - -container.serviceUrl = 'http://localhost:5000/api/documenteditor/'; -container.appendTo('#container'); - -// Enable collaborative editing in Document Editor. -container.documentEditor.enableCollaborativeEditing = true; diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.ts deleted file mode 100644 index 776e0bba3..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/index.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { DocumentEditorContainer, DocumentEditor, CollaborativeEditingHandler} from '@syncfusion/ej2-documenteditor'; - -//Inject collaborative editing module. -DocumentEditor.Inject(CollaborativeEditingHandler); -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px',}); - -container.serviceUrl = 'http://localhost:5000/api/documenteditor/'; -container.appendTo('#container'); - -//Enable collaborative editing in Document Editor. -container.documentEditor.enableCollaborativeEditing = true; \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.js deleted file mode 100644 index 6c97c5a4c..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.js +++ /dev/null @@ -1,45 +0,0 @@ -let connectionId = ""; - -var connection = new signalR.HubConnectionBuilder().withUrl(serviceUrl + '/documenteditorhub', { - skipNegotiation: true, - transport: signalR.HttpTransportType.WebSockets -}).withAutomaticReconnect().build(); - -connection.onclose(async () => { - if (connection.state === signalR.HubConnectionState.Disconnected) { - alert('Connection lost. Please relod the browser to continue.'); - } -}); - -async function start(data) { - try { - connection.start().then(function () { - // Join the collaborative editing session with the specified room name. - connection.send('JoinGroup', { roomName: data.roomName, currentUser: data.currentUser }); - console.log('server connected!!!'); - }); - } catch (err) { - console.log(err); - setTimeout(start, 5000); - } -}; -// Event handler to handle data received -connection.on('dataReceived', onDataRecived.bind(this)); - -function onDataRecived(action, data) { - if (connections) { - if (action == 'connectionId') { - connectionId = data; - } else if (connectionId != data.connectionId) { - if (action == 'action' || action == 'addUser') { - // Add user info when new user join the collaborative editing session. - titleBar.addUser(data); - } else if (action == 'removeUser') { - // Remove user info from title bar once user is disconnected. - titleBar.removeUser(data); - } - } - // Apply remote changes to current document. - connections.applyRemoteAction(action, data); - } -} diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.ts deleted file mode 100644 index 4fe5f45d0..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-1.ts +++ /dev/null @@ -1,47 +0,0 @@ -import {HubConnectionBuilder, HttpTransportType, HubConnectionState } from '@microsoft/signalr'; - -let connectionId: string= ""; - -var connection = new HubConnectionBuilder().withUrl(serviceUrl + '/documenteditorhub', { - skipNegotiation: true, - transport: HttpTransportType.WebSockets -}).withAutomaticReconnect().build(); - -connection.onclose(async () => { - if (connection.state === HubConnectionState.Disconnected) { - alert('Connection lost. Please relod the browser to continue.'); - } -}); - -async function start(data: any) { - try { - connection.start().then(function () { - //Join the collaborative editing session with the specified room name. - connection.send('JoinGroup', { roomName: data.roomName, currentUser: data.currentUser }); - console.log('server connected!!!'); - }); - } catch (err) { - console.log(err); - setTimeout(start, 5000); - } -}; -//Event handler to handle data received -connection.on('dataReceived', onDataRecived.bind(this)); - -function onDataRecived(action: string, data: any) { - if (connections) { - if (action == 'connectionId') { - connectionId = data; - } else if (connectionId != data.connectionId) { - if (action == 'action' || action == 'addUser') { - //Add user info when new user join the collaborative editing session. - titleBar.addUser(data); - } else if (action == 'removeUser') { - //Remove user info from title bar once user is disconnected. - titleBar.removeUser(data); - } - } - //Apply remote changes to current document. - connections.applyRemoteAction(action, data); - } -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.js deleted file mode 100644 index 8ec5cce7b..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.js +++ /dev/null @@ -1,12 +0,0 @@ -function openDocument(responseText, roomName) { - let data = JSON.parse(responseText); - // Get collaborative editing module. - connections = container.documentEditor.collaborativeEditingHandlerModule; - // Configure collaborative editing room name in collaborative editing module - connections.updateRoomInfo(roomName, data.version, serviceUrl); - container.documentEditor.open(data.sfdt); - setTimeout(function () { - // connect to signalR room with specified name. - start({ action: 'connect', roomName: roomName, currentUser: container.currentUser }, null); - }); -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.ts deleted file mode 100644 index 69acb420b..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-2.ts +++ /dev/null @@ -1,12 +0,0 @@ -function openDocument(responseText: string, roomName: string): void { - let data = JSON.parse(responseText); - //Get collaborative editing module. - connections = container.documentEditor.collaborativeEditingHandlerModule; - //Configure collaborative editing room name in collaborative editing module - connections.updateRoomInfo(roomName, data.version, serviceUrl); - container.documentEditor.open(data.sfdt); - setTimeout(function () { - // connect to signalR room with specified name. - start({ action: 'connect', roomName: roomName, currentUser: container.currentUser }, null); - }); -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.js deleted file mode 100644 index 8c9c2801d..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.js +++ /dev/null @@ -1,6 +0,0 @@ -container.contentChange = function (args) { - if (connections) { - // Send current changes to server to broadcast it to other users. - connections.sendActionToServer(args.operations) - } -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.ts deleted file mode 100644 index 7979f5edc..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-cs1/script-3.ts +++ /dev/null @@ -1,6 +0,0 @@ -container.contentChange = function (args: ContainerContentChangeEventArgs) { - if (connections) { - //Send current changes to server to broadcast it to other users. - connections.sendActionToServer(args.operations) - } -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.js deleted file mode 100644 index 9d6b575a7..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.js +++ /dev/null @@ -1,8 +0,0 @@ -// Inject collaborative editing module. -ej.documenteditor.DocumentEditor.Inject(ej.documenteditor.CollaborativeEditingHandler); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); -let container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px',}); -container.appendTo('#container'); - -// Enable collaborative editing in Document Editor. -container.documentEditor.enableCollaborativeEditing = true; \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.ts deleted file mode 100644 index d16682132..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { DocumentEditorContainer, DocumentEditor, CollaborativeEditingHandler} from '@syncfusion/ej2-documenteditor'; - -//Inject collaborative editing module. -DocumentEditor.Inject(CollaborativeEditingHandler); -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px'}); -container.appendTo('#container'); - -//Enable collaborative editing in Document Editor. -container.documentEditor.enableCollaborativeEditing = true; \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.js deleted file mode 100644 index eac7cea86..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.js +++ /dev/null @@ -1,23 +0,0 @@ -var stompClient = null; -//Initialize SockJS -function onCreated(data) { - var socket = new SockJS('/ws'); - stompClient = Stomp.over(socket); - stompClient.connect({}, onConnected, function (error) { - console.error('Error during WebSocket connection', error); - }); -} -// Subscribe to the topic. -function onConnected() { - if (stompClient.connected) { - stompClient.subscribe('/topic/public/' + documentName, onMessageReceived); - joinGroup(documentName); - } -} -//Receive the remote action and apply to currenty document. -function onMessageReceived(data) { - var content = JSON.parse(data.body); - if (content.payload.operations != null) { - container.documentEditor.collaborativeEditingHandlerModule.applyRemoteAction("action", content.payload); - } -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.ts deleted file mode 100644 index bf5a3deab..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-1.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { Stomp, CompatClient } from '@stomp/stompjs'; -import SockJS from 'sockjs-client'; - -let currentRoomName: string = ''; -let webSocketEndPoint: string = 'http://localhost:8024/ws'; -let stompClient!: CompatClient; -//Initialize SockJS -function initializeSockJs(): void { - let ws = new SockJS(webSocketEndPoint); - stompClient = Stomp.over(ws); - stompClient.connect({}, () => { - onConnected(); - }); -} -// Subscribe to the topic. -function onConnected() { - if (stompClient.connected) { - // Subscribe to the specific topic - stompClient.subscribe('/topic/public/' + currentRoomName, onDataRecived); - connectToRoom(currentRoomName); - } -} -//Receive the remote action and apply to currenty document. -function onDataRecived(data: any) { - if (collborativeEditingHandler) { - var content = JSON.parse(data.body); - if (content.payload.operations != null) { - container.documentEditor.collaborativeEditingHandlerModule.applyRemoteAction("action", content.payload); - } - } -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.js deleted file mode 100644 index a86c88f65..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.js +++ /dev/null @@ -1,22 +0,0 @@ -function openDocument(responseText, roomName) { - let data = JSON.parse(responseText); - //Update the room and version information to collaborative editing handler. - connections.updateRoomInfo(roomName, data.version, serviceUrl + 'api/collaborativeediting/'); - //open the document - container.documentEditor.open(data.sfdt); - setTimeout(function () { - // connect to server using ScketJS - connectToRoom({ action: 'connect', roomName: roomName, currentUser: container.currentUser }); - }); -} -//Send the user information to the other users that I have joined. -function connectToRoom(documentName) { - var userInfo = { - currentUser: username, - clientVersion: 0, - roomName: documentName, - connectionId: "", - }; - // Send the joinGroup message to the server - stompClient.send("/app/join/" + documentName, {}, JSON.stringify(userInfo)); -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.ts deleted file mode 100644 index ff21bdc54..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-2.ts +++ /dev/null @@ -1,22 +0,0 @@ -function openDocument(responseText: string, roomName: string): void { - let data = JSON.parse(responseText); - //Update the room and version information to collaborative editing handler. - collborativeEditingHandler.updateRoomInfo(roomName, data.version, serviceUrl + 'api/collaborativeediting/'); - //Open the document - container.documentEditor.open(data.sfdt); - setTimeout(function () { - // connect to server using ScketJS - connectToRoom({ action: 'connect', roomName: roomName, currentUser: container.currentUser }); - }); -} -//Send the user information to the other users that I have joined. -function connectToRoom(data: any) { - var userInfo = { - currentUser: container.currentUser, - clientVersion: 0, - roomName: currentRoomName, - connectionId: "", - }; - //Send the user information to server - stompClient.send("/app/join/" + currentRoomName, {}, JSON.stringify(userInfo)); -}; \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.js b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.js deleted file mode 100644 index 24fdd44a0..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.js +++ /dev/null @@ -1,5 +0,0 @@ -container.contentChange = function (args) { - if (connections) { - connections.sendActionToServer(args.operations); - } -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.ts b/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.ts deleted file mode 100644 index b36f0ae5a..000000000 --- a/ej2-javascript/code-snippet/document-editor/collaborative-editing-java-cs1/script-3.ts +++ /dev/null @@ -1,6 +0,0 @@ -container.contentChange = function (args: ContainerContentChangeEventArgs) { - if (collborativeEditingHandler) { - //Send the editing action to server - collborativeEditingHandler.sendActionToServer(args.operations as Operation[]); - } -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.css b/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.js b/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.js deleted file mode 100644 index 35f008995..000000000 --- a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.js +++ /dev/null @@ -1,50 +0,0 @@ -ej.documenteditor.Editor,ej.documenteditor.Selection,ej.documenteditor.OptionsPane, ej.documenteditor.Search, ej.documenteditor.ContextMenu, ej.documenteditor.EditorHistory,ej.documenteditor.ImageResizer, ej.documenteditor.ListDialog,ej.documenteditor.TableDialog, ej.documenteditor.HyperlinkDialog, ej.documenteditor.ParagraphDialog, ej.documenteditor.FontDialog, ej.documenteditor.PageSetupDialog, ej.documenteditor.BookmarkDialog, ej.documenteditor.StyleDialog, ej.documenteditor.TablePropertiesDialog, ej.documenteditor.BordersAndShadingDialog, ej.documenteditor.TableOptionsDialog, ej.documenteditor.CellOptionsDialog, ej.documenteditor.TableOfContentsDialog - -var defaultCheckBoxObj = new ej.buttons.CheckBox({ label: 'Hide Default Context Menu', change: contextmenuHelper }); -defaultCheckBoxObj.appendTo('#default-context-menu'); -var positionCheckBoxObj = new ej.buttons.CheckBox({ label: 'Add Custom option at bottom', change: contextmenuHelper }); -positionCheckBoxObj.appendTo('#position-context-menu'); - -var editor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, - serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -editor.enableAllModules(); -editor.appendTo('#DocumentEditor'); - - -// Creating custom menu items -var menuItems = [ - { - text: 'Search In Google', - id: 'search_in_google', - iconCss: 'e-icons e-de-ctnr-find' - }]; -// Adding custom options -editor.contextMenu.addCustomMenu(menuItems, false); -// To show/hide custom menu item -editor.customContextMenuBeforeOpen = function(args) { - var search = document.getElementById(args.ids[0]); - search.style.display = 'none'; - var searchContent = editor.selection.text; - if ((!editor.selection.isEmpty) && (/\S/.test(searchContent))) { - search.style.display = 'block'; - } -} -// To handle contextmenu select event -editor.customContextMenuSelect = function(args) { - var item = args.id; - var id = editor.element.id; - switch (item) { - case id + 'search_in_google': - var searchContent = editor.selection.text; - if (!editor.selection.isEmpty && /\S/.test(searchContent)) { - window.open('http://google.com/search?q=' + searchContent); - } - break; - } -} -function contextmenuHelper(args) { - editor.contextMenu.addCustomMenu(menuItems, defaultCheckBoxObj.checked, positionCheckBoxObj.checked); -} - diff --git a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.ts deleted file mode 100644 index b26374172..000000000 --- a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/index.ts +++ /dev/null @@ -1,64 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, OptionsPane, Search, ContextMenu, EditorHistory, ImageResizer, ListDialog, TableDialog, HyperlinkDialog, ParagraphDialog, FontDialog, PageSetupDialog, BookmarkDialog, StyleDialog, TablePropertiesDialog, BordersAndShadingDialog, TableOptionsDialog, CellOptionsDialog, TableOfContentsDialog } from '@syncfusion/ej2-documenteditor'; -import { CheckBox, ChangeEventArgs } from '@syncfusion/ej2-buttons'; - -let defaultCheckBoxObj: CheckBox = new CheckBox({ label: 'Hide Default Context Menu', change: contextmenuHelper }); -defaultCheckBoxObj.appendTo('#default-context-menu'); - -let positionCheckBoxObj: CheckBox = new CheckBox({ label: 'Add Custom option at bottom', change: contextmenuHelper }); -positionCheckBoxObj.appendTo('#position-context-menu'); - -//Initialize Document Editor component. -let documentEditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); - -//Enable all built in modules. -documentEditor.enableAllModules(); - -//Render Document Editor component. -documentEditor.appendTo('#DocumentEditor'); - -//Creating custom menu items -let menuItems: MenuItemModel[] = [ - { - text: 'Search In Google', - id: 'search_in_google', - iconCss: 'e-icons e-de-ctnr-find' - }]; - -//Adding custom options -documentEditor.contextMenu.addCustomMenu(menuItems, false); - -//To show/hide custom menu item -documentEditor.customContextMenuBeforeOpen = (args: BeforeOpenCloseCustomContentMenuEventArgs): void => { - let search: HTMLElement = document.getElementById(args.ids[0]); - search.style.display = 'none'; - let searchContent: string = documentEditor.selection.text; - if ((!documentEditor.selection.isEmpty) && (/\S/.test(searchContent))) { - search.style.display = 'block'; - } -}; - -//To handle contextmenu select event -documentEditor.customContextMenuSelect = (args: CustomContentMenuEventArgs): void => { - let item: string = args.id; - let id: string = documentEditor.element.id; - switch (item) { - case id + 'search_in_google': - let searchContent: string = documentEditor.selection.text; - if (!documentEditor.selection.isEmpty && /\S/.test(searchContent)) { - window.open('http://google.com/search?q=' + searchContent); - } - break; - } -}; - -//function to handle the CheckBox change event -function contextmenuHelper(args: ChangeEventArgs): void { - documentEditor.contextMenu.addCustomMenu(menuItems, defaultCheckBoxObj.checked, positionCheckBoxObj.checked); -} - - - diff --git a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/js/index.html deleted file mode 100644 index 0ad5d94d5..000000000 --- a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/ts/index.html deleted file mode 100644 index 1bd762ed0..000000000 --- a/ej2-javascript/code-snippet/document-editor/customize-context-menu-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    - - -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.css b/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.js b/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.js deleted file mode 100644 index 8d9ce73c1..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.js +++ /dev/null @@ -1,12 +0,0 @@ -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true }); - ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - //DocumentEditorContainer control rendering starts - documenteditorContainer.appendTo('#DocumentEditor'); - - -var sfdt ={"sections":[{"blocks":[{"characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Name","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"text":":","characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter name"},{"editRangeId":"1348272392","editableRangeStart":{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Designation:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter designation"},{"editRangeId":"808933422","editableRangeStart":{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Email Address:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"name":"_GoBack","bookmarkType":0},{"name":"_GoBack","bookmarkType":1}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter email address"},{"editRangeId":"810441411","editableRangeStart":{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Feedbacks:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the feedbacks"},{"editRangeId":"1016946268","editableRangeStart":{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Review comments:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the comments"},{"editRangeId":"1373703080","editableRangeStart":{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"paragraphFormat":{"styleName":"Normal"},"inlines":[]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"styleName":"Header"},"inlines":[{"text":"Employee’s Details "}]}]}},"sectionFormat":{"headerDistance":36.0,"footerDistance":36.0,"pageWidth":612.0,"pageHeight":792.0,"leftMargin":72.0,"rightMargin":72.0,"topMargin":72.0,"bottomMargin":72.0,"differentFirstPage":false,"differentOddAndEvenPages":false,"bidi":false}}],"characterFormat":{"fontSize":11.0,"fontFamily":"Calibri","fontSizeBidi":11.0,"fontFamilyBidi":"Calibri"},"paragraphFormat":{"afterSpacing":8.0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple"},"background":{"color":"#FFFFFFFF"},"styles":[{"type":"Paragraph","name":"Normal","next":"Normal"},{"type":"Character","name":"Default Paragraph Font"},{"type":"Paragraph","name":"List Paragraph","basedOn":"Normal","paragraphFormat":{"leftIndent":36.0,"contextualSpacing":true}},{"type":"Paragraph","name":"Header","basedOn":"Normal","next":"Normal","link":"Header Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Header Char","basedOn":"Default Paragraph Font"},{"type":"Paragraph","name":"Footer","basedOn":"Normal","link":"Footer Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Footer Char","basedOn":"Default Paragraph Font"}],"defaultTabWidth":36.0,"formatting":false,"protectionType":"ReadOnly","enforcement":true,"hashValue":"TQGuJuLceQCe234Ygx4q6NFgHpRMfi1hjFTojyKzbQOkwk+ckEM9CjNIdkiUhSR/e/7sfMxO4sbPcg/DBzztMg==","saltValue":"FXbkr1RtDIIIZfwlM71dMg=="}; - -documenteditorContainer.documentEditor.open(JSON.stringify(sfdt)); -documenteditorContainer.documentEditor.currentUser = 'engineer@mycompany.com'; - diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.ts deleted file mode 100644 index a36042f3d..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/index.ts +++ /dev/null @@ -1,18 +0,0 @@ - - -import { DocumentEditorContainer,Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, height: '590px' -}); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#DocumentEditor'); -container.documentEditor.currentUser = 'engineer@mycompany.com'; - -let sfdt: string =`{"sections":[{"blocks":[{"characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Name","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"text":":","characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter name"},{"editRangeId":"1348272392","editableRangeStart":{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Designation:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter designation"},{"editRangeId":"808933422","editableRangeStart":{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Email Address:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"name":"_GoBack","bookmarkType":0},{"name":"_GoBack","bookmarkType":1}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter email address"},{"editRangeId":"810441411","editableRangeStart":{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Feedbacks:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the feedbacks"},{"editRangeId":"1016946268","editableRangeStart":{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Review comments:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the comments"},{"editRangeId":"1373703080","editableRangeStart":{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"paragraphFormat":{"styleName":"Normal"},"inlines":[]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"styleName":"Header"},"inlines":[{"text":"Employee’s Details "}]}]}},"sectionFormat":{"headerDistance":36.0,"footerDistance":36.0,"pageWidth":612.0,"pageHeight":792.0,"leftMargin":72.0,"rightMargin":72.0,"topMargin":72.0,"bottomMargin":72.0,"differentFirstPage":false,"differentOddAndEvenPages":false,"bidi":false}}],"characterFormat":{"fontSize":11.0,"fontFamily":"Calibri","fontSizeBidi":11.0,"fontFamilyBidi":"Calibri"},"paragraphFormat":{"afterSpacing":8.0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple"},"background":{"color":"#FFFFFFFF"},"styles":[{"type":"Paragraph","name":"Normal","next":"Normal"},{"type":"Character","name":"Default Paragraph Font"},{"type":"Paragraph","name":"List Paragraph","basedOn":"Normal","paragraphFormat":{"leftIndent":36.0,"contextualSpacing":true}},{"type":"Paragraph","name":"Header","basedOn":"Normal","next":"Normal","link":"Header Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Header Char","basedOn":"Default Paragraph Font"},{"type":"Paragraph","name":"Footer","basedOn":"Normal","link":"Footer Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Footer Char","basedOn":"Default Paragraph Font"}],"defaultTabWidth":36.0,"formatting":false,"protectionType":"ReadOnly","enforcement":true,"hashValue":"TQGuJuLceQCe234Ygx4q6NFgHpRMfi1hjFTojyKzbQOkwk+ckEM9CjNIdkiUhSR/e/7sfMxO4sbPcg/DBzztMg==","saltValue":"FXbkr1RtDIIIZfwlM71dMg=="}`; - -//Open the document in Document Editor. -container.documentEditor.open(sfdt); - - diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/data-protection-cs1/js/index.html deleted file mode 100644 index f23fe3d33..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/js/index.html +++ /dev/null @@ -1,60 +0,0 @@ - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/data-protection-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/data-protection-cs1/ts/index.html deleted file mode 100644 index a25998fb3..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs1/ts/index.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.css b/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.js b/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.js deleted file mode 100644 index 8d9ce73c1..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.js +++ /dev/null @@ -1,12 +0,0 @@ -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true }); - ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - //DocumentEditorContainer control rendering starts - documenteditorContainer.appendTo('#DocumentEditor'); - - -var sfdt ={"sections":[{"blocks":[{"characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Name","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"text":":","characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter name"},{"editRangeId":"1348272392","editableRangeStart":{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Designation:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter designation"},{"editRangeId":"808933422","editableRangeStart":{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Email Address:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"name":"_GoBack","bookmarkType":0},{"name":"_GoBack","bookmarkType":1}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter email address"},{"editRangeId":"810441411","editableRangeStart":{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Feedbacks:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the feedbacks"},{"editRangeId":"1016946268","editableRangeStart":{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Review comments:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the comments"},{"editRangeId":"1373703080","editableRangeStart":{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"paragraphFormat":{"styleName":"Normal"},"inlines":[]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"styleName":"Header"},"inlines":[{"text":"Employee’s Details "}]}]}},"sectionFormat":{"headerDistance":36.0,"footerDistance":36.0,"pageWidth":612.0,"pageHeight":792.0,"leftMargin":72.0,"rightMargin":72.0,"topMargin":72.0,"bottomMargin":72.0,"differentFirstPage":false,"differentOddAndEvenPages":false,"bidi":false}}],"characterFormat":{"fontSize":11.0,"fontFamily":"Calibri","fontSizeBidi":11.0,"fontFamilyBidi":"Calibri"},"paragraphFormat":{"afterSpacing":8.0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple"},"background":{"color":"#FFFFFFFF"},"styles":[{"type":"Paragraph","name":"Normal","next":"Normal"},{"type":"Character","name":"Default Paragraph Font"},{"type":"Paragraph","name":"List Paragraph","basedOn":"Normal","paragraphFormat":{"leftIndent":36.0,"contextualSpacing":true}},{"type":"Paragraph","name":"Header","basedOn":"Normal","next":"Normal","link":"Header Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Header Char","basedOn":"Default Paragraph Font"},{"type":"Paragraph","name":"Footer","basedOn":"Normal","link":"Footer Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Footer Char","basedOn":"Default Paragraph Font"}],"defaultTabWidth":36.0,"formatting":false,"protectionType":"ReadOnly","enforcement":true,"hashValue":"TQGuJuLceQCe234Ygx4q6NFgHpRMfi1hjFTojyKzbQOkwk+ckEM9CjNIdkiUhSR/e/7sfMxO4sbPcg/DBzztMg==","saltValue":"FXbkr1RtDIIIZfwlM71dMg=="}; - -documenteditorContainer.documentEditor.open(JSON.stringify(sfdt)); -documenteditorContainer.documentEditor.currentUser = 'engineer@mycompany.com'; - diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.ts deleted file mode 100644 index 0016fb607..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/index.ts +++ /dev/null @@ -1,18 +0,0 @@ - - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, height: '590px' -}); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#DocumentEditor'); -container.documentEditor.currentUser = 'engineer@mycompany.com'; - -let sfdt: string = `{"sections":[{"blocks":[{"characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Name","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"text":":","characterFormat":{"fontSize":14.0,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter name"},{"editRangeId":"1348272392","editableRangeStart":{"editRangeId":"1348272392","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Designation:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter designation"},{"editRangeId":"808933422","editableRangeStart":{"editRangeId":"808933422","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Email Address:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}},{"name":"_GoBack","bookmarkType":0},{"name":"_GoBack","bookmarkType":1}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"},{"text":"Enter email address"},{"editRangeId":"810441411","editableRangeStart":{"editRangeId":"810441411","columnFirst":0,"columnLast":0,"user":"engineer@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Feedbacks:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the feedbacks"},{"editRangeId":"1016946268","editableRangeStart":{"editRangeId":"1016946268","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0},"paragraphFormat":{"lineSpacing":32.0,"lineSpacingType":"Exactly","styleName":"Normal"},"inlines":[{"text":"Review comments:","characterFormat":{"bold":true,"fontSize":14.0,"boldBidi":true,"fontSizeBidi":14.0}}]},{"rows":[{"rowFormat":{"allowBreakAcrossPages":true,"isHeader":false,"height":20.0,"heightType":"AtLeast","borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}},"cells":[{"blocks":[{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"},{"text":"Enter the comments"},{"editRangeId":"1373703080","editableRangeStart":{"editRangeId":"1373703080","columnFirst":0,"columnLast":0,"user":"manager@mycompany.com"}}]}],"cellFormat":{"columnSpan":1,"rowSpan":1,"preferredWidth":467.5,"preferredWidthType":"Point","verticalAlignment":"Center","isSamePaddingAsTable":true,"borders":{"left":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}}}}]}],"title":null,"description":null,"tableFormat":{"allowAutoFit":true,"leftIndent":0.0,"tableAlignment":"Left","preferredWidthType":"Auto","borders":{"left":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"right":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"top":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"bottom":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"vertical":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"horizontal":{"lineStyle":"Single","lineWidth":0.5,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalDown":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false},"diagonalUp":{"lineStyle":"None","lineWidth":0.0,"shadow":false,"space":0.0,"hasNoneStyle":false}},"bidi":false}},{"paragraphFormat":{"styleName":"Normal"},"inlines":[]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"styleName":"Header"},"inlines":[{"text":"Employee’s Details "}]}]}},"sectionFormat":{"headerDistance":36.0,"footerDistance":36.0,"pageWidth":612.0,"pageHeight":792.0,"leftMargin":72.0,"rightMargin":72.0,"topMargin":72.0,"bottomMargin":72.0,"differentFirstPage":false,"differentOddAndEvenPages":false,"bidi":false}}],"characterFormat":{"fontSize":11.0,"fontFamily":"Calibri","fontSizeBidi":11.0,"fontFamilyBidi":"Calibri"},"paragraphFormat":{"afterSpacing":8.0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple"},"background":{"color":"#FFFFFFFF"},"styles":[{"type":"Paragraph","name":"Normal","next":"Normal"},{"type":"Character","name":"Default Paragraph Font"},{"type":"Paragraph","name":"List Paragraph","basedOn":"Normal","paragraphFormat":{"leftIndent":36.0,"contextualSpacing":true}},{"type":"Paragraph","name":"Header","basedOn":"Normal","next":"Normal","link":"Header Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Header Char","basedOn":"Default Paragraph Font"},{"type":"Paragraph","name":"Footer","basedOn":"Normal","link":"Footer Char","paragraphFormat":{"afterSpacing":0.0,"lineSpacing":1.0,"lineSpacingType":"Multiple","tabs":[{"tabJustification":"Center","position":234.0,"tabLeader":"None","deletePosition":0.0},{"tabJustification":"Right","position":468.0,"tabLeader":"None","deletePosition":0.0}]}},{"type":"Character","name":"Footer Char","basedOn":"Default Paragraph Font"}],"defaultTabWidth":36.0,"formatting":false,"protectionType":"ReadOnly","enforcement":true,"hashValue":"TQGuJuLceQCe234Ygx4q6NFgHpRMfi1hjFTojyKzbQOkwk+ckEM9CjNIdkiUhSR/e/7sfMxO4sbPcg/DBzztMg==","saltValue":"FXbkr1RtDIIIZfwlM71dMg=="}`; - -//Open the document in Document Editor. -container.documentEditor.open(sfdt); - - diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/data-protection-cs2/js/index.html deleted file mode 100644 index f23fe3d33..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/js/index.html +++ /dev/null @@ -1,60 +0,0 @@ - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/data-protection-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/data-protection-cs2/ts/index.html deleted file mode 100644 index a25998fb3..000000000 --- a/ej2-javascript/code-snippet/document-editor/data-protection-cs2/ts/index.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.js deleted file mode 100644 index 33fc3818b..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableBookmarkDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Bookmark'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.ts deleted file mode 100644 index 642992b83..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs1/index.ts +++ /dev/null @@ -1,24 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, SfdtExport, EditorHistory, BookmarkDialog } from '@syncfusion/ej2-documenteditor'; - -// Enable requir modules -DocumentEditor.Inject(Editor, Selection, SfdtExport, EditorHistory, BookmarkDialog); - -// Initialize Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableEditor: true, - enableSelection: true, - enableEditorHistory: true, - enableBookmarkDialog: true, - height: '590px' -}); -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', () => { - //Open bookmark dialog. - documenteditor.showDialog('Bookmark'); -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs1/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs1/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs1/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs1/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs10/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs10/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.js deleted file mode 100644 index c9ec0f388..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableListDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('List'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.ts deleted file mode 100644 index c58c559a5..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs10/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, ListDialog, SfdtExport, } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, ListDialog); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableListDialog: true, - enableSfdtExport: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open list dialog - documenteditor.showDialog('List'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs10/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs10/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs10/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs10/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs10/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs10/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs10/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs10/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs10/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs11/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs11/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.js deleted file mode 100644 index 78e556db7..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableBordersAndShadingDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2,2); -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('BordersAndShading'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.ts deleted file mode 100644 index b726de258..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs11/index.ts +++ /dev/null @@ -1,24 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, BordersAndShadingDialog, SfdtExport, EditorHistory } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, BordersAndShadingDialog, EditorHistory); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableBordersAndShadingDialog: true, - enableSfdtExport: true, - height: '370px', - enableEditorHistory: true -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open hyperlink dialog - documenteditor.showDialog('BordersAndShading'); -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2, 2); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs11/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs11/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs11/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs11/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs11/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs11/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs11/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs11/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs11/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs12/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs12/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.js deleted file mode 100644 index 2ebca9d14..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableTableOptionsDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true, enableTableOptionsDialog: true, enableTablePropertiesDialog: true, enableBordersAndShadingDialog: true, }); -// documenteditor.enableAllModules(); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2,2); -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('TableOptions'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.ts deleted file mode 100644 index 3eb8ae85f..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs12/index.ts +++ /dev/null @@ -1,26 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, TableOptionsDialog, TablePropertiesDialog, BordersAndShadingDialog, SfdtExport, EditorHistory } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, TablePropertiesDialog, BordersAndShadingDialog, TableOptionsDialog, EditorHistory); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableTableOptionsDialog: true, - enableTablePropertiesDialog: true, - enableBordersAndShadingDialog: true, - enableSfdtExport: true, - height: '370px', - enableEditorHistory: true -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open table options dialog - documenteditor.showDialog('TableOptions'); -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2, 2); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs12/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs12/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs12/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs12/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs12/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs12/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs12/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs12/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs12/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs13/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs13/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.js deleted file mode 100644 index f491ba6e2..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.js +++ /dev/null @@ -1,18 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableTableOptionsDialog: true, - enableTablePropertiesDialog:true, - enableBordersAndShadingDialog:true, - enableSfdtExport: true, - enableEditorHistory: true -}); -var button = document.getElementById('dialog'); -button.addEventListener('click', function() { - //To open table properties dialog - documenteditor.showDialog('TableProperties'); -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2,2); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.ts deleted file mode 100644 index eb4e759a4..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs13/index.ts +++ /dev/null @@ -1,29 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, TableOptionsDialog, TablePropertiesDialog, BordersAndShadingDialog, SfdtExport, EditorHistory } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, TablePropertiesDialog, BordersAndShadingDialog, TableOptionsDialog, EditorHistory); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableTableOptionsDialog: true, - enableTablePropertiesDialog: true, - enableBordersAndShadingDialog: true, - enableSfdtExport: true, - height: '370px', - enableEditorHistory: true -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open table properties dialog - documenteditor.showDialog('TableProperties'); -}); - -documenteditor.appendTo('#DocumentEditor'); - -// Insert a new table. -documenteditor.editor.insertTable(2, 2); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs13/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs13/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs13/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs13/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs13/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs13/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs13/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs13/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs13/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs14/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs14/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.js deleted file mode 100644 index d3b515801..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enablePageSetupDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('PageSetup'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.ts deleted file mode 100644 index 44a034ab6..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs14/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, PageSetupDialog, SfdtExport } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, PageSetupDialog); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enablePageSetupDialog: true, - enableSfdtExport: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open page setup dialog - documenteditor.showDialog('PageSetup'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs14/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs14/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs14/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs14/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs14/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs14/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs14/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs14/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs14/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs15/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs15/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.js deleted file mode 100644 index dbd6ff737..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableColumnsDialog: true, enablePageSetupDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Columns'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.ts deleted file mode 100644 index 76fcdb502..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs15/index.ts +++ /dev/null @@ -1,23 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, ColumnsDialog, SfdtExport, EditorHistory } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, ColumnsDialog, EditorHistory); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableColumnsDialog: true, - enableSfdtExport: true, - enableEditorHistory: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open page setup dialog - documenteditor.showDialog('Columns'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs15/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs15/js/index.html deleted file mode 100644 index 7d286194f..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs15/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs15/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs15/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs15/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs15/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs15/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs15/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs16/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs16/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.js deleted file mode 100644 index 27e349d2e..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableHyperlinkDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Hyperlink'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.ts deleted file mode 100644 index 27da8b36b..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs16/index.ts +++ /dev/null @@ -1,24 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, EditorHistory, HyperlinkDialog, SfdtExport } from '@syncfusion/ej2-documenteditor'; -//Inject the required module -DocumentEditor.Inject(Editor, Selection, EditorHistory, HyperlinkDialog, SfdtExport); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditorHistory: true, - enableEditor: true, - enableHyperlinkDialog: true, - enableSfdtExport: true, - height: '370px' -}); -//Click the hyperlink button, the hyperlink dialog will open -function showHyperlinkDialog() { - //Open the hyperlink dialog. - documenteditor.showDialog('Hyperlink'); -} -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', showHyperlinkDialog) -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs16/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs16/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs16/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs16/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs16/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs16/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs16/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs16/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs16/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.js deleted file mode 100644 index 144e92049..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableFontDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Font'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.ts deleted file mode 100644 index 6ed7e90ed..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs2/index.ts +++ /dev/null @@ -1,29 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, FontDialog, SfdtExport, } from '@syncfusion/ej2-documenteditor'; - -DocumentEditor.Inject(Editor, Selection, SfdtExport, FontDialog); - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableFontDialog: true, - enableSfdtExport: true, - height: '370px' -}); - -let containerPanel: HTMLElement = document.getElementById('container'); - -let button: HTMLElement = document.getElementById('dialog'); - -button.addEventListener('click', function () { - // To open Font Dialog - documenteditor.showDialog('Font'); -}); - -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs2/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs2/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs2/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs2/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs2/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs3/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs3/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.js deleted file mode 100644 index 7ebb13be0..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableParagraphDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Paragraph'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.ts deleted file mode 100644 index 12fd0ccb4..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs3/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, ParagraphDialog, SfdtExport, } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, ParagraphDialog); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableParagraphDialog: true, - enableSfdtExport: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open paragraph dialog - documenteditor.showDialog('Paragraph'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs3/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs3/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs3/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs3/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs3/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs3/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs3/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs3/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs3/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs4/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs4/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.js deleted file mode 100644 index 4b558d37b..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableTableDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Table'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.ts deleted file mode 100644 index bfdc95c61..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs4/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, TableDialog, SfdtExport, } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, TableDialog); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableTableDialog: true, - enableSfdtExport: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open table dialog - documenteditor.showDialog('Table'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs4/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs4/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs4/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs4/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs4/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs4/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs4/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs4/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs4/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs5/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs5/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.js deleted file mode 100644 index 33fc3818b..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableBookmarkDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Bookmark'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.ts deleted file mode 100644 index cf48bb492..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs5/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, BookmarkDialog, SfdtExport, } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, BookmarkDialog); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableBookmarkDialog: true, - enableSfdtExport: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open bookmark dialog - documenteditor.showDialog('Bookmark'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs5/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs5/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs5/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs5/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs5/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs5/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs5/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs5/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs5/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs6/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs6/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.js deleted file mode 100644 index 27e349d2e..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableHyperlinkDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Hyperlink'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.ts deleted file mode 100644 index 99361e1e9..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs6/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, HyperlinkDialog, SfdtExport, } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, HyperlinkDialog); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableHyperlinkDialog: true, - enableSfdtExport: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open hyperlink dialog - documenteditor.showDialog('Hyperlink'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs6/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs6/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs6/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs6/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs6/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs6/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs6/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs6/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs6/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs7/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs7/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.js deleted file mode 100644 index c52cd781a..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableTableOfContentsDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('TableOfContents'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.ts deleted file mode 100644 index 99e2d4a82..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs7/index.ts +++ /dev/null @@ -1,22 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, TableOfContentsDialog, SfdtExport } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Editor, Selection, SfdtExport, TableOfContentsDialog); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableTableOfContentsDialog: true, - enableSfdtExport: true, - height: '370px' -}); -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - //To open table of contents dialog - documenteditor.showDialog('TableOfContents'); -}); -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs7/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs7/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs7/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs7/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs7/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs7/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs7/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs7/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs7/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs8/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs8/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.js deleted file mode 100644 index 2a739f03d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableStyleDialog: true,enableStylesDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Styles'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.ts deleted file mode 100644 index c7ba02efa..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs8/index.ts +++ /dev/null @@ -1,29 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, StyleDialog, StylesDialog, SfdtExport, EditorHistory } from '@syncfusion/ej2-documenteditor'; - -DocumentEditor.Inject(Editor, Selection, SfdtExport, StyleDialog, StylesDialog, EditorHistory); - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableStyleDialog: true, - enableSfdtExport: true, - enableStylesDialog: true, - enableEditorHistory: true, - height: '370px' -}); - -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - - //To open styles dialog - documenteditor.showDialog('Styles'); -}); - -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs8/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs8/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs8/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs8/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs8/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs8/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs8/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs8/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs8/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs9/app.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs9/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.css b/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.js b/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.js deleted file mode 100644 index c7991cef6..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableStyleDialog: true, enableSelection: true, enableEditor: true, isReadOnly: false, enableEditorHistory: true }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('dialog').addEventListener('click', function () { - documenteditor.showDialog('Style'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.ts b/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.ts deleted file mode 100644 index 8587403fc..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs9/index.ts +++ /dev/null @@ -1,28 +0,0 @@ - - - -import { DocumentEditor, Editor, Selection, StyleDialog, SfdtExport, StylesDialog, EditorHistory } from '@syncfusion/ej2-documenteditor'; - -DocumentEditor.Inject(Editor, Selection, SfdtExport, StyleDialog, StylesDialog, EditorHistory); - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableStyleDialog: true, - enableSfdtExport: true, - enableEditorHistory: true, - height: '370px' -}); - -let button: HTMLElement = document.getElementById('dialog'); -button.addEventListener('click', function () { - - //To open style dialog - documenteditor.showDialog('Style'); -}); - -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs9/js/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs9/js/index.html deleted file mode 100644 index 608b55c03..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs9/js/index.html +++ /dev/null @@ -1,43 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs9/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/dialog-cs9/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs9/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/dialog-cs9/ts/index.html b/ej2-javascript/code-snippet/document-editor/dialog-cs9/ts/index.html deleted file mode 100644 index 36a004d10..000000000 --- a/ej2-javascript/code-snippet/document-editor/dialog-cs9/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/index.ts deleted file mode 100644 index 4dbf75058..000000000 --- a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/index.ts +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - - diff --git a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/js/index.html deleted file mode 100644 index 08a4e86b9..000000000 --- a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/js/index.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs1/ts/index.html deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/index.ts deleted file mode 100644 index 408d6ae3a..000000000 --- a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/index.ts +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - - - - diff --git a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/js/index.html deleted file mode 100644 index c8709396a..000000000 --- a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/js/index.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/es5-getting-started-cs2/ts/index.html deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.css b/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.css deleted file mode 100644 index fa3d16073..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.css +++ /dev/null @@ -1,12 +0,0 @@ -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.js b/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.js deleted file mode 100644 index 7fb44fb73..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.js +++ /dev/null @@ -1,9 +0,0 @@ -var container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px'}); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - container.documentEditor.save('sample', 'Sfdt'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.ts deleted file mode 100644 index 3ebb4b01d..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs1/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DocumentEditorContainer, Toolbar,Editor, SfdtExport } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar, Editor, SfdtExport); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '390px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - container.documentEditor.save('sample', 'Sfdt'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs1/js/index.html deleted file mode 100644 index c1023f44c..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs1/js/index.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-container-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs1/ts/index.html deleted file mode 100644 index 8184c7b0a..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs1/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.css b/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.css deleted file mode 100644 index fa3d16073..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.css +++ /dev/null @@ -1,12 +0,0 @@ -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.js b/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.js deleted file mode 100644 index efe97b964..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.js +++ /dev/null @@ -1,9 +0,0 @@ -var container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px'}); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - container.documentEditor.save('sample', 'Docx'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.ts deleted file mode 100644 index 17e429349..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs2/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '390px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - container.documentEditor.save('sample', 'Docx'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs2/js/index.html deleted file mode 100644 index c1023f44c..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs2/js/index.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-container-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs2/ts/index.html deleted file mode 100644 index 8184c7b0a..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs2/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs3/app.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs3/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.css b/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.css deleted file mode 100644 index fa3d16073..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.css +++ /dev/null @@ -1,12 +0,0 @@ -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.js b/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.js deleted file mode 100644 index 2be92d9d1..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.js +++ /dev/null @@ -1,9 +0,0 @@ -var container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px'}); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - container.documentEditor.save('sample', 'Txt'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.ts deleted file mode 100644 index 9e0bd8411..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs3/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '390px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - container.documentEditor.save('sample', 'Txt'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs3/js/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs3/js/index.html deleted file mode 100644 index c1023f44c..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs3/js/index.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs3/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-container-cs3/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs3/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs3/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs3/ts/index.html deleted file mode 100644 index 8184c7b0a..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs3/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs4/app.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs4/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.css b/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.css deleted file mode 100644 index fa3d16073..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.css +++ /dev/null @@ -1,12 +0,0 @@ -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.js b/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.js deleted file mode 100644 index 34c3ddf3b..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.js +++ /dev/null @@ -1,9 +0,0 @@ -var container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px'}); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - container.documentEditor.save('sample', 'Dotx'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.ts b/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.ts deleted file mode 100644 index 6f48942ee..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs4/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '390px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -container.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - container.documentEditor.save('sample', 'Dotx'); -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs4/js/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs4/js/index.html deleted file mode 100644 index c1023f44c..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs4/js/index.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs4/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-container-cs4/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs4/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-container-cs4/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-container-cs4/ts/index.html deleted file mode 100644 index 8184c7b0a..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-container-cs4/ts/index.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/export-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-cs1/index.css b/ej2-javascript/code-snippet/document-editor/export-cs1/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs1/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs1/index.js b/ej2-javascript/code-snippet/document-editor/export-cs1/index.js deleted file mode 100644 index 0247a1c57..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs1/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableSfdtExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - documenteditor.save('sample', 'Sfdt'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/export-cs1/index.ts deleted file mode 100644 index 32f703927..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs1/index.ts +++ /dev/null @@ -1,16 +0,0 @@ - - -import { DocumentEditor, FormatType, Selection, Editor, SfdtExport } from '@syncfusion/ej2-documenteditor'; - -DocumentEditor.Inject(SfdtExport, Selection, Editor); - -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', enableSfdtExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - documenteditor.save('sample', 'Sfdt'); -}); - - - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/export-cs1/js/index.html deleted file mode 100644 index d336c1d48..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs1/js/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-cs1/ts/index.html deleted file mode 100644 index 9211a7bad..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs1/ts/index.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/export-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-cs2/index.css b/ej2-javascript/code-snippet/document-editor/export-cs2/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs2/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs2/index.js b/ej2-javascript/code-snippet/document-editor/export-cs2/index.js deleted file mode 100644 index 94a02bfe4..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs2/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableWordExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - documenteditor.save('sample', 'Docx'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/export-cs2/index.ts deleted file mode 100644 index 86fd93dc9..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs2/index.ts +++ /dev/null @@ -1,16 +0,0 @@ - - -import { DocumentEditor, FormatType, Selection, Editor, SfdtExport, WordExport } from '@syncfusion/ej2-documenteditor'; - -DocumentEditor.Inject(SfdtExport, WordExport, Selection, Editor); - -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', enableWordExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - documenteditor.save('sample', 'Docx'); -}); - - - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/export-cs2/js/index.html deleted file mode 100644 index d336c1d48..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs2/js/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-cs2/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-cs2/ts/index.html deleted file mode 100644 index 9211a7bad..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs2/ts/index.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs3/app.ts b/ej2-javascript/code-snippet/document-editor/export-cs3/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-cs3/index.css b/ej2-javascript/code-snippet/document-editor/export-cs3/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs3/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs3/index.js b/ej2-javascript/code-snippet/document-editor/export-cs3/index.js deleted file mode 100644 index ce02ad9bb..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs3/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableTextExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - documenteditor.save('sample', 'Txt'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs3/index.ts b/ej2-javascript/code-snippet/document-editor/export-cs3/index.ts deleted file mode 100644 index e82bf9fd3..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs3/index.ts +++ /dev/null @@ -1,18 +0,0 @@ - - -import { DocumentEditor, FormatType, Selection, Editor, SfdtExport, TextExport} from '@syncfusion/ej2-documenteditor'; - -//Inject require modules for Export. -DocumentEditor.Inject(SfdtExport, TextExport, Selection, Editor); - -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', enableTextExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - //Export the document as text file. - documenteditor.save('sample', 'Txt'); -}); - - - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs3/js/index.html b/ej2-javascript/code-snippet/document-editor/export-cs3/js/index.html deleted file mode 100644 index d336c1d48..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs3/js/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs3/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-cs3/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs3/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs3/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-cs3/ts/index.html deleted file mode 100644 index 9211a7bad..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs3/ts/index.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs4/app.ts b/ej2-javascript/code-snippet/document-editor/export-cs4/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/export-cs4/index.css b/ej2-javascript/code-snippet/document-editor/export-cs4/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs4/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs4/index.js b/ej2-javascript/code-snippet/document-editor/export-cs4/index.js deleted file mode 100644 index 950a4f070..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs4/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableWordExport: true, enableTextExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', function () { - documenteditor.save('sample', 'Dotx'); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs4/index.ts b/ej2-javascript/code-snippet/document-editor/export-cs4/index.ts deleted file mode 100644 index 986c58ec2..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs4/index.ts +++ /dev/null @@ -1,18 +0,0 @@ - - -import { DocumentEditor, FormatType, Selection, Editor, SfdtExport, WordExport} from '@syncfusion/ej2-documenteditor'; - -//Inject require modules for Export. -DocumentEditor.Inject(SfdtExport, WordExport, Selection, Editor); - -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', enableWordExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', () => { - //Export the document as text file. - documenteditor.save('sample', 'Dotx'); -}); - - - diff --git a/ej2-javascript/code-snippet/document-editor/export-cs4/js/index.html b/ej2-javascript/code-snippet/document-editor/export-cs4/js/index.html deleted file mode 100644 index d336c1d48..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs4/js/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs4/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/export-cs4/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs4/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/export-cs4/ts/index.html b/ej2-javascript/code-snippet/document-editor/export-cs4/ts/index.html deleted file mode 100644 index 9211a7bad..000000000 --- a/ej2-javascript/code-snippet/document-editor/export-cs4/ts/index.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/find-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/find-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/find-cs1/index.css b/ej2-javascript/code-snippet/document-editor/find-cs1/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/find-cs1/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/find-cs1/index.js b/ej2-javascript/code-snippet/document-editor/find-cs1/index.js deleted file mode 100644 index b454ab313..000000000 --- a/ej2-javascript/code-snippet/document-editor/find-cs1/index.js +++ /dev/null @@ -1,26 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableSelection: true, enableSearch: true, enableEditor: true, isReadOnly: false, enableOptionsPane: true }); -documenteditor.appendTo('#DocumentEditor'); -var sfdt = `{ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Adventure Works Cycles, the fictitious company on which the AdventureWorks sample databases are based, is a large, multinational manufacturing company. The company manufactures and sells metal and composite bicycles to North American, European and Asian commercial markets. While its base operation is located in Bothell, Washington with 290 employees, several regional sales teams are located throughout their market base." - } - ] - } - ] - } - ] -}`; -documenteditor.open(sfdt); -document.getElementById('showhidepane').addEventListener('click', () => { - documenteditor.showOptionsPane(); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/find-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/find-cs1/index.ts deleted file mode 100644 index a5424f0bc..000000000 --- a/ej2-javascript/code-snippet/document-editor/find-cs1/index.ts +++ /dev/null @@ -1,31 +0,0 @@ - - -import { DocumentEditor, Selection, Editor, Search, OptionsPane, EditorHistory } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Selection, Search, Editor, OptionsPane, EditorHistory); -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', enableSelection: true, enableSearch: true, enableEditor: true, isReadOnly: false, enableOptionsPane: true, enableEditorHistory : true }); -documenteditor.appendTo('#DocumentEditor'); -let sfdt: string = `{ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Adventure Works Cycles, the fictitious company on which the AdventureWorks sample databases are based, is a large, multinational manufacturing company. The company manufactures and sells metal and composite bicycles to North American, European and Asian commercial markets. While its base operation is located in Bothell, Washington with 290 employees, several regional sales teams are located throughout their market base." - } - ] - } - ] - } - ] -}`; -documenteditor.open(sfdt); -document.getElementById('showhidepane').addEventListener('click', () => { - documenteditor.showOptionsPane(); -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/find-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/find-cs1/js/index.html deleted file mode 100644 index 95704d263..000000000 --- a/ej2-javascript/code-snippet/document-editor/find-cs1/js/index.html +++ /dev/null @@ -1,42 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/find-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/find-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/find-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/find-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/find-cs1/ts/index.html deleted file mode 100644 index 81db37a7a..000000000 --- a/ej2-javascript/code-snippet/document-editor/find-cs1/ts/index.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/getting-started-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.css b/ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.ts deleted file mode 100644 index 31d9e0bbf..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/index.ts +++ /dev/null @@ -1,15 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -// Initialize Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -// Enable all built in modules. -documenteditor.enableAllModules(); - -// Render the Document Editor component. -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/getting-started-cs1/js/index.html deleted file mode 100644 index d6931d2ce..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/getting-started-cs1/systemjs.config.js deleted file mode 100644 index f95e28ad4..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/getting-started-cs1/ts/index.html deleted file mode 100644 index 1016f51dc..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/getting-started-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.css b/ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.ts deleted file mode 100644 index e69651200..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/index.ts +++ /dev/null @@ -1,15 +0,0 @@ - - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documenteditor: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -// Render Document Editor component. -documenteditor.appendTo('#DocumentEditor'); - - - diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/getting-started-cs2/js/index.html deleted file mode 100644 index d6931d2ce..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/getting-started-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/getting-started-cs2/ts/index.html deleted file mode 100644 index 1016f51dc..000000000 --- a/ej2-javascript/code-snippet/document-editor/getting-started-cs2/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.css b/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.css deleted file mode 100644 index 774438806..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #Documenteditor { - width: 100%; - height: 100%; - } - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.js b/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.js deleted file mode 100644 index fcde5ae98..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.js +++ /dev/null @@ -1,15 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableSelection: true, enableEditor: true, isReadOnly: false }); - -documenteditor.appendTo('#DocumentEditor'); - -documenteditor.requestNavigate = (args) => { - if (args.linkType !== 'Bookmark') { - var link = args.navigationLink; - if (args.localReference.length > 0) { - link += '#' + args.localReference; - } - window.open(link); - args.isHandled = true; - } -}; - diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.ts deleted file mode 100644 index 6a80a683a..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/index.ts +++ /dev/null @@ -1,24 +0,0 @@ - - -import { DocumentEditor, SfdtExport, Selection, RequestNavigateEventArgs, Editor } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditor.Inject(Selection, SfdtExport, Editor); -//Initilize the Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ enableSelection: true, height: '370px', enableEditor: true, isReadOnly: false }); -documenteditor.appendTo('#DocumentEditor'); - -// Add event listener for requestNavigate event to customize hyperlink navigation functionality -documenteditor.requestNavigate = (args: RequestNavigateEventArgs) => { - if (args.linkType !== 'Bookmark') { - let link: string = args.navigationLink; - if (args.localReference.length > 0) { - link += '#' + args.localReference; - } - //Navigate to the selected URL. - window.open(link); - args.isHandled = true; - } -}; - - diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/js/index.html deleted file mode 100644 index 47022d674..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/js/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/ts/index.html deleted file mode 100644 index fb4a6cc27..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs1/ts/index.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.css b/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.css deleted file mode 100644 index 774438806..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #Documenteditor { - width: 100%; - height: 100%; - } - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.js b/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.js deleted file mode 100644 index f4f64f7a8..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.js +++ /dev/null @@ -1,15 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableSelection: true, isReadOnly: false, enableEditor: true }); - -documenteditor.appendTo('#DocumentEditor'); - -documenteditor.requestNavigate = (args) => { - if (args.linkType !== 'Bookmark') { - var link = args.navigationLink; - if (args.localReference.length > 0) { - link += '#' + args.localReference; - } - window.open(link); - args.isHandled = true; - } -}; - diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.ts deleted file mode 100644 index a83deee13..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/index.ts +++ /dev/null @@ -1,20 +0,0 @@ - - -import { DocumentEditor, SfdtExport, Selection, Editor, RequestNavigateEventArgs } from '@syncfusion/ej2-documenteditor'; -DocumentEditor.Inject(Selection, SfdtExport, Editor); -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', isReadOnly: false, enableSelection: true, enableEditor: true }); -documenteditor.appendTo('#DocumentEditor'); - -// Add event listener for requestNavigate event to customize hyperlink navigation functionality. -documenteditor.requestNavigate = (args: RequestNavigateEventArgs) => { - if (args.linkType !== 'Bookmark') { - let link: string = args.navigationLink; - if (args.localReference.length > 0) { - link += '#' + args.localReference; - } - window.open(link); - args.isHandled = true; - } -}; - - diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/js/index.html deleted file mode 100644 index e580162fd..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/js/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/ts/index.html deleted file mode 100644 index fb4a6cc27..000000000 --- a/ej2-javascript/code-snippet/document-editor/hyperlink-cs2/ts/index.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/image-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/image-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/image-cs1/index.css b/ej2-javascript/code-snippet/document-editor/image-cs1/index.css deleted file mode 100644 index ace870e02..000000000 --- a/ej2-javascript/code-snippet/document-editor/image-cs1/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/image-cs1/index.js b/ej2-javascript/code-snippet/document-editor/image-cs1/index.js deleted file mode 100644 index ff293b936..000000000 --- a/ej2-javascript/code-snippet/document-editor/image-cs1/index.js +++ /dev/null @@ -1,41 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, - enableEditor: true, - enableSection: true, - enableImageResizer: true, - enableEditorHistory: true -}); -documenteditor.appendTo('#DocumentEditor'); -//Insert Image From URL with alternate text -documenteditor.editor.insertImage('https://cdn.syncfusion.com/content/images/Logo/Logo_Black_72dpi_without.png', 200, 200, 'Syncfusion'); -document.getElementById('insert-picture').addEventListener('click', () => { - var pictureUpload = document.getElementById("insertImageButton"); - pictureUpload.value = ''; - pictureUpload.click(); -}); -document.getElementById('insertImageButton').addEventListener('change', onInsertImage); -function onInsertImage(args) { - if (navigator.userAgent.match('Chrome') || navigator.userAgent.match('Firefox') || navigator.userAgent.match('Edge') || navigator.userAgent.match('MSIE') || navigator.userAgent.match('.NET')) { - if (args.target.files[0]) { - var path = args.target.files[0]; - var reader = new FileReader(); - reader.onload = function (frEvent) { - var base64String = frEvent.target.result; - var image = document.createElement('img'); - image.addEventListener('load', function () { - documenteditor.editor.insertImage(base64String, this.width, this.height); - }) - image.src = base64String; - }; - reader.readAsDataURL(path); - } - //Safari does not Support FileReader Class - } else { - var image = document.createElement('img'); - image.addEventListener('load', function () { - documenteditor.editor.insertImage(args.target.value); - }) - image.src = args.target.value; - } -} - diff --git a/ej2-javascript/code-snippet/document-editor/image-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/image-cs1/index.ts deleted file mode 100644 index cc8cf1a7e..000000000 --- a/ej2-javascript/code-snippet/document-editor/image-cs1/index.ts +++ /dev/null @@ -1,57 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, ImageResizer, EditorHistory } from '@syncfusion/ej2-documenteditor'; -import { Button } from '@syncfusion/ej2-buttons'; -//Inject require modules. -DocumentEditor.Inject(Editor, Selection, ImageResizer, EditorHistory); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableEditor: true, - enableSection: true, - enableImageResizer: true, - enableEditorHistory: true, - height: '370px' -}); -documenteditor.appendTo('#DocumentEditor'); -//Insert Image From URL with alternate text -documenteditor.editor.insertImage('https://cdn.syncfusion.com/content/images/Logo/Logo_Black_72dpi_without.png', 200, 200, 'Syncfusion'); -let insertPictureButton: Button = new Button(); -insertPictureButton.appendTo('#insert-picture'); - -//Open file picker. -document.getElementById('insert-picture').addEventListener('click', () => { - let pictureUpload: HTMLInputElement = document.getElementById("insertImageButton") as HTMLInputElement; - pictureUpload.value = ''; - pictureUpload.click(); -}); -// File picker change event. -document.getElementById('insertImageButton').addEventListener('change', onInsertImage); - -//Get select image from file picker and insert it in Document Editor. -function onInsertImage(args: any): void { - if (navigator.userAgent.match('Chrome') || navigator.userAgent.match('Firefox') || navigator.userAgent.match('Edge') || navigator.userAgent.match('MSIE') || navigator.userAgent.match('.NET')) { - if (args.target.files[0]) { - let path = args.target.files[0]; - let reader = new FileReader(); - reader.onload = function (frEvent: any) { - let base64String = frEvent.target.result; - let image = document.createElement('img'); - image.addEventListener('load', function () { - //Insert image. - documenteditor.editor.insertImage(base64String, this.width, this.height); - }) - image.src = base64String; - }; - reader.readAsDataURL(path); - } - //Safari does not Support FileReader Class - } else { - let image = document.createElement('img'); - image.addEventListener('load', function () { - documenteditor.editor.insertImage(args.target.value); - }) - image.src = args.target.value; - } -} - - diff --git a/ej2-javascript/code-snippet/document-editor/image-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/image-cs1/js/index.html deleted file mode 100644 index cd8b750f2..000000000 --- a/ej2-javascript/code-snippet/document-editor/image-cs1/js/index.html +++ /dev/null @@ -1,44 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    -
    - - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/image-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/image-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/image-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/image-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/image-cs1/ts/index.html deleted file mode 100644 index efb3b1bd6..000000000 --- a/ej2-javascript/code-snippet/document-editor/image-cs1/ts/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - -
    -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/import-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/import-cs1/index.css b/ej2-javascript/code-snippet/document-editor/import-cs1/index.css deleted file mode 100644 index d1c5c0fb0..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-cs1/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-cs1/index.js b/ej2-javascript/code-snippet/document-editor/import-cs1/index.js deleted file mode 100644 index 04f4b2786..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-cs1/index.js +++ /dev/null @@ -1,28 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ }); - -documenteditor.appendTo('#DocumentEditor'); - -var sfdt ={ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Hello World" - } - ] - } - ], - "headersFooters": { - } - } - ] -}; - -documenteditor.open(JSON.stringify(sfdt)); - diff --git a/ej2-javascript/code-snippet/document-editor/import-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/import-cs1/index.ts deleted file mode 100644 index 63c442058..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-cs1/index.ts +++ /dev/null @@ -1,35 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -// Initialize the Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px' }); - -documenteditor.appendTo('#DocumentEditor'); - -let sfdt: string = `{ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Hello World" - } - ] - } - ], - "headersFooters": { - } - } - ] -}`; - -//Open the sfdt document in the Document Editor. -documenteditor.open(sfdt); - - diff --git a/ej2-javascript/code-snippet/document-editor/import-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/import-cs1/js/index.html deleted file mode 100644 index 2174c361f..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-cs1/js/index.html +++ /dev/null @@ -1,31 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/import-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/import-cs1/ts/index.html deleted file mode 100644 index 4a1cefd45..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-cs1/ts/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.css b/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.css deleted file mode 100644 index d1c5c0fb0..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.js b/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.js deleted file mode 100644 index 5dc7ca6c1..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.js +++ /dev/null @@ -1,25 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('file_upload').setAttribute('accept', '.sfdt'); - -document.getElementById("import").addEventListener("click", function () { - document.getElementById('file_upload').click(); -}); - -document.getElementById('file_upload').addEventListener("change", function (e) { - if (e.target.files[0]) { - var file = e.target.files[0]; - if (file.name.substr(file.name.lastIndexOf('.')) === '.sfdt') { - var fileReader = new FileReader(); - fileReader.onload = function (e) { - var contents = e.target.result; - documenteditor.open(contents); - }; - fileReader.readAsText(file); - documenteditor.documentName = file.name.substr(0, file.name.lastIndexOf('.')); - } - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.ts deleted file mode 100644 index ef6b1f806..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/index.ts +++ /dev/null @@ -1,36 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -// Initialize the Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px' }); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('file_upload').setAttribute('accept', '.sfdt'); - -//Open file picker. -document.getElementById("import").addEventListener("click", (): void => { - document.getElementById('file_upload').click(); -}); - -document.getElementById('file_upload').addEventListener("change", (e: any): void => { - if (e.target.files[0]) { - //Get the selected file. - let file = e.target.files[0]; - if (file.name.substr(file.name.lastIndexOf('.')) === '.sfdt') { - let fileReader: FileReader = new FileReader(); - fileReader.onload = (e: any) => { - let contents: string = e.target.result; - //Open the sfdt document in the Document Editor. - documenteditor.open(contents); - }; - //Read the file content. - fileReader.readAsText(file); - documenteditor.documentName = file.name.substr(0, file.name.lastIndexOf('.')); - } - } -}); - - - diff --git a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/js/index.html deleted file mode 100644 index 97f7043af..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/js/index.html +++ /dev/null @@ -1,33 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - -
    -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/ts/index.html deleted file mode 100644 index ef4e22835..000000000 --- a/ej2-javascript/code-snippet/document-editor/import-sfdt-cs1/ts/index.html +++ /dev/null @@ -1,28 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    - -
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/list-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/list-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/list-cs1/index.css b/ej2-javascript/code-snippet/document-editor/list-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/list-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/list-cs1/index.js b/ej2-javascript/code-snippet/document-editor/list-cs1/index.js deleted file mode 100644 index d688a869e..000000000 --- a/ej2-javascript/code-snippet/document-editor/list-cs1/index.js +++ /dev/null @@ -1,47 +0,0 @@ -ej.base.enableRipple(true); - -ej.documenteditor.DocumentEditor.Inject(ej.documenteditor.Editor, ej.documenteditor.Selection,ej.documenteditor.EditorHistory); -var documenteditor = new ej.documenteditor.DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true,enableEditorHistory:true,height: '370px'}); - -function toolbarAction (args){ - switch (args.item.id) { - case 'Bullets': - //To create bullet list - documenteditor.editor.applyBullet('\uf0b7', 'Symbol'); - break; - case 'Numbering': - //To create numbering list - documenteditor.editor.applyNumbering('%1)', 'UpRoman'); - break; - case 'clearlist': - //To clear list - documenteditor.editor.clearList(); - break; - } -}; - -var toolbar = new ej.navigations.Toolbar({ - clicked: toolbarAction, - items: [ - { - prefixIcon: 'e-de-ctnr-bullets e-icons', - tooltipText: 'Bullets', - id: 'Bullets', - }, - { - prefixIcon: 'e-de-ctnr-numbering e-icons', - tooltipText: 'Numbering', - id: 'Numbering', - }, - { - text: 'Clear', - id: 'clearlist', - tooltipText: 'Clear List', - }, - ], -}); -toolbar.appendTo('#toolbar'); - -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/list-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/list-cs1/index.ts deleted file mode 100644 index fb18e80dd..000000000 --- a/ej2-javascript/code-snippet/document-editor/list-cs1/index.ts +++ /dev/null @@ -1,58 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, EditorHistory } from '@syncfusion/ej2-documenteditor'; -import { Toolbar } from '@syncfusion/ej2-navigations'; - -//Inject the require module -DocumentEditor.Inject(Editor, Selection, EditorHistory); - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditorHistory: true, - enableEditor: true, - height: '370px' -}); - -function toolbarAction(args) { - switch (args.item.id) { - case 'Bullets': - //To create bullet list - documenteditor.editor.applyBullet('\uf0b7', 'Symbol'); - break; - case 'Numbering': - //To create numbering list - documenteditor.editor.applyNumbering('%1)', 'UpRoman'); - break; - case 'clearlist': - //To clear list - documenteditor.editor.clearList(); - break; - } -}; - -let toolbar: Toolbar = new Toolbar({ - clicked: toolbarAction, - items: [ - { - prefixIcon: 'e-de-ctnr-bullets e-icons', - tooltipText: 'Bullets', - id: 'Bullets', - }, - { - prefixIcon: 'e-de-ctnr-numbering e-icons', - tooltipText: 'Numbering', - id: 'Numbering', - }, - { - text: 'Clear', - id: 'clearlist', - tooltipText: 'Clear List', - } - ], -}); -toolbar.appendTo('#toolbar'); - -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/list-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/list-cs1/js/index.html deleted file mode 100644 index 658a88815..000000000 --- a/ej2-javascript/code-snippet/document-editor/list-cs1/js/index.html +++ /dev/null @@ -1,41 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/list-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/list-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/list-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/list-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/list-cs1/ts/index.html deleted file mode 100644 index a95028d31..000000000 --- a/ej2-javascript/code-snippet/document-editor/list-cs1/ts/index.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-aws-s3/index.ts b/ej2-javascript/code-snippet/document-editor/open-aws-s3/index.ts deleted file mode 100644 index 5823bb908..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-aws-s3/index.ts +++ /dev/null @@ -1,40 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('load').addEventListener('click', (): void => { - load(); -}); - -function load(): void { - fetch( - 'http://localhost:62870/api/documenteditor/LoadFromS3', - { - method: 'Post', - headers: { 'Content-Type': 'application/json;charset=UTF-8' }, - body: JSON.stringify({ documentName: 'Getting Started.docx' }) - } - ) - .then(response => { - if (response.status === 200 || response.status === 304) { - return response.json(); // Return the Promise - } else { - throw new Error('Error loading data'); - } - }) - .then(json => { - documentEditorContainer.documentEditor.open(JSON.stringify(json)); - }) - .catch(error => { - console.error(error); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/open-aws-s3/js/index.html b/ej2-javascript/code-snippet/document-editor/open-aws-s3/js/index.html deleted file mode 100644 index 2c3728c53..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-aws-s3/js/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - diff --git a/ej2-javascript/code-snippet/document-editor/open-aws-s3/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-aws-s3/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-aws-s3/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/open-aws-s3/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-aws-s3/ts/index.html deleted file mode 100644 index 9a5ea7402..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-aws-s3/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-azure-blob/index.ts b/ej2-javascript/code-snippet/document-editor/open-azure-blob/index.ts deleted file mode 100644 index f3cd037e2..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-azure-blob/index.ts +++ /dev/null @@ -1,40 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('load').addEventListener('click', (): void => { - load(); -}); - -function load(): void { - fetch( - 'http://localhost:62870/api/documenteditor/LoadFromAzure', - { - method: 'Post', - headers: { 'Content-Type': 'application/json;charset=UTF-8' }, - body: JSON.stringify({ documentName: 'Getting Started.docx' }) - } - ) - .then(response => { - if (response.status === 200 || response.status === 304) { - return response.json(); // Return the Promise - } else { - throw new Error('Error loading data'); - } - }) - .then(json => { - documentEditorContainer.documentEditor.open(JSON.stringify(json)); - }) - .catch(error => { - console.error(error); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/open-azure-blob/js/index.html b/ej2-javascript/code-snippet/document-editor/open-azure-blob/js/index.html deleted file mode 100644 index 86613b2a3..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-azure-blob/js/index.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-azure-blob/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-azure-blob/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-azure-blob/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/open-azure-blob/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-azure-blob/ts/index.html deleted file mode 100644 index bcf880d5c..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-azure-blob/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/index.ts b/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/index.ts deleted file mode 100644 index aa18d08b2..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/index.ts +++ /dev/null @@ -1,41 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('load').addEventListener('click', (): void => { - load(); -}); - -function load(): void { - fetch( - 'http://localhost:62870/api/documenteditor/LoadFromBoxCloud', - { - method: 'Post', - headers: { 'Content-Type': 'application/json;charset=UTF-8' }, - body: JSON.stringify({ documentName: 'Getting Started.docx' }) - } - ) - .then(response => { - if (response.status === 200 || response.status === 304) { - return response.json(); // Return the Promise - } else { - throw new Error('Error loading data'); - } - }) - .then(json => { - documentEditorContainer.documentEditor.open(JSON.stringify(json)); - }) - .catch(error => { - console.error(error); - }); -} console.error(error); - }); - diff --git a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/js/index.html b/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/js/index.html deleted file mode 100644 index af9f0966a..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/js/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/ts/index.html deleted file mode 100644 index 6b6e41885..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-box-cloud-file-storage/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.css b/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.js b/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.js deleted file mode 100644 index c81357b33..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.js +++ /dev/null @@ -1,12 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documenteditor.enableAllModules(); -onCreated = function (){ - var data = '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; - documenteditor.open(data); -}; -documenteditor.appendTo('#DocumentEditor'); -documenteditor.addEventListener("created", onCreated()); - - diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.ts deleted file mode 100644 index c7a35249a..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/index.ts +++ /dev/null @@ -1,23 +0,0 @@ - - -import { DocumentEditor, Editor } from '@syncfusion/ej2-documenteditor'; - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); - -//Enable all built in modules. -documenteditor.enableAllModules(); - -//Open the default document in `created` event. -documenteditor.created = function () { - //load your default document here - let data: string = '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; - //Open the default document - documenteditor.open(data); -}; - -//Render Document Editor component. -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/js/index.html deleted file mode 100644 index d6931d2ce..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/ts/index.html deleted file mode 100644 index 1016f51dc..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.css b/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.js b/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.js deleted file mode 100644 index da91a1cff..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.js +++ /dev/null @@ -1,15 +0,0 @@ -var documenteditorcontainer = new ej.documenteditor.DocumentEditorContainer({ - isReadOnly: false -}); -ej.documenteditor.DocumentEditorContainer.Inject( - ej.documenteditor.Toolbar -); -onCreated = function() { - var data = - '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; - documenteditorcontainer.documentEditor.open(data); -}; -documenteditorcontainer.appendTo("#DocumentEditor"); -documenteditorcontainer.addEventListener("created", onCreated()); - - diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.ts deleted file mode 100644 index 453f49a19..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/index.ts +++ /dev/null @@ -1,23 +0,0 @@ - - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component. -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, height: '590px' -}); - -//Open the default document in `created` event. -container.created = function () { - //load your default document here - let data: string = '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; - //Open the default document - container.documentEditor.open(data); -}; -//Render Document Editor Container component. -container.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/js/index.html deleted file mode 100644 index d6931d2ce..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/ts/index.html deleted file mode 100644 index 1016f51dc..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-default-document-cs2/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/index.ts b/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/index.ts deleted file mode 100644 index 624c792a4..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/index.ts +++ /dev/null @@ -1,39 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('load').addEventListener('click', (): void => { - load(); -}); - -function load(): void { - fetch( - 'http://localhost:62870/api/documenteditor/LoadFromDropBox', - { - method: 'Post', - headers: { 'Content-Type': 'application/json;charset=UTF-8' }, - body: JSON.stringify({ documentName: 'Getting Started.docx' }) - } - ) - .then(response => { - if (response.status === 200 || response.status === 304) { - return response.json(); // Return the Promise - } else { - throw new Error('Error loading data'); - } - }) - .then(json => { - documentEditorContainer.documentEditor.open(JSON.stringify(json)); - }) - .catch(error => { - console.error(error); - }); -} diff --git a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/js/index.html b/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/js/index.html deleted file mode 100644 index 42482c1f0..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/js/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/ts/index.html deleted file mode 100644 index 49d1d647d..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-dropbox-cloud-file-storage/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/index.ts b/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/index.ts deleted file mode 100644 index d9c21433e..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/index.ts +++ /dev/null @@ -1,40 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('load').addEventListener('click', (): void => { - load(); -}); - -function load(): void { - fetch( - 'http://localhost:62870/api/documenteditor/LoadFromGoogleCloud', - { - method: 'Post', - headers: { 'Content-Type': 'application/json;charset=UTF-8' }, - body: JSON.stringify({ documentName: 'Getting Started.docx' }) - } - ) - .then(response => { - if (response.status === 200 || response.status === 304) { - return response.json(); // Return the Promise - } else { - throw new Error('Error loading data'); - } - }) - .then(json => { - documentEditorContainer.documentEditor.open(JSON.stringify(json)); - }) - .catch(error => { - console.error(error); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/js/index.html b/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/js/index.html deleted file mode 100644 index db37751c2..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/js/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/ts/index.html deleted file mode 100644 index dd7e45e1b..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-cloud-storage/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-google-drive/index.ts b/ej2-javascript/code-snippet/document-editor/open-google-drive/index.ts deleted file mode 100644 index 71aa81eda..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-drive/index.ts +++ /dev/null @@ -1,40 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('load').addEventListener('click', (): void => { - load(); -}); - -function load(): void { - fetch( - 'http://localhost:62870/api/documenteditor/LoadFromGoogleDrive', - { - method: 'Post', - headers: { 'Content-Type': 'application/json;charset=UTF-8' }, - body: JSON.stringify({ documentName: 'Getting Started.docx' }) - } - ) - .then(response => { - if (response.status === 200 || response.status === 304) { - return response.json(); // Return the Promise - } else { - throw new Error('Error loading data'); - } - }) - .then(json => { - documentEditorContainer.documentEditor.open(JSON.stringify(json)); - }) - .catch(error => { - console.error(error); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/open-google-drive/js/index.html b/ej2-javascript/code-snippet/document-editor/open-google-drive/js/index.html deleted file mode 100644 index 9513aedb2..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-drive/js/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-google-drive/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-google-drive/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-drive/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/open-google-drive/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-google-drive/ts/index.html deleted file mode 100644 index abe6b7585..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-google-drive/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-one-drive/index.ts b/ej2-javascript/code-snippet/document-editor/open-one-drive/index.ts deleted file mode 100644 index 07d75091c..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-one-drive/index.ts +++ /dev/null @@ -1,40 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('load').addEventListener('click', (): void => { - load(); -}); - -function load(): void { - fetch( - 'http://localhost:62870/api/documenteditor/LoadFromOneDrive', - { - method: 'Post', - headers: { 'Content-Type': 'application/json;charset=UTF-8' }, - body: JSON.stringify({ documentName: 'Getting Started.docx' }) - } - ) - .then(response => { - if (response.status === 200 || response.status === 304) { - return response.json(); // Return the Promise - } else { - throw new Error('Error loading data'); - } - }) - .then(json => { - documentEditorContainer.documentEditor.open(JSON.stringify(json)); - }) - .catch(error => { - console.error(error); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/open-one-drive/js/index.html b/ej2-javascript/code-snippet/document-editor/open-one-drive/js/index.html deleted file mode 100644 index 5128c94fa..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-one-drive/js/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/open-one-drive/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/open-one-drive/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-one-drive/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/open-one-drive/ts/index.html b/ej2-javascript/code-snippet/document-editor/open-one-drive/ts/index.html deleted file mode 100644 index 92b52019c..000000000 --- a/ej2-javascript/code-snippet/document-editor/open-one-drive/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.css b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.js b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.js deleted file mode 100644 index 09f7c4ded..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.js +++ /dev/null @@ -1,24 +0,0 @@ -ej.documenteditor.DocumentEditor.Inject(ej.documenteditor.Selection,ej.documenteditor.Editor,ej.documenteditor.SfdtExport,ej.documenteditor.WordExport) - -var documentEditor = new ej.documenteditor.DocumentEditor({ enableSfdtExport : true, enableWordExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documentEditor.appendTo('#DocumentEditor'); - -documentEditor.keyDown = function (args) { - var keyCode = args.event.which || args.event.keyCode; - - var isCtrlKey = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - - var isAltKey = args.event.altKey ? args.event.altKey : ((keyCode === 18) ? true : false); - - // 83 is the character code for 'S' - if (isCtrlKey && !isAltKey && keyCode === 83) { - //To prevent default save operation, set the isHandled property to true - args.isHandled = true; - documentEditor.save('sample', 'Docx'); - args.event.preventDefault(); - } else if (isCtrlKey && isAltKey && keyCode === 83) { - documentEditor.save('sample', 'Sfdt'); - } -} - diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.ts deleted file mode 100644 index 8cc9b6bc6..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/index.ts +++ /dev/null @@ -1,32 +0,0 @@ - - -import { DocumentEditor, Selection, Editor, DocumentEditorKeyDownEventArgs, SfdtExport, WordExport } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditor.Inject(Selection, Editor, SfdtExport, WordExport); - -//Initialize Document Editor. -let documentEditor: DocumentEditor = new DocumentEditor({ height: '370px', enableEditor: true, enableSfdtExport: true, enableWordExport: true, isReadOnly: false }); - -documentEditor.appendTo('#DocumentEditor'); - -//Override keyboard shortcut inside `keyDown` event. -documentEditor.keyDown = function (args: DocumentEditorKeyDownEventArgs) { - let keyCode: number = args.event.which || args.event.keyCode; - - let isCtrlKey: boolean = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - - let isAltKey: boolean = args.event.altKey ? args.event.altKey : ((keyCode === 18) ? true : false); - - // 83 is the character code for 'S' - if (isCtrlKey && !isAltKey && keyCode === 83) { - //To prevent default save operation, set the isHandled property to true - args.isHandled = true; - documentEditor.save('sample', 'Docx'); - args.event.preventDefault(); - } else if (isCtrlKey && isAltKey && keyCode === 83) { - documentEditor.save('sample', 'Sfdt'); - } -} - - diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/js/index.html deleted file mode 100644 index 218a030a7..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/ts/index.html deleted file mode 100644 index ff0239777..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.css b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.js b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.js deleted file mode 100644 index 09f7c4ded..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.js +++ /dev/null @@ -1,24 +0,0 @@ -ej.documenteditor.DocumentEditor.Inject(ej.documenteditor.Selection,ej.documenteditor.Editor,ej.documenteditor.SfdtExport,ej.documenteditor.WordExport) - -var documentEditor = new ej.documenteditor.DocumentEditor({ enableSfdtExport : true, enableWordExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documentEditor.appendTo('#DocumentEditor'); - -documentEditor.keyDown = function (args) { - var keyCode = args.event.which || args.event.keyCode; - - var isCtrlKey = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - - var isAltKey = args.event.altKey ? args.event.altKey : ((keyCode === 18) ? true : false); - - // 83 is the character code for 'S' - if (isCtrlKey && !isAltKey && keyCode === 83) { - //To prevent default save operation, set the isHandled property to true - args.isHandled = true; - documentEditor.save('sample', 'Docx'); - args.event.preventDefault(); - } else if (isCtrlKey && isAltKey && keyCode === 83) { - documentEditor.save('sample', 'Sfdt'); - } -} - diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.ts deleted file mode 100644 index 514338536..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/index.ts +++ /dev/null @@ -1,32 +0,0 @@ - - -import { DocumentEditor, Selection, Editor, DocumentEditorKeyDownEventArgs, SfdtExport, WordExport } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditor.Inject(Selection, Editor, SfdtExport, WordExport); - -//Initialize Document Editor. -let documentEditor: DocumentEditor = new DocumentEditor({ height: '370px', enableEditor: true, enableSfdtExport: true, enableWordExport: true, isReadOnly: false }); - -documentEditor.appendTo('#DocumentEditor'); - -//Override keyboard shortcut inside `keyDown` event. -documentEditor.keyDown = function (args: DocumentEditorKeyDownEventArgs) { - let keyCode: number = args.event.which || args.event.keyCode; - - let isCtrlKey: boolean = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - - let isAltKey: boolean = args.event.altKey ? args.event.altKey : ((keyCode === 18) ? true : false); - - //83 is the character code for 'S' - if (isCtrlKey && !isAltKey && keyCode === 83) { - //To prevent default save operation, set the isHandled property to true - args.isHandled = true; - documentEditor.save('sample', 'Docx'); - args.event.preventDefault(); - } else if (isCtrlKey && isAltKey && keyCode === 83) { - documentEditor.save('sample', 'Sfdt'); - } -} - - diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/js/index.html deleted file mode 100644 index 218a030a7..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/ts/index.html deleted file mode 100644 index ff0239777..000000000 --- a/ej2-javascript/code-snippet/document-editor/override-keyboard-cs2/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.css b/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.js b/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.js deleted file mode 100644 index 81ba909ed..000000000 --- a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.js +++ /dev/null @@ -1,154 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, enableSelection: true, enableEditorHistory: true, enableEditor: true, enableContextMenu: true, enableSfdtExport: true,height: '370px' -}); -function toolbarButtonClick(arg) { - switch (arg.item.id) { - case 'AlignLeft': - //Toggle the Left alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Left'); - break; - case 'AlignRight': - //Toggle the Right alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Right'); - break; - case 'AlignCenter': - //Toggle the Center alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Center'); - break; - case 'Justify': - //Toggle the Justify alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Justify'); - break; - case 'IncreaseIndent': - //Increase the left indent of selected or current paragraph - documenteditor.editor.increaseIndent(); - break; - case 'DecreaseIndent': - //Decrease the left indent of selected or current paragraph - documenteditor.editor.decreaseIndent(); - break; - case 'ClearFormat': - documenteditor.editor.clearFormatting(); - break; - } -} -//Change the line spacing of selected or current paragraph -function lineSpacingAction(args) { - var text = args.item.text; - switch (text) { - case 'Single': - documenteditor.selection.paragraphFormat.lineSpacing = 1; - break; - case '1.15': - documenteditor.selection.paragraphFormat.lineSpacing = 1.15; - break; - case '1.5': - documenteditor.selection.paragraphFormat.lineSpacing = 1.5; - break; - case 'Double': - documenteditor.selection.paragraphFormat.lineSpacing = 2; - break; - } - setTimeout(function () { - documenteditor.focusIn(); - }, 30); -} -documenteditor.selectionChange = () => { - setTimeout(() => { - onSelectionChange(); - }, 20); -}; -// Selection change to retrieve formatting -function onSelectionChange() { - if (documenteditor.selection) { - var paragraphFormat = documenteditor.selection.paragraphFormat; - var toggleBtnId = ['AlignLeft', 'AlignCenter', 'AlignRight', 'Justify']; - for (var i = 0; i < toggleBtnId.length; i++) { - var toggleBtn = document.getElementById( - toggleBtnId[i] - ); - toggleBtn.classList.remove('e-btn-toggle'); - } - if (paragraphFormat.textAlignment === 'Left') { - document.getElementById('AlignLeft').classList.add('e-btn-toggle'); - } else if (paragraphFormat.textAlignment === 'Right') { - document.getElementById('AlignRight').classList.add('e-btn-toggle'); - } else if (paragraphFormat.textAlignment === 'Center') { - document - .getElementById('AlignCenter') - .classList.add('e-btn-toggle'); - } else { - document.getElementById('Justify').classList.add('e-btn-toggle'); - } - // #endregion - } -} -//Toolbar configuration to add paragraph formatting options -var toolBar = new ej.navigations.Toolbar({ - clicked: toolbarButtonClick, - items: [ - { - prefixIcon: 'e-de-ctnr-alignleft e-icons', - tooltipText: 'Align Left', - id: 'AlignLeft', - }, - { - prefixIcon: 'e-de-ctnr-aligncenter e-icons', - tooltipText: 'Align Center', - id: 'AlignCenter', - }, - { - prefixIcon: 'e-de-ctnr-alignright e-icons', - tooltipText: 'Align Right', - id: 'AlignRight', - }, - { - prefixIcon: 'e-de-ctnr-justify e-icons', - tooltipText: 'Justify', - id: 'Justify', - }, - { - prefixIcon: 'e-de-ctnr-increaseindent e-icons', - tooltipText: 'Increase Indent', - id: 'IncreaseIndent', - }, - { - prefixIcon: 'e-de-ctnr-decreaseindent e-icons', - tooltipText: 'Decrease Indent', - id: 'DecreaseIndent', - }, - { type: 'Separator' }, - { - id: 'lineSpacing', - }, { - prefixIcon: 'e-de-ctnr-clearall e-icons', - tooltipText: 'ClearFormatting', - id: 'ClearFormat', - } - ], -}); -toolBar.appendTo('#toolbar'); -var items = [ - { - text: 'Single', - }, - { - text: '1.15', - }, - { - text: '1.5', - }, - { - text: 'Double', - }, -]; -var dropdown = new ej.splitbuttons.DropDownButton({ - items: items, - iconCss: 'e-de-ctnr-linespacing e-icons', - select: lineSpacingAction, -}); -dropdown.appendTo('#lineSpacing'); - -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.ts deleted file mode 100644 index ab006f44c..000000000 --- a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/index.ts +++ /dev/null @@ -1,181 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, EditorHistory, SfdtExport, ContextMenu } from '@syncfusion/ej2-documenteditor'; -import { Toolbar } from '@syncfusion/ej2-navigations'; -import { ItemModel, DropDownButton } from '@syncfusion/ej2-splitbuttons'; - -//Inject the require module -DocumentEditor.Inject(Editor, Selection, EditorHistory, SfdtExport, ContextMenu); - -let documenteditor: DocumentEditor = new DocumentEditor({ - height: '370px', isReadOnly: false, enableSelection: true, enableEditorHistory: true, enableEditor: true, enableContextMenu: true, enableSfdtExport: true -}); - -function toolbarButtonClick(arg) { - switch (arg.item.id) { - case 'AlignLeft': - //Toggle the Left alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Left'); - break; - case 'AlignRight': - //Toggle the Right alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Right'); - break; - case 'AlignCenter': - //Toggle the Center alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Center'); - break; - case 'Justify': - //Toggle the Justify alignment for selected or current paragraph - documenteditor.editor.toggleTextAlignment('Justify'); - break; - case 'IncreaseIndent': - //Increase the left indent of selected or current paragraph - documenteditor.editor.increaseIndent(); - break; - case 'DecreaseIndent': - //Decrease the left indent of selected or current paragraph - documenteditor.editor.decreaseIndent(); - break; - case 'ClearFormat': - //Clear all formattiing of the selected paragraph or content. - documenteditor.editor.clearFormatting(); - break; - case 'ShowParagraphMark': - //Show or hide the hidden characters like spaces, tab, paragraph marks, and breaks. - documenteditor.documentEditorSettings.showHiddenMarks = !documenteditor.documentEditorSettings.showHiddenMarks; - break; - } -} -//Change the line spacing of selected or current paragraph -function lineSpacingAction(args: any) { - let text: string = args.item.text; - switch (text) { - case 'Single': - documenteditor.selection.paragraphFormat.lineSpacing = 1; - break; - case '1.15': - documenteditor.selection.paragraphFormat.lineSpacing = 1.15; - break; - case '1.5': - documenteditor.selection.paragraphFormat.lineSpacing = 1.5; - break; - case 'Double': - documenteditor.selection.paragraphFormat.lineSpacing = 2; - break; - } - setTimeout((): void => { - documenteditor.focusIn(); - }, 30); -} -documenteditor.selectionChange = () => { - setTimeout(() => { - onSelectionChange(); - }, 20); -}; -// Selection change to retrieve formatting -function onSelectionChange() { - if (documenteditor.selection) { - var paragraphFormat = documenteditor.selection.paragraphFormat; - var toggleBtnId = ['AlignLeft', 'AlignCenter', 'AlignRight', 'Justify', 'ShowParagraphMark']; - for (var i = 0; i < toggleBtnId.length; i++) { - let toggleBtn: HTMLElement = document.getElementById(toggleBtnId[i]); - //Remove toggle state. - toggleBtn.classList.remove('e-btn-toggle'); - } - //Add toggle state based on selection paragraph format. - if (paragraphFormat.textAlignment === 'Left') { - document.getElementById('AlignLeft').classList.add('e-btn-toggle'); - } else if (paragraphFormat.textAlignment === 'Right') { - document.getElementById('AlignRight').classList.add('e-btn-toggle'); - } else if (paragraphFormat.textAlignment === 'Center') { - document.getElementById('AlignCenter').classList.add('e-btn-toggle'); - } else { - document.getElementById('Justify').classList.add('e-btn-toggle'); - } - if (documenteditor.documentEditorSettings.showHiddenMarks) { - document.getElementById('ShowParagraphMark').classList.add('e-btn-toggle'); - } - // #endregion - } -} -//Toolbar configuration to add paragraph formatting options -let toolBar: Toolbar = new Toolbar({ - clicked: toolbarButtonClick, - items: [ - { - prefixIcon: 'e-de-ctnr-alignleft e-icons', - tooltipText: 'Align Left', - id: 'AlignLeft', - }, - { - prefixIcon: 'e-de-ctnr-aligncenter e-icons', - tooltipText: 'Align Center', - id: 'AlignCenter', - }, - { - prefixIcon: 'e-de-ctnr-alignright e-icons', - tooltipText: 'Align Right', - id: 'AlignRight', - }, - { - prefixIcon: 'e-de-ctnr-justify e-icons', - tooltipText: 'Justify', - id: 'Justify', - }, - { - prefixIcon: 'e-de-ctnr-increaseindent e-icons', - tooltipText: 'Increase Indent', - id: 'IncreaseIndent', - }, - { - prefixIcon: 'e-de-ctnr-decreaseindent e-icons', - tooltipText: 'Decrease Indent', - id: 'DecreaseIndent', - }, - { - type: 'Separator' - }, - { - id: 'lineSpacing' - }, - { - prefixIcon: 'e-de-ctnr-clearall e-icons', - tooltipText: 'ClearFormatting', - id: 'ClearFormat', - }, - { - type: 'Separator' - }, - { - prefixIcon: 'e-de-e-paragraph-mark e-icons', - tooltipText: 'Show the hidden characters like spaces, tab, paragraph marks, and breaks.(Ctrl + *)', - id: 'ShowParagraphMark', - } - ], -}); -toolBar.appendTo('#toolbar'); -let items: ItemModel[] = [ - { - text: 'Single', - }, - { - text: '1.15', - }, - { - text: '1.5', - }, - { - text: 'Double', - }, -]; -let dropdown = new DropDownButton({ - items: items, - iconCss: 'e-de-ctnr-linespacing e-icons', - select: lineSpacingAction, -}); -dropdown.appendTo('#lineSpacing'); - -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/js/index.html deleted file mode 100644 index 658a88815..000000000 --- a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/js/index.html +++ /dev/null @@ -1,41 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/ts/index.html deleted file mode 100644 index a95028d31..000000000 --- a/ej2-javascript/code-snippet/document-editor/paragraph-format-cs1/ts/index.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.css b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.js b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.js deleted file mode 100644 index 9bbea1bda..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.js +++ /dev/null @@ -1,16 +0,0 @@ -ej.documenteditor.DocumentEditor.Inject(ej.documenteditor.Selection,ej.documenteditor.Editor,ej.documenteditor.SfdtExport) - -var documentEditor = new ej.documenteditor.DocumentEditor({ enableSfdtExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documentEditor.appendTo('#DocumentEditor'); - -documentEditor.keyDown = function (args) { - var keyCode = args.event.which || args.event.keyCode; - var isCtrlKey = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - //67 is the character code for 'C' - if (isCtrlKey && keyCode === 67) { - //To prevent copy operation set isHandled to true - args.isHandled = true; - } -} - diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.ts deleted file mode 100644 index f5a3f7c89..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/index.ts +++ /dev/null @@ -1,24 +0,0 @@ - - -import { DocumentEditor, Selection, Editor, DocumentEditorKeyDownEventArgs } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditor.Inject(Selection, Editor) - -//Initialize Document Editor. -let documentEditor: DocumentEditor = new DocumentEditor({ height: '370px', enableEditor: true, isReadOnly: false }); - -documentEditor.appendTo('#DocumentEditor'); - -//Prevent keyboard shortcut inside `keyDown` event. -documentEditor.keyDown = function (args: DocumentEditorKeyDownEventArgs) { - let keyCode: number = args.event.which || args.event.keyCode; - let isCtrlKey: boolean = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - //67 is the character code for 'C' - if (isCtrlKey && keyCode === 67) { - //To prevent copy operation set isHandled to true - args.isHandled = true; - } -} - - diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/js/index.html deleted file mode 100644 index 218a030a7..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/ts/index.html deleted file mode 100644 index ff0239777..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.css b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.js b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.js deleted file mode 100644 index 9bbea1bda..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.js +++ /dev/null @@ -1,16 +0,0 @@ -ej.documenteditor.DocumentEditor.Inject(ej.documenteditor.Selection,ej.documenteditor.Editor,ej.documenteditor.SfdtExport) - -var documentEditor = new ej.documenteditor.DocumentEditor({ enableSfdtExport: true, enableSelection: true, enableEditor: true, isReadOnly: false }); - -documentEditor.appendTo('#DocumentEditor'); - -documentEditor.keyDown = function (args) { - var keyCode = args.event.which || args.event.keyCode; - var isCtrlKey = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - //67 is the character code for 'C' - if (isCtrlKey && keyCode === 67) { - //To prevent copy operation set isHandled to true - args.isHandled = true; - } -} - diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.ts deleted file mode 100644 index 7aadf844e..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/index.ts +++ /dev/null @@ -1,24 +0,0 @@ - - -import { DocumentEditor, Selection, Editor, DocumentEditorKeyDownEventArgs } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditor.Inject(Selection, Editor) - -//Initialize Document Editor. -let documentEditor: DocumentEditor = new DocumentEditor({ enableEditor: true, isReadOnly: false, height: '370px' }); - -documentEditor.appendTo('#DocumentEditor'); - -//Prevent keyboard shortcut inside `keyDown` event. -documentEditor.keyDown = function (args: DocumentEditorKeyDownEventArgs) { - let keyCode: number = args.event.which || args.event.keyCode; - let isCtrlKey: boolean = (args.event.ctrlKey || args.event.metaKey) ? true : ((keyCode === 17) ? true : false); - //67 is the character code for 'C' - if (isCtrlKey && keyCode === 67) { - //To prevent copy operation set isHandled to true - args.isHandled = true; - } -} - - diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/js/index.html deleted file mode 100644 index 218a030a7..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/ts/index.html deleted file mode 100644 index ff0239777..000000000 --- a/ej2-javascript/code-snippet/document-editor/prevent-keyboard-cs2/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/print-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/print-cs1/index.css b/ej2-javascript/code-snippet/document-editor/print-cs1/index.css deleted file mode 100644 index 3bc51e47c..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs1/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor { - width: 100%; - height: 100%; -} diff --git a/ej2-javascript/code-snippet/document-editor/print-cs1/index.js b/ej2-javascript/code-snippet/document-editor/print-cs1/index.js deleted file mode 100644 index ac479562a..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs1/index.js +++ /dev/null @@ -1,38 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - enablePrint: true -}); - -documenteditor.appendTo('#DocumentEditor'); - -var sfdt ={ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Hello World" - } - ] - } - ], - "headersFooters": { - } - } - ] -}; - -documenteditor.open(JSON.stringify(sfdt)); - -var printButton = new ej.buttons.Button(); -printButton.appendTo('#print'); - -document.getElementById('print').addEventListener('click',function (){ - documenteditor.print(); -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/print-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/print-cs1/index.ts deleted file mode 100644 index 4c93ece85..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs1/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - - -import { DocumentEditor, Print } from '@syncfusion/ej2-documenteditor'; -import { Button } from '@syncfusion/ej2-buttons'; - -DocumentEditor.Inject(Print); - -let documenteditor: DocumentEditor = new DocumentEditor({ - enablePrint: true, height: '370px' -}); -documenteditor.appendTo('#DocumentEditor'); - -let sfdt: string = `{ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Hello World" - } - ] - } - ], - "headersFooters": { - } - } - ] -}`; - -documenteditor.open(sfdt); -let printButton: Button = new Button(); -printButton.appendTo('#print'); -document.getElementById('print').addEventListener('click', () => { - documenteditor.print(); -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/print-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/print-cs1/js/index.html deleted file mode 100644 index 7e191814d..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs1/js/index.html +++ /dev/null @@ -1,31 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    - -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/print-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/print-cs1/ts/index.html deleted file mode 100644 index 2ea94b2b4..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs1/ts/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    - -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/print-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/print-cs2/index.css b/ej2-javascript/code-snippet/document-editor/print-cs2/index.css deleted file mode 100644 index 3bc51e47c..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs2/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor { - width: 100%; - height: 100%; -} diff --git a/ej2-javascript/code-snippet/document-editor/print-cs2/index.js b/ej2-javascript/code-snippet/document-editor/print-cs2/index.js deleted file mode 100644 index 425ede030..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs2/index.js +++ /dev/null @@ -1,18 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, - enablePrint: true, - enableEditor: true, - enableSelection: true, - enableEditorHistory: true -}); - -documenteditor.appendTo('#DocumentEditor'); - -var printButton = new ej.buttons.Button(); -printButton.appendTo('#print'); - -document.getElementById('print').addEventListener('click',function (){ - documenteditor.print(); -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/print-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/print-cs2/index.ts deleted file mode 100644 index f71bd7a72..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs2/index.ts +++ /dev/null @@ -1,24 +0,0 @@ - - -import { DocumentEditor, Print, Editor, Selection, EditorHistory } from '@syncfusion/ej2-documenteditor'; -import { Button } from '@syncfusion/ej2-buttons'; - -DocumentEditor.Inject(Print, Editor, Selection, EditorHistory); - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enablePrint: true, - enableEditor: true, - enableSelection: true, - enableEditorHistory: true, - height: '370px' -}); -documenteditor.appendTo('#DocumentEditor'); -let printButton: Button = new Button(); -printButton.appendTo('#print'); - -document.getElementById('print').addEventListener('click', () => { - documenteditor.print(); -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/print-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/print-cs2/js/index.html deleted file mode 100644 index 7e191814d..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs2/js/index.html +++ /dev/null @@ -1,31 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    - -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/print-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/print-cs2/ts/index.html deleted file mode 100644 index 2ea94b2b4..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs2/ts/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    - -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs3/app.ts b/ej2-javascript/code-snippet/document-editor/print-cs3/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/print-cs3/index.css b/ej2-javascript/code-snippet/document-editor/print-cs3/index.css deleted file mode 100644 index 3bc51e47c..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs3/index.css +++ /dev/null @@ -1,18 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor { - width: 100%; - height: 100%; -} diff --git a/ej2-javascript/code-snippet/document-editor/print-cs3/index.js b/ej2-javascript/code-snippet/document-editor/print-cs3/index.js deleted file mode 100644 index df94730d4..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs3/index.js +++ /dev/null @@ -1,36 +0,0 @@ -var documenteditor1 = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, - enablePrint: true, - enableEditor: true, - enableSelection: true, - enableEditorHistory: true, - enableSfdtExport: true -}); - -documenteditor1.appendTo('#DocumentEditor'); - -var documenteditor2 = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, - enablePrint: true, - enableEditor: true, - enableSelection: true, - enableEditorHistory: true, - enableSfdtExport: true -}); - -documenteditor2.appendTo('#DocumentEditor2'); - - - -var printButton = new ej.buttons.Button(); -printButton.appendTo('#print'); - -document.getElementById('print').addEventListener('click',function (){ - var sfdtData = documenteditor1.serialize(); - documenteditor2.open(sfdtData); - //Set A5 paper size - documenteditor2.selection.sectionFormat.pageWidth = 419.55; - documenteditor2.selection.sectionFormat.pageHeight = 595.30; - documenteditor2.print(); -}); - diff --git a/ej2-javascript/code-snippet/document-editor/print-cs3/index.ts b/ej2-javascript/code-snippet/document-editor/print-cs3/index.ts deleted file mode 100644 index 6a50502ef..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs3/index.ts +++ /dev/null @@ -1,36 +0,0 @@ - - -import { DocumentEditor, Print, Editor, Selection, EditorHistory, SfdtExport } from '@syncfusion/ej2-documenteditor'; -import { Button } from '@syncfusion/ej2-buttons'; - -//Inject require modules. -DocumentEditor.Inject(Print, Editor, Selection, EditorHistory, SfdtExport); - -let documenteditor1: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enablePrint: true, - enableEditor: true, - enableSelection: true, - enableEditorHistory: true, - enableSfdtExport: true, - height: '370px' -}); -documenteditor1.appendTo('#DocumentEditor'); -let printButton: Button = new Button(); -printButton.appendTo('#print'); - -let documenteditor2: DocumentEditor = new DocumentEditor({ - enablePrint: true, enableSelection: true, isReadOnly: false, enableEditor: true, height: '370px' -}); -documenteditor2.appendTo('#DocumentEditor2'); -//Print the document -document.getElementById('print').addEventListener('click', () => { - let sfdtData = documenteditor1.serialize(); - documenteditor2.open(sfdtData); - //Set A5 paper size - documenteditor2.selection.sectionFormat.pageWidth = 419.55; - documenteditor2.selection.sectionFormat.pageHeight = 595.30; - documenteditor2.print(); -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/print-cs3/js/index.html b/ej2-javascript/code-snippet/document-editor/print-cs3/js/index.html deleted file mode 100644 index 7e191814d..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs3/js/index.html +++ /dev/null @@ -1,31 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    - -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs3/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/print-cs3/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs3/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/print-cs3/ts/index.html b/ej2-javascript/code-snippet/document-editor/print-cs3/ts/index.html deleted file mode 100644 index 2ea94b2b4..000000000 --- a/ej2-javascript/code-snippet/document-editor/print-cs3/ts/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    - -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.css b/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.js b/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.js deleted file mode 100644 index 186d79f20..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.js +++ /dev/null @@ -1,12 +0,0 @@ -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true }); - ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - //DocumentEditorContainer control rendering starts - documenteditorContainer.documentChange = () => { - documenteditorContainer.restrictEditing=true; -}; -documenteditorContainer.appendTo('#DocumentEditor'); -let data= {"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}; -// Open the default document -documenteditorContainer.documentEditor.open(JSON.stringify(data)); - diff --git a/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.ts deleted file mode 100644 index d1d9581dc..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-container-cs1/index.ts +++ /dev/null @@ -1,23 +0,0 @@ - - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -//Initiliaze Document Editor Container component. -let documenteditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '500px' }); - -documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -//Enable read only mode inside `documentChange` event. -documenteditorContainer.documentChange = (): void => { - documenteditorContainer.restrictEditing = true; -}; -//Render Document Editor container component. -documenteditorContainer.appendTo('#DocumentEditor'); - -let data: string = '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; -//Open the default document -documenteditorContainer.documentEditor.open(data); - - diff --git a/ej2-javascript/code-snippet/document-editor/read-container-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/read-container-cs1/js/index.html deleted file mode 100644 index 0b70f9b64..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-container-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-container-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/read-container-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-container-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-container-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/read-container-cs1/ts/index.html deleted file mode 100644 index a541d81aa..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-container-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-cs1/index.css b/ej2-javascript/code-snippet/document-editor/read-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-cs1/index.js b/ej2-javascript/code-snippet/document-editor/read-cs1/index.js deleted file mode 100644 index 28b677efe..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-cs1/index.js +++ /dev/null @@ -1,14 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false -}); - -documenteditor.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -documenteditor.documentChange = () => { - documenteditor.isReadOnly=true; -}; -documenteditor.enableAllModules(); -documenteditor.appendTo('#DocumentEditor'); -let data = '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; -// Open the default document -documenteditor.open(data); - diff --git a/ej2-javascript/code-snippet/document-editor/read-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/read-cs1/index.ts deleted file mode 100644 index 1bbce7149..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-cs1/index.ts +++ /dev/null @@ -1,26 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -//Initialize Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -//Enable all the built in modules. -documenteditor.enableAllModules(); - -//Open the default document inside `created` event. -documenteditor.created = function () { - //Load your default document here - let data: string = '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; - //Open the default document - documenteditor.open(data); -}; - -//Enable read only mode inside `documentChange` event. -documenteditor.documentChange = (): void => { - documenteditor.isReadOnly = true; -}; - -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/read-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/read-cs1/js/index.html deleted file mode 100644 index 0b70f9b64..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/read-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/read-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/read-cs1/ts/index.html deleted file mode 100644 index a541d81aa..000000000 --- a/ej2-javascript/code-snippet/document-editor/read-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/replace-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/replace-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/replace-cs1/index.css b/ej2-javascript/code-snippet/document-editor/replace-cs1/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/replace-cs1/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/replace-cs1/index.js b/ej2-javascript/code-snippet/document-editor/replace-cs1/index.js deleted file mode 100644 index 36a3e2270..000000000 --- a/ej2-javascript/code-snippet/document-editor/replace-cs1/index.js +++ /dev/null @@ -1,35 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ enableSelection: true, enableSearch: true, enableEditor: true, isReadOnly: false }); -documenteditor.appendTo('#DocumentEditor'); -var sfdt = `{ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Adventure Works Cycles, the fictitious company on which the AdventureWorks sample databases are based, is a large, multinational manufacturing company. The company manufactures and sells metal and composite bicycles to North American, European and Asian commercial markets. While its base operation is located in Bothell, Washington with 290 employees, several regional sales teams are located throughout their market base." - } - ] - } - ] - } - ] -}`; -documenteditor.open(sfdt); -document.getElementById('replace_all').addEventListener('click',function () { - var textToFind = (document.getElementById('find_text')).value; - var textToReplace = (document.getElementById('replace_text')).value; - if (textToFind !== '') { - // Find all the occurences of given text - documenteditor.searchModule.findAll(textToFind); - if (documenteditor.searchModule.searchResults.length > 0) { - // Replace all the occurences of given text - documenteditor.searchModule.searchResults.replaceAll(textToReplace); - } - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/replace-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/replace-cs1/index.ts deleted file mode 100644 index f78d0d8da..000000000 --- a/ej2-javascript/code-snippet/document-editor/replace-cs1/index.ts +++ /dev/null @@ -1,45 +0,0 @@ - - -import { DocumentEditor, Selection, Editor, Search } from '@syncfusion/ej2-documenteditor'; -//Inject require modules. -DocumentEditor.Inject(Selection, Search, Editor); - -//Initialize the Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', enableSelection: true, enableSearch: true, enableEditor: true, isReadOnly: false }); -documenteditor.appendTo('#DocumentEditor'); -let sfdt: string = `{ - "sections": [ - { - "blocks": [ - { - "inlines": [ - { - "characterFormat": { - "bold": true, - "italic": true - }, - "text": "Adventure Works Cycles, the fictitious company on which the AdventureWorks sample databases are based, is a large, multinational manufacturing company. The company manufactures and sells metal and composite bicycles to North American, European and Asian commercial markets. While its base operation is located in Bothell, Washington with 290 employees, several regional sales teams are located throughout their market base." - } - ] - } - ] - } - ] -}`; - -//Open the SFDT document in Document Editor. -documenteditor.open(sfdt); -document.getElementById('replace_all').addEventListener('click', () => { - let textToFind: string = (document.getElementById('find_text') as HTMLInputElement).value; - let textToReplace: string = (document.getElementById('replace_text') as HTMLInputElement).value; - if (textToFind !== '') { - // Find all the occurences of given text - documenteditor.searchModule.findAll(textToFind); - if (documenteditor.searchModule.searchResults.length > 0) { - // Replace all the occurences of given text - documenteditor.searchModule.searchResults.replaceAll(textToReplace); - } - } -}); - - diff --git a/ej2-javascript/code-snippet/document-editor/replace-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/replace-cs1/js/index.html deleted file mode 100644 index 5e24936b4..000000000 --- a/ej2-javascript/code-snippet/document-editor/replace-cs1/js/index.html +++ /dev/null @@ -1,57 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - - - - - - - - - - - - -
    - - - -
    - - - -
    - -
    -
    - -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/replace-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/replace-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/replace-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/replace-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/replace-cs1/ts/index.html deleted file mode 100644 index f73f4d617..000000000 --- a/ej2-javascript/code-snippet/document-editor/replace-cs1/ts/index.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - - - - - - - - - - - - -
    - - - -
    - - - -
    - -
    -
    - -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/rtl-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/rtl-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.css b/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.js b/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.js deleted file mode 100644 index 5f71c59ce..000000000 --- a/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.js +++ /dev/null @@ -1,333 +0,0 @@ -ej.base.L10n.load({ - 'ar-AE': { - 'documenteditor': { - 'Table': 'لجدول', - 'Row': 'لصف', - 'Cell': 'الخليه', - 'Ok': 'موافق', - 'Cancel': 'إلغاء الأمر', - 'Size': 'حجم', - 'Preferred Width': 'العرض المفضل', - 'Points': 'نقاط', - 'Percent': 'المائه', - 'Measure in': 'القياس في', - 'Alignment': 'محاذاه', - 'Left': 'ليسار', - 'Center': 'مركز', - 'Right': 'الحق', - 'Justify': 'تبرير', - 'Indent from left': 'مسافة بادئه من اليسار', - 'Borders and Shading': 'الحدود والتظليل', - 'Options': 'خيارات', - 'Specify height': 'تحديد الارتفاع', - 'At least': 'الاقل', - 'Exactly': 'تماما', - 'Row height is': 'ارتفاع الصف هو', - 'Allow row to break across pages': 'السماح بفصل الصف عبر الصفحات', - 'Repeat as header row at the top of each page': 'تكرار كصف راس في اعلي كل صفحه', - 'Vertical alignment': 'محاذاة عمودي', - 'Top': 'أعلى', - 'Bottom': 'اسفل', - 'Default cell margins': 'هوامش الخلية الافتراضية', - 'Default cell spacing': 'تباعد الخلايا الافتراضي', - 'Allow spacing between cells': 'السماح بالتباعد بين الخلايا', - 'Cell margins': 'هوامش الخلية', - 'Same as the whole table': 'نفس الجدول بأكمله', - 'Borders': 'الحدود', - 'None': 'اي', - 'Single': 'واحد', - 'Dot': 'نقطه', - 'DashSmallGap': 'داشسمجاب', - 'DashLargeGap': 'الاتحاد الخاص', - 'DashDot': 'داشدوت', - 'DashDotDot': 'ددهدودوت', - 'Double': 'انقر نقرا مزدوجا', - 'Triple': 'الثلاثي', - 'ThinThickSmallGap': 'فجوه صغيره سميكه رقيق', - 'ThickThinSmallGap': 'الفجوة الصغيرة رقيقه سميكه', - 'ThinThickThinSmallGap': 'صغيره سميكه رقيقه الفجوة الصغيرة', - 'ThinThickMediumGap': 'فجوه متوسطه سميك', - 'ThickThinMediumGap': 'سميكه الفجوة متوسطه رقيقه', - 'ThinThickThinMediumGap': 'رقيقه سميكه متوسطه الفجوة', - 'ThinThickLargeGap': 'الفجوة الكبيرة رقيقه سميكه', - 'ThickThinLargeGap': 'فجوه كبيره رقيقه سميك', - 'ThinThickThinLargeGap': 'رقيقه سميكه الفجوة الكبيرة', - 'SingleWavy': 'واحد مائج', - 'DoubleWavy': 'مزدوج مائج', - 'DashDotStroked': 'اندفاعه نقطه القوية', - 'Emboss3D': 'D3مزخرف', - 'Engrave3D': 'D3نقش', - 'Outset': 'البدايه', - 'Inset': 'الداخلي', - 'Thick': 'سميكه', - 'Style': 'نمط', - 'Width': 'عرض', - 'Height': 'ارتفاع', - 'Letter': 'رساله', - 'Tabloid': 'التابلويد', - 'Legal': 'القانونيه', - 'Statement': 'بيان', - 'Executive': 'التنفيذي', - 'A3': 'A3', - 'A4': 'A4', - 'A5': 'A5', - 'B4': 'B4', - 'B5': 'B5', - 'Custom Size': 'حجم مخصص', - 'Different odd and even': 'مختلفه غريبه وحتى', - 'Different first page': 'الصفحة الاولي مختلفه', - 'From edge': 'من الحافة', - 'Header': 'راس', - 'Footer': 'تذييل الصفحه', - 'Margin': 'الهوامش', - 'Paper': 'الورق', - 'Layout': 'تخطيط', - 'Orientation': 'التوجه', - 'Landscape': 'المناظر الطبيعيه', - 'Portrait': 'صوره', - 'Table Of Contents': 'جدول المحتويات', - 'Show page numbers': 'إظهار أرقام الصفحات', - 'Right align page numbers': 'محاذاة أرقام الصفحات إلى اليمين', - 'Nothing': 'شيء', - 'Tab leader': 'قائد علامة التبويب', - 'Show levels': 'إظهار المستويات', - 'Use hyperlinks instead of page numbers': 'استخدام الارتباطات التشعبية بدلا من أرقام الصفحات', - 'Build table of contents from': 'بناء جدول محتويات من', - 'Styles': 'انماط', - 'Available styles': 'الأنماط المتوفرة', - 'TOC level': 'مستوي جدول المحتويات', - 'Heading': 'عنوان', - 'Heading 1': 'عنوان 1', - 'Heading 2': 'عنوان 2', - 'Heading 3': 'عنوان 3', - 'Heading 4': 'عنوان 4', - 'Heading 5': 'عنوان 5', - 'Heading 6': 'عنوان 6', - 'List Paragraph': 'فقره القائمة', - 'Normal': 'العاديه', - 'Outline levels': 'مستويات المخطط التفصيلي', - 'Table entry fields': 'حقول إدخال الجدول', - 'Modify': 'تعديل', - 'Color': 'لون', - 'Setting': 'اعداد', - 'Box': 'مربع', - 'All': 'جميع', - 'Custom': 'المخصصه', - 'Preview': 'معاينه', - 'Shading': 'التظليل', - 'Fill': 'ملء', - 'Apply To': 'تنطبق علي', - 'Table Properties': 'خصائص الجدول', - 'Cell Options': 'خيارات الخلية', - 'Table Options': 'خيارات الجدول', - 'Insert Table': 'ادراج جدول', - 'Number of columns': 'عدد الاعمده', - 'Number of rows': 'عدد الصفوف', - 'Text to display': 'النص الذي سيتم عرضه', - 'Address': 'عنوان', - 'Insert Hyperlink': 'ادراج ارتباط تشعبي', - 'Edit Hyperlink': 'تحرير ارتباط تشعبي', - 'Insert': 'ادراج', - 'General': 'العامه', - 'Indentation': 'المسافه البادئه', - 'Before text': 'قبل النص', - 'Special': 'الخاصه', - 'First line': 'السطر الأول', - 'Hanging': 'معلقه', - 'After text': 'بعد النص', - 'By': 'من', - 'Before': 'قبل', - 'Line Spacing': 'تباعد الأسطر', - 'After': 'بعد', - 'At': 'في', - 'Multiple': 'متعدده', - 'Spacing': 'تباعد', - 'Define new Multilevel list': 'تحديد قائمه متعددة الاصعده جديده', - 'List level': 'مستوي القائمة', - 'Choose level to modify': 'اختر المستوي الذي تريد تعديله', - 'Level': 'مستوي', - 'Number format': 'تنسيق الأرقام', - 'Number style for this level': 'نمط الرقم لهذا المستوي', - 'Enter formatting for number': 'إدخال تنسيق لرقم', - 'Start at': 'بداية من', - 'Restart list after': 'أعاده تشغيل قائمه بعد', - 'Position': 'موقف', - 'Text indent at': 'المسافة البادئة للنص في', - 'Aligned at': 'محاذاة في', - 'Follow number with': 'اتبع الرقم مع', - 'Tab character': 'حرف علامة التبويب', - 'Space': 'الفضاء', - 'Arabic': 'العربية', - 'UpRoman': 'حتى الروماني', - 'LowRoman': 'الرومانية منخفضه', - 'UpLetter': '', - 'LowLetter': '', - 'Number': 'عدد', - 'Leading zero': 'يؤدي صفر', - 'Bullet': 'رصاصه', - 'Ordinal': 'الترتيبيه', - 'Ordinal Text': 'النص الترتيبي', - 'For East': 'للشرق', - 'No Restart': 'لا أعاده تشغيل', - 'Font': 'الخط', - 'Font style': 'نمط الخط', - 'Underline style': 'نمط التسطير', - 'Font color': 'لون الخط', - 'Effects': 'الاثار', - 'Strikethrough': 'يتوسطه', - 'Superscript': 'مرتفع', - 'Subscript': 'منخفض', - 'Double strikethrough': 'خط مزدوج يتوسطه خط', - 'Regular': 'العاديه', - 'Bold': 'جريئه', - 'Italic': 'مائل', - 'Cut': 'قطع', - 'Copy': 'نسخ', - 'Paste': 'لصق', - 'Hyperlink': 'الارتباط التشعبي', - 'Open Hyperlink': 'فتح ارتباط تشعبي', - 'Copy Hyperlink': 'نسخ ارتباط تشعبي', - 'Remove Hyperlink': 'أزاله ارتباط تشعبي', - 'Paragraph': 'الفقره', - 'Linked(Paragraph and Character)': 'مرتبط (فقره وحرف)', - 'Character': 'حرف', - 'Merge Cells': 'دمج الخلايا', - 'Insert Above': 'ادراج أعلاه', - 'Insert Below': 'ادراج أدناه', - 'Insert Left': 'ادراج إلى اليسار', - 'Insert Right': 'ادراج اليمين', - 'Delete': 'حذف', - 'Delete Table': 'حذف جدول', - 'Delete Row': 'حذف صف', - 'Delete Column': 'حذف عمود', - 'File Name': 'اسم الملف', - 'Format Type': 'نوع التنسيق', - 'Save': 'حفظ', - 'Navigation': 'التنقل', - 'Results': 'نتائج', - 'Replace': 'استبدال', - 'Replace All': 'استبدال الكل', - 'We replaced all': 'استبدلنا جميع', - 'Find': 'العثور', - 'No matches': 'لا توجد تطابقات', - 'All Done': 'كل القيام به', - 'Result': 'نتيجه', - 'of': 'من', - 'instances': 'الحالات', - 'with': 'مع', - 'Click to follow link': 'انقر لمتابعه الارتباط', - 'Continue Numbering': 'متابعه الترقيم', - 'Bookmark name': 'اسم الإشارة المرجعية', - 'Close': 'اغلاق', - 'Restart At': 'أعاده التشغيل عند', - 'Properties': 'خصائص', - 'Name': 'اسم', - 'Style type': 'نوع النمط', - 'Style based on': 'نمط استنادا إلى', - 'Style for following paragraph': 'نمط للفقرة التالية', - 'Formatting': 'التنسيق', - 'Numbering and Bullets': 'الترقيم والتعداد النقطي', - 'Numbering': 'ترقيم', - 'Update Field': 'تحديث الحقل', - 'Edit Field': 'تحرير الحقل', - 'Bookmark': 'الإشارة المرجعية', - 'Page Setup': 'اعداد الصفحة', - 'No bookmarks found': 'لم يتم العثور علي إشارات مرجعيه', - 'Number format tooltip information': 'تنسيق رقم أحادي المستوي:' + '
    ' + '[بادئه]% [مستوي الاعداد] [لاحقه]' + '
    ' - // tslint:disable-next-line:max-line-length - + 'علي سبيل االمثال ، "الفصل% 1." سيتم عرض الترقيم مثل' + '
    ' + 'الفصل الأول- البند' + '
    ' + 'الفصل الثاني- البند' + '
    ...' - + '
    ' + 'الفصل نون-البند' + '
    ' - // tslint:disable-next-line:max-line-length - + '
    ' + 'تنسيق رقم متعدد الإعدادات:' + '
    ' + '[بادئه]% [مستوي المستوي]' + '
    ' + '[لاحقه] + [بادئه]%' + '
    ' + '[المستوي] [لاحقه]' - + '
    ' + 'علي سبيل المثال ، "% 1.% 2." سيتم عرض الترقيم مثل' + '
    ' + '1.1 البند' + '
    ' + '1.2 البند' + '
    ...' + '
    ' + '1. نون-البند', - 'Format': 'تنسيق', - 'Create New Style': 'إنشاء نمط جديد', - 'Modify Style': 'تعديل النمط', - 'New': 'الجديد', - 'Bullets': 'الرصاص', - 'Use bookmarks': 'استخدام الإشارات المرجعية', - 'Table of Contents': 'جدول المحتويات', - 'AutoFit': 'الاحتواء', - 'AutoFit to Contents': 'احتواء تلقائي للمحتويات', - 'AutoFit to Window': 'احتواء تلقائي للإطار', - 'Fixed Column Width': 'عرض العمود الثابت', - 'Reset': 'اعاده تعيين', - 'Match case': 'حاله المباراة', - 'Whole words': 'كلمات كامل', - 'Add': 'اضافه', - 'Go To': 'الانتقال إلى', - 'Search for': 'البحث عن', - 'Replace with': 'استبدال', - 'TOC 1': 'جدول المحتويات 1', - 'TOC 2': 'جدول المحتويات 2', - 'TOC 3': 'جدول المحتويات 3', - 'TOC 4': 'جدول المحتويات 4', - 'TOC 5': 'جدول المحتويات 5', - 'TOC 6': 'جدول المحتويات 6', - 'TOC 7': 'جدول المحتويات 7', - 'TOC 8': 'جدول المحتويات 8', - 'TOC 9': 'جدول المحتويات 9', - 'Right-to-left': 'من اليمين إلى اليسار', - 'Left-to-right': 'من اليسار إلى اليمين', - 'Direction': 'الاتجاه', - 'Table direction': 'اتجاه الجدول', - 'Indent from right': 'مسافة بادئه من اليمين', - 'Page': 'صفحه', - 'Fit one page': 'احتواء صفحه واحد', - 'Fit page width': 'احتواء عرض الصفحة', - // tslint:disable-next-line:max-line-length - 'The current page number in the document. Click or tap to navigate specific page.': 'رقم الصفحة الحالية في المستند. انقر أأو اضغط للتنقل في صفحه معينه' - }, - 'colorpicker': { - 'Apply': 'تطبيق', - 'Cancel': 'إلغاء الأمر', - 'ModeSwitcher': 'مفتاح كهربائي الوضع' - } - } -}); -var documenteditor = new ej.documenteditor.DocumentEditor({isReadOnly: false,enableRtl: true,locale: 'ar-AE', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/'}); -documenteditor.enableAllModules(); -var containerPanel = document.getElementById('container'); -function updateContainerSize() { - if (this.containerPanel) { - this.containerPanel.style.height = window.innerHeight + 'px'; - } -} - -updateContainerSize(); -documenteditor.appendTo('#DocumentEditor'); - -var sfdt=`{ - "sections": [ - { - "blocks": [ - { - "characterFormat": { - "fontSize": 18.0, - "fontFamily": "Calibri", - "fontFamilyBidi": "Calibri" - }, - "paragraphFormat": { - "beforeSpacing": 18.0, - "afterSpacing": 30.0, - "styleName": "Heading 1", - "bidi": true - }, - "inlines": [ - { - "text": "اعمال المغامرة دورات", - "characterFormat": { - "fontSize": 18.0, - "bidi": true, - "fontSizeBidi": 18.0 - } - } - ] - } - ] - } - ] -}`; - -documenteditor.open(sfdt); - diff --git a/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.ts deleted file mode 100644 index ff92425f0..000000000 --- a/ej2-javascript/code-snippet/document-editor/rtl-cs1/index.ts +++ /dev/null @@ -1,339 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; -import { L10n } from '@syncfusion/ej2-base'; - -//Set locale object -L10n.load({ - 'ar-AE': { - 'documenteditor': { - 'Table': 'لجدول', - 'Row': 'لصف', - 'Cell': 'الخليه', - 'Ok': 'موافق', - 'Cancel': 'إلغاء الأمر', - 'Size': 'حجم', - 'Preferred Width': 'العرض المفضل', - 'Points': 'نقاط', - 'Percent': 'المائه', - 'Measure in': 'القياس في', - 'Alignment': 'محاذاه', - 'Left': 'ليسار', - 'Center': 'مركز', - 'Right': 'الحق', - 'Justify': 'تبرير', - 'Indent from left': 'مسافة بادئه من اليسار', - 'Borders and Shading': 'الحدود والتظليل', - 'Options': 'خيارات', - 'Specify height': 'تحديد الارتفاع', - 'At least': 'الاقل', - 'Exactly': 'تماما', - 'Row height is': 'ارتفاع الصف هو', - 'Allow row to break across pages': 'السماح بفصل الصف عبر الصفحات', - 'Repeat as header row at the top of each page': 'تكرار كصف راس في اعلي كل صفحه', - 'Vertical alignment': 'محاذاة عمودي', - 'Top': 'أعلى', - 'Bottom': 'اسفل', - 'Default cell margins': 'هوامش الخلية الافتراضية', - 'Default cell spacing': 'تباعد الخلايا الافتراضي', - 'Allow spacing between cells': 'السماح بالتباعد بين الخلايا', - 'Cell margins': 'هوامش الخلية', - 'Same as the whole table': 'نفس الجدول بأكمله', - 'Borders': 'الحدود', - 'None': 'اي', - 'Single': 'واحد', - 'Dot': 'نقطه', - 'DashSmallGap': 'داشسمجاب', - 'DashLargeGap': 'الاتحاد الخاص', - 'DashDot': 'داشدوت', - 'DashDotDot': 'ددهدودوت', - 'Double': 'انقر نقرا مزدوجا', - 'Triple': 'الثلاثي', - 'ThinThickSmallGap': 'فجوه صغيره سميكه رقيق', - 'ThickThinSmallGap': 'الفجوة الصغيرة رقيقه سميكه', - 'ThinThickThinSmallGap': 'صغيره سميكه رقيقه الفجوة الصغيرة', - 'ThinThickMediumGap': 'فجوه متوسطه سميك', - 'ThickThinMediumGap': 'سميكه الفجوة متوسطه رقيقه', - 'ThinThickThinMediumGap': 'رقيقه سميكه متوسطه الفجوة', - 'ThinThickLargeGap': 'الفجوة الكبيرة رقيقه سميكه', - 'ThickThinLargeGap': 'فجوه كبيره رقيقه سميك', - 'ThinThickThinLargeGap': 'رقيقه سميكه الفجوة الكبيرة', - 'SingleWavy': 'واحد مائج', - 'DoubleWavy': 'مزدوج مائج', - 'DashDotStroked': 'اندفاعه نقطه القوية', - 'Emboss3D': 'D3مزخرف', - 'Engrave3D': 'D3نقش', - 'Outset': 'البدايه', - 'Inset': 'الداخلي', - 'Thick': 'سميكه', - 'Style': 'نمط', - 'Width': 'عرض', - 'Height': 'ارتفاع', - 'Letter': 'رساله', - 'Tabloid': 'التابلويد', - 'Legal': 'القانونيه', - 'Statement': 'بيان', - 'Executive': 'التنفيذي', - 'A3': 'A3', - 'A4': 'A4', - 'A5': 'A5', - 'B4': 'B4', - 'B5': 'B5', - 'Custom Size': 'حجم مخصص', - 'Different odd and even': 'مختلفه غريبه وحتى', - 'Different first page': 'الصفحة الاولي مختلفه', - 'From edge': 'من الحافة', - 'Header': 'راس', - 'Footer': 'تذييل الصفحه', - 'Margin': 'الهوامش', - 'Paper': 'الورق', - 'Layout': 'تخطيط', - 'Orientation': 'التوجه', - 'Landscape': 'المناظر الطبيعيه', - 'Portrait': 'صوره', - 'Table Of Contents': 'جدول المحتويات', - 'Show page numbers': 'إظهار أرقام الصفحات', - 'Right align page numbers': 'محاذاة أرقام الصفحات إلى اليمين', - 'Nothing': 'شيء', - 'Tab leader': 'قائد علامة التبويب', - 'Show levels': 'إظهار المستويات', - 'Use hyperlinks instead of page numbers': 'استخدام الارتباطات التشعبية بدلا من أرقام الصفحات', - 'Build table of contents from': 'بناء جدول محتويات من', - 'Styles': 'انماط', - 'Available styles': 'الأنماط المتوفرة', - 'TOC level': 'مستوي جدول المحتويات', - 'Heading': 'عنوان', - 'Heading 1': 'عنوان 1', - 'Heading 2': 'عنوان 2', - 'Heading 3': 'عنوان 3', - 'Heading 4': 'عنوان 4', - 'Heading 5': 'عنوان 5', - 'Heading 6': 'عنوان 6', - 'List Paragraph': 'فقره القائمة', - 'Normal': 'العاديه', - 'Outline levels': 'مستويات المخطط التفصيلي', - 'Table entry fields': 'حقول إدخال الجدول', - 'Modify': 'تعديل', - 'Color': 'لون', - 'Setting': 'اعداد', - 'Box': 'مربع', - 'All': 'جميع', - 'Custom': 'المخصصه', - 'Preview': 'معاينه', - 'Shading': 'التظليل', - 'Fill': 'ملء', - 'Apply To': 'تنطبق علي', - 'Table Properties': 'خصائص الجدول', - 'Cell Options': 'خيارات الخلية', - 'Table Options': 'خيارات الجدول', - 'Insert Table': 'ادراج جدول', - 'Number of columns': 'عدد الاعمده', - 'Number of rows': 'عدد الصفوف', - 'Text to display': 'النص الذي سيتم عرضه', - 'Address': 'عنوان', - 'Insert Hyperlink': 'ادراج ارتباط تشعبي', - 'Edit Hyperlink': 'تحرير ارتباط تشعبي', - 'Insert': 'ادراج', - 'General': 'العامه', - 'Indentation': 'المسافه البادئه', - 'Before text': 'قبل النص', - 'Special': 'الخاصه', - 'First line': 'السطر الأول', - 'Hanging': 'معلقه', - 'After text': 'بعد النص', - 'By': 'من', - 'Before': 'قبل', - 'Line Spacing': 'تباعد الأسطر', - 'After': 'بعد', - 'At': 'في', - 'Multiple': 'متعدده', - 'Spacing': 'تباعد', - 'Define new Multilevel list': 'تحديد قائمه متعددة الاصعده جديده', - 'List level': 'مستوي القائمة', - 'Choose level to modify': 'اختر المستوي الذي تريد تعديله', - 'Level': 'مستوي', - 'Number format': 'تنسيق الأرقام', - 'Number style for this level': 'نمط الرقم لهذا المستوي', - 'Enter formatting for number': 'إدخال تنسيق لرقم', - 'Start at': 'بداية من', - 'Restart list after': 'أعاده تشغيل قائمه بعد', - 'Position': 'موقف', - 'Text indent at': 'المسافة البادئة للنص في', - 'Aligned at': 'محاذاة في', - 'Follow number with': 'اتبع الرقم مع', - 'Tab character': 'حرف علامة التبويب', - 'Space': 'الفضاء', - 'Arabic': 'العربية', - 'UpRoman': 'حتى الروماني', - 'LowRoman': 'الرومانية منخفضه', - 'UpLetter': '', - 'LowLetter': '', - 'Number': 'عدد', - 'Leading zero': 'يؤدي صفر', - 'Bullet': 'رصاصه', - 'Ordinal': 'الترتيبيه', - 'Ordinal Text': 'النص الترتيبي', - 'For East': 'للشرق', - 'No Restart': 'لا أعاده تشغيل', - 'Font': 'الخط', - 'Font style': 'نمط الخط', - 'Underline style': 'نمط التسطير', - 'Font color': 'لون الخط', - 'Effects': 'الاثار', - 'Strikethrough': 'يتوسطه', - 'Superscript': 'مرتفع', - 'Subscript': 'منخفض', - 'Double strikethrough': 'خط مزدوج يتوسطه خط', - 'Regular': 'العاديه', - 'Bold': 'جريئه', - 'Italic': 'مائل', - 'Cut': 'قطع', - 'Copy': 'نسخ', - 'Paste': 'لصق', - 'Hyperlink': 'الارتباط التشعبي', - 'Open Hyperlink': 'فتح ارتباط تشعبي', - 'Copy Hyperlink': 'نسخ ارتباط تشعبي', - 'Remove Hyperlink': 'أزاله ارتباط تشعبي', - 'Paragraph': 'الفقره', - 'Linked(Paragraph and Character)': 'مرتبط (فقره وحرف)', - 'Character': 'حرف', - 'Merge Cells': 'دمج الخلايا', - 'Insert Above': 'ادراج أعلاه', - 'Insert Below': 'ادراج أدناه', - 'Insert Left': 'ادراج إلى اليسار', - 'Insert Right': 'ادراج اليمين', - 'Delete': 'حذف', - 'Delete Table': 'حذف جدول', - 'Delete Row': 'حذف صف', - 'Delete Column': 'حذف عمود', - 'File Name': 'اسم الملف', - 'Format Type': 'نوع التنسيق', - 'Save': 'حفظ', - 'Navigation': 'التنقل', - 'Results': 'نتائج', - 'Replace': 'استبدال', - 'Replace All': 'استبدال الكل', - 'We replaced all': 'استبدلنا جميع', - 'Find': 'العثور', - 'No matches': 'لا توجد تطابقات', - 'All Done': 'كل القيام به', - 'Result': 'نتيجه', - 'of': 'من', - 'instances': 'الحالات', - 'with': 'مع', - 'Click to follow link': 'انقر لمتابعه الارتباط', - 'Continue Numbering': 'متابعه الترقيم', - 'Bookmark name': 'اسم الإشارة المرجعية', - 'Close': 'اغلاق', - 'Restart At': 'أعاده التشغيل عند', - 'Properties': 'خصائص', - 'Name': 'اسم', - 'Style type': 'نوع النمط', - 'Style based on': 'نمط استنادا إلى', - 'Style for following paragraph': 'نمط للفقرة التالية', - 'Formatting': 'التنسيق', - 'Numbering and Bullets': 'الترقيم والتعداد النقطي', - 'Numbering': 'ترقيم', - 'Update Field': 'تحديث الحقل', - 'Edit Field': 'تحرير الحقل', - 'Bookmark': 'الإشارة المرجعية', - 'Page Setup': 'اعداد الصفحة', - 'No bookmarks found': 'لم يتم العثور علي إشارات مرجعيه', - 'Number format tooltip information': 'تنسيق رقم أحادي المستوي:' + '
    ' + '[بادئه]% [مستوي الاعداد] [لاحقه]' + '
    ' - // tslint:disable-next-line:max-line-length - + 'علي سبيل االمثال ، "الفصل% 1." سيتم عرض الترقيم مثل' + '
    ' + 'الفصل الأول- البند' + '
    ' + 'الفصل الثاني- البند' + '
    ...' - + '
    ' + 'الفصل نون-البند' + '
    ' - // tslint:disable-next-line:max-line-length - + '
    ' + 'تنسيق رقم متعدد الإعدادات:' + '
    ' + '[بادئه]% [مستوي المستوي]' + '
    ' + '[لاحقه] + [بادئه]%' + '
    ' + '[المستوي] [لاحقه]' - + '
    ' + 'علي سبيل المثال ، "% 1.% 2." سيتم عرض الترقيم مثل' + '
    ' + '1.1 البند' + '
    ' + '1.2 البند' + '
    ...' + '
    ' + '1. نون-البند', - 'Format': 'تنسيق', - 'Create New Style': 'إنشاء نمط جديد', - 'Modify Style': 'تعديل النمط', - 'New': 'الجديد', - 'Bullets': 'الرصاص', - 'Use bookmarks': 'استخدام الإشارات المرجعية', - 'Table of Contents': 'جدول المحتويات', - 'AutoFit': 'الاحتواء', - 'AutoFit to Contents': 'احتواء تلقائي للمحتويات', - 'AutoFit to Window': 'احتواء تلقائي للإطار', - 'Fixed Column Width': 'عرض العمود الثابت', - 'Reset': 'اعاده تعيين', - 'Match case': 'حاله المباراة', - 'Whole words': 'كلمات كامل', - 'Add': 'اضافه', - 'Go To': 'الانتقال إلى', - 'Search for': 'البحث عن', - 'Replace with': 'استبدال', - 'TOC 1': 'جدول المحتويات 1', - 'TOC 2': 'جدول المحتويات 2', - 'TOC 3': 'جدول المحتويات 3', - 'TOC 4': 'جدول المحتويات 4', - 'TOC 5': 'جدول المحتويات 5', - 'TOC 6': 'جدول المحتويات 6', - 'TOC 7': 'جدول المحتويات 7', - 'TOC 8': 'جدول المحتويات 8', - 'TOC 9': 'جدول المحتويات 9', - 'Right-to-left': 'من اليمين إلى اليسار', - 'Left-to-right': 'من اليسار إلى اليمين', - 'Direction': 'الاتجاه', - 'Table direction': 'اتجاه الجدول', - 'Indent from right': 'مسافة بادئه من اليمين', - 'Page': 'صفحه', - 'Fit one page': 'احتواء صفحه واحد', - 'Fit page width': 'احتواء عرض الصفحة', - // tslint:disable-next-line:max-line-length - 'The current page number in the document. Click or tap to navigate specific page.': 'رقم الصفحة الحالية في المستند. انقر أأو اضغط للتنقل في صفحه معينه' - }, - 'colorpicker': { - 'Apply': 'تطبيق', - 'Cancel': 'إلغاء الأمر', - 'ModeSwitcher': 'مفتاح كهربائي الوضع' - } - } -}); - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableRtl: true, locale: 'ar-AE', height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -//Enable all the built in modules. -documenteditor.enableAllModules(); - -documenteditor.appendTo('#DocumentEditor'); - -let sfdt: string = `{ - "sections": [ - { - "blocks": [ - { - "characterFormat": { - "fontSize": 18.0, - "fontFamily": "Calibri", - "fontFamilyBidi": "Calibri" - }, - "paragraphFormat": { - "beforeSpacing": 18.0, - "afterSpacing": 30.0, - "styleName": "Heading 1", - "bidi": true - }, - "inlines": [ - { - "text": "اعمال المغامرة دورات", - "characterFormat": { - "fontSize": 18.0, - "bidi": true, - "fontSizeBidi": 18.0 - } - } - ] - } - ] - } - ] -}`; - -//Open the sfdt content in Document Editor. -documenteditor.open(sfdt); - - diff --git a/ej2-javascript/code-snippet/document-editor/rtl-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/rtl-cs1/js/index.html deleted file mode 100644 index 658a88815..000000000 --- a/ej2-javascript/code-snippet/document-editor/rtl-cs1/js/index.html +++ /dev/null @@ -1,41 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/rtl-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/rtl-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/rtl-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/rtl-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/rtl-cs1/ts/index.html deleted file mode 100644 index a95028d31..000000000 --- a/ej2-javascript/code-snippet/document-editor/rtl-cs1/ts/index.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.css b/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.js b/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.js deleted file mode 100644 index d1e302258..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.js +++ /dev/null @@ -1,17 +0,0 @@ -//Initialize Document Editor component. -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/', documentEditorSettings: { showRuler: true } -}); - -//Enable all built in modules. -documenteditor.enableAllModules(); - -document.getElementById('container_ruler_button').addEventListener('click', - function () { - documenteditor.documentEditorSettings.showRuler = !documenteditor.documentEditorSettings.showRuler; - }); - -//Render Document Editor component. -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.ts deleted file mode 100644 index f4b7113df..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs1/index.ts +++ /dev/null @@ -1,21 +0,0 @@ - - -import { DocumentEditor, Editor } from '@syncfusion/ej2-documenteditor'; - -//Initialize Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, height: '370px', documentEditorSettings: {showRuler: true}, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); - -//Enable all built in modules. -documenteditor.enableAllModules(); - -document.getElementById('container_ruler_button').addEventListener('click', -function () { - documenteditor.documentEditorSettings.showRuler = !documenteditor.documentEditorSettings.showRuler; -}); - -//Render Document Editor component. -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/ruler-cs1/js/index.html deleted file mode 100644 index 627a467ad..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/ruler-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/ruler-cs1/ts/index.html deleted file mode 100644 index aa87bb1d5..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.css b/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.js b/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.js deleted file mode 100644 index 5869ba3ae..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.js +++ /dev/null @@ -1,17 +0,0 @@ -//Initialize Document Editor Container component. -var documenteditorcontainer = new ej.documenteditor.DocumentEditorContainer({ - height: '590px', documentEditorSettings: { showRuler: true } -}); - -//Inject require modules. -ej.documenteditor.DocumentEditorContainer.Inject( - ej.documenteditor.Toolbar -); - -document.getElementById('container_ruler_button').addEventListener('click', - function () { - documenteditorcontainer.documentEditorSettings.showRuler = !documenteditorcontainer.documentEditorSettings.showRuler; - }); - -//Render Document Editor Container component. -documenteditorcontainer.appendTo("#DocumentEditor"); diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.ts deleted file mode 100644 index 51bec90d9..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs2/index.ts +++ /dev/null @@ -1,21 +0,0 @@ - - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor Container component. -let container: DocumentEditorContainer = new DocumentEditorContainer({ - height: '590px', documentEditorSettings: {showRuler: true} -}); - -document.getElementById('container_ruler_button').addEventListener('click', -function () { - container.documentEditorSettings.showRuler = !container.documentEditorSettings.showRuler; -}); - -//Render Document Editor Container component. -container.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/ruler-cs2/js/index.html deleted file mode 100644 index 627a467ad..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs2/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/ruler-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/ruler-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/ruler-cs2/ts/index.html deleted file mode 100644 index aa87bb1d5..000000000 --- a/ej2-javascript/code-snippet/document-editor/ruler-cs2/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-aws-s3/index.ts b/ej2-javascript/code-snippet/document-editor/save-aws-s3/index.ts deleted file mode 100644 index bfe0970e3..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-aws-s3/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', (): void => { - save(); -}); - -async function save(): Promise { - documentEditorContainer.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - let exportedDocument = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('documentName', documentEditorContainer.documentEditor.documentName); - formData.append('data', exportedDocument); - /* tslint:disable */ - let req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62870/api/documenteditor/SaveToS3', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/save-aws-s3/js/index.html b/ej2-javascript/code-snippet/document-editor/save-aws-s3/js/index.html deleted file mode 100644 index 1beab65e7..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-aws-s3/js/index.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - diff --git a/ej2-javascript/code-snippet/document-editor/save-aws-s3/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/save-aws-s3/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-aws-s3/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/save-aws-s3/ts/index.html b/ej2-javascript/code-snippet/document-editor/save-aws-s3/ts/index.html deleted file mode 100644 index ca49dedb4..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-aws-s3/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-azure-blob/index.ts b/ej2-javascript/code-snippet/document-editor/save-azure-blob/index.ts deleted file mode 100644 index 721860d53..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-azure-blob/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', (): void => { - save(); -}); - -async function save(): Promise { - documentEditorContainer.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - let exportedDocument = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('documentName', documentEditorContainer.documentEditor.documentName); - formData.append('data', exportedDocument); - /* tslint:disable */ - let req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62870/api/documenteditor/SaveToAzure', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/save-azure-blob/js/index.html b/ej2-javascript/code-snippet/document-editor/save-azure-blob/js/index.html deleted file mode 100644 index 37ccf43e3..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-azure-blob/js/index.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-azure-blob/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/save-azure-blob/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-azure-blob/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/save-azure-blob/ts/index.html b/ej2-javascript/code-snippet/document-editor/save-azure-blob/ts/index.html deleted file mode 100644 index c3963399f..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-azure-blob/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/index.ts b/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/index.ts deleted file mode 100644 index d41306829..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', (): void => { - save(); -}); - -async function save(): Promise { - documentEditorContainer.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - let exportedDocument = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('documentName', documentEditorContainer.documentEditor.documentName); - formData.append('data', exportedDocument); - /* tslint:disable */ - let req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62870/api/documenteditor/SaveToBoxCloud', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/js/index.html b/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/js/index.html deleted file mode 100644 index 2c7a394a2..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/js/index.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/ts/index.html b/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/ts/index.html deleted file mode 100644 index 7df35ac5d..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-box-cloud-file-storage/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/index.ts b/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/index.ts deleted file mode 100644 index 5f4a832c1..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', (): void => { - save(); -}); - -async function save(): Promise { - documentEditorContainer.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - let exportedDocument = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('documentName', documentEditorContainer.documentEditor.documentName); - formData.append('data', exportedDocument); - /* tslint:disable */ - let req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62870/api/documenteditor/SaveToDropBox', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/js/index.html b/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/js/index.html deleted file mode 100644 index a2211ae0b..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/js/index.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/ts/index.html b/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/ts/index.html deleted file mode 100644 index cbc68c981..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-dropbox-cloud-file-storage/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/index.ts b/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/index.ts deleted file mode 100644 index 84d3399e0..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', (): void => { - save(); -}); - -async function save(): Promise { - documentEditorContainer.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - let exportedDocument = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('documentName', documentEditorContainer.documentEditor.documentName); - formData.append('data', exportedDocument); - /* tslint:disable */ - let req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62870/api/documenteditor/SaveToGoogleCloud', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/js/index.html b/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/js/index.html deleted file mode 100644 index 74d4ea3bc..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/js/index.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/ts/index.html b/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/ts/index.html deleted file mode 100644 index fb0dc7116..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-cloud-storage/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-google-drive/index.ts b/ej2-javascript/code-snippet/document-editor/save-google-drive/index.ts deleted file mode 100644 index dbcb7846b..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-drive/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', (): void => { - save(); -}); - -async function save(): Promise { - documentEditorContainer.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - let exportedDocument = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('documentName', documentEditorContainer.documentEditor.documentName); - formData.append('data', exportedDocument); - /* tslint:disable */ - let req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62870/api/documenteditor/SaveToGoogleDrive', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/save-google-drive/js/index.html b/ej2-javascript/code-snippet/document-editor/save-google-drive/js/index.html deleted file mode 100644 index 479168d22..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-drive/js/index.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-google-drive/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/save-google-drive/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-drive/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/save-google-drive/ts/index.html b/ej2-javascript/code-snippet/document-editor/save-google-drive/ts/index.html deleted file mode 100644 index a68684295..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-google-drive/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-one-drive/index.ts b/ej2-javascript/code-snippet/document-editor/save-one-drive/index.ts deleted file mode 100644 index e3a623c08..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-one-drive/index.ts +++ /dev/null @@ -1,42 +0,0 @@ - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -//Initialize Document Editor component -let documentEditorContainer: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', serviceUrl: 'http://localhost:62870/api/documenteditor/' }); - -// Render Document Editor component. -documentEditorContainer.appendTo('#DocumentEditor'); - -document.getElementById('export').addEventListener('click', (): void => { - save(); -}); - -async function save(): Promise { - documentEditorContainer.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - let exportedDocument = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('documentName', documentEditorContainer.documentEditor.documentName); - formData.append('data', exportedDocument); - /* tslint:disable */ - let req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62870/api/documenteditor/SaveToOneDrive', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); -} - diff --git a/ej2-javascript/code-snippet/document-editor/save-one-drive/js/index.html b/ej2-javascript/code-snippet/document-editor/save-one-drive/js/index.html deleted file mode 100644 index f30726a62..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-one-drive/js/index.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - EJ2 DocumentEditor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/save-one-drive/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/save-one-drive/systemjs.config.js deleted file mode 100644 index fdafc9451..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-one-drive/systemjs.config.js +++ /dev/null @@ -1,45 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - diff --git a/ej2-javascript/code-snippet/document-editor/save-one-drive/ts/index.html b/ej2-javascript/code-snippet/document-editor/save-one-drive/ts/index.html deleted file mode 100644 index 82f30ec7c..000000000 --- a/ej2-javascript/code-snippet/document-editor/save-one-drive/ts/index.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.css b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.css deleted file mode 100644 index 8368ebd5f..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.css +++ /dev/null @@ -1,26 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor { - width: 100%; - height: 100%; - } - - .e-de-statusbar-zoom { - float: right; - text-align: center; - padding: 2px; - line-height: 19px; - margin-top: 1px; -} diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.js b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.js deleted file mode 100644 index 87d3c2b85..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.js +++ /dev/null @@ -1,62 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, enableEditor: true, -}); -documenteditor.appendTo('#DocumentEditor'); -onLoadDefault(); -documenteditor.scrollToPage(2); - - function onLoadDefault() { - var defaultDocument = { - "sections": [ - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "First page" - } - ] - } - ], - "headersFooters": {}, - }, - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "Second page" - } - ] - } - ], - "headersFooters": {}, - } - ], - "characterFormat": {}, - "paragraphFormat": {}, - "background": { - "color": "#FFFFFFFF" - }, - "styles": [ - { - "type": "Paragraph", - "name": "Normal", - "next": "Normal" - }, - { - "type": "Character", - "name": "Default Paragraph Font" - } - ] -} -documenteditor.open(JSON.stringify(defaultDocument)); -documenteditor.focusIn(); -} - diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.ts deleted file mode 100644 index 2530a3ac4..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/index.ts +++ /dev/null @@ -1,68 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, height: '370px', enableEditor: true -}); -documenteditor.appendTo('#DocumentEditor'); -//Open default document in DocumentEditor -onLoadDefault(); -documenteditor.scrollToPage(2); - -function onLoadDefault(): void { - let defaultDocument: object = { - "sections": [ - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "First page" - } - ] - } - ], - "headersFooters": {}, - }, - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "Second page" - } - ] - } - ], - "headersFooters": {}, - } - ], - "characterFormat": {}, - "paragraphFormat": {}, - "background": { - "color": "#FFFFFFFF" - }, - "styles": [ - { - "type": "Paragraph", - "name": "Normal", - "next": "Normal" - }, - { - "type": "Character", - "name": "Default Paragraph Font" - } - ] - } - documenteditor.open(JSON.stringify(defaultDocument)); - documenteditor.focusIn(); -} - - diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/js/index.html deleted file mode 100644 index 42b2245fc..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/ts/index.html deleted file mode 100644 index 8d9bec726..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/app.ts b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.css b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.css deleted file mode 100644 index 8368ebd5f..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.css +++ /dev/null @@ -1,26 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor { - width: 100%; - height: 100%; - } - - .e-de-statusbar-zoom { - float: right; - text-align: center; - padding: 2px; - line-height: 19px; - margin-top: 1px; -} diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.js b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.js deleted file mode 100644 index 4f94670d8..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.js +++ /dev/null @@ -1,78 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documenteditor.enableAllModules(); -documenteditor.appendTo('#DocumentEditor'); -onLoadDefaultDocument(); -documenteditor.selection.goToPage(3); - -function onLoadDefaultDocument() { - var defaultDocument = { - "sections": [ - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "First page" - } - ] - } - ], - "headersFooters": {}, - }, - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "Second page" - } - ] - } - ], - "headersFooters": {}, - }, - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "Third page" - } - ] - } - ], - "headersFooters": {}, - } - ], - "characterFormat": {}, - "paragraphFormat": {}, - "background": { - "color": "#FFFFFFFF" - }, - "styles": [ - { - "type": "Paragraph", - "name": "Normal", - "next": "Normal" - }, - { - "type": "Character", - "name": "Default Paragraph Font" - } - ] - } - documenteditor.open(JSON.stringify(defaultDocument)); - documenteditor.focusIn(); -} - diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.ts b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.ts deleted file mode 100644 index e9f327fcc..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/index.ts +++ /dev/null @@ -1,83 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; -//Initialize the Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documenteditor.enableAllModules(); -documenteditor.appendTo('#DocumentEditor'); -onLoadDefaultDocument(); -documenteditor.selection.goToPage(3); - -function onLoadDefaultDocument(): void { - let defaultDocument: object = { - "sections": [ - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "First page" - } - ] - } - ], - "headersFooters": {}, - }, - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "Second page" - } - ] - } - ], - "headersFooters": {}, - }, - { - "blocks": [ - { - "paragraphFormat": { - "styleName": "Normal" - }, - "inlines": [ - { - "text": "Third page" - } - ] - } - ], - "headersFooters": {}, - } - ], - "characterFormat": {}, - "paragraphFormat": {}, - "background": { - "color": "#FFFFFFFF" - }, - "styles": [ - { - "type": "Paragraph", - "name": "Normal", - "next": "Normal" - }, - { - "type": "Character", - "name": "Default Paragraph Font" - } - ] - } - documenteditor.open(JSON.stringify(defaultDocument)); - documenteditor.focusIn(); -} - - diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/js/index.html b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/js/index.html deleted file mode 100644 index 42b2245fc..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/ts/index.html b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/ts/index.html deleted file mode 100644 index 8d9bec726..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs2/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/app.ts b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.css b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.css deleted file mode 100644 index 8368ebd5f..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.css +++ /dev/null @@ -1,26 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor { - width: 100%; - height: 100%; - } - - .e-de-statusbar-zoom { - float: right; - text-align: center; - padding: 2px; - line-height: 19px; - margin-top: 1px; -} diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.js b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.js deleted file mode 100644 index 5091d95da..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.js +++ /dev/null @@ -1,153 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documenteditor.enableAllModules(); -documenteditor.appendTo('#DocumentEditor'); -var statusBarDiv = document.getElementById('page-fit-type-div'); -var startPage = 1; -var label = document.createElement('label'); -label.styles = 'margin-top: 6px;margin-right: 2px'; -label.textContent = 'Page '; -statusBarDiv.appendChild(label); -var pageNumberLabel = document.createElement('label'); -pageNumberLabel.id = 'documenteditor_page_no'; -pageNumberLabel.style= 'text-transform:capitalize;white-space:pre;overflow:hidden;user-select:none;cursor:text;height:17px;max-width:150px'; - -var editablePageNumber = document.createElement('div'); -pageNumberLabel.id= 'editablePageNumber'; -pageNumberLabel.style= 'border: 1px solid #F1F1F1;display: inline-flex;height: 17px;padding: 0px 4px;'; -pageNumberLabel.className= 'single-line e-de-pagenumber-text'; -editablePageNumber.appendChild(pageNumberLabel); -updatePageNumber(); -statusBarDiv.appendChild(editablePageNumber); -editablePageNumber.setAttribute('title', 'The current page number in the document. Click or tap to navigate specific page.'); -var label1 = document.createElement('label'); -label1.id = 'documenteditor_pagecount'; -label1.styles = 'margin-left:2px;varter-spacing: 1.05px;'; -label1.textContent = 'of'; -statusBarDiv.appendChild(label1); -var pageCount = document.createElement('label'); -pageCount.id = 'documenteditor_pagecount' -pageCount.style = 'margin-left:6px;varter-spacing: 1.05px;'; -updatePageCount(); -statusBarDiv.appendChild(pageCount); -var editorPageCount = undefined; -var zoom; -var zoomBtn = document.createElement('button'); -zoomBtn.id= 'documenteditor-zoom'; -zoomBtn.className = 'e-de-statusbar-zoom'; -statusBarDiv.appendChild(zoomBtn); -zoomBtn.setAttribute('title', 'Zoom level. Click or tap to open the Zoom options.'); -var items = [ - { - text: '200%', - }, - { - text: '175%', - }, - { - text: '150%', - }, - { - text: '125%', - }, - { - text: '100%', - }, - { - text: '75%', - }, - { - text: '50%', - }, - { - text: '25%', - }, - { - separator: true - }, - { - text: 'Fit one page' - }, - { - text: 'Fit page width', - }, -]; -zoom = new ej.splitbuttons.DropDownButton({ content: '100%', items: items, select: onZoom }, zoomBtn); -editablePageNumber.addEventListener('click', updateDocumentEditorPageNumber); -editablePageNumber.addEventListener('keydown', onKeyDown); -editablePageNumber.addEventListener('blur', onBlur); -documenteditor.viewChange = function (e) { - updatePageNumberOnViewChange(e); -}; -documenteditor.contentChange = function () { - //Set page count - updatePageCount(); -}; -function updatePageNumberOnViewChange(args) { - if (documenteditor.selection - && documenteditor.selection.startPage >= args.startPage && documenteditor.selection.startPage <= args.endPage) { - startPage = documenteditor.selection.startPage; - } else { - startPage = args.startPage; - } - updatePageNumber(); -} -function onBlur() { - if (editablePageNumber.textContent === '' || parseInt(editablePageNumber.textContent, 0) > editorPageCount) { - updatePageNumber(); - } - editablePageNumber.contentEditable = 'false'; -} -function onKeyDown(e) { - if (e.which === 13) { - e.preventDefault(); - var pageNumber = parseInt(editablePageNumber.textContent, 0); - if (pageNumber > editorPageCount) { - updatePageNumber(); - } else { - if (documenteditor.selection) { - documenteditor.selection.goToPage(parseInt(editablePageNumber.textContent, 0)); - } else { - documenteditor.scrollToPage(parseInt(editablePageNumber.textContent, 0)); - } - } - editablePageNumber.contentEditable = 'false'; - if (editablePageNumber.textContent === '') { - updatePageNumber(); - } - } - if (e.which > 64) { - e.preventDefault(); - } -} -function onZoom(args) { - setZoomValue(args.item.text); - updateZoomContent(); -} -function setZoomValue(text) { - if (text.match('Fit one page')) { - documenteditor.fitPage('FitOnePage'); - } else if (text.match('Fit page width')) { - documenteditor.fitPage('FitPageWidth'); - } else { - documenteditor.zoomFactor = parseInt(text, 0) / 100; - } -} -function updateZoomContent() { - zoom.content = Math.round(documenteditor.zoomFactor * 100) + '%'; -} -function updatePageNumber() { - pageNumberLabel.textContent = startPage.toString(); -} -function updatePageCount() { - editorPageCount = documenteditor.pageCount; - pageCount.textContent = editorPageCount.toString(); -} -function updateDocumentEditorPageNumber() { - var editablePageNumber = document.getElementById('editablePageNumber'); - editablePageNumber.contentEditable = 'true'; - editablePageNumber.focus(); - window.getSelection().selectAllChildren(editablePageNumber); -} - diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.ts b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.ts deleted file mode 100644 index d12ebbd38..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/index.ts +++ /dev/null @@ -1,163 +0,0 @@ - - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; -import { createElement } from '@syncfusion/ej2-base'; -import { DropDownButton, ItemModel, MenuEventArgs } from '@syncfusion/ej2-splitbuttons'; - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documenteditor.enableAllModules(); - -documenteditor.appendTo('#DocumentEditor'); - -let statusBarDiv = document.getElementById('page-fit-type-div'); -let startPage: number = 1; -let label: HTMLElement = createElement('label', { styles: 'margin-top: 6px;margin-right: 2px' }); -label.textContent = 'Page '; -statusBarDiv.appendChild(label); -let pageNumberLabel = createElement('label', { id: 'documenteditor_page_no', styles: 'text-transform:capitalize;white-space:pre;overflow:hidden;user-select:none;cursor:text;height:17px;max-width:150px' }); -let editablePageNumber = createElement('div', { id: 'editablePageNumber', styles: 'border: 1px solid #F1F1F1;display: inline-flex;height: 17px;padding: 0px 4px;', className: 'single-line e-de-pagenumber-text' }); -editablePageNumber.appendChild(pageNumberLabel); -updatePageNumber(); -statusBarDiv.appendChild(editablePageNumber); -editablePageNumber.setAttribute('title', 'The current page number in the document. Click or tap to navigate specific page.'); -let label1: HTMLElement = createElement('label', { id: 'documenteditor_pagecount', styles: 'margin-left:2px;letter-spacing: 1.05px;' }); -label1.textContent = 'of'; -statusBarDiv.appendChild(label1); -let pageCount = createElement('label', { id: 'documenteditor_pagecount', styles: 'margin-left:6px;letter-spacing: 1.05px;' }); -statusBarDiv.appendChild(pageCount); -let editorPageCount = undefined; -updatePageCount(); -let zoom: DropDownButton; -let zoomBtn: HTMLButtonElement = createElement('button', { - id: 'documenteditor-zoom', - // tslint:disable-next-line:max-line-length - className: 'e-de-statusbar-zoom' -}) as HTMLButtonElement; -statusBarDiv.appendChild(zoomBtn); -zoomBtn.setAttribute('title', 'Zoom level. Click or tap to open the Zoom options.'); - -let items: ItemModel[] = [ - { - text: '200%', - }, - { - text: '175%', - }, - { - text: '150%', - }, - { - text: '125%', - }, - { - text: '100%', - }, - { - text: '75%', - }, - { - text: '50%', - }, - { - text: '25%', - }, - { - separator: true - }, - { - text: 'Fit one page' - }, - { - text: 'Fit page width', - }, -]; -zoom = new DropDownButton({ content: '100%', items: items, select: onZoom }, zoomBtn); -editablePageNumber.addEventListener('click', updateDocumentEditorPageNumber); -editablePageNumber.addEventListener('keydown', onKeyDown); -editablePageNumber.addEventListener('blur', onBlur); - -//Update page number on `viewChange` event -documenteditor.viewChange = (e): void => { - updatePageNumberOnViewChange(e); -}; - -//Update page count on `contentChange` event. -documenteditor.contentChange = (): void => { - //Set page count - updatePageCount(); -}; - -function updatePageNumberOnViewChange(args) { - if (documenteditor.selection - && documenteditor.selection.startPage >= args.startPage && documenteditor.selection.startPage <= args.endPage) { - startPage = documenteditor.selection.startPage; - } else { - startPage = args.startPage; - } - updatePageNumber(); -} - -function onBlur() { - if (editablePageNumber.textContent === '' || parseInt(editablePageNumber.textContent, 0) > editorPageCount) { - updatePageNumber(); - } - editablePageNumber.contentEditable = 'false'; -} - -function onKeyDown(e) { - if (e.which === 13) { - e.preventDefault(); - let pageNumber: number = parseInt(editablePageNumber.textContent, 0); - if (pageNumber > editorPageCount) { - updatePageNumber(); - } else { - if (documenteditor.selection) { - documenteditor.selection.goToPage(parseInt(editablePageNumber.textContent, 0)); - } else { - documenteditor.scrollToPage(parseInt(editablePageNumber.textContent, 0)); - } - } - editablePageNumber.contentEditable = 'false'; - if (editablePageNumber.textContent === '') { - updatePageNumber(); - } - } - if (e.which > 64) { - e.preventDefault(); - } -} - -//Update zoom factor. -function onZoom(args) { - setZoomValue(args.item.text); - updateZoomContent(); -} -function setZoomValue(text) { - if (text.match('Fit one page')) { - documenteditor.fitPage('FitOnePage'); - } else if (text.match('Fit page width')) { - documenteditor.fitPage('FitPageWidth'); - } else { - documenteditor.zoomFactor = parseInt(text, 0) / 100; - } -} -function updateZoomContent() { - zoom.content = Math.round(documenteditor.zoomFactor * 100) + '%'; -} -function updatePageNumber() { - pageNumberLabel.textContent = startPage.toString(); -} -function updatePageCount() { - editorPageCount = documenteditor.pageCount; - pageCount.textContent = editorPageCount.toString(); -} -function updateDocumentEditorPageNumber() { - let editablePageNumber = document.getElementById('editablePageNumber'); - editablePageNumber.contentEditable = 'true'; - editablePageNumber.focus(); - window.getSelection().selectAllChildren(editablePageNumber); -} - - diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/js/index.html b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/js/index.html deleted file mode 100644 index 42b2245fc..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/ts/index.html b/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/ts/index.html deleted file mode 100644 index 8d9bec726..000000000 --- a/ej2-javascript/code-snippet/document-editor/scrolling-zooming-cs3/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.css b/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.js b/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.js deleted file mode 100644 index a6252eada..000000000 --- a/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.js +++ /dev/null @@ -1,27 +0,0 @@ - -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); -var container = new ej.documenteditor.DocumentEditorContainer({ - enableToolbar: true, height:"400" -}); -ej.popups.createSpinner({ - // Specify the target for the spinner to show - target: document.getElementById('container') -}); - -document.getElementById('import').addEventListener('click',function(){ - // load your default document here - var data= '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; - - ej.popups.showSpinner(document.getElementById('DocumentEditor')); - // Open the default document - container.documentEditor.open(data); - setInterval(function(){ - - // hideSpinner() method used hide spinner - ej.popups.hideSpinner(document.getElementById('DocumentEditor')); - - }, 5000); -}); -container.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.ts deleted file mode 100644 index 80410b8d4..000000000 --- a/ej2-javascript/code-snippet/document-editor/spinner-cs1/index.ts +++ /dev/null @@ -1,32 +0,0 @@ - - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -import { createSpinner, showSpinner, hideSpinner } from '@syncfusion/ej2-popups'; - -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, height: "400" -}); -createSpinner({ - // Specify the target for the spinner to show - target: document.getElementById('container') -}); - -document.getElementById('import').addEventListener('click', function () { - // load your default document here - let data: string = '{"sections":[{"sectionFormat":{"pageWidth":612,"pageHeight":792,"leftMargin":72,"rightMargin":72,"topMargin":72,"bottomMargin":72,"differentFirstPage":false,"differentOddAndEvenPages":false,"headerDistance":36,"footerDistance":36,"bidi":false},"blocks":[{"paragraphFormat":{"afterSpacing":30,"styleName":"Heading 1","listFormat":{}},"characterFormat":{},"inlines":[{"characterFormat":{},"text":"Adventure Works Cycles"}]}],"headersFooters":{"header":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]},"footer":{"blocks":[{"paragraphFormat":{"listFormat":{}},"characterFormat":{},"inlines":[]}]}}}],"characterFormat":{"bold":false,"italic":false,"fontSize":11,"fontFamily":"Calibri","underline":"None","strikethrough":"None","baselineAlignment":"Normal","highlightColor":"NoColor","fontColor":"empty","fontSizeBidi":11,"fontFamilyBidi":"Calibri","allCaps":false},"paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":0,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","listFormat":{},"bidi":false},"defaultTabWidth":36,"trackChanges":false,"enforcement":false,"hashValue":"","saltValue":"","formatting":false,"protectionType":"NoProtection","dontUseHTMLParagraphAutoSpacing":false,"formFieldShading":true,"styles":[{"name":"Normal","type":"Paragraph","paragraphFormat":{"lineSpacing":1.149999976158142,"lineSpacingType":"Multiple","listFormat":{}},"characterFormat":{"fontFamily":"Calibri"},"next":"Normal"},{"name":"Default Paragraph Font","type":"Character","characterFormat":{}},{"name":"Heading 1 Char","type":"Character","characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 1","type":"Paragraph","paragraphFormat":{"beforeSpacing":12,"afterSpacing":0,"outlineLevel":"Level1","listFormat":{}},"characterFormat":{"fontSize":16,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 1 Char","next":"Normal"},{"name":"Heading 2 Char","type":"Character","characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 2","type":"Paragraph","paragraphFormat":{"beforeSpacing":2,"afterSpacing":6,"outlineLevel":"Level2","listFormat":{}},"characterFormat":{"fontSize":13,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 2 Char","next":"Normal"},{"name":"Heading 3","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level3","listFormat":{}},"characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 3 Char","next":"Normal"},{"name":"Heading 3 Char","type":"Character","characterFormat":{"fontSize":12,"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"},{"name":"Heading 4","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level4","listFormat":{}},"characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 4 Char","next":"Normal"},{"name":"Heading 4 Char","type":"Character","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 5","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level5","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Normal","link":"Heading 5 Char","next":"Normal"},{"name":"Heading 5 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496"},"basedOn":"Default Paragraph Font"},{"name":"Heading 6","type":"Paragraph","paragraphFormat":{"leftIndent":0,"rightIndent":0,"firstLineIndent":0,"textAlignment":"Left","beforeSpacing":2,"afterSpacing":0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple","outlineLevel":"Level6","listFormat":{}},"characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Normal","link":"Heading 6 Char","next":"Normal"},{"name":"Heading 6 Char","type":"Character","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763"},"basedOn":"Default Paragraph Font"}],"lists":[],"abstractLists":[],"comments":[],"revisions":[],"customXml":[]}'; - - // showSpinner() will make the spinner visible - showSpinner(document.getElementById('DocumentEditor')); - // Open the default document - container.documentEditor.open(data); - setInterval(function () { - - // hideSpinner() method used hide spinner - hideSpinner(document.getElementById('DocumentEditor')); - - }, 5000); -}); -container.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/spinner-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/spinner-cs1/js/index.html deleted file mode 100644 index f1c342468..000000000 --- a/ej2-javascript/code-snippet/document-editor/spinner-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/spinner-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/spinner-cs1/systemjs.config.js deleted file mode 100644 index 1a2f334a1..000000000 --- a/ej2-javascript/code-snippet/document-editor/spinner-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/spinner-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/spinner-cs1/ts/index.html deleted file mode 100644 index b28d39b34..000000000 --- a/ej2-javascript/code-snippet/document-editor/spinner-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    - -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/table-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/table-cs1/index.css b/ej2-javascript/code-snippet/document-editor/table-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-cs1/index.js b/ej2-javascript/code-snippet/document-editor/table-cs1/index.js deleted file mode 100644 index 034db0cac..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-cs1/index.js +++ /dev/null @@ -1,119 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditorHistory: true, - enableEditor: true, - enableTableDialog: true, - enableContextMenu: true, - enableSfdtExport: true, - height: '370px' -}); -function toolbarButtonClick(arg) { - switch (arg.item.id) { - case 'table': - //Insert table API to add table - documenteditor.editor.insertTable(3, 2); - break; - case 'insert_above': - //Insert the specified number of rows to the table above to the row at cursor position - documenteditor.editor.insertRow(true, 2); - break; - case 'insert_below': - //Insert the specified number of rows to the table below to the row at cursor position - documenteditor.editor.insertRow(); - break; - case 'insert_left': - //Insert the specified number of columns to the table left to the column at cursor position - documenteditor.editor.insertColumn(true, 2); - break; - case 'insert_right': - //Insert the specified number of columns to the table right to the column at cursor position - documenteditor.editor.insertColumn(); - break; - case 'delete_table': - //Delete the entire table - documenteditor.editor.deleteTable(); - break; - case 'delete_row': - //Delete the selected number of rows - documenteditor.editor.deleteRow(); - break; - case 'delete_column': - //Delete the selected number of columns - documenteditor.editor.deleteColumn(); - break; - case 'merge_cell': - //Merge the selected cells into one (both vertically and horizontally) - documenteditor.editor.mergeCells(); - break; - case 'table_dialog': - //Opens insert table dialog - documenteditor.showDialog('Table'); - break; - } -} -var toolBar = new ej.navigations.Toolbar({ - clicked: toolbarButtonClick, - items: [ - { - prefixIcon: 'e-de-ctnr-table e-icons', - tooltipText: 'Insert Table', - id: 'table', - }, - {type: 'Separator' }, - { - prefixIcon: 'e-de-ctnr-insertabove e-icons', - tooltipText: 'Insert new row above', - id: 'insert_above', - }, - { - prefixIcon: 'e-de-ctnr-insertbelow e-icons', - tooltipText: 'Insert new row below', - id: 'insert_below', - }, - {type: 'Separator' }, - { - prefixIcon: 'e-de-ctnr-insertleft e-icons', - tooltipText: 'Insert new column to the left', - id: 'insert_left', - }, - { - prefixIcon: 'e-de-ctnr-insertright e-icons', - tooltipText: 'Insert new column to the right', - id: 'insert_right', - }, - {type: 'Separator' }, - { - prefixIcon: 'e-icons e-de-delete-table', - tooltipText: 'Delete Entire table', - id: 'delete_table', - }, - { - prefixIcon: 'e-de-ctnr-deleterows e-icons', - tooltipText: 'Delete the selected row', - id: 'delete_row', - }, - { - prefixIcon: 'e-de-ctnr-deletecolumns e-icons', - tooltipText: 'Delete the selected column', - id: 'delete_column', - }, - {type: 'Separator' }, - { - prefixIcon: 'e-de-ctnr-mergecell e-icons', - tooltipText: 'Merge the selected cells', - id: 'merge_cell', - }, - {type: 'Separator' }, - { - text: 'Dialog', - tooltipText: 'Open insert table dialog', - id: 'table_dialog', - }, - ], -}); -toolBar.appendTo('#toolbar'); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2, 2); - - diff --git a/ej2-javascript/code-snippet/document-editor/table-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/table-cs1/index.ts deleted file mode 100644 index 6866664b3..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-cs1/index.ts +++ /dev/null @@ -1,137 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, SfdtExport, EditorHistory, TableDialog, ContextMenu } from '@syncfusion/ej2-documenteditor'; -import { Toolbar } from '@syncfusion/ej2-navigations'; -DocumentEditor.Inject(Editor, Selection, EditorHistory, TableDialog, ContextMenu, SfdtExport); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditorHistory: true, - enableEditor: true, - enableTableDialog: true, - enableContextMenu: true, - enableSfdtExport: true, - height: '370px' -}); -function toolbarButtonClick(arg) { - switch (arg.item.id) { - case 'table': - //Insert table API to add table - documenteditor.editor.insertTable(3, 2); - break; - case 'insert_above': - //Insert the specified number of rows to the table above to the row at cursor position - documenteditor.editor.insertRow(true, 2); - break; - case 'insert_below': - //Insert the specified number of rows to the table below to the row at cursor position - documenteditor.editor.insertRow(); - break; - case 'insert_left': - //Insert the specified number of columns to the table left to the column at cursor position - documenteditor.editor.insertColumn(true, 2); - break; - case 'insert_right': - //Insert the specified number of columns to the table right to the column at cursor position - documenteditor.editor.insertColumn(); - break; - case 'delete_table': - //Delete the entire table - documenteditor.editor.deleteTable(); - break; - case 'delete_row': - //Delete the selected number of rows - documenteditor.editor.deleteRow(); - break; - case 'delete_column': - //Delete the selected number of columns - documenteditor.editor.deleteColumn(); - break; - case 'merge_cell': - //Merge the selected cells into one (both vertically and horizontally) - documenteditor.editor.mergeCells(); - break; - case 'table_dialog': - //Opens insert table dialog - documenteditor.showDialog('Table'); - break; - } -} - -let toolBar: Toolbar = new Toolbar({ - clicked: toolbarButtonClick, - items: [ - { - prefixIcon: 'e-de-ctnr-table e-icons', - tooltipText: 'Insert Table', - id: 'table', - }, - { - type: 'Separator' - }, - { - prefixIcon: 'e-de-ctnr-insertabove e-icons', - tooltipText: 'Insert new row above', - id: 'insert_above', - }, - { - prefixIcon: 'e-de-ctnr-insertbelow e-icons', - tooltipText: 'Insert new row below', - id: 'insert_below', - }, - { - type: 'Separator' - }, - { - prefixIcon: 'e-de-ctnr-insertleft e-icons', - tooltipText: 'Insert new column to the left', - id: 'insert_left', - }, - { - prefixIcon: 'e-de-ctnr-insertright e-icons', - tooltipText: 'Insert new column to the right', - id: 'insert_right', - }, - { - type: 'Separator' - }, - { - prefixIcon: 'e-de-delete-table e-icons', - tooltipText: 'Delete Entire table', - id: 'delete_table', - }, - { - prefixIcon: 'e-de-ctnr-deleterows e-icons', - tooltipText: 'Delete the selected row', - id: 'delete_row', - }, - { - prefixIcon: 'e-de-ctnr-deletecolumns e-icons', - tooltipText: 'Delete the selected column', - id: 'delete_column', - }, - { - type: 'Separator' - }, - { - prefixIcon: 'e-de-ctnr-mergecell e-icons', - tooltipText: 'Merge the selected cells', - id: 'merge_cell', - }, - { - type: 'Separator' - }, - { - text: 'Dialog', - tooltipText: 'Open insert table dialog', - id: 'table_dialog', - }, - ], -}); -toolBar.appendTo('#toolbar'); - -documenteditor.appendTo('#DocumentEditor'); -//Insert table. -documenteditor.editor.insertTable(2, 2); - - diff --git a/ej2-javascript/code-snippet/document-editor/table-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/table-cs1/js/index.html deleted file mode 100644 index fbd63bb08..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-cs1/js/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    - -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/table-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/table-cs1/ts/index.html deleted file mode 100644 index 29841bbc2..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-cs1/ts/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    - -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.css b/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.css deleted file mode 100644 index fcf73db8f..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.css +++ /dev/null @@ -1,13 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.js b/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.js deleted file mode 100644 index 8f91bdef1..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.js +++ /dev/null @@ -1,13 +0,0 @@ -ej.base.enableRipple(true); - -var editor = new ej.documenteditor.DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); -var documentString = '{"sections":[{"blocks":[{"paragraphFormat":{"styleName":"Heading 1"},"inlines":[{"text":"Headin"},{"name":"_GoBack","bookmarkType":0},{"name":"_GoBack","bookmarkType":1},{"text":"g1"}]},{"paragraphFormat":{"styleName":"Heading 2"},"inlines":[{"text":"Heading2"}]},{"paragraphFormat":{"styleName":"Heading 3"},"inlines":[{"text":"Heading3"}]},{"paragraphFormat":{"styleName":"Heading 4"},"inlines":[{"text":"Heading4"}]},{"paragraphFormat":{"styleName":"Heading 5"},"inlines":[{"text":"Heading5"}]},{"paragraphFormat":{"styleName":"Heading 6"},"inlines":[{"text":"Heading6"}]},{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"text":"Normal"}]}],"headersFooters":{},"sectionFormat":{"headerDistance":36.0,"footerDistance":36.0,"pageWidth":612.0,"pageHeight":792.0,"leftMargin":72.0,"rightMargin":72.0,"topMargin":72.0,"bottomMargin":72.0,"differentFirstPage":false,"differentOddAndEvenPages":false}}],"characterFormat":{"fontSize":11.0,"fontFamily":"Calibri"},"paragraphFormat":{"afterSpacing":8.0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple"},"background":{"color":"#FFFFFFFF"},"styles":[{"type":"Paragraph","name":"Normal","next":"Normal"},{"type":"Paragraph","name":"Heading 1","basedOn":"Normal","next":"Normal","link":"Heading 1 Char","characterFormat":{"fontSize":16.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":12.0,"afterSpacing":0.0,"outlineLevel":"Level1"}},{"type":"Paragraph","name":"Heading 2","basedOn":"Normal","next":"Normal","link":"Heading 2 Char","characterFormat":{"fontSize":13.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level2"}},{"type":"Paragraph","name":"Heading 3","basedOn":"Normal","next":"Normal","link":"Heading 3 Char","characterFormat":{"fontSize":12.0,"fontFamily":"Calibri Light","fontColor":"#1F3763FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level3"}},{"type":"Paragraph","name":"Heading 4","basedOn":"Normal","next":"Normal","link":"Heading 4 Char","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level4"}},{"type":"Paragraph","name":"Heading 5","basedOn":"Normal","next":"Normal","link":"Heading 5 Char","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level5"}},{"type":"Paragraph","name":"Heading 6","basedOn":"Normal","next":"Normal","link":"Heading 6 Char","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level6"}},{"type":"Character","name":"Default Paragraph Font"},{"type":"Character","name":"Heading 1 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontSize":16.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 2 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontSize":13.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 3 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontSize":12.0,"fontFamily":"Calibri Light","fontColor":"#1F3763FF"}},{"type":"Character","name":"Heading 4 Char","basedOn":"Default Paragraph Font","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 5 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 6 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763FF"}}]}'; -editor.appendTo('#DocumentEditor'); - -editor.open(documentString); -var tocSettings = -{ - startLevel: 1, endLevel: 3, includeHyperlink: true, includePageNumber: true, rightAlign: true -}; -editor.editorModule.insertTableOfContents(tocSettings); - diff --git a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.ts deleted file mode 100644 index 5450ef2b9..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/index.ts +++ /dev/null @@ -1,13 +0,0 @@ - - -import { DocumentEditor, Editor, Selection } from '@syncfusion/ej2-documenteditor'; -//Inject require modules. -DocumentEditor.Inject(Editor, Selection); -//Initialize the Document Editor component. -let editor: DocumentEditor = new DocumentEditor({ height: '370px', enableEditor: true, isReadOnly: false, enableSelection: true }); -let documentString: string = '{"sections":[{"blocks":[{"paragraphFormat":{"styleName":"Heading 1"},"inlines":[{"text":"Headin"},{"name":"_GoBack","bookmarkType":0},{"name":"_GoBack","bookmarkType":1},{"text":"g1"}]},{"paragraphFormat":{"styleName":"Heading 2"},"inlines":[{"text":"Heading2"}]},{"paragraphFormat":{"styleName":"Heading 3"},"inlines":[{"text":"Heading3"}]},{"paragraphFormat":{"styleName":"Heading 4"},"inlines":[{"text":"Heading4"}]},{"paragraphFormat":{"styleName":"Heading 5"},"inlines":[{"text":"Heading5"}]},{"paragraphFormat":{"styleName":"Heading 6"},"inlines":[{"text":"Heading6"}]},{"paragraphFormat":{"styleName":"Normal"},"inlines":[{"text":"Normal"}]}],"headersFooters":{},"sectionFormat":{"headerDistance":36.0,"footerDistance":36.0,"pageWidth":612.0,"pageHeight":792.0,"leftMargin":72.0,"rightMargin":72.0,"topMargin":72.0,"bottomMargin":72.0,"differentFirstPage":false,"differentOddAndEvenPages":false}}],"characterFormat":{"fontSize":11.0,"fontFamily":"Calibri"},"paragraphFormat":{"afterSpacing":8.0,"lineSpacing":1.0791666507720947,"lineSpacingType":"Multiple"},"background":{"color":"#FFFFFFFF"},"styles":[{"type":"Paragraph","name":"Normal","next":"Normal"},{"type":"Paragraph","name":"Heading 1","basedOn":"Normal","next":"Normal","link":"Heading 1 Char","characterFormat":{"fontSize":16.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":12.0,"afterSpacing":0.0,"outlineLevel":"Level1"}},{"type":"Paragraph","name":"Heading 2","basedOn":"Normal","next":"Normal","link":"Heading 2 Char","characterFormat":{"fontSize":13.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level2"}},{"type":"Paragraph","name":"Heading 3","basedOn":"Normal","next":"Normal","link":"Heading 3 Char","characterFormat":{"fontSize":12.0,"fontFamily":"Calibri Light","fontColor":"#1F3763FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level3"}},{"type":"Paragraph","name":"Heading 4","basedOn":"Normal","next":"Normal","link":"Heading 4 Char","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level4"}},{"type":"Paragraph","name":"Heading 5","basedOn":"Normal","next":"Normal","link":"Heading 5 Char","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level5"}},{"type":"Paragraph","name":"Heading 6","basedOn":"Normal","next":"Normal","link":"Heading 6 Char","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763FF"},"paragraphFormat":{"beforeSpacing":2.0,"afterSpacing":0.0,"outlineLevel":"Level6"}},{"type":"Character","name":"Default Paragraph Font"},{"type":"Character","name":"Heading 1 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontSize":16.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 2 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontSize":13.0,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 3 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontSize":12.0,"fontFamily":"Calibri Light","fontColor":"#1F3763FF"}},{"type":"Character","name":"Heading 4 Char","basedOn":"Default Paragraph Font","characterFormat":{"italic":true,"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 5 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#2F5496FF"}},{"type":"Character","name":"Heading 6 Char","basedOn":"Default Paragraph Font","characterFormat":{"fontFamily":"Calibri Light","fontColor":"#1F3763FF"}}]}'; -editor.appendTo('#DocumentEditor'); -/*Open any existing document*/ -editor.open(documentString); - - diff --git a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/js/index.html deleted file mode 100644 index c523958a9..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/js/index.html +++ /dev/null @@ -1,31 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/ts/index.html deleted file mode 100644 index e1e4e14e5..000000000 --- a/ej2-javascript/code-snippet/document-editor/table-of-contents-cs1/ts/index.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - -
    Loading....
    -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/text-format-cs1/app.ts b/ej2-javascript/code-snippet/document-editor/text-format-cs1/app.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.css b/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.css deleted file mode 100644 index a1f9e52f4..000000000 --- a/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.css +++ /dev/null @@ -1,19 +0,0 @@ - -#loader { - color: #008cff; - height: 40px; - left: 45%; - position: absolute; - top: 45%; - width: 30%; - } - - #container { - visibility: hidden; - } - - #DocumentEditor{ - width:100%; - height: 100%; -} - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.js b/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.js deleted file mode 100644 index 7ffab904d..000000000 --- a/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.js +++ /dev/null @@ -1,146 +0,0 @@ -var documenteditor = new ej.documenteditor.DocumentEditor({ isReadOnly: false, enableSelection: true, enableEditorHistory: true, enableEditor: true, enableSfdtExport: true }); -function toolbarButtonClick(arg) { - switch (arg.item.id) { - case 'bold': - //Toggles the bold of selected content - documenteditor.editor.toggleBold(); - break; - case 'italic': - //Toggles the Italic of selected content - documenteditor.editor.toggleItalic(); - break; - case 'underline': - //Toggles the underline of selected content - documenteditor.editor.toggleUnderline('Single'); - break; - case 'strikethrough': - //Toggles the strikethrough of selected content - documenteditor.editor.toggleStrikethrough(); - break; - case 'subscript': - //Toggles the subscript of selected content - documenteditor.editor.toggleSubscript(); - break; - case 'superscript': - //Toggles the superscript of selected content - documenteditor.editor.toggleSuperscript(); - break; - } -} -//To change the font Style of selected content -function changeFontFamily(args) { - documenteditor.selection.characterFormat.fontFamily = args.value; - documenteditor.focusIn(); -} -//To Change the font Size of selected content -function changeFontSize(args) { - documenteditor.selection.characterFormat.fontSize = args.value; - documenteditor.focusIn(); -} -//To Change the font Color of selected content -function changeFontColor(args) { - documenteditor.selection.characterFormat.fontColor = args.currentValue.hex; - documenteditor.focusIn(); -} -documenteditor.selectionChange = () => { - setTimeout(() => { onSelectionChange(); }, 20); -}; -//Selection change to retrieve formatting -function onSelectionChange() { - if (documenteditor.selection) { - enableDisableFontOptions(); - // #endregion - } -} -function enableDisableFontOptions() { - var characterformat = documenteditor.selection.characterFormat; - var properties = [characterformat.bold, characterformat.italic, characterformat.underline, characterformat.strikeThrough]; - var toggleBtnId = ["bold", "italic", "underline", "strikethrough"]; - for (var i = 0; i < properties.length; i++) { - changeActiveState(properties[i], toggleBtnId[i]); - } -} -function changeActiveState(property, btnId) { - var toggleBtn = document.getElementById(btnId); - if ((typeof (property) == 'boolean' && property == true) || (typeof (property) == 'string' && property !== 'None')) - toggleBtn.classList.add("e-btn-toggle"); - else { - if (toggleBtn.classList.contains("e-btn-toggle")) - toggleBtn.classList.remove("e-btn-toggle"); - } -} -var fontStyle = ['Algerian', 'Arial', 'Calibri', 'Cambria', 'Cambria Math', 'Candara', 'Courier New', 'Georgia', 'Impact', 'Segoe Print', 'Segoe Script', 'Segoe UI', 'Symbol', 'Times New Roman', 'Verdana', 'Windings' -]; -var fontSize = ['8', '9', '10', '11', '12', '14', '16', '18', - '20', '22', '24', '26', '28', '36', '48', '72', '96']; -var toolBar = new ej.navigations.Toolbar({ - clicked: toolbarButtonClick, - items: [ - { - prefixIcon: 'e-de-ctnr-bold e-icons', - tooltipText: 'Bold', - id: 'bold', - }, - { - prefixIcon: 'e-de-ctnr-italic e-icons', - tooltipText: 'Italic', - id: 'italic', - }, - { - prefixIcon: 'e-de-ctnr-underline e-icons', - tooltipText: 'Underline', - id: 'underline', - }, - { - prefixIcon: 'e-de-ctnr-strikethrough e-icons', - tooltipText: 'Strikethrough', - id: 'strikethrough', - }, - { - prefixIcon: 'e-de-ctnr-subscript e-icons', - tooltipText: 'Subscript', - id: 'subscript', - }, - { - prefixIcon: 'e-de-ctnr-superscript e-icons', - tooltipText: 'Superscript', - id: 'superscript', - }, - { type: 'Separator' }, - { - type: 'Input', - template: new ej.inputs.ColorPicker({ - value: '#000000', - showButtons: true, - change: changeFontColor - }), - }, - { type: 'Separator' }, - { - type: 'Input', - template: new ej.dropdowns.ComboBox({ - dataSource: fontStyle, - width: 120, - index: 2, - allowCustom: true, - change: changeFontFamily, - showClearButton: false, - }), - }, - { - type: 'Input', - template: new ej.dropdowns.ComboBox({ - dataSource: fontSize, - width: 80, - allowCustom: true, - index: 2, - change: changeFontSize, - showClearButton: false, - }), - }, - ], -}); -toolBar.appendTo('#toolbar'); -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.ts b/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.ts deleted file mode 100644 index 9080e1348..000000000 --- a/ej2-javascript/code-snippet/document-editor/text-format-cs1/index.ts +++ /dev/null @@ -1,156 +0,0 @@ - - -import { DocumentEditor, Editor, Selection, EditorHistory, SfdtExport } from '@syncfusion/ej2-documenteditor'; -import { Toolbar } from '@syncfusion/ej2-navigations'; -import { ComboBox } from '@syncfusion/ej2-dropdowns'; -import { ColorPicker } from '@syncfusion/ej2-inputs'; -//Inject required modules. -DocumentEditor.Inject(Editor, Selection, EditorHistory, SfdtExport); -let documenteditor: DocumentEditor = new DocumentEditor({ height: '370px', isReadOnly: false, enableSelection: true, enableEditorHistory: true, enableEditor: true, enableSfdtExport: true }); - -function toolbarButtonClick(arg) { - switch (arg.item.id) { - case 'bold': - //Toggles the bold of selected content - documenteditor.editor.toggleBold(); - break; - case 'italic': - //Toggles the Italic of selected content - documenteditor.editor.toggleItalic(); - break; - case 'underline': - //Toggles the underline of selected content - documenteditor.editor.toggleUnderline('Single'); - break; - case 'strikethrough': - //Toggles the strikethrough of selected content - documenteditor.editor.toggleStrikethrough(); - break; - case 'subscript': - //Toggles the subscript of selected content - documenteditor.editor.toggleSubscript(); - break; - case 'superscript': - //Toggles the superscript of selected content - documenteditor.editor.toggleSuperscript(); - break; - } -} -//To change the font Style of selected content -function changeFontFamily(args) { - documenteditor.selection.characterFormat.fontFamily = args.value; - documenteditor.focusIn(); -} -//To Change the font Size of selected content -function changeFontSize(args) { - documenteditor.selection.characterFormat.fontSize = args.value; - documenteditor.focusIn(); -} -//To Change the font Color of selected content -function changeFontColor(args) { - documenteditor.selection.characterFormat.fontColor = args.currentValue.hex; - documenteditor.focusIn(); -} -documenteditor.selectionChange = () => { - setTimeout(() => { onSelectionChange(); }, 20); -}; -//Selection change to retrieve formatting -function onSelectionChange() { - if (documenteditor.selection) { - enableDisableFontOptions(); - // #endregion - } -} -function enableDisableFontOptions() { - var characterformat = documenteditor.selection.characterFormat; - var properties = [characterformat.bold, characterformat.italic, characterformat.underline, characterformat.strikethrough]; - var toggleBtnId = ["bold", "italic", "underline", "strikethrough"]; - for (var i = 0; i < properties.length; i++) { - changeActiveState(properties[i], toggleBtnId[i]); - } -} -function changeActiveState(property, btnId) { - let toggleBtn: HTMLElement = document.getElementById(btnId); - if ((typeof (property) == 'boolean' && property == true) || (typeof (property) == 'string' && property !== 'None')) - toggleBtn.classList.add("e-btn-toggle"); - else { - if (toggleBtn.classList.contains("e-btn-toggle")) - toggleBtn.classList.remove("e-btn-toggle"); - } -} -let fontStyle: string[] = ['Algerian', 'Arial', 'Calibri', 'Cambria', 'Cambria Math', 'Candara', 'Courier New', 'Georgia', 'Impact', 'Segoe Print', 'Segoe Script', 'Segoe UI', 'Symbol', 'Times New Roman', 'Verdana', 'Windings' -]; -let fontSize: string[] = ['8', '9', '10', '11', '12', '14', '16', '18', '20', '22', '24', '26', '28', '36', '48', '72', '96']; - -let toolBar: Toolbar = new Toolbar({ - clicked: toolbarButtonClick, - items: [ - { - prefixIcon: 'e-de-ctnr-bold e-icons', - tooltipText: 'Bold', - id: 'bold', - }, - { - prefixIcon: 'e-de-ctnr-italic e-icons', - tooltipText: 'Italic', - id: 'italic', - }, - { - prefixIcon: 'e-de-ctnr-underline e-icons', - tooltipText: 'Underline', - id: 'underline', - }, - { - prefixIcon: 'e-de-ctnr-strikethrough e-icons', - tooltipText: 'Strikethrough', - id: 'strikethrough', - }, - { - prefixIcon: 'e-de-ctnr-subscript e-icons', - tooltipText: 'Subscript', - id: 'subscript', - }, - { - prefixIcon: 'e-de-ctnr-superscript e-icons', - tooltipText: 'Superscript', - id: 'superscript', - }, - { type: 'Separator' }, - { - type: 'Input', - template: new ColorPicker({ - value: '#000000', - showButtons: true, - change: changeFontColor - }), - }, - { type: 'Separator' }, - { - type: 'Input', - template: new ComboBox({ - dataSource: fontStyle, - width: 120, - index: 2, - allowCustom: true, - change: changeFontFamily, - showClearButton: false, - }), - }, - { - type: 'Input', - template: new ComboBox({ - dataSource: fontSize, - width: 80, - allowCustom: true, - index: 2, - change: changeFontSize, - showClearButton: false, - }), - }, - ], -}); -toolBar.appendTo('#toolbar'); - -documenteditor.appendTo('#DocumentEditor'); - - diff --git a/ej2-javascript/code-snippet/document-editor/text-format-cs1/js/index.html b/ej2-javascript/code-snippet/document-editor/text-format-cs1/js/index.html deleted file mode 100644 index 658a88815..000000000 --- a/ej2-javascript/code-snippet/document-editor/text-format-cs1/js/index.html +++ /dev/null @@ -1,41 +0,0 @@ - - EJ2 Animation - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/text-format-cs1/systemjs.config.js b/ej2-javascript/code-snippet/document-editor/text-format-cs1/systemjs.config.js deleted file mode 100644 index f92e1ba9d..000000000 --- a/ej2-javascript/code-snippet/document-editor/text-format-cs1/systemjs.config.js +++ /dev/null @@ -1,49 +0,0 @@ -System.config({ - transpiler: "typescript", - typescriptOptions: { - compilerOptions: { - target: "umd", - module: "commonjs", - moduleResolution: "node", - emitDecoratorMetadata: true, - experimentalDecorators: true - } - }, - paths: { - "syncfusion:": "https://cdn.syncfusion.com/ej2/20.3.56/" - }, - map: { - main: "index.ts", - typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js", - "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js", - "@syncfusion/ej2-svg-base": "syncfusion:ej2-svg-base/dist/ej2-svg-base.umd.min.js", - "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js", - "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js", - "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js", - "@syncfusion/ej2-charts": "syncfusion:ej2-charts/dist/ej2-charts.umd.min.js", - "@syncfusion/ej2-maps": "syncfusion:ej2-maps/dist/ej2-maps.umd.min.js", - "@syncfusion/ej2-circulargauge": "syncfusion:ej2-circulargauge/dist/ej2-circulargauge.umd.min.js", - "@syncfusion/ej2-lineargauge": "syncfusion:ej2-lineargauge/dist/ej2-lineargauge.umd.min.js", - "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js", - "@syncfusion/ej2-dropdowns": "syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js", - "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js", - "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js", - "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js", - "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js", - "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js", - "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js", - "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js", - "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js", - "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js", - "@syncfusion/ej2-schedule": "syncfusion:ej2-schedule/dist/ej2-schedule.umd.min.js", - "@syncfusion/ej2-notifications": "syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js", - "@syncfusion/ej2-documenteditor": "syncfusion:ej2-documenteditor/dist/ej2-documenteditor.umd.min.js", - "@syncfusion/ej2-ribbon": "syncfusion:ej2-ribbon/dist/ej2-ribbon.umd.min.js", - "@syncfusion/ej2-office-chart": "syncfusion:ej2-office-chart/dist/ej2-office-chart.umd.min.js" - } -}); - -System.import('index.ts').catch(console.error.bind(console)).then(function () { - document.getElementById('loader').style.display = "none"; - document.getElementById('container').style.visibility = "visible"; -}); \ No newline at end of file diff --git a/ej2-javascript/code-snippet/document-editor/text-format-cs1/ts/index.html b/ej2-javascript/code-snippet/document-editor/text-format-cs1/ts/index.html deleted file mode 100644 index a95028d31..000000000 --- a/ej2-javascript/code-snippet/document-editor/text-format-cs1/ts/index.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - EJ2 Animation - - - - - - - - - - - - - - - - - - - -
    Loading....
    -
    -
    -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/ej2-javascript/document-editor/accessibility.md b/ej2-javascript/document-editor/accessibility.md deleted file mode 100644 index 343509ac1..000000000 --- a/ej2-javascript/document-editor/accessibility.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -layout: post -title: Accessibility in ##Platform_Name## Document editor component | Syncfusion -description: Learn here all about Accessibility in Syncfusion ##Platform_Name## Document editor component of Syncfusion Essential JS 2 and more. -control: Accessibility -platform: ej2-javascript -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Accessibility in Angular Document editor component - -The accessibility compliance for the Document editor component is outlined below. - -| Accessibility Criteria | Compatibility | -| -- | -- | -| [WCAG 2.2 Support](../common/accessibility#accessibility-standards) | Intermediate | -| [Section 508 Support](../common/accessibility#accessibility-standards) | Intermediate | -| [Screen Reader Support](../common/accessibility#screen-reader-support) | No | -| [Right-To-Left Support](../common/accessibility#right-to-left-support) | Yes | -| [Color Contrast](../common/accessibility#color-contrast) | Yes | -| [Mobile Device Support](../common/accessibility#mobile-device-support) | No | -| [Keyboard Navigation Support](../common/accessibility#keyboard-navigation-support) | Intermediate | -| [Accessibility Checker Validation](../common/accessibility#ensuring-accessibility) | Intermediate | -| [Axe-core Accessibility Validation](../common/accessibility#ensuring-accessibility) | Intermediate | - - -
    Yes - All features of the component meet the requirement.
    - -
    Intermediate - Some features of the component do not meet the requirement.
    - -
    No - The component does not meet the requirement.
    - -## Keyboard interaction - -Document editor supports [keyboard shortcuts](./keyboard-shortcut). - -## Ensuring accessibility - -The Document editor component's accessibility levels are ensured through an [accessibility-checker](https://www.npmjs.com/package/accessibility-checker) and [axe-core](https://www.npmjs.com/package/axe-core) software tools during automated testing. - -The accessibility compliance of the Document editor component is shown in the following sample. Open the [sample](https://ej2.syncfusion.com/accessibility/wordprocessor.html) in a new window to evaluate the accessibility of the Document editor component with accessibility tools. - -{% previewsample "page.domainurl/code-snippet/document-editor/accessibility-cs1" %} - -## See also - -- [Accessibility in Syncfusion® Angular components](../common/accessibility) \ No newline at end of file diff --git a/ej2-javascript/document-editor/bookmark.md b/ej2-javascript/document-editor/bookmark.md deleted file mode 100644 index 5523a23a2..000000000 --- a/ej2-javascript/document-editor/bookmark.md +++ /dev/null @@ -1,125 +0,0 @@ ---- -layout: post -title: Bookmark in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Bookmark in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Bookmark -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Bookmark in ##Platform_Name## Document editor control - -Bookmark is a powerful tool that helps you to mark a place in the document to find again easily. You can enter many bookmarks in the document and give each one a unique name to identify easily. - -Document Editor provides built-in dialog to add, delete, and navigate bookmarks within the document. To add a bookmark, select a portion of text in the document. After that, jump to the location or add links to it within the document using built-in hyperlink dialog. You can also delete bookmarks from a document. - ->Bookmark names need to begin with a letter. They can include both numbers and letters, but not spaces. To separate the words, use an underscore. ->Bookmark names starting with an underscore are called hidden bookmarks. For example, bookmarks generated for table of contents. - -## Add bookmark - -Using [`insertBookmark`](../api/document-editor/editor/#insertbookmark) method, Bookmark can be added to the selected text. - -```c# -container.documentEditor.editor.insertBookmark("Bookmark1"); -``` - -## Select Bookmark - -You can select the bookmark in the document using [`selectBookmark`](../api/document-editor/selection/#selectbookmark) method by providing Bookmark name to select as shown in the following code snippet. - -```c# -container.documentEditor.selection.selectBookmark("Bookmark1", true); -``` - ->Note: Second parameter is optional parameter and it denotes is exclude bookmark start and end from selection. If true, excludes bookmark start and end from selection. - -## Delete Bookmark - -You can delete bookmark in the document using [`deleteBookmark`](../api/document-editor/editor/#deletebookmark) method as shown in the following code snippet. - -```c# -container.documentEditor.editor.deleteBookmark("Bookmark1"); -``` - -## Get Bookmark from document - -You can get all the bookmarks in the document using [`getBookmarks`](../api/document-editor/#getbookmarks) method as shown in the following code snippet. - -```c# -container.documentEditor.getBookmarks(false); -``` - ->Note: Parameter denotes is include hidden bookmarks. If false, ignore hidden bookmark. - -## Get Bookmark from selection - -You can get bookmarks in current selection in the document using [`getBookmarks`](../api/document-editor/selection/#getbookmarks) method as shown in the following code snippet. - -```c# -container.documentEditor.selection.getBookmarks(false); -``` - -## Replace bookmark content - -You can replace bookmark content without removing the bookmark start and end for backtracking the bookmark content. - -```c# -container.documentEditor.selection.selectBookmark("Bookmark1", true); -container.documentEditor.editor.insertText('Hello World') -``` - -You can replace content by removing the bookmark start and end, thus the bookmark content can't be tracked in future. - -```c# -container.documentEditor.selection.selectBookmark("Bookmark1"); -container.documentEditor.editor.insertText('Hello World') -``` - -## Show or Hide bookmark - -You can show or hide the show square brackets around bookmarked items in Document editor component. - -The following example code illustrates how to show or hide square brackets around bookmarked items. - -```ts -container.documentEditorSettings.showBookmarks = true; -``` - -## Bookmark Dialog - -The following example shows how to open bookmark dialog in Document Editor. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs1" %} -{% endif %} - -## See Also - -* [Feature modules](../document-editor/feature-module) -* [Bookmark dialog](../document-editor/dialog#bookmark-dialog) diff --git a/ej2-javascript/document-editor/chart.md b/ej2-javascript/document-editor/chart.md deleted file mode 100644 index b98073e51..000000000 --- a/ej2-javascript/document-editor/chart.md +++ /dev/null @@ -1,66 +0,0 @@ ---- -layout: post -title: Chart in ##Platform_Name## Document Editor Control | Syncfusion -description: Learn here all about Chart in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Chart -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Chart in ##Platform_Name## Document Editor Control - -Document Editor provides chart preservation support. Using Document Editor, you can see the chart reports from your Word document. - -The following example shows chart preservation in Document Editor. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/chart-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/chart-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/chart-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/chart-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/chart-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/chart-cs1" %} -{% endif %} - -## Supported Chart Types - -The following chart types are supported in Document Editor -* Scatter_Markers -* Bubble -* Area -* Area_Stacked -* Area_Stacked_100 -* Bar_Clustered -* Bar_Stacked -* Bar_Stacked_100 -* Column_Clustered -* Column_Stacked -* Column_Stacked_100 -* Pie -* Doughnut -* Line -* Line_Markers -* Line_Markers_Stacked -* Line_Markers_Stacked_100 -* Line_Stacked -* Line_Stacked_100 diff --git a/ej2-javascript/document-editor/clipboard.md b/ej2-javascript/document-editor/clipboard.md deleted file mode 100644 index d64f940f2..000000000 --- a/ej2-javascript/document-editor/clipboard.md +++ /dev/null @@ -1,101 +0,0 @@ ---- -layout: post -title: Clipboard in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Clipboard in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Clipboard -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Clipboard in ##Platform_Name## Document editor control - -Document Editor takes advantage of system clipboard and allows you to copy or move a portion of the document into it in HTML format, so that it can be pasted in any application that supports clipboard. - -## Copy - -Copy a portion of document to system clipboard using built-in context menu of Document Editor. You can also do it programmatically using the following sample code. - -```ts -documentEditor.selection.copy(); -``` - -## Cut - -Cut a portion of document to system clipboard using built-in context menu of Document Editor. You can also do it programmatically using the following sample code. - -```ts -documentEditor.editor.cut(); -``` - -## Paste - -Due to limitations, you can paste contents from system clipboard in Document Editor only using the ‘CTRL + V’ keyboard shortcut. - ->Note: Due to browser limitation of getting content from system clipboard, paste using API and context menu option doesn't work. - -## Local paste (copy/paste within control) - -Document Editor expose API to enable local paste within the control. On enabling this, the following is performed: -* Selected contents will be stored to an internal clipboard in addition to system clipboard. -* Clipboard paste will be overridden, and internally stored data (SFDT data) that has formatted text will be pasted using paste() API in Document editor. - -Refer to the following sample code. - -```ts -//Initialize the Document Editor. -let editor: DocumentEditor = new DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); -//Enable the local paste. -editor.enableLocalPaste = true; -``` - -By default, **enableLocalPaste** is false. - -When local paste is enabled for a Document Editor instance, you can paste contents programmatically if the internal clipboard has stored data during last copy operation. Refer to the following sample code. - -```ts -documentEditor.editor.paste(); -``` - -### Paste options in context menu - -In Document editor, paste options in context menu will be in disabled state if you were try to copy/paste content from outside of Document editor. It gets enabled when **enableLocalPaste** is true and trying to copy/paste content inside Document editor. - ->Note: Due to browser limitation of getting content from system clipboard, paste using API and context menu option doesn't work. Hence, the paste option is disabled in context menu. -Alternatively, you can use the keyboard shortcuts, - -* Cut: Ctrl + X -* Copy: Ctrl + C -* Paste: Ctrl + V - -### EnableLocalPaste behaviour - -|**EnableLocalPaste** |**Paste behavior details**| -|--------------------------|----------------------| -|True |Allows to paste content that is copied from the same Document Editor component alone and prevents pasting content from system clipboard. Hence the content copied from outside Document Editor component can’t be pasted.
    Browser limitation of pasting from system clipboard using API and context menu options, will be resolved. So, you can copy and paste content within the Document Editor component using API and context menu options too.| -|False|Allows to paste content from system clipboard. Hence the content copied from both the Document Editor component and outside can be pasted.
    Browser limitation of pasting from system clipboard using API and context menu options, will remain as a limitation.| - -Note: -* Keyboard shortcut for pasting will work properly in both cases. -* Copying content from Document Editor component and pasting outside will work properly in both cases. - -## Paste with formatting - -Document Editor provides support to paste the system clipboard data with formatting. To enable clipboard paste with formatting options and copy/paste content from outside of Document editor, set the `enableLocalPaste` property in Document Editor to false and use this .NET Standard library [`Syncfusion.EJ2.WordEditor.AspNet.Core`]() by the web API service implementation. This library helps you to paste the system clipboard data with formatting. - -Refer this [page](../document-editor/web-services-overview) for more details. - -You can paste your system clipboard data in the following ways: -* **Keep Source Formatting** This option retains the character styles and direct formatting applied to the copied text. Direct formatting includes characteristics such as font size, italics, or other formatting that is not included in the paragraph style. -* **Match Destination Formatting** This option discards most of the formatting applied directly to the copied text, but it retains the formatting applied for emphasis, such as bold and italic when it is applied to only a portion of the selection. The text takes on the style characteristics of the paragraph where it is pasted. The text also takes on any direct formatting or character style properties of text that immediately precedes the cursor when the text is pasted. -* **Text Only** This option discards all formatting and non-text elements such as pictures or tables. The text takes on the style characteristics of the paragraph where it is pasted and takes on any direct formatting or character style properties of text that immediately precedes the cursor when the text is pasted. Graphical elements are discarded and tables are converted to a series of paragraphs. - -This paste option appear as follows. - -![Image](images/paste.PNG) - -## See Also - -* [Feature modules](../document-editor/feature-module) -* [Keyboard shortcuts](../document-editor/keyboard-shortcut#clipboard) diff --git a/ej2-javascript/document-editor/collaborative-editing/overview.md b/ej2-javascript/document-editor/collaborative-editing/overview.md deleted file mode 100644 index 0df8058ec..000000000 --- a/ej2-javascript/document-editor/collaborative-editing/overview.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -layout: post -title: Collaborative Editing in ##Platform_Name## Document editor control | Syncfusion -description: Learn about collaborative editing in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Collaborative Editing -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Collaborative Editing - -Allows multiple users to work on the same document simultaneously. This can be done in real-time, so that collaborators can see the changes as they are made. Collaborative editing can be a great way to improve efficiency, as it allows team members to work together on a document without having to wait for others to finish their changes. - -## Prerequisites - -- *Real-time Transport Protocol*: This protocol facilitates instant communication between clients and the server, ensuring immediate updates during collaborative editing. -- *Distributed Cache or Database*: Used to temporarily store the queue of editing operations. - -### Real time transport protocol - -- *Managing Connections*: Keeps active connections open for real-time collaboration, allowing seamless communication between users and the server. -- *Broadcasting Changes*: Ensures that any edits made by one user are instantly sent to all collaborators, keeping everyone on the same page with the latest document version. - -### Distributed cache or database - -To support collaborative editing, it's crucial to have a backing system that temporarily stores the editing operations of all active users. There are two primary options: - -- ***Distributed Cache***: Handles more HTTP requests per second than a database approach. For example, a server with 2 vCPUs and 8GB RAM can process up to 125 requests per second using a distributed cache. We highly recommend using a distributed cache as a backing system over a database. - -- ***Database***: With the same server configuration, it can handle up to 50 requests per second. - -Using the distributed cache or database all the editing operations are queued in order and conflict resolution is performed using `Operational Transformation` algorithm. - ->**Tips**: To calculate the average requests per second of your application Assume the editor in your live application is actively used by 1000 users and each user’s edit can trigger 2 to 5 requests per second. The total requests per second of your applications will be around 2000 to 5000. In this case, you can finalize a configuration to support around 5000 average requests per second. - ->**Note**: The above metrics are based solely on the collaborative editing module. Actual throughput may decrease depending on other server-side interactions, such as document importing, pasting formatted content, editing restrictions, and spell checking. Therefore, it is advisable to monitor your app’s traffic and choose a configuration that best suits your needs. - -#### See Also - -- [Collaborative editing using Redis cache in ASP.NET Core](../../document-editor/collaborative-editing/using-redis-cache-asp-net-core) -- [Collaborative editing using Java](../../document-editor/collaborative-editing/using-redis-cache-java) diff --git a/ej2-javascript/document-editor/collaborative-editing/using-redis-cache-asp-net-core.md b/ej2-javascript/document-editor/collaborative-editing/using-redis-cache-asp-net-core.md deleted file mode 100644 index a5fa3a9c1..000000000 --- a/ej2-javascript/document-editor/collaborative-editing/using-redis-cache-asp-net-core.md +++ /dev/null @@ -1,408 +0,0 @@ ---- -layout: post -title: Collaborative Editing in ##Platform_Name## Document editor control | Syncfusion -description: Learn how to enable collaborative editing using Redis in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Collaborative Editing -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Collaborative Editing - -Allows multiple users to work on the same document simultaneously. This can be done in real-time, so that collaborators can see the changes as they are made. Collaborative editing can be a great way to improve efficiency, as it allows team members to work together on a document without having to wait for others to finish their changes. - -## Prerequisites - -The following are needed to enable collaborative editing in Document Editor. - -* `SignalR` -* `Redis` - -## SignalR - -In collaborative editing, real-time communication is Essential® for users to see each other's changes instantly. We use a real-time transport protocol to efficiently send and receive data as edits occur. For this, we utilize SignalR, which supports real-time data exchange between the client and server. SignalR ensures that updates are transmitted immediately, allowing seamless collaboration by handling the complexities of connection management and offering reliable communication channels. - -To make SignalR work in a distributed environment (with more than one server instance), it needs to be configured with either Azure SignalR Service or a Redis backplane. - -### Scale-out SignalR using Azure SignalR service - -Azure SignalR Service is a scalable, managed service for real-time communication in web applications. It enables real-time messaging between web clients (browsers) and your server-side application(across multiple servers). - -Below is a code snippet to configure Azure SignalR in an ASP.NET Core application using the ```AddAzureSignalR``` method - -```csharp -builder.Services.AddSignalR() .AddAzureSignalR("", options => { - // Specify the channel name - options.Channels.Add("document-editor"); - }); -``` - -### Scale-out SignalR using Redis - -Using a Redis backplane, you can achieve horizontal scaling of your SignalR application. The SignalR leverages Redis to efficiently broadcast messages across multiple servers. This allows your application to handle large user bases with minimal latency. - -In the SignalR app, install the following NuGet package: -* ` Microsoft.AspNetCore.SignalR.StackExchangeRedis` - -Below is a code snippet to configure Redis backplane in an ASP.NET Core application using the ```AddStackExchangeRedis ``` method - -```csharp -builder.Services.AddSignalR().AddStackExchangeRedis(""); -``` -Configure options as needed: - -The following example shows how to add a channel prefix in the ConfigurationOptions object. - -```csharp -builder.Services.AddDistributedMemoryCache().AddSignalR().AddStackExchangeRedis(connectionString, options => - { - options.Configuration.ChannelPrefix = "document-editor"; - }); -``` - -## Redis - -In collaborative editing, Redis is used to store temporary data that helps queue editing operations and resolve conflicts using the `Operational Transformation` algorithm. - -All editing operations in collaborative editing are stored in the Redis cache. To prevent memory buildup, we can configure a `SaveThreshold` limit at the application level. If the `SaveThreshold` is 100, editing operations up to twice the save threshold limit are kept in Redis per document. Once exceeded, the first 100 operations (as defined by the save threshold) are removed from the cache and automatically saved to the source input document. - -The configuration and store size of the Redis cache can be adjusted based on the following considerations. - -- *Storage Requirements*: A minimum of 400KB of cache memory is needed for editing a single document, with the capacity to store up to 100 editing operations. Storage needs may increase based on following factor. - - *Images*: Increases with the number of images added to the document. - - *Pasted content*: Depends on the size of the SFDT content. -- *Connection Limits*: Redis has a limit on concurrent connections. Choose the Redis configuration based on your user base to ensure optimal performance. - -> For better performance, we recommend to have minimum `SaveThreshold` limit of 100. - -## How to enable collaborative editing in client side - -### Step 1: Enable collaborative editing in Document Editor - -To enable collaborative editing, inject `CollaborativeEditingHandler` and set the property `enableCollaborativeEditing` to true in the Document Editor, like in the code snippet below. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/index.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/index.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -### Step 2: Configure SignalR to send and receive changes - -To broadcast the changes made and receive changes from remote users, configure SignalR like below. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/script-1.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/script-1.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -### Step 3: Join SignalR room while opening the document - -When opening a document, we need to generate a unique ID for each document. These unique IDs are then used to create rooms using SignalR, which facilitates sending and receiving data from the server. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/script-2.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/script-2.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -### Step 4: Broadcast current editing changes to remote users - -Changes made on the client-side need to be sent to the server-side to broadcast them to other connected users. To send the changes made to the server, use the method shown below from the document editor using the `contentChange` event. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/script-3.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-cs1/script-3.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -## How to enable collaborative editing in ASP.NET Core - -### Step 1: Configure SignalR in ASP.NET Core - -We are using Microsoft SignalR to broadcast the changes. Please add the following configuration to your application's `Program.cs` file. - -```csharp - using Microsoft.Azure.SignalR; - ..... - builder.Services.AddSignalR(); - ..... - ..... - ..... - app.MapHub("/documenteditorhub"); - ..... - ..... -``` - -### Step 2: Configure SignalR hub to create room for collaborative editing session - -To manage groups for each document, create a folder named "Hub" and add a file named `DocumentEditorHub.cs` inside it. Add the following code to the file to manage SignalR groups using room names. - -Join the group by using unique id of the document by using `JoinGroup` method. - -```csharp -static Dictionary userManager = new Dictionary(); - internal static Dictionary> groupManager = new Dictionary>(); - - // Join to the specified room name - public async Task JoinGroup(ActionInfo info) - { - if (!userManager.ContainsKey(Context.ConnectionId)) - { - userManager.Add(Context.ConnectionId, info); - } - info.ConnectionId = Context.ConnectionId; - //Add the current connected use to the specified group - await Groups.AddToGroupAsync(Context.ConnectionId, info.RoomName); - if (groupManager.ContainsKey(info.RoomName)) - { - await Clients.Caller.SendAsync("dataReceived", "addUser", groupManager[info.RoomName]); - } - lock (groupManager) - { - if (groupManager.ContainsKey(info.RoomName)) - { - groupManager[info.RoomName].Add(info); - } - else - { - List actions = new List - { - info - }; - groupManager.Add(info.RoomName, actions); - } - } - // Notify other users in the group about new user joined the collaborative editing session. - Clients.GroupExcept(info.RoomName, Context.ConnectionId).SendAsync("dataReceived", "addUser", info); - } - -``` - -Handle user disconnection using SignalR. - -```csharp -//Handle disconnection from group. - public override Task OnDisconnectedAsync(Exception? e) - { - string roomName = userManager[Context.ConnectionId].RoomName; - if (groupManager.ContainsKey(roomName)) - { - groupManager[roomName].Remove(userManager[Context.ConnectionId]); - - if (groupManager[roomName].Count == 0) - { - groupManager.Remove(roomName); - //If all user disconnected from current room. Auto save the change to source document. - CollaborativeEditingController.UpdateOperationsToSourceDocument(roomName, “<>”, false); - } - } - - if (userManager.ContainsKey(Context.ConnectionId)) - { - //Notify other user in the group about user exit the collaborative editing session - Clients.OthersInGroup(roomName).SendAsync("dataReceived", "removeUser", Context.ConnectionId); - Groups.RemoveFromGroupAsync(Context.ConnectionId, roomName); - userManager.Remove(Context.ConnectionId); - } - return base.OnDisconnectedAsync(e); - } - -``` - -### Step 3: Configure Redis cache connection string in application level - -Configure the Redis that stores temporary data for the collaborative editing session. Provide the Redis connection string in `appsettings.json` file. - -```json -..... - "ConnectionStrings": { - "RedisConnectionString": "<>" - } -..... - -``` - -### Step 4: Configure Web API actions for collaborative editing - -#### Import File - -1. When opening a document, check the Redis cache for pending operations and retrieve them for the collaborative editing session. -2. If pending operations exist, apply them to the WordDocument instance using the `UpdateActions` method before converting it to the SFDT format. - -```csharp -public string ImportFile([FromBody] FileInfo param) - { - ..... - ..... - DocumentContent content = new DocumentContent(); - - ..... - //Get source document from database/file system/blob storage - WordDocument document = GetSourceDocument(param.fileName); - ..... - //Get the temporary operations - List actions = await GetPendingOperations(param.fileName, 0, -1); - if(actions!=null && actions.Count > 0) - { - //Apply temporary data to the document. - document.UpdateActions(actions); - } - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - content.version = 0; - content.sfdt = json; - return Newtonsoft.Json.JsonConvert.SerializeObject(content); - } - -``` - -#### Update editing records to Redis cache. - -Each edit operation performed by the user is sent to the server and pushed into a Redis list data structure. Each operation is assigned a version number upon insertion into Redis. - -After inserting the record into the server, the position of the current editing operation must be transformed relative to any previous editing operations not yet synced with the client using the `TransformOperation` method to resolve any potential conflicts with the help of the `Operational Transformation` algorithm. - -Once the conflict is resolved, the current operation is broadcast to all connected users within the group. - -```csharp -public async Task UpdateAction([FromBody] ActionInfo param) -{ - try - { - ActionInfo modifiedAction = AddOperationsToCache(param); - //After transformation broadcast changes to all users in the gropu - await _hubContext.Clients.Group(param.RoomName).SendAsync("dataReceived", "action", modifiedAction); - return modifiedAction; - } - catch - { - return null; - } -} - -private ActionInfo AddOperationsToCache(ActionInfo action) - { - int clientVersion = action.Version; - string insertScript = "-------" - ………… - ………… - ………… - ………… - - IDatabase database = _redisConnection.GetDatabase(); - // Define the keys for Redis operations based on the action's room name - RedisKey[] keys = new RedisKey[] { action.RoomName + CollaborativeEditingHelper.VersionSuffix, action.RoomName, action.RoomName + CollaborativeEditingHelper.RevisionSuffix }; - // Serialize the action and prepare values for the Redis script - RedisValue[] values = new RedisValue[] { JsonConvert.SerializeObject(action), clientVersion.ToString(), CollaborativeEditingHelper.SaveThreshold.ToString() }; - // Execute the Lua script in Redis and store the results - RedisResult[] results = (RedisResult[])await database.ScriptEvaluateAsync(insertScript, keys, values); - - List previousOperations = ((RedisResult[])results[1]).Select(value => JsonConvert.DeserializeObject(value.ToString())).ToList(); - previousOperations.ForEach(op => op.Version = ++clientVersion); - if (previousOperations.Count > 1) - { - // Set the current action to the last operation in the list - action = previousOperations.Last(); - // Transform operations that have not been transformed yet - previousOperations.Where(op => !op.IsTransformed).ToList().ForEach(op => CollaborativeEditingHandler.TransformOperation(op, previousOperations)); - } - action = actions[actions.Count - 1]; - action.Version = updateVersion; - //Return the transformed operation to broadcast it to other clients. - return action; - } - -``` - -#### Add Web API to get previous operation as a backup to get lost operations - -On the client side, messages broadcast using SignalR might be received out of order or lost due to network issues. In such cases, we need a backup method to retrieve missing operations from Redis. By using the following method, we can retrieve all operations performed after the last successful client-synchronized version and return any missing operations to the requesting client. - -```csharp - public async Task GetActionsFromServer(ActionInfo param) - { - try - { - // Initialize necessary variables from the parameters and helper class - int saveThreshold = CollaborativeEditingHelper.SaveThreshold; - string tableName = param.RoomName; - int lastSyncedVersion = param.Version; - int clientVersion = param.Version; - - // Retrieve the database connection - IDatabase database = _redisConnection.GetDatabase(); - - // Fetch actions that are effective and pending based on the last synced version - List actions = await GetEffectivePendingVersion(tableName, lastSyncedVersion); - - // Increment the version for each action sequentially - actions.ForEach(action => action.Version = ++clientVersion); - - // Filter actions to only include those that are newer than the client's last known version - actions = actions.Where(action => action.Version > lastSyncedVersion).ToList(); - - // Transform actions that have not been transformed yet - actions.Where(action => !action.IsTransformed).ToList() - .ForEach(action => CollaborativeEditingHandler.TransformOperation(action, actions)); - - // Serialize the filtered and transformed actions to JSON and return - return Newtonsoft.Json.JsonConvert.SerializeObject(actions); - } - catch (Exception ex) - { - // In case of an exception, return an empty JSON object - return "{}"; - } - } -``` - -Full version of the code discussed about can be found in below GitHub location. - -GitHub Example: [`Collaborative editing examples`](https://github.com/SyncfusionExamples/EJ2-Document-Editor-Collaborative-Editing) \ No newline at end of file diff --git a/ej2-javascript/document-editor/collaborative-editing/using-redis-cache-java.md b/ej2-javascript/document-editor/collaborative-editing/using-redis-cache-java.md deleted file mode 100644 index 4a45bcb93..000000000 --- a/ej2-javascript/document-editor/collaborative-editing/using-redis-cache-java.md +++ /dev/null @@ -1,349 +0,0 @@ ---- -layout: post -title: Collaborative Editing in ##Platform_Name## Document editor control | Syncfusion -description: Learn how to enable collaborative editing in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Collaborative Editing Java -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Collaborative Editing Java - -Allows multiple users to work on the same document simultaneously. This can be done in real-time, so that collaborators can see the changes as they are made. Collaborative editing can be a great way to improve efficiency, as it allows team members to work together on a document without having to wait for others to finish their changes. - - -## Prerequisites - -The following are needed to enable collaborative editing in Document Editor. - -- `SockJS` -- `Redis` - -## How to enable collaborative editing in client side - -### Step 1: Enable collaborative editing in Document Editor - -To enable collaborative editing, inject `CollaborativeEditingHandler` and set the property `enableCollaborativeEditing` to true in the Document Editor, like in the code snippet below. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/index.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/index.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -### Step 2: Configure SockJS to send and receive changes - -To broadcast the changes made and receive changes from remote users, configure SockJS like below. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/script-1.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/script-1.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -### Step 3: Subscribe to specific topic while opening the document - -When opening a document, we need to generate a unique ID for each document. These unique IDs are then used to create rooms using SockJS, which facilitates sending and receiving data from the server. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/script-2.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/script-2.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -### Step 4: Broadcast current editing changes to remote users - -Changes made on the client-side need to be sent to the server-side to broadcast them to other connected users. To send the changes made to the server, use the method shown below from the document editor using the `contentChange` event. - -{% if page.publishingplatform == "typescript" %} -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/script-3.ts %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/collaborative-editing-java-cs1/script-3.js %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -## How to enable collaborative editing in Java - -### Step 1: Configure SockJS hub to create room for collaborative editing session. - -To manage groups for each document, create a folder named “Hub” and add a file named ``` DocumentEditorHub.java ``` inside it. Add the following code to the file to manage SockJS groups using room names. - -Join the group by using unique id of the document by using `joinGroup` method. - -```java -@MessageMapping("/join/{documentName}") -public void joinGroup(ActionInfo info, SimpMessageHeaderAccessor headerAccessor, - @DestinationVariable String documentName) throws JsonProcessingException { - // To get the connection Id - String connectionId = headerAccessor.getSessionId(); - info.setConnectionId(connectionId); - String docName = info.getRoomName(); - HashMap additionalHeaders = new HashMap<>(); - additionalHeaders.put("action", "connectionId"); - MessageHeaders headers = new MessageHeaders(additionalHeaders); - // send the connection Id to the client - broadcastToRoom(docName, info, headers); - ………… - ………… - ………… -} - -public static void broadcastToRoom(String roomName, Object payload, MessageHeaders headers) { - messagingTemplate.convertAndSend("/topic/public/" + roomName, MessageBuilder.createMessage(payload, headers)); -} -``` -### Step 2: Handle user disconnection using SockJS. - -```java -@EventListener -public void handleWebSocketDisconnectListener(SessionDisconnectEvent event) throws Exception { - String sessionId = event.getSessionId(); - try (Jedis jedis = RedisSubscriber.getJedis()) { - // to get the user details of the provided sessionId - String docName = jedis.hget("documentMap", sessionId); - // Publish a message indicating the user's departure from the group - jedis.publish(docName, "LEAVE|" + sessionId); - } catch (JedisConnectionException e) { - System.out.println(e); - } -} -``` - -### Step 3: Configure Redis cache connection string in application level. - -Configure the Redis that stores temporary data for the collaborative editing session. Provide the Redis connection string in `application.properties` file. - -```java -//Redis configuration -spring.datasource.redishost= "" -spring.datasource.redisport= "" -spring.datasource.redispassword= "" -spring.datasource.redisssl = -``` - -### Step 4: Configure Web API actions for collaborative editing. - -#### Import File -- When opening a document, create a Redis cache to store temporary data for the collaborative editing session. -- If the Redis cache already exists, retrieve the records from the Redis cache and apply them to the WordProcessorHelper instance using the `updateActions` method before converting it to the SFDT format. - -```java -public String importFile(@RequestBody FilesPathInfo file) throws Exception { - try { - ClassLoader classLoader = getClass().getClassLoader(); - // Get source document from database/file system/blob storage - WordProcessorHelper document = getDocumentFromBucketS3(file.getFileName(), datasourceAccessKey, - datasourceSecretKey, datasourceBucketName); - documentName=file.getFileName(); - // Get the list of pending operations for the document - List actions = getPendingOperations(file.getFileName(), 0, -1); - if (actions != null && actions.size() > 0) { - // If there are any pending actions, update the document with these actions - document.updateActions(actions); - } - // Serialize the updated document to SFDT format - String json = WordProcessorHelper.serialize(document); - // Return the serialized content as a JSON string - return json; - } catch (Exception e) { - e.printStackTrace(); - return "{\"sections\":[{\"blocks\":[{\"inlines\":[{\"text\":" + e.getMessage() + "}]}]}]}"; - } -} -``` - -#### Update editing records to Redis -- Each edit operation made by the user is sent to the server and is pushed to the Redis. Each operation receives a version number after being inserted into the Redis. -- After inserting the records to the server, the position of the current editing operation must be transformed against any previous editing operations not yet synced with the client using the TransformOperation method. -- After performing the transformation, the current operation is broadcast to all connected users within the group. - -```java -public ActionInfo updateAction(@RequestBody ActionInfo param) throws Exception { - String roomName = param.getRoomName(); - ActionInfo transformedAction = addOperationsToCache(param); - HashMap action = new HashMap<>(); - action.put("action", "updateAction"); - DocumentEditorHub.publishToRedis(roomName, transformedAction); - DocumentEditorHub.broadcastToRoom(roomName, transformedAction, new MessageHeaders(action)); - return transformedAction; -} - -private ActionInfo addOperationsToCache(ActionInfo action) throws Exception { - int clientVersion = action.getVersion(); - ………… - ………… - ………… - - // Define the keys for Redis operations based on the action's room name - String[] keys = { roomName + CollaborativeEditingHelper.versionInfoSuffix, roomName, - roomName + CollaborativeEditingHelper.revisionInfoSuffix, - roomName + CollaborativeEditingHelper.actionsToRemoveSuffix }; - // Prepare values for the Redis script - String[] values = { serializedAction, String.valueOf(clientVersion), - String.valueOf(CollaborativeEditingHelper.saveThreshold) }; - - ………… - ………… - ………… - // Return the updated action - return action; -} -``` - -#### Add Web API to get previous operation as a backup to get lost operations -On the client side, messages send from server using SockJS may be received in a different order, or some operations may be missed due to network issues. In these cases, we need a backup method to retrieve missing records from the Redis. -Using the following method, we can retrieve all operations after the last successful client-synced version and return all missing operations to the requesting client. - -```java -@PostMapping("/api/collaborativeediting/GetActionsFromServer") -public String getActionsFromServer(@RequestBody ActionInfo param) throws ClassNotFoundException { - try (Jedis jedis = RedisSubscriber.getJedis()) { - // Initialize necessary variables from the parameters and helper class - int saveThreshold = CollaborativeEditingHelper.saveThreshold; - String roomName = param.getRoomName(); - int lastSyncedVersion = param.getVersion(); - int clientVersion = param.getVersion(); - // Fetch actions that are effective and pending based on the last synced version - List actions = GetEffectivePendingVersion(roomName, lastSyncedVersion, jedis); - List currentAction = new ArrayList<>(); - - for (ActionInfo action : actions) { - // Increment the version for each action sequentially - action.setVersion(++clientVersion); - - // Filter actions to only include those that are newer than the client's last - // known version - if (action.getVersion() > lastSyncedVersion) { - // Transform actions that have not been transformed yet - if (!action.isTransformed()) { - CollaborativeEditingHandler.transformOperation(action, new ArrayList<>(actions)); - } - currentAction.add(action); - } - } - // Serialize the filtered and transformed actions to JSON and return - return gson.toJson(currentAction); - } catch (Exception ex) { - ex.printStackTrace(); - // In case of an exception, return an empty JSON object - return "{}"; - } -} -``` -## How to perform Scaling in Collaborative Editing. - -### Role of Scaling in Collaborative editing -As the number of users increases, collaborative application face challenges in maintaining responsiveness and performance. This is where scaling becomes crucial. Scaling refers to the ability of an application to handle growing demands by effectively distributing the workload across multiple resources. - -During scaling the users may connected to different servers, so collaborative editing application introduces a specific challenge like, updating the edit operations to all the users connected in different serves. To overcome this issue you need to use ``` Redis Cache pub/sub ``` for message relay(syncing the editing operations to the users connected to different server instance) - -### Use of Redis Pub/Sub in scaling environment -Redis offers Pub/Sub functionality. The publish/subscribe (pub/sub) pattern provides asynchronous communication among multiple AWS services without creating interdependency. When a user edits a document, the application can publish the changes to a Redis channel. Clients (in different server instances) subscribed to that channel receive real-time updates, reflecting the changes in their document views. - -### Steps to configure Redis in Collaborative Editing Application -Refer to the below steps to know about the Redis pub/sub implementation to sync the messages. - -#### Step 1: Configure Redis in application level to establish the connection. - -```java -//Redis configuration -spring.datasource.redishost= "" -spring.datasource.redisport= "" -``` -#### Step 2: Publish each editing operation to a Redis channel - -Publish each editing operation to Redis channel with the room name. This will send notifications to all the users(in different servers) subscribed to that specific channel. Refer to the publishToRedis() method in DocumentEditorHub.Java for details. - -```java -try (Jedis jedis = RedisSubscriber.jedisPool.getResource()) { -jedis.publish("collaborativeedtiting", new com.fasterxml.jackson.databind.ObjectMapper().writeValueAsString(payload)); - break; - } catch (JedisConnectionException e) { - } -``` -#### Step 3: Subscribe to the specific channel using the Redis cache 'Subscribe' - - Redis cache will be initialized and subscribe to the specific channel using the Redis cache 'Subscribe' option. This ensures that users in any server will get notified when an editing operation is published to the Redis cache using the onMessage() API. Refer to the code snippet in RedisSubscriber.Java for details. - - ```java -@PostConstruct - public void subscribeToInstanceChannel() { - //Subscriber to `collaborativeediting` - String channel = "collaborativeedtiting"; - new Thread(() -> { - JedisPoolConfig poolConfig = new JedisPoolConfig(); - jedisPool = new JedisPool(poolConfig, REDIS_HOST, REDIS_PORT); - try (Jedis jedis = jedisPool.getResource()) { - jedis.subscribe(new JedisPubSub() { - @Override - public void onMessage(String channel, String message) { - ------------- - ------ - // Message will be broadcasted to all the users connected to that room using sockjs - DocumentEditorHub.broadcastToRoom(action.getRoomName(), action, updateActionheaders); - } catch (JsonProcessingException e) { - e.printStackTrace(); - } - } - @Override - public void onSubscribe(String channel, int subscribedChannels) { - System.out.println("Subscribed to channel: " + channel); - } - }, channel); - } catch (JedisConnectionException e) { - // Handle the connection exception - System.out.println("Connection failed. Retrying ..."); - } - }).start(); - } -``` - - -Full version of the code discussed about can be found in below GitHub location. - -GitHub Example: [`Collaborative editing examples`](https://github.com/SyncfusionExamples/EJ2-Document-Editor-Collaborative-Editing) diff --git a/ej2-javascript/document-editor/comments.md b/ej2-javascript/document-editor/comments.md deleted file mode 100644 index 0e510f6ec..000000000 --- a/ej2-javascript/document-editor/comments.md +++ /dev/null @@ -1,323 +0,0 @@ ---- -layout: post -title: Comments in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Comments in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Comments -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Comments in ##Platform_Name## Document editor control - -Document Editor allows you to add comments to documents. You can add, navigate and remove comments in code and from the UI. - -## Add a new comment - -Comments can be inserted to the selected text. - -```ts -//Add new commnt in the document. -documentEditor.editor.insertComment('Test comment'); -``` - -## Add a New Comment with Date, Author, and Status - -Comments can be inserted into the selected text with a specified date, author, and status [`insertComment`](../api/document-editor/editor/#insertcomment). - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -// In this example, a comment with the text "Hello world" -// is added by the author Nancy Davolio on July 23, 2024, at 2:30 PM. -// The isResolved status is set to false. - -// Create a specific date: July 23, 2024, at 2:30:00 PM. -// Note: July is represented by 6 (0-based index). -let specificDate = new Date(2024, 6, 23, 14, 30, 0); - - -// Define the properties of the comment including author, date, and resolution status. -let commentProperties: CommentProperties = { - author: 'Nancy Davolio', // The author of the comment. - dateTime: specificDate, // The date and time when the comment is created. - isResolved: false // The status of the comment; false indicates it is unresolved. -}; - -// Insert the comment with the specified properties into the document editor. -documentEditor.editor.insertComment('Hello world', commentProperties); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -// In this example, a comment with the text "Hello world" -// is added by the author Nancy Davolio on July 23, 2024, at 2:30 PM. -// The isResolved status is set to false. - -// Create a specific date: July 23, 2024, at 2:30:00 PM. -// Note: July is represented by 6 (0-based index). -var specificDate = new Date(2024, 6, 23, 14, 30, 0); - -// Define the properties of the comment including author, date, and resolution status. -var commentProperties = { - author: 'Nancy Davolio', // The author of the comment. - dateTime: specificDate, // The date and time when the comment is created. - isResolved: false // The status of the comment; false indicates it is unresolved. -}; - -// Insert the comment with the specified properties into the document editor. -documentEditor.editor.insertComment('Hello world', commentProperties); -{% endhighlight %} -{% endif %} - -## Add a Reply Comment with Date, Author, and Status - -Reply comments can be inserted into the parent comment with a specified date, author using [`insertReplyComment`](../api/document-editor/editor/#insertreplycomment). - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -// In this example, a comment with the text "Hello world" -// is added by the author Nancy Davolio on July 23, 2024, at 2:30 PM. -// The isResolved status is set to false. - -// Create a specific date: July 23, 2024, at 2:30:00 PM. -// Note: July is represented by 6 (0-based index). -let specificDate = new Date(2024, 6, 23, 14, 30, 0); - -// Define the properties of the comment including author, date, and resolution status. -let commentProperties: CommentProperties = { - author: 'Nancy Davolio', // The author of the comment. - dateTime: specificDate, // The date and time when the comment is created. - isResolved: false // The status of the comment; false indicates it is unresolved. -}; - -// Insert the comment with the specified properties into the Document Editor. -let comment: Comment = documentEditor.editor.insertComment('Hello world', commentProperties); -// Insert a reply comment with specified properties into the Document Editor -documentEditor.editor.insertReplyComment(comment.id, 'Hello world', commentProperties); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -// In this example, a comment with the text "Hello world" -// is added by the author Nancy Davolio on July 23, 2024, at 2:30 PM. -// The isResolved status is set to false. - -// Create a specific date: July 23, 2024, at 2:30:00 PM. -// Note: July is represented by 6 (0-based index). -var specificDate = new Date(2024, 6, 23, 14, 30, 0); - -// Define the properties of the comment including author, date, and resolution status. -var commentProperties = { - author: 'Nancy Davolio', // The author of the comment. - dateTime: specificDate, // The date and time when the comment is created. - isResolved: false // The status of the comment; false indicates it is unresolved. -}; - -// Insert the comment with the specified properties into the document editor. -var comment = documentEditor.editor.insertComment('Hello world', commentProperties); -// Insert a reply comment with specified properties into the Document Editor -documentEditor.editor.insertReplyComment(comment.id, 'Hello world', commentProperties); -{% endhighlight %} -{% endif %} - -## Get Comments - -Document Editor allows to get the comments along with its reply and comment properties using [`getComments`](../api/document-editor/#getComments). - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -//Get Comments in the document along with the properties author, date, status. -let commentinfo: CommentInfo[] = container.documentEditor.getComments(); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -//Get Comments in the document along with the properties author, date, status. -var commentInfo = container.documentEditor.getComments(); -{% endhighlight %} -{% endif %} - - -## Comment navigation - -Next and previous comments can be navigated using the below code snippet. - -```ts -//Navigate to next comment -documentEditor.selection.navigateNextComment(); - -//Navigate to previous comment -documentEditor.selection.navigatePreviousComment(); -``` - - -## Delete comment - -Current comment can be be deleted using [`deleteComment`](../api/document-editor/editor/#deletecomment). - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -//Delete the current selected comment. -container.documentEditor.editor.deleteComment(); - -//Get Comments in the document along with the properties author, date, status. -let commentinfo: CommentInfo[] = container.documentEditor.getComments(); - -//Delete the particular parent comments and all of its reply comments -container.documentEditor.editor.deleteComment(commentinfo[0].id); - -//Delete the particular reply comment. -container.documentEditor.editor.deleteComment(commentinfo[0].replies[0].id); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -//Delete the current selected comment. -container.documentEditor.editor.deleteComment(); - -//Get Comments in the document along with the properties author, date, status. -var commentinfo = container.documentEditor.getComments(); - -//Delete the particular parent comments and all of its reply comments -container.documentEditor.editor.deleteComment(commentinfo[0].id); - -//Delete the particular reply comment. -container.documentEditor.editor.deleteComment(commentinfo[0].replies[0].id); -{% endhighlight %} -{% endif %} - -## Delete all comment - -All the comments in the document can be deleted using the below code snippet. - -```ts -//Delete all the comments present in the current document. -documentEditor.editor.deleteAllComments(); -``` - -## Protect the document in comments only mode - -Document Editor provides support for protecting the document with `CommentsOnly` protection. In this protection, user allowed to add or edit comments alone in the document. - -Document editor provides an option to protect and unprotect document using [`enforceProtection`](../api/document-editor/editor/#enforceprotection) and [`stopProtection`](../api/document-editor/editor/#stopprotection) API. - -The following example code illustrates how to enforce and stop protection in Document editor container. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = - 'http://localhost:5000/api/documenteditor/'; -container.appendTo('#container'); - -//enforce protection -container.documentEditor.editor.enforceProtection('123', 'CommentsOnly'); - -//stop the document protection -container.documentEditor.editor.stopProtection('123'); -``` - -Comment only protection can be enabled in UI by using [Restrict Editing pane](../document-editor/document-management#restrict-editing-pane) - -![Enable comment only protection](images/commentsonly.png) - ->Note: In enforce Protection method, first parameter denotes password and second parameter denotes protection type. Possible values of protection type are `NoProtection |ReadOnly |FormFieldsOnly |CommentsOnly`. In stop protection method, parameter denotes the password. - -## Mention Support in comments - -Mention support displays a list of items that users can select or tag from the suggested list. To use this feature, type the @ character in the comment box and select or tag the user from the suggestion list. - -The following example illustrates how to enable mention support in Document Editor - -```ts -let mentionData: any = [ - { "Name": "Mary Kate", "EmailId": "marry@company.com" }, - { "Name": "Andrew James", "EmailId": "james@company.com" }, - { "Name": "Andrew Fuller", "EmailId": "andrew@company.com"} -]; -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true,height: '590px', -// Enable mention support in document editor - documentEditorSettings: { - mentionSettings: { dataSource: mentionData, fields: { text: 'Name' }}, - } -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -## Events - -DocumentEditor provides [beforeCommentAction](../api/document-editor-container/#beforecommentaction) event, which is triggered on comment actions like Post, edit, reply, resolve and reopen. This event provides an opportunity to perform custom logic on comment actions like Post, edit, reply, resolve and reopen. The event handler receives the [CommentActionEventArgs](../api/document-editor/commentActionEventArgs) object as an argument, which allows access to information about the comment. - -To demonstrate a specific use case, let’s consider an example where we want to restrict the delete functionality based on the author’s name. The following code snippet illustrates how to allow only the author of a comment to delete: - -{% if page.publishingplatform == "typescript" %} - -```ts - -import { DocumentEditorContainer, Toolbar, CommentActionEventArgs } from '@syncfusion/ej2-documenteditor'; - -// Inject require modules. -DocumentEditorContainer.Inject(Toolbar); -let mentionData: any = [ - { "Name": "Mary Kate", "EmailId": "marry@company.com" }, - { "Name": "Andrew James", "EmailId": "james@company.com" }, - { "Name": "Andrew Fuller", "EmailId": "andrew@company.com"} -]; -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true,height: '590px', beforeCommentAction:beforecomment, -// Enable mention support in document editor - documentEditorSettings: { - mentionSettings: { dataSource: mentionData, fields: { text: 'Name' }}, - } -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -container.currentUser="Guest User"; - -// Event get triggerd on comment actions like Post, edit, reply, resolve and reopen -function beforecomment(args : CommentActionEventArgs){ - // Check the type and author of the comment and current user are different - if(args.type === "Delete" && container.currentUser !== args.author){ - // Cancel the comment action - args.cancel = true; - } -} -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js - -var mentionData = [ - { "Name": "Mary Kate", "EmailId": "marry@company.com" }, - { "Name": "Andrew James", "EmailId": "james@company.com" }, - { "Name": "Andrew Fuller", "EmailId": "andrew@company.com"} - ]; - // Initialize DocumentEditorContainer component. - var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px', beforeCommentAction:beforecomment,documentEditorSettings: { - mentionSettings: { dataSource: mentionData, fields: { text: 'Name' }}, - } }); - ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - documenteditorContainer.serviceUrl = 'http://localhost:6028/api/documenteditor/'; - //DocumentEditorContainer control rendering starts - documenteditorContainer.appendTo('#DocumentEditor'); - documenteditorContainer.currentUser = "Guest User"; - - - // Event get triggerd on comment actions like Post, edit, reply, resolve and reopen - function beforecomment(args){ - // Check the type and author of the comment and current user are different - if(args.type === "Delete" && documenteditorContainer.currentUser !== args.author){ - // Cancel the comment action - args.cancel = true; - } - } -``` - -{% endif %} - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. diff --git a/ej2-javascript/document-editor/content-control.md b/ej2-javascript/document-editor/content-control.md deleted file mode 100644 index 1e1ea4a1e..000000000 --- a/ej2-javascript/document-editor/content-control.md +++ /dev/null @@ -1,166 +0,0 @@ ---- -layout: post -title: Content control in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Content control in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Content control -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Content control in ##Platform_Name## Document editor control - -Document Editor provides support for inserting, editing content controls - -Content controls can be categorized based on its occurrence in a document as follows, - -InlineContentControl: Among inline content inside, as a child of a paragraph. -BlockContentControl: Among paragraphs and tables, as a child of a Body, HeaderFooter. - -## Types of Content Controls - -* Rich Text -* Plain Text -* Check Box -* Date picker -* Drop-Down List and Combo Box -* Picture - -## Insert content control - -Content control can be inserted using [`insertContentControl`](../api/document-editor/editor/#insertContentControl) method in editor module. - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -//Insert Rich Text Content Control -container.documentEditor.editor.insertContentControl('RichText'); -//Insert Rich Text Content Control with default sfdt string -let sfdt = {"sections":[{"blocks":[{"inlines":[{"text": "Hello"}]}]}]}; -container.documentEditor.editor.insertContentControl('RichText', sfdt); - -//Insert Plain Text Content Control -container.documentEditor.editor.insertContentControl('Text'); -//Insert Plain Text Content Control with default string -container.documentEditor.editor.insertContentControl('Text', 'Hello World'); - -//Insert CheckBox Content Control -container.documentEditor.editor.insertContentControl('CheckBox'); -//Insert CheckBox Content Control with mention checked state -container.documentEditor.editor.insertContentControl('CheckBox', true); - -//Insert ComboBox Content Control -container.documentEditor.editor.insertContentControl('ComboBox'); -//Insert ComboBox Content Control with items -container.documentEditor.editor.insertContentControl('ComboBox', 'One', ['One', 'Two', 'Three']); - -//Insert Date Content Control -container.documentEditor.editor.insertContentControl('Date'); -//Insert Date Content Control -container.documentEditor.editor.insertContentControl('Date', '01/01/2024'); - -//Insert DropDownList Content Control -container.documentEditor.editor.insertContentControl('DropDownList'); -//Insert DropDownList Content Control with items -container.documentEditor.editor.insertContentControl('DropDownList', 'One', ['One', 'Two', 'Three']); - -//Insert Picture Content Control -container.documentEditor.editor.insertContentControl('Picture'); -//Insert Picture Content Control with default image -container.documentEditor.editor.insertContentControl('Picture', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADgSURBVEhLY3jx4sV/WuDBafCluXH/D6ydhlWObIMPLmn8/32KPBiD2OjyKAY7+zbDsX945/91azehiBWU9IPVgVwJMxSX4SgG65jXwrGVa+v/6TOXoojBDEZ2LQh/m676/+D+/XBzQJgsg0EY5GqQgSCDsYUz2QaDMCiosIUvCKMYDFKIjK9dvYrCB3kXJIaMkfUjY5JdDEpioCCAYZCFyGbAMFkGI0fcMDUYpAgZY4s8EEYWwxWBJLsYhJHFQIYjmwHDQ9xgkGEwDCp0QAYji8EMRhYjymBq4lGDofjFfwCV5AGEIf9DQQAAAABJRU5ErkJggg=='); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -//Insert Rich Text Content Control -container.documentEditor.editor.insertContentControl('RichText'); -//Insert Rich Text Content Control with default sfdt string -var sfdt = {"sections":[{"blocks":[{"inlines":[{"text": "Hello"}]}]}]}; -container.documentEditor.editor.insertContentControl('RichText', sfdt); - -//Insert Plain Text Content Control -container.documentEditor.editor.insertContentControl('Text'); -//Insert Plain Text Content Control with default string -container.documentEditor.editor.insertContentControl('Text', 'Hello World'); - -//Insert CheckBox Content Control -container.documentEditor.editor.insertContentControl('CheckBox'); -//Insert CheckBox Content Control with mention checked state -container.documentEditor.editor.insertContentControl('CheckBox', true); - -//Insert ComboBox Content Control -container.documentEditor.editor.insertContentControl('ComboBox'); -//Insert ComboBox Content Control with items -container.documentEditor.editor.insertContentControl('ComboBox', 'One', ['One', 'Two', 'Three']); - -//Insert Date Content Control -container.documentEditor.editor.insertContentControl('Date'); -//Insert Date Content Control -container.documentEditor.editor.insertContentControl('Date', '01/01/2024'); - -//Insert DropDownList Content Control -container.documentEditor.editor.insertContentControl('DropDownList'); -//Insert DropDownList Content Control with items -container.documentEditor.editor.insertContentControl('DropDownList', 'One', ['One', 'Two', 'Three']); - -//Insert Picture Content Control -container.documentEditor.editor.insertContentControl('Picture'); -//Insert Picture Content Control with default image -container.documentEditor.editor.insertContentControl('Picture', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADgSURBVEhLY3jx4sV/WuDBafCluXH/D6ydhlWObIMPLmn8/32KPBiD2OjyKAY7+zbDsX945/91azehiBWU9IPVgVwJMxSX4SgG65jXwrGVa+v/6TOXoojBDEZ2LQh/m676/+D+/XBzQJgsg0EY5GqQgSCDsYUz2QaDMCiosIUvCKMYDFKIjK9dvYrCB3kXJIaMkfUjY5JdDEpioCCAYZCFyGbAMFkGI0fcMDUYpAgZY4s8EEYWwxWBJLsYhJHFQIYjmwHDQ9xgkGEwDCp0QAYji8EMRhYjymBq4lGDofjFfwCV5AGEIf9DQQAAAABJRU5ErkJggg=='); -{% endhighlight %} -{% endif %} - -## Import content control properties - -Content control properties can be set using the [`ContentControlInfo`](../api/document-editor/#importContentControlData) and import it using [`importContentControlData`](../api/document-editor/#importContentControlData) - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -let data: ContentControlInfo[] = []; -let contentControlData: ContentControlInfo = { title: placeHolderPrefix + 'Name', tag: '', value: 'John', canDelete: false, canEdit: false, type: 'RichText' }; -data.push(contentControlData); -container.documentEditor.importContentControlData(data); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -var data = []; -var contentControlData = { title: placeHolderPrefix + 'Name', tag: '', value: 'John', canDelete: false, canEdit: false, type: 'RichText' }; -data.push(contentControlData); -container.documentEditor.importContentControlData(data); -{% endhighlight %} -{% endif %} - -## Export content control properties - -Content control properties can be exported using the [`exportContentControlData`](../api/document-editor/#exportContentControlData) - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -let contentControlInfos: ContentControlInfo[] = container.documentEditor.exportContentControlData(); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -var contentControlInfos = container.documentEditor.exportContentControlData(); -{% endhighlight %} -{% endif %} - -## Reset content control - -Content control properties can be reset using the [`resetcontentcontroldata`](../api/document-editor/#resetcontentcontroldata) - -{% if page.publishingplatform == "typescript" %} -{% highlight ts %} -let data: ContentControlInfo[] = []; -let contentControlData: ContentControlInfo = { title: placeHolderPrefix + 'Name', tag: '', value: 'John', canDelete: false, canEdit: false, type: 'RichText' }; -data.push(contentControlData); -container.documentEditor.resetContentControlData(data); -{% endhighlight %} -{% elsif page.publishingplatform == "javascript" %} -{% highlight ts %} -var data = []; -var contentControlData = { title: placeHolderPrefix + 'Name', tag: '', value: 'John', canDelete: false, canEdit: false, type: 'RichText' }; -data.push(contentControlData); -container.documentEditor.resetContentControlData(data); -{% endhighlight %} -{% endif %} - ->Note: Content control with custom XML mapping of file type WordML is converted as normal Rich Text Content Control to provide lossless round-tripping upon saving. diff --git a/ej2-javascript/document-editor/dialog.md b/ej2-javascript/document-editor/dialog.md deleted file mode 100644 index 5f9a11d9e..000000000 --- a/ej2-javascript/document-editor/dialog.md +++ /dev/null @@ -1,481 +0,0 @@ ---- -layout: post -title: Dialog in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Dialog in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Dialog -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Dialog in ##Platform_Name## Document editor control - -Document Editor provides dialog support to major operations such as insert or edit hyperlink, formatting text, paragraph, style, list and table properties. - -## Font Dialog - -Font dialog allows you to modify all text properties for selected contents at once such as bold, italic, underline, font size, font color, strikethrough, subscript and superscript. - -Refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs2" %} -{% endif %} - -## Paragraph dialog - -This dialog allows modifying the paragraph formatting for selection at once such as text alignment, indentation, and spacing. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs3/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs3" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs3/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs3" %} -{% endif %} - -## Table dialog - -This dialog allows creating and inserting a table at cursor position by specifying the required number of rows and columns. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs4/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs4/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs4" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs4/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs4/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs4" %} -{% endif %} - -## Bookmark dialog - -This dialog allows you to perform the following operations: - -* View all bookmarks. -* Navigate to a bookmark. -* Create a bookmark at current selection. -* Delete an existing bookmark. -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs5/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs5/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs5" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs5/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs5/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs5" %} -{% endif %} - -## Hyperlink dialog - -This dialog allows editing or inserting a hyperlink at cursor position. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs6/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs6/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs6" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs6/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs6/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs6" %} -{% endif %} - -## Table of contents dialog - -This dialog allows creating and inserting table of contents at cursor position. If the table of contents already exists at cursor position, you can customize its properties. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs7/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs7/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs7" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs7/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs7/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs7" %} -{% endif %} - -## Styles Dialog - -This dialog allows managing the styles in a document. It will display all the styles in the document with options to modify the properties of the existing style or create new style with the help of ‘Style dialog’. Refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs8/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs8/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs8" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs8/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs8/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs8" %} -{% endif %} - -## Style dialog - -You can directly use this dialog for modifying any existing style or add new style by providing the style name. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs9/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs9/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs9" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs9/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs9/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs9" %} -{% endif %} - -## List dialog - -This dialog allows creating a new list or modifying existing lists in the document. - -To open this dialog, refer to the following example. -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs10/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs10/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs10" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs10/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs10/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs10" %} -{% endif %} - -## Borders and shading dialog - -This dialog allows customizing the border style, border width, and background color of the table or selected cells. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs11/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs11/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs11" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs11/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs11/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs11" %} -{% endif %} - -## Table options dialog - -This dialog allows customizing the default cell margins and spacing between each cells of the selected table. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs12/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs12/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs12" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs12/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs12/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs12" %} -{% endif %} - -## Table properties dialog - -This dialog allows customizing the table, row, and cell properties of the selected table. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs13/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs13/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs13" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs13/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs13/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs13" %} -{% endif %} - -## Page setup dialog - -This dialog allows customizing margins, size, and layout options for pages of the section. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs14/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs14/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs14" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs14/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs14/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs14" %} -{% endif %} - -## Column dialog - -This dialog allows the end user to customize the number of columns, column width, and space between columns for the pages in a section. - -To open this dialog, refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs15/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs15/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs15" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs15/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs15/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs15" %} -{% endif %} - -## See Also - -* [Feature module](../document-editor/feature-module/) \ No newline at end of file diff --git a/ej2-javascript/document-editor/document-management.md b/ej2-javascript/document-editor/document-management.md deleted file mode 100644 index 03a205e6f..000000000 --- a/ej2-javascript/document-editor/document-management.md +++ /dev/null @@ -1,89 +0,0 @@ ---- -layout: post -title: Document management in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Document management in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Document management -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Document management in ##Platform_Name## Document editor control - -Document Editor provides support to restrict editing. When the protected document includes range permission, then unique user or user group only authorized to edit separate text area. - -## Set current user - -You can use the `currentUser` property to authorize the current document user by name, email, or user group name. - -The following code shows how to set currentUser - -```ts -documentEditor.currentUser = 'engineer@mycompany.com'; -``` - -## Customize highlight color of text area - -You can highlight the editable region of the current user using the `userColor` property. - -The following code shows how to set userColor. - -```ts -documentEditor.userColor = '#fff000'; -``` - -## Highlighting the editable text area - -You can toggle the highlight the editable region value using the "highlightEditableRanges" property. - -The folowing code shows how to toggle the highlight editable region value. - -```typescript -documentEditor.documentEditorSettings.highlightEditableRanges = true; -``` - -## Restrict Editing Pane - -Restrict Editing Pane provides the following options to manage the document: -* To apply formatting restrictions to the current document, select the allow formatting check box. -* To apply editing restrictions to the current document, select the read only check box. -* To add users to the current document, select more users option and add user from the popup dialog. -* To include range permission to the current document, select parts of the document and choose users who are allowed to freely edit them from the listed check box. -* To apply the chosen editing restrictions, click the **YES,START ENFORCING PROTECTION** button. A dialog box displays asking for a password to protect. -* To stop protection, select **STOP PROTECTION** button. A dialog box displays asking for a password to stop protection. - -The following code shows Restrict Editing Pane. To unprotect the document, use password '123'. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/data-protection-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/data-protection-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/data-protection-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/data-protection-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/data-protection-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/data-protection-cs1" %} -{% endif %} - -## See Also - -* [How to protect the document in form filling mode](../document-editor/form-fields/#protect-the-document-in-form-filling-mode) -* [How to protect the document in comments only mode](../document-editor/comments/#protect-the-document-in-comments-only-mode) -* [How to protect the document in track changes only mode](../document-editor/track-changes/#protect-the-document-in-track-changes-only-mode) \ No newline at end of file diff --git a/ej2-javascript/document-editor/export.md b/ej2-javascript/document-editor/export.md deleted file mode 100644 index dced7f61c..000000000 --- a/ej2-javascript/document-editor/export.md +++ /dev/null @@ -1,346 +0,0 @@ ---- -layout: post -title: Export in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Export in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Export -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Export in ##Platform_Name## Document editor control - -Document Editor exports the document into various known file formats in client-side such as Microsoft Word document (.docx), Word template (.dotx), text document (.txt), and its own format called **Syncfusion Document Text (.sfdt)**. - -We are providing two types of save APIs as mentioned below. - -|API name|Purpose|Code Snippet for Document Editor|Code Snippet for Document Editor Container| -|--------|---------|----------|----------| -|save(filename,FormatType):void
    FormatType: Sfdt or Docx or Txt|Creates the document with specified file name and format type. Then, the created file is downloaded in the client browser by default.|documenteditor.save('sample', 'Docx')|container.documenteditor.save('sample', 'Docx')| -|saveAsBlob(FormatType):Blob|Creates the document in specified format type and returns the created document as Blob.
    This blob can be uploaded to your required server, database, or file path.|documenteditor.saveAsBlob('Docx')|container.documenteditor.saveAsBlob('Docx')| - -## SFDT export - -The following example shows how to export documents in Document Editor as Syncfusion document text (.sfdt). - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs1" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-container-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs1" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-container-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs1" %} -{% endif %} - -## Word export - -The following example shows how to export the document as Word document (.docx). - ->Note: The Syncfusion® Document Editor component's document pagination (page-by-page display) can't be guaranteed for all the Word documents to match the pagination of Microsoft Word application. For more information about [why the document pagination (page-by-page display) differs from Microsoft Word](../document-editor/import/#why-the-document-pagination-differs-from-microsoft-word) - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs2" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-container-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs2" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-container-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs2" %} -{% endif %} - -## Word Template Export - -The following example shows how to export the document as Word Template (.dotx). - ->Note: The Syncfusion® Document Editor component's document pagination (page-by-page display) can't be guaranteed for all the Word documents to match the pagination of Microsoft Word application. For more information about [why the document pagination (page-by-page display) differs from Microsoft Word](../document-editor/import/#why-the-document-pagination-differs-from-microsoft-word) - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-cs4/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs4/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs4" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-container-cs4/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs4/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs4" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-cs4/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs4/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs4" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-container-cs4/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs4/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs4" %} -{% endif %} - -## Text export - -The following example shows how to export document as text document (.txt). - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-cs3/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs3" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/export-container-cs3/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs3" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-cs3/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-cs3" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/export-container-cs3/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/export-container-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/export-container-cs3" %} -{% endif %} - -## Export as blob - -Document Editor also supports API to store the document into a blob. Refer to the following sample to export document into blob in client-side. - -```ts -import { DocumentEditor, FormatType, WordExport, SfdtExport } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules for Export. -DocumentEditor.Inject(WordExport, SfdtExport); - -let documenteditor: DocumentEditor = new DocumentEditor({ enableSfdtExport: true, enableWordExport: true, enableTextExport: true }); - -documenteditor.appendTo('#DocumentEditor'); - -documenteditor.open(sfdt); - -document.getElementById('export').addEventListener('click', () => { - //Export the current document as `Blob` object. - documenteditor.saveAsBlob('Docx').then((exportedDocument: Blob) => { - // The blob can be processed further - }); -}); - -``` - -For instance, to export the document as Rich Text Format file, implement an ASP.NET MVC web API controller using DocIO library by passing the DOCX blob. Refer to the following code example. - -```c# - //API controller for the conversion. - [HttpPost] - public HttpResponseMessage ExportAsRtf() - { - System.Web.HttpPostedFile data = HttpContext.Current.Request.Files[0]; - //Opens document stream - WordDocument wordDocument = new WordDocument(data.InputStream); - MemoryStream stream = new MemoryStream(); - //Converts document stream as RTF - wordDocument.Save(stream, FormatType.Rtf); - wordDocument.Close(); - stream.Position = 0; - return new HttpResponseMessage() { Content = new StreamContent(stream) }; - } -``` - -In client-side, you can consume this web service and save the document as Rich Text Format (.rtf) file. Refer to the following example. - -```ts -document.getElementById('export').addEventListener('click', () => { - //Expor the document as `Blob` object. - documenteditor.saveAsBlob('Docx').then((exportedDocument: Blob) => { - // The blob can be processed further - let formData: FormData = new FormData(); - formData.append('fileName', 'sample.docx'); - formData.append('data', exportedDocument); - saveAsRtf(formData); - }); -}); - -function saveAsRtf(formData: FormData): void { - //Send the blob object to server to process further. - let httpRequest: XMLHttpRequest = new XMLHttpRequest(); - httpRequest.open('POST', '/api/DocumentEditor/ExportAsRtf', true); - httpRequest.onreadystatechange = () => { - if (httpRequest.readyState === 4) { - if (httpRequest.status === 200 || httpRequest.status === 304) { - if (!(!navigator.msSaveBlob)) { - navigator.msSaveBlob(httpRequest.response, 'sample.rtf'); - } else { - let downloadLink: HTMLAnchorElement = document.createElementNS('http://www.w3.org/1999/xhtml', 'a') as HTMLAnchorElement; - download('sample.rtf', 'rtf', httpRequest.response, downloadLink, 'download' in downloadLink); - } - } else { - console.error(httpRequest.response); - } - } - } - httpRequest.responseType = 'blob'; - httpRequest.send(formData); -} - -//Download the document in client side. -function download(fileName: string, extension: string, buffer: Blob, downloadLink: HTMLAnchorElement, hasDownloadAttribute: Boolean): void { - if (hasDownloadAttribute) { - downloadLink.download = fileName; - let dataUrl: string = window.URL.createObjectURL(buffer); - downloadLink.href = dataUrl; - let event: MouseEvent = document.createEvent('MouseEvent'); - event.initEvent('click', true, true); - downloadLink.dispatchEvent(event); - setTimeout((): void => { - window.URL.revokeObjectURL(dataUrl); - dataUrl = undefined; - }); - } else { - if (extension !== 'docx' && extension !== 'xlsx') { - let url: string = window.URL.createObjectURL(buffer); - let isPopupBlocked: Window = window.open(url, '_blank'); - if (!isPopupBlocked) { - window.location.href = url; - } - } - } -} -``` - -## See Also - -* [Feature modules](../document-editor/feature-module/) \ No newline at end of file diff --git a/ej2-javascript/document-editor/faq/unsupported-file-format.md b/ej2-javascript/document-editor/faq/unsupported-file-format.md deleted file mode 100644 index 7af31007a..000000000 --- a/ej2-javascript/document-editor/faq/unsupported-file-format.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -layout: post -title: Unsupported file in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Unsupported file in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Unsupported file -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Why Do I Get the Unsupported Warning Message When Opening a Document? - -If you receive an "The file format you have selected isn't supported. Please choose valid format." message when opening a document in the Document Editor, it typically indicates that the document format is not supported by the current version of the Document Editor. Here are some common reasons for this warning: -1. Unsupported File Format: The document you are trying to open might be in a format that the Document Editor does not support. Ensure you are using a supported format, such as SFDT. -2. Corrupted Document: The document file might be corrupted or improperly formatted. Try opening a different document to see if the issue persists. -To avoid this warning, always use the recommended document formats and features supported by the Document Editor. - -Document Editor supports the following file formats: -• Word Document (*.docx) -• Syncfusion Document Text (*.sfdt) -• Plain Text (*.txt) -• Word Template (*.dotx) -• HyperText Markup Language (*.html) -• Rich Text Format (*.rtf) -• Word XML Document(*.xml) -• Word 97-2003 Template (*.dot) -• Word 97-2003 Document (*.doc) - -By using these supported formats, you can ensure compatibility and avoid unsupported warning messages when opening documents in the Document Editor. diff --git a/ej2-javascript/document-editor/feature-module.md b/ej2-javascript/document-editor/feature-module.md deleted file mode 100644 index 7addc3f4e..000000000 --- a/ej2-javascript/document-editor/feature-module.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -layout: post -title: Feature module in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Feature module in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Feature module -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Feature module in ##Platform_Name## Document editor control - -Document Editor features are segregated into individual feature-wise modules to enable selective referencing. By default, the Document Editor displays the document in read-only mode. The required modules should be injected to extend its functionality. The following are the selective modules of Document Editor that can be included as required: -* **Print** - Prints the document. -* **SfdtExport** - Exports the document as Syncfusion Document Text (.SFDT) file. -* **Selection** - Selects a portion of the document and copy it to the clipboard. -* **Search** - Searches specific text and navigate between the results. -* **WordExport** - Exports the document as Word Document (.DOCX) file. -* **TextExport** - Exports the document as Text Document (.TXT) file. -* **Editor** - Performs all kind of editing operations. -* **EditorHistory** - Maintains the history of editing operations so that you can perform undo and redo at any time. -* User interface options such as context menu, options pane, image resizer, and dialog are available as individual modules. - ->In addition to injecting the required modules in your application, enable corresponding properties to extend the functionality for a Document Editor instance. -Refer to the following table. - -| Module | Dependent modules to be injected for extending the functionality of Document Editor in your application | Property to enable the functionality for a Document Editor instance | -|---|---|---| -|Print|`DocumentEditor.Inject(Print)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enablePrint: true });`| -|SfdtExport|`DocumentEditor.Inject(SfdtExport)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enableSfdtExport: true });`| -|Selection|`DocumentEditor.Inject(Selection)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enableSelection: true });`| -|Search|`DocumentEditor.Inject(Selection, Search)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enableSearch: true });`| -|WordExport|`DocumentEditor.Inject(SfdtExport, WordExport)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enableWordExport: true });`| -|TextExport|`DocumentEditor.Inject(SfdtExport, TextExport)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enableTextExport: true });`| -|Editor|`DocumentEditor.Inject(Selection, Editor)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true });`| -|EditorHistory|`DocumentEditor.Inject(Selection, Editor, EditorHistory)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableEditorHistory: true });`| -|OptionsPane(Find)|`DocumentEditor.Inject(Selection, Search, OptionsPane)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enableSearch: true, enableOptionsPane: true });`| -|OptionsPane(Find and Replace)|`DocumentEditor.Inject(Selection, Search, Editor, OptionsPane)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableSearch: true, enableOptionsPane: true });`| -|ContextMenu|`DocumentEditor.Inject(Selection, ContextMenu)`|`let documenteditor: DocumentEditor = new DocumentEditor({ enableSelection: true, enableContextMenu: true });`| -|ImageResizer|`DocumentEditor.Inject(Selection, Editor, ImageResizer)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableImageResizer: true });`| -|HyperlinkDialog|`DocumentEditor.Inject(Selection, Editor, HyperlinkDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableHyperlinkDialog: true });`| -|TableDialog|`DocumentEditor.Inject(Selection, Editor, TableDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableTableDialog: true });`| -|FontDialog|`DocumentEditor.Inject(Selection, Editor, FontDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableFontDialog: true });`| -|ParagraphDialog|`DocumentEditor.Inject(Selection, Editor, ParagraphDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableParagraphDialog: true });`| -|BookmarkDialog|`DocumentEditor.Inject(Selection, Editor, BookmarkDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableBookmarkDialog: true });`| -|PageSetupDialog|`DocumentEditor.Inject(Selection, Editor, PageSetupDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enablePageSetupDialog: true });`| -|TableOfContentsDialog|`DocumentEditor.Inject(Selection, Editor, TableOfContentsDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableTableOfContentsDialog: true });`| -|ListDialog|`DocumentEditor.Inject(Selection, Editor, ListDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableListDialog: true });`| -|TablePropertiesDialog|`DocumentEditor.Inject(Selection, Editor, TablePropertiesDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableTablePropertiesDialog: true });`| -|CellOptionsDialog|`DocumentEditor.Inject(Selection, Editor, CellOptionsDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableTablePropertiesDialog: true });`| -|BordersAndShadingDialog|`DocumentEditor.Inject(Selection, Editor, BordersAndShadingDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableBordersAndShadingDialog: true });`| -|TableOptionsDialog|`DocumentEditor.Inject(Selection, Editor, TableOptionsDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableTableOptionsDialog: true });`| -|StylesDialog|`DocumentEditor.Inject(Selection, Editor, StylesDialog,StyleDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableStyleDialog: true ,enableStylesDialog: true });`| -|StyleDialog|`DocumentEditor.Inject(Selection, Editor, StyleDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableStyleDialog: true });`| -|BulletsAndNumberingDialog|`DocumentEditor.Inject(Selection, Editor, BulletsAndNumberingDialog)`|`let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, enableEditor: true, enableStyleDialog: true });`| \ No newline at end of file diff --git a/ej2-javascript/document-editor/fields.md b/ej2-javascript/document-editor/fields.md deleted file mode 100644 index 1e134d570..000000000 --- a/ej2-javascript/document-editor/fields.md +++ /dev/null @@ -1,86 +0,0 @@ ---- -layout: post -title: Fields in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Fields in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Fields -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Fields in ##Platform_Name## Document editor control - -Document Editor has preservation support for all types of fields in an existing word document without any data loss. - -## Adding Fields - -You can add a field to the document by using [`insertField`](../api/document-editor/editor/#insertfield) method in [`Editor`](../api/document-editor/editor/) module. - -The following example code illustrates how to insert merge field programmatically by providing the field code and field result. - -```ts - -let fieldCode: string = 'MERGEFIELD First Name \\* MERGEFORMAT '; -let fieldResult: string = '«First Name»'; -documenteditor.editor.insertField(fieldCode, fieldResult); - -``` - ->Note: Document editor does not validate/process the field code/field result. it simply inserts the field with specified field information. - -## Update fields - -Document Editor provides support for updating bookmark cross reference field. The following example code illustrates how to update bookmark cross reference field. - -```ts -//Update all the bookmark cross reference field in the document. -documentEditor.updateFields(); -``` - -Bookmark cross reference fields can be updated through UI by using update fields option in `Toolbar`. - -![Update bookmark cross reference field.](images/updatefields.png) - -The following type of fields are automatically updated in Document Editor. - -* NUMPAGES -* SECTION -* PAGE - -## Get field info - -You can get field code and field result of the current selected field by using [`getFieldInfo`](../api/document-editor/selection/#getfieldinfo) method in the [`Selection`](../api/document-editor/selection/) module. - -```ts -//Gets the field information of the selected field. -let fieldInfo: FieldInfo = documentEditor.selection.getFieldInfo(); -``` - ->Note: For nested fields, this method returns combined field code and result. - -## Set field info - -You can modify the field code and field result of the current selected field by using [`setFieldInfo`](../api/document-editor/editor/#setfieldinfo) method in the [`Editor`](../api/document-editor/editor/) module. - -```ts -//Gets the field information for the selected field. -let fieldInfo: FieldInfo = documentEditor.selection.getFieldInfo(); - -//Modify field code -fieldInfo.code = 'MERGEFIELD First Name \\* MERGEFORMAT '; - -//Modify field result -fieldInfo.result = '«First Name»'; - -//Modify field code and result of the current selected field. -documentEditor.editor.setFieldInfo(fieldInfo); -``` - ->Note: For nested field, entire field gets replaced completely with the specified field information. - -## See Also - -* [Mail merge using DocIO](https://help.syncfusion.com/file-formats/docio/working-with-mail-merge) -* [Mail merge demo](https://github.com/SyncfusionExamples/EJ2-Document-Editor-Web-Services/blob/master/ASP.NET%20Core/src/Controllers/DocumentEditorController.cs#L114) -* You can refer to the [Microsoft support article to know more about the list of fields supported in Microsoft Word and its field codes](https://support.microsoft.com/en-us/office/list-of-field-codes-in-word-1ad6d91a-55a7-4a8d-b535-cf7888659a51) \ No newline at end of file diff --git a/ej2-javascript/document-editor/find-and-replace.md b/ej2-javascript/document-editor/find-and-replace.md deleted file mode 100644 index 59830c18a..000000000 --- a/ej2-javascript/document-editor/find-and-replace.md +++ /dev/null @@ -1,177 +0,0 @@ ---- -layout: post -title: Find and replace in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Find and replace in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Find and replace -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Find and replace in ##Platform_Name## Document editor control - -The Document Editor component searches a portion of text in the document through a built-in interface called `OptionsPane` or rich APIs. When used in combination with selection performs various operations on the search results like replacing it with some other text, highlighting it, making it bolder, and more. - -## Options pane - -This provides the options to search for a portion of text in the document. After search operation is completed, the search results will be displayed in a list and options to navigate between them. The current occurrence of matched text or all occurrences with another text can be replaced by switching to `Replace` tab. This pane is opened using the keyboard shortcut `CTRL+F`. You can also open it programmatically using the following sample code. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/find-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/find-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/find-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/find-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/find-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/find-cs1" %} -{% endif %} - -You can close the options pane by pressing `Esc` key. - -## Search - -The [`Search`](../api/document-editor/search/) module of Document Editor exposes the following APIs: - -|API Name|Type |Description| -|---|---|---| -|[`findAll()`](../api/document-editor/search/#findall)| Method |Searches for specified text in the whole document and highlights it with yellow.| -|[`searchResults`](../api/document-editor/search/#searchresults) |Property |This is an instance of [`SearchResults`](../api/document-editor/searchResults/).| -|[`find()`](../api/document-editor/search/#find) | Method |Find immediate occurrence of specified text from cursor position in the document and highlights it with yellow.| - -### Find the immediate occurrence in the document - -Using [`find()`](../api/document-editor/search/#find) method, you can find the immediate occurrence of specified text from current cursor position in the document. - -The following example code illustrates how to use find in Document editor. - -```ts -documenteditor.search.find('Some text', 'None'); -``` - ->Note: Second parameter is optional parameter and it denotes find Options. Possible values of find options are `'None' |'WholeWord' |'CaseSensitive'| 'CaseSensitiveWholeWord'`. - -### Find all the occurrences in the document - -Using [`findAll()`](../api/document-editor/search/#findall) method, you can find all the occurrences of specified text in the whole document and highlight it with yellow. - -The following example code illustrates how to find All the text in the document. - -```ts -documenteditor.search.findAll('Some text', 'None'); -``` - ->Note: Second parameter is optional parameter and it denotes find Options. Possible values of find options are `'None' |'WholeWord' |'CaseSensitive'| 'CaseSensitiveWholeWord'`. - -## Search results - -The [`SearchResults`](../api/document-editor/searchResults/) class provides information about the search results after a search operation is completed that can be identified using the [`searchResultsChange`](../api/document-editor#searchresultschange) event. This will expose the following APIs: - -|API Name|Type |Description| -|---|---|---| -|[`length`](../api/document-editor/searchResults/#length)|Property|Returns the total number of results found on the search.| -|[`index`](../api/document-editor/searchResults/#index)|Property|Returns the index of selected search result. You can change the value for this property to move the selection.| -|[`replaceAll()`](../api/document-editor/searchResults/#replaceall)|Method|Replaces all the occurrences with specified text.| -|[`clear()`](../api/document-editor/searchResults/#clear)|Method|Clears the search result.| - -### Replace all the occurrences - -Using [`replaceAll`](../api/document-editor/searchResults/#replaceall), you can replace all the occurrences with specified text. - -The following example code illustrates how to use replace All in Document editor. - -```ts -documentEditor.search.findAll('Some text'); -// Replace all the searched text with word 'Mike' -documentEditor.search.searchResults.replaceAll("Mike"); -``` - -### Replace - -Using [`insertText`](../api/document-editor/editor/#inserttext), you can replace the current searched text with specified text and it replace single occurrence. - ->Note: This [`insertText`](../api/document-editor/editor/#inserttext) API accepts following control characters ->* New line characters ("\r", "\r\n", "\n") - Inserts a new paragraph and appends the remaining text to the new paragraph. ->* Line break character ("\v") - Moves the remaining text to start in new line. ->* Tab character ("\t") - Allocates a tab space and continue the next character. - -The following example code illustrates how to find a text in the document and replace each occurrence of the text one by one programmatically. - -```ts -container.documentEditor.search.findAll('works'); - -let searchLength: number = container.documentEditor.search.searchResults.length; - -for (let i = 0; i < searchLength; i++) { - // It will move selection to specific searched index,move to each occurrence one by one - container.documentEditor.search.searchResults.index = i; - // Replace it with some text - container.documentEditor.editor.insertText('Hello'); -} - -container.documentEditor.search.searchResults.clear(); -``` - -## SearchResultsChange event - -[`DocumentEditor`](../api/document-editor/) exposes the [`searchResultsChange`](../api/document-editor#searchresultschange) event that will be triggered whenever search results are changed. Consider the following scenarios: - -* A search operation is completed with some results. -* The results are replaced with some other text, since it will be cleared automatically. -* The results are cleared explicitly. - -Refer to the following code example. - -```ts -documenteditor.searchResultsChange = function() { - -}; -``` - -## Customize find and replace - -Using the exposed APIs, you can customize the find and replace functionality in your application. Refer to the following sample code. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/replace-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/replace-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/replace-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/replace-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/replace-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/replace-cs1" %} -{% endif %} \ No newline at end of file diff --git a/ej2-javascript/document-editor/form-fields.md b/ej2-javascript/document-editor/form-fields.md deleted file mode 100644 index 6ce515610..000000000 --- a/ej2-javascript/document-editor/form-fields.md +++ /dev/null @@ -1,150 +0,0 @@ ---- -layout: post -title: Form fields in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Form fields in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Form fields -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Form fields in ##Platform_Name## Document editor control - -DocumentEditorContainer component provide support for inserting Text, CheckBox, DropDown form fields through in-built toolbar. - -![Form Fields](images/toolbar-form-fields.png) - -## Insert form field - -Form fields can be inserted using [`insertFormField`](../api/document-editor/editor/#insertformfield) method in editor module. - -```ts -//Insert Text form field -documentEditor.editor.insertFormField('Text'); -//Insert Checkbox form field -documentEditor.editor.insertFormField('CheckBox'); -//Insert Drop down form field -documentEditor.editor.insertFormField('DropDown'); -``` - -## Get form field names - -All the form fields names form current document can be retrieved using [`getFormFieldNames()`](../api/document-editor/#getformfieldnames). - -```ts -let formFieldsNames: string[] = documentEditor.getFormFieldNames(); -``` - -## Get form field properties - -Form field properties can be retrieved using [`getFormFieldInfo()`](../api/document-editor/#getformfieldinfo). - -```ts -//Get Text form field by using bookmark name. -let textfieldInfo: TextFormFieldInfo = documentEditor.getFormFieldInfo('Text1') as TextFormFieldInfo; -//Checkbox form field by using bookmark name. -let checkboxfieldInfo: CheckBoxFormFieldInfo = documentEditor.getFormFieldInfo('Check1') as CheckBoxFormFieldInfo; -//Dropdown form field by using bookmark name. -let dropdownfieldInfo: DropDownFormFieldInfo = documentEditor.getFormFieldInfo('Drop1') as DropDownFormFieldInfo; -``` - -## Set form field properties - -Form field properties can be modified using [`setFormFieldInfo`](../api/document-editor/#setformfieldinfo). - -```ts -// Set text form field properties -let textfieldInfo: TextFormFieldInfo = documentEditor.getFormFieldInfo('Text1') as TextFormFieldInfo; -textfieldInfo.defaultValue = "Hello"; -textfieldInfo.format = "Uppercase"; -textfieldInfo.type = "Text"; -textfieldInfo.name = "Text2"; -documentEditor.setFormFieldInfo('Text1', textfieldInfo); - -// Set checkbox form field properties -let checkboxfieldInfo: CheckBoxFormFieldInfo = documentEditor.getFormFieldInfo('Check1') as CheckBoxFormFieldInfo; -checkboxfieldInfo.defaultValue = true; -checkboxfieldInfo.name = "Check2"; -documentEditor.setFormFieldInfo('Check1', checkboxfieldInfo); - -// Set checkbox form field properties -let dropdownfieldInfo: DropDownFormFieldInfo = documentEditor.getFormFieldInfo('Drop1') as DropDownFormFieldInfo; -dropdownfieldInfo.dropdownItems = ['One', 'Two', 'Three'] -dropdownfieldInfo.name = "Drop2"; -documentEditor.setFormFieldInfo('Drop1', dropdownfieldInfo); -``` - ->Note:If a form field already exists in the document with the new name specified, the old form field name property will be cleared and it will not be accessible. Ensure the new name is unique. - -## Form Field Shading - -You can customize form field shading at the application level using the [`formFieldSettings`](../api/document-editor/#formFieldSettings) property. - -The example code below demonstrates how to set a custom shading color and how to disable shading (by default, shading is enabled). - -```ts -// Set a custom shading color (for example, white) -container.documentEditorSettings.formFieldSettings.shadingColor = '#ffffff'; - -// Disable form field shading entirely -container.documentEditorSettings.formFieldSettings.applyShading = false; -``` - -N> This customization only affects the application UI and will not be preserved when exporting the document. - -## Export form field data - -Data of the all the Form fields in the document can be exported using [`exportFormData`](../api/document-editor/#exportformdata). - -```ts -let formFieldDate: FormFieldData[] = documentEditor.exportFormData(); -``` - -## Import form field data - -Form fields can be prefilled with data using [`importFormData`](../api/document-editor/#importformdata). - -```ts -let textformField: FormFieldData = { fieldName: 'Text1', value: 'Hello World' }; -let checkformField: FormFieldData = { fieldName: 'Check1', value: true }; -let dropdownformField: FormFieldData = { fieldName: 'Drop1', value: 1 }; -//Import form field data -this.container.documentEditor.importFormData([textformField, checkformField, dropdownformField]); -``` - -## Reset form fields - -Reset all the form fields in current document to default value using [`resetFormFields`](../api/document-editor/#resetformfields). - -```ts -documentEditor.resetFormFields(); -``` - -## Protect the document in form filling mode - -Document Editor provides support for protecting the document with `FormFieldsOnly` protection. In this protection, user can only fill form fields in the document. - -Document editor provides an option to protect and unprotect document using [`enforceProtection`](../api/document-editor/editor/#enforceprotection) and [`stopProtection`](../api/document-editor/editor/#stopprotection) API. - -The following example code illustrates how to enforce and stop protection in Document editor container. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = - 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); - -//enforce protection -container.documentEditor.editor.enforceProtection('123', 'FormFieldsOnly'); - -//stop the document protection -container.documentEditor.editor.stopProtection('123'); -``` -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - ->Note: In enforce Protection method, first parameter denotes password and second parameter denotes protection type. Possible values of protection type are `NoProtection |ReadOnly |FormFieldsOnly |CommentsOnly`. In stop protection method, parameter denotes the password. \ No newline at end of file diff --git a/ej2-javascript/document-editor/global-local.md b/ej2-javascript/document-editor/global-local.md deleted file mode 100644 index 6692df114..000000000 --- a/ej2-javascript/document-editor/global-local.md +++ /dev/null @@ -1,528 +0,0 @@ ---- -layout: post -title: Global local in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Global local in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Global local -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Global local in ##Platform_Name## Document editor control - -## Localization - -The [`Localization`](../api/base/l10n/) library allows you to localize default text content of the DocumentEditor. The Document Editor component has static text on some features (like find & replace, context-menu, dialogs) that can be changed to other cultures (Arabic, Deutsch, French, etc.) by defining the locale value and translation object. Please refer the sample link [RTL](https://ej2.syncfusion.com/demos/document-editor/right-to-left/) - -Note: Please refer the [Locale](https://github.com/syncfusion/ej2-locale/tree/master/src). - -## Document Editor - -The following list of properties and its values are used in the Document Editor. - -Locale keywords |Text ------|----- -Table | Table -Row | Row -Cell | Cell -Ok | OK -Cancel | Cancel -Size | Size -Preferred Width | Preferred width -Points | Points -Percent | Percent -Measure in | Measure in -Alignment | Alignment -Left | Left -Center | Center -Right | Right -Justify | Justify -Indent from left | Indent from left -Borders and Shading | Borders and Shading -Options | Options -Specify height | Specify height -At least | At least -Exactly | Exactly -Row height is | Row height is -Allow row to break across pages | Allow row to break across pages -Repeat as header row at the top of each page | Repeat as header row at the top of each page -Vertical alignment | Vertical alignment -Top | Top -Bottom | Bottom -Default cell margins | Default cell margins -Default cell spacing | Default cell spacing -Allow spacing between cells | Allow spacing between cells -Cell margins | Cell margins -Same as the whole table | Same as the whole table -Borders | Borders -None | None -Style | Style -Width | Width -Height | Height -Letter | Letter -Tabloid | Tabloid -Legal | Legal -Statement | Statement -Executive | Executive -A3 | A3 -A4 | A4 -A5 | A5 -B4 | B4 -B5 | B5 -Custom Size | Custom size -Different odd and even | Different odd and even -Different first page | Different first page -From edge | From edge -Header | Header -Footer | Footer -Margin | Margins -Paper | Paper -Layout | Layout -Orientation | Orientation -Landscape | Landscape -Portrait | Portrait -Show page numbers | Show page numbers -Right align page numbers | Right align page numbers -Nothing | Nothing -Tab leader | Tab leader -Show levels | Show levels -Use hyperlinks instead of page numbers | Use hyperlinks instead of page numbers -Build table of contents from | Build table of contents from -Styles | Styles -Available styles | Available styles -TOC level | TOC level -Heading | Heading -Heading 1 | Heading 1 -Heading 2 | Heading 2 -Heading 3 | Heading 3 -Heading 4 | Heading 4 -Heading 5 | Heading 5 -Heading 6 | Heading 6 -List Paragraph | List Paragraph -Normal | Normal -Outline levels | Outline levels -Table entry fields | Table entry fields -Modify | Modify -Color | Color -Setting | Setting -Box | Box -All | All -Custom | Custom -Preview | Preview -Shading | Shading -Fill | Fill -Apply To | Apply to -Table Properties | Table Properties -Cell Options | Cell Options -Table Options | Table Options -Insert Table | Insert Table -Number of columns | Number of columns -Number of rows | Number of rows -Text to display | Text to display -Address | Address -Insert Hyperlink | Insert Hyperlink -Edit Hyperlink | Edit Hyperlink -Insert | Insert -General | General -Indentation | Indentation -Before text | Before text -Special | Special -First line | First line -Hanging | Hanging -After text | After text -By | By -Before | Before -Line Spacing | Line spacing -After | After -At | At -Multiple | Multiple -Spacing | Spacing -Define new Multilevel list | Define new Multilevel list -List level | List level -Choose level to modify | Choose level to modify -Level | Level -Number format | Number format -Number style for this level | Number style for this level -Enter formatting for number | Enter formatting for number -Start at | Start at -Restart list after | Restart list after -Position | Position -Text indent at | Text indent at -Aligned at | Aligned at -Follow number with | Follow number with -Tab character | Tab character -Space | Space -Arabic | Arabic -UpRoman | UpRoman -LowRoman | LowRoman -UpLetter | UpLetter -LowLetter | LowLetter -Number | Number -Leading zero | Leading zero -Bullet | Bullet -Ordinal | Ordinal -Ordinal Text | Ordinal Text -For East | For East -No Restart | No Restart -Font | Font -Font style | Font style -Underline style | Underline style -Font color | Font color -Effects | Effects -Strikethrough | Strikethrough -Superscript | Superscript -Subscript | Subscript -Double strikethrough | Double strikethrough -Regular | Regular -Bold | Bold -Italic | Italic -Cut | Cut -Copy | Copy -Paste | Paste -Hyperlink | Hyperlink -Open Hyperlink | Open Hyperlink -Copy Hyperlink | Copy Hyperlink -Remove Hyperlink | Remove Hyperlink -Paragraph | Paragraph -Linked Style | Linked(Paragraph and Character) -Character | Character -Merge Cells | Merge Cells -Insert Above | Insert Above -Insert Below | Insert Below -Insert Left | Insert Left -Insert Right | Insert Right -Delete | Delete -Delete Table | Delete Table -Delete Row | Delete Row -Delete Column | Delete Column -File Name | File Name -Format Type | Format Type -Save | Save -Navigation | Navigation -Results | Results -Replace | Replace -Replace All | Replace All -We replaced all | We replaced all -Find | Find -No matches | No matches -All Done | All Done -Result | Result -of | of -instances | instances -with | with -Click to follow link | Click to follow link -Continue Numbering | Continue Numbering -Bookmark name | Bookmark name -Close | Close -Restart At | Restart At -Properties | Properties -Name | Name -Style type | Style type -Style based on | Style based on -Style for following paragraph | Style for following paragraph -Formatting | Formatting -Numbering and Bullets | Numbering and Bullets -Numbering | Numbering -Update Field | Update Field -Edit Field | Edit Field -Bookmark | Bookmark -Page Setup | Page Setup -No bookmarks found | No bookmarks found -Number format tooltip information | Single-level number format:
    [PREFIX]%[LEVELNUMBER][SUFFIX]
    For example, 'Chapter %1.' will display numbering like
    Chapter 1. Item
    Chapter 2. Item

    Chapter N. Item

    Multilevel number format:
    [PREFIX]%[LEVELNUMBER][SUFFIX]+[PREFIX]%[LEVELNUMBER][SUFFIX]
    For example, '%1.%2.' will display numbering like
    1.1. Item
    1.2. Item

    1.N. Item -Format | Format -Create New Style | Create New Style -Modify Style | Modify Style -New | New -Bullets | Bullets -Use bookmarks | Use bookmarks -Table of Contents | Table of Contents -AutoFit | AutoFit -AutoFit to Contents | AutoFit to Contents -AutoFit to Window | AutoFit to Window -Fixed Column Width | Fixed Column Width -Reset | Reset -Match case | Match case -Whole words | Whole words -Add | Add -Go To | Go To -Search for | Search for -Replace with | Replace with -TOC 1 | TOC 1 -TOC 2 | TOC 2 -TOC 3 | TOC 3 -TOC 4 | TOC 4 -TOC 5 | TOC 5 -TOC 6 | TOC 6 -TOC 7 | TOC 7 -TOC 8 | TOC 8 -TOC 9 | TOC 9 -Right-to-left | Right-to-left -Left-to-right | Left-to-right -Direction | Direction -Table direction | Table direction -Indent from right | Indent from right -Contextual Spacing | Don't add space between the paragraphs of the same styles -Password Mismatch | The password don't match -Restrict Editing | Restrict Editing -Formatting restrictions | Formatting restrictions -Allow formatting | Allow formatting -Editing restrictions | Editing restrictions -Read only | Read only -Exceptions Optional | Exceptions (optional) -Select Part Of Document And User | Select parts of the document and choose users who are allowed to freely edit them. -Everyone | Everyone -More users | More users -Add Users | Add Users -Enforcing Protection | Yes, Start Enforcing Protection -Start Enforcing Protection | Start Enforcing Protection -Enter User | Enter User -Users | Users -Enter new password | Enter new password -Reenter new password to confirm | Reenter new password to confirm -Your permissions | Your permissions -Protected Document | This document is protected from unintentional editing. You may edit in this region. -FormFieldsOnly | This document is protected from unintentional editing. You may only fill in forms in this region. -You may format text only with certain styles | You may format text only with certain styles. -Stop Protection | Stop Protection -Password | Password -Spelling Editor | Spelling Editor -Spelling | Spelling -Spell Check | Spell Check -Underline errors | Underline errors -Ignore | Ignore -Ignore all | Ignore All -Add to Dictionary | Add to Dictionary -Change | Change -Change All | Change All -Suggestions | Suggestions -The password is incorrect | The password is incorrect -Error in establishing connection with web server | Error in establishing connection with web server -Highlight the regions I can edit | Highlight the regions I can edit -Show All Regions I Can Edit | Show All Regions I Can Edit -Find Next Region I Can Edit | Find Next Region I Can Edit -Keep source formatting | Keep source formatting -Match destination formatting | Match destination formatting -Text only | Text only -Comments | Comments -Type your comment | Type your comment -Post | Post -Reply | Reply -New Comment | New Comment -Edit | Edit -Resolve | Resolve -Reopen | Reopen -No comments in this document | No comments in this document -more | more -Type your comment here | Type your comment here -Next Comment | Next Comment -Previous Comment | Previous Comment -Un-posted comments | Un-posted comments -Discard Comment | Added comments not posted. If you continue, that comment will be discarded. -No Headings | No Heading Found! -Add Headings | This document has no headings. Please add headings and try again. -More Options | More Options -Click to see this comment | Click to see this comment -Drop Down Form Field | Drop Down Form Field -Drop-down items | Drop-down items -Items in drop-down list | Items in drop-down list -ADD | ADD -REMOVE | REMOVE -Field settings | Field settings -Tooltip | Tooltip -Drop-down enabled | Drop-down enabled -Check Box Form Field | Check Box Form Field -Check box size | Check box size -Auto | Auto -Default value | Default value -Not checked | Not checked -Checked | Checked -Check box enabled | Check box enabled -Text Form Field | Text Form Field -Type | Type -Default text | Default text -Maximum length | Maximum length -Text format | Text format -Fill-in enabled | Fill-in enabled -Default number | Default number -Default date | Default date -Date format | Date format -Merge Track | This action wont be marked as change. Do you want to continue? -UnTrack | Cannot be tracked -Accept | Accept -Reject | Reject -Previous Changes | Previous Changes -Next Changes | Next Changes -Inserted | Inserted -Deleted | Deleted -Changes | Changes -Accept all | Accept all -Reject all | Reject all -No changes | No changes -Accept Changes | Accept Changes -Reject Changes | Reject Changes -User | User -View | View - -## Document Editor Container - -The following list of properties and its values are used in the Document Editor container. - -Locale keywords |Text ------|----- -New | New -Open | Open -Undo | Undo -Redo | Redo -Image | Image -Table | Table -Link | Link -Bookmark | Bookmark -Table of Contents | Table of Contents -HEADING - - - - 1 | HEADING - - - - 1 -HEADING - - - - 2 | HEADING - - - - 2 -HEADING - - - - 3 | HEADING - - - - 3 -Header | Header -Footer | Footer -Page Setup | Page Setup -Page Number | Page Number -Break | Break -Find | Find -Local Clipboard | Local Clipboard -Restrict Editing | Restrict Editing -Upload from computer | Upload from computer -By URL | By URL -Page Break | Page Break -Section Break | Section Break -Header And Footer | Header & Footer -Options | Options -Levels | Levels -Different First Page | Different First Page -Different header and footer for odd and even pages | Different header and footer for odd and even pages. -Different Odd And Even Pages | Different Odd & Even Pages -Different header and footer for first page | Different header and footer for first page. -Position | Position -Header from Top | Header from Top -Footer from Bottom | Footer from Bottom -Distance from top of the page to top of the header | Distance from top of the page to top of the header. -Distance from bottom of the page to bottom of the footer | Distance from bottom of the page to bottom of the footer. -Aspect ratio | Aspect ratio -W | W -H | H -Width | Width -Height | Height -Text | Text -Paragraph | Paragraph -Fill | Fill -Fill color | Fill color -Border Style | Border Style -Outside borders | Outside borders -All borders | All borders -Inside borders | Inside borders -Left border | Left border -Inside vertical border | Inside vertical border -Right border | Right border -Top border | Top border -Inside horizontal border | Inside horizontal border -Bottom border | Bottom border -Border color | Border color -Border width | Border width -Cell | Cell -Merge cells | Merge cells -Insert Or Delete | Insert / Delete -Insert columns to the left | Insert columns to the left -Insert columns to the right | Insert columns to the right -Insert rows above | Insert rows above -Insert rows below | Insert rows below -Delete rows | Delete rows -Delete columns | Delete columns -Cell Margin | Cell Margin -Top | Top -Bottom | Bottom -Left | Left -Right | Right -Align Text | Align Text -Align top | Align top -Align bottom | Align bottom -Align center | Align center -Number of heading or outline levels to be shown in table of contents | Number of heading or outline levels to be shown in table of contents. -Show page numbers | Show page numbers -Show page numbers in table of contents | Show page numbers in table of contents. -Right align page numbers | Right align page numbers -Right align page numbers in table of contents | Right align page numbers in table of contents. -Use hyperlinks | Use hyperlinks -Use hyperlinks instead of page numbers | Use hyperlinks instead of page numbers. -Font | Font -Font Size | Font Size -Font color | Font color -Text highlight color | Text highlight color -Clear all formatting | Clear all formatting -Bold Tooltip | Bold (Ctrl+B) -Italic Tooltip | Italic (Ctrl+I) -Underline Tooltip | Underline (Ctrl+U) -Strikethrough | Strikethrough -Superscript Tooltip | Superscript (Ctrl+Shift++) -Subscript Tooltip | Subscript (Ctrl+=) -Align left Tooltip | Align left (Ctrl+L) -Center Tooltip | Center (Ctrl+E) -Align right Tooltip | Align right (Ctrl+R) -Justify Tooltip | Justify (Ctrl+J) -Decrease indent | Decrease indent -Increase indent | Increase indent -Line spacing | Line spacing -Bullets | Bullets -Numbering | Numbering -Styles | Styles -Manage Styles | Manage Styles -Page | Page -of | of -Fit one page | Fit one page -Spell Check | Spell Check -Underline errors | Underline errors -Fit page width | Fit page width -Update | Update -Cancel | Cancel -Insert | Insert -No Border | No Border -Create a new document | Create a new document. -Open a document | Open a document. -Undo Tooltip | Undo the last operation (Ctrl+Z). -Redo Tooltip | Redo the last operation (Ctrl+Y). -Insert inline picture from a file | Insert inline picture from a file. -Insert a table into the document | Insert a table into the document -Create Hyperlink | Create a link in your document for quick access to web pages and files (Ctrl+K). -Insert a bookmark in a specific place in this document | Insert a bookmark in a specific place in this document. -Provide an overview of your document by adding a table of contents | Provide an overview of your document by adding a table of contents. -Add or edit the header | Add or edit the header. -Add or edit the footer | Add or edit the footer. -Open the page setup dialog | Open the page setup dialog. -Add page numbers | Add page numbers. -Find Text | Find text in the document (Ctrl+F). -Toggle between the internal clipboard and system clipboard | Toggle between the internal clipboard and system clipboard.
    Access to system clipboard through script is denied due to browsers security policy. Instead,
    1. You can enable internal clipboard to cut, copy and paste within the component.
    2. You can use the keyboard shortcuts (Ctrl+X, Ctrl+C and Ctrl+V) to cut, copy and paste with system clipboard. -Current Page Number | The current page number in the document. Click or tap to navigate specific page. -Read only | Read only -Protections | Protections -Error in establishing connection with web server | Error in establishing connection with web server -Single | Single -Double | Double -New comment | New comment -Comments | Comments -Print layout | Print layout -Web layout | Web layout -Text Form | Text Form -Check Box | Check Box -DropDown | Drop-Down -Update Fields | Update Fields -Update cross reference fields | Update cross reference fields -Hide properties pane | Hide properties pane -Show properties pane | Show properties pane - -## Color Picker - -The following list of properties and its values are used in the color picker. - -Locale keywords |Text ------|----- -Apply | Apply -Cancel | Cancel -ModeSwitcher | Switch Mode \ No newline at end of file diff --git a/ej2-javascript/document-editor/header-footer.md b/ej2-javascript/document-editor/header-footer.md deleted file mode 100644 index f70b076e6..000000000 --- a/ej2-javascript/document-editor/header-footer.md +++ /dev/null @@ -1,92 +0,0 @@ ---- -layout: post -title: Header footer in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Header footer in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Header footer -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Header footer in ##Platform_Name## Document editor control - -Document Editor supports headers and footers in its document. Each section in the document can have the following types of headers and footers: - -* First page: Used only on the first page of the section. -* Even pages: Used on all even numbered pages in the section. -* Default: Used on all pages of the section, where first or even pages are not applicable or not specified. - -You can define this by setting format properties of the corresponding section using the following sample code. - -```ts -//Defines whether different header footer is required for first page of the section -documenteditor.selection.sectionFormat.differentFirstPage = true; -//Defines whether different header footer is required for odd and even pages in the section -documenteditor.selection.sectionFormat.differentOddAndEvenPages = true; -``` - -## Go to header footer region - -Double click in header or footer region to move the selection into it. You can also do this by using the following code. - -```ts -documenteditor.selection.goToHeader(); -``` - -```ts -documenteditor.selection.goToFooter(); -``` - -## Header and footer distance - -You can define the distance of header region content from the top of the page. Refer to the following sample code. - -```ts -documenteditor.selection.sectionFormat.headerDistance= 36; -``` - -Same way, you can define the distance of footer region content from the bottom of the page. Refer to the following sample code. - -```ts -documenteditor.selection.sectionFormat.footerDistace=36; -``` - -## Close header footer region - -Move the selection to the document body from header or footer region by double clicking or tapping the document area. You can also perform this by using the following sample code. - -```ts -documenteditor.selection.closeHeaderFooter() -``` - -## Link to previous - -Link to previous is enabled by default when document has more than one section. If you're using different headers and footers such as different first page or different odd and even pages, they can't be linked together because they're all separate. - -Before setting or getting the link to previous value, use the ['goToHeader'](../api/document-editor/selection/#gotoheader) or ['goToFooter'](../api/document-editor/selection/#gotofooter) API to move the current selection to the header or footer region. - -You can get or set the default header footer link to previous value of a section at cursor position by using the following sample code. - -```typescript -container.documentEditor.selection.sectionFormat.oddPageHeader.linkToPrevious = false; -container.documentEditor.selection.sectionFormat.oddPageFooter.linkToPrevious = false; -``` - -In case the document has different header and footer types, such as different first page, odd, and even pages. - -```typescript -// Different first page -container.documentEditor.selection.sectionFormat.firstPageHeader.linkToPrevious = false; -container.documentEditor.selection.sectionFormat.firstPageFooter.linkToPrevious = false; - -//Even page -container.documentEditor.selection.sectionFormat.evenPageHeader.linkToPrevious = false; -container.documentEditor.selection.sectionFormat.evenPageFooter.linkToPrevious = false; -``` - ->Note: When there is more than one section in the document, the Link to Previous option becomes available. By default, this feature is disabled state in UI and set to return false for the first section. - -## See Also - -* [Working with Section Formatting](../document-editor/section-format/) \ No newline at end of file diff --git a/ej2-javascript/document-editor/history.md b/ej2-javascript/document-editor/history.md deleted file mode 100644 index c63a45b3a..000000000 --- a/ej2-javascript/document-editor/history.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -layout: post -title: History in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about History in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: History -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# History in ##Platform_Name## Document editor control - -Document Editor tracks the history of all editing actions done in the document, which allows undo and redo functionality. - -## Enable or disable history - -Inject the ‘EditorHistory’ module in your application to provide history preservation functionality for ‘DocumentEditor’. Refer to the following code example. - -```ts -//Inject require modules. -DocumentEditor.Inject(Editor, Selection, EditorHistory); -let editor: DocumentEditor = new DocumentEditor({ enableEditor: true, isReadOnly: false }); -//Enable editor history module. -editor.enableEditorHistory = true; -``` - -You can enable or disable history preservation for a Document Editor instance any time using the ‘enableEditorHistory’ property. Refer to the following sample code. - -```ts -editor.enableEditorHistory = false; -``` - -## Undo and redo - -You can perform undo and redo by ‘CTRL+Z’ and ‘CTRL+Y’ keyboard shortcuts. Document Editor exposes API to do it programmatically. - -To undo the last editing operation in Document Editor, refer to the following sample code. - -```ts -editor.editorHistory.undo(); -``` - -To redo the last undone action, refer to the following code example. - -```ts -editor.editorHistory.redo(); -``` - -## Stack size - -History of editing actions will be maintained in stack, so that the last item will be reverted first. By default, Document Editor limits the size of undo and redo stacks to 500 each respectively. However, you can customize this limit. Refer to the following sample code. - -```ts -//Set undo limit. -editor.editorHistory.undoLimit = 400; -//Set redo limit. -editor.editorHistory.redoLimit = 400; -``` - -## See Also - -* [Feature modules](../document-editor/feature-module/) -* [Keyboard shortcuts](../document-editor/keyboard-shortcut/) \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to.md b/ej2-javascript/document-editor/how-to.md deleted file mode 100644 index 08aceb385..000000000 --- a/ej2-javascript/document-editor/how-to.md +++ /dev/null @@ -1,78 +0,0 @@ ---- -layout: post -title: How to in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about How to in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: How to -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# How to in ##Platform_Name## Document editor control - -Document Editor triggers the [`keyDown`](../api/document-editor/documentEditorKeyDownEventArgs/) event every time when any key is entered and provides an instance of `DocumentEditorKeyDownEventArgs`. You can use the `isHandled` property to override the keyboard shortcut behavior. - -## Preventing default keyboard shortcut - -The following code shows how to prevent the `CTRL + C` keyboard shortcut for copying selected content in Document Editor. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/prevent-keyboard-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/prevent-keyboard-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/prevent-keyboard-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/prevent-keyboard-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/prevent-keyboard-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/prevent-keyboard-cs1" %} -{% endif %} - -## Override or define the keyboard shortcut - -Override or define a new keyboard shortcut behavior instead of preventing the keyboard shortcut. - -For example, `Ctrl + S` keyboard shortcut saves the document in SFDT format by default, and there is no behavior for `Ctrl + Alt + S`. The following code demonstrates how to override the `Ctrl + S` shortcut to save a document in DOCX format and define `Ctrl + Alt + S` to save the document in SFDT format. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/override-keyboard-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/override-keyboard-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/override-keyboard-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/override-keyboard-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/override-keyboard-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/override-keyboard-cs1" %} -{% endif %} \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/add-save-button-in-toolbar.md b/ej2-javascript/document-editor/how-to/add-save-button-in-toolbar.md deleted file mode 100644 index c38e65496..000000000 --- a/ej2-javascript/document-editor/how-to/add-save-button-in-toolbar.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -layout: post -title: Add save button in ##Platform_Name## Document editor toolbar | Syncfusion -description: Learn here to add save button in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Add save button tool bar -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Add save button in ##Platform_Name## Document editor toolbar - -## To add a save button to the existing toolbar in DocumentEditorContainer - -DocumentEditorContainer allows you to add a new button to the existing items in a toolbar using [`CustomToolbarItemModel`](../../api/document-editor/customToolbarItemModel/) and with existing items in [`toolbarItems`](../../api/document-editor-container/#toolbaritems) property. Newly added item click action can be defined in [`toolbarclick`](../../api/toolbar/clickEventArgs/). - -{% if page.publishingplatform == "typescript" %} -```ts -import { DocumentEditorContainer, CustomToolbarItemModel, Toolbar } from '@syncfusion/ej2-documenteditor'; -import { ClickEventArgs } from '@syncfusion/ej2-navigations'; -DocumentEditorContainer.Inject(Toolbar); - -let hostUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -let toolItem: CustomToolbarItemModel = { - prefixIcon: "e-save icon", - tooltipText: "Save the Document", - text: "Save", - id: "save" -}; - -//Initialize Document Editor Container component with custom toolbar item. -let container: DocumentEditorContainer = new DocumentEditorContainer({ - toolbarItems: ['New', 'Open', toolItem, 'Separator', 'Undo', 'Redo', 'Separator', 'Image', 'Table', 'Hyperlink', 'Bookmark', 'TableOfContents', 'Separator', 'Header', 'Footer', 'PageSetup', 'PageNumber', 'Break', 'InsertFootnote', 'InsertEndnote', 'Separator', 'Find', 'Separator', 'Comments', 'TrackChanges', 'Separator', 'LocalClipboard', 'RestrictEditing', 'Separator', 'FormFields', 'UpdateFields','ContentControl'], serviceUrl:hostUrl, height:'590px', -}); -container.appendTo('#container'); -//To handle custom toolbar click event. -container.toolbarClick = (args: ClickEventArgs): void => { - switch (args.item.id) { - case 'save': - //Save the document(Download the document) - container.documentEditor.save('sample', 'Docx'); - break; - } -}; -{% elsif page.publishingplatform == "javascript" %} -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); -var hostUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -let toolItem = { - prefixIcon: "e-save icon", - tooltipText: "Save the Document", - text: "Save", - id: "save" -}; - -var container = new ej.documenteditor.DocumentEditorContainer({ toolbarItems: ['New', 'Open', toolItem, 'Separator', 'Undo', 'Redo', 'Separator', 'Image', 'Table', 'Hyperlink', 'Bookmark', 'TableOfContents', 'Separator', 'Header', 'Footer', 'PageSetup', 'PageNumber', 'Break', 'InsertFootnote', 'InsertEndnote', 'Separator', 'Find', 'Separator', 'Comments', 'TrackChanges', 'Separator', 'LocalClipboard', 'RestrictEditing', 'Separator', 'FormFields', 'UpdateFields', 'ContentControl'], serviceUrl: hostUrl, height: '590px' }); - -container.appendTo("#container"); -//To handle custom toolbar click event. -container.toolbarClick = (args) => { - switch (args.item.id) { - case 'save': - //Save the document(Download the document) - container.documentEditor.save('sample', 'Docx'); - break; - } -}; -{% endif %} -``` -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - ->Note: Default value of `toolbarItems` is `['New', 'Open', 'Separator', 'Undo', 'Redo', 'Separator', 'Image', 'Table', 'Hyperlink', 'Bookmark', 'TableOfContents', 'Separator', 'Header', 'Footer', 'PageSetup', 'PageNumber', 'Break', 'InsertFootnote', 'InsertEndnote', 'Separator', 'Find', 'Separator', 'Comments', 'TrackChanges', 'Separator', 'LocalClipboard', 'RestrictEditing', 'Separator', 'FormFields', 'UpdateFields','ContentControl']`. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/auto-save-document-in-document-editor.md b/ej2-javascript/document-editor/how-to/auto-save-document-in-document-editor.md deleted file mode 100644 index d77f4a4bf..000000000 --- a/ej2-javascript/document-editor/how-to/auto-save-document-in-document-editor.md +++ /dev/null @@ -1,128 +0,0 @@ ---- -layout: post -title: Auto save document in document editor in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Auto save document in document editor in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Auto save document in document editor -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Auto save document in document editor in ##Platform_Name## Document editor control - -In this article, we are going to see how to autosave the document in AWS S3. You can automatically save the edited content in regular intervals of time. It helps reduce the risk of data loss by saving an open document automatically at customized intervals. - -The following example illustrates how to auto save the document in AWS S3. - -* In the client-side, using content change event, we can automatically save the edited content in regular intervals of time. Based on `contentChanged` boolean, the document send as Docx format to server-side using [`saveAsBlob`](../../api/document-editor/#saveasblob) method. - -```ts -import { - DocumentEditorContainer, - Toolbar, -} from '@syncfusion/ej2-documenteditor'; -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); -let contentChanged: boolean = false; -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.created = function () { - setInterval(() => { - if (contentChanged) { - //You can save the document as below - container.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - console.log('Saved sucessfully'); - let exportedDocument: Blob = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('fileName', 'sample.docx'); - formData.append('data', exportedDocument); - /* tslint:disable */ - var req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62869/api/documenteditor/SaveToS3', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); - contentChanged = false; - } - }, 1000); -}; -container.appendTo('#container'); - -container.contentChange = (): void => { - contentChanged = true; -}; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -* In server-side, configure the access key and secret key in `web.config` file and register profile in `startup.cs`. - -In `web.config`, add key like below format: - -```c# - - - - - -``` - -In `startup.cs`, register profile in below format: - -```c# -Amazon.Util.ProfileManager.RegisterProfile("sync_development","", ""); -``` - -* In server-side, Receives the stream content from client-side and process it to save the document in aws s3. Add Web API in controller file like below to save the document in aws s3. - -```c# -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("SaveToS3")] -public string SaveToS3() -{ - IFormFile file = HttpContext.Request.Form.Files[0]; - Stream stream = new MemoryStream(); - file.CopyTo(stream); - UploadFileStreamToS3(stream, "documenteditor", "", "GettingStarted.docx"); - stream.Close(); - return "Sucess"; -} - -public bool UploadFileStreamToS3(System.IO.Stream localFilePath, string bucketName, string subDirectoryInBucket, string fileNameInS3) -{ - AWSCredentials credentials = new StoredProfileAWSCredentials("sync_development"); - IAmazonS3 client = new AmazonS3Client(credentials, Amazon.RegionEndpoint.USEast1); - TransferUtility utility = new TransferUtility(client); - TransferUtilityUploadRequest request = new TransferUtilityUploadRequest(); - - if (subDirectoryInBucket == "" || subDirectoryInBucket == null) - { - request.BucketName = bucketName; //no subdirectory just bucket name - } - else - { // subdirectory and bucket name - request.BucketName = bucketName + @"/" + subDirectoryInBucket; - } - request.Key = fileNameInS3; //file name up in S3 - request.InputStream = localFilePath; - utility.Upload(request); //commensing the transfer - - return true; //indicate that the file was sent -} -``` - -Get the complete working sample in this [`link`](https://github.com/SyncfusionExamples/Auto-Save-documents-in-Word-Processor). diff --git a/ej2-javascript/document-editor/how-to/auto-save-document.md b/ej2-javascript/document-editor/how-to/auto-save-document.md deleted file mode 100644 index fec223cb6..000000000 --- a/ej2-javascript/document-editor/how-to/auto-save-document.md +++ /dev/null @@ -1,89 +0,0 @@ ---- -layout: post -title: Auto save document in ##Platform_Name## Document Editor | Syncfusion -description: Learn here all about Auto save document in document editor in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Auto save document in document editor -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Auto save document in ##Platform_Name## Document editor control - -In this article, we are going to see how to autosave the document to server. You can automatically save the edited content in regular intervals of time. It helps reduce the risk of data loss by saving an open document automatically at customized intervals. - -The following example illustrates how to auto save the document in server. - -* In the client-side, using content change event, we can automatically save the edited content in regular intervals of time. Based on `contentChanged` boolean, the document send as Docx format to server-side using [`saveAsBlob`](../../api/document-editor/#saveasblob) method. - -```ts -import { - DocumentEditorContainer, - Toolbar, -} from '@syncfusion/ej2-documenteditor'; -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); -let contentChanged: boolean = false; -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.created = function () { - setInterval(() => { - if (contentChanged) { - //You can save the document as below - container.documentEditor.saveAsBlob('Docx').then((blob: Blob) => { - console.log('Saved sucessfully'); - let exportedDocument: Blob = blob; - //Now, save the document where ever you want. - let formData: FormData = new FormData(); - formData.append('fileName', 'sample.docx'); - formData.append('data', exportedDocument); - /* tslint:disable */ - var req = new XMLHttpRequest(); - // Replace your running Url here - req.open( - 'POST', - 'http://localhost:62869/api/documenteditor/AutoSave', - true - ); - req.onreadystatechange = () => { - if (req.readyState === 4) { - if (req.status === 200 || req.status === 304) { - console.log('Saved sucessfully'); - } - } - }; - req.send(formData); - }); - contentChanged = false; - } - }, 1000); -}; -container.appendTo('#container'); - -container.contentChange = (): void => { - contentChanged = true; -}; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -* In server-side, Receives the stream content from client-side and process it to save the document in Server or Database from the received stream. Add Web API in controller file like below to save the document. - -```c# -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("AutoSave")] -public string AutoSave() -{ - IFormFile file = HttpContext.Request.Form.Files[0]; - Stream stream = new MemoryStream(); - file.CopyTo(stream); - //Save the stream to database or server as per the requirement. - stream.Close(); - return "Sucess"; -} -``` - -## See Also -* [Autosave document in DocumentEditor](../../document-editor/how-to/auto-save-document-in-document-editor) diff --git a/ej2-javascript/document-editor/how-to/change-document-view.md b/ej2-javascript/document-editor/how-to/change-document-view.md deleted file mode 100644 index fb94df9c1..000000000 --- a/ej2-javascript/document-editor/how-to/change-document-view.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -layout: post -title: Change document view in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Change document view in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Change document view -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Change document view in ##Platform_Name## Document editor control - -## How to change the document view in DocumentEditor component - -DocumentEditor allows you to change the view to web layout and print using the [`layoutType`](../../api/document-editor#layouttype) property with the supported [`LayoutType`](../../api/document-editor/layoutType/). - -```ts -let docEdit: DocumentEditor = new DocumentEditor({ layoutType: 'Continuous'}); -``` - ->Note: Default value of [`layoutType`](../../api/document-editor#layouttype) in DocumentEditor component is [`Pages`](../../api/document-editor/layoutType/). - -## How to change the document view in DocumentEditorContainer component - -DocumentEditorContainer component allows you to change the view to web layout and print using the [`layoutType`](../../api/document-editor-container#layouttype) property with the supported [`LayoutType`](../../api/document-editor/layoutType/). - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ layoutType: "Continuous" }); -``` - ->Note: Default value of [`layoutType`](../../api/document-editor#layouttype) in DocumentEditorContainer component is [`Pages`](../../api/document-editor/layoutType/). \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/change-the-cursor-color-in-document-editor.md b/ej2-javascript/document-editor/how-to/change-the-cursor-color-in-document-editor.md deleted file mode 100644 index 9cbe5252e..000000000 --- a/ej2-javascript/document-editor/how-to/change-the-cursor-color-in-document-editor.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -layout: post -title: Change the cursor color in document editor in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Change the cursor color in document editor in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Change the cursor color in document editor -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Change the cursor color in document editor in ##Platform_Name## Document editor control - -Document Editor default cursor color is black. The user can change the color by overriding the css property using class name. The Document editor cursor css have a class named `e-de-blink-cursor`. - -Please refer the below code snippet to change the cursor color to red. - -``` -.e-de-blink-cursor { -border-left: 1px solid red!important; -} -``` - -Output will be like below: - -![Change the cursor color in document editor](../images/cursor-css.png) diff --git a/ej2-javascript/document-editor/how-to/change-the-default-search-highlight-color.md b/ej2-javascript/document-editor/how-to/change-the-default-search-highlight-color.md deleted file mode 100644 index 4b9df75d6..000000000 --- a/ej2-javascript/document-editor/how-to/change-the-default-search-highlight-color.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -layout: post -title: Change the default search highlight color in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Change the default search highlight color in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Change the default search highlight color -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Change the default search highlight color in ##Platform_Name## Document editor control - -Document editor provides an options to change the default search highlight color using [`searchHighlightColor`](../../api/document-editor/documentEditorSettingsModel/#searchhighlightcolor) in Document editor settings. The highlight color which is given in [`documentEditorSettings`](../../api/document-editor-container/#documenteditorsettings) will be highlighted on the searched text. By default, search highlight color is `yellow`. - -Similarly, you can use [`documentEditorSettings`](../../api/document-editor#documenteditorsettings) property for DocumentEditor also. - -The following example code illustrates how to change the default search highlight color. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true,height: '590px', -// Add required search highlight color - documentEditorSettings: { - searchHighlightColor: 'Grey', - } -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); - -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Output will be like below: - -![How to change the default search highlight color](../images/search-color.png) \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/customize-color-picker.md b/ej2-javascript/document-editor/how-to/customize-color-picker.md deleted file mode 100644 index 537f4c5de..000000000 --- a/ej2-javascript/document-editor/how-to/customize-color-picker.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -layout: post -title: Customize color picker in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Customize color picker in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Customize Color Picker -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Customize color picker in ##Platform_Name## Document editor control - -Document editor provides an options to customize the color picker using [`colorPickerSettings`](../../api/document-editor/documentEditorSettingsModel/#colorpickersettings) in Document editor settings. The color picker offers customization options for default appearance, by allowing selection between Picker or Palette mode, for font and border colors." - -Similarly, you can use [`documentEditorSettings`](../../api/document-editor#documenteditorsettings) property for DocumentEditor also. - -The following example code illustrates how to Customize the color picker in Document editor container. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true,height: '590px', - //Customizing options for color picker. - documentEditorSettings: { - colorPickerSettings: { mode: 'Palette', modeSwitcher: true, showButtons: true }, - } -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -The following table illustrates all the possible properties for the color picker. - -| Property | Behavior | -|---|---| -| columns | It is used to render the ColorPicker palette with specified columns. Defaults to 10 | -| disabled | It is used to enable / disable ColorPicker component. If it is disabled the ColorPicker popup won’t open. Defaults to false | -| mode | It is used to render the ColorPicker with the specified mode. Defaults to ‘Picker’ | -| modeSwitcher | It is used to show / hide the mode switcher button of ColorPicker component. Defaults to true | -| showButtons | It is used to show / hide the control buttons (apply / cancel) of ColorPicker component. Defaults to true | - - ->**Note**: According to the Word document specifications, it is not possible to modify the **`Predefined Highlight colors`**. This limitation means that the range of highlight colors provided by default cannot be customized or expanded upon by the user to suit individual preferences. Consequently, users must work within the confines of the existing color palette, as no functionality currently exists to modify or personalize these predefined highlighting options. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/customize-context-menu.md b/ej2-javascript/document-editor/how-to/customize-context-menu.md deleted file mode 100644 index c2eebb9e4..000000000 --- a/ej2-javascript/document-editor/how-to/customize-context-menu.md +++ /dev/null @@ -1,205 +0,0 @@ ---- -layout: post -title: Customize context menu in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Customize context menu in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Customize context menu -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Customize context menu in ##Platform_Name## Document editor control - -## How to customize context menu in Document Editor - -Document Editor allows you to add custom option in context menu. It can be achieved by using the [`addCustomMenu()`](../../api/document-editor/contextMenu/#addcustommenu) method and custom action is defined using the [`customContextMenuSelect`](../../api/document-editor/customContentMenuEventArgs/) - -### Add Custom Option - -The following code shows how to add custom option in context menu. - -```ts -let documentEditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documentEditor.enableAllModules(); -documentEditor.appendTo('#DocumentEditor'); -//Creating custom menu items -let menuItems: MenuItemModel[] = [ - { - text: 'Search In Google', - id: 'search_in_google', - iconCss: 'e-icons e-de-ctnr-find' - }]; -//Adding custom options -documentEditor.contextMenu.addCustomMenu(menuItems, false); -//To handle contextmenu select event -documentEditor.customContextMenuSelect = (args: CustomContentMenuEventArgs): void => { - let item: string = args.id; - let id: string = documentEditor.element.id; - switch (item) { - case id + 'search_in_google': - let searchContent: string = documentEditor.selection.text; - if (!documentEditor.selection.isEmpty && /\S/.test(searchContent)) { - window.open('http://google.com/search?q=' + searchContent); - } - break; - } -}; -``` - -### Customize custom option in context menu - -Document Editor allows you to customize the added custom option and also to hide/show default context menu. - -#### Hide default context menu items - -The following code shows how to hide default context menu and add custom option in context menu. - -```ts -let documentEditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documentEditor.enableAllModules(); -documentEditor.appendTo('#DocumentEditor'); -//Creating custom menu items -let menuItems: MenuItemModel[] = [ - { - text: 'Search In Google', - id: 'search_in_google', - iconCss: 'e-icons e-de-ctnr-find' - }]; -//Adding custom options -documentEditor.contextMenu.addCustomMenu(menuItems, true); -``` - -#### Customize added context menu items - -The following code shows how to hide/show added custom option in context menu using the [`customContextMenuBeforeOpen`](../../api/document-editor/beforeOpenCloseCustomContentMenuEventArgs/). - -```ts -let documentEditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -documentEditor.enableAllModules(); -documentEditor.appendTo('#DocumentEditor'); -//Creating custom menu items -let menuItems: MenuItemModel[] = [ - { - text: 'Search In Google', - id: 'search_in_google', - iconCss: 'e-icons e-de-ctnr-find' - }]; -//Adding custom options -documentEditor.contextMenu.addCustomMenu(menuItems, false); -//To show/hide custom menu item -documentEditor.customContextMenuBeforeOpen = (args: BeforeOpenCloseCustomContentMenuEventArgs): void => { - let search: HTMLElement = document.getElementById(args.ids[0]); - search.style.display = 'none'; - let searchContent: string = documentEditor.selection.text; - if ((!documentEditor.selection.isEmpty) && (/\S/.test(searchContent))) { - search.style.display = 'block'; - } -}; -//To handle contextmenu select event -documentEditor.customContextMenuSelect = (args: CustomContentMenuEventArgs): void => { - let item: string = args.id; - let id: string = documentEditor.element.id; - switch (item) { - case id + 'search_in_google': - let searchContent: string = documentEditor.selection.text; - if (!documentEditor.selection.isEmpty && /\S/.test(searchContent)) { - window.open('http://google.com/search?q=' + searchContent); - } - break; - } -}; -``` - -The following is the output of custom context menu with customization. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/customize-context-menu-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/customize-context-menu-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/customize-context-menu-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/customize-context-menu-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/customize-context-menu-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/customize-context-menu-cs1" %} -{% endif %} - -#### Customize Context Menu with sub-menu items - -Document Editor allows you to customize the Context Menu with sub-menu items. It can be achieved by using the [`addCustomMenu()`](../../api/document-editor/contextMenu/#addcustommenu) method. - -The following code shows how to add a sub items in the custom option in context menu in Document Editor Container. - -```ts -import { - DocumentEditorContainer, - Toolbar, -} from '@syncfusion/ej2-documenteditor'; -import { MenuItemModel } from '@syncfusion/ej2-navigations'; - -//Inject require modules. -DocumentEditorContainer.Inject(Toolbar); - -// creating Custom Options -let menuItems: MenuItemModel[] = [ - { - text: 'Form field', - id: 'form field', - iconCss: 'e-de-formfield e-icons', - items: [ - { - text: 'Text form', - id: 'Text form', - iconCss: 'e-icons e-de-textform', - }, - { - text: 'Check box', - id: 'Check box', - iconCss: 'e-icons e-de-checkbox-form', - }, - { - text: 'Drop down', - id: 'Drop down', - iconCss: 'e-icons e-de-dropdownform', - }, - ], - }, -]; -//Initialize Document Editor component. -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); - -//Open the default document in `created` event. -container.created = function () { - // adding Custom Options - container.documentEditor.contextMenu.addCustomMenu(menuItems, false, true); -}; -//Render Document Editor Container component. -container.appendTo('#DocumentEditor'); - - -``` \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/customize-font-family-drop-down.md b/ej2-javascript/document-editor/how-to/customize-font-family-drop-down.md deleted file mode 100644 index c1c136a8f..000000000 --- a/ej2-javascript/document-editor/how-to/customize-font-family-drop-down.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -layout: post -title: Customize font family drop down in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Customize font family drop down in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Customize font family drop down -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Customize font family drop down in ##Platform_Name## Document editor control - -Document editor provides an options to customize the font family drop down list values using [`fontfamilies`](../../api/document-editor/documentEditorSettingsModel/#fontfamilies) in Document editor settings. Fonts which are added in fontFamilies of [`documentEditorSettings`](../../api/document-editor-container/#documenteditorsettings) will be displayed on font drop down list of text properties pane and font dialog. - -Similarly, you can use [`documentEditorSettings`](../../api/document-editor#documenteditorsettings) property for DocumentEditor also. - -The following example code illustrates how to change the font families in Document editor container. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true,height: '590px', -// Add required font families to list it in font drop down - documentEditorSettings: { - fontFamilies: ['Algerian', 'Arial', 'Calibri', 'Windings'], - } -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Output will be like below: - -![Font](../images/font-family.png) \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/customize-tool-bar.md b/ej2-javascript/document-editor/how-to/customize-tool-bar.md deleted file mode 100644 index 53c61a98a..000000000 --- a/ej2-javascript/document-editor/how-to/customize-tool-bar.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -layout: post -title: Customize tool bar in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Customize tool bar in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Customize tool bar -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Customize tool bar in ##Platform_Name## Document editor control - -## How to customize existing toolbar in DocumentEditorContainer - -DocumentEditorContainer allows you to customize(add, show, hide, enable, and disable) existing items in a toolbar. - -* Add - New items can defined by [`CustomToolbarItemModel`](../../api/document-editor/customToolbarItemModel/) and with existing items in [`toolbarItems`](../../api/document-editor-container/#toolbaritems) property. Newly added item click action can be defined in [`toolbarclick`](../../api/toolbar/clickEventArgs/). - -* Show, Hide - Existing items can be shown or hidden using the [`toolbarItems`](../../api/document-editor-container/#toolbaritems) property. Pre-defined toolbar items are available with [`ToolbarItem`](../../api/document-editor/toolbarItem/). - -* Enable, Disable - Toolbar items can be enabled or disable using [`enableItems`](../../api/document-editor-container/toolbar/#enableItems) - -```ts -let toolItem: CustomToolbarItemModel = { - prefixIcon: "e-de-ctnr-lock", - tooltipText: "Disable Image", - text: onWrapText("Disable Image"), - id: "Custom" -}; - -//Initialize Document Editor Container component with custom toolbar item. -let container: DocumentEditorContainer = new DocumentEditorContainer({ - toolbarItems: [toolItem, 'Undo', 'Redo', 'Separator', 'Image', 'Table', 'Hyperlink', 'Bookmark', 'TableOfContents', 'Separator', 'Header', 'Footer', 'PageSetup', 'PageNumber', 'Break', 'InsertFootnote', 'InsertEndnote', 'Separator', 'Find', 'Separator', 'Comments', 'TrackChanges', 'Separator', 'LocalClipboard', 'RestrictEditing', 'Separator', 'FormFields', 'UpdateFields','ContentControl'] -}); -container.appendTo('#container'); -//To handle custom toolbar click event. -container.toolbarClick = (args: ClickEventArgs): void => { - switch (args.item.id) { - case 'Custom': - //Disable image toolbar item. - container.toolbar.enableItems(4, false); - break; - } -}; - -function onWrapText(text: string): string { - let content: string = ''; - const index: number = text.lastIndexOf(' '); - - if (index !== -1) { - content = text.slice(0, index) + "
    " + text.slice(index + 1) + "
    "; - } else { - content = text; - } - - return content; -} -``` - ->Note: Default value of `toolbarItems` is `['New', 'Open', 'Separator', 'Undo', 'Redo', 'Separator', 'Image', 'Table', 'Hyperlink', 'Bookmark', 'TableOfContents', 'Separator', 'Header', 'Footer', 'PageSetup', 'PageNumber', 'Break', 'InsertFootnote', 'InsertEndnote', 'Separator', 'Find', 'Separator', 'Comments', 'TrackChanges', 'Separator', 'LocalClipboard', 'RestrictEditing', 'Separator', 'FormFields', 'UpdateFields','ContentControl']`. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/deploy-document-editor-component-for-mobile.md b/ej2-javascript/document-editor/how-to/deploy-document-editor-component-for-mobile.md deleted file mode 100644 index 9cf4f5626..000000000 --- a/ej2-javascript/document-editor/how-to/deploy-document-editor-component-for-mobile.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -layout: post -title: Deploy document editor component for mobile in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Deploy document editor component for mobile in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Deploy document editor component for mobile -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Deploy document editor component for mobile in ##Platform_Name## Document editor control - -## Document editor component for Mobile - -At present, Document editor component is not responsive for mobile, and we haven't ensured the editing functionalities in mobile browsers. Whereas it works properly as a document viewer in mobile browsers. - -Hence, it is recommended to switch the Document editor component as read-only in mobile browsers. Also, invoke [`fitPage`](../../api/document-editor/#fitpage) method with [`FitPageWidth`](../../api/document-editor/pageFitType/) parameter in document change event, such as to display one full page by adjusting the zoom factor. - -The following example code illustrates how to deploy Document Editor component for Mobile. - -```ts -//Initialize Document Editor Container component. -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, height: '590px' -}); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#DocumentEditor'); - -//To detect the device -let isMobileDevice: bool = /Android|Windows Phone|webOS/i.test(navigator.userAgent); - -container.documentChange = () => { - if (isMobileDevice) { - container.restrictEditing = true; - setTimeout(() => { - container.documentEditor.fitPage("FitPageWidth"); - }, 50); - } - else { - container.restrictEditing = false; - } -} -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -You can download the complete working example from this [GitHub location](https://github.com/SyncfusionExamples/Deploy-Document-Editor-in-Mobile-Friendly-Web-page/) - ->Note: You can use the [`restrictEditing`](../../api/document-editor-container#restrictediting) in DocumentEditorContainer and [`isReadOnly`](../../api/document-editor/#isreadonly) in DocumentEditor based on your requirement to change component to read only mode. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/disable-auto-focus.md b/ej2-javascript/document-editor/how-to/disable-auto-focus.md deleted file mode 100644 index 0745f0bd6..000000000 --- a/ej2-javascript/document-editor/how-to/disable-auto-focus.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -layout: post -title: Disable auto focus in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Disable auto focus in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Disable auto focus -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Disable auto focus in ##Platform_Name## Document editor control - -Document Editor gets focused automatically when the page loads. If you want the Document editor not to be focused automatically it can be customized. - -The following example illustrates to disable the auto focus in DocumentEditorContainer. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', enableAutoFocus: false}); -``` - ->Note: Default value of [`enableAutoFocus`](../../api/document-editor-container/#enableautofocus) property is `true`. - -The following example illustrates to disable the auto focus in DocumentEditor. - -```ts -let editor: DocumentEditor = new DocumentEditor({ height: '590px', enableAutoFocus: false}); -``` - ->Note: Default value of [`enableAutoFocus`](../../api/document-editor/#enableautofocus) property is `true`. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/disable-drag-and-drop.md b/ej2-javascript/document-editor/how-to/disable-drag-and-drop.md deleted file mode 100644 index 4ff09bfa5..000000000 --- a/ej2-javascript/document-editor/how-to/disable-drag-and-drop.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -layout: post -title: Disable drag and drop in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Disable drag and drop in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Disable drag and drop -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Disable drag and drop in ##Platform_Name## Document editor control - -Document Editor provides support to drag and drop contents within the component and it can be customized(enable and disable) using [`allowDragAndDrop`](../../api/document-editor-container/documenteditorsettings/#allowDragAndDrop) property in Document editor settings. - -The following example illustrates to disable the drag and drop option in DocumentEditorContainer. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', documentEditorSettings: { allowDragAndDrop: false } }); -``` - ->Note: Default value of [`allowDragAndDrop`](../../api/document-editor-container/#documenteditorsettings/#allowDragAndDrop) property is `true`. - -The following example illustrates to disable the drag and drop option in DocumentEditor. - -```ts -let editor: DocumentEditor = new DocumentEditor({ height: '590px', documentEditorSettings: { allowDragAndDrop: false } }); -``` - ->Note: Default value of [`allowDragAndDrop`](../../api/document-editor/#documenteditorsettings/#allowDragAndDrop) property is `true`. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/disable-header-and-footer-edit-in-document-editor.md b/ej2-javascript/document-editor/how-to/disable-header-and-footer-edit-in-document-editor.md deleted file mode 100644 index fccb5947c..000000000 --- a/ej2-javascript/document-editor/how-to/disable-header-and-footer-edit-in-document-editor.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -layout: post -title: Disable header and footer edit in ##Platform_Name## Document editor | Syncfusion -description: Learn here all about disabling editing in header and footer ##Platform_Name## Document editor control. -platform: ej2-javascript -control: Disable header and footer edit in document editor -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Disable header and footer edit in ##Platform_Name## Document editor - -## Disable header and footer edit in DocumentEditorContainer instance - -You can use [`restrictEditing`](../../api/document-editor-container/#restrictediting) property to disable header and footer editing based on selection context type. - -RestrictEditing allows you to restrict the document modification and makes the Document read only mode. So, by using this property, and if selection inside header or footer, you can set this property as true. - -The following example code illustrates how to header and footer edit in `DocumentEditorContainer` instance. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let hostUrl: string = 'https://services.syncfusion.com/js/production/'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = hostUrl + 'api/documenteditor/'; -container.appendTo('#container'); -container.selectionChange = (): void => { - // Check whether selection is in header - if (container.documentEditor.selection.contextType.indexOf('Header') > -1 || - // Check whether selection is in Footer - container.documentEditor.selection.contextType.indexOf('Footer') > -1) { - // Change the document to read only mode - container.restrictEditing = true; - } else { - // Change the document to editable mode - container.restrictEditing = false; - } -}; -``` - -Otherwise, you can disable clicking inside Header or Footer by using [`closeHeaderFooter`](../../api/document-editor/selection/#closeheaderfooter) API in selection module. - -The following example code illustrates how to close header and footer when selection is inside header or footer in `DocumentEditorContainer` instance. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let hostUrl: string = 'https://services.syncfusion.com/js/production/'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = hostUrl + 'api/documenteditor/'; -container.appendTo('#container'); -container.selectionChange = (): void => { - - // Check whether selection is in header - if (container.documentEditor.selection.contextType.indexOf('Header') > -1 || - // Check whether selection is in Footer - container.documentEditor.selection.contextType.indexOf('Footer') > -1) { - // Close header Footer - container.documentEditor.selection.closeHeaderFooter(); - } -}; -``` - -## Disable header and footer edit in DocumentEditor instance - -Like restrictEditing, you can use [`isReadOnly`](../../api/document-editor/#isreadonly) property in Document editor to disable header and footer edit. - -The following example code illustrates how to header and footer edit in `DocumentEditor` instance. - -```ts -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -let hostUrl: string = 'https://services.syncfusion.com/js/production/'; - -let documentEditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, height: '590px' }); -documentEditor.enableAllModules(); -documentEditor.serviceUrl = hostUrl + 'api/documenteditor/'; -documentEditor.appendTo('#documentEditor'); -documentEditor.selectionChange = (): void => { - // Check whether selection is in header - if (documentEditor.selection.contextType.indexOf('Header') > -1 || - // Check whether selection is in Footer - documentEditor.selection.contextType.indexOf('Footer') > -1) { - // Change the document to read only mode - documentEditor.isReadOnly = true; - } else { - // Change the document to editable mode - documentEditor.isReadOnly = false; - } -}; -``` diff --git a/ej2-javascript/document-editor/how-to/disable-optimized-text-measuring.md b/ej2-javascript/document-editor/how-to/disable-optimized-text-measuring.md deleted file mode 100644 index f5051a912..000000000 --- a/ej2-javascript/document-editor/how-to/disable-optimized-text-measuring.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -layout: post -title: Disable optimized text measuring in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Disable optimized text measuring in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Disable optimized text measuring -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Disable optimized text measuring in ##Platform_Name## Document editor control - -Starting from v19.3.0.x, the accuracy of text size measurements in Document editor is improved such as to match Microsoft Word pagination for most Word documents. This improvement is included as default behavior along with an optional API [`enableOptimizedTextMeasuring`](../../api/document-editor/documentEditorSettingsModel/#enableoptimizedtextmeasuring) in Document editor settings. - -If you want the Document editor component to retain the document pagination (display page-by-page) behavior like v19.2.0.x and older versions. Then you can disable this optimized text measuring improvement, by setting `false` to [`enableOptimizedTextMeasuring`](../../api/document-editor/documentEditorSettingsModel/#enableoptimizedtextmeasuring) property of JavaScript Document Editor component. - -## Disable optimized text measuring in `DocumentEditorContainer` instance - -The following example code illustrates how to disable optimized text measuring improvement in `DocumentEditorContainer` instance. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -// Disable optimized text measuring improvement -container.documentEditorSettings = { enableOptimizedTextMeasuring: false }; - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -``` - -## Disable optimized text measuring in `DocumentEditor` instance - -The following example code illustrates how to disable optimized text measuring improvement in `DocumentEditor` instance. - -```ts -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -documenteditor.enableAllModules(); - -// Disable optimized text measuring improvement -documenteditor.documentEditorSettings = { enableOptimizedTextMeasuring: false }; - -documenteditor.appendTo('#DocumentEditor'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/enable-ruler-in-document-editor-component.md b/ej2-javascript/document-editor/how-to/enable-ruler-in-document-editor-component.md deleted file mode 100644 index 493f4bcbf..000000000 --- a/ej2-javascript/document-editor/how-to/enable-ruler-in-document-editor-component.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -layout: post -title: how to enable ruler in ##Platform_Name## Document editor control | Syncfusion -component: "DocumentEditor" -description: Learn how to enable ruler in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Enable ruler -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Enable ruler - -## How to enable ruler in Document Editor component - -Using ruler we can refer to setting specific margins, tab stops, or indentations within a document to ensure consistent formatting in Document Editor. - -The following example illustrates how to enable ruler in Document Editor - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/ruler-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/ruler-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/ruler-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/ruler-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/ruler-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/ruler-cs1" %} -{% endif %} - -## How to enable ruler in Document Editor Container component - -Using ruler we can refer to setting specific margins, tab stops, or indentations within a document to ensure consistent formatting in Document Editor Container. - -The following example illustrates how to enable ruler in Document Editor Container. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/ruler-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/ruler-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/ruler-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/ruler-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/ruler-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/ruler-cs2" %} -{% endif %} \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/export-document-as-pdf.md b/ej2-javascript/document-editor/how-to/export-document-as-pdf.md deleted file mode 100644 index 9b3168188..000000000 --- a/ej2-javascript/document-editor/how-to/export-document-as-pdf.md +++ /dev/null @@ -1,210 +0,0 @@ ---- -layout: post -title: Export document as pdf in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Export document as pdf in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Export document as pdf -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Export document as pdf in ##Platform_Name## Document editor control - -In this article, we are going to see how to export the document as Pdf format. You can export the document as Pdf in following ways: - -## Export the document as pdf in client-side - -Use [`pdf export component`](https://www.npmjs.com/package/@syncfusion/ej2-pdf-export) in application level to export the document as pdf using [`exportasimage`](../../api/document-editor/#exportasimage) API. Here, all pages will be converted to image and inserted as pdf pages(works like print as PDF). - ->Note: -* You can install the pdf export packages from this [`link`](https://www.npmjs.com/package/@syncfusion/ej2-pdf-export). -* There is one limitation we can’t search the text because we are exporting the pdf as image. - -The following example code illustrates how to export the document as pdf in client-side. - -{% if page.publishingplatform == "typescript" %} - -```ts -import { - DocumentEditorContainer, - ImageFormat, - Toolbar, -} from '@syncfusion/ej2-documenteditor'; -import { - PdfBitmap, - PdfDocument, - PdfPageOrientation, - PdfPageSettings, - PdfSection, - SizeF, -} from '@syncfusion/ej2-pdf-export'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = - 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); - -document.getElementById('export').addEventListener('click', function () { - let obj = this; - let pdfdocument: PdfDocument = new PdfDocument(); - let count: number = container.documentEditor.pageCount; - container.documentEditor.documentEditorSettings.printDevicePixelRatio = 2; - let loadedPage = 0; - for (let i = 1; i <= count; i++) { - setTimeout(() => { - let format: ImageFormat = 'image/jpeg' as ImageFormat; - // Getting pages as image - let image = container.documentEditor.exportAsImage(i, format); - image.onload = function () { - let imageHeight = parseInt( - image.style.height.toString().replace('px', '') - ); - let imageWidth = parseInt( - image.style.width.toString().replace('px', '') - ); - let section: PdfSection = pdfdocument.sections.add() as PdfSection; - let settings: PdfPageSettings = new PdfPageSettings(0); - if (imageWidth > imageHeight) { - settings.orientation = PdfPageOrientation.Landscape; - } - settings.size = new SizeF(imageWidth, imageHeight); - (section as PdfSection).setPageSettings(settings); - let page = section.pages.add(); - let graphics = page.graphics; - let imageStr = image.src.replace('data:image/jpeg;base64,', ''); - let pdfImage = new PdfBitmap(imageStr); - graphics.drawImage(pdfImage, 0, 0, imageWidth, imageHeight); - loadedPage++; - if (loadedPage == count) { - // Exporting the document as pdf - pdfdocument.save( - (container.documentEditor.documentName === '' - ? 'sample' - : container.documentEditor.documentName) + '.pdf' - ); - } - }; - }, 500); - } -}); -``` -{% elsif page.publishingplatform == "javascript" %} - -```js -// Initialize DocumentEditorContainer component. - var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - documenteditorContainer.serviceUrl = 'http://localhost:62870/api/documenteditor/'; - //DocumentEditorContainer control rendering starts - documenteditorContainer.appendTo('#DocumentEditor'); - - document.getElementById('export').addEventListener('click', function () { - let pdfdocument = new ej.pdfexport.PdfDocument(); - let count = container.documentEditor.pageCount; - container.documentEditor.documentEditorSettings.printDevicePixelRatio = 2; - let loadedPage = 0; - for (let i = 1; i <= count; i++) { - setTimeout(() => { - let format = 'image/jpeg'; - // Getting pages as image - let image = container.documentEditor.exportAsImage(i, format); - image.onload = function () { - let imageHeight = parseInt(image.style.height.toString().replace('px', '')); - let imageWidth = parseInt(image.style.width.toString().replace('px', '')); - let section = pdfdocument.sections.add(); - let settings = new ej.pdfexport.PdfPageSettings(0); - if (imageWidth > imageHeight) { - settings.orientation = PdfPageOrientation.Landscape; - } - settings.size = new ej.pdfexport.SizeF(imageWidth, imageHeight); - section.setPageSettings(settings); - let page = section.pages.add(); - let graphics = page.graphics; - let imageStr = image.src.replace('data:image/jpeg;base64,', ''); - let pdfImage = new ej.pdfexport.PdfBitmap(imageStr); - graphics.drawImage(pdfImage, 0, 0, imageWidth, imageHeight); - loadedPage++; - if (loadedPage == count) { - // Exporting the document as pdf - pdfdocument.save((container.documentEditor.documentName === ''? 'sample': container.documentEditor.documentName) + '.pdf'); - } - }; - }, 500); - } - }) -``` -{% endif %} - -## Export document as pdf in server-side using Syncfusion® DocIO - -With the help of [`Synfusion DocIO`](https://help.syncfusion.com/file-formats/docio/word-to-pdf), you can export the document as Pdf in server-side. Here, you can search the text. - -The following way illustrates how to convert the document as Pdf: - -* Using [`serialize`](../../api/document-editor/#serialize) API, convert the document as Sfdt and send it to server-side. - -The following example code illustrates how to convert the document to sfdt and pass it to server-side. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = - 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); - -document.getElementById('export').addEventListener('click', function () { - let http: XMLHttpRequest = new XMLHttpRequest(); - // Replace your running web service Url here - http.open('POST', 'http://localhost:62869/api/documenteditor/ExportPdf'); - http.setRequestHeader('Content-Type', 'application/json;charset=UTF-8'); - http.responseType = 'json'; - //Serialize document content as SFDT. - let sfdt: any = { content: container.documentEditor.serialize() }; - //Send the sfdt content to server side. - http.send(JSON.stringify(sfdt)); -}); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -* Using Save API in server-side, you can convert the sfdt to stream. -* Finally, convert the stream to Pdf using [`Syncfusion.DocIORenderer.Net.Core`](https://www.nuget.org/packages/Syncfusion.DocIORenderer.Net.Core) library. - -The following example code illustrates how to process the sfdt in server-side. - -```c# -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("ExportPdf")] -public void ExportPdf([FromBody]SaveParameter data) -{ - // Converts the sfdt to stream - Stream document = WordDocument.Save(data.content, FormatType.Docx); - Syncfusion.DocIO.DLS.WordDocument doc = new Syncfusion.DocIO.DLS.WordDocument(document, Syncfusion.DocIO.FormatType.Docx); - //Instantiation of DocIORenderer for Word to PDF conversion - DocIORenderer render = new DocIORenderer(); - //Converts Word document into PDF document - PdfDocument pdfDocument = render.ConvertToPDF(doc); - // Saves the document to server machine file system, you can customize here to save into databases or file servers based on requirement. - FileStream fileStream = new FileStream("sample.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite); - //Saves the PDF file - pdfDocument.Save(fileStream); - pdfDocument.Close(); - fileStream.Close(); - document.Close(); -} -``` - -Get the complete working sample in this [`link`](https://github.com/SyncfusionExamples/Export-document-as-PDF-in-Document-Editor/). \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/get-current-word.md b/ej2-javascript/document-editor/how-to/get-current-word.md deleted file mode 100644 index 011a7cec1..000000000 --- a/ej2-javascript/document-editor/how-to/get-current-word.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -layout: post -title: Get current word in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Get current word in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Get current word -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Get current word in ##Platform_Name## Document editor control - -You can get the current word or paragraph content from the JavaScript Document Editor component as plain text and SFDT (rich text). - -## Select and get the word in current cursor position - -You can use [`selectCurrentWord`](../../api/document-editor/selection#selectcurrentword) API in selection module to select the current word at cursor position and use [`text`](../../api/document-editor/selection/#text-code-classlanguage-textstringcode) API to get the selected content as plain text from JavaScript Document Editor component. - -The following example code illustrates how to select and get the current word as plain text. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To select the current word in document -container.documentEditor.selection.selectCurrentWord(); - -// To get the selected content as text -let selectedContentText: string = container.documentEditor.selection.text; -// To get the selected content as SFDT (rich text) -let selectedContentSFDT: string = container.documentEditor.selection.sfdt; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -To get the bookmark content as SFDT (rich text), please check this [`link`](../../document-editor/how-to/get-the-selected-content/#get-the-selected-content-as-sfdt-rich-text) - -## Select and get the paragraph in current cursor position - -You can use [`selectParagraph`](../../api/document-editor/selection/#selectparagraph) API in selection module to select the current paragraph at cursor position and use [`text`](../../api/document-editor/selection/#text-code-classlanguage-textstringcode) API or [`sfdt`](../../api/document-editor/selection/#sfdt-code-classlanguage-textstringcode) API to get the selected content as plain text or SFDT from JavaScript Document Editor component. - -The following example code illustrates how to select and get the current paragraph as SFDT. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To select the current paragraph in document -container.documentEditor.selection.selectParagraph(); - -// To get the selected content as text -let selectedContentText: string = container.documentEditor.selection.text; -// To get the selected content as SFDT (rich text) -let selectedContentSFDT: string = container.documentEditor.selection.sfdt; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/get-the-selected-content.md b/ej2-javascript/document-editor/how-to/get-the-selected-content.md deleted file mode 100644 index a3cff6404..000000000 --- a/ej2-javascript/document-editor/how-to/get-the-selected-content.md +++ /dev/null @@ -1,112 +0,0 @@ ---- -layout: post -title: Get the selected content in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Get the selected content in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Get the selected content -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Get the selected content in ##Platform_Name## Document editor control - -You can get the selected content from the JavaScript Document Editor component as plain text and SFDT (rich text). - -## Get the selected content as plain text - -You can use [`text`](../../api/document-editor/selection/#text-code-classlanguage-textstringcode) API to get the selected content as plain text from JavaScript Document Editor component. - -The following example code illustrates how to add search in google option in context menu for the selected text. - -```ts -import { DocumentEditorContainer, Toolbar, CustomContentMenuEventArgs } from '@syncfusion/ej2-documenteditor'; -import { MenuItemModel } from '@syncfusion/ej2-navigations'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); - -//Creating custom menu items -let menuItems: MenuItemModel[] = [ - { - text: 'Search In Google', - id: 'search_in_google', - iconCss: 'e-icons e-de-ctnr-find' - }]; -//Adding custom options -container.documentEditor.contextMenu.addCustomMenu(menuItems, false); -//To handle contextmenu select event -container.documentEditor.customContextMenuSelect = (args: CustomContentMenuEventArgs): void => { - let item: string = args.id; - let id: string = container.documentEditor.element.id; - switch (item) { - case id + 'search_in_google': - // To get the selected content as plain text - let searchContent: string = container.documentEditor.selection.text; - if (!container.documentEditor.selection.isEmpty && /\S/.test(searchContent)) { - window.open('http://google.com/search?q=' + searchContent); - } - break; - } -}; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -You can add the following custom options using this API, - -* Save or export the selected text as text file. -* Search the selected text in Google or other search engines. -* Show synonyms for the selected word in context menu and replace with selected synonym using the setter method of same API. - -## Get the selected content as SFDT (rich text) - -{% if page.publishingplatform == "typescript" %} - -You can use [`sfdt`](../../api/document-editor/selection/#sfdt-code-classlanguage-textstringcode) API to get the selected content as rich text from TypeScript Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -You can use [`sfdt`](../../api/document-editor/selection/#sfdt-code-classlanguage-textstringcode) API to get the selected content as rich text from JavaScript Document Editor component. - -{% endif %} - -The following example code illustrates how to get the content of a bookmark and export it as SFDT. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); - -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To select all the content in document -container.documentEditor.selection.selectAll(); -// Insert bookmark to selected content -container.documentEditor.editor.insertBookmark('Bookmark1'); -//Select the bookmark -container.documentEditor.selection.selectBookmark('Bookmark1'); -// To get the selected content as sfdt -let selectedContent: string = container.documentEditor.selection.sfdt; -// Insert the sfdt content in cursor position using paste API -container.documentEditor.editor.paste(selectedContent); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -You can add the following custom options using this API, - -* Save or export the selected content as SFDT file. -* Get the content of a bookmark in Word document as SFDT by selecting a bookmark using [`selectbookmark`](../../api/document-editor/selection/#selectbookmark) API. -* Create template content that can be inserted to multiple documents in cursor position using [`paste`](../../api/document-editor/editor/#paste) API. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/hide-tool-bar-and-properties-pane.md b/ej2-javascript/document-editor/how-to/hide-tool-bar-and-properties-pane.md deleted file mode 100644 index 75263328b..000000000 --- a/ej2-javascript/document-editor/how-to/hide-tool-bar-and-properties-pane.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -layout: post -title: Hide tool bar and properties pane in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Hide tool bar and properties pane in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Hide tool bar and properties pane -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Hide tool bar and properties pane in ##Platform_Name## Document editor control - -**Document editor container** provides the main document view area along with the built-in toolbar and properties pane. - -**Document editor** provides just the main document view area. Here, the user can compose, view, and edit the Word documents. You may prefer to use this component when you want to design your own UI options for your application. - -## Hide the properties pane - -By default, Document editor container has built-in properties pane which contains options for formatting text, table, image and header and footer. You can use [`showPropertiesPane`](../../api/document-editor-container/documentEditorContainerModel/#showpropertiespane) API in [`DocumentEditorContainer`](../../api/document-editor-container/documentEditorContainerModel/) to hide the properties pane. - -The following example code illustrates how to hide the properties pane. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', showPropertiesPane:false }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - ->Note: Positioning and customizing the properties pane in Document editor container is not possible. Instead, you can hide the exiting properties pane and create your own pane using public API's. - -## Hide the toolbar - -You can use [`enableToolbar`](../../api/document-editor-container/documentEditorContainerModel/#enabletoolbar) API in [`DocumentEditorContainer`](../../api/document-editor-container/documentEditorContainerModel/) to hide the existing toolbar. - -The following example code illustrates how to hide the existing toolbar. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: false, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -## See Also - -* [How to customize the toolbar](../../document-editor/how-to/customize-tool-bar) \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/insert-page-number-and-navigate-to-page.md b/ej2-javascript/document-editor/how-to/insert-page-number-and-navigate-to-page.md deleted file mode 100644 index 0b6354c9e..000000000 --- a/ej2-javascript/document-editor/how-to/insert-page-number-and-navigate-to-page.md +++ /dev/null @@ -1,96 +0,0 @@ ---- -layout: post -title: Page number and navigate Page in Document editor control | Syncfusion -description: Learn here all about Insert page number and navigate to page in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Insert page number and navigate to page -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Insert page number and navigate to page in ##Platform_Name## Document editor control - -You can insert page number and navigate to specific page in JavaScript Document Editor component by following ways. - -## Insert page number - -You can use [`insertPageNumber`](../../api/document-editor/editor/#insertpagenumber) API in editor module to insert the page number in current cursor position. By default, Page number will insert in Arabic number style. You can change it, by providing the number style in parameter. - ->Note: Currently, Documenteditor have options to insert page number at current cursor position. - -The following example code illustrates how to insert page number in header. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To move the selection to header -container.documentEditor.selection.goToHeader(); -// Insert page number in the current cursor position -container.documentEditor.editor.insertPageNumber(); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Also, you use [`insertField`](../../api/document-editor/editor/#insertfield) API in Editor module to insert the Page number in current position - -```ts -//Current page number -container.documentEditor.editor.insertField('PAGE \* MERGEFORMAT', '1'); -``` - -## Get page count - -You can use [`pageCount`](../../api/document-editor/#pagecount) API to gets the total number of pages in Document. - -The following example code illustrates how to get the number of pages in Document. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To get the total number of pages -let pageCount : number=container.documentEditor.pageCount; -``` - - -## Navigate to specific page - -You can use [`goToPage`](../../api/document-editor/selection/#gotopage) API in Selection module to move selection to the start of the specified page number. - -The following example code illustrates how to move selection to specific page. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -let sfdt: any = {sfdt: 'UEsDBAoAAAAIAPaKZVrvd0ouRgMAAPguAAAEAAAAc2ZkdO1ZW2/aMBj9K8h7RRVJICF5mzqhPUxTpT1WPDiJTaw5lznuaIv63+dbuBRC05ZLNJmXY+LY5/g7nw3ytwJlxUlOntEvnHIQcfaAhqBGCYjuV0BgxUC0AtUSRL7jDkGVgSgIRYPmoiGQGeQGY4NZCiLPHwJsMMUViEYCS6QbMdEgmMBPtLyDCwSGABUYRGI4lii6GWkQKSS4AJEjEGmsFkUtJvjKYEwSMb5ISlqrHvRnqZDGPFFDdc/9/EWQqtVVWC4tTlktkQtZK9FHuUa20Bib75mGvxIE1ryQwkuWQyp4qdSpOhI9q1gdhrRG4glRbPvPORWUABNWc/AiZJ1VkdFhaSyNpbE0lsbSWBpLY2ksjaWxNJbG0lgaS2NpLM1/QdN+4VajpCxSe+NmaSyNpbE0H6KZi4G6Z74ueZiDVr1iWrh+BpHjiIZ4BdxCSmJGxLQPqiJTc10CggoyXaYRQ+SZrQfJ1tYwmGxmxnCnC+MCo60nQumn4kBJYQpPGrFBrsXGtQKowZScqFlQSdcVLqP2t2Rt2sti3V4mTcltE2hcG0UcU91I+VIX0UwlC5niWCbEArH22iDONX+lIc14rpVgrAUmZV6ZyD/x2KiUcQCyCvdlpj5AZcGT+g3dyQUz+eei+jqdiscNhUxeyfgdwZQUi4FzKtI3rZSlzW0vb0ZB6Pi+PxkFgTsKx8Guuc5+wU9nur+b6YMfZJFx6YyKrzubjEMfvErezUu7KWye63Ll1o7cDtDgNoMMvBHF5iWuc+Aicr8hDB8oH9xBBhcMVtlgVhZ8ra2le0fjy+uFuBdLh/dlg9uWDd5ls8Htkg1uezZ418qGRpvXU4O9NoPdoxFzZl7geyc02OtisNdu8PnkdjR43FODx/sGk+aH+ZI7eNzF4PEhg88tt6PBk54aPDmwgy/o66SLr5ODG/eqdvo9tdN/l50nP4f9Lnb677TzAsdv0FM7g48dvyf3Nejia/DR4/cCBk97avC07Q/U6GZyNGae+pzQ4mkXi6ftf6HOKbijyWFPTQ6P7eLruB12cTs8vqH7YDtip/H88HXV/qXMTkBV7IyKRtSsLPn1RRkV8gqSqmtJMRnVmOQamfn6qJHki1pN+w9QSwECFAAKAAAACAD2imVa73dKLkYDAAD4LgAABAAAAAAAAAAAAAAAAAAAAAAAc2ZkdFBLBQYAAAAAAQABADIAAABoAwAAAAA=',}; -container.documentEditor.open(sfdt); -// To move selection to page number 2 -container.documentEditor.selection.goToPage(2); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/insert-text-in-current-position.md b/ej2-javascript/document-editor/how-to/insert-text-in-current-position.md deleted file mode 100644 index 4d7598589..000000000 --- a/ej2-javascript/document-editor/how-to/insert-text-in-current-position.md +++ /dev/null @@ -1,120 +0,0 @@ ---- -layout: post -title: How to insert text in ##Platform_Name## Document editor | Syncfusion -description: Learn here all about Insert text in current position in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Insert text in current position -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Insert text in current position in ##Platform_Name## Document editor - -You can insert the text, paragraph and rich-text content in JavaScript Document Editor component. - -## Insert text in current cursor position - -You can use [`insertText`](../../api/document-editor/editor/#inserttext) API in editor module to insert the text in current cursor position. - -The following example illustrates how to add the text in current selection. - -```ts - let hostUrl: string = 'https://services.syncfusion.com/js/production/'; - let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - DocumentEditorContainer.Inject(Toolbar); - container.serviceUrl = hostUrl + 'api/documenteditor/'; - container.appendTo('#container'); - - document.getElementById('insert').addEventListener('click',function(){ - // It will insert the provided text in current selection - container.documentEditor.editor.insertText('Syncfusion'); - }); -``` - -Please check below gif which illustrates how to insert text in current cursor position on button click: - -![Insert text in current cursor position in Javascript document editor](../images/insert_text.gif) - -## Insert paragraph in current cursor position - -To insert new paragraph at current selection, you can can use [`insertText`](../../api/document-editor/editor/#inserttext) API with parameter as `\r\n` or `\n`. - -The following example code illustrates how to add the new paragraph in current selection. - -```ts -// It will add the new paragraph in current selection -container.documentEditor.editor.insertText('\n'); -``` - -## Insert the rich-text content - -To insert the HTML content, you have to convert the HTML content to SFDT Format using [`web service`](../../document-editor/web-services-overview). Then use [`paste`](../../api/document-editor/editor/#paste) API to insert the sfdt at current cursor position. - ->Note: HTML string should be well formatted. [`DocIO`](https://help.syncfusion.com/file-formats/docio/html) support only well formatted XHTML. - -The following example illustrates how to insert the HTML content at current cursor position. - -* Send the HTML content to server side for SFDT conversion. Refer to the following example to send the HTML content to server side and inserting it in current cursor position. - -```ts -import { - DocumentEditorContainer, - Toolbar, -} from '@syncfusion/ej2-documenteditor'; - -let hostUrl: string = - 'https://services.syncfusion.com/js/production/'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = hostUrl + 'api/documenteditor/'; -container.appendTo('#container'); - -let htmltags: string = - "

    The img element

    Lamp Image"; -document.getElementById('export').addEventListener('click', () => { - let http: XMLHttpRequest = new XMLHttpRequest(); - http.open('POST', 'http://localhost:5000/api/documenteditor/LoadString'); - http.setRequestHeader('Content-Type', 'application/json;charset=UTF-8'); - http.responseType = 'json'; - http.onreadystatechange = function () { - if (http.readyState === 4) { - if (http.status === 200 || http.status === 304) { - // Insert the sfdt content in cursor position using paste API - container.documentEditor.editor.paste(http.response); - } else { - alert('failed;'); - } - } - }; - - let htmlContent: any = { content: htmltags }; - http.send(JSON.stringify(htmlContent)); -}); -``` - -* Please refer the following code example for server-side web implementation for HTML conversion using DocumentEditor. - -```c# -//API controller for the conversion. -[HttpPost] -public string LoadString([FromBody]InputParameter data) -{ - // You can also load HTML file/string from server side. - Syncfusion.EJ2.DocumentEditor.WordDocument document = Syncfusion.EJ2.DocumentEditor.WordDocument.LoadString(data.content, FormatType.Html); // Convert the HTML to SFDT format. - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - return json; -} - -public class InputParameter -{ - public string content {get; set; } -} -``` - ->Note: The above example illustrates inserting HTML content. Similarly, you can insert any rich-text content by converting any of the supported file formats (DOCX, DOC, WordML, HTML, RTF) to SFDT. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/insert-text-or-image-in-table-programmatically.md b/ej2-javascript/document-editor/how-to/insert-text-or-image-in-table-programmatically.md deleted file mode 100644 index 43fa73ff1..000000000 --- a/ej2-javascript/document-editor/how-to/insert-text-or-image-in-table-programmatically.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -layout: post -title: Insert text or image in table programmatically in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Insert text or image in table programmatically in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Insert text or image in table programmatically -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Insert text or image in table programmatically in ##Platform_Name## Document editor control - -Using Document editor API's, you can insert [`text`](../../document-editor/how-to/insert-text-in-current-position/#insert-text-in-current-cursor-position) or [`image`](../../document-editor/image/#images) in [`table`](../../document-editor/table/#create-a-table) programmatically based on your requirement. - -Use [`selection`](../../document-editor/how-to/move-selection-to-specific-position/#selects-content-based-on-start-and-end-hierarchical-index) API's to navigate between rows and cells. - -The following example illustrates how to create 2*2 table and then add text and image programmatically. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert the table in cursor position -container.documentEditor.editor.insertTable(2,2); -// To insert the image at table first cell -container.documentEditor.editor.insertImage("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4 //8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); -// To move the cursor to next cell -moveCursorToNextCell(); -// To insert the image at table second cell -container.documentEditor.editor.insertImage("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4 //8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); -// To move the cursor to next row -moveCursorToNextRow(); -// To insert text in cursor position -container.documentEditor.editor.insertText('Text'); -// To move the cursor to next cell -moveCursorToNextCell(); -// To insert text in cursor position -container.documentEditor.editor.insertText('Text'); - -function moveCursorToNextCell() { -// To get current selection start offset -var startOffset=container.documentEditor.selection.startOffset; -// Increasing cell index to consider next cell -var cellIndex= parseInt(startOffset.substring(6, 7)) + 1; -// Changing start offset -startOffset = startOffset.substring(0, 6) + cellIndex.toString() + startOffset.substring(7, startOffset.length); -// Navigating selection using select method -container.documentEditor.selection.select(startOffset, startOffset); -} - -function moveCursorToNextRow() { -// To get current selection start offset -var startOffset=container.documentEditor.selection.startOffset; -// Increasing row index to consider next row -var rowIndex= parseInt(startOffset.substring(4, 5)) + 1; -var cellIndex= parseInt(startOffset.substring(6,7)) != 0? parseInt(startOffset.substring(6,7)) - 1:0; -// Changing start offset -startOffset = startOffset.substring(0, 4) + rowIndex.toString() + startOffset.substring(5, 6) + cellIndex + startOffset.substring(7, startOffset.length); -// Navigating selection using select method -container.documentEditor.selection.select(startOffset, startOffset); -} -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -The output will be like below. -![Insert text or image in table programmatically](../images/table-image.png) diff --git a/ej2-javascript/document-editor/how-to/move-selection-to-specific-position.md b/ej2-javascript/document-editor/how-to/move-selection-to-specific-position.md deleted file mode 100644 index ce86b5fbc..000000000 --- a/ej2-javascript/document-editor/how-to/move-selection-to-specific-position.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -layout: post -title: Move to specific position in ##Platform_Name## Document editor | Syncfusion -description: Learn here all about Move selection to specific position in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Move selection to specific position -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Move selection to specific position in ##Platform_Name## Document editor - -Using [`select`](../../api/document-editor/selection/#select) API in selection module, You can set cursor position to anywhere in the document. - -## Selects content based on start and end hierarchical index - -Hierarchical index will be in below format. - -`sectionIndex;blockIndex;offset` - -The following code snippet illustrate how to select using hierarchical index. - -```ts -// Selection will occur between provided start and end offset -documentEdContainerIns.documentEditor.editor.insertText("Welcome"); -// The below code will select the letters “We” from inserted text “Welcome” -documentEdContainerIns.documentEditor.selection.select("0;0;0", "0;0;2"); -``` - -The following table illustrates about Hierarchical index in detail. - -| Element |Hierarchical Format | Explanation | -|-----------------|-------------|----| -|Move selection to Paragraph |sectionIndex;blockIndex;offset
    **Ex:** 0;0;0|It moves the cursor to the start of paragraph.| -|Move selection to Table|sectionIndex;tableIndex;rowIndex;cellIndex;blockIndex;offset
    **Ex:** 0;0;0;0;1;0|It moves the cursor to the second paragraph which is inside first row and cell of table.| -|Move selection to header|pageIndex;H;sectionIndex;blockIndex;offset
    **Ex:** 1;H;0;0;0|It moves cursor to the header in second page.| -|Move selection to Footer|pageIndex;F;sectionIndex;blockIndex;offset
    **Ex:** 1;F;0;0;0|It moves cursor to the footer in second page.| - -## Get the selection start and end hierarchical index - -Using [`startOffset`](../../api/document-editor/selection/#startoffset), you can get start hierarchical index which denotes the start index of current selection. Similarly, using [`endOffset`](../../api/document-editor/selection/#endoffset), you can get end hierarchical index which denotes the end index of current selection. - -The following code snippet illustrate how to get the selection start and end offset on selection changes in document. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let hostUrl: string = 'https://services.syncfusion.com/js/production/'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = hostUrl + 'api/documenteditor/'; -container.appendTo('#container'); -// Event gets triggered on selection change in document -container.selectionChange = (): void => { -//Get the start index of current selection -let startOffset:string = container.documentEditor.selection.startOffset; -//Get the end index of current selection -let endOffset:string = container.documentEditor.selection.endOffset; -}; -``` - -Document editor have [`selectionChange`](../../api/document-editor/#selectionchange) event which is triggered whenever the selection changes in Document. - -## Selects the content based on left and top position - -Here, you can specify the [`selection settings`](../../api/document-editor/selectionSettings/) to select the content based on left and top position. - -x denotes the left position and y denotes the top position and extend denotes whether to extend or update selection. - -Please check below code sample for reference. - -```ts -Container.documentEditor.selection.select({ x: 188.4814208984375 , y: 662.00005, extend: true }); -``` \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/open-default-document.md b/ej2-javascript/document-editor/how-to/open-default-document.md deleted file mode 100644 index d704bf15b..000000000 --- a/ej2-javascript/document-editor/how-to/open-default-document.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -layout: post -title: Open default document in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Open default document in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Open default document -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open default document in ##Platform_Name## Document editor control - -In this article, we are going to see how to open a default document when DocumentEditor & DocumentEditorContainer is initialized. - -## Opening a default document in DocumentEditor - -By default, Document Editor will open blank document. You can use [`open`](../../api/document-editor/#open) API in Document Editor to open the sfdt content. - -Document editor have [`created`](../../api/document-editor/#created) event which gets triggered once Document editor control created. So, if you want to open the document by default, you can use [`open`](../../api/document-editor/#open) and [`created`](../../api/document-editor/#created) API. - -The following example illustrates how to open the default SFDT content once Document editor control gets created. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/open-default-document-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-default-document-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/open-default-document-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-default-document-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-default-document-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/open-default-document-cs1" %} -{% endif %} - -## Opening a default document in DocumentEditorContainer - -By default, Document Editor Container will open a blank document. You can use [`open`](../../api/document-editor/#open) API in Document Editor to open the SFDT content. - -Document editor Container have [`created`](../../api/document-editor-container/#created) event which gets triggered once Document editor container control created. So, if you want to open the document by default, you can use [`open`](../../api/document-editor/#open) and [`created`](../../api/document-editor-container/#created) API. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/open-default-document-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-default-document-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/open-default-document-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-default-document-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-default-document-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/open-default-document-cs2" %} -{% endif %} diff --git a/ej2-javascript/document-editor/how-to/open-document-by-address.md b/ej2-javascript/document-editor/how-to/open-document-by-address.md deleted file mode 100644 index 4234328a4..000000000 --- a/ej2-javascript/document-editor/how-to/open-document-by-address.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -layout: post -title: Open document by address in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Open document by address in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Open document by address -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document by address in ##Platform_Name## Document editor control - -## How to open a document from URL in DocumentEditor - -In this article, we are going to see how to open a document from URL in DocumentEditor - -please refer below example for client-side code - -```ts -//Initialize Document Editor Container component. -let container: DocumentEditorContainer = new DocumentEditorContainer(); - -container.appendTo('#DocumentEditorContainer'); - -document.getElementById('import').addEventListener('click', () => { - let http: XMLHttpRequest = new XMLHttpRequest(); - //add your url in which you want to open document inside the "" - let content = { fileUrl: "" }; - let baseurl: string = "/api/documenteditor/ImportFileURL"; - http.open("POST", baseurl, true); - http.setRequestHeader("Content-Type", "application/json;charset=UTF-8"); - http.onreadystatechange = () => { - if (http.readyState === 4) { - if (http.status === 200 || http.status === 304) { - //open the SFDT text in Document Editor - container.documentEditor.open(http.responseText); - } - } - }; - http.send(JSON.stringify(content)); -}); -``` - -please refer below example for server-side code - -```c# - [AcceptVerbs("Post")] - public string ImportFileURL([FromBody]FileUrlInfo param) - { - try { - using(WebClient client = new WebClient()) - { - MemoryStream stream = new MemoryStream(client.DownloadData(param.fileUrl)); - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Dispose(); - return json; - } - } - catch (Exception) { - return ""; - } - } - public class FileUrlInfo { - public string fileUrl { get; set; } - public string Content { get; set; } - } -``` diff --git a/ej2-javascript/document-editor/how-to/override-the-keyboard-shortcuts.md b/ej2-javascript/document-editor/how-to/override-the-keyboard-shortcuts.md deleted file mode 100644 index be7c960cc..000000000 --- a/ej2-javascript/document-editor/how-to/override-the-keyboard-shortcuts.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -layout: post -title: Override the keyboard shortcuts in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Override the keyboard shortcuts in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Override the keyboard shortcuts -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Override the keyboard shortcuts in ##Platform_Name## Document editor control - -Document Editor triggers the [`keyDown`](../../api/document-editor#keydown) event every time when any key is entered and provides an instance of [`DocumentEditorKeyDownEventArgs`](../../api/document-editor/documentEditorKeyDownEventArgs/). You can use the [`isHandled`](../../api/document-editor/documentEditorKeyDownEventArgs#ishandled) property to override the keyboard shortcut behavior. - -## Preventing default keyboard shortcut - -The following code shows how to prevent the `CTRL + C` keyboard shortcut for copying selected content in Document Editor. - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/prevent-keyboard-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/prevent-keyboard-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/prevent-keyboard-cs2" %} - -## Override or define the keyboard shortcut - -Override or define a new keyboard shortcut behavior instead of preventing the keyboard shortcut. - -For example, `Ctrl + S` keyboard shortcut saves the document in SFDT format by default, and there is no behavior for `Ctrl + Alt + S`. The following code demonstrates how to override the `Ctrl + S` shortcut to save a document in DOCX format and define `Ctrl + Alt + S` to save the document in SFDT format. - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/override-keyboard-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/override-keyboard-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/override-keyboard-cs2" %} \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/read-only-default.md b/ej2-javascript/document-editor/how-to/read-only-default.md deleted file mode 100644 index a9ceaace3..000000000 --- a/ej2-javascript/document-editor/how-to/read-only-default.md +++ /dev/null @@ -1,74 +0,0 @@ ---- -layout: post -title: Read only default in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Read only default in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Read only default -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Read only default in ##Platform_Name## Document editor control - -In this article, we are going to see how to open a document in read only mode by default in DocumentEditor & DocumentEditorContainer. - -## Opening a document in read only mode by default in DocumentEditor - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/read-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/read-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/read-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/read-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/read-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/read-cs1" %} -{% endif %} - -## Opening a document in ready only mode by default in DocumentEditorContainer - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/read-container-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/read-container-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/read-container-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/read-container-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/read-container-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/read-container-cs1" %} -{% endif %} - ->Note: You can use the [`restrictEditing`](../../api/document-editor-container#restrictediting) in DocumentEditorContainer and [`isReadOnly`](../../api/document-editor/#isreadonly) in DocumentEditor based on your requirement to change component to read only mode. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/resize-document-editor.md b/ej2-javascript/document-editor/how-to/resize-document-editor.md deleted file mode 100644 index 28a4c1a3d..000000000 --- a/ej2-javascript/document-editor/how-to/resize-document-editor.md +++ /dev/null @@ -1,84 +0,0 @@ ---- -layout: post -title: Resize document editor in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Resize document editor in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Resize document editor -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Resize document editor in ##Platform_Name## Document editor control - -In this article, we are going to see how to change height and width of Documenteditor. - -## Change height of Document Editor - -DocumentEditorContainer initially render with default height. You can change height of documenteditor using [`height`](../../api/document-editor-container/documentEditorContainerModel/#height) property, the value which is in pixel. - -The following example code illustrates how to change height of Document Editor. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, height: "590px" -}); -container.appendTo('#DocumentEditor'); -``` - -Similarly, you can use [`height`](../../api/document-editor#height) property for DocumentEditor also. - -## Change width of Document Editor - -DocumentEditorContainer initially render with default width. You can change width of documenteditor using [`width`](../../api/document-editor-container/documentEditorContainerModel/#width) property, the value which is in percent. - -The following example code illustrates how to change width of Document Editor. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, width: "100%" -}); -container.appendTo('#DocumentEditor'); -``` - -Similarly, you can use [`width`](../../api/document-editor#width) property for DocumentEditor also. - -## Resize Document Editor - -Using [`resize`](../../api/document-editor-container#resize) method, you change height and width of Document editor. - -The following example code illustrates how to fit Document Editor to browser window size. - -```ts -import { - DocumentEditorContainer, - Toolbar, -} from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = - 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.created = (): void => { - setInterval(() => { - updateDocumentEditorSize(); - }, 100); - //Adds event listener for browser window resize event. - window.addEventListener('resize', onWindowResize); -}; -container.appendTo('#container'); - -function onWindowResize() { - //Resizes the document editor component to fit full browser window automatically whenever the browser resized. - updateDocumentEditorSize(); -} -function updateDocumentEditorSize() { - //Resizes the document editor component to fit full browser window. - var windowWidth = window.innerWidth; - var windowHeight = window.innerHeight; - container.resize(windowWidth, windowHeight); -} -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/retrieve-the-bookmark-content-as-text.md b/ej2-javascript/document-editor/how-to/retrieve-the-bookmark-content-as-text.md deleted file mode 100644 index a0e27e662..000000000 --- a/ej2-javascript/document-editor/how-to/retrieve-the-bookmark-content-as-text.md +++ /dev/null @@ -1,130 +0,0 @@ ---- -layout: post -title: Retrieve the bookmark content as text in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Retrieve the bookmark content as text in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Retrieve the bookmark content as text -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Retrieve the bookmark content as text in ##Platform_Name## Document editor control - -You can get the bookmark or whole document content from the JavaScript Document Editor component as plain text and SFDT (rich text). - -## Get the bookmark content as plain text - -You can [`selectBookmark`](../../document-editor/bookmark#select-bookmark) API to navigate to the bookmark and use [`text`](../../api/document-editor/selection/#text-code-classlanguage-textstringcode) API to get the bookmark content as plain text from JavaScript Document Editor component. - -The following example code illustrates how to get the bookmark content as plain text. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To select all the content in document -container.documentEditor.selection.selectAll(); -// Insert bookmark to selected content -container.documentEditor.editor.insertBookmark('Bookmark1'); - -// Provide your bookmark name to navigate to specific bookmark -container.documentEditor.selection.selectBookmark('Bookmark1'); - -// To get the selected content as text - let selectedContent: string = container.documentEditor.selection.text; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -To get the bookmark content as SFDT (rich text), please check this [`link`](../../document-editor/how-to/get-the-selected-content/#get-the-selected-content-as-sfdt-rich-text) - -## Get the whole document content as text - -You can use [`text`](../../api/document-editor/selection/#text-code-classlanguage-textstringcode) API to get the whole document content as plain text from JavaScript Document Editor component. - -The following example code illustrates how to get the whole document content as plain text. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To select all the content in document -container.documentEditor.selection.selectAll(); - -// To get the content as text - let selectedContent: string = container.documentEditor.selection.text; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -## Get the whole document content as SFDT(rich text) - -You can use [`serialize`](../../api/document-editor/#serialize) API to get the whole document content as SFDT string from JavaScript Document Editor component. - -The following example code illustrates how to get the whole document content as SFDT. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); - -// To get the content as SFDT - let selectedContent: string = container.documentEditor.serialize(); -``` - - -## Get the header content as text - -You can use [`goToHeader`](../../api/document-editor/selection/#gotoheader) API to navigate the selection to the header and then use [`text`](../../api/document-editor/selection/#text-code-classlanguage-textstringcode) API to get the content as plain text. - -The following example code illustrates how to get the header content as plain text. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); - -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - -container.appendTo('#container'); -// To navigate the selection to header -container.documentEditor.selection.goToHeader(); -// To insert text in cursor position -container.documentEditor.editor.insertText('Document editor'); -// To select all the content in document -container.documentEditor.selection.selectAll(); - -// To get the selected content as text - let selectedContent: string = container.documentEditor.selection.text; -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Similarly, you can use [`goToFooter`](../../api/document-editor/selection/#gotofooter) API to navigate the selection to the footer and then use [`text`](../../api/document-editor/selection/#text-code-classlanguage-textstringcode) API to get the content as plain text. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/set-default-format-in-document-editor.md b/ej2-javascript/document-editor/how-to/set-default-format-in-document-editor.md deleted file mode 100644 index 82ed41262..000000000 --- a/ej2-javascript/document-editor/how-to/set-default-format-in-document-editor.md +++ /dev/null @@ -1,114 +0,0 @@ ---- -layout: post -title: Set default format in document editor in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Set default format in document editor in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Set default format in document editor -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Set default format in document editor in ##Platform_Name## Document editor control - -You can set the default character format, paragraph format and section format in Document editor. - -## Set the default character format - -You can use [`setDefaultCharacterFormat`](../../api/document-editor/#setdefaultcharacterformat) method to set the default character format. For example, Document editor default font size is 11 and you can change it as any valid value. - -The following example code illustrates how to change the default font size in Document editor. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ height: "590px" }); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -DocumentEditorContainer.Inject(Toolbar); -// Default font size set as 20 -container.setDefaultCharacterFormat({ fontSize: 20 }); -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Similarly, you can change the required [`CharacterFormatProperties`](../../api/document-editor/characterFormatProperties) default value. - -The following example code illustrates how to change other character format default value in Document editor. - -```ts -import { CharacterFormatProperties, DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ height: "590px" }); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -DocumentEditorContainer.Inject(Toolbar); -// Set default value -let defaultCharacterFormat: CharacterFormatProperties = { - bold: false, - italic: false, - baselineAlignment: 'Normal', - underline: 'None', - fontColor: "#000000", - fontFamily: 'Algerian', - fontSize: 12 -}; -container.setDefaultCharacterFormat(defaultCharacterFormat); -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -## Set the default paragraph format - -You can use [`setDefaultParagraphFormat`](../../api/document-editor/#setdefaultparagraphformat) API to set the default paragraph format. You can change the required [`ParagraphFormatProperties`](../../api/document-editor/paragraphFormatProperties) default value. - -The following example code illustrates how to change the paragraph format(before spacing, line spacing etc.,) default value in Document editor. - -```ts -import { ParagraphFormatProperties, DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ height: "590px" }); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -DocumentEditorContainer.Inject(Toolbar); - -let defaultParagraphFormat: ParagraphFormatProperties = { - beforeSpacing: 8, - lineSpacing: 1.5, - leftIndent: 24, - textAlignment: "Center" -}; -container.setDefaultParagraphFormat(defaultParagraphFormat); -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -## Set the default section format - -You can use [`setDefaultSectionFormat`](../../api/document-editor/#setdefaultsectionformat) API to set the default section format. You can change the required [`SectionFormatProperties`](../../api/document-editor/sectionFormatProperties) default value. - -The following example code illustrates how to change the section format(header and footer distance, page width and height, etc.,) default value in Document editor. - -```ts -import { SectionFormatProperties, DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ height: "590px" }); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -DocumentEditorContainer.Inject(Toolbar); - -let defaultSectionFormat: SectionFormatProperties = { - pageWidth: 500, - pageHeight: 800, - headerDistance: 56, - footerDistance: 48, - leftMargin: 12, - rightMargin: 12, - topMargin: 0, - bottomMargin: 0 - -}; -container.setDefaultSectionFormat(defaultSectionFormat); -container.appendTo('#container'); -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. \ No newline at end of file diff --git a/ej2-javascript/document-editor/how-to/show-hide-spinner.md b/ej2-javascript/document-editor/how-to/show-hide-spinner.md deleted file mode 100644 index 12e3c4352..000000000 --- a/ej2-javascript/document-editor/how-to/show-hide-spinner.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -layout: post -title: Show hide spinner in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Show hide spinner in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Show hide spinner -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Show hide spinner in ##Platform_Name## Document editor control - -Using [`spinner`](https://ej2.syncfusion.com/documentation/spinner/getting-started/#create-the-spinner-globally) component, you can show/hide spinner while opening document in DocumentEditor . - -Example code snippet to show/hide spinner - -```ts -// showSpinner() will make the spinner visible -showSpinner(document.getElementById('container')); - -// hideSpinner() method used hide spinner -hideSpinner(document.getElementById('container')); -``` - -Refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/spinner-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/spinner-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/spinner-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/spinner-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/spinner-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/spinner-cs1" %} -{% endif %} - ->Note: In above example, we have used setInterval to hide spinner, just for demo purpose. diff --git a/ej2-javascript/document-editor/image.md b/ej2-javascript/document-editor/image.md deleted file mode 100644 index 8f28414cb..000000000 --- a/ej2-javascript/document-editor/image.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -layout: post -title: Image in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Image in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Image -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Image in ##Platform_Name## Document editor control - -Document Editor supports common raster format images like PNG, BMP, JPEG, SVG and GIF. You can insert an image file or online image in the document using the [`insertImage()`](../api/document-editor/editor/#insertimage) method. Refer to the following sample code. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/image-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/image-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/image-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/image-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/image-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/image-cs1" %} -{% endif %} - -N> 1. Image files will be internally converted to base64 string. Whereas, online images are preserved as URL. N> 2. EMF and WMF images can't be inserted, but these types of images will be preserved in Document Editor when using ASP.NET MVC Web API. - -## Alternate text - -Document Editor expose API to get or set the alternate text of the selected image. Refer to the following sample code. - -```ts -documenteditor.selection.imageFormat.alternateText = 'Adventure Cycle'; -``` - -## Image resizing - -Document Editor provides built-in image resizer that can be injected into your application based on the requirements. This allows you to resize the image by dragging the resizing points using mouse or touch interactions. This resizer appears as follows. - -![Image](images/image.png) - -## Changing size - -Document Editor expose API to get or set the size of the selected image. Refer to the following sample code. - -```ts -documenteditor.selection.imageFormat.width = 800; -documenteditor.selection.imageFormat.height = 800; -``` - ->Note: Images are stored and processed(read/write) as base64 string in DocumentEditor. The online image URL is preserved as a URL in DocumentEditor upon saving. - -## Text wrapping style - -Text wrapping refers to how images fit with surrounding text in a document. Please [refer to this page](../document-editor/text-wrapping-style) for more information about text wrapping styles available in Word documents. - -## Positioning the image - -DocumentEditor preserves the position properties of the image and displays the image based on position properties. It does not support modifying the position properties. Whereas the image will be automatically moved along with text edited if it is positioned relative to the line or paragraph. - -## See Also - -* [Feature modules](../document-editor/feature-module/) diff --git a/ej2-javascript/document-editor/images/ApplyBorderToSelectedCell_viaPropertiesPane.gif b/ej2-javascript/document-editor/images/ApplyBorderToSelectedCell_viaPropertiesPane.gif deleted file mode 100644 index 6fc826460aab711b4ab39908a160c073dcdd60d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65910 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 diff --git a/ej2-javascript/document-editor/images/Column_Limit_Alert.png b/ej2-javascript/document-editor/images/Column_Limit_Alert.png deleted file mode 100644 index 01d15c9afa97fb29c3a6fc39e0495a0f64b89028..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37740 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 Mp00i_>zopr0QI^-@Bjb+ diff --git a/ej2-javascript/document-editor/images/Row_Limit_Alert.png b/ej2-javascript/document-editor/images/Row_Limit_Alert.png deleted file mode 100644 index 147f9050a4b531bfd85654627474b1ed5260744a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36061 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 diff --git a/ej2-javascript/document-editor/images/Shapes_images/supported_shapes.png b/ej2-javascript/document-editor/images/Shapes_images/supported_shapes.png deleted file mode 100644 index 4c21f90a90277d21b03fa7d6ed25abfea9bc590d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58487 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 z�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
    8tD`gd3Ct=T@ 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¾y53Bt4nL5vh(Y@!?wArtX?KB# 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 Y^>6i+BBpm39^4ld1x@*{vX-I$1AtEH3IG5A diff --git a/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/infront-textwrapping.PNG b/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/infront-textwrapping.PNG deleted file mode 100644 index 914a54c149cacaec9ad3800b5ac1086c60362392..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83315 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

    VkQA9rV;Ji48~ew$=zDh@@EqstL3CbU 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 diff --git a/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/inline-textwrapping.PNG b/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/inline-textwrapping.PNG deleted file mode 100644 index 7551b2dd5bc35f2bce9eb9eac372a2d1eda13091..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75079 zcmcF~^FA^h=53UNq0Ac)F_Cgbcl3!GlS9{qBIQMA>AM#B{_5r9W%tx3^2s? z``&xs|KR?x&tA_yXPvdqXa8_Md#&e*()b9(e?j#E0|Nv9{X0c142-93|LmUU*#E8! z5yXQ3rY9a+KzWSnaT>%w@XY3|+FJ~a+625ibF65raqlOMdfoQozdUTdTKm8}xe*z@^9|gF7%oW5v?zn!V3*nuUAqk@QTDa*szy4y>fqY=oj;b>23MKUE zM<5?*fqEUW38G9W>40y&gRN9r0Ayr?~`viT)={nvrEVmjdqG(RCpL#qUR z_gD~$EYcteHn^7|ntW8ws+zgyRkV9)8u;)j&?8?Cb^Vx2R%AsQl<9gSq*!Ty;W1w( zZn`2(@(IW6Yn&ciM>jwn1?3PAL&(tb`+%a6ZX7e~smwveQXP1o{2h zHVQ>hh@g9+r2V`kwL3huTjB=2(O69i zzNwS*^p+>e!|r`FBC;nwehX6#=;##EMz!;obot@(fq#(}wV@wF%FhIKX7}T}(;@Wm zkgv5U<}yRnx72;5QE@Q?h!Z`>f^lk;(4w>VEp?e^syd;S!)tQaP)$C(@61 z=tv$dd6b#bC?D5}hv$>Jc*ovUz?S5b*gq6Tp`IkM*KC(G%KxmW+6g&bIi$ zhT3~`mzk9^v-sV!RjP=LkCEa{1C82j`Bm+4$UF_-gh4 zw*BxYy2dk=JbYcUCHHqEjz^BQjRqc01P(^jX%FMzf)k2WLpO>!(xmJ4dY2O$e>^-c zqlG2Idq8vqNo-?n{|qV~j_gj&DQIK5Nu_sVC?3ud+1V&D1Iww*5mhebR0P<+p)-yu zV0nNq_G+S9Nm}@RHGYo!T-{zn^Kv)k7ysh#-n$?+v7eKj&zdR&3Bf*r5vjL7KKG@V zd9C4nb_ia4^iauMtgjQj>4mB3J$=NaF?`uS>HYich_Nk!fizRyYACo_ywYlD1wIV9c4ST}2A%>23AN^F4HUhX;#gsp$+RHv{3BIWI(oEbHZEc7j*Cv2X$w zr1X17V4qO7e`2W%y9?3`H6*f*4$aHjp8z_3A-Ps0s^gGdue^WNx`iZ^P*-}=zb#3R zIX!al>6te4SUy?D&dG80m|S^%4ApN&fMQ(^3Io_l_CE9f{%n1B@9yF`$TPvyFV%bn zm3g2LiW&I+U{l-dv;Ez<*CoS&0MZIAl;Q=v4-orebE;8!zxnZx%QY_1&h0n6&;7mV zV~SUgvhjEHdM+q{5dXu0FF`w&6H!cOo*LMITje)`U2Q$w5f)XPJc84WrsUPb2WEE9 zkh?}dJhJXTQZpGo9+YzA1=P;a{jSL5c12Z2rJ+``-(7#fjn8(d`~k+$Yu>@u5zgOz z(7!-VlvWD;S|F{`$6l%rdK?Uz8J}Iebp*%;B|3NON5#3Uykv9h>;N(#@8Msincm%O z(4~2>b=lpt!yPLiTRtL9K!@(K%66BRFF|HcIpcFvL&WL6`VgFCdo=xynCJ|02$xpZ zpgd>pSU5%=wV`K>_zivfe7M%8kPfyX3TN+lym>(s&Qt1v(yj-~QoMH_IbL|9G(xWy zA>fc(30QQb%mSTbJRcZL@4ejJKR!CZYH=P7fg*DjT~l~_dv+!Y!fGGM2PFW$ zV$6w-@RkpF8>%TOCj? zkn#BcSc_kEa923lY(V1gWh|)=UY!g;{;2c@4ZIVRIlM!7_1UmP6Yhx+0jpm#4a`DG zKW$`Jd^o!$;=>-X*xlVN<%%0*n-~ud0Uy65tWngRChHV@QnSLJyRnE3G1vFGc)Cm7 z4{gayz#0JS#NE-l^yWWE-V2>)7u-e}3#&W#K0h9?_*MW>(0co(IDqQJR)=8Rv88yi zannNRgn$w?;d~Y{a=H9;WO0;% z!tvNvtGc50OZiaya$*7c4P79PiCWwQ{Q3@jKXj}asTSj6|2oKr`>t3P`E#N6Lcmv) zMkp5@Tk;AvS^UbB;vlYzFfg7E+4;izR)W}UB|12kxW&Pf>t2#v`WLTGH#WP}^;7Pw z+l@VlZhmt;*yWr+e`?$2vhKRG#Uc=xc7PJTe%V`>99RFTTUr8xppU+P;+QA2Cd@nj zJQs%{#==T`K$3DDbUv{(ENRE3DBIW*Kft=%Jo9EN%rC!l8sgwOFjf;dSXPtlfdQkX zskJ>)UXcwxSIDu5F_M+agSdj_WwQtN8vB!2NjIy81FL3fU@Sv}*(Ug|9d@0bQKIR8 zH)}VmZd`@td#88X^d@aBQ@$B3QA}Qy4M_8TT!@HJzD8^a{%$(JU&!VJr-%>(R(mvF z$Mm10f2#mw5n&L%g#jA>DmI#M>0ztZr=UxR)x_DUtb-yfm3(kd=KQ6T?<%I5=p6N1 zrzzRdL-Tppm7t4k@gFyP;9;Z2ZQ5sJ=^?m6$35&ZFkkR}E328+^+~lRK8ntFSyepC z6pIT_D01z+?!;ExwlJ-o8u(|mcsB4?`SH{JWATE(bp?uKx&rD0x-&O z=C%?M%8vd4(gco1@sZ(zWZ#N1x!lHL4SxMZy3?3mzHz)nN2?#F^NFlxwpL|7neXm; zjo0EtGKlW-%K~K*Y^7IrQXqSe9uwz9G_!qPPD`F(D0G)>U9-8Gs(#HduI%u!?eoJ9 zAqPVt*&g0_NXXPeGlenE7J52v(`x>{Q$hwZ7(amwEm=Ko$~qIQQ`I_wR`pRWMGa3l z&egoSH5chPTKX)3+L=eWPaiwQWj_4oKAPFLnJnuv5u|V%(>A+DfDgYj^eZJb`oHM0 zd95^C#~i?SDe%?W@!cH3i}Ec*lj(|-m;Sr#`+w#ZvcISS1=h8)SsP9Ls2a!Sj@@Noe)ml)- zYYX)$9eVI?8u|9=-|tT)&llsKS>W9I1KE`Z2Q=OA0W2QWUKZWPYrC!cYC*IW(zx`)#-g8GUK-Fo@=mN7Km0=DK=51XCj86)^na7^{z2m zOoJ?~t%1}HrP>!6?YKGTWgUXC;maY&YgsiZIrEus$Ee8xaYVG)IlDm}`bxc7(^rQ( z?9kwS^2*z*5M;5AA2w7BMZlaAO(J}#dFwsGdW+CITC$N^o*ZH$_;p5f@>&=PL-0H5%Nrplk$CXje{%=2@BO{&a_Neb=QV|Em zeB&o5Eq_mph`cTQ2BA06n-g?-V)URi*$0X52|uAB%rvDV=Th6Bf+LpGlh<;k>|FF| z`hi)6DCeUOC)vt*OvLt^@bIf#Fe*qb$qm)7B*9^1M0 z01nYB?xJlwJ-+OspHL#7j`xF1Ul239dX`JP#*CW`rTM5DXEkry-Kkv*q93okqIIRE zzpe`>dhfzZvQ$k(cJ_9rmgn^o)oKn9a=x5OzyS^ARlb?zV;PTA#-onds+kF@8S94< z&qGJyFxn+W!cqSpSG#&zemzgxrq{j&D|e_cBBDsVM1wcK3)%Mf&TR|d(f!>Usfh8g z8}Yb*K7M2itL2W4kyK3*h$3m;vI_RYS)!>Z(b%-Nw|lbhcQEKF%@jSJvjnVB_hwum zD1vA=Xm_=CvN4`8jxmpAK4WD8i-zRke49vnOCcgP7 zg1igFMCpp*EflwiWE*(A*xZl>n=G-{a!!tEXXdyv+vI5#{j^*)c~^m1p8UUEM~nIV z@SA>&Pk`I%NIUr>3=voE-bDvyYjQ+x(1z>Vt3$EKab1Ub9f+a)ir4qD9eu;AbItJs zet-KqHi*zyg1^1Ss$9ih`ALKzc^t*oSZT!sd>^)FD|v&-wriV+Gl_4^bcH;F%!tud z(wVV8H=f;dACCgQFwDmZcp3(=Y6^6U|4x5u!&8D?vz7>qvB7$6%sO4($;Kfm`Mn8T z+2|tHMPHo#J?J}Yvlz2}%ajxSoua0j<^>}Aj$3@HOYrE&xhCB?ZQ~Z2TT-hWZ3*R; zf~K@WO`)cEEz*}89yzddj%>i{WLSccM)yHZKBl<<^$qIMBfpD} z9tvyqETJFj*o*UoJ4!b*q7h>@#{~&s=!;1U=0E2xj@@lFMHOyWz@h?L6S4_B@ znczk3Pm;f0yqj>=wys7NtPeLWjL7Aj?&zA#KP-k8Xl)pW?Gjoiqv6}(y6T9$V#sJ{ zml8If`Yo%n2i?Pm?Pi(I+avIcgs1`wK#(#hORieM%((@X9MZ@i7kF)Pi$HrdFqcPy zlI^Oyld4TQ?9J%L9C6+ELG&y`(K;Vo;=Ebrhh3(k;QEpQUkIIc+q4bX;zigj7ik1N zj?^kp5!zoo*`4l@0V?H_@jRWgsn~qJ2?ROu8&_y{8L@%*(YBSh@BK9;Tj2JT)dYRy zuAqcsOfGsBa&M_;&!9upYq?vR0u84ubAUsX*LQEVPrcSuzwPXfR+4gzn|`8;*l#zH zd1qOCn~feS2|;qo+I&mdc`~J<+iGjlDT?~0gkM?Ep@n-%8zx&dkPG9`eOO0JPj;79vh5;pZR78kk0bl4 z`n_7b6vzuDeU{X$=Tv?8h-aO7Ri&?3WMWL=`*Kgj?%40$y`_iudcF$a5qQzmu}_(-JghQS_+XkHakr_=ch>FIdiQWk0uWTY)dH7TOb}HD zOwv_(72e3ajTZ~zA{2RrVvHCIH=XOh6vIQmqOlPx>{J$!nV-!GU#tINn!T^ST0mcX z&Dx3lE}**tmsZBjnh6T$tKK4LUN#|zx3osxK8OD`K`X-|_HwQM!*D+jdRm%n^W z#EK9CQNkL~r6s>wC*uMmj<*!JCR|-i^^|@FwzuWWNMrme-1GJrG$wwZ+@gJOJ}P>2 zrGHw+*=Y__|_(X{O~<}kK-<4LG7vYcv1K!+hgRfT|kCQ7g`FMVC*NO37p zpS#>8%cXuJ)71?NJ`7*&V=2xNrW)QkX=@fa{e>ch`VughIOHf$cFz1wUs5xvY8Q#` zm8aw%o}%`8Kfu}L;&99Oai(6<5Tqa`=+P2Yq@w-0j5=axfBx$I zeDrca?IcJaJYSl3DG!%~)!_Yp#qpyW?9uLd&q(@SxB|a)TF4*EK}G4Q$$YfZU+s2J z!nh?&b+;BL1hEN|k^+4_dYXv-2 zadSZ5;L0O+4AG#@RW30Nu5%e@n2DtgP45}dVvU;Ek3p#5?ez;$nLn5>jst{&4}{X| zO}Ri(M5pP6{n-Y(+g-&YCn4B^KA8)0onNAO z0mn-?7`g2Aq-f-58#Badc*o!A)mt0cd^x?K{Y}UB$zAV$nBqF@)eq6BmUv;+pSGoJ zPd;M3)+)$B;k0T@ep2;J>XUB<;KB47>I}U?anzsZi>OUEev|ai2&x7ijYrGOyOLj=U8WU|0eC z6y<5brm-Bcf1tnu>)Gi%*vc$A7)0MDTeYLDWU4k!qI5=XQqF(7VbG?8pxE06V#45q zZ2btT8*~|fu$1gU2k>>YFv{54I>^*a5X-8Y*%MPA4xU@@Di9&0axuzl7xC`q&smN( zc+)muDD&aQi2lt&LxI@^cG31WTU{2IvHkExTg6Y7v0IIow=s6SsbiWks2EJo!!RPt z-cQ6cCog;2 zbBl&uY|D|KrRAfZ1h>7ST7Q~R%mphiq_;%h9DZXZHuZuEhoQ@K32lp7D^1~lYguBh z%&WJ(U@E*EfuOLt&&L66)ah+2%ENm^$ElcBZLR{LE&~}2g4gZjTSKcR3m$NWtb0sN z@=M0KeY`y(?Jt_)&hWhZhida4*taygt#4t!t41u1XN$@B4yMs;DZEc4)%!y~rpW2C za&ms-K@o(AKKzKajhy-G8;Y6 zjIaQ>B#oOa3-bF}2Hk+}N*{8M%$R?6)0=i;^U4$#lu%2#PrsT#NVttkc)NWwS&wyp z^CyZcjq_t1k;0C;t(rh{gWTp7i|;1da^jGMLKw6g;2dLsSGBofO5r4Uv@V0*Cg%tI`R%q?X&uWh{dHjgx_z|n=S9&p$lcD8Q-t$DMJ}?E1 zqDKnnS7XL>1gvj<3%f~Y{BUH&0MUGfKZ9NTIYIwal$s)?uj!`8p`*l{FeP?9&OG32 z8PihJeEB8+n_Gw>LN;!Ob>`nsH-B=2w0u`MM+DTsZGd`0a=C zddSM-e!#c-s%Z3^T)5Ho>f!|RgFlso+5oeO{jUe9Drb81sZ^nXdJpZ&`8}N-)O<(@ zC)Tkd0N#LvMqxstU)I7`M!!;lJ<)P0W0wmpz44e|TI3!ukS*qCt|Trd{f*C`!#Z9U zyG>Y}_L?p{?qK^3bm3=0tw${zrjHU8X`Jqt^UD0JG=NZF>Tw4>iU4=1^)+l->C8e0 z%r|{7(bD%V=D0pC9x26RBL}TIdh=(q#^6i?npgH?V;f6#hn`t@03PX5>NV5qoZ>h3QpVF8Wy! zK({KQ5z<0pKG2L!yJAAsOTz!)WIht21DeKM9#@!5t(X^E!==tDSV-B8O=4D(TrmGr zIJa@cq2iIC3`HErs-&4bMyZ%(Kn|H`ek6K^OSYV5BF*`1c*tPGE zezvoYUpc&`tBu$0A$7vc;Ev~S$)yH#3p1%So%;*b?0w=5#(O!W?}OK2(n9Fw6Omlc zrQAUh9Nqhj#JE)89*;dQfatE_)@a*Rp$Sp@oM^Yi`nY>p@Q~|hFR=G zZmFslcRHr18@w3U2$` zly6Fk8NKJL+}|cR3Le-S$VKu|$v?kSu5*hppF8X^+%g})YNW$cRn-@kQDRWU66?VK zrBTYcN8ooV`bHTDH-E9kU&O?A_`X$RUEVn0*z*tFa@+=JsI7WWH}a%+D2h2DH!p_64a%V&8J)8^>tK7H6ZHl4#8Iw z@w8v*lc}XBwI_WYx8h|HzxPUEm%_K`i~gwHj2g-#bOO#)&>sR5BM5mrZ(5KCurkPs z1@J&2yOI>MoRh^zXt2=!l!b-ePM2XkAssIH;plV+>8hA56EdBb_gscHWah%L1JK?n zJ@{BI_3C?eNV3_=R|{37+&mPID2NgB_c`NXKDb`;yCtRl6778S)8bToUKM@{laq~A zb{5g`xP)7l6k4r8WxsaasSTr&mVtY7xZ-&a0+iBg)sEq82x$6oYnvR zdQCb)qsMA_@hw+>UAQpyV`iT%G>{ZjLwU?lkdJYIM113ksa9xDa(P7Rs_rTqEu2xX zHJ>zB1dhgu{@O6wBgw7@nyZmU^u8STmmtrpA$?I!N2cb*z3-ENlIT>zwdUgVU+Aypaf`j;l5zy9b`c1sr(Nvbnm;orzzrs!?QF`AX#xB{(H zi2!j%L(i%kBcl=&DN2Hd%9111ta*seXeI66doJ1;s*sT9i{hFEHDQ^U0iyDI1Lt^) z*m*dV-@fGlXB>Y$p6B~1l+3f_vv;Z{+~sU675;-3z??2can2fMaZP(}uH8ne4yb>= zTyK1GjcHh6xr<0>`evMPl^q@u!S@ss^M)7$KyTzc)iB#J_IK>~v+E|2JE_=^@#%rU zQe!xM1tNQpsyRin-G!K`#d03vy&53ZUSJ`mO0(kk)Z2Mgt#>=tu-+pUJ`u9^sX13| z-@M~&CYk-fn-sed8m4f7o3>;BttJQj!mMa2MHA3jsqN+cQJ?WR=sE zRAZ^u`Cyl7u+~>T+@zmaWBtAmI{V1R4ufi@Z7k2-PS~8|#y*@JOJX|^94iH6{Yeoz zTlYfcQgH zr(GC520tneVSz-%Yi}I5(TsP!J0ZZcc&}Y{E~lwlcos?$HeIF~)H1ibp%X~Ea``Jt zaDB^uAf*0$%vof^=c&#k9j?eCTlH>#;nb^|o|UIMuY-T8z3_29VZGC`jVZ%4a+8+-g-{fA zzV#JhMcLyMiiuJ9hMIi3H2UVoxD?xoUvPA_iAc@qZ%gJmndvaUO*-G2Z^F4Vunejz zM_hShU9Tsbtizet{c5lIAe{;0R4t@3FlZ`2YI;R1WTo!g&UnHZd#A*8~XKAuA6_Xq0hQH1eddSUAF==&aQ zOmw5X)rIW#a@%ipLbI>ke3jw}R`wR<(P z+?8~bQW-(u#A>C!wm0+aQkg-TqlBVb<3)>&B#+J4JQ#!eAyOceHDdz_vgu> z!Ir@)$ho_2N{1$YkK#isgxFnyr_{(Dz({3W?HKUV&$$PwB4Ja zfP@Pd5qHtftMS+VyVaB=miTQp?bbfYr{@aKwq8Y-npO4waj^ot%*A#XuFF14?;<|V zw}JR)%+ZqSDt@|nXsoi5-jzKUm67rhmoPFIwvjRIrr^0S@op|LOU^VZvUUdP=8*GS zV)OVr;CA{xUd{|W5w`KVpZbND1jO^VbvyDqm}r9xB;a8d0;FA>nx5xhPX@TxW;%4+ zU7Rh`Pi>tyD7~8R2r>qQz(;P5a0|!}s{J_;r*qg;t`O(Jj0<9~%>#e#>nPeA;rXSk zVCC^VvD84hd6ds~z*XL@6ACrg^?OgD zfWEcw>V(ZZE!PQ!duG00bMAEN#e#fdNxjn0MGbltHm8<&XX%fvNT#K0S3ZJF7W^!* z80g~kOIyIL#+l<{)Lf2*iyyCp3r6~7*H1yJ!m501P$N zez7T|mt3C*070sLqKNstclX+$P7}QOY{!1;OK4i(YTES6R<-6hi|^fuc55zk%om3R z&65dCW?HGW5P(zc+|le`!fB1UAXkJcVb`r_=h;G_0noVm;T^9%u?|*{Ja^oX&m@ii z9!zNlwj4%NDW}|wBb?b9S~K(no5}<2(XibZQ5Hcv5z=Fi7wf>q#0l+ zKYw|W?|r_SGN{!g%bd_iBO7BHaO~l~zJ#3WT+bZPy4e*W*!JzyYm4DXC>aLl9(3C^ z#PKE=E4>YbodZRvb!#cqX6RK_1E^$C9R8@H_ThPqI@*U&XLPDEq1Q&+@oFkvkOwZz zLyd0}nE{dcv7bth^f!N&cVsfQze8uf2Je*f!R3Tc-{c#A4OEu?<8#kkju?yxIJrp? z_FwJ0KuWnxUYHUb5){(!XMXRn5FVntm~3KYXR}2$>aM+U6g{%_lA(6M1SnD zXpa^_VDRFmB(DbN?>G`_cWnl(Yy5+m9pT+o%W&%{6IfO0GLw^A#V>)tmhP5RV%WuK zzy^x}_l6=O>QvF(tmnq#$t2i)5kjoo3`op$8&?k396O#+YNoB_@r)AR7v_4lXGuDJbvdlo> zo^`tvAfcfdBpHaYoo#F>-R3@U>$qX|*Es2Se){;O9J3d=?|qUj)Cmedx$s-SBQ~Z0|IFXDimVsw|f3yzXn- zSy(%fsFRg<0FwAHZeqL2Tr>H79+Dr`8OUyXa=y3lJ0}URP^rUtb*916X3_#=To`oV zN52oIa?7MA@5a$wCK8*hpbz}leuQ)U>%-a=Y}~?l-ZDdE<_7@r)~(+Lz~w~>e%I~> z5H#;=Crf^Olt+;>v2%%!EI6XLVb8m(UxdVq&f{{YS<>yEMtP#+l2=An&xoW+zxuSi zIP5JA`CwPzA#Iz3A)qyvmM2_f0geQFK2L8Bl;f41XV29`OC`?tvYJ=DC z&{U`_ag$FhNv4p0kWQX8&5(vv> z@Rf+mxe+cB=72AjbQKS8K^)nQgSSDD>DiC~EreLO+At{JY5J9xsC6Q6H6 z+gcm_tp4~@E!KoLxQpYxL9X;_{%?&gCg0&# zwb@X~)KDB6yej)h>soVQ+KoZehp45h3#W!c-JzYiWlapXrnb9Lr1AN3phatH+w#(O@71mzv z=2pP4iALE@{gRz2Krv*1m+MJZE#chTnl6$&hhwO zCjZDO4q(GCS?(ERZ`#q&LBwaf2YqqlpuXPv5#@Z*P(Oyen{X_p=j8WNx)|=$o7T>xO2K{P6=CGEQ+yns zshWuMRGhmZ@%P{LGz`owyZc)}&T6ct>MfdDYqZvut&G191flVZs3A95Q@oSavxP@_ zi+wc(RnR?6mC+tP`hq80WFj+F+c5gcSp|RXHO+d&vg^mPUkUm;LH!)lp;Pbt1Lb|F z&KFo=1sqBZ_Rz7Fhs$Dc$iSqDi*q7g(wk2l7n}I=lT*xUmL3MLWqhV}ZV!EveaW+n z^qgr&j#kE}o<|8rS1>K(x=3 zO-4QemAX78HLMqrs*#O|)*;esXDo)YJ#Vv4KP{ouH4`4R5iu||97ai&65Ea0zA~2y zr0~BJ*M)=exgff~_x;7)l7|n)P(I2zM}_Zxsgy{onY%a%6F4=&WM^N1$a4T{)KtR| zw`{2*1SdfXSWbRuXR3vEHvH^BwtJd+%QVAm#pAUgp3B{bfWId68Y)wCZEnaAlB&U@ z!@nhV12D6L9a9YzYDktsGYD!)^jVEb#_!(Je;##orXzrt!EAaJ~l-VxJOLfWzcZ$rt^N zfFEQfpW`w@9>;sjyAzTjV*|N*oUb6iG?)Cj9+q_=zIZ8pa~A5oL@$4GSv|;V&8>#$ z)`R~fD4kMF{|Pkx$KGGmVFM-5eLFvW_eFLW3!d{R_aK`5JZux7)N43u>Q5#_Z*cL* z>yAYo6yLji(51_y$5>WT_Dn@plZPCA7pF6@acU#`6?QoPbLbQMgT>73r-IPO3i~dT zAppVo9_4+zd|r#<3!!QAy=g2TJ_?+Y$DR|n?Mf{87J3j5lk^e)Ws0clg+oGKNL$Zo zf=^SsrTxg6hVel#7U4>4Zuj}ye}V@3i1b#{tSqCv$4T(XFZ;Uh$MoTXCjVdIki@zY_;HAjAD*(bp@Y;#S6i&v zcX@H=U_se!8TNP7tGVv$Ff59O&#g$UtdSlTAM>F*KF|4}WS*L_o?PG@qM9oqlHPPM zG5(va%pvQcO7$e@kz?lWzQ#=VuDkv*4$*S^(8xXyiw?qhWX{Ws=w!qpO8!(Ha7VPW z(Cy4DKmB-k6a0_KEgQO?76_}luGk)=>q|;}=G^0(#r+{VD zIYq7Ce_&E>- z%d_@+bKfqt?LoI_R`gE`kw^)8iKAY!U(FRWby6eXxxd99ZyJd%zKrneHzRJ7*g&65 zSD%c`HFeIcJy+eLxXad-h#qbH1vlN=FAEjlSkNWnD0*4y-nl zeV$T-jlz5QsdTd`_Z!kc0n&fpeRJfL=Cst7J>VeSAXm<~>p1kvR=soIJEOp@yS3eVtj{ z6VCoIJKlNj#zgp2>vIY3=MnKVKpmBH%F*(y=b`;ki^wmbbb#nz*B@r=BEIfR`@wqp z28kf2^Kk^DajXj`Yb~$h=QoJo4L_;{=SfS^^<=FA<0BY2P|daD(Rf?J60rq?>Wo#T zH{5zk&P?(2vZ2gu@=1O zR677$s!8v>yK2iB!Vbjd8!dVwhg;IjIv&zU#xuE-D0e8uy)O7ahW88KSsG=~4Id%R zLp_YnGwI7LXwf83Hr`4|SyJzkb1%?%8$wZ@W5`n@L9Ib|q zb<9^x-0cLSyRG6R?o_~poY}vh)p$QbxZ%G-X4 zgb(pAdo-O@6{)jf7dBk1sRxRIIkr;KZdcnxH2AV1Pi4jqqP1MlhRm}hGZzvEUe8hI z*(lPF%(G=}NP0ahDVQ#7r(7ZXD;qZ=Z|Qz6TP4j#xA8thSM|9R>+&zf&hfnJ*R|$Z zq6T~LkbOrQDayZ>sy=4C@W*c#P7}#BSo2REfOSp(n4a_M%)o_dSVjKMX9UU`gp`Mhl=Hxbx-NSQ$yQ^C&$`$FsbM$Urog*@L9!c|e-Y_vUf!wY6U3CZ~ zck-_7mKgrcylUHvE~ol#K4BGad@_N^3GDb%BJCTE39Nyiuq8e|#ddH%x({)q$;7L> zeT;aMz^6VJZ^B(7*7-gp_;9#)JVg3Pv3pZ>0_33sP$414+VPmY@&Ehf zv93PT&Kk!dIKAFG+W^ns8YXa*uljj!3pU(%Fx%id$6r_LvwOE0;Ga-PiX(I>^w$p6 zj!N!MPC7J^9v;t1SoSHNP`5r9yrGLJ`A%xKx4pyicopbY0}f@k?CYCZGTg3bJ3R@l zT#75fXY>z#@j58?$-^!UkXT~LP##K zwMRKLt*~wGa4RUS2k>_L;{=LoyOl_a3!!dZik9}w571MD1Nm~s2w$?)KdFK9=2ykk zl<1B(Sso+bUon{(`$MPtZf>DkhJphzOJe~^yFOcIzXy$CAK%d#xH+f`hDfxwE~x~a zy3z4RTovmMZ=q#_(pDBHmS&T=`)iS6(CSb@zrz}BMO3qh#+sk{l-E6IsHaC+Ht6q` z*>ujOiME=4d66{w>*b~Uzzwg`=wI}(i5*v!38tc5-AhMi2SGob+ zn-C8fHUMbU`RL8gPOn&99u8O!zEjiA)kK*FNJ(51<_)@Zg|E=k48JdoCHoERy^@Octb6a)TbhoMlR6O^mTP>%ZUvvg8zdQ5xV3ERH z>&qtwfjheJ8E?-duMYeOn_1%m{h6CHqK4agarI10ka%O=eRpH)V~*2q z;%HP_|DjDG;YVRh8nLG1dI&AZvrbNuI8}{VVf};u*%kOK{e(_A>9G6M)L9H$nsb8a z&J~E~PVFiM^Kw$J^B@7?4mC~0HK+^ENSd3;yp<+nl2Ug$GTo#(X7E2gDVlAb26QNz zDAE}OBv!oRJ0@z7l~|q1X67&S z8;z2Yv#lCEIOwaazpdcn^1|>H22XYISQ6>264r&|SC+=kJ(;$kH1b6RsM=|QvZ0{s z1*ziHfe${jRCP@CB?y^2i12(1f>5i=EV^9vB|sD9*xbE{%rVtK=2b6^dQm>AC@MyR zeGZAYnBrj2TJ%5do+SOsZ$JKRE7*U?O(~IAqI2I-#in1@|r!aP|q2`2ie)IDnhIerg-3!T0$cTKl}j4=REm?$yIkn zuUx@Qg&y;%xh$%lKF*_#@OmRA2J~~DJQPE0uhx{hBnq{*+Ij_Cdr-e~dC{81w{i6* z(KO(}{H(E-Q4B}(Uy<@503h-sX~t}|Am>{p;?Q_#Y&AGRYN~@T;Q-hQ@;~5ohl|G1 zL1ezKwBXlo+5EN=29dM&ro3(T!k`3#^Rp|HulnC~spBkx>|lq-XDB>ae&Ws!8IsU#ufLr}GD*UFJELYS6Feg+IxqA2})S5x2b(4MeMNKcWa3YsuCZ&tp{KSOB zz06qq9%D2Y8BW-`tRm<}Vjc`uZu1Z|9*Hw2m(*uBZq&(2Rkso`4CB5=@CMgnfrw4l zXiBE~Xg|z&FKHnpYkgmeanEZN2fFf*?pSHJ-hpdppyhhV+!EcK8Q2OG0L@+p#J#?} z5__2Lp;6a3US2C$nR4gkCanq(9Xow?>F1m6{hGMRnh`P|1s=Dx9p{bioVZv&7(*=S ziSFBFsV8{t^)ByttNe6R&1Ea*TMw@>{p>~;cgir*~&wKAHqY?SPGd>gra6r)t#*c@HVw{ zxUiM>?X;{6S2l-P9Gf^{iMC*jgE%2xsrCtLEp~*#OMO`LYR(z3#z|Oq(M^3AY4`OsJ6iZXo0DHTfwheEC z6sWtPQ_Ku@l@w(Cs@LKT?R3m6(ndLX7=)eLq%3cGq>f!v>#18~p#{IvFO*2bJa)s} z_Y_fzl5PDc#c}XkYWt;&WF>je9|&E_gfpn`HL?!N>*4}~VB{;1iV6jRqh!G*!6xq<-b^a=l(jpr)#)L8oO~Cr%_`kjcwa@ zPHfvwW23Q8Y&5oQ+tz*h{at@NFW`9r2cJDNYq0mMMNltPT`k6!Mm6j0Uc>vPg0?8u z7Rz}wHs*AjuhA_CVf0DlJ109NrxPu_W3~G|z7T2$pBa?5bG|MS=B$_!_)zPqk~TH# zNBR_*M@7ofn%D6xsb&kD)}O=ZL-k+3^T<|KURUeHyF&7vD;?h|mz^F*lsr;3mgv$Z zdh3|+r!t1G=8^0CcEB#i^%Psh|DMozSfeA?t?*W5byu{eL38&J+KLb}=6d5p$*8t+PaNof5=;7QzOlGyQ5j zhh8Bhdr6hlbeEE=yS!s)O3ys?=u}t>#nY2}At?;si+Rs{e>)zX)m)a=>*6nx7{r-W z)YhfKz_9qpAUNk=P-9K*(jz<`JJguYZ1S1m9+8{o@3gt{K4o>iF|{1^p3UO3M5BVt zD=&c{^mVXGaMELW=GwpS(|ZzdTvVQ_)mxnEq?FCs>6nX-z4vXewGDeZ#^9{Uc#fvS zgl{y5=$L4duRkLkJ&HzM;je#>mTJC(RW$$E*0xbA-71XZRsJ2G@izHxjy<%&r}c;u z5!3s^*>>1pN@IyU-E)!@U2pTyl%UXudnmP*Mf*0FrB#x9(Vg-gyC`WdiuQ5H>uK*t zlMw4P3oFXpP3^#N^pZ^Ml|7;5Z*||SO|;h43#-A&x}uiLlir3q?E8Z&BwzD_gM;+X zF@7_+^lK3zp0V{uIAnC1<1D3=1y^e~r!Ra!_N*yfvY+AzMfZH?3CFMRN_|i26f239 zNz1JXZXTw1$aQA}tar4d7uLgvewY<-NsD{gE#}ckYYPmWsT$qrnhH8(i8m%R-mOi>dXL*e;zT^6IY0{xEz%X^wdk z9vOSpool5vI%~oV0vs}Y-fU>&3?<)GX3{l{O4&5A3d|> zwwWg`u1&O{hhrR8%blmcESad{RX7?tZoIfw_NfdEwg9TO>Noba;lTx6G{!F$KhHCC=IJ zP-N`KTwf_L?N^@Va&zQFl+3SSe_>#Xgf8%cma&C1g0CWUg~0G0Qu^v|S(z++{8;Zj z_%pUYM{B0C2A}!fnPnP(Ut;tQ3M13=Ey<^S{_HP}cOto?Ie#@rO3U<^t}W_#7O}gC zvf(LJ=y5u+=C17QV&+6{jvX8iaCq?&)p8)nV`aEEuFB*$XG}S9)+mZeeG zIASF=qHZt{V7N4sK_v7E=4#q-WiPkV%GTdrc?Daa7k62+fJ2JiLaIexZqgz0g++T~ z&C`;4Y=A`cER|UQiIvsrpS`)x;hp5G&!~}43#hy#avlL19tn$og@iY-T8wBsN(riN zj+`|^cXf}>e2!XWzE$Abh4@}MrBejIKF4}HJl2Vf zZ@Kcu_?_^WpG_v{V)C((vxR@>V6oSWSt<0&A@Y&gE3yW}qKWi#RLkKVV7+*(4Y z(~C$_cd`_rwr%vadZLpbw1>Z}na?tflJ0KM>3h5T)0r}<6A zSgRk2W53i8R2zEy>410Exhim)cib}}KyZ&Ou+u4#IC)(|gEr3Lx~W8a@i)e$d0AtX z@vRQe7dUf$6s??J{=jbXrrA4L%|)(iAdi~s^G$!l{LpuQn^R|M9z7&fB0%ejlZ z%xAxccyUz3TE`TX)ad_0#gn`?Yn)cGNoKiuhFF2b5@FLJ?1rc(@A6`kPmutsQ#kWI zE-l9nEd;!d^l2J3J9ToU6|n)J;f{*fDjYWe`7%sR3dl&0@X+_+eM@pJnN5EP(?8&J z979BJISV#aiBP!E8>vJ0F4+eqT#{MO zKERDdN$=<5>cTIdci()UJ5hYwqHTOk>BgqN@jkSM79y#>(H9rWf^}+hV7l0V9WAwd zZ$-ck#i#O%Hu1i){IiZW&&nRhUHgXWbmtHx6O{6?AK>26wcImO5{k1^o#QJp0A%6ut^jQVV=ue^Q!y51FN_FQ~29DOoZW&wa zr0p+~@w!&w?WB|Wp88yONAvJHtI&qM`MZ8CIFgb6e#f>3i(E$6XAK<&yDPZxyz3Oz z?dTDG3kDACdQS}}eiu5cMtfO$U@?shi_$0xVyp}+FMSG*l9s?=d~LXkoGEDh)(8H{ z3!N$NE2m83&6D)am6vxMH|?)l@T;cOvgd27y%?NBbW>iy$98`rGtYYSO<0{@_uT=1 z2IT=3GtoU-`s>qw>{cJq-|(}htqvT+W@VflnBn~QXt6gt5L+LPf-kaG4ZFu&pTck~ zpB6AgS{(YlzE{CUEB6I37uMqG=t>K1{5?o1-UYTmY;R3tx^{GF@i|=2kz4m%5t+F) zocZbMaOn@}P%9WQgzq?Lge|`@y*#xMm3SjNT~2`mHxUC1vPye=(k!hEaF#?}EjS?S z4@n%p6|(@9f8(tN|29O^^srLHz{L16xG8q%f?rTV;FT~|k}dwA}+8o}H26{Aj9Wv8vUI@r-WXVoh1%n?w53kUOQ z1}3GH_%cZwpl+#t$^3G#TtdAZ%^E6lKw)_Q;;`mC_~U$QGipdIvBevB57u}AGKS_e zE%i`f{Ah1R;%YA7kl<*(fLhZDH&V}`jANZHZ@wZ-%;_6L4ch3TV`-QG%W0v3j+Zks zJ~Xnr14n^j!XKsIR%WjU_e{X8UbIMltP4&{q1togPnaDE0o-K&a7=Ftbo3EKI z_$Hd$OoV>){I0i#0RDqGj2>_n=WInnBoqE)=Mh~8IMEL_$b^^z+~(6+Cb zX|jvEn0)6~`-K)PADA=%VPR(ZwXv-=ZE8vnvdw!qv5NvF^%P|)W)T(w_QyTp>I&Qb zu|kC|jYQGTpFW&Wlb-PFn1ICS%4VBOCEg)w8{O2g$?2PGg-|dxXbw)tU_F=bRo*7> z8$2ol&t>bor3z~p7OaX)FFlhzMtDKKjudQsYy>=dC;{_eMG++R?e@h48{|37decgD zUmAO^Ue){ul{ucKohsUlClD=P+c^PQKDRpp!RgpANDh`j;M0o z7aZVyh$u_o!lLi8JbU^9tkm9UP_rIdL$A&Dw@GW^SKXXRaw}2lefvT2+^tF~w{?Jlf1?VMNx`aa_l%jSVG=|ar{a}YVuAOYab zA4qjbbGG$R7yvzV?r9!~YF~Clnf_G-Yx>u7SH9k7@Krkia-=!&n*o(JD@KD#wDY;c z)L9zSWpJ}K0tOdOU~=csfKZ30QO0H#hmvZ+AGrlJyZTbFSRk%Na?uKN{j0gUCQ!Z% z;1iRCB8WBA{w8zFcpELxUCUXU*WSrEg(!ld>AOV=<&1MZ1ki=VWjJ&h?{;6L*{taQ zDT3J}17S$}Rp{0Zh1J&67g=FqGP;TX#l2~8%0<_$E`#%Jr7^*w3Hi=8q0x2g&jW_~^)u9- zwI>F&w%E>tJ>Wjjm+$bP0Nv@AVR7*{I*0G~F3rbguTp(?Kss1=~ zY`@mTz=qqlrXVQ&hBkOxE9GHliGo>gIWM)#=9w6Y{n^{K}x$ZkEY zL!8TS*m!tyn5nY$#bnY@uO$|H1Vd`SCi$zWQ;=PPLv_5CAT#(i-X|c4u;%jzNBn8v z;ZJHkRUadh5{bzDX(6pOrt+K%2(Jzj87mZL8qO41uX_Za9n^SH&JABaIIwk5Vn4Z2 z>2E-aM8>9ukIbFErGY>lsS6g!P(JOb0uP~Shu#7=J8%?CYEg;C)L&JQJ8aycMlz1^ zyXXXXR9)wKuS`fs8A47u&%X}b(&D}?qr^oL;Zuop*FOWD*=yd*_cL|xfrYr^0X?br zc(Dsk=yLS%^WH2>JNeDmR=n6xKy3G*l!wtlH(xoU{*{+&iZw1|Vfu;On>*t$)?J6(ICD z((Y2;#_n52HPojPdJ$>D==7EZJIh$Btrie|KNAt_sEs}hQ#NajWA8f4Oy&^0?Dn3W zxMt2bZE6cRN%ezo&6jy5q$8%Jx!}oi`BzY}%GO{pN5U`f5NXlpGPV8cFVV_GKeRKb zQ1CQ8(8&4TsQ!i^r6k>M$lW4XpGMxSy>lpTKBVOIj*cQbQuJNFXWiAi?t*K^g_qsp z*?OV-a&0;;%jv2n!~ip61B=#RF7$q^s$B|mBJZ5uPESZgITU1^FM86w54e-uyg#b5 zu{${R4Te>?^i>vQJkVefalzWZjVS<&jtCl_OqD2If27!BCEWh$ha46W|Cu+rlp#+) zDY#%Gq#yx!&m73*9eGFE%2zKs~K z7oKAnJfXqfa}|d-ivIoS^sJ?hx(Znvtg+O5hlUq1#=n>1I+`{n)zgJsJ~*a#1rXmw z5-AZE!epPK4RJ^tUW-6>VOb94GQ#5h0L5}%*DY{717YHBcR=E8+3i*2RIXgFFDaS`}_whzfu69({@e!^_qcup?}3}*w{y9&706z`&4ZT z=cCBD-dh4WOJWOQ>tj>z#o;F40e-bej!y_IL|>7fM@EF_dDecK@la6%KV(o(tJ>4< z*4+-rr4F;r)XvHVo*8x0r1WuY)%~cd_Wl*HhMdMa7k%(e?GTUt^dXV4&6!EJ(-&-^ zuxa4!nj7YoOP}nc>2}wU$;nv`sR7HUEv1H$C z0}(YfASGaVlVv5r$0rfuRYT!$qQm?HzBiXI8nY2=_&~5v?2cIMyQf3rS9hJtWo}rm z-y#Ao#_VoCo$dEdUywA8mplO>j|(nlsW08C?oNxR1xo-?olv9#m+VI4 zSV`kAtcVbDPjEp*o)iaH52&3uGXCPr(a7A z1>0z%3UTWG-#HRv4s_G|j~hd|;;Hn%INO@Y@#;V+h+%c+ID2ZomD}uV;L9QFkh%CU z6zd8>C&p%BaE8IYKgd}`f;l!S!Xw3c%e&&Pl}BrfyR08ZN1i2bj9lyU9X>!gHLmUohE^L)_qg?;@D1&ic-YoGQWo$g21Xx!Qn68A^a{{^Jgmdh~wGA3FiQ zn7_TICruwC2X~N_05(zQc>FG{*b~^q*fsp$i%b6?!q=++&tDJ=76{n(c7`6AT?z^g z8*tu?I@<~;@>U&N%M%DLEe0N&3jBqj;+hiiIqkh2E}P_=7HJBQ2R!2LqvmJk`4>zL zHM$qm;{Ob%pH)Qf&7b~yp%QM2t&}Mc0k)3XdAbsagHmuZb>%9pb}7D@>U#HLQ)|2; zeW^Ic^m^t71i^Y`8zco)SkCp)0@SDh-PWZ8Hr{dKmIwTZdittBg*JQfMj%vNiqw~A z{4Fs%d=Z1z(xZW3Z&*Oi6rQxm+a$|Mc;CrF%!*S>NMqrG!f|}RcDA)eS2lF*sSP0N7qfk34G>TCy0 z*2RpD``rol^g*h^Br)mG+db+a;bxjdqe` z*sdN#wpP~TR|}W#3UoT=TYgo0C#d{^o=*;Im!NA*I4u{}9!m!N$}WWu`Z>X~%q?u; zz*iR%F=*&z9|W&PAF(h=&CfX&9JXS%cMEgm+6+mej_2}+xsfeoW1SlKGyZc;U7?ja zv;28iD}drCZ(vDuHJ39EV-(GnP|ngM{f!~$u~v`Y#la-If21RqL66L)xJ!XFRfb>`IS`|4n1K}_<-;C}Gs;WFR{;_=vh z|6ITZSH*nZc(rVb^K#Msmvokr4({sJb3)dO*0_%BcRY*b&~dSgrK#?gV$Ll%_McXqCm6OyDmxvX9g-f8uq|%v^IiVIF5RxW{9rZgD`D zgH4V+!_HS$c(bAlYdgY7MwqNidTLp2VyloNy@4UI1Ok9{z|a_#-@?Eth4v4!VzpU2 zUsN?STm}!0>$t3dDqj^X_TROMRmbG@@nrV|Y}qT3IwE7MGbzN;#BW=_sOvfobk_Ul z4yI|QCp#9K9hFRWOfCB!z4bFTE(W}No(+W{JnKots$*DcxEA?%dH1hXJa9^LFYnd~ zG#>~CS|^gv@cZeg*Kw_#V#6Vy1st2zZ1%3Slwgp6PALNyi~T#=@)^UnY)$c9QP_X^ z-r~Blj52r!A7)F}K4SaE7as=0=Lz$g2l1k8s>kgyL@x$sE?siRwj!>X4|C}pNN>Qa z`!$+AbRQc2`!2 zHrk{Sx(HjfQyKT6(XEAdM*2wQI3#ykfPN3S2{KY|^`VBd#A7f%xxX4(4uQ#FOkL1o zhKgQq!^}Vu&Kp^QPBgn6ng;qj$je6rW-RDWrXgTgoK4$Y32V=GCHWwPtu-NKJP13C zu6$Ff&Iv?HF}3MO-@bA^y_Qn{l^OW5{bB*Q-aSc7WxB+zX%?G4Zcz8>g=e26B!7Ig zlC&5Dqgk*2E@EPOWw{QKSd9-&&lqe6`-4zBvTtoqdliUH*x82bZaRVOd@h5%q&P_` zAVa=Ds}nO+@w1+Q8^Z|V_G;ap)FzvgKjv;kDaL5Li7QUgG~A}3*hn(xfNxynVl|BL zF-xE&4MXz*JMeVC#daxDG0sk(hwUuJucrXbrX7Hb0NvR`&q~T@mP#L23+=5H-R;*9 z?q-|t02~()*k9^AQJQng3BAs$=WH9or>=b#r?ET_WN?0nHotT!y*0sD>Uf~WiyHA$ zYMV~wTEVws3(+5WJKdVD7k`)d_5kRPO{2AYMDTuSr@_fs^a)j>GJ!ec!ccRi>UH&` zwmYxbMoISH=JO5=R28y6JxX4A)^_R2+{Ahmjp=v291mtM52)+4etUYLbvqVD4$6Mk zoshQ6-@1C#GthJU`Ewj^%K6Go8b{goG$Ya?+oq)XQOz2ajSou(5vk%0Zy8Y4Gw*%c zv@qFM*0h+r@64Xpm1EPUg&pF`%NJqKKDqy^FeN0yxZ>TAH6Jb-oA*=}p_VWF(RZjP zx=A`7s2~2?)fZdpqs{@WcHvFLd7)Odmc3g? z-d7*K6Ydwo?EqN2A>LrQg{IN}rC z23pfNHu$ws3(@|Q>l51q#G?+o`fbVR0P?8nwv#2;+l%brT~)t&0}$NN2D`@{N%%}N zSWk*;_d-Ia;g&w3W0OWeq1cMCw7BU&Au-rF$0u@OaZF5(khWs~xaY}oo+?UH3`aF2|84pgC$^?4ozEZPXsCSjxLSBHzW}dBSkbYw&l- zL!?9R^?lj6c&W?4)2XdsTfUCE%M8@x*uqXW;WKden zl#r=*Z1>+B`?-go+KXM&HGE!!mTyipm?{UdN9-POA&)TT=6Z%MRexXJr)z9@pj`F% z#2>4>^JJ)NZl#d|UgY{S6*koGx0{aGtmuBV;40vD;OkwM^&&RO3C{u&c9AN2={YOy z2bC+|$j)D(x(-|hqSYSFYYd_`KM`Hfo&HuPdKi2rq+x$p;x70+60bNMs3aZkKDDOU z4X%pSlDD8R(+}I!A{G1UgwlrQ%Ue10bzdtnRse1LqI^ec0qRY=lo3`m)6PrE+RTOF z0*WTwyiaae0}~mcY!jM2Rbi{a$Pbvijo*v973Audc=Wbj$Jm-5Tk|q?``!Ks!N0kk zW1jg=g}L%Rfz2aTG5|gh%~yZekD$fu-rn<#^15O_wp?&_5zUygRKPgo_r27D-)*$UiuPXYFX=2HvP+*Y$lL5Zcm=Qb>oCOL)^<|S%l!(t&v+y*&4qg) zIA^$Cu`oY(D)oj|LJ6nu`XDF`p1(SoLPi^i4yyKkj{>l<(ddL9MG30AJ9R%D&rbDJ z=H>OI>2-C-ulO{((;zF6sVvp*pef&{j=yKN-Q~^vsCYJn2q;<)2g_fNent$stZW*-;4f@$TP#9UixZc7g}9W5EZIq>duX8O}b@}SrskZSkV zfb;^6+I>5aFJxLE>K`@MLr)je+on!l8q{+VB5@8iBJU;xgKb{3(UbwcDvKPx! ze(Wpf_gehud=U;`;}fH9e_y5+_wArZ5EXlR@#tI7?`}9&uTp>C z{YK`15z#et2EEZY*4w1dfW3Wu3a!RPUEktOeevwI+9kXPcOtKl8XHh&NIJ zCF7QB>-l^7Wb;otw1y;pXRx35>)0P`Kl875@>Q;y9j7;U*5hlds$@TlKx-Hgz9j!?L-gnH53T;fY=IKm#k`m4 zqW&jFkrVo#oW!-6e!SH{FB=&d1|(!~NqMD;U=ysNP22I?Lkn;dBqVX&#ovJ=1JaiG z_~G8tqTb~JF)}(j)uM%kfb;9CDmnH0kuQ!Q0KaE#456Wcm6Dn^cz6X06BE;tAs6(S z;u4&H0v1n+K|$G~Zf+bqXbClDkGy+(dq-j)8Okd2B*nSl3b2rrbTp!diXKgo$hH)`54;ZfX96v@&{Z>vamFMT|-()DMD+R1w$RvOM zRM1t0zfHG3<8?vUtlaz}SMK1|WlswZ4sl-$vP=Ib)PE`)JK$kZ36`fd*KIOy&tR+# z4Gcz;NatGH;bu7@!PA0V*Lsp}OE_K)chrRkNp(||A&HU96^MSpIPjX7%}BCHHB7ji z*)(3XGL)r8#AjPzq|3yW?O&DE!UF;nGoxXI94ztP5SE)SvsdlL>n&c;{#nQO|E$9` zH+hha$QOys_XN{37^tA23*`w7EuF)Lzu>Zf&EvviExo{Cq;Pa_P^9;Knb%%{7k(Wc zCM(_3^9~)KkQO_VZ~f%3g`#F=sJyi)%d*AK6`&)CL)X9YJk50llz zz2xUeKvN~BuIIJA)9JEQ7id37{>}D(x+HY`Dl&+jFJ3qc6}pj`XEdqOsz=k6(Aw+k zHD;3pcW3MH$;rt_b1kGco%g2iWxf>qCMJ}0R7nR2F*FD8Qa`WWAGP9D)cu8CeMJl` zX--ZMYU&ySTY^!aO($vuI4j02;R&Bdro9LQ#x-$O#^rb@N^uLpEMY;XLI6Zwd z)xtwAjT;LhCR<9i-a0x9drCFGyIlRgfQdOIJt-_`{jE#`9sY0RkH3eTY_a+PBM4+< z*RPO}z03VL0$>}>=S4VIEJ^uUZTQ-m>+%#XDwGp}k)Z3vmW-a(vM;6$`)*HpuXeY9 zrejyde~|-qFv+|#T(B!C?g#`|t^*N*Enp<;Q z3n>xkB9zNDAT13itQvJu2eu6fo3;{#Fei$6J03)y1gC~Y5kbP_sjJh9KL|e zbkmKeNE>vy(zLNA^e@0*|FOvFqL{pxZNl$C}5a(5oMO)Azqy9&Wd^Og34l|=p&_XY@GV{~d7 zBsQ?Ua%z@u5{X%}#W9*@b;0|)1SCrHY5e;*;Gbn-qeS7=HPYl$Q;-8&IPr9J7|b^C zqB0l=42XM{I?u7xwU&qR5pEpn;xjV?;-=*HjE%e3Ml9S_ex&*M@+JiMdcBpt7>^u6)<@uKU7U z{pA@eEG*2gqZ0pQ41p%%c8Y`u1)i`Si&Qk4KWi!QQI7=4WU)Kop}Pt|NlzstBZD6j zlk-)Jnv{@LoXglG9Q4&6$0eJY|GbmL&fZyIFa|#(T)XzldMGT~Re*Aa1LyxA4 z2xJ9q<<{kG!cZMR$F`9kXDIFQ_V~Sl6yZv9tZJ1tk&ZX zTl28i$=qHpLqk}rOUA^?6OkvfX*c2J=H^MKU3qB&`9^qtg5uv|lkUDzF&FF;F@6wE z+Y0`t74#H2w=lPJwru{^YQ+aPqGLDzG;BWIN{hMSO8A0sL_KMN-ePDL@G{94`;vur zVktq_N)2Kp648JKF+Bd^i%%c@XDfo=(f>q<-XOot0#S2Pqw9k>)HSiETN|KfW+USh z6XD<;1J?ioOSdmCPrV}}Wdc_pXl8CAsei?2Qb#B0`LDwDGm*Fu&CJxsve?D=r2e@# z&;Rs@QpDXwFk~}h0+Xh}Yvc2-kgr0AN2H}AdjmvlMNG&dq#_j5<%fQLt8uIm$kqGO z-p;eVcUH8ypA+mQ0R^v9YkQTP(?~?K$8ypBN_TfQFU0p>@bLUEc$&Xpc_i5i=rUG} z({5iF2My132VmLN07D5QHK-F|K{#dS;3TN8|K;sX<7=W3zGN2vXP z8LW!4v-(Cx6irCfRMbKuCXnsz?NgmPT=h2VAhi?T8dp0%QeSXz@To?C)iVzp9YF^B zXBZ*dr(d5~3=t0xJ_d%#3))}i&rg}}V@~$oZ%43u#%6|BQ$2Q0PQQKrC1P8l|H_4a zGIf=7T% zh-{Y0;ekzXQB~8(HliW-EuppwiPPO3#jzTMHG<9nM8!nK`0V%??gy;f;$&6Tnq>F| z8hsYcn?Xu54*=j?fA}K(#M0tGURS~Yqzn$T3q$b=4j52YW{ElWaP@G#W9He@-;YY3 z*nqIAx83b8^zB7DjIhb|%sX*zyU72Hee-(>N) zz`FSPmX_4Plqp!MQoWLTS&13b`YTvPqwtX69pT+8QObK+hZ$T5@2k*cZ$owW4o z0k$IUoIdLsP)8aLV}pX9f7I2V^j8XtgueZ8=Zj7%Sbt-A=0r217vu(gTFpBc=h z@o_|6A0ImxhlJIvw0Bsv(7QVXJRTRkkBy713?hoAugY41jB1D}*Z`O~4b#5|d5?Ynv>wnRkn}30Vs?))CeY2pj zISA5}4wRbYwbd!jtj1}_3;>4P)R^^Y;c0qOn7xe-{;9(wKccP5%gZ$0R3&P)l$8Sl zdbxk2C-ruNFZK`POwd(bJv{tw;|mk9Go>k-+*cNdQB<0J=0>I(+C@{GZZ$z^bvm!e z0Rb=iC-46PIFg8~7$&XdxrV8{rxdLRguMQLB+#mzop%nsL69hQ#r}i*FOXisAno^W za93A$1YB`p1Jrtuu+tMBTa;4L(Fw@Nuto_UNuohZS=8wp zpbIXA^qJ9q!g=b|nrN6fV@O6y#b@M1wy$w3t18!Wu-9F=9LBQKJg;oc=3Uu2`eQ^s zBDy+7L4-B`Ga1noK+0A@;~e>yV*1YCuU(pVG!|Y;2rM z)b#~J1%p8|?0m$!&>~2E&2)kUbjWjNehnf3JnR-dTM3Eq%;WJ1T4Bo;#If?xEmIu` zJwn$O6AcGRHf|p6sU}-npL|U}Q1kcE@!y~Pa11k*WAl2U17AZ4xVtpnarF#L;})B8 zD)#5bOiJSnE-|jfCUnRA@aJV&tNLYooa4wLA=)U#R=Qc$Y@`Xh1e;$rlFRtXJ%x`40hX! z+{`yPry-g=>=qtAK0z-eDAmoajiYycUiD%#BQ7qeClGo_2k!%pDQhw@CZOnJr>!Sy zR@+)5@3j=40OS_?-EZ!qpH=_77`CuxrVE&F`Jl6?cZg~pv=^nVjuR~|BO5|?DprdY zz@Mq4X2x&e0tc=weKY{h#>N(doLbOYq(}$u=-`lW@MXtkhYWRiSYk&KRIt~*bvPMN zG@=3xwoe8ghbJc!N!IjD{Ub&+_b`7Gu~#QR8mC3c(MB5Dw-?qcckT(EZRo3N1Vki& zb8vFmXO1aoYlfGNFgYEsV2DOaZ36NvUSMJAgDReUI*~s~Co#f5SDn;Ajf9lgKTNY1 zAq`HPQjB(JOdI;vdH7!CdqP!RB53NuTQN2s|2q{1OAVUS@#h38Fn5@$^vd2tY*BObj}c=lg`_;~A z<1$uB1OzTVk^d1ssGq(9+k!&HhU`jwUa{5`Tf#)PRQLiuw<$X)`HJ&2W|PM$>* zCPNhs?<`B-h#u2{$uz?r~mz6ku?*|HEE z(8E7DIXwab8o6%BIj||^`5>Sjj`j*w0k zInq9GN$1m+M?*t{0|PHAf5*Yee3QTjjQ1wmvUHe=lICXuuvHL63!64ROAX9S&9(l@ znI9uk7WF_DeP{wk`K{?9WnefK$6i$^O3n^VVAN7p%BpI;1IE;k zxefZ)rzd+s-TZnSt*^c7v-pgt+cXQ3+lPnLj~y8K4c@P^M{}hGnMvF!g@1pXt#%QD zeSCmYuyAB@<=%q9_4V~kr`lPre5ziUuD8c9pzC97&ScgNZrHr&a}}NV2;>{6I5<7| z(^xufAbPj>dSpy;bYW-3xT3=Sp1x6d8(DJnB#0J`Qf!u7WNvQmd#-m(V&&7#cJfB@ za$g=hjL4;$**q9nSP^Ms@EN8V`GM_{3d+Ml9aLLUB)3byhtpKFi#aVHQ4V6 zAG(OpTw=0j>`rG>VDC^!!jrl@g~y?}$$iodUmf9zT^r0k!uLR}_@}{t*-H&iu$yd< zjEIE=q2~?N_DNE9)DJCkd8f`0Q`xk{7))DNu@`*thwlhh8@e*=wFwcZ#oTKzn;y%A zG^j)`NGzU=tG+=*4-Nn)hNS-R9;;_IX*mo z@U&p>k=i$*iB_f2B2vS)V0g79z<}%f*^imOijw0|OO3g5zTSWpZ&rYUhDI$z9HbGT zzD05F_nfKu5tgC?BcnUm5i{Kz_5K7C+9e8OP=j)CSBz_k(r+lbxVj46Cx+199FDfH zFPPh}j@GiX@n2!LDfACtuB$~@^qgs2$J9^e;M>E(VDOeazc9w5(j1k^%WESPv~Z44 zm&>c^gqNjjwvhU}8KosvQb*FmEC1f>?j1=Erj0aKHGm8jDKV&3Ra2qqPYM2mQKZZD z-5<kOcmEvXNt@N{(xRV`DcH5R;+8Qs0kPC^BkgvJ*SMTH` za`0Pb)R+?|siv|zjovo(M)twQMc(SvM{N+AVABW9_1M568;LZAppYDpC_3?>?|jwO zZ+L`q99?pBM1LY5*go-X8E4siu@^q;muqrQ@^xIBqtajfd6IzRJHpl0J7^wZl`fvXA zb{YpB^$EA#FDVJP{x|5y+ts@%-cl2xiVAB@LxZS>2y0k>H~FE7ZN*wUiTqxP8V;)e>Hm{H zep<|<9oT`A-n@J`$}4z!yZs|BW7;zWE)|wFG6F~C_LKUjd{6KE$O`WHYJ@eC4xMKHw%>o_twrdu zTL-mF3tqTP)d8%uef#j7PUoYAD0~(cd)+(J22zi(@pwGG5oBl6w0CR|`vQSL1^GA% z88C;s+kL?Xu)vqTo*s#=lN;ih{joHlxVW@mc?QKwy$xujLsqALR#a3-!b}T+|I1nU zF`LKu*J1|6oG(2cZO-n!T-Y!U&uo? z6+z($5fwe}TD;eXvlPBpcw*JT{Bl{E`m)L-_-s&3$!LG0>~uUWL+3FvCN5wvK~_OK zw(rx}PquI8Jgmp?WLT=3XI^uJU(3nbWaD0$&W58D96RtML0Z1Y>(W)HM=(({0&1r znr_27f9rtj_eJ~P93#LZ@e8qGkWBef>q!AJU*9xDsQM3$fQBONYh@)RGBeCo7xT!| z!wCU>{x37kO!0Bp$YP#i&8=@#(N?>}q@ai@hU~XJVs*O}Q{G4=!Fb z5RCTMl%*_Y(~=C2527o}N>BFpxSa4-qk=r zF>{_;#@eN(PZ;jC^{GZ3c#F1-^z4v;H?J7Nxa4H2Cf4svPB7A{*&<;I-lAKrU z!%0_Hcf5B5f%T1W9yK$V*4Bn?XZM@F#i2iLnI9*7YcpCX>RcJVwt6mHhFYyka*Y}5 z)!^C+W<07{d{%sne;~A7oVxd@{-;ZPYIBzxnuf63*Rdx8sF={4oGvesnm3Kj9)gw@ z$f3#c;I16E`Kv#gStEa^J5Tnmc@h&8w+;@##mvkyITfPr_9!v$L>%N z!CO87f=(cc?$=JQ;XpS;2Mu?~5p~cQ3F$f^Vi{N+T3()o-VFhbD16!Jy~OurVS%m0 zM8L|bd|XmZb#4S7qoT53n);fbzdbh}Z@~qV;jkVhfTg+y<($jaW~mBr>HkhSG0_vv zJ}Dw%g4jC|G%Dhex$aPmKwSTLz8onK7z%pYtb{~otby7>eb&_9a`;ydlv!Q>D}~<* zNMdWIB?raP68 zpPrh5VGRiZEL5Bto#E1Fip;8O*jYQ~2qL+3pwmX?3qfZMlB%s>!Qp+>b@Mj_;&>(Ml) zPmDzP@^G(#=Ffh!#eGY9?Kn~Db1#DJ7L@_Pg^`h@pn*$Vd>WaaxP41lczFEr{*ig; z3=@22SZU8t4`AzjKMXWeHa6Yw0nwV%LV#_hqnY(hg68uKvO+ro0~Z*i_L%;g_jJ6O38_bp+4W2}QO8gZti{Y` zFk@8GRE~NjXeTrpj2*nt;o3gm9q+ZGfv4ocj4-Lu?>90b`->ErKcl#`x@r|U{nS-o z@8wok1D;mv2N_9!tr+-gX=OQIWE8W;!Rb(5xo=?sb2%K=e3=R5{q-@RXQ{7ap zH#DZ>A0}(Txrkt6LH@)2{k+0@JRZ--xO|xjqFb@dS#&cqvle-3VqyZ&)iYJ9x5in7 z+Cef98-uxghYWdt--Kq#`@WnGpZKAmz)0VwK8O~6;!fMq*o@p@DL2`CwG(Y^Z7uHa zwY0eS?|_XQ$m;48#B<;@Kh_{D*>!XPxbi{mJis`!Q zY4!LtlJ5HYwpN4JY`GQM2&!WSOcub|eG}(Q!eBeQ`fW2D&W;g|Yz#aog0QQGVQxxP zF8#3ciI=;}P}0GeQQGOMPE)9S(t@~*MA}VLinCC7xSM_Il+b8wBrFQE=X{hrn|=PU zSn9lT`8W3eRh|W?i4KA#VOYrR&np=m?U%XeEe(q8*!uNMJ9!j@!M^-okO(=#ri})2 zg^H1GaEaCN@uO*6sP`)JT7umW?Hbm^)L^I=6o)2;gQ4N6{~uFt8P@dszK=_Hj*V^@ zNOyxU8U_LijPCAEk?!siNu^5x`HKoHd5{Cwa4SEOio zGNuLwlSc*v>+4h`X=y5&Q^?&%TCPe|T_DhYp&Da7Zj;)uO<_ue8%Fk_SU#o=DdxyS zooie0fR-y8i==~NDO0@x-QM3vOVw4l3E?tjU&!EIp}9VZ@rhYO(CLt055G#9s@396 z7-h<=EVcCvaLnlGe^;wBzj*QT+sCs5d){qmcCMUxU98-jFGKbYtXL=)k}b-vdLlz} zNR#q(XXk*yOlYC|CH%bRR(xyMpqDHm%VXZm_f1|b(Y8SC!V0V z7ndm+<6?JDi_++f^Obc)U}f3 zKn}1AzU=Kef;{xt_pL0Wb#n!^k)!<7mF*RUpFTNbfxR;Y@rIURxBnLjt zDX-VyqJ+puZAin&vL`6j;lkN@oneY~4J`?EmV=zOAy#Ep<(t*r-MKb>LI|UE1Vn-j z)Zk+sSD7i$a>>%-_9=Xr>#k;Hnsc?mIDuZ&CA+QJhsISPcX)1!_BUpmta#_8IH=>~ z!T6To|^| zxWTXEH44zA$nkJ#p%v3qXzbhrCI!-Ro&2Amb~UF+&d!$d9uf1sk9UR;3chONcI~;p zQ`dOy&Qe!yN;nTp-BD>j%k)a{uh5X2L9kGgt2xxq!&bqxZqAsIbz#g@l5aVHm z%iE>=cO|idF7Qw%GtO#38|R5Z9cDz8n)5EMezSXU`#tjgaJ#D?!LF`AJc;60Ili%0 zVL;+FHQeLMO8e*DBS?p-gg}xux`a7;GH()Z_wXW0pw9y7M0B_02**CHx1L#=7MW zFzH`}wQm_G4(&k{u9`i)ev}W?e;o{+SO=L%J`5&dVZFG(N1jg^iIyuxZ8^qsgq}T( zOGcJB5xy905@sF|Vh(^7vq(y3efhhtZbrN}DlZoMRi_kq+?<5x+-qrR=^;SLKQM5d zufU_Dsfoje=7MH=_u`DxuUjnmp1AAwoW~5rgwdL-aTKg>?$`cpb9d}$#nTk88Hc~S z773(+{!e92ixrn*1V)7h{M{rX1_dg`zw)w3AHa1uy*c5s?V5-(E*nd+;&*~*&?Zpn z6+`fIfX%2jVJso5Ai<$kJzJHz%5Z5X{wrI)D?l%?`G_JAd7ml?ZYuzOGJ><;;4g3XXYL@mSBm-7xIHl-e$@^(%=hgA2cHX_c{nU&s zPNeBXBLM4&Z;!gAUp9;Xxh)?nOHWTvmXpcAEG_@%#?{4z)di_c;~wC*m6f4233wgU zV~r?|#Ky&2z$qg#m#sk;mdcTy&tW6@A5{`Q2cEDH$J84&5B%_akNG_O$F(O3 z1qJ((+S=)dkGi4EXuP}`8~ys31QwFUBOXcE2})y{v>qZ%kZb~YtAVdCp@5(Of8eye zxP98sU29^90dmH-YsniUrJ@u_tPpF_i#bW#WqmW3A$lt$%QBV-i!NEbN z_}8yrSHhUj$&6ZE2T@qpB*l`tj(kABFllrl$%ST ze2ree$6(spYIs*fUOSJHMqJa9v-wx*`4-%0_89jE3JEVGII6d?JBR$-pO10ttFOR4 zdNLhe^xy_A+M|zRfCCCssbFe)=IDvhxF7$(gj_i%-ukuU!>Ktby{4oGR7-yt@(E&8 z%=Uz!>ky&ganbwqYIZjMhoC@>MN^w~n$w`ebJMqA0#Yq4t*E|&}^e8!bzJFe1@D%hl_XITQkWA97Js?eVGG&H1q2>IIB zD#*n9GM6V4sokVS*|WyuMkUqb0FmNiyq2lX^v`AmC0`V#GG=Xk-BG4G!rxegp~86e ziHT~wGawY#SrzN#vaPp;DL#{(fC3#JXwwTAi0^Am~}0X<}n zOu;%Was4yq{8M|-b9p0UW5mx%SzTR>m<8Q$0}Q6+3<}k`Sp*4Cxz+{hh+l0H-7zu2 z;t?q+q8pnV7BfTbrA?@+syLoG7>xcSoFOAzZN!a`1GalpvCmjbaAr6Q<4t|=L)2PtX-n^#8FVMI59*dLeO7M4I@8i|k9j)c5E)PVoX`E8n7e7Iq_c>kA z?FnmC>B8c`-W<(H6p*VNpP2J<#BBu=6se~KlIEfq@ip8#3NDL6F)#pL3%3X((;V!z z;ROW*lT#zvFc$L2xS-L|3dR^kPwf(ar`(Sl6O5wWkgeg(VHQ_jlDC|bXQ{cFSWX3w zE%v(!$Fc1Gfmn@=8jwK8YGgG}Y;9tT5I%(vas4+}9e2l1?~xB6kcd=wc6N@>OzfY< zjg&K=pVPw5K@hG>&!%<-TSxp!H4cN^_=|-^uG+c>DQf?~&L6j1o+5hK=8{-gYwNIy ziw-q4H5fXmxHJ+A1+-3mglK*Ay%-|ee#=Y#73a%(=@7*GY?by-s)JZ$bdTEs;)>gx z0^&wBh_z*skwH21oHG-Z*}}C|0zl@Jb`fd&Plc$UT*&gOJJpYYQnfX8qlvJv*uJ%E zjY!2@VQfh!cq{B|wN6XdVCJg+t6UQBE!Tl_EpasnWXnEXb1LqVHHp+2PKa^*1K~gaBSplhTG%=1d!)g46KpD)&}_Wv zNHf{u7axoTfs|FxkDr^0IyI%g@JKMw;>;jUR601+A6$%Aq)%XiXJzHd0E{R1=ItHA zRkCCl_r?u>noxH)eNOvVPN6`ND|pG3pb*5;2?>R+yG`~0|Dfaq16|7Z3rcVivKT-3z z78Pzqz;fe%yNX+%^FrAT+w7xG4Vf2p7E`nGlB@HnI)jh|qR!mvJNTkVuvsUyKtD0F z+&?ojyAj(a%IM?F={2{Ou@1*R<8`M`!77&u_q}OWA)8)f+mh|HB1fFTx1K^ZGS5zI zZ1;n+ks*lSa#Lt)d;4(SJRdSzF&-wTEl2Y4UD*2q&Z(LEtNn_5pyf{p8XnSZJ^Vkw zKE{ZMT^sgY`BYPJnN@RQa343KXsNU`xIl+=7LbOpB^C;!tieJfG2n|{UP-0ad6v`c zCkHoXLGshYLmiw14kshd&I(;{f}G?ZQxgq$&n8P04qJ*dm@KlGvmNR>tZR}z2GM?M z*^Zgxhu=4ml`KJtP7xvSEKg-rdN(66Nl6IBU3}e0Ep$~yMJ2in*>6F|#mG~n*y`^} zz%eyB-|fcx9L$>t9*?8|eQ}PvjLp#^Ub${IK0vL9B=^Jo*%Z7T)g&t0FlR+t1xyg( z^{4Sn2sYbEF&o>XvX*j%K5$-!!Z$~Ax9udGhztrc$Bfaaa%Iu(06o z@+k`cA;_nk|BhPadk>>_U+KH=n^-}TlAu~pqlJa2&7?I*>fuwVEnR zH>;5k5Hyz$e@6EBHNT{>IK0348EJTo+jB%3Y=gyAmD5*~_^#&gPzhx4wb73+{N1@( z%y})B^-CxD?`ehm#7VqZ0NuG=Xf(5>s#E#f$#L5jWOg zwBJZPONxAfWZ=(c&>?hh6G6vCkcLkY7q)i*I1)U>|uHe*Fr6W_x8a^$8b% zcZF-EFN#boKa^<{v|SS6S`Ip;I`EMruml`& zk15t-9t6SMx8mCC4iCu~L-(y6Y#37xJtYpTk5syCMEyiNog)1;;AvB8hJjR*BfeI_ zZ(LmoC4A1}3Ar{#q5-m`1ANi%XJfI}86-*p z8;=$B!!gpfNH-rDi}ELtk3V7E^ktsr}mESms?OlN#fY}o*4K1hJv@vm28G#wW{OpGL?I$o z+dXwmS&Vno+*bo_3DbP@?6g81t$PeF3e1{bB@U)h(0%9N!08CtJ(aFyxMJG#V6Yr8 zc%#=*gC`!Jg&WOUsW2+)x(Ah!Q}eY?J_E41!7^Hut%d^S4`Jip696r%wicQf4SB)~ zvfv*lw#CbH$fNlSeeFSYWMeltuxB>ChnFVpektqlf$>A!NbkRohW6h_JIG|IHSUWS zj^k6Gx3y`Y`goDW>8vqw2Rr04cXV_*oLjmEHa}I>)+%u0aWMM2xFBllh`U#~P-hMk zt8-aeEa9(aJ{>fwc=@*3@f#-Q=c9rqF*CCc8J?gt)sEP}ih#y;FWH}4o2kR46LZ@s z!&YGj<-vV!D26SU=?RsN4;wuj93h$n=jTc8UhTFX^`E!m6+QAO4Lpyc0AtA$7Xt`L z!}XqJB84<0XmIGgLcaOsZz+Qw+wzYSc`%FBos(}o+hlCM)Q#=US*XIo+yruAVb>k9 z)Ae-Ho~W#cnEns<#j%RLxnJq#8zd!s&SQHDgKJGX^Y`hJok8)I>dj3$jG-gvZbf9- z;+^7)=W^44{@9vVhAlwH~7Y~b)!Z_fOt?h@YOYAhdwA7dz%kYm# zmv52OBr(&&@F+C7+{r*b-Mq7U}so{vtT@6nIkH_%xi1p zK2B?1UV&n$#m>ucA8Raq;1werE9CjP=OUuQ{0@r(gFZ182525n4TB6Kyg1=y7K;bb zh3C%8%L31rI?8H$Xl%Wh3C}liGIWpcNU6l@U5whSj*>4bYlN93z)2HEcz`nr7M4iC zycKm)6J4vQRSjp^AE`BCkeb&;n5#^BiFrF0FJcolY2o&RO#c4y^4!=2Q12y4TLu|M z)2}~M22^JeVYrYwS!V`LTT*W4+fjtV@J^Moj}Q0L({F8k(=f0gKnmQasCc;6?8i&^ zU6SFw&#n-q6K5C*FfB(Fx98XBQObMbL#VwrPPuz2&y>>@~lM}c(z_4@=>CZlW zGSr$nSe*_4j)^|rQ>MN-h+U52v3bCz-2!zJn9_VowU8%fxG8=3{qK|QZKGu&V;m)W zwZoIZ7Zzt9lCGP3I02O%xhmclTeLITU~nw$p<0F1H~o(hVqf)-zVYZwVuX9PS$O`LVFdV#m(SPX)I?*K$UpQ$L}C00xSP*U{SJr3E#JeQY0E`Jg!*~em)mX5$%B*1|)o<2+J4Po6_8DGG7fL(BafPs8(91c6cO_Y0* zbCLu=9RXC&nJSBEH7p@=Rxv*DVL12?5hwE{%O8JB}N4S@GY-@~d7o_H;7r63k6n*~5dt&tVa4Ok zYw1BFmMb5RtOI>#2|x_t@eQ;-_Y&9h`7#CKw5Ce#*!8RWVsy=35rlk%^VT+zx-5wQh{(4$q+izmc#SMYN93%2qL<&ft=#ijHBK z4H3N;)r6|8=(d6n4N^3NneTkbme17ZP+JRQfxJW>cgXqL~$nqmGB%xzb50 zX?dNyz=VGPV18EQe7@cZ=)@qrrlg~aEssP$u%^#&AgkF%3P{QUHW;(iUMPS$3NEuA zd`|s3+tMut(K?(n>^LYQ@5n_sB?$;khv^ zWL7P`123rKF5C9NhF;FYlycI`aOeA=Cu+vNA%PB4&+ZsYJJJgx*=5AWA%KLK_AT4g z@8c+`!o?2IjKMy}SU15oR7Bxe zY19p4HjHBA<>l$L8%5y)|MG~Db-b=bo-VGiHEv$~-+0%jVwpKR%>w%r?Y=n4~ zwS4@Hf?i^P>YDp%GR}tEN>P#Gs)ZrzSuP?9VwQ=ScX6y4^^NZORdYt#25dxWmv^^H zv>7GYV9qvIN)+An@^i5@>4CHMPpb&T^z;XvbG-KtuF(e9u8{ z+-iOR1=@u(mT(65e4ujv+=BAqmr`e!bL)EXVULnRw59BJ(eW~z8T0NUflfMbVEW-X z4~GKxN9H4cI_Kr^(XZg#d}tv}w^S(P<9-ici7y~vZ@Vw-&*jcUjGrt+aPD%n;s_I$ zh?*w4&XNQZt1ysO(wc#p6{iFV#U&sCyB3i_KxP%U0|O`^KKWv7l%SjV;3zrq03AI> zfmuR^z(6{PFJNW3Vr29%h|H+1HhRX8h#vgix8U8Oo8r5L=&p5J9y`3#Gj6`T+RCE| z_1=YPS3nN$Aj3_OuwjwAzZ$KnzNl!`MzB3K0#H}xb=c(Z1()ELKU zSTW_KrjA-q5`0k72Uk-qFRw2Q989gr7TSX2_bef+mJVrm78vLOfNYF#w21p&y-rU~ zo?SLg3ji^7xhDBH38F%;S-wAqNg4&B@Mkk(uU7{iY9Q9BL~7S~aJwT-A^wS%(0CHr!STCl3hpGNi@~7@8&&U4ZrpnQ4Fj|C(h7{^7F7Lv_aC&l5ySp{(VF|ik z@Lly|t#1A_Utmu6aCY66QA*>u3J}ROIC2B@BxAA6<{#(KD`+i$ni(CgwzDc@w!l#_~Tm~>h>Y; z+}Bt;u9NC8(MH3E2D&|TAu}`4`-e_uzIi~2#a@RIuY!XA4;xwk4ixQ$kl4fzfGVug*9M#Ims>PlQ}L?Ns9ysfp9oiD*x05n!ASn3&2@eV$=MGP*lv z(Ib|aBkIj1O8?g!JyMB@hj9YVLvne3TzN&k4NZ>A-jCfe z?+Zt5fr2-4{rOexn7C>wurmypF7|{(@c@Aq?*`NU+&zfvV*fCYA)-@o45Z@exrcbG z$3@X+EET6}J(q8uK=!7Po`3ctZtnl3>AIGXq&|QY#C8u|2H+c3i8`+2OvK+W*&cfm-94T z-tB(*M+tJ~|8*I6{dYNW%z{)F$I2B+$#w@>6p7_60Iel`2J551Q%o6o4&hU~> zgEe*FhtWdvl04q-BpmV#YPrG-XyEBg=mLjI1JQ<5&%)wjqhx z%2{gS_`KH5d3MxpnGyq&K={&-^%tJS@+>T6;y5x19%aXibbGudn5WHh7VpVd;-{1Z zv5MR!hGGk>AF5cY0N1hiOG+LVX)XTG{QLqu4Iyew;Z~*EI;LUy*8&|u9r87w%07I+ zj6{2ai!GURRl4D`9+^$B-z)|1*wE7b5uJ%xlSn^N*KFZF{Bxp!avDb>=gdmdu6DSRtnzKV?g@)h&3_g$jAO_GT z%gJNzzVO?Oehp3>tyb&ccgV7i|4Xt;M}waIcXGw{gV9rp%6kSoLNU!-($}>kj{Dm@ z(0QX=$LD`s4QJUhWXMY%FYR_1{IWq7%Buvv>HyGeUPS(+e%;6AQN){RM4 z(dak=3%y*ZZ)Wzg<>TG{rMn=5&;XuNQRy+MeL2hX*xqTavq# zr5X-&tqLJ||q)|Hxn#3Y<8Vn*QRi4`8PNlbQt`uEvog+)6aMBXPjfI&bfWt_ca>V)Z~IN(5tLkGEXNo#!0 z&F3#NxC~3^>kTS#>o4-e5D}810epbUsRh~{(A7k)d?V7I6C=y{;vv*cI-*Fx{@fOI z1|535m7ViBvnEQ_058Ld6W{{(n2FyTvdttjU{S59sf$8-OQ)xf<;j(JW{615TslDc z%K|t# z@N<(^0;vV|nEnQG()8ioQ`e{{JH{;;Rj!yonzdf)FROK93-U3@fHn9w)+$_j=i&rc zv<}mBD-1e*>v`K-tpk;vHjcK;Fk;S0BSAqiy#LiXFs9#m-`*hl_ZIUh*hHMZzHvSB zv*^p1d{lsGN#9PrS60n+_<0TW;_J$LKRMPej@Ol9HN{q_$7kd$`n%}*7LM3fCfulK zsM=q48g&?6z!Fwo!6hc&j+{2Yv{$-ffvS=jG?I=^`DyPq+4ZSL1_>~tKx^lQ=rNc> zu1m$$ld}h6G=3W%qOLtBddTK%?p*&vvU?2l!KGJghc4FFUndlJG21};;876=4CG2c zglhKuoX>8;L|zVF27~|~Gdu=s@Jj(N{hl9e_v>on`np8OC=oJ&bbTOFV0_E!{}4F5 zv~w~}bhJOmz|Nkzf1@lXClmPdBHOmMVjnmzUvlK633pX zic?Yh{*36QbjB`w_WL#V(en8f+EFTILQf(@ zxR`f2O;Mml_H^QTnUBi%wImx$dF?+I;NJvL!w9~+JvfE%*I;A+6IPnlXZ_~3RqGO( z{V391exc-3^=%(eL>3wPiwUukvr8774+D2O4|zo<0s=Y6|K81a4>FveQc3L$MVir| zGwFFzQ;GK%%9QYw{E5FEdhS%sxlX=tYgW5m~hw%l$?eZ;a;ERt{I4%?1f^J zgJIzZj(Iy>!v*iJNZ-EkzP$ZuIW+6>Lr_MhPb~PD&p6jT0gXT3$dH(VicmjI8JzPr z`#2sAh)5eM5V;72cTtJFA{eqFOQHCcn( z;OV6A&-Vspx8!iHN^EZU=nxi3hzbb{t5UZN^;b;{Wkd%CJX11tE$TsN4~#spigkz* zVa~~VPpK&xLusZp{=_EXDO;)u1;2SSZ(WaI-Jg}~4|`M2)#ZIMUfxEXql`*OCze=! z?P={hanSfD_MizT1skH}j@{**tY9As3i^4T{&AjG0v0xmRg>!1gW}W5HTD4%v(>`K zJ!tRjENkIFncso0@j=NUU-OtQC@6rDg~>Qt`~MH2Vj9Ph>ul4Wy86c{*_m0xqi+kK zx8vf5i9@J(03$pOj(iJ;RX!ZwD6!0`;U&U%F_L@x8zkfn5nBLub|Ge#HG(ik*T!`O zr8WAyEh9q~zI)7}Wq%sXcR<5Ba!;>>-LEAm{3ry3xM4N35!)x>JA7a#ZdvPP#2;#U0PBy_ zcuAD)*pNAGvz9rWQ+!8_5mvo(@K!_4#iy=bvZ-ZyLf9oO$J zzTCO5pYnMl_z+`bYD*T7Rfuv|{Z=e;TLGL7Ms6ZA@O~GIPe`zE=JWhza_BM457%ZW zAml!X(KPA4mV6SUr^;?82n(ard8e?m1~;xX?4=anGRBHarC5nRUlXe-4jX)?!nuc_h>LI_@UzY!L7(&&!IA~9B1y9YI zsM$>Uhy1vl*)J(^*%;ajbWs1E+#U*IiUZ7E@{;25>2m#qSQR4w$1Zj0Ijb?Moulug zKM^QP{F_gG0gXO0uXc)rSA)RdxNqO+ z7CA!a-z2?MNe%ejT+_*etExG594YrZsI0OU8@U@{>6tS=;TGN5M?w{pAVm3fw`w>d zMLM!prZ@H7y9n*0cM*hzKXY@%A~9ps2-)@C`9NiUczTxC*O*6pz&)6m{4iC8KsCbCA??qP(7Fn(@MH(A}zB%FFS zR5WkmHZ$%dk%Pk(W~NDXIvz$DH@q5DNKSkBFbJf_=invpVStPnFI8N?UiNk`m$YUO zaNl97DoIO89e6SEl(aiFpJ?eiL~iY1y7AKIazpD2rghAgcbExb?uYl0lTjcI5O0a`mHe$Y@P`?B@Y5g`HujBT z+2`=|be+N%wp_-o-`JlwSfd(+c6uG{HcjykMyl=~N=g~Db>E%KY2NV%{K{kaNkDK* z!GBE?(no`X1BY-L=AT#ZJdp$QN$AN#i_N7U<6rGMvyUGID~eycwM$+z*UC))`5FXs z0rlLUs#AzKqmP;f^Dizgr52`7vxo!X3vrcoRinG-@@sG((fs@^tQdQI`DGmHnF5W29n@q>?)fBpo%ex2o!OPrjPK{?+ABADcy=*`n5WfU$+9Q2BNiM4Twy0XlarIx zG$l-5N{5FG+lI`(swe(Z%dMiRmf7Yq#}fI@LT-&sqbM|P>4R!e$HsmB=Hs3dj07SUn(RB8waMIbb%GSJ}@b+hB;DK?9}%0$M#yD(!3SFUeezm+!L{H0Y< z*T`;*iwfaYrF{10*R7nhGk!)8-jsZTZ4vQwfh5sFTG|@iN;DpqnwXM07TFgw`z}HR z_shswN&?VVKRW^z;9~KMSI={XeS9t^8KMiL^mFBjyJ$?$iEH+_x9%X9Pxj4MSM*v zC}&N$E``9viF7I=gpNhcpQXQgWgQGrLLzS@0(ZInhrl^W0OT>q$oAo6@tW)^!rK1J zs!MEavMs3(#bB7BKXs&GI74w{mjoVw7u-a$_nOz^9_1Ck%~gHl00Mm~eoYL`F^>yp zk&={@gNVmHJfdu*-a-J=|M8yhiZq+7=U}o#k!EZa>};P)m~ATx{xajK_?mclr`Y_P zmWh_ODLC$`X+-@%sll!PK`;NN$x}jufB-trv=H~>R$n$3os*plqNk`!f)4OO zb1;#*VNCq!eM0OSOw;T+(%OrY5Bj;cQ~yrP*PI^r$B$h1Kn8B zY_*ldrah+nU(L=^Bk>IkiB#EEc#~?Uskz78FL|0jqoepJHh1C#JYXQ}$`lkGSUILR zQU`2KT!<~u2|$N?#2->SVI)6){7`Z+p`9{{2z^FR2BNlbfUC8VAX}(n6_ly9hCM`< z4GuFPqkVt={L88K^OXx9EJNNfEAY()Q`<|Sv2B+@xs zfTJQo)IC1*?iE~pu)^aVy>7G zEcyw(H;fo~!79pe$XAsRkFy&DjV|O2p2V@+^Xjh|1r}jm%_`mbW&9fYpad|i#?`6aT1cE$|@&06OA%xjI7{Tr|V20I{)s>tV|;2D`~(fNJzLKjhH^=58CX; zY3DyF_-FBdQgAA|5~J&zTr%H@)A+y)hIi=Aog@ig|Ax*t@||z?lCvsSRMxf#d?w?- z33T`bnx>DEvG;0Dn#jg5-QvL}yxaBbDsF6iwpA2zd3Wtzi_U3MJl_wzS>e$`6?g5` z#3Q0D`LH_s-8*J*CutP3WZNkXUAL0IqtmIpli#ADz5WA^NXUDJZpfU^+4?PoxTl!u zn=709KuUDH%wK(S$jT5Ce$CP6dAF3|8OI_bhVGa1{4IPFKW^rkSy>H!Nlr8h7OIp< z9!!vWhA7X zj?NiG5^e&j$Ux-`gKADP5NL9kJvcbH(Qb@qS??301P9fam)8Odm{ZEZLGri-+n{NK z<>!jMwyD8${Woag8@osQ$O#pgP5qKjfr1~$18s=eyRzC5=`vY{(d++4*jU;OePMUG zj-QA`x?XB0;R&M*>kfL*e@dC!e{KnFVOM5fNFRmI7CX!^ve&p~%_E9gIav)4bHQT) z_G3v2EMlmjM0HR?m@dfg&;-L)R0R1yu8~me3_^+6xt~W#3bK~8F?{A5*5JJHR}2n! z!1=|o>gb|Fu3y%w!ifgX&`p=QqTFy6P=A4?x-u}M5mC%Q^jg>G!L(V(OysCQeEjq? z8uhA+tmZdF&z;L zImaeEUypjz?OU3@?^@j;r(qM-lkacIbmNO*U?TRGBtC(Y!TE~><1$`kS5#`R-1k{e zk#YIw3W1TI#XJlRJ;L0*^4uwLknPZ4!!K2MbE$=)9VzCYX5XdPe&6bPcj%m*0VEOO z7RQi}#`jeyM+(1hx&I>@RLsinm_Z)Ol;MFE@sQ zDaxyA_J%Og@9}yKdRa1CTaivTH8BOvpeuI^G+xnP66eiJtoxPovM@1QJ?CRm+gkj< zaCkk&sx39r`woyOSg_B0KXoWrNMYg2B{Yqd1m@1>F&>R1Ov~?oVa%N|;=FauA~!T8rSp-2>H#ZoJ?JX{5Nlq?mN5H%+elj6BXy{dujD@Vw-oT0L_%z(t009;1=2Cn4)2CsLrSKNQ=UhZF;;q{eUak7Ir}2PEo&tBuo;SVo z)*@FuvYd5{!GBIZih19#?`14DI`5K(#Irm|O$HER<0`@YJD#XXC<%xnL%Fqm*Zb0`)5e?Q^{a zQGC5J4m#V~G}BEj`ka4^&RkRZ&T92Mu0mIcA4OKspUViL3otYh2aoohgb(7vZ#%hho{utydD~8H{U1Oyi|G2lya-h|1+H#5 z9uHlDt8_QNoQr~b0){Ub9z$qn^`{2|sd=J}d0o5PZ;Qmfnlz5wVgoE)Hwma#KmGpw zpy3NHGIU^?dN57;aNBNd53Gq@RIZd08?V1VJFHNABmIJxNP@xt!C%nhE}MEe`msm`1($dlvTl5=DfAjmV z@s->8$_2)dd4J!cl|w=Kc(ZF7D`%Wz9LTSfLdmUB8h2|K(f(fQc(+QK-tO8JVrfb0 z>-?E#1p{3{f@&JP?B#DEsz2URRW;#}DIgD(Kp%7?%8p_p;@&2u{(^jmcAHnWnlE<6 zA*m&HchaVEIP7;2+YI` z$!F2?j`<`sr8#cSj---*T%eXdOjN4VP%t&XrcO#vkJtgJGU+q>NN^)mo%f1` zdbe~xsMa3W!`f&@y8<03_qrSUM@Ey34n0~#s7ti#KVa_nVSQJ2E);8mIs16k<`=1A ze~yff_Mo{^fvW9o%enh`DQdweN=wUZf9TWYzQN_L&>{Cf%J@kby@uo3on4 zhACoxn=c%Tji>xRsOtWf_n1&*<=~^cb)N9JihGLnuvOQ;39nsR#(m2h{M}ePC zhDULhUmhTUw2W3w9GwuD5Rbx!gce_I16{Ni;D%e_TUd`fKgVSJf}QLO=j}FHum1Nj zUF(Lqc?a<;)+9%*pG*?q?M3URi7KU^S^1 zqv|=w^E5V(3cqRD(0=+m<^Q}mxNWxfW@W&Vq#!dEC%quJ z|6ajOfCS&P9y)zb*bfW-MZO9u7w1WywrrbRIoL$5Z;icQW#HgIMM}^2NTD#7_?wMq zr4=dG^2#TpAIx$%G$}jEB0lS*o)IprJ#5*i5f~5PaG2LrFWZ{&BW9``Ng=ER$5qcFlXS=Oeh7cB; z^FjPi91|PHmuORpG>wc}MoZ|u9}8HzAg;Hgw#QO~p57T8Os&F7&Zhks-M;7HZ_OF@ z0Q+#uK?s*on@;^7LoSWRtH|<^^~9QnZd^cpk5084HV~67@89(5r~W@e@)sR_7Z}Me zCPuNlyDR3u^Q@YqdgtUTkKeCPdiu;MI0i5ng@moITpgUMmGuGoWVl0492y-6H*_+$ z~ZTZe>-*aPf5Mk6|Xm5Xo|eVNT0s$R_%GOT3_CF{z;_m z6=RnR;}&YNyM~2qKG%bpog_il091 z)HFD*mlN=q#;k;lo*yxaNxja0C8(D@EXhDDS2DH3}gu`30AhxVeZ5v;!ZTByZ$WDFlnd;! z>0*@wGicww8Ae7w3~y?%O}O^L!?vB2nE}-jWjGZhHqglpVj%7F7oA6kK+B8MRs-1{@Tl9{cj9Rk-zd^CS5O6KPtLW*U~C@1rLt)sRbAcK&BGemgS)tDSg~BP^m9 zt!qXHANoUnKQh-CiI)4SMCEMJa%&JE^NVuMRD!F6CLbe4CNoeIfWibKEqo6IHy(;m zXBO`wOnYN#Z8yh3{-W{o&1S5ayYKR}Q+hN~7Oh4WE{;kXZ@5VTdmj55qI*63N9vYb zU~U(pGOerrs3H38!CQKYt4%w<;S%A$evc>1JJu?9va9#GX^Rn>*gYM#-(QP_4r)hhio>wrh6WO+Wd?@yQ@kKqtt!sAl&W|TMV*fJ{XY#i-l=coN z0^@1nTR(cn?E?E7OUdlb1;r~#N%xof1Y6&Q@O0mc)e;x-D73S_ri_&N&`G1_9RaacW+HR9zA-Fq);O_1Y z!7aEu1aF*%;O_2jA-FW|?(U7dHSTiQdw;*++}5Zy)>@-3%APsjnYq*@2a4YfEzQdw zg2f`T5!LdBaLty6I2J=rFjl{r3)=G0;ZO+s;{JPk%_x&m%|M43$f3i)%*D|&xrk!I zh#L^5O4&8rt4eH3cccC;lQS7Kmi4GrI=tsc zw)7kePo=mjKVP|x3{s`DEfS_Pc(*V5x}ok-8oIJsx8ToXVm6l^df zU{FWN-4G?x$4WZJ;js4I*JuN7cKRrt71tJFtKuOma#700VKkqV`?p>Yrbhp@T!9l! zkN@D#775@tpZETQ+orVYRq!=Xp+My+V4B#@yRx|#c*bAxZ>&!m1^WsK$6+Hg4 z{W6(HIQCd_F~^KV3;@E{-?;W4Y#@PFMhF=*%E@cy;fIK3;a)6i|hSyF?Dr{FYc_Qznc0*@E97gWt7es zIGf`pbMKSkd_qUn58$&hGS)7rI48n(;`)Dj+R8WR;x)plI>|2z_a$fyJl)EvG`J#)55g@PeuXp<3nWyJPXsc^* zk#uLkiJg7SPvnvhZ@JvU$j*n*uE~k|ja6H};fte4g5&#nKvQvD)yIf;hYorMZo%g) zPS-jGZ{OqOxeEHfG6`e7kF_`wH?~jnQl5LapwtS64s1bfeBV<<2ahYdi9$f=N?nCK zKOYNM9WF3T3pZjw;on$zd$#U1w(TD#Or&fjg4SX`x5D@Ht1^|_#kxWNLsDNeO3wY; zaZ5e%i@hKoF1;sT1vg`tK%vXLQo<#mx2o|Ut^|ddDnje4F zLaN8EQcO9I`z`^JLtdg95(Ibu0~0GHfBnbIY_^9f5U(wv|BEzM|Sz%d20u1$7C*eC}0c6aAFY4YHl|a2Ub`C=7L(B&<2)~6@t|lz}r{&M_2p-YkgYL#%3D2;8vGj zC=_taV2;n1G%dYd>+gA$ynH1+ji{ki>NUs3Gxw{bk`LO` z-s*TP%=dW2c-0$zwOw?b#Pl5UH@$!Qkn$Fe8znSU7(JQV0DP97o}0fepU{D9qF?dCMS{l~tk@GX{%^DGsUD#M7D8 zL%j+ke--cz-0A=RV;{+JT|U49K`>T?`xpjuYezUCwm}VkkO;wq!BW_W8Rh3fTU z-0w1sN;wH|btQB+3$)QCghfdez~sZ(W7=kWdd97qJEkKeA7sb$@9$P+<%yRI*>h#& zw>g0sj3j|~(gbOl*@1ZIti{3Fj5R;vNARKrcE(-zLxmSJ|n1Y&UGco zlyf3gwJ{T|ZnR-T&aC%@YO`8jyvMLF5%3ZdHQxVqL_8gqLVl@TJs2!5(RZ#T;_<-g zYbRo><^Rk7mQVR@o91^a0s>w2f+GR#KJVQ#6?ZmgU--E}gx=gJ4Ex(r8hf4z^rcc) z^TL!~UE|Dtv!arAtVkl6fg`(3xt2#TwZ%L={whc2W@3^2gA=$e9!M+cUPZnt<}7tiDjT+qTQp#O9!P!c*&Wv2&nI_ zVwUc?+X1VV+a81-?nk@rj0x*S){pg2&p7-FTHV_`?PD=g`|iBDO(~4Sk-ydt6gr3* zcLlfY@Fw$6C`YPoen%g`d=u)_49+q*cbIH%r+UotVrq9c3g00LUgd#{?4bboq!`{g zlV&5Ly|hmG;^2%}Ku1@42C)Wu=4F87WQUeelK4uZ$wmcp5n6)dB+JRN`_S52rbb7R z>DcAAg!rwx!X)u$!!V6i;`E-oT7Js+qjBmK8@2FN`2qhXfkh#dEC|k$I*7uR zKZt3Goe+Zjz-K%DfbyL@c&Kb*H8xbkIu_b}FqPX8P^JhHoJ**Y+Nj@faT;FS=g`#xS;RiXKllz!i}fs(5Nkjhrqe zwYVJ(_<+kaK-qJxQY6Q-?I^d~tVc=n5qm2so~E~jV-s45amgYyGBk566ak~w%wXUF zxc*~tNfDe=&~SQo#amZBbutTwhQZ`CAJzze?6$)-B9L!?jxYbl-^jC?>$cCW4Y&}W z6gP;DDcNL+nRZ^hqw)}gM*N4{B^tD((D+u}zE$MDKEDd?;~`&%GUcxC)M@U+qQ|`wjrkw6G^EK= z{sv)=ox^b<3?d(&EQQeQpbki(GkO`olIb9WS=$0m?ZFbbi(gyLq8g&Te9`WFy`ijL zBxlCn6^gjeJH^+gC}znJVrWQ1eVP&m2N}5>hN(+8#1>Ix;ytEhIlSyW4V8&)eQ!nI zh<={vw30DSxM22gG5Q|l0zMdghJN^QJg#$FdYy}}DIgN)<{?O5+wi`ywsY^kp;_ZYC zsaUR!S=w8MrVUeV*Ij^=y5#tMp$Ie3vnliZ44M_u%U^D!B1`d}lw41;q6#!~I#{gq zX|Q~&M!F9IHi8}>b-iNX12We@N$6ja3-HWz2fRG5DWVt%_^&;J98Lt*hRb(6>VrcL z_Q`To!=*3BkzpcGYZP|7mk~m`q86Gu4JX=IEjrJ=_+~Ctsr>;k!05nLGcbU z+m#44l~rl^fh_h!@X=zMR5a}`DMgA$)t(`(v#$%z;QB=VbM+wV`Dqj`^LVLU?iKx6 z(I{Q>B)XgeQVjciJ(zh@yPDZ)Gp3Oqpm)1y3c=#Yz|8wyOlfhq+&l#jyVt&n?iTki z8?p~T?Ar6qSvNjP%@)A#{7`q2IwU?5%=zjt?4~Ncvn4M}M|8fY$n#ZW?eKjjduQ-) zigem)Z#EE9ph*9b6l)=4*tjxpFUGM0$Y!Y*;QlwBac_X@Wm>`%#Gz`Y%t^#w+;)+u zEXJfS6nF0946p9ca>hXEdBmD+Nv(KW#X<&-zQV_9E1Ik@1)!42xDbzPxo#H2iX8$RY4Ra;L< z3fl$&>z{8-{F+EYr<-ErFR={Jy*gPkLx!A|IQ zk6DZaja+kc5?zn1-R0b{<)B<%?UzNqxhkn**LL$Ocr(?TC0U52N4b&Syr>$X@tF-zIK~>RAys!SV$*1)c{QJd}BRt7s z2ELCRV6RD_ob{kmRb_jr)B$mP?9)B5@T(_MVK*@30^&EP6I=aneXc>>Vf9wn67HJW&WfzzfBbVh|(G3-8P>xy4SkFi2zWzwecxVmZgt_tr^F|UiN}+ zWW?&Zk?3Y()qXZ=QD3na7RiLiwTKZft5j9e;&{xL&+Sm0NM(kGhcrkf4V7wuQps5N zhs)VgP-U86);iFQ(ssE%?pp*xS$@9%$jC_Pzrx7BfBz0yva0}r0vw#2@j+(xHJU!j z!EAnOY59uC1t}V4&fYF+)fOxQmp8xDAU%qG+d(7(m%W02ZJ4jPt7C{y2Ti$cznpRK zX6N{henKwDQwB}szwojVWxbaMP(xG9M%h>9^EwMu0QXdocjOIdoQGP#Br5nQPd-N} zQ}=w=rQK@s8ymjazqv^0P6%4f^?J^!J*~R!qFenU_XZD>{nqZ?^#;_!j8Eh?~?9RHZk1m}7 zu1RyMb^YRS78?@@^TM7s8)-?7I;Zcat~1UbQ3T&e&b`EhvL|i<52G&!4RkzSwM8iR z-@(FzU*f+TKn#Z3z8kYM2#;rCcFzu@kuP#M6RHNlfhN7RTIMZlLFF|l{U9Ue24pheY72+ zgdP2}CmeUyMA4jc`eJiuqCJvjF_@o3+-A5a(|SNL8q>K9HCq$p?pw*tF1mc=z$w{L zWM@5g75Qc27MiGL$wj=xSyu{(+V`+Zq4ti^pSJ`#$rvpbTzu$0{)e<|;b42koofA? z)9?Z{9Sz0#Ail$O{dK~9KnXqWe>Q7D^@jHFF`eo+E4u(6pV9*49HSQ`aW@jAU9AbTx+^R$vUezd*-ztZ zRZV!sFd9SiBT-bB^#dd5wA73R93*lUq?xi44P$3acRv8xeQH%$LV~H%hpqxBvtJ}V zX_s@*rF@pM4_)0*^(??k4vJhe5()j=a4L^D-qAU%(B zQ{7E&MhDJ(w>X=zNE{Bo3k_$#Kp&@h z5{GUHV*6NhWdU$*j2j?(4@L7snw^<@g_uL9;kDHBpJ=+~AvUXSwNjleVY+DYvJnJj zC3qZ)!cEM&WqjRlnwy40;hCc)S0Z;smfpSUxi63(=mb%o@@>b0*-zJg_WhnBr z@Hwiv_j*h1I<{F5kJ>NWLaAVX)=D?@A)(IvlfbkSQ6H-s!dRpgmR(&Ptvgh=Kr0X( zBb@ohLRPG2%=U`-R^~Z@kd0mxnmc*K$%(p!tHh!V0A?AjPbyYPH9*Go@BBQ6nvSZh z`U|MII5>KbuwZXAc{anoO#%dVf|JkU4;s+pk7mSkqtSCcGGjM-fj)A(j^dieh!K=9 z0KW0quGgl0qAMXoj*AEZ=p$Yv*qw7-O}j!TG{%VHO&^ zxS~$(@0$~2o*Y`ba#m>71!IrpC>r=)A_3oq4{rLY3}$dhd_@erZ)kx139&rR`%_O1 zHb)oTuWH)bqDfdqYQOYH6295ZCaJ4wsSlHb;`b&nn0%_-JDaq*ebR`N-_s~sJk~(g z)UW#n+Wq_rv+h?}j&hDV{-u(n=>B zJ^cKFEtI!HXx{6k_u*T9SY%$7v}EopG#KW~PGFJAjpkiwz~RVT3S%y{!oe+q!bBld zjsdzzus$eZr@#seygHd-Ts)Rk`8eA%+%PDAHc*REsup^l?de)S6_QdCPkQ1rQdUv? zvZhN*U7klqa%I|Eg<`vtS827_x{Dz2deD3OGw0PpNj3%vu^_g__DTAg6d&)?NQ+y< zc3$qGNpcETd%gN2z4u?G&~sm|@DcNZ#mdbZeoyp870QLl+a&S((oL+pAL%pjm|o7S zRo@V2?+H8k1ge*6eqZ0pzsSwGT)FA|Hd_A^8K$-tTrfxSkhra7ZqVS9Sv-(sKU{?= z#I3O~@%@9CHb8D=CT3J5Q`zishI7+!2Pr!>hQ)x!T{SaD7=q{=`!@lB!9iraKQN&z z#=aoxQ;n%Q2Kkrh4^Gk$BYtc+%QUu!FcaJ*LUuv*d%s;TzgQOttp?f?XNMkcDv3)< zko^FD|Apl^H{x;Dx=0jYuLk>NwXmI`57sE}c?O%_B6`aWpjN>koC4_I5_a(*I_M9U zDdP>493&&9By0(cP#(AXm(5gP~BQ#9c^Jq*ruyX$XZ2{!pnOUW@}3qiV==Uc2^RF+s1wG zMQ-1MRrZmZ;(zlw)lgforj?t@|3pT1^ED<)N*6%w-!dT#qmh5y@(WmCAZGY(Q**Ji zdfAr>cnB=nYFS*QbyGn35tD7pKxWxA(R8%AI55g+T|K^EdN3YU&H0&t1P?|`2^xLd z1dT8?(o17Eud?uCF6cHQQvVCgTDiR?J50k3t}cZRgnihoQU6o5zRWxEiT2mlnu6m; z?L%QXO=#G)I|ez%r-eHzT2JX`1~NhY&wmt-RA>>DzZe8cHf)R;nP`RHIZ%?`3rW9pFd6i?+L?+&!y@DV!P8J2RGs7x)-dqJf&ecB1ygSY z&4JtzzMUbU4IsfgaIe$-BJSDYF%bT6xuAqUS9EFW_VOyOQAa>PAQwYw+bOfB#h;Dn z9Xm8Le3Zu7h*d808x_C;yawK+<@|KDx3d#a*e8yN%lxTeQivoasuL5VGV{;nhrQ)8 zVbJ6yQKso7eAHoD0w>S@{Y_eCM^K0z(N84r>y{ulH8-@M-{-H0U&TKeY+oQd8mA}n z87QPhbXusrB|R=F%N}wwi(Ohmd7vD!-;hU8R+37Kupu94@UHPAH$BvEY@c?ERceHS zwv9E<Q!8`5$R_Z;CxgUi5xOyuTe^JgIaTWG+EKK_RQ_d=7rPokHL8e=0_ zXG%$x>bam3x+k{5&B1HdxVt8F*RJ@VcwE^R((Hjus8XBhT&V#jdszanRnt^XrXFn4 z_>nBl`VQj7HFrin{2H?mG@3B5ugh!(RK8%E^6$Bx`W-9s2bk}ag2dB#Z_;UZSxeA? z_+)M#dc{WF&lr~z^*$HT=aIuq^p5;K+NcD~Fm6_4d+~&X`z%#Ef9_sB`E5x{3PkVn z+zDlJN=GsE>v_3mOdiBjIB2 z=QfyQpX#b9kCyQh3kBZQ=F955GlMe%%0BxF+frnfH*q1`b> z$3HZaIN)$l@S`Qt;WxGZ5aQBl2z*LCF8Wc2;YwL%8zN`a)`lfIt<^i(7!~-~a0jY; z*-1#*zM{h3NgHoq)z4lx(xv5!GM5^Q8(uFh=R@A9I+RCXi%w72MlJc;%xr6w@e8E} zO7{`?#s9R?kFM^UDD>SBpuSTuEBi-pAb>aoreAKZu2bCn=p=L=WpI6V3$3`f$#jaE z{ysZcMPh#s0Rl^pbY?bj_50a#d&R4VK{0sSb=nT)PcPzZj-S-k<3m~Otm%sXlHO## z$(rVFZKo1aLoN!fLVQ${KA(`Z;PYz!RKfc$PB(`9X$}v(vmIV&2iK$>+Yyh8^p`{E zP7Ph#lV<6Rf_p;;vl<6D&db$sj3YruBA^mW|9sX{(zTl(p8A*EE&R1z(==DN zZ)S|8&wE*ZCD8+VxN)3_A#CU3js2Hz#~xf=i~Vc*oM-se4vmg%-8jV&^i*fa0NaFD zHYBQLNB#IfmSyz5p{(K5?=3wyspO{KN4Kyt`me7qh*T4m~wiwP4L5pC2Lk2k;c=oK1~pUdi7G**HkQ|BT&7CHGoV z{-wL!RMNHnTaxUaLLot|yWQN-3#+sBH%q-UL_~CkeTc!1Dq@Ickkcf&n$WoMQ{9O6 zXqShr_l|#OG<#@$jpd5`V!5o+0NYz`?45Z>;Mff*+FCOFAR+&W1@lcSjs`4APsGNl z!~{x}iQ-{WQ)P&z!z`KL43c^gkDQ6`M_RsNp6u{t(uWeknm2H32D6OdX)-lT@^1C& z$!y8}zImw0tjPNb@O^N!k+6qKQ^7de0>tFZj<1YtPu`zRieU-AbJ=SmaCt7kWdx)- z7*W5Vx?6-JWya->cSg@^#7i?jLB+$^cW~C^Q_NHduD4}4PTLmzypQgbrR?|p-Zs+$ z(^o6Ywx2|{g)Q;4{P?d@DpaKJ=4bA^;4eDA7?#m`~Hs` zI|W(4+^JhXLH8LbTM<=nX>v*tx)M=R(2Sowc%Jf&LDjR44-q;LI{*+Ch^^WF=!7e& zoIT*7;zH9pou<3|_#v3QQ`V>0iiL9SB=}&>@!QpLpkwuWR!I5(JxlNua+p8|1wS#awbbk>I%K_T6MF1$VbNVAiz zFP}D@i386`)m~wBT#9#wf{T`7&!`6jSx~myN4?{mO@$`!-;EuvMP=XD+s#?~o*aCXbgIgCt_aP@^ zGnMgE`65IVcugaxArPEP6J`@lf^R^))b$o5lT5$0SOH~u(A zeq%y(b*r7VGZI2!s7599@A<)uXUo-i^522dW^!0}8nTy+({JU<4ap2td@kbV@Qata zwR>92rCLNAo|PIL7xNS@SmZCs-cMLDh!sm0<8<7S6HTQdaBLSGsSS5cJCaI@ANfwO z@cQQqy2Q`PTahX!Vc)p~BKs>$A{m?EcppEJgbl1<-!>1G^NJ-L8Tcp9+C3r1yiD=_ zIn!=I-CJ;oJUY?za-r0T=5i#O4hlIcGMG&9L044;^TR5#s9Rgf|%)Z z1dovq4tA4Vekxj`_-#W|t#Od|6A^CWv!d&aCn8a%{|E=f@LEP|QUIV^Ol7}H_>Z4f zHSh+3q%R}EIJVQ4FQIGJk4n@-bX{f69A=dc9;g4P+I*qhlCQqX_l{=n(WO5(5Vil{ zW@^OuPX}nS@B6Gb|I4rfF8>;#xCT!6dRg4kRvERK1HpNj|Q;-(iJ5ZwYzOD@D=05%#m&ucM~ zim7to0{>DQPsHx|5NwU1LCfLx*RPITJcPE@Pck9?Zqg-rfY->dIRTbHfArQ_-sUYY zxUAlL?^eWuaw=WvY5m-}hz$XwxXnbvs{BDFtnl{^z>bDDAK1c>o!6taz>r~`*4Wp zOz>1aUW!s79X0SO;^*VC<)r|WnKuh~BCot8vSiF%=v!E4>>b_h_Uy?vd;p0XH?E=^ zoJ;dcjgj@D6iDflZs|r-8Q^g$dUqd9^nUy`t?`aTY}D?!94hL0pm{tp?)r1dxG+g0 zJ_6}%8~kaC@MvQA@AYf6qNmna%I|TEncM*bNTZ1atafjC>WlYDVfp8QQ$ah7xda9} zBI9P|R-x6RXv-PJ3cNY!JwfWoN+lmhpxM;{@ zSC87YAY_kdbmMNKEO;$9T1GhR_34z@wZEX&lY*lebV)!C3*d3+91}ZJ!31_td9Khc z5%ohu)KC48o{AeMYe|*P?16qO#~iB>Ge}5~Cr7Ynj_*z}V>VknGh_!}IDL2&4T%|* z3bH%kN=O)PpQJ+us)QN0a3ao~JaYbgZlI%y+hBXckm@v9p zM7-0!Fs_|$9FKwI%J+xDKTq5~M-fa*6dP@lMI@rG4X$N~96Fwa31BT7@D1p^-{b-2 z3u`bTNcb0)<;0G?l`*>=XzrA=7H})4ebt1;qdVd`*upq+t>F`A#8RIf1FR~(qs+_F z;0oRhARnX}2(!%u7C{*tdv%MaI}LvgzgSRtFYhEJ?eDF#r$G6*jjO>pL_hEB4_Wg1 z)u?UCqi#CcqOxE1>~SzVB@)9kun|s?*yVE}TLeE_GBY)yJVx?z)Gbkwai)N$zTv=s zezUg1X@YIC%4aNud0l*S2^eawDK>?_y>Q-o`1s{?g#yn$CtM_O>(KDf>CG_vzUiy> zNf`!`mk?$4ld@@59ANzcuRfi`ikCa$q=*E#VSe&!C;PrIsKP^(;|WphnL2>&7RSG= zSU$u~EQE|qe0tVpI(MA{`T&t6kXfQ#@~}Axu5kN>6u1eg?ENE4^_^@83yVUsFS-TR z!1sdM|D|o(%`myXj*3!`SXqGOp9Wk#$GFV27VbRTc+C~T5*A2zg{X4CdP&rCyWd`@ zJCa`G&=@Y)H^tJ-WeFCN*p0i)q~0;e>~OoiZ90tW`~XFU@6FrC^}EZhnk)v9}-%FyUvpg1Tr759ECcT ziMRwH3m7qp14U)B5{hX#7RCHg=7{~p zy6t`V z&PQtSETH3+t>|~3_8$!Z3gS`P46XCsP1N~7U5grCmD@^lDl0qkemZ_re@qvFLC1Kl z5ieePm`|E=$s2q(9r0|j!I#DG--%p@4qJLv#tUK^)NqQHvFzUXl!&3h<7?1$k}>Bd z_Wf`q0>SPjs7*Yu#Wy`uW86n`4jxiwND?t~hJj|;5i$ican95PE1~D^r>|9xdhfHD zL=j2otpv5OF~XA7R~&!Z)Ahud<>s6vY_?8|9f`dY z;I`H^gt{vNbSfQ(+jTPVVw zH@UKZF%oUSJ7hoRZF^d4_{!mMu#Fvba-J2=&V&$NKKAtlfSmn&NT55rxa@0bN&tU6 zg%ePh>7w^w6}x87-6BB;m2=41Bymg3>pzG?ls?+HRm63-dA+mDZD0^8wr7Xywm6#l zy4Htbz@`UGaM&AXi#?q8AGzXvD0UQjz6GVO8$1S{&VF80B!;okVx-MzV|l#1XSrTb zj`mu6U()lQvR_i_^N1iO3dQq=pWz=XWob55%Dvg zfliMCZ`;nesNJOQW7Vs`>6qs;X(pD~hfV*Cw*VhUUfdJ>+}jWTJE%R>?HrG0u&xWa zz+o@cG;t5BhvFX}vHLyW+T6j-WCPNnC)yJ zONl&dW$KX?VIlZJta0n~_b9YQ{;R@C7^$8KrV!kkSj*;%UybFzQW5d}ue#jzWNn%b zuC~;$k+^@pn-yskpwW`%;qp6u{gRdRinwLq%bNayRem53j+|XhCjx~oK*XE{Oyi{u z;M1uPn!3$2m(Tb7^|CH5jLdLN+BaM7Js8ga_W#(trG>N?!8b5xw=rq;TNzK6-Hgyh`VTa#^+^Z#fvsgk{c{ffo_lLk8$K(3KC!oCtI!t&#K0uMdYAkk z5%7Qgh0y;V`~UBg{u4#^{hxN@{~ESQ;QtGxi~dLI@BzC>iT>9|^zokmG`z(rg;oCl zKKkGl#>nx5iwlJ#>izwIAem%23M>_2q`GE-b6QHvD6GHkn5-;QFAsTV zb^W2Y6XJESPkTNagjJ+#zBi8){v4B+M~|}#BKafXSpHx$t?BeB<950_Kn(p+vtu1Np;g1(IabP#ccSG zheGjzcHHMDSKl`LI+G5Qf!;jm=-a3c%XHzB?>Hlunk90kcg^^NlOt^X_lClzh}+vL zQx!VctZZ!4EM!fdehu~rVKcD|VYyAdJR@1_y`fszGUj#={GQ=@JznRCqHetDtV3qE7IzAQUF zr6^S+3T&gZ+_js8hkQAa1cb{7AJ)5Jp-{=W`v{Y(FnKJpY}r&wnY82Kdq7eypGxHb z5Fp2u>9l22|%QQQVt>E~;c&V$PR`JLiYr5{=t$3DqBhgc^OldTu24 z6v)7dVuydPWPgB2^EE07QA}PHk&5>lvfB1`B{0_UOs*gJ^q_k7kf(VN7=`W)!_wYzQ* zLCIm$nLIPpB>Dx z9xRFU=J#0yKX@*d0X<$QLOBQDg|DUJvsuxC9tUfVyNSaGHxSMW5clp4!h;#=m@kKO zstr$Q3Ev;||FO&UCJDSGwnnxDJp3O13{Z&ZjqcCc3Q=EGk`a*(zuC)>q6vIs}&b^qd$sNEGIZ;)Afg^3CeiHdyBG)wnu$!~qLj_*-wpBSeOf z8T;6S<@d#S$J&5rO=^z@zb|0GWs>mz|tE`_e+Kv|60c_ zLi$%LB3BX`KOF~p(Kc-}PfPHZQ~PM)%sj*h^T~l29pvtPf`B1T4{S?Da15j)E5c>< zzPA)f(mNI8H0U?b1J-4{u5rEAS6gb2!^LwDUD$*3?MWv@iZ9TuxyqQV_U^b?Tl}LL_|!z__Qw{XLsDHy3VIRJXTd*Y$EW!xw-EWl1v}s0 zUvHGf?ahhs-&CGzJi)sAZ^{{_PIxlD2Rc#(G=8NG&%J=uhfDJt22Vni^PdB~DQ+5e zw3b5ypq$Bp6?q-Ue}Ccglvz+EEEty~8u(7)7D%u9x)ycYa5l!WBarA9zts^Bv-ph= z?Njlk7@EbQsF0=CoMu#28_#}bKP*7Sxmk7M!)w;T-U{h2uYMK&%>K5uR;)eRc+-VH zmeYwy;C3peTtKB_;-AQuKX$*_nlw1g!tm|+*Z9EwC|AJ<1+L7Npe}rQwetR~ax%8gro+g_?&vvyZFTJFSo9vG!NuqPkxb{xn+l zRAOB-yB%qtj+Tpfd;U=TOq9Dqmda+263;haxZ1;1W30#`x|6WUFtVy2b&GIdJROta z@VyF~g$R9fIH@Yn9fgyagOrAJTbzIYM`g)1w((iA0JRP0cNX3YaRG+)8=m#my^!ZB zlBk9BJ37m*_cl6HxjT(m$9wLQBJ*)b z4}Q-nQG6(Q0~Dz6M)Zm>gPaTl6Tzr`t0-ILRr{nl#U;Q_-Kj$q~xdT4E0lcEi1b%`B8>O1rTbsaoi{pMcQ^^F>_o(k=fYg6j)$(6 zBXS{ApBX|lc2*%N#u^F~J@E;Nmql2Ejr0Te2pX5%s)%By-@ZtYVOD2Un|FWFB;)IH za-iwZYeL3Mj&`tTD0!vEzIK1x86XDMWXp8S?n582@YY`BDYRcPCK8fJ{oCMyX8*kj zYj1pAdcW~qDz4oMW(1s%MpWqL&W>Z!t+BB=h?L=2+Vt5Ejpbsxfo|GB7~$8X_h%l* z9TuQz+cwoxVOFh>CMayr07~51*M&8Udi|BGRF0Ho~qdZnf&EYG`CAhX?>cL5{965guKWtaJNN$Az-pl_g)(KjHg!^XwiG zDNMtn>TVx4$8;17Ly--U{qSolL*JgrlXx6q`x3H2TG_FCOdw|E*s<+J9_4vRwMRJ} zE)}ADxEThJ$P8(NlOrR0_Vvi7g1PZY8H+X)hwCgnkK68GaygCv-kW{h<{lHLpE|A6 zVlv~U9H}38qyVX4a^aWa^vsP&o{^NxJ$F3EOqvl1z9r$#a^;{FQNX%mNQ4#ubC>8| zTB67f|Mw1SgcB8PJO=^%l?T zLX~Y@y+(F)CLn*s5}lddPMzkd&>SEsc{Ie-0u^N0cO7=~mc4*Z_j1&kxc|io{zRCl z2mIK91HRe!+^fuL>;wutUI04})kc&?%x=nU5}(ECa`1m{Wd+YRr(N!n#EDOz6NY>Q z@oI~H!aJgm4IXX5gC7MLF>|JqdH{s$1x!Ft$uD?efF5D#WRQlEb`ws2G4B;F%f3GE z_87j&yOhRH->MC*a0r_H2XR%TUN3?Mb4n#)?uE zziCzRW!O3U(=j~eUO`D;qV(f>C8$GeL%>te1OKH=ER(GA(jK&cmXGi01o-;gsw$a+ z=^%zONgYpM{wU`PWZOEc~1 zlLH5SImWr!H4_-><%`^Ili-~_yxj{L5o2I~*Owwdl0BA&7twyJDB{D$qPq`U&s<7t z(RC$4ik-ZgzbCqDm<`bLwww|pFimZVs#5*BL2xl;d{q2&#?Bkq+XADySpW4=x3jD& z;V}O1BEMo;cXS(UiK%kP1G%TQ3(|&F;lTjF*cYh?a4HImYq_GMvwNa|2UGVTAb7K; zT_lum0+5Kr(Yx=*Z(&86dw+Zl7n*+Yg2nh@&#ye#*v1iEUjt>Oy+QshR4z}G1v?j` z9W=3gfDUw1|N4mNDSfvm-tb|R7cyIi#0CjJD%z{yF!@X{rLpc1?lE89VvT?|#E7E| zm*t+rp99m00I#X!+ubQ^Pz5vs1!Q`6If}zQd5u7RztlgbRpkX-jY zHq3naf}@1iIDHc7vM|3|dfs(*9e5GIZU`K8D*5f5ue1D02Yo9x?lk7gxuB7?#y2w*C1Qdk7hh=bo_Lz zv*hgfiDt}y^R-0bh=uj+a~fCUj%i?DEnHb z8pCdUEKB@am2dk}eKZ9EIBLgw=P=zv@Q%s=;Ed>+{&<0y;D;-(Hshuap5rkI6mN=W zIk;~}PwUDvLNpBFy5Rg$3pjh$zAUNdETntTRJ9+kGqBw}&1B8S!vVYg(V&fUW|<~?o9_f_dTb_ zXyr+WlRNdpF*-3I7)Z@WU%NY782!CB6tpVlM2FW?C%sPF5jmo^exxZ0Zw zf(W(!ar1=EgE_LrUv)aX z-3Bz$*zww6v^x#tO_EVD% z`$(7~+x=UMGNq&8vah{$RtMf6%FE+w?CcDK!s5|Dg}hbh_pGFRImtHbx4hZ2hLv79 z)znm!rfaW|>&@p~2)?90r+sS)fk)wb{tZkLK;0tyhJU(+yXH(lDo0?e_ZRES8fvoE z{WBKMbXx`njrEP{&*n^VKsiW>B>Su43-9EXxn^U>P$7Hje&Ym*4-^a_k81J2KJzy1 z5Zj(1%h{d|Z|j#>08bQK$8WBpS21e++aE!fbzpl-ipIf?x0tbOo1aBsfoB;{H16R2DCQ$bFfo-538(K%WEp7a$Q0&ixppI!}UJPC2$!6%q(y6MHsN1%jhlM0I6LX zvY!=C%XzmmIoI>$|HdCNie)|%Co1}jRqJ!>Yn0Xd2p0FZAX%9UhGs}jmd@64<6Z&n zam#-czJg{5@Nq!?7AXJ$E9MXz_7vwD4Fe1J;Adlg4%&n785IvjEoDxgU@;)T#Qq~M z)AE3@l(&b_#630wZLjE-Tc#11z;a&)x#TfE{dgl4`xns`m|rg;GG=`+iLX+;Dgz8* z^amw`3EKkpx?>mtq-QvgH`EmjJ+BFr#E}I5yvYc>R{y8@xr|5EE5t$5BJTaZ`Zs%WKv?x+ET=|iq859T@DO`B+`O<@(d0lePZ;v`10D@-~HF7tL%J%3A1 zArNTnsYz|TQ8>@g~?Cy+3q*$DOua69v9<0LoQji%%gm3A0$7+dSqt z$fwT^-%`RzY=6(?BqX{+4D_IfCP0$CcJOby*llNMS)8%nw#SH?^U^3Wt7^}R z{8T&J-NDMP?bcNMw=aR8{!w_y6_+kDcEIjItXyjtkKB1rL zfs5|D2YrJH+1pmL%obroK9_?V!MR<;W-&9jz5y>^ej*YK9>+sRei?poUuJM79=&ZE zJj}(|xN->=FPMvRjSt-HqQ7#WiHqd?hn~j36JOeUVtg!6T+( z&aylI#+Ps&GmyjER^t1G%dw^0hsEzI)C47LT%UcCZpCBcm9_+5OdgXAbKUXZ+@+s^_6vZzT1Ja^Uz0axBNND23je7k(bX9zUI}Jh?xZ~MRpM~>dZ({f1 z?6V(^Ek9-W=F41UBn4yb@}>A;-aIT>xgOq~J+W)YX0F>JEjIqo70-S26k3%liZOdm zEk;~915ODEbnM?qilqxMZ{B>YT$_(H zKVZ)$$L+^x%Q9lOwTq?HXwr;UNF54>=b+ zxS`vHBhhqxA$C--qu~&??eW6okvz3mVCTL8Ni#5WYP#YB^cy`EI9~cQ>m(<2ff5ya z7Gk3%3Te$dv1Gw~{IFm#mK|(C3@Wf>`{``wt%JG628+3^LURBHa2xvImMNIMOJw8} zV7I`C&iLR>XBz?%hK@lRH-x3D3Z%R9#Sh?`-d-p^vT`EE7+6*kz^g$KY=1 zIQ0B9yt67thIgX!$ZBja_eK}p0W4iOAM+M0!m{1<21~_ ziVs8A88=KHjK*b)q>i=t+-~CW>A|<3VksyH=#NW>Yp`yqW3$oh57)yGmyV*fD=?qi z?t-O1!W0?~bKZJnS91U@_tysSbSiESP!=r_3l4lRh zdVIXY&FD0C3N)qFDEotk0UWV8+DT&10WjEq#N-D*Mc$t zrx%{OsxPe8(;PXOKQ+J;FMn|N36+eboS6# zgz=a><3<#6?tc3EI}|u81#yLO(?HvH3!jStIxP=6ZTeh0r?}bb=e8#iBu zsaIWtYp$AxORjki*3cNl1u7avqGyO`(~?etC^uvELF9Ai(JAqlwD8QBch4}mxJTo{ z3Da=Zj2U=mMJ4otd?*m}1vhQ`XZ73zXiitWEQ@9yZo7@W4%c6IBW}6%Hr#XnEl5*{ zF3JCXxsyKueuqut4gWU!b=HOg6c#i6OFd~zn|C1Gx#AV%IR*iq06}kPuWS_>9|3ol zCYZRtC8HqlrFi4sYcOrbHMsh!>6mfjGpP0Lga}1vwq(_F@YA@U$9b1y#*C}*z?%!$ z*W-i^88JcCdAKOugae))+|#qjemP&Y`1+Os(0HZb!b#IG{XTZOeflbQ22l zC!m1`Pko)+TIy?f|ml@rHf;*@EaceENc+rGxa z1CCB0a_sXsw&F!>e(rLFac4Z_uJ2LtEB(X1&u>GtPJ=$9C*u06r{boUmqDxN#&SX^ zc4%DM>l%9c2^naAyFN%X;^6UoP{*#V1Jntaus=T^_D|ADE z?ewTzxY24n+X|H@|68qDom(>h_aYl!pEq>vdCYOHqbU-BBR znK~8MTyqVkP8^5#HoBohYNX67zm@;-Mktr@37C&zz1bb%X|4KhzlF;6uONWa+I7_B zxSHGcJ+IB@e7c=xoe;Tl=Q`NhiD|eExO;HeW6KA7#!IC;SDSY5A?ri3a*_# z1CM^OpDVJU+YS)-VeXMXFEQd&`uqCAqA}xGd7F;YWaL4Fu=JH%F?H%yEW4{P@zUv7 zPZ3CoY_l)oWCWjsEk~B2!=YEvJJJO){cpkcU#qBp0KG20iYLX3v8~aDH9u}b(q$Jo z>P_z}(aCZQ%QjY_dg~nQiWr1*GulkO#aN(kU!OfZnB==?{y-h)YS$pP>A&B-py*^naN&a>Gk$8N4KE!~lg7D08 z$Mn!{Y2Y?jk2mkT9#dyrjcaC1$CUp(hYGDH5(3*yV1ETwhj=0s9F4e>Ha7VA8Mxoy zfkIi29rfJRwXHPV5fzyTNb`y|)YQAdbnq+OJb5y%=C(Uy%6Q!T-T}mRN)bgX1!}js zAT&(TZ&hGD^evK@2PE~skjL{Gxaq0SxYrV!wUhwuO5m4qaO)97#l>^)(iYtF8~jnT z^Qd%jSHoT|(6(upuH1*|xi3)o@+m>z<2Gb(`WTg;-;5OQzq2O4gZ$I5q*Ij5ZC{hg zld|^k4|7LzonvyGyMGUm9s~bhs>%&VaNCf0=%ceRamEdpG4*P!Hfkl0lHh#*OoB%7 zRx`eO=2lFb&i%#JJeFN~0}gscAt6|lPZO$5jnK!pE++`s9ruJPqz#1i-SQe3X=yp{%SFrTn+1^f;a$7bn9?*xHUV?IGUd?U#&5u0ngVe?Aqf z-0}{te0~+~S(c5ml2Q~G7h&E5UC?N1A6BHZE$nRx`)Pq-6)PLR0Ik*oqWW3d%m7?H zJ>hzC1>rQ=+9bry5Ft7LrbA_lkAkv19xOeO-XTgl#c*P^x9{kVAIO2(9*j`#Jv5%& zBYSqmlHx*^d#OY2CFL;I?!leI_#L&|FzNDpk$(3=)RdQ^q_`L*OCE>8MRdZgIJs=? zT;9Ki{Dm)J!t0yy=8j4(hY~J_VtjZ*2iO{as~q_KZJY*gFEmpPYTAiad-|)nD8XBw zE`@);Nf?ski-4dI1o`=)!`Q13XU)bJbAD990SUuy!@hD8DtCQ>!!KTpt6y0!{o5B= zKBi216;Zd(MYWJA*R`^B_rq4xzQ+^0^4Yti{jPTj1Ck?|(eB)$ ztTZ~&g6w15uf}zhosvVIC$&j-kZ7xlQ$U6ggNEW3XqQg;)6Qky-cL|n$1{2u>{^U@ zXeEk@N>Ex>#%;S4P&QcufQJ;_s{rgru8)F9H+nkSJxQ77AHogFM2+4+{t!`SI>W89nDQORXqQdET8 z_b%kwyjg@g0lRZW<^;HHTbmKokICrLr?BKdU2ya4gN|FCUQC>|c;Lrk6mp+crpT_k zwg{ixf3718-xqRrYn>-b7?MZe>#ap-EZ>35yw}lx%1g?fQ%6MB7z_zMgijZ4#g?sw zIB#e-k??}P5&Hu^$>u*7)7c1Yrv9hG-ME_L6axgZQ z;r;>b2kSouEzdi+yj&ccflt6a8aKbQ5;dk$ynnd{H=Q#In}2<%X#-KmTiOlss4m3e zY9J(z+aTY2=#m>yIpjr@RB_pr6r-qWF0_?(ZRSf}xa9FUsBEmqPp_Yg`_Jiz&zS2P z40`U*lCY?d``ikB?k_$7A%D)MpM*ghl0r4^uvp-7hOT%_O5M7MQ& znjlKY4s!w$L;1HBUb+TEoI4Xm1;w)MmWi}fR^j-MAES$yn6@~|)7GwD7vSa#FGu6W zZ=sa)E!t!0fmsOC*-otJYPbx9y$aWp>TO#jXU3v1H-`yw8;}Vll@*8{BEBhzo=4#1 ze(X;WH%3^m$yk?L3uE>Yw0vQuYLUro_XF0XN;(N+<*luJ{Uj z+kV>k4TuWw9@-II(}5QrX|;)GEkA$_2SvwXh6%pt)u>Ld3m3ctjs*Q) zKfL7j{>Z%O0hF9PUi~UGTql3IHM6XLsk!?U$tI6^|i< zV)5hMceOF{T!k0ze+90Im*MDOgEhVnSvXmY5DIN?a4 z5#l3gMv7AhrU9=%@;-CE)|HrFtY>ZV_(~B~lbyeSFkCS)3iDrk0GrzAd(`CY z!kTT$s*L>i}VgX`0^d>Iq{|0h|McE%1Lp%)q>_G)NwlqOmnI=)#LTIzGR}W zZC_9S6n-J6ZM_^z5%XX@5g7?cfuQ& zjK)u*-(x~DDHeF+-pAY7-Ok;$5?hWsRt(+zLgB_uXV>9YI&kodXYk5`-42IeS6ntK z6ip4vtnk=Z$mBFWzvdLwvHX%TqIWVrd-QrNG-ctu?t;WQF!+kGIPl#Qc;@R8jJWiI z_M}hXXW11Vza#_4zisaXcN&epnoYR*gdJRg25eZg3PsI-h>4yAFGMGCJ1IQUIw`hn z#7)=EQYM7~xafi*Tw=92sagLrTy*fk7F;xGCY)bs*L?gQjyCz>rVGW&c0H<@^v1_0 za?AoY{P@7rurYym6ZO7Y=0=PttYGq<4MO%vhx9^lI9vf#mq*W!?(OJdyp1>WDp zWAWvKrTe0(gHgQre$3j_TED0v4=a~!b`Vgm+&?SLmL^o234u|aPvrZ%S3g3jrA6>F z3D1CVPD2&;7q-bv`-Xzd^RMKJ{T`m3cSO1c4u1PGKHjInEff1lx2!QDc$-9=RmqbC%YO&eaJ7*8P^H%dv0lN-?@yN{-wiXQ(@j}9b+Om#Tg;FEJb z$gkHsCpI_LZTf)vgo^jLQ*2_mkTs2aLu~FSqsK3I>^6)^3?Wy~FiMTok;|y39S@S7 z?uiCvPM^oWT5(UB*jU%P0pcY*<_} zdAWe}aU*F>8{PCbrX*6xpouglC4d6LqKT_AxyO&AHAStP1P(2Hl+rzfyu2tWC61VW zQtbJ6(mtslZ>43=O_OnWhQ*Per=C(%g-i#KbJOk0$Ga0Urjpp}?Zl6d4I)HMKT)>r zP`8)vzQ9oqQ8A(9;T1^<{ve;pt(zBT1b~J;{G;L$Xr`-ULH!?Dskn(YzId6mD&XoD zNx{C}G~n(x=#nVVjE~!F-uQ#~?gq}2;j$AO?AoGi?Q=4%Pwl9ugP-0dcNY8bXelfb zgp9nIHYg8me|Zdt8*}0vbMF(DB|w2O(d6anOC37JkW0i6+NJC}Sa~bAiLkrdZF<=8 zNHih(W@@#;@msLar#Fjs2XYIFp)hap5pMu(Rd!3Ses+@Fw4w2fpqOB>Tius#e7AMe zOR3yM7I9)znZQr?^yM@;H!2F$($jssNZa=nE&+zUhAxW$jeMnb2frnM4#jaiuRC|y zF>)8&$?tZj<<9orQb-SvbnK}1iB6-05Lbe0Dn0(SW21&;`+rFb4SnCX5(!lApvmc8 z^0}DASXtiPFPSMfqiuPi7xyWbQ?YDEEwuXit7JHj;1~)p=qXuRD99q`HmLPa^(Vwl z<{bS27}rn~r|0Q)tu>--)dT##uC%Vr?$5;!bm4Y;ky2ib^x;(ws}Vub@v_W2C3=!3 z_BwLf7Y@ed>}TMa6d5k4ytI=LDnDmf)d#uNTHvcyAc(ve_;qAcEX8GiUJ#+=Q`_g`HBAe zyBWdcHSj?tOcgzl0E+)l>o&S$i(jMeVi!4d6q}MNEx>qpxs{Inp^Ywi#M3&O{F$<& znQ`#j88RR4-T~D2;upAHH`C4O9?Wy}6dM)He+_ir)2$ooehc{vA0)rfEV}9Pp5(3f zp)h};1K>py-rJ;v;5PlqWJkXn7)kzmZ%XN&PH>5)*}39wCA~CVSTt~>*m%*eYUtAY zKRMASl>PKB^$8Ps*K++&CLdwNAYlR>Y`c^9H;}jTZR#g>^23jkl0)VDyI(i6&1Tml zG(hV@=TEwjV!S;mBHWL|fCk<%v)v}=_op~EV!8&#QDTI!yrZY7Pp_2ikQ$HDIpLtu zvkuCzP8{XFQj8@oqJQ@Bq@=V&`P?FBWv~{}(^m*TkU<|!4=)oN#y3z5yYJrEN)#5q zGMR*GD*WRpIhf_EjiQ@BZk2ES`iJ-(X|$$Ir&+${VfO1xtE<|M7FF!3fHx6{wrGe0woEHA>8-I$8g<(EA^cAfpS;C zLf<_*Ue*r;#8Hf>=V3!>UXGn?`73CwDUBUv+ENYB-%b)xW90WQ$F1%((>a<9xVH4avz7aoNyk0y+a1jTTf0Rc=e&( z%GmLnXxKo^{o7ex2;}^c&Cz(wrlspXLUss21NrC2y zqgcQ5C>kspge7%C=MGU0MQKYVwr<*vVxtXFX+4qdSA%Uu?ii5CRFjdrc@?VtGtn)j zRgW%r>ta;-_eA$3rZ|=@=n>Ehsc+`vv#G6i9)BGyx1ZLc$ZVCmtO9mh3p{*d(RW}b z3`&B_4sXM@BPH+%OUJMtiP*bg74#W{km$?P-iXOXaaim zNIRieE)CI=I!S4_Qdes z&P`1xp{W8J)@?&&lLqmfdLz!Y7<=pd(Kp?(+J0oiax_KuMCaI6rOhLoSD-Ph2Qu6E z73^J)y~nHJ72OE~GvkoM+FjyoAc1Q zPnNV%S$AwJc9sWWV4wICpJPnD&bgPFs+S z@}pa^`)C=OHJ)7Gv(P2Jjs3~mT&&$(hMpsPpU{Cb=I+F{QZEeYldQBQI|_EKM-CD( zC^LfHHXPiv3N0~x&?!P`nax$$v}PY-`wc|6Vq3GhCI{=*6(MWP0A=M!pb-bRZRL7o zgp1A#sonY_QPDLdQxVo|Jcdp~2O_{J3@5m*Y}>jM#kE#=1;wCeuTJ1e9U2OEVr#Jn z`nTy*4sZJr*~Rr-Pt(x1V*s{q%0uShZc;s>zF-&2))PZ}rT+fsFS`+&R_#P&&whyZ zag=6D-EpklQHAaUyTMzj=rzZ;V{?HAh7WL-xe2@1ZA3v;BLY);p=VSh*6(jdpWdl5 zjU|UR;!txmhIDqQ7CB(&db=7m!QId;LD`g2eFTd(=ODHBa3uQkn;Xlpefu61)iy)t z6@+emdm*SzI~R5_SFhO2{iX+c4jYbe&Tw;OHr8!9hz9aR$KHdGzzkW!REVE89YJjO z!H7Q$6;Xq*0K<&FWiI8+`kU(m3Bhr^@aPe zDObxf>mcixuseLv9ErYNVmXWrd0W<^G^iVTC5X?k4m6iL`*S<|qmt1zEA=G3&0j+^ z_WZO4y7YcX4RLM&wBgvc)i_XWMr3+lWF>K%u+?DKhOH>5Z9#BiSM*l;q2EJubuKn% zTX|ed#$g^Gk5pL^p4uJVliS-ZE!w{cdvYt_>KBgz{gbh8)i%WT?T295O_{NO^F|yi zYlK%s3Wj!X-)FYev8m11kD%E8)g2T^Y!gd}!B&y46c_5Toh zX}aT*O$E3yGzUNJDS|#MmD^P6NngeY1^c&P|M3dgTy%&?$wb#gC6CmEy_+^blh6kp zL!B~qAb@TQ-)}Qm;BaZ9I9wc+V1DpdzLowEF+<_Wf0D2DUi!fb1Hm}}Ba6-u4@)N28x-wU2)9aNS#Fjm|sJ8;a z37K5CL_gXd`Fl6wKpxB1-3J+6dm%2^AxCq?F>Ky(h}*CM9eNFbciCo?89Jg-HgS=r9ET0r{T_ z{#v4|fWZ$4pMh*vw7?Z^CpNaJP@zJF3Kb5tG&jS=-CbQNQ}I6mmFTKap+bcU6)IGy z_(wvWkf~6iLWK$yDpaWWM?xjKDpaUYp+bcU6)OIbP>HSz6)IGyP@zJFihm%0{{s)< V-p*f;v)ljx002ovPDHLkV1npIqKW_j diff --git a/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/square-textwrapping.PNG b/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/square-textwrapping.PNG deleted file mode 100644 index 2339e6cdf413693741aad3e919e372ecf13ca410..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43509 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 diff --git a/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/topandbottom-textwrapping.PNG b/ej2-javascript/document-editor/images/Text-Wrapping-Style_images/topandbottom-textwrapping.PNG deleted file mode 100644 index f6201f314408c7728d3757ede1cac5fa4dd91baf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79149 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 diff --git a/ej2-javascript/document-editor/images/azure_documenteditor.png b/ej2-javascript/document-editor/images/azure_documenteditor.png deleted file mode 100644 index 13b593416554a3b48b522e82dda7c2d6ff4545d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53251 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 diff --git a/ej2-javascript/document-editor/images/azure_java_advancedtools.png b/ej2-javascript/document-editor/images/azure_java_advancedtools.png deleted file mode 100644 index df6a5463953b9f6b90d9d30bc4e4d55bad60f640..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30076 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 H`u_h1R;%^@ diff --git a/ej2-javascript/document-editor/images/azure_java_debugconsole.png b/ej2-javascript/document-editor/images/azure_java_debugconsole.png deleted file mode 100644 index 049bf3b9de7a9ff79bfaa90cf22647b46fb1835b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41492 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 C;!0Zp diff --git a/ej2-javascript/document-editor/images/azure_publish.png b/ej2-javascript/document-editor/images/azure_publish.png deleted file mode 100644 index b5a1eaed98fcb88bc3e0ecad0a5a578a6d513612..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22326 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

    2VBw>=WWjl-ObQ&}IJ-d-LC$7ZCi zSid6XNnN@WYCW$=#IWy4V+X3csi0pf!gm-GUBvRkfWn0D0vvB^_;_gY;{9^eVL_3B z9!b_e35)L+a{@|+$mI)<`R3}UZ~8T4cU@5H&(6+jmOfar{g2?~ZDErc)c$rSI~b_fJ}r;qHP>C`Ql@7&-xe-|Jc(STC6E9SP5Xz0GbplCbW%G8%4ka7qR zBA|mH-#gVv^S@YsJX)*+(8@hr8b1AyAKCu;_y;pBKFiyJitIpl|KF}D$Qak_`r`ON z3A{j)UN`G6`8Hc7S~Xo{{^oL5+1FPp|7~VbEwB;rJ11P)A& zyqw;3+?$hY*aG;^ftHx#+@~~Pos#kY#=oVkdeIu>-3Eu*Rx3;iJrU8Cs1?m>tm3Kb z$B&#J`%}LqCqw7cK9n$H?$^xv;^@?I;?nxRvjI9YXWPBlt}DKku8Dv@i8QtSF8g%20gn*W z14bxP&g+4|aoN5Huf|vUzXanycsTc$W3wgS=Xis|xDV`Kd$|hoPxyK7a-~b3#{!&# z(<$ga_as7*m?Q^m)a+SV64xcI-dAjl^skb>Sj+9{>q~%+EWCd_ZJF(tpYQ8&exN9I z(f$KAxZ(WU>&kESm96m^(ZTI?Xh~uO{4VI9ME8&IBeQIH@g1)L$KcoFY+rD>FwMo$ zy7^|+$wzG^!Yn8e!t0VT%X`tr5Zzw?o3Cy@^P|fsO_H1xsak+ptW~Sb!=VxLBa+R| z!$4`~!wcyc0f0PhK9iDr)h{WdG2UefQcL@LDkSArWDu)|vBZ~jyfNB9osMAFj(yhq zr&kN#B4!z6{j#}C1Q8Dm(VaPXcLVS%S(#6c2SjIk%GQD09V4LLwz&*RhjYA1?(uSn zRD*VG*M+iHtC~M|7^hKnc+izcy!vM@EZ;L1sK{Ctgs6}t%<6m@)4w2P_^dxm+Cqh| z@)L?DSCCesn;e>FH6OoscQl5!Hho zgU0S?hGOp1R@rlEnwFo0y8@TQRapLCJAAwISLsr2+TZk(X~BGa^f7DiU5P~9iPqwP#~lHbtKmJc=$ClvWg zNe0o;QLxq2HHjMcK+-oZ#|AU?v3PHk>(`$idons93VZ$(Xn~eobWLcrKhAy~U4}tt*|J zI`>)JuyMb+@j3Hv{G1+)xMAN)s_8f#G7@UK@!e<{*@7OQWG4t@Pft5dgHU@Gl0+YX zn=rS_Dnc>OWB+7cDU4iuz$GX zma(2gjCIWTkJYp?n)EPYiRqcp%U$P8PWMrNJ+fDUUbV-%7=GO!vQ)0gc4Iil!s7QT z?lVa+%YEYwshLZfgyg6NXi4|(Man1Y^2z>(!<5}s=699Diz8veLfh3xMlETKHS#w^ z1ddyrj)fT_a2R7A_@&UFs24NR$;7UGtYcF4y{%UnVUv0!8l|7-2Fir==e$~%o4 zv)j>FE1_9OKOFIBy@oE*cAD6`xgzUW^33YoM<$qOw-F>^r7F;ESh;{ zc0zGl!%r1RkP!D9d{ot#^fCuEGbt>KTY2(CUvvCbqa2Unl~hSFs!|CrqSvHLBWc4LZEh>=Z-O9PF(ZaM@S3 zm1B2u*fm&PzKC|3j|oQlE(?;|(sR0M_m!hgm5zv9MQ++C>{#MB(+cFL{bba9&$nb) zbS}rOZkg=@=-$0Ew@^W&Y9_>dZmQE7X5>L1ua^0Wl!dJ==)6jv2pi;W1aiwz+tdj5 z)t%|$HG&D)ElhvjL>XUNAO%OdE~AE~07Gpf(3}{zrhKdRZQD=cPl7FkG^jz9HmPgh z%D8mzz?naYfcnz>sYD<@)2FSO^*E}`Il%drK)X>hM zQwJy^Bl28Odt$@4Cc{lsH4tv9^5{!k99=YmyNKtRLGfSo!(zwOs1o!$QLh`!8!fx~ zw>qxjKD%bZ6syi!bw!M$lo21$P+PwMr<m$r^&@xRObvdC|n zIyQNY_Uwy7a>Tc&&WrE4f}7MieY??zSldU9{g&;v1!qv5k+30lr1C|cI%byzSmJu> zczQ0izx*?0zaE$b=jR~*=KdI1MjVAxo7DrS1<3iX*VX`FhsL*VumB`zit;viRq0gS zWhqLLN47fw*L*a?XQ7R}4muOApGh#E{nJ?eP2l5Q8-C+*nL22zx6AzNuZEzvkia!y z&29I&16eM#$z3pgz-qF#w3#xe{z%irLS=$Q{Bc}j;)kYzJgbF4eXN46EyadR1Afge z{kLRt5FQI)Of34$I7QSvWG@` zlpwsIhqT>*R~vABTpr+7{}%9CmVPIo8JjhGfMg*>5V=7Unad%%$hp8pK|_z5%*bEY zT@CBc^{SK&Ok`Vvh&H6|%F$x)Cb+l^t_0H{PLuqvkFi32jdik~jpl>%6kg>U9WI|< zb*$vv^-_UQCDL^Z!#xi^d)j_`OwcMB8@L%YY<;fd={fD>tL>{@x<7C@Bpb`F9Mi)( z*xUR5jh}f|Dxwq0QxRjW0@36Yeu6NlshSh`#{O?5S1gcn`;WH~D|=IrTrXmZvhJ)c zkDadMBWIZ*U#!b+tNCmLEA`0fy8whMyDtDSg!h&!K_{pv-k*eHE@3-Ov+RDyPXPDY zeveYi+d6@8p}t;hG9jLqx*;&6ZTzRD#XqC9m?KXbkP2VEeXH#<*eSmFXv)d+F=txf zRm17Gk;rdi%`V{D3s36=WPM}xdeo3dA+U6MbGNLishE2=MFd^HiO3|dJKs!BJ&;(0 z(RBmG+>>Y#$QGg#p{9lg|3ZJduCII~2&N0v*_#gsC9TG*^7I!}LiTaK7m2fiHs8?5 zO)0cvHxbvNSb9ozx9&}Zji8R)R&jG1CjDdm!V|bb4JTZE0Yi9+v;?(<9J&Chz`AQq&kyB2$>Z zHHEj&;LsfS59~Q05Z4wV!~;YM4TFIyc#up|H1jsNUX~_Fm%sr8ESy5u3zkg*bU)H; z_%1FFpaE_~0B!{6P6_fUFhCI*fYo~Sj^7wFIE?5!fdnf7;Pu7M-`USe^5*ilsQB-~ z+0q+PANHIlzXbE=z(Jm`**Ht4BBdoE24ShH9Xzses!qDC?9}%;h1DP*fPGla+WwC6 zlBC&@C{j{!TBz1k-Yl4 zv7Usl8ek2qPu4-}`Usm3IzMMxq~C;k@PGDx1YTc;*y(}88m4C(GfRP`xs}dFB0HOA zmnqQ%oH;Mr0jnE63Dd3}F%AgKiGF5RI;6oB2z1CnNDFF5X z$@1NLpl_oi&%@fSND=h}i{e^RrW);rybyMk56}-(_!cWb?qdMYT=2E#Um%2tmG_t- z*BW^H-;_qum?-D_uF|IK=qV;3fDB9|_K)UesY}5| zxsdo(l|(e#8=<@VBN2XQoU3l*MI7TynV|!NEiF}-5+qC?Fp6fQ_40a!`hSyIkq&AK zS`5+W&VN#1BN-and)3JJDD#M+aK4^eIQee0QM{Sa<)WOgjMZVkS#N7X~=o}py> zzuGttucp$ijXNqTASEJII)XzdgCJdyrUD`mI!q)~L+>C>siA{NZwgYR8tH^Gbfimf z0#X7J0ultN;l42U-gVda%^z^qI_s3Z_xtSU_Z%HgvdmoE{zd`yKVmfDugf1Fe-Q&sl(EJdM9U32`A`Dga~7F)0B zb`DZQHgb5#oH)1_6)MF5@>uXV`t9Dt$%o|fnaGu`=5j1E#nEp0_UxJ*vJ4ANRj)3P zZ9KrH8#H)9G${?yg`Y8R0|7n^`01*kDLWOw&a7-L zNV%_f@0LUbp$bvT)RAOU#?)bX0j7W?(pq^2>=BUmoJga~=(SIKx^oNIGanfrIXLpX zxdZ;RwZlSZGn2YOQA+j23?=U%3B>LrF=c>4gn-}C3s+jx!`yyu00X)ITy-A%SO-4oDkjLvP8v)v*8=FAjyLd@}Gk(uuL%a@Tm4RZA8)n2fJbz@W=yWh)&&i zTIZlpiWUBIA4ZCa)Q_*;*G=G2PkNhM+i)>U6^j)}4T@yxUZVUdYeifx-Na2vVO;iC zG=-X)sx~0=tK_Pu&rp%sQmz~%V7Y}fCY_nkc$~SX9eI1$z4m>)wNvSGnvt<$_|vqD zee-BqA0^`{R^>Y6SNCL`oQy0gEnn^^CY2%BN!{RiCY+V6sM-kt9xKw?@z1n(lwf#~ zsLy#N3Z+oOfK@G8LAG7_ZpYrFcp^DRr`H}<-1Hs{*>-PIACKu@dWD%zQ<3U<)lZgO}+18%MFu&DQ2M$s9=M;8& zf=ZNi!tDO)rW1M#X0dP$OYvpAxrB0kud!z#rFhW1r1h(BrV=dAfH6VUJ1D)F7vs7* zzyXCqJiofrt3)wysA@(UXXu~G$0!kEEKyT;XL(Ud@)TX6O}#MsA9}ZYBMiyW9K0ff zdZumsUF-o7Xj?<_5!ixm6(zY?PGO`oP~ISI=gMCUq+)LwdNNgxfACl6paT0;-4!td8uC_qX?#6Er_QYq?lyH+2Ji?}{&8)R)8+-v^WU znpwfcsq=bmZr3pKNEg8TTws#_>yN*YN5JeWr|@(cVj81y%l<{{w6tq)1eR&1JY4#5 zJ_oHoyp@D6kZCP5W8dK+@seZch&wraT_QZO=N5F2GtdrDRs35Gy9M`8NP*_k0W_M3 zrLNdwLF5I&jXzoFW1{Q=c1Mh!!rt=a*&NA3zgX-VQ`o?Nx!`viA{aOFd5TmRI+wN2 zoa7qxOiU5B6J?)g%*1VmF5LU-M$>dmP^;S*Y6(IXBY(g5bqH^(u$RvT78XS$FwJ(i z0hjg1<0+tw(TU?;Sw8A&Rae|C(rv!wGA374pM)Fr&x=_NpZG-(*74;VM+QVK8yj%Y z=w1a5m5Sit%gmB4m$#Zvo9xoX?O(6P{=(0MJpv<=DyuhWR{ct$IZwBwHlZe2(xyU~ zeC3H<^%Q!8LGBs;&WE>)H|^?7vab3=v=E6mDP7~MS~qwGf34$6j#`{#X4nPOAO8IA z$o$s|zVW!-DRbAHy!EkXKaE!6HC_mpBN7ERi-|7)`lSLBhS$*ZkC$ixOG#(vV%-%Ya$WUIv-5lpxdT)MoAQCj|b zmCX+bfvhS3RemO({-xU9`0n%J%kJx=@i;?9oz$^%IGd)-_T@RRB?`&cFUCs@DgW1% zblp711u{Wa5t)WM4*GkE2o&jc@OIl;L&#THD$hbX(iynVP<}ADoPfqK6iRVR#BNf= z+i+NVtAXpPS$NXx*PO}W0FnmfO%7bH5?sPSa)O<$Lq2+r$eav)rLN@W2d+e|`O|S6 z9a(3+s?)hsRe2Zf(DR1Z#n=Ok&AM`-&MzhZp$Jh}&{zIwc5Jl7s3m!ciTh0fa&x7! zNi&b8CW}|?EY?75lhP!S`|0Liw3*J#iqhhLEyP5}X}PhI69&v@mP()UzfWR*&t3mk zd4+$IOV(zH-Meh^;bpXQYRY`Ab8edJ8%e3lwg|P4h0PglYjOV`MSGpE3gO}3%wzX- zMYBpzo+a!F>-YaYaY_lGp{6C4+CcU3x8n@n)}pf@|74Lf4dG*Vi?N;4Hv|yZ-4jMt ze8k)>wsh2}Sn7CcpV;ICive0_UP=>q%7C>lFX*!E+&5^wxVqpeg4 z)eSY8V}05%uAFDcmHROGF(LbZ+JV21X2DC*4zs#>$9_g&d>gZ#FmmCR)t}1#KZwtC zSoxbRNc^b?cogmH3CJEHadA3~=avfbTN^Um8exo%y<-*MiFx_%Qh)V<--n~+%KHZe ze^f_2Vh%bUb%P<}-2ewCRTGByY^J+HD#kv9tORSu?mp;G`DKKw)!oA%M^D7$qsh&; zWz5aFRL?uRX(XNCkE8ih)8$M}>U{SEo_?5ULX||d# z`b6Kr23S_rTgV4Y)1;>IzE3s^)XU??Ds?RRsy#OkW1?E$Dmu)yecRuxf0>E#JfpX0 z86^U}6#>0$P=zzubLHgtGr@G96Q5tAw#Ye;YR_9AHjvlF{Z$7YrY-l_i`VY!KpirpSX5A`)Y>5#2>B{&P zTRX%Q8{A95VW${=@))mM_p?a9fhj$H$5&ZdBb{_75bR?{o;L@F*(pTLDNElnC?tto zyV&2Y*Bn&^C;UBIX9@z(IpsT-=_fK{&lwTo6v@p$So}YqD`8T^$EA<65&L;ti4vRY z*M~9j1(L~rb1~&1URrMsr*i-!*$*AEgH6t~0y>?0(TAscVouSmML4`dpNKdD{ctzS z>8Nq{c#0t1@V?YXi~Q-t{jlK~#?+x=M+t)9INlC$OSN(yQvsby#5NJi2b^)Ido|6U zU0WT2HXfe9^BF{;d;+c+cnv$<&!Pzfh_rs|zz%Ie$n=ItpD`AO2Nvvk1|^+OC953D z^foO}LsF~-Jtq$ufJo`$j$q4-_hI_JZt?z_h^!loy?5zW{SytN#JSUJWGtHQN!b%i zwj6RMr8mc<$+RrU6}grq&1HYK|GMs_SKJ4kk-S!gPtcXX9Hsg0+f{GnVzPrQCI`ZK zhl#GdeAiS{ijRNd22;8LwWRRa?S3qaG@V+qP~xw*Aaf+r5&+{cV^g*lW40v`nfzw@ zy?g?|s%S!qji{z-xS;{d&LO{P9B2Qz0~)ll8Ju0Zki+Yg@nxRp;6#*lWdhF6prfejk)MD_sF6C-H|R#PnDXZUUF>PepO8H zyTO`EoYr}4fr>LxN8`ov&UUY&yXIC3sk*ZiyjVBwMY52R7mLewmgRw+LjdKRLBNxp z{P(rQx@*KkMw$aK&lZuGui!qB(RpI-iU(-v7MtFFy&|cJ0|VLUUo2B3FS_SUd9gd9 z5=x3mi8yxNorE{^N#t+>VyRRQjcOo&yo$<%9>`oD5KI(>BX zxl0k7XyC{9W)Y5;Zn!6=Yx{zBqYMHexun@TeQN8+7M97 zMGD;b+%R@qD+H*bbcr9)BH5vHPqu^45Ew3E=%%wvR@!(G|J@gzl}$t?Xa>DAY2 z>{5mn#%1FmN>9^(ae^IK1KV?B<%+N-(*MwJqsLa*Vv~#fZO6(=$CDEEAXMqWWw^8M zXmmT}P7x^pw@BJ*L#Y**+1O&)0*z~lnhup*z%=~XBj1YkG%3WVVKA~ESq!%vY z&I&m@wta7!C06^MSmEqq@#~iJb86G>7Y_dIJvWI?6hlQ5uH4ht@ra(DEzXxY;&3cY zBecp;D`E-|8u@2zt_#39?R=BaJ7Qh0l%mpDC0#54f|Pk{#!UfLpWmMlIdAN={nJ@& zHJp(qfhJyx{c>*ftBkF-Jdnm<(biL&wmymGYT92UHxNkD?x%+oYZmch>UWvmn(auB zW>}w|AQICEIj5X&n6rZXjM!(&L|OCCA3Q_nZ}}o+_8+W93%?GIzOm-k7h32;Yig}_ z(jmjIf?o0gZZ0tW7>AN)wkpE^O}%E5=u)uS6)Zx3+Bj_lBHq$WSVWl>pni0}|b z^8_&AyAF86Zmmc)(&)Cy7+x<0Hy_L*L4rVyzHybBS_-+IYwJe#D&L-80UNDLO4e zb6h0Ysd4kh2tlJl8ZFCi0}R1Cll1Mn}qtn-^T zYsEkoZXwDn5rD1uy~{a98f!X|2h@3)D+fC5b?}Z}XZ7t52GT;z2Xb>m9o*ZjVcH+T z;sCh#F(1N@?G|!_&@b>Rv%YHIXDIYv-5;ZLk=mJ z3MEg;zWBczPnj>g^CUxChgjqL_0JN63YC6ICZ=1F=i0ki>}QJy2|OAfy|xjvp7Val z=N+g3@x}3ENBh*+#G{ch?PovzG|iWT!VM}3=I5bBrGIB%zHaYc|8F`2s&L)+$CoaN zQ@mNF?F6M&1*82;bz*Zeu5gv);~(eh7Sow~*)_y>0kgwU+r*HW6c7?N!O~^jVLisg zZ%$o<95xF55hvtq;|J`!5?iZC{vtlfUhTMvI$5uB>YTJ!07g0dwFS?Y&-!P)e*E!e z=cU7Yi;Wz;mSV^1Th`mfn8T$6(o;R-q1`2~enLg+mz3t)KvaP#o}FE;SwK2-G9_JA z1lR4_W&J*9GnXrN`QDUcy=h^sC~{gB#kp(@CMh(u>y5#aGLs}#o+gd=YP z%@#t7mT(l{vv4kJO*o(b^(l$>s8$EFbzJpIKn`k8=ovmk9T{N&j9zhmiT5UVsfoq< z}2ZKb8jKanvAbD-C|21L3PM<9qqbxm- zjxM4+Rs-bBab&VM?@1W+iHg@vW9t!-gp;pI#9w6ruZ7~Ief=gOPy-#E4f2Ob|E%gf8J{#irL z&h77EG&ME7yu2*mx~Ek(eCwauM(?~(R`c`o3ylBd;^Ly9pkQENU}tBC!C=s6G-m%` zXbGRuf%h)KdlutAx8Zwc@rS4Q$Zz76I;gN{wICn4ap6(t+MMc!g zpY4OwfS}N=y`$;@ypodA#`@;v6@GRGX>M+AWo5OE#Wy#%^dWvaIXSH?qo$^&Dk>`C z$|$T!eX(To13btsu~&^4AYzYgy1@9$SuR&H&C{mwzl@#+UCm2 znv9Gr61g}tGxzG1-th3~`Naidc;U~+UU}mn0XwxU=v~4o4g5+=j{xZZ#2*pdaiE#N z<6U=EV=p42hyOaRePD0CO+>^$qoyeL+RuC^d(e$>=JRo8O8jik!krB1dPiZ?@=tv1+F)S*hQzV#Y^*8`fzIVo>Ga8`cH&JV zXL=e&gnm2&;fmIy$XdB?6xJ68<`;Ry98ac-V88Ky`F8&& zSImZ5vLdYwUz_QfhsimZK5j_fw=-ehih+%gcWify<~|^*l0cr8kqu)@ z$@b!&WQzpd2Xc(#U)InKSwC%eRb8`%0aZ^^nxejlY~StM76ePB}`sZ_pKe z#r%G@qd`ZT4;qGftK--i(Hp08;5B-l=!0nrW`*9}qpWLJED_`1I(_vZyA9PFP5K7N z0qfDiKRVHlAL709Z{8tH;r-wVVyTt5_C|j`$y>fE)qVzG)IjN-{&L_@V@2PoX9646Txb=N>%U15%gy>e>%uuV_Nv#0Lh16 z862Ruzdy!Th&~QdLZsaF>W@;0c6=2@SEuYs`t3t>Ff6D&dMyW?mGCGuE9Dt@F2(%0 zKRf?h$M|VS+Oz_YI{$AN_iO_xcqKR$NV@}zdt{uD25CnJPzWqvtGo6IoRv~PgeB_- zdrR$8)-g1VRJ)7;Q_C+btzDSC&^b+ikb5_k66v6lmMDSW7|}7IcWMN5>b>Vm??%b3 zkKTNl>ou07zS+$_aSM3N)9|*ylMx*h%9K%WR)8wCkCrR>OlofPCj_XV}T-*B9?YIgMh@MO~X7#11A7BDm7_dl);!vEIj8vYG+xofTVc zVKfk+6)$D+k}d#IK4LdsyF8%Bb991NW2SvzD*)CV<5AL<Ypdv73>(omJdx z3~bir6iMwH8v!JrEs128JOgh}0m1pFt{x~L%?j!N0L%Z8J&sXxR$@rmJf&6Jyb?9f zQ|*4mEUWrcFyP#=9n3$4nX=$E3(0R{XYKdC6f!g7qcVK_XK3>@|I$Nw*DOebxu3NJ zq!e_yB#tKRPxMD88IPkM#{$2_;0F(i!wpBUHi*HV++uIZRfA zihWk<%l-=@p>w$gQ*Bu=t@se{p=XAqbQ`JjvXP%Xl-z&}R}uj-%%&>{*2Xu84}g@P zuI?con!`<6@tq-$dj@Mns_5jtb8Pvo#1@#}v3_g31@*0%52E7lRnDTcWnjDv9mX8X_{H@+LCus0FjOU@qsKyS z4flUcxlv_$s0E0BKNARWlyXis&!}zeRM@*C2akkPJ4YnhMcoG&(;I#$ru^kAmGc2H zEtA`Di7D9Z7#LgQh&de*PnvmZ(1Z8@8b)Iqc%L~DW=5>(`}#MmDHk|;nCpHmdF=++ ze68Qp;q8U~>h{bBhGST5olyAmq>7Bq;G0NQo-B)YfCM~KrZ^F*%ywsA{r*p}MGX#E zIzJXc!=_`<``qh>Q~zu4;c=%ku8$7&5+^9XE(7UPp5|GvB3`+Hdiai^Mf{ zbqad&=52^U!&_SVIYCbs5wD+PgIkMexs2c1B*yj!`g8*5z zI19xikQA}XC$;LSQ&5~AiHCt6X$VN6SO?&JF(_EJ>9#c4fr~mTyE{ipcm+lnBGhe` zZ$ZL1SLDmi>$+~7AGBmS`(2~?h!t7w+AD6bzj>7!X4B4;zGCE%T)0%`)$9^{EL zJj12Q!3A|ASFSq2zY;K|=TYX3=be@N-xGt5V&2tWI8x0qs9$=VYWwzRD-71lictVj zTu1?SO-xjnByRefrq`6P z@7e%XHPz=`=Z`0-G5+vok$#U&Div`8y5G&aQd4vZXtA~CN{JKUZ{mWsPtRG-fNiTUy6Jj342_Qq1_$Vbc#l6=%{{QJrx z%LA+wgKI1tmxdcHW0CFAx=u=4zQy^*c1KPQJW}V^pv^tNzGk8po*vVpj{Snd+E1q1 z7gS0|7)5{ffS=wG_CVwPchJ=D)an;GjT)AwqWW{tD+HZRciLbIe(sc0T7qI;rbQu`!2?4;QCg=w;^Z#TKpx zDB~fbTFFw(djRmcwk0I_ic+ymH^VspW;b9AuDV?pv&XKr>s)ri4KJ zl}BKC;#owQ>D;(_RdTe|W}^3U*DtS3!5uFb8ErxF9)d$92_1Nr(?E7#{p6~E;;MWr z*JKXnX7QzBHvLWENLX%psi;y%RI13-?Y6Z zkN#Cs{DXEb-#?Cmy)WeIhbcY~##a)Hzl{TsINDwiE(mk7J z0tv~b&b#W0`3*hov;*myjr5k3r;GEi=RLu4uLtX_Aw}yU#ldjh5|4pH0f zRp%qNn?)1M@;M^b<3v{e650rU3a=0EZl<`#f9tG8Mr0-^;hGY(sc&{c;TPW|!<=8H z%RUekcbnrJYuu9)E{&KFRW9+YD5T3MCh+%AUgjhaG~S-v^IXh)QTb;0h1pma&$VUG zwm3V*MR8VQkfO_4yAl<=_u~%NoHIYbTgr*$_NNu)()6o6y!_EQI)&E}>+sjI--I+zgFFSO`i1ve*_P-(DWN z3)p3>NSm8MKLceNpu-#k44Nv#0?y4Fg{5sX)FSrp}>{Li0}doF8QP@~FPNo!gAg+6pB*Kx`TX=ZMoET`st` zd2ipzSE3TC{6Wc3ba|}(t9SaV)`oY#5|}4*;!?zsiYTSoQ{l&V3{rmn(WnQ|0DbE4 zB9sg|pubn@-TpqH?)SBW+R$TUuYU{c)Ul%gen1e|aQ%mfspyEas~I8=FbY!+x@6x)r{oFeB z13K>NNu*1;4gEM4n3nE{-k8MC>@gAvCb)-Vxf$*wC?>9<- z!<19j^|B3U#NgHZ>=fYoC#UwA>wlnQuoPL>`Nf?p-Dy+jY{)8M;1yym>VXzjs8pJw zT=(SWX_PhxJk`Dk!rdm$7Nd9(0H6HQ#LisdEk*okAuYF>=op&hqT- zw@|)2)wg1hFFcf@E%3`>hu^QBkV#+6;O8rH`!-@4zU@({A{wJFJu=-oBqf?;({fmt zF3%~fR+y{TM%a_F+xlx>=aTafwm?9LaIwJJp!N|Z6 z6~Dq`j^VEP_={pt?Y?@PhTFc&)hOZHSFx_g?OY3`Lfgmz`OwRf@Nl`K%5q4+?NA@} z;Ob|sZWpe5h2JFsS$i4_skkc~$~@P?3AWcCBiOaoWDUG~`eswtZRkX<0TKzs$r4sW zo;v8JW5llW4*4w)6~F#e(KeY52G^AM_3#DIO$M*M`p2$O6CRPFK_OtDs0mDjIR9J# z4T2hRyM)>%XhiY}cfcy+Qn4vl)3ND;DF%CDYBXaLMV^feoECI1RD-%BYZn4BXBTFv zyTaf`@4M&vitgp%l1%e3y+l+jIge zv*mr=MFyFJ2>MfNqaEVi^>FOMnRFzzMdGtd;o<$_7~bA7wpT8pZA&tdkun{e^K*k4 zpXNL7eLk`BRdn+xI<~jLcsGV#9WUkiy1VZqWg|Nef1(j{tX!-omyrE7$=3CEJN%(E zu{6^i=MTylgRWVp99?2CyN8B&Tm|iKjNfdF@Z|doDw^##4Iz7PN>QY~NKv>rZ+IlG z$#;Lg+W+cQJoMa!uE(b)M>eO8?&t!vMVIrOBy6!{e>~{EceK5if81*DMZTDLd_c%#6rdAV7_?oIrPES1g#(e zzP{$>VUu_Xo^8Zk?JWzH<5##W;RX+-3S7R8OfXFIu;p;vQ~Iy*&$4RY#;47K_GyJ2 zE6zuDre!pz71GKhfIjjK*S`<5k~%U%4~S}=*^a27^SpSSJTAb z=M)fY@%{<{?#VwG0adDfK-{#ej>PU6-v`r#OAp}WZx0y)haTMCZ3C>iZ*Z87;bC@; zhFhCW-JN(@)}w#|^{VV+x9`}O$NDja4N9f#|>=xeNqPIjrvI8u@?8bk9a4~5Ayz$LpFa`-Te`^g`TOMYeM@o+dRdp7T(OS9##?`*h%P zC;_tDGu$N?$JyK-;i?E1oIt~px$~yh#bMVmvNFdZxUOzt`b5|G-9th!7<{7esTAOP z2Ttvh(PVuIe7MwhHt4I(KjKmC+kv%`mO87aSC7k7z%>odRHz=}DzerIS?=J;d4rq} zTLGitG}j7A;m{6u?N?9d^ZSic)Z!7~x#dgQAj$F$63c6m*$XpejFf$#`9_M@feBli zOCft%>;AZFjww%pQJNUcz1k>9zY7U0!WL;9bma%eKP(COgqOM!Cd-YDQS8x#L1Y`W zTQp0;3)CL62_7Tv@R(c7wX({=*HO#mlJDZRLCm32^UU|63zotAsbsRhNC{N{VmhNr zHrJ2!ml&@L&oS^}svP9Ee6FuL!UUIg@_+%;n;G8O#QBFg3w{`oD&STde#q;_T&H)% zvMwvh7~q4Ayn;3PPht=%#VBF1cDW0m%tS%A_mQ<}p6an*ka6{ioxDNOTMCa|X*VU9 z-)_)dyY>9|Q@hZ^G1wxUz0`X^zz}|az{V~12Aq1+Xp!~8w+L!?1)FdAT4RK0jS=xH z@?La(cDmVk^ZfC@V_y^mdJ@$}aZrjCRyK79np+gV*AdVI2boKvvrpP_%`;b_R*iAs zEXXtPz=iML&W`5BXJjLi9~f0FApc}{%9~6oo^O~?HoR2e*JzAci33-np}c>j7pjCl z6mB$~1YXpzZ){136rR}(a%~t9!Xx?&w2*fnirFuhg;0z}5Dc0lu2{_@^7OKD9m*ZU z#}&8+H5ISfMc&bzp8Mw5E-&dffPdn^H z`&T|975>hB4gzt>xWXhh=EK}iNeFq# z5t(z>18N}{fIc7RoIY(}sn3i|5$TDtTG52cvOBkTB_Yrs{HM6QLXvdt>_5eBkI25T z%YWCOYhEEPdqerHW&#e+;(`dt8^(W7$`_d|tJUWeD#eTxFzQXc04@ArA23ZIh;ahv zCv-~6Vw7nr<8rro7M45Vxiaa(=y|(w_3uY9;OH1!H|9E4f*-2}>9+)d0t%7{+%jM= zL@$fe1V)-WOigP?VNFVt`-t&s*`|o}COh8;=7$2ct$OXpniJ?9Gv^iYBIdvFbI6EY zMJ2Z4rguxxwG{+T(Q1_zCd2=|Mb{3~y>3o-*Vd$o5JI(bCezBJPfx$px0W%3-C z2KAo;(5XCnXWvnNdQtmy`YS}7=I=zkh}97Yw2?aaJ3DK|m4|vyqQ?c^-!z`!=Lorq z)MkReAY0&vKzi4BPUdw`y{y(>MVeFlTOCs%^ci%_*hC(M{=3%CQ+1#IpWJHq3*?9( z^uOuV-xdHN@gn$Mw*Lj;KS|iXsB{qk!m4{rJ87dm_(jib^ncbxM2Wp=eLvQq=JT&kEXWw_i?LdEaTiW5w-r*#>`K=#I`pFKBuD0Kr%`%~<_Z1KN&BrXw?)~ovZ+9deq`=T0S_ckRoc6A z#h(4Iyoc>7{mHwn9VU-1kE{1I5sT+Qr&y#iu8H)$Ranh5dz731QP+n(Hftrj}48LJ0a- zi|3tW8Hk`${|NrS3F82Y#Q#vWmV*95{2!AcR7YV19RGpmzX-3vso8J*L-l4HCS#FA z@gLh-(%Ld2B-8(y@xKYf{>uWFo@^QAR`*5!#|Z!TOx2y%yK>m@j{@%B-K(ZgKm)TR z^8bZR=QYXOy!eMI9yqxUIQU1a2ueu^*8jZszX|_aN#~T9(FAAmkGOUVA=HM2|Gf9V z3I9)M^Lfz!A4~+MZD|5wKlemv&Ie8LXsNn!tw-4a@Yt(d%~Ntm?_ z4E|SlbP%3!Yh;ov4N@KTP7;^`qA^vwWGx)TC<4AV*i7hv2|nzzQ_+N2r3sJB-$fU^ zVMS(!BNhNu&ZiN`>;V6LRL$_$I4sbvO42sfA_jm+nI^LKl({X|nS^5+fA7d^uV&^! zpTZc`{WRQZCULdE9{*B7G)VcGe`pH-Ky%34{+Y7*FIom=Gbl7C1#oYE|E$>GRa+G3 z+RtYQ%--ss(2A^b;V>Q(tXNI>L$QMmcRxMA zHd6!4)I`kbtaRq&ZaY)E_{itBBOCNdUCO#M>X|_{&Y7Dr4$_aul9c+yVj$5DxHH4K zveD+flxd+V@e7&!*Nkhmt{a)Zg=?SAa>Y%Wf2GnuvO+2Z;q( zyHRubkN$?8({C9$`m9kkCMn0$MSW+>`Vv3Iq@gx{m4nze&EbW>ZSf`e)lZ*LDo z^*H7og8E_Dh2tJ=ZP`{}KUT>=@XHVL+a%LUS0?GOs^3FC!sf-(JQ5dcLc(fk<7!9w zIh(1J#RCGUcYNa+KX2Yr9l?;RoNT}=SdH!jkADR<5l;^u-UBF5#7F3(dk@raj$shL zecO$KX;FR>mEsYy0%b@_nP9 z##TQl^FkE(YioNDq_NzTK`sb*tdW$Qe%I|3y5%q>Ri?S$GakWCQoeBjPj(8US(++O zjh>j&nRb_o47lHsbx#{75#@SJo}2b6D$qGD{GEr=*G2geOdHyj#u52WOgZQS%HvM6 zOlQhZRxNXbz`*W6?x!qW@2_UMg(ET~0w{(z0$EX(@Jw>0%L6$1FBWWA2HD6Es}vJ8 zs~byJuvcc*V=cb5%7DA~UbKsyq;zF{@2%{XmsJkE?e_eSx41LJ;u00vo*P{t@+|*) zMOyLxrH-^!rZm%S$tQr*_EeqU%L~T0#-v;14CC6vy}GZxSC*K^tD`C(Dt&*nZl5MW z<+2frzRIQ8g>`zDD4dl z%a)dV!xC=vIo0@I;1l7WcWUfdt>l}j#^?<=y!XPBP~vWm0Yl!r@!Vx2n=Aq`vp{7DweIjFzjk-50nI#_M$e`!3hPc-6zzGGZxz)5GZL`nT@28_nN2V zA@qS8iUG!E%euE%{2nConUnjZN2?w&j68u1iFb<<53%y-BNhD2nVNkD*n8fk(Cb>+ zpPE$Yu>_XJ++d_(X_pe)aglds_;5q$&0$K~AZTFsaB$(SO{C8BT8_spF3izpPCILd zqNZ0>w>l|(&F}TDB}g2QrITucr-C~=u-cuDtfQkXYvqdZO(=zM_Pvr5-OHOW-a|5g zZ|68PynCTD6HP53CkTa(M79o-bV*4DUEh02e=xAS*WJB`i3*>RU+l2hNmWSAObv|5 zGTyii2uCfGjxRJ$LCGHlZ&RJG3t3~++C*5D?_n}{72RL$%vB8KxbF%I!xur#J;~Mq znl}PQ9b!sGs{p z6?F4WFBjR4(c}hax(xA@xJ!v~>X2m3D-0jRI+Z%D&{0^-=--;v_~~(75$_r@vgHrp znxU7BG&v>H9O-??&{pjbTXaEeJ{o_8DU^A?1o4{xS%rYs5?)rEBRj z-#f3wNkb)>aJ0-PMv6s5XFVQ}Uj73I&yI8KP@+X+OMZg<{C<+KDQo#-5R<*FF$SQV zbIRHF>A-K5(3LL$#wflK3-y7+?s`ZoYgG)#$G`{$#4#ySb@U8LXn=fibFi z$#ekgoM^?SE>%B_Ssjsi_sZVhI{1qV&}A#wK=XkNa^M@?12^84EP`oj@^A+zq2GTL zHm13~JvgxPwm+&9D4%g7f0u0qbVz$aXF7U>IHD#MYA(DiP>_u~MpX6Nxh=H_Sp8smltNxnmI;jcBk z_PN(<$O~F7%mh6Lo8}pptj^_TzZ<`oe)`J??w`YKEk#wy+RsK$jGl$aOQ{#N44^%I zn;PnhngBS@rd|b{A4lvAf^tMDT|QS%%KFQ^jaud#8H<_m7OI_P4F5Tb5dGpA41Q)< zyG)Ks0u-O25tU|`1Qz5O-rcAW)J8i^54c@BwG{Fc@&KvM@VpB8vyOH}F3>*!#dCNA z_GHcf#ffL$G#QuAOy}AMb&ZVSyb>4ld1cZZbI-fB0p6jf_@rg1!fc(f=9<&YZ@a;Q zFzsV`0NS6l7_oesmyzObh9HA*yl{=%X)UY9;rI;R;AGx{hFlD{o-9vPh=%|xY`atX z#j|oIy`p9#6dTj-g&T6qbZ%4JGN52T3v^s&tm4hq68}o}QIni^Q4XOmc_BSE^mF0n zcEXw8H}TlpbRdNa&bikwt>h^AUBwFoC%YbIM?dI}P3S5v7JUnY{aK*Q)s+gGeWs!3ddc>r)FMEGkZ??aFItLBfQLd+m>aaJRnt zJL$n2KCHUV3}R=LGS*dgJd^>19-)KdV1cA%cBD@wiJYxXQ0(RBYnii}p=={vOw3bo zO0xJH4#gItzh4*5P!-4(+F2PUIfvZ~pKnSn^|UpJ9`T~82>p*ETpu$^ru9+ z!)%O1Eq}PB1)1muY?9}dhx_=t&}6Sacj!~uj2K?)+(p|6&+@%&nQ+k`I6gd}d+E%O zmYya)@LD=w#_Nau1gqWtW~HXX=6URH*ij4|pr~zRy5OSqv$wXeI_B2doyal}PPR~H zthU_9BmZ(n3CyH^>WE$-7gq231%7(waS$Zpzgy&eSM;gMtmyAp&kb=vmL5&(gUn>)Ty}M#4hJd<#imTgwSMG5oiazdLUy zKJpoET{V|3@um`d%2yj>SM}vxhvIZd-9xcFHsuv9$C=VdK;}T&P?}J3&%lfna_hNi z+HT@EZ;h5}PzZ($U|<&1t*B&6U8o#0W!O@z2D=0xXj{l+GIh{3S8TS*r*|lV!$Icm`NbAQs;Y$37-e3Il zT?vz2B2Rety5a|Zz|vsn&ISyg6FcA3hBun1EKR3i<{IyWEt$pBC*aP4$)AlkKsZ(2 zi)&jK?;ehQyTxqYNU!9~Wa}znFIFN})F+C1S<~#Z{O*3spx0}m7SnO~uZcYun75|x z*LQ>&lXw|6neCN?^y4-xZkE16k=;-d)bsa8Nt~2yw72# zuE=t1lLEl2<}^}ok5yamu_h5(n>RtW%n%pdefuSr`92qKd2fKAiqbpk>)O*96${Z{ zP@d(!w_am~gL$L-THWgAr=f6;w?ep~aU^L;S^;VTZQpl>kC*{|{gTzsDLF3hn3FD3OD>7ASM zSS26F!Ri{Hq+#AG8MQjJtpr4N3!@(Z2b*aJf7dgAcB*aH5)|eH4bl$F_Z#0>aump{ zrAkAA**XiOuh$u|HQ@GJ#MV>lqQ1KPd{$GikGO@7<%p;StQmP9+`38Ku7aw9WCHqb zH7Kt)#YS=!55QTPBgL#vDY9p=S56$!Rl>CLZ9`04>1 z^ER3YoRXgG@Y^Y{wJgT6*QMbZDA_tzUetZZhv2E|joA20U9!`Z`qu=W3CCkz(67%f zXeF)mC{ub38T4A4X6*1AOw9T)rZKO5JCZL@o8l#=Zs3PP+uc%`Bon$zz^LAU)GmiI zzt2H_aD%GH_T)-1|2lhEx=W+Sd176iY>g2{-^o;OW8S}8h<+qcG%hs-nB79gSJT$< z&~V%(Xwy2l@vE3lPZ!%u=U~BYiB%Tm918xCf!xXKXVYxTfbcaz&s$EbOWo7W!N9}0b5zkKepog}aCw*I`|OJOWx@A{C2a|woK+-6ztm0>9e*~UEJWl*zIY8V{-C8XkM4yxDdy5@;~_I(9g=t^Sa%YmDJRVWs^$bq|!FM zFR6nuFy_|uF7CbUFIa-5Vty=N`L!Lmxw)-wz8_9ytq97~IuH(0Q&F(dLyH9PI%Jh0 z1d<8FFIQ_UpI7|jn8Lo^`lif>OHqi9hxQ|jRIb)R1P!V$KRg~WkPMFq-RZLxL@CMw z7ij1pJ_;>@h7=3eP6ij)hfa*t-HfTA3`k@Dhhx=`~Iz{b~ z|GPbyDKvzih6W~!+kSYp**YQ9%NrFn;=ivqC1=`k>m>I7cx%PDN>0X_%;CrN^Yd$E zI-uAKB!klq)*Ymk&nyNocFhpJjMK`c=Lcs$*oXf2`=U61jeVc4%_h^?#I(0;V%BW9 znt6#(?pUgxZVnmKCZ?F2JuOqo;QI9rbXcd1WnZp915yeKJ++HdJGtx@3RuiKY7w1T z(X3M#|6?2zfXnkRJMQrqL!hh|y2ajk*k=bG;F;#^+{f=)qAC2C|L=qU#`8bA2_qQ{ zK!XC2^r60aczC>)#mtXNr7{ceN$`}OR_C~|hV~k4?~9P&SZLc;eCQ*%(6-O6&DfRb zbqNSA7{r=2ud3MUlTgAo-)8az#!u&B2IQdauNEL=@oGQ49d75j4B;4 zm+u~Ou0>@P=E&f%S!+2jMSWO@>-p&J?p7|5G0PStO=zA#Z6{#D0Hv{z3uJS>pFU42 z@--|2s(|gPSF2OHo@XgWMp2Qmee*MMf0JgA%4TL6&NM(#=Hx~kTRXh7Y;0|KBz`6G zfVB`r+(mvoyIbmQ)^S`)$s(sIm~^3Ccj^;qY3aw?3HyH)x}@0xuFsWj``=5p+<|u$ zhX$n`JyLl^c2%{34j)E=X*jXMJ)|+S6S0&j%&S?) zhhFM&MX#Usvv-1@GF4_7O~>@C3Wf#TUU^`UJQ4Id9z;f_1^@M^y1N{$6GP_t!1OAl z2hSH2v@-d%LUQ-7G#SAm3sw>Ao6|W)bwuAB&g||CIRIk2kR6Kd-)Isow~vpHnwF2~*XbPR z)He!O7^eGZ1y|I#@V|XxVT(dZJ+&YJaH17x3E%$~hSEt7mtu|8x56vD3tTLVH*F6{ zw>J0Cw&7{@J%t(QQP8BKo-@F5_0r5rA!vqB_}7mnE< z?_V0ItU%>5PoC>P@bF2-_eMc+0`1O43N@J=#T6b?pNzw`5$?GRAIzJLY&>bu>lV z3>=Se_82uVN&;2uP3Hu%k?8`y58eEgq(uZ`OZHLNDfBl?MP2Pbc9*}2``=orU~IO0 zTR8&Md`GCqL zS|Fv=_d%hK#2x_e($;&Px<$H{^fN`Du}Jlr{lTll4x@!@11&#HAbVZkS`r9a!i|E; zm;etZjTevWN*6Oe>l5=)gSF5)tyVCsR)22&tQ3I6+;78{4t`)qu<2V^iT0=ulSu}< zakI{BsTm^D8IUjt=2m@eegLM(qoMF*1JSNcUvu9R*&Q8NW7NHRbgktLrBXJkHAzE# zBpFA1h@eEAbLX9AA@#?P6UKdy zsdqLi*RRQJtXz?~E9R--;y0i9fHd)Y#cw)f{+nvMhMvq$dmRR~y9nIs>mQO`pd#z! z!+Gz<@@LTs4n;m;z#Rn^^^6o(%qyq;gw<`i96U7esToh^*F@9z-qm}30#YoH%K~R+ zxN9s-8}wU@sZ%V!mdfQtU^9Lc+)I}zP{3|_eNa~G^(O4_IYjf7LL=guFqY^x>8N|W zczjfe8Cv`99!&8#o?z*4SVsmzi>i5d`kL6S=Zw6I!LprnlCn9Da}Wu75mCz||E1@1 zpXq@#O#rIlc-q(q^gP{r`v^XJn=QUPKPONNp$mWTK}1MPhsP=Y-6>(LcUlyNLz$NB z?&Q{g-_otD258nws;OaZ`dymH<*^aUXL3+f?GVL$_bY69Mh>IjA^?!uU;g>-w8E0z z8$K)i8tjN!W_Xi&PN!YSgQ7YDzP7ffpy9&79#2!@>`5rb#t*O!2Rx@J!ZX zA_Mw)d$#Ckt_Zbs>QztvRjZs-GTCoLE?#@%BH9tBE>H$BT7nPR9<% zd5sgiSckG|eb}-7;g~)Rdo?u{ra4*j(1V`NPqd0z0ci%Fm}_olg&Zc}nM_xY^SjoD3_ce2=8PBXe#drV5B|MQsE2HO`DKnGStZyM7G z;bo7aYn(>^B+%;Zfca?FolHYDV>zV7{R2XP`xTq1G?tx$LNtYY01!jA4oT#)m8D$j zhl_M+K-}p^N%`ws`4-C#C5_|mOZ{_q*e|TE_YseTiiv{sPYzQFGBU#Mj?L5TaAo8D6eU@+Zq=O4qn+3 z$^U{r#jST!u)*P-$w&B^@lHpk_0EfVGI{2hy?S)~9=7T*pK6Qu^i)>KBJA_PiGa=Udv^gwAkZjn zDkLiHTP%~`eRET1^qM=lUXc6dJL&z|3Mwl@(>yk%42voBnfa_zqn)?FMkfu*Oituh z+DC};u3P@=uJ3G_HoiwA|IiPLY14}M8)RZa!Z6`?Krrvk`=CA5XrBKavK$qKV2A6^ zr^tQvu9~%0%CmLPKfZsk36|=r`qOhaI>_lX70zfIIWpU?!GBN~zeuaMCb~-S#=i1<2=nk%%1$wb#NB!~*33nEFz!iY8=D@cr3F6^*sEdR=I( z9-pco$8$lOtMy`jY$Syx|y4#6tsOFa@9Mud-@a9Nhb{Ms?5h>bpz7N9Zk|m!fOr zID#9>Gb-aTs>Cyf3f)dFZQ#?@hyfya%z_g9vM!v$`fi>SWv5l$)!nVs0Pv*t00v5A zqvi-X|BPU-Ljm91DSw@EAUF%^)p@l?t(ASK%>f^r*2UkwQfzwMQFjTvLUU?oBqvt` zWCcXDYvnAd$8G34YwnCCqW&4oyYBJaICy2&7W@c6ODXI0>#7{RsIQ7m0F}f7-epo4 z=IDmo*XN13si?HHUjyTt)3^5%BL4|yHC$*h5HwrD%{1}XJ6Y2u9`}r^C{I#p>zMOv zSBD^k7@j>8fhXd&3e>C2!(*ZbmTGkM*x)cAvZiDT?fNTJ%Noo#_^Q|1(5<;`21Dhu zKX=(c&1(l5Gv(O`ezrQusUQy9x-pTj5ubnUdr>&pUwrS-o-?5q~AI3ft7{ zDA=Ox)8aP!{=SY5voY^soLjQ*ib&f@Td7_V44M%Nax$BUrxqk_I+)b-bJoX!O1G5C zjfQyh+I_H0`er*<_h`GrBbRf9Nb~lL+4FpBg2kdH1uvDMLVYzpF_2>4a!y&}c(x25 zO~@@RZ(Q0ssqIl);trsBch>`iaWJHfRacZL=e%fQ$bPI$)x;vK(+P8f{MrRNe`pEw zdb5}Sd;}IFeiGJpspZ~o4PC(C3Cif{D4mv_}1rHIrzQ*a;Q8J3O z4g9*g`m=pK=Ko8)m#95UI2NLYu`kTD{&hf)?W}=9OVIA?`?@zeO;ChqYFdhKd6!P$ z+gJd^yNA^>+8z>;+WU3QntPw9v37{~=KOqAH5fTOGD4kE&0`GNp2|* zWY_m}op13lO()&&M}Lixn3R;vIc7ZS_@wMja&Yr}Yz=>TXP9ufj6I&BIziw`J)BTP zn~XiPzk^NFH8+Hu78Vkt8ThTMa#y3#gd2VUv;HDx;`sD5#&{?yp?^M4YbyrlO)LzgeM9(thM~@G6l_3y7<$(`mr)qZdtyX+28k zVbbdX=t+vSJ=9a%i7Z6yKfca~i~>t>VFY#XA+|lg@vEHam;d|2n0pLBn)rNHo9?s2 zGJ0BnqTjq!X4^Div#Q{Ad%K7MLpXG`^_S77S*qR&7sg@gU-|bfnO+-#*Xc^OM@y<5@@lwXK=SIa zUxIpYh(cb4_Knp`P48uX+U}~qw^#$d% z+XcEs`EZaJ7}I!D?@>-GnpXD;E1OoMwnlOC%>zHLEUYY(r&_6&Nuy3biq!8p<$B{c z@6AX5Ud8-^j`vLrKnyC1MfhyM)=@|Rz`VQOWkyIr!K&K+9+W<>(d31#R<5Mce967_ z_G9NQj^U;Ja+r*bEn;==Gt5T2K%#lBg-jUv=o@9lA-C^*KT@Q)xXhoe^&bC8%cgio z#paJRN1?&TKG%i@yAt`nqj;~#7e39mvZyH_uKH4 zOuUs^RVm4qg?oSPhWEG2ncjMjF_k->&ek~8Ois&c62`4|Z|=|FK)R4G4$8Dd=Wr7B z;pzllU%h{+fpthxMnPlZNsElzZZ%Mn)UqVl=P6R1XQIkv^^eAJ!$;asdfs%lpu12` zT43xsNl0E^9>U?+Pn_c$To%LGosvguFvi(RC+Yq~s>lG$otoa;>+7PI^R)eYUV+-gAc$Vy0$SwN5tytzwQcDhhKE-<6nZ7qfmNKzm=FfLl#*;9x2#EtnhQ zBR-u~zY!_n_Gwm9XFzm+wZXbIGq^^rK_J57dupv##DHXMr6&2_M3!cIz6U4jq5tcn zv=!`$;b`Jvn2Xclv_!v@SAvI6mR2XdBD zg(&YrwX%G({qbB$@`UASOODp#14gqzgJV%B)%9Y>QZc!VN*da_OcVUO}%Xq`jTgrj8X6;nic5eP=d4 zGZ1n-p(-pg0pLE54;@?|PNZoHmdnQiLLh^fG5Jjq5jM@&E z9eRPEuPfCVDq0+J>nalZz?ig)D&jbXEVy;6p#7LL(Mmu=V5Y!6M;ql%g6twg$~?)& zA>UObMXm6mUYn8#_H+)R@T&_Ahg!}=j@akqu0ArQnC^DEiVyj6SHPNQBE5WnNHxiuOd4cx6kNFKubVnr1zvV-H=Dp| z&eJBhkOwIX3D1&vy(iA`_{G>Rb;o5h^yARb_9c1Z8zmSTaM!sgVftbX9~K+<_8&I> z<<(T+k;t5p;wi;yV@m|CR4YVO$+<{-ep_YxEwzDtE?vL#6ICZY_ zn&{29dJjK$PW<(B%oS*K%*#vA-0}$H8x%X~W{YdFbe%e7fpaH7Mxmmnf)skcVxNDw z9S1%<|0)*t!YJH5cgbWOHFYK)C0fxK4LO62@{j`%(a2}S4#yCbD?=a(#ud_h+!MCg zZ^iI6Tko86>ldNN&GhnViL~j`fvCDW1c!F8^=$TD-E%tEMD3u2dkoPYPp9q5($jx+ zy`B(y6#H6m*w2&92z+2Dec{aDp-vJwr{A4XFoR*?9c$o1gEr^|dJ__&g}g*Ol+b{YhCCi~ zNqO+2Z4u#!{Tm|xQOUmT|7RTc|AI3A|8`TZMEaC@GrW5Xvm6a36Hb)1A{q%&qul6| z`OWoh+d=9Ev;r{T-@hgv*Jln6dFK$J^!lq@A>v5YGKDI)CsqfY1oQ+Rm!oe)C}E6h zXpO>|3T;AL7>@7}QgSjPN`@#M;P38-4dFLaEiNlg%Qh`lgG}`F@V;ITq6risMy+dl z1rOW+KU7r2HXIGz6ZP|cSI#VsWtDRoKwA<5zdH)M`Lw8u3sSECh4$W94&xdeYE(to z5K^a@q?J`A(E+gOaogl_>?D^X z1UZoBkHT4{ss7Y9@z?Yf#Y}EO&*J^`z^xV{%-Lr%-FgTeiramSg1c9;ZD$=rBTIgR zLugaKHhwM4KHm9|)$njy?-MOSebT!Ktg0A0sGfwnaH=gT07#Z9nN}fJR7(rb*u~9*=`tFG0_VxY*+++qOE(_pq!hj@NJmrs#<*+!CAVL|gnPV3?#4 zVP#}ObUa7R20&DD9tR1F3L2d?sr2EkVDe!JbIz2EBN=ITK1^VwE8}AgjRhYC50S-J zk7Lp*?0iz{@VL0L?+MU((;fTwCb$dIR!Q>~(`3BV&_bpwxxB=cK9@f4&DBP=sE5w+ z<3ncKUL*zg;qEDMlJEi@JeUNP*KyI&YRC19a;2r0(OwKH$ztr zd*j&RmMcdBVU2%yNen3M*cEoKKt;EDjftEWalS9842ZfhY5>tmS5wWg4EBP`SP(92 z_K4Jg_MOCWGs3j%aaJfT0(5=j+Tj2yeBR7P$01lr64<<6<=r{ZZDisiV+BeH_wQN3Tf@bT*;YxoEles;5j)m!%{VENk z*_|P+PCLPfCr>O^4W!Qdv!Ppj_IjTohO_nVsGo$=bgGqD@R4Cw9B$~7&%P*2v%I=o z_Cp6Xx(mppa>!#8U1p~mayeXjdUO}2ZfC0@>}8_LwE$kZeDska2Mn^4bd-3l^Yv~* z>%6j>w<3TRd4@{$t5*1*|QBN}R|e5%T{C2zq=UAx*jS-Wi0q%BqlA zCtRqDn^-Vn)_LWA*Q)=`6lTj|wW`qXuG3C`eK1wD`iusDRlQ|lvJ#2C++ae>WxFX? zm<94N)sZPI97+%Ny7Rsq0gU#}&^cuQIU*%bM- z-Rzw5Ud9Q3b3Nf$s8NOWyx!B`MluL0nb1)3x~Y)YG+|Hi{0I~0@AV{rzt^Hq)e5y{|6J~$a9XojTnJR__KGZK@W*|olN9#3U6!HY zWNl;jqWYhjUNW7&oVNT$4B`aAAER9wS9WYBEwl}i%fM1pZjp<1&-xrFn&|3$r~Pq; zDuzg?@DMTziooh`tbeRu;7%4RO>DDWjUT#39MP6EuQNPY%P}CQI7k-9fEfkAi^1_QZX=2?B0*4;k?Sw)#jR?wd{v?p*xYC1(@2GSpi;== zD+<-QJ6TkxjEWYWrWmx#7YjqF;6fb7557NNEzp=ExGMbqDK&`hJ74_k5hStPK-jPF zMI{jmHW`Uk)n;G_$mFq1WDsk$iz|}2F)!C>t|TbHV)*18^qrY)K}X9y#H-ErvbL&n z+N%O5Aaq#W4?u5AT#LwJrTVsF>P;vz;UZj_Mht<>XnS{?D!A-Iw84Zr@9F6TOP5I zb_A>luP5nhz5??YD>{Q7rqw@o5i~IbRfMOb36!Rb%0)^#D3$rGaojr1 zHU;9@5*kH8KC&yL<27m(6dUU?pDCOtM`>?g-;=b@Og=Qc_teSas8?OVV0M}?iJ+TW z$r$odxsjNFOrb`Ac#X|*;;+R@Y=k6i_f!@sCz?PDPUu5E6K|Q{rIOtx1t!54=FX zYjvACS@0CBtTtBIHLoW-M4F6Ps?kw-=9GepnuDXkf*qCFM=1u2A(xX3sb&44V&j)2 zCTC5Nqk-sk08<3sK&$3*s{2+Z;b~TBs7Kfo1d=ZV?5h_sUcAbvz)mf75l#bvz_{yQ z62>}Fd`Djy1ZsH8bJ}7B2n@kKx3fz}3l)@lod}f!_A7-MCmaa4EK-zE<6(0XiUz-? z!z6!s@yVudP$IcAc;BCiL1L`kpOciJEAyWCROZVbD!BMY8o!0!g-6CJ=MW8?U?sdLIL7BrCOx%6#9~%U)B@0WL^;ab7*8kvW@a= zh>#suaET-XQ^W@}dJ0U8jZ=OllNn8lX|O6{G_ocSHH%kZP{l)xTbzg5=YJwqavpyn zPGc$IS+lYkGubqa!f6(0Rt(6NBdy2C1h_WZ@y|>ine_yuGKyj0k(jj7`tijtkDWBn z=bn1g_fpKPxxs-AMJD;?;KuVh_GUlk;fXa07cm8)tZT)>M^Nj_3dU^#dXP7M(e+(o z%7g~RK$U2l&wjb;%^g_T8Idb8i`!jjk#}RfK6gU5(A2Tgo<-eVVfSl$7%Y{IDIc0S*K93~w zoZKV8RD;c!tXz1Sjrr7i1g6?II>{I8?y4}UsbRwHxe$nSY~|IRwE=yrJU_ndJ(16F z)WJRGFSg{X)Tk9d)K%;0f`;A~uShIG!_E6GWu<%Z15csOv|&e$)&h`Zu2Mww-UC2D z)dYVM=LnyLgxBwO0)DTaMALe0<>Lce@*<-MjcTJwNvglf*U*c4-!ZoQZm|6x-LUit z-m`T)|7y^6I%c;DZ&fN}2Ob;NXdae{fX-4OHfD%uDQ&vjXP-zVKrYGK<&OjclT1>Y znZdMo%XJe)!2=wo7Q&pmA>=ksmA3%*58}ZDku%TYzBcBc_XD(v9!|XNm`0CrLDTKZ zvRUJg-gb$ME^*GV3CVa>Uf&l;RU_jBtB_| z`r6y=4XelHTb#ou-nDqLnrwVuB%@m)&IH~WR7CgUBF3lrug3EfWNzgvG5>O zb~{%#l*4jaC9vWl1)FymJMO=J*d8`uCX*(5nJcJVBZIx~=5>C@&E~p_#2M*gKr7Og zX8P0`>zfk2rm_=bpZ)tc(fCYOdV2ogk}oEB3k$>B&~_TIZ;>!Zb{tn0c)VNJ!dLQ8HwYy6xSR>7h#IDPygD8l~xd5RQ_88@I;Eddpk z#KrJoz56UsE#rWO#dP*`3d>VakaC#@@8^@X=a>rNp{2_+ zkW+|-OWu?hxyKy-c4LRf^9H)iIwou2P@`N4Wk%=*E7#MCu31r#^SImcCiTx{AlbU? zr@UAPy@e!zuK7m_y*b6}FXA`QgD&E3H2-6^`;MIgc;J zG?h7?ThVTCmM%b2QsDtgyFHnt?l(y9-g1ipAm(PIR-vZd47|o>q(2Y-qsa|ub0Dc$ z$e<%HZ3A3{k4k9@;XH&mh;EVR0vG`0`I%^kDKcG9iSwW~$vC2+07zKnz@G$X#>R+m zrES+Su@UMQOtq|v3*6SL;xXCFf*#E731sWGpAV3BcCA_8)xXrdd+XWi3LTiyiLsu? z6G9*1dkY`VYr;D!x;i0xInlb%Q5O_i=PBI;6bF*y8%MvrZ_VD=*_r%y7waM}^WH|F z!XZ3vKa3vYn;;!gJSm)_n_+jmvnrHH{QT5K@LUgkQmG2TG_2n8<@A_*IuE>X%nNqe zOfW-3w+fAge)M?Ohd#VYxkqjNS7=eCDlgZ?j9001wu6y8@NAhudCBj90B-;9a~Z7u z4j1g}o9mXJ;*oCm!`>R(mZ~qUasM9u+&;V( ze)+t-#o;|o{d#>p^}sM;ZdF&`d&@#mXsQ+wKf%VQ*0;8(^Cqd=sw@lV{BL-I;o)qvs(SzGD(Yyhj62t( zFwKh6PEj9mv&oyA(`mK!@{4u_JOgU3>Nf1}@A~%l=Qrh&dWeg;3cYtpL9m7XTeR__ zW*hC+X^mIbOVzb}B7SXUGK&lz)nfd`|D=p?V-hheZwJdy zLGh*KUDbgx6i7dTI_`*_Nou;FZC=<<@Nw8xc={p~dWtz5DGIGOJyQB(jseB7u6)~B ziwUn~eOY~=I4)0!m<7}SI{!v*NbO1n&Yg&Q5Xh6}2&DJbkJeccIcyv7ScHq3zFQ5N zxKvmq_N(E7@5PER7>*0e;EOjB3sbS!tr?`DJid`Oa1VuEc)PBEJR>BT=GPJ@ayraL}g6w!;ar9_*9fgL01H`G|&r^49N#K+(Kt_}2XNSk;x$*Qo zvf@KK;leyKQ5I7aoZPlHo;yPXVYt8b@wM8WIR38S` znCQWF)J#(3XTH{-Trpqo@+5O-6<|4UVcZuO0tbim<2;iyng7#c3JZ(w1ldPPmb;CJ zGF?WJ`DDB5B9|=yt=noRw$G3mSX)n1!o4*-p*y`?WlR6Q&p*%YBWBJpshq)5*!-(C=w zAoZV-b9g%9r(-jT*}o}?8Emj*{bN>)4N0|KX_am0j#z%lgdZ0^>;OFFG{YO_R zfY}{#Y5-C{_m5{A;o8}H8MACB%DD`$N0Ir2+iT}Jv`8EN17LK8wuf77AkUj4c*x2j z9!FJDLNJ-J-*tPJh;lfO5$C!i1r!TGD5Dc_%4-lU{kvBI))&@GSAT~ua-*hY{`_2IKDFU@Y(NWV7C`VLi zbMVU*p(1{3cE?82AqYgJRs6f1iVbnPfuFE0-S%W7&9>mi<*v%W(P6g)WvBXr&31V5 z3y0I?kHhktfuKkm>nMg^WHiu_aw5}y+vVZDmmFR3k2Rf!xL8#pflFGtw~_^#;!+p0 zdZ!GLU8H#^{V|k=Z9~EAuC1fTn@;deIGG7Sa`})=sjwzW`me3YZUv1WJ22HF*}X2e z#JmWCS*<^#yv*V!Xw_qWUFept=PoJ9y_tUTidzw%vUk+CC(!etAs%Y2a}ntsqumxs z?R_%1> zSUa#^T^TZYBc334PS1&(7n@g!Q7F%0;Y*^lG0bv$XF9O ztW#XxkvhlU01X*S&ZB?NS|ot%LE9@cJZs%=-(_u)^Lu+gz2Z#@4}i%H8*G7kQoatd zGQi%m;$B!Zb4wHwd^l*SZ|??K4{TCepxIv+aa6Dng}qQ;ircLF<8;{PM@}3nfA~N@ zi1T$OKN2y-k2z7JZZcVxc4bBHmw2_!fHn=#8tJte_K>#f&iJGolD@U~;}L3awTp51 zEXxlJ_|%Pjl|1U1dOa`i6KmbsyB7>^Nfm!$i1}7-%QGCOCmHt6ti&w=9}VgK{tC^C zavoOe3j@k{7&dy-&cZ;6qQ)-!$cV<>B#6^XJG)Y=lztk_8@4y-i6F%#4owjceH+ma zA9>Cwy6Ov7Z#$D>Jz(;Q&=NjT6`t2}K2DqU?Fa(z43ym=73VrwWE;`&! zyF%VaMtHd5AUEE^=z3V5(DD|*M@JMEsS|p;I?GaRaGDbBnt#(H>aGUe+N;@Fb*2fw zV;+`^UGuafu_B$vwOeF=wTWGix!in0nn%?FIXVgok<6m%JqyKf53}^OQ(@S-)5-zk z`7>qtKmM+!xS)!WbBhNk;T!(Lb!x1F)!rD4(8nC%89gZ1_E%7&8TjAkU zok;bUTh^Gwe}XRkXwrRpo-&0mqmeM4BE50AErhYR*Q8+~swdM7A^5e_#_&o+fS?4s zP%2@Yj0C18)DycECe6PdP&7OtXSWhuN8)^&Hr$JM`*lAjN|p4Duak~Z;k6s>1|?@` z&OOuUuWk`|EmALBx}-&@7u(r_Wx#!_C&mEfK>Ti;x54@|o+|{}*yw){zCZMRhgztP zs-*V@kH=3x8mdx6@N%a9q_EoxNjqun?zgMze7{d>6r1Ub}zN9U`Fa;elMX$zK z7ybB+pBlJ7n?0`CYfiq0z!KUKQ%NzJb)x%+K!@8tP)9uwBq6a_7-!U%jn9L&Tir{4 zOu<#V8d{X)Cju-`jaMn8Kfw(j31o#WoEVib{gQ4}Xnne$@LL{pOMET%W1#X%;MZ&; z1cqkxkn@|Q;bb-EvOl>qVy)z?2>y|H!AOZoT%m!QY_~`tnCpcVqC#B0 z>4*k{avtb~eKSBLgj>`3`rC`tw!hTUU?)Tb5_~<154ZNh%MwQz*)y*&Q0+xW5c7EW z2_NIMj)hTX7lLxL?)b)^l~HIE0SfwY&hKyEz&D5BGwUrQVC6%D_4JR%N#OQaL=t#u z+sMQE`MZzmHHUc@Hz98M-9kxtgjh)3((Y|n9oy?zj|aGF?D4!}PV4Ffl}9=(2tnh= zT3KhlOFefWL+em}-`l@VXG}E)U36Pm_aE;>1c9fnl6ermv)y{Od!^1q99H0auw%O$ zToSI+fxvHf;k6+2`Qe?QvKNykkmjo=c|>g(e8Nkb$wKRm^5H;+*4a0ql!FvagP2JFmt=S%l(Snbu zktbRfwo^h{=(QrAapyuO+ zr;{Bs7|X7lO+XQQA+9EBxxktf#>di$AR8CNWRXkk7XPJ8g?7Y^&!CMsNfIPgfXmjQ z_>IUVdm`SrWVCPN>WNH|D60!=gqN=%>%9JqCA{xaAo_=QB?J4RX<6)d%?r^ZVEcED zoaw_`S#B`{*)NgJzWDM%Pew3=dho0q$NGp7$|H^eJL$Z3N|Z=;#G;Fl!y*6JdHi;; z3N07*F!ABdl$x@#ZVCj5+!TV`Rddw$dKVJ-v#|?LR_0v|k7pCI%L_i%SPN=}N16g= z=#;Ba5Dt2OQ$oNL@mJ=w(@2G)(m`%`$uWf^I0h)D3#nw3O8%`i)*xm)S`RAC z@s~V?+*D5L8Fr4-G$&S_KItrdmIJ7fJvkZq0HsDLQb_0gIpzDjFsdx_-jqZhuRZ73 z5j?DRyFRs(s?hYU#|_thakaeFSa~L;1K_W4(=e#!qdV4p>jRI}|54cI`30UTVakst zw^08yv&1Z0V>`=`7Q`A6=;>ov=KRR9$&^VdFj?ks@O`2K8Fzq%QZj&IRICW8)4DlI zA>{rRAu!Eei0^Q9Bbdw-_VW*okE(K13`P9$qCOH_goT!00C8+`i%&e0z}X{=bM+SI ztVZzg^<~89qE7`bQa>&t$#39K20M7oKIxl@?)S)a$_8`rPpZE@vdBC2Wq(2SiArWl z3?-x_rm%@e?b#PYRT`23<&?`l)1i9|^8BEmO@trh)^y1%L4GniGOoff2awuH?-K8dZ;rR>JDGABfl ze}{S#)(iIG%q;M|eD`>I%e$INQb#{Zsl@>@Zrc{B$N|@$0I&1ba|X_h%Ude(tvM!oY9r*}<;KS`tZH}rJPGk}UY6F9skdc^RwthP=`%%Q+%W2+* zSQrAz@{1?XjH zNk6=6?K!P|T-5LiS@e`J3j^cz#xTfd(gs9u7{|~zf;0!Se||`#2yl-FblLNLW7H30 zjqn&=%idj+qH{V}7&~!6X|@l~u-jf{#%q5?>OeV)HS8tZn@B_L>)M|R>v|GZsuR;p z=IMa0au3<~n@{KGf9gzB{Pw4LFB6in_X&d^62?f%wla?yyQ7_hPY5Hh znbz+w>8|nBpoy6}U#Sf8Rk$VN`?DEh%YjW?Xz|6p?xG`xQCrT*V9i*r); z2J_yx@lkQKM)J@6ikPZje*6pb1n-f#yU@Z8mf{pIQ_HDTeS-Qv=nvEUzys6B3R8`<8N_P@;6GTy1w>tKTPWGq1Q#z&y&_AA_P{@VCpbw*jd zb>JtoIjUVs>Uq5L>civG``6VpGUPou!OBAKDi5FQ<6lt1EBe~U+zXB}tRdruyD-~& zm0|i$a5!=2ze{E`f1c;ofnKDOz~|OMN*&KPqfgV{qtDZExvDDBR8-4f*CEY+=atII zw3s^_^BBs?Xjs3@7nSKGWE-pM6Qna1J;ayR$5_R3)x{14=k@mg)}MFa{RhFig|)cS zn54sv`=dK_G2wM0%Hz6f3{Tjcs3l<$DQ@T2W;w>R|0|UKyB`cqbY4V|Mu)M0a>dCQ zFUD<1gEFmQlLemqza#396H`}t1}ysp%sOPoz=Ry#!U4uDqmzYMy!%I`Nj^Q~7~K@n z6V4MBxE1Id@8HuLW}|&|NSB*Oj~kc0^MU?}OH4(YkTq`&)k|`VZbM%4Ja&75^`2Df z>4!#E?Th_u{;T^UJ_MMA$BirX78;D}iRGpp9^(_2{t47H8qhQuTykw$E3AM#3Q;6j zB8WgeLAN)!8<*+VQX}>FUNKK5avDlrXtx#SpDOhq5eAi-A{>`X*se}A+uN!B_4`s- z*W5=@%EG--Kii3=92pY^pk(8P6XPVv$~En8D-y%R#}vLE2IT)0&kp~zdMn;ato+ET z+-hb^a>Wlz3M*0y#uD)kW`M#q!h@2&9qdQWFwr zZ1|bmhwlyl=a({mK=Fa6b&Et&)c~f1 zmAd4R5B#IWzSkf$r^E|R$@cCQ8Mr3syC3e=!?oTO-5e70DQI_-DDsDJfD}1N!>tNNws#=sHtkbiAwNA>k$|M&W~wwY}3V z;tAao1NPa}BH;iVUx3K4O0nj5n*zbB&I%Hv9+Bz(+IOwSlL|3lBcVRdVdw_=cqVmiAoqq1ZIoTN&OMz=^}V|D@5T@>vVjgCl=w+IhrWO0Uyhz-k{@iS$jK3~A2}vnanHzwPt~g^n5j+zY@?=L55PES-j$ryz)+u7yUJYz-;$ z-)x5@2=8v7m>t=5Y=+CBU9hZN;|9(R2m@1%i(;7027|Y|AnPc^zeoxdd|5Gjc|0@G$wp=dweUYbHN_di%*ltM z_=%VQHVv?Y_ayyq*8m5x|3w-7|EsS5uXZc=KVa>MgQy)>7HIz%BI#IW)_xzig8ijx z5tU$0A<$6ZGZtdTiNe^ACXBjkHca64Ji)?Y)r%b+o%my4*oL!wet()fpmn76>D?S> z?d&Jcx_HjgX5&)k=Uw~$(vn1GDmi(HUOUqoyl5W8yof?-&#EbPV5ltUxI;Dk`pC{@ zvl_T)4K$hRK-OxsftJBy4$TLM{Bun$W&A~@GLc$W?Cd96lgX*{$3etqt)0-s?-Bm# zdSB$zMfO>X0mHQE))^!|790giyBa&Bv=qkv)MG;jKuX}~FNjTLVIl9Cb-H#q7sZ2A zpKe6VEG~PIlE{6~=fUS?yMF8hdt^h)jzY>?xth9Gs}`|SPgtG<1@apffk_-ICTC)j zJGWR`HkLO%H?4{KKTT^E30V~?htoO#8)fetTuB^mi_XNhZQHhui6+KOYM^qLBXRueW+LsGt znLM6yd)64u9jvUZX#%!XjW%m#$IgsA*)dWC8M3|H)8Ca{S1+S_$cV79!+tsM@8tN; z_ayQO*%gO}!!SI1M?BYkyY{96G9cm$t1yX%UtV5z&OZJI&W(KZ*Gc-D?4&0Hcm=OQ zGb0id*bCO*GX@sy0wx|x@lXF^i?6w}MHQp5xHo9gel_n6gNR5u@-sNAV%VfF(qv%2 z0f((dIEF@TW_q{teB%5qI*nF2YH!%_-MUpufcuyyD^UoUd;CwPrbB-_k0O#gvAMwE z&H5Yk<=TU=TCuz8T-bzsP9uLc(ENUUU#Vt&FD5Qge4DOtcVE4I@>20dA{2^D*of}e zIaX+)a0?^6JDKl())<+*yBaUcS~X+9FHRsrGPNdWthVlLDI@S91lV-bRcQAlBtt_( zN;Tky18nRU7&d|S9`{R95)#`CIuTb_S4s&ErM%XXbg)VaHWiVnX=%ZLfrJiKUO}#> z1%3-7r6iP`fSR(e3}WDW{Z>z3)G_nR_=I8ekIPGWtBovfcx3Y>an=O~^?d>`9Mh8Iipa=H7fA7#DQxHEiYHMq}U9SL1DBGlA8;D#8o_4(d zaOO3o&2oqw=~dw!S6zD)Sm((c$?ljPQx~fK;>4FJ#h`PXDFotFpvT|q{ubBnqtmzJ(7!dQp-ZK{;^g^w~DhbOR~2{J`C3xLxds9-ovMJe*9|GcX_xJGD(Y za=Dywv2D)RXnUa4J3zTP$Gt%sFr(V`J%*#(OuIt+2O!XtH^GdoxjDGp4qs4hb`VWs zR>y+Jev3gCdPhK~Qto>d#wLx1sI>Vt4FfkEQSjxWTFN(UYUAz4QN7>5^d9}xeF9e+ zySq@wqZbEJuX@&tI7pXlOiK9_m8Y8qk3Zt(b3;S|E)Y4s zyl6o8o3J5Aam>`i({p>abjFHl_a>o$#kZfqW~l=_nO;-Gp~Hvlum@bU@h*W~54R(s zSRo^zIL9A#qLT;A{_jmk9UbrM!_tjx`@0C>BfY$ND45E%6FgmQ(A7yk554>?2LTD$ zy=^QN^n7>OZ(U6zf1NPTc(ulDm}mUfTK1VYHZHE|hTxb2kV8k^op6_R8u~r65}ho@ zLb#DOUMv>&#@^sQjWtm?P_jOsFkhb5P}f>d5G~5|E=nsys#q3=`Q8HJ&i;4sFo$Co znotCyA9S;<47x37JJgDO>f&LWfTQwis?FXQx=`5m`J$`>==GLfdmqGTU7ajmTuEFI z&1xKaBtbldm}lp=>P$AdD@POFAj+lCRq@6A`0)v_$>Cn_j>Tvh;Kg=ziD*<2eCC~I z*mOjv+TunV=c@d=8D`(vT}<2|4WdgSr0m$6Owekyn?ftA;N%{I4(Cc;PJNLfu+WfSRs>5 zQPJe)(DJ#0SG&`gT*&XkHX5HFO8NF!semP?oKH*?g-tmHj(215)Bt!K5*I1GLZT1E z^bIl#X^>%h@}gNU*poO`l}i+VzbiYue>C;@qex#I#}@>1iINlY+a$!P3>{{OIJ!(@ z@pzk#Qh!ThgOvBW5U92;cUt|2fny`yB90J6@ zB<>xl9PR!_>W_oCmr9{HFl^Ig+#SdKJ#N~`*`^nX!4xiqC?jJ%_a$pao>?I3^INvc zPu^UA`@KNVNGZy(6_>8lC;u|aB!OQeWP_M;4gA!^gtxySR|Zxxf?M+NAZyA;@(hpk z7MmvgEclZP#ro>X1l23J8d}~qGMU^R>{$PnNh#S%*|;Epy*kGqVyW2nW+64H??on; zWYdPnMX6I??^*`LgAL~&@ZHo&5xp%E3S>e&-yR15&Sj%P^@%)m=|0)?4?T&9`7N{1IBuKCZ7fNQb+*djRcZ z@zXVly4ejiq5FO^^~D=Wsb@5d)21t8&Vo zh0dtYQ8srR(Q4%5^nY+bt#DW7C5YPka9vxE7L3cG1oMlh!1G#f_sOTuT7~XVE0;wG z8{qa}+2#d?)Y$aNRc!o$OdaYm>%0a`0QB+~UM9oarfk;DD1Ne)*FeGvNkXgJs zVwpzSW^bwbFr(9!2~W?sepdzWO_KcX_Y||Q0}}qu5RW@~&v!L$V^Ewrp0s3Yg-vEl za;NKUaeSd)Y*y=%d#^In&4BobzfMPbkSrl4&2<^iLI&-X;Pe`jucdQ%ZIWaItnw>FUsR8r z)dx`i<{7LlTm5k=2n(IXd+#*^?q+Ce#vvROmC z^P5Q6y+9JDgP{;EMqQKniWZ#vQFy>BQGizT7!1*{9JnRRhvnhM-rNwck8rf}$8wEe zES*EMoN++sqo~<#e$p?1};FP>GYk$Fwz%!(k2DCPdxO zrM2BqY4+3pEouSvQvD^w+uOvT((=w;E$!T-MY$NkO zV|h{qZKZx%#UbD(A5;}(68#X?a0&xE*XhNjUj zEK=R@j|zhmygL3F6Vy`eJOSVVUIcOU7?HTxX5aZ0;F^NGhLdaTKm7LOCsLVl%qOz@ zfcS(f70|PlERyc=mf2RdPFprc2=$f~33J3pprn6+)!uNDn@(Lgv+-JJj1{b21X`a) z$JEpmMk8#Ye6q+A+qa~WTFf>e21Y`1Kt-E&cPs-t2nhZ9TN>n<@9w_$>-GLn&{xh< zJI|YVl;tn{S-A!^6 zwNjHKBppjorVk$+Oe6mRBylaa+h*X^a##%>XeTx37kt&YL%}peuUe?x8JH`>IH!@r zqA%jZG87i(8N5C~?Wx!Ok&cP%L0Lo6H2wz6N}^psK_Lo&xea4KI%-D;G6zLNxI30<>^|6BPtc~bWU z(mp7P8H-G*V{SdspO_8>FVE>)mX2;5ZgeCQ##F^TYotKPpy49!k?2DQwr#~{29=M! zstGr-@v3PEdIwsfa7Bpiqx$6F%n&wb4Rj#R(7C4Umuz&qY}Z@+4-tD3L!{*ghjH6) zp*EDet0P%)pT#WY$*eP#-6sOR)foT@f$jwJRGQpPQcv;W*dvmGL|su#nT~d0ZH&7g z25e5Lm${ir(x0Wten`~ywBUVVrradk1`b%chN|{Qy%g)IB##4XGm7F@H)5f82W18) zyJ+XxPcO`$vd5v}X7c#;>B#nh&6%4Su5WvK?J(UwYYidq4mo<;VS(B-o7;zGGi-%+ zTq^ZwJFC3fCCWq1GU@~L7^z_b<6YyKYOjtCh7z+{BpyM6EHLl!DjG%y10` zbt;gj;&)9l>uEFh%<1*SB?3biDbTMUZzg^?HUsI3^B{VFsB+!CZXh2_#f)lDQWtVA zazIfLc&OCf3&nC`vLe%2c^T(T#cieL8lxgSFj0_^<;?TcK@4%yzi80>7oJFz(nyZ& zYQvL99+nyutq2{_s9xw%$36*7L+o>+*^)=i-%{Z?G~1@yx7N3xTGLN$9WFb4DI+%HMlxM`wJDqzokWop|+67;Cp1gbqSaQv<;B5&rz9w6Pd1}#ld4`9LECklJl%IG_RgY0=j z5XMOYNs~`?e@oAIYLK!} zc`@d=;K9j>@kVzArR*%YUR7zk<9qH^k*s2SU`m9Ik0o3jIz>PE^8eK9Ug!^i_r}^O zH+;z3M-NgFp2WvF-4Bfdc#RGEi6O?5ls&2krodbrUf{M`P;c|YI@S{U#dG4V4#!DxRN zW^%p2R__sPELJ^s z-K&P4!`rxGNQu$Zu>fVihOAhtbt8iR4j%812bS)woJYGBds4W52sQCZP>XRZeITYc zm0zR~sDIlf0Pk?)#&}nV6&&2~3CDUuA64We;^=VB>r?-^Y#%6VInVXdG1_7dH8IZW zvT;>!c)@=b4lz`*>z6=siMVA1++uWqKA-X9#ehC*c+!n_lb@g)(+9l0-#c<7mu&!7 zNDu4Y+rgCcFs;^a`VwNZ>!Hs%v+QYYKJrk8h6HYm27za^0W_xvTX5*Xr!o76aBmv~ zk?p!vnm5=T{ zIvdJUV{`(Ae9cX|G6mDFrs@x;tGEqb+=QqEtG0%=b}}6g)n2#{V>h&_y5g9Ty2)){ zHWOt#^Wr+-IzJjPhv<|z{5+lndz(Dr<%?s*K9u5iA`UtSwjq5TJ?B_0Qt&^zN?eE3 zJ#5@iq(1(l?HGE)ovqvh7lyHaY6`RF@FbPRu9_V?jgiF~@B1ik^g{7#csHS!Q5ST5 z&3%^GBHyu~%`lJ5Cam(Vc>QmqiJy`zNaJC0X;4MHcKQ>Af&pReBd@sHkJ+yC2~Ie`7y?CD&y7ECo?L1!1G4benvT2>cTi{vwYk!p_m-XWg_5rl8dnCEi=xt+&I0CcPg5VhN1X~pW97z~OH@rn<*%u&m{in!6P_W%PRVe6=xzjFCJ%a%B*g$3y;RjJ~sTgp^v|{YnpoeOo;Qr zA`8Sm$L0{>3;ey|O9eAXt>^K8D_PC`V=XM$qFR@UoG&&}m|?k~%GPvJfFA{|c7`O; zuV>DyWJJkPO&DEC&#hYd3+HsX5!`clUb@A|u^a}ODkZn>ki7)_n&1WA-lzWa9h7j) zIpyK*L2))#h( z--I4?>TOY_*|kEkKn`Jq_@6z0O;f;H7T9tdci6aQZuu^r^?vyiWW5s>raKqnx`1Z0 zOGJ9k;g+Ky782TkvKvhTgG`a_NuR4*ZQ$`-+I@KaNqgHa+B5+@7UKa-g6mqj>Q%e?VpamK74-j+Ozf17jQlyMV?C@XlkmmWPN&$`&C zUyQ!JebzZcq%a#NH>>y2Ftu3^TZyR>C&ICO^zz;XQZF$O=lMH1LB<_b|5@iUo$&k0 z2McAD0Fn2fXGUh@cA>(lod_{)L08o8w)#-j&snOpV`CIBJwg9ogP(QP(0eBX zUvYgNZ!mmb#^4{f7eF*iH6%aL)MuIB!6`3~7rSLLUxb$LJ+U?vpI|pSSMcBbhJrf8 zqsY0q_Clrp6dqY9oZ56FgTCfXtQZ=RWqpiC#pNA%Y!)(ih|4!!=qpRI&5fk6vW6i> z$PU%;>Om8@QBYHpQ{Ekilg0^$q(cvE7AHSVR_bbKl>jRP?|(%GTh(``ScSzsjExDq zQA<;Osx?Ds(;s<#P-_p}Zc!Xe1mU_l6Ua1Uz;`Yq=gDrB&nI+se$fxs6Nr+?@u4xy zBXLT#iXO`-ztFlpt!u6iG6pEqOT-6&pULH}>F49ZuTv<8Vk6}|E` zc#$P?gu=*+^NpD_i7))#Nxxz$HgQd62S?QsSu8#pW8Auhu--%Hg+EB|NFl0nKx0ZN zOGzLgVjK%a4?j&Sez$5ddha-7sXn;aKYRua zG41P3UNDa64d&s;$S`^YGtc(4PNBbGT&s=pQ&`w!2Yu^oPcnm=gU^9}PllX{G@+so z0|IhiC1M>0e(6QJr<625D+jk;b^tKWaWLA7@;V;9bD!d~)=aU(JlXLJRsCvV1{w_9 z-$9O>i-lh>V4dQB@L#ZJ5Yi+f(_|*vfpk?=GUnjwmx38}8%y3s;dq(zFaHx<0|&FX zVXuqRgUJ#6JmRZsnik$nA}|>qkB=b8MexEs0opzy&b?{FpM3bsJxvsj2C>yG5xi<- zkwRf(!1KBK-3R7xaaF%G^4hgT5CD2GP@M|4bTPn%AJM(F6hZ0@Y(i*sz+w;oFJ2U& zPMsUhL>O`Yv-0(l27mz}7VUm3cTYllKv}zxwGfwK;mi&3ad$O~g34?KDE!|Lt5M_R zr?%6I)5dHqs+ zW2wYVgcaZ1=5`K#-Wq>!=?2%*hWLo8*^f({FwY1p;LEnQgRajB)FN%MRl3h;WCpb8D?Tc{)pT@ z>=i&IE=VzlwD&%?XH89N-sc3@qI(So{khNC(6(?RyzMRgT_4+t$-WMA(Wl??-4MV- z5<*jDq)Yo=hTXQw5Okix|vlg6;7W#Ftd8orLakUUgaV>;~Cg2T`0A zLMB0}VX#8kL{*UyKj8!8=Pn_NW1A)LhoN<^JgKK$6Okh>SmU0)Fy&K{>HP=y$Tu4fW5hJr}}t z5`#~rK=%?beEDk+Uidc*|3@G{$~nP*BWTD}fak5|85;er=C2fgxmp}4v#~<*# z+~D!uKmGE}8mjzhIg=KZTzVG!C0tT3sJbci6ER{yRg5sSN}80M-B@oql|43=V_1>t zIuHA;z2c$HB~b)#l!qyL50z?1PKLxN@u|=<#s&UagEMC=n9Ln z$T$;8mF3%}ZFV$8-0Wjz`uQ{K-R%BbIb#IFy$cpcCpt9~>zZS%{K4-Fc#q(uQ9DE} zKG<7s$|cuJEQhZbRkv%pfqo5?_Ju4;ISgmP2zwEo*(;$ld(Jd|QmJZe#RCV4kp9S0 z9sqmu8DJYAJF`ad2e%4Hr9U}%@;hV)J}n5~+$;A<9$74o24@kcJG{!H$NE_HL?bB~ zw#Ec2|6OE=XLvE7viVrVJ)r5!T9pzHU!(n#iR2EYK|Ecvt1q_$kFMnVy$3^%nxXsG zLd<6BG_}gX)%7Rzd!Oym9h^6PHW~4;FLdND0opDnmWxt*8Iw}dZR2=u(+4|A3+GLo z2yl*YPF^l@3*@Pxm^m3WjX9xp9a_BtzlK*TLPO6A#?mxn`3TF3!&^wqgrk{vPjyKG z>VBfooitO$XS}EB1*XQs{5dP#$~ng?gS6uDGzbG3ia)qfou0{>NFPuF1aV6`>;}i2 z%DVhOUOfhNPAE0suS-90l6VNNgz3^L4bZ$0)gQXwq+Dv!G#s}_MmpZe3TG{6xl1vvvH^!GqCpOskNK3~-~4KLXc97=dwj zxRoMGfIGs@u})50=CtU6gA^MwPG4$Rjt+bE2Shpqt4|F0S9|`iK4k@~QEu(E*fdx1 zuoKRFvv8~lT_>H(TQ7mJjX5VYFZtkYhuTeiR7upLE@=wdtJA?r@JIsBv4jmYSyIeP z3C@Aw24-*83k@!^y*mMU)vC}U;ek3VvOb>r ztnKm=h2FMM?)8Bq7<}{hC*FBQUBaVE}`UEwOyX?{^`?g4m=`}5TBc>bUeFo zaxxc|W!3y%GyRjtWDbo|*kzGd?V=%M@{Lbg?4C_SD#UWlr21dogp!@i*kq1nnS7r7 zoxpfO*4w|8nw7nWIB#vS2mL3H8(xHv^j2vz>Onyv@eX*yd_{3nst5Fhik)tDm7OzF zDUA>A;F5z@#4}+Po@i~U{rr=!^vnHxHLG}T|!+}G96IA@1t$$SJ^ z%^^3GLLJ#QGd6HK#gNdi+>%&sGAa{M@xy=^g63O~n4Eoa2X zUF$gY1Vp*4j{f~uN&d7kExtO@^-(}_$vNx#w(MV73=3qXn^JeCGOZk^HLCO2TAT`S&^FXpEn_2@Q# zg5NgPz)By38+!+EW(?vL2S&!ii{1B4ik*YNG&g<@Z^2#xDd+#UAZ8 z|L*aPpWwZ}P6eaeTk<>?!t%E!;)IpYI0#7%yhib*yK`L&rA&sK!tW`*r2=Og=YL7C8Udm6YM zUxIgvT^NK!O}-g7OmE8eG`^8+DvG($ib=aP$A(bsuaN)XL0c`jb@!*KaVd}G#sY(- zLcEILK#0??hep^OvCps20$&bMmqIk$^UCvT3pJ%{w#TNmGb0Z*G z7LSZ(eK=7hSn;I^Kj`>0?6)=iKI&BTt9r*d38 zyYAZC7ATlVQ6pq&VcOJbdE}R#ft~vq2eElpSp1wU(95yZRx#ld zP8@f;fb1X#;j1pzYpw!bl_}9}DiF1%MvL@-#KeL2C1yJjsb>Wq(BB zAy*t79+IG~*svS4T-?+aZafoU%(weR(Ym0k!C|^Ja}^$43n)bLONH-!!~bjt0fAUqJ{@EA(Q42FhkS*!odu>X3VLhxBhxV1tJH5eMcWe@0| z{FljL|67YoJ(7KD^IS{y z;wN0#%qWI9o-K`jeaCVQ9kK~%szz=X7`4i|y1Wmmj+6c>4uMr2QRFJ$HPGPC%;LQ# z*0=1c%GCRTq#y6>(ee$wV&a2LvkEUvG$v4g3pk_Fb*E=xejNsv4=>F2!qGjCe2SM! zpoN;>hPV=xyc<2=nuH!Z$zCx=@|px4(Iu@r7xwd7@(Q|nNG7jChVA7MK_UZ0qY7H&R?0r zGXphqpn(}!T>X<`JX(WeOTv4Qe=G&DQuSVp%l#yBQacAc zpM5O)Uk<0rV2S)rWqtncrm>4bjaR)xzP0|50`1$f`n-OX$leHP3hfA`g*MS=eOHv* zwey*767IxeWK~na{d|Q8oPgOUq-3{Bam}By*LI(SPzilj#(XwHzG!ckN{M03~SF$;@t1$Fu zvz=z;-Nv}j6bQmJ6o@U>ddWM1XU_Y!uKrl2>)qaR8c2_Y9wNMc5!9L`MOx)T-F`DH z@>ubT6!h|jJd;A$_0)Tk+HD-wolv>raOwlL3f>g#99C=oCg<~XWuAtqiCW$Mj4+&? z5$*@>y|v)G;Qh;+#Of9=`TD<2T{7}KCX;kOFS;+N03@FBrx+sAr=wDQEN&9ClrQ))iy zAy;CX+vG)2-r)hP7$f<5joT}oIdC*%Zowb2Gr&|>Imz;C^z!!l#}n79>h~z>_I3t` z9OLWpfFFt*TQg}3HP-{EhtrMZ>#yICr0!|Lnf)Kx6)z_$-w_MUbGqdH?fX|JLi1cR zm>yk@fi7VM%hpFsIWHt{GY$=k3%Wtf&}i?tVKa9N;tOXyw=+f%m!!`Gou<%M9jxHh59h&t zIip?U%yL^7#&JfkeZ{qp(s*Mohp{;yPv9CoT3a_u<{FVaf8jn}tdR{~oj{MI9?AjG+z=K5fd4&+0^J8eNGKl%@+6m`4lj|w|g=Qz@%R%~}ZoiV0`w|{< z-h$~jJyHdsFSe>Ms;SCk%Uf`*Sg$wot>E)!3qrMLsl=#S2Z-%UlbD;dts9y z<(ohC55LmAGHLYu2q@GeRU&AGgd7$QNg=KJlrQqebV-L1s06|*b`=xB6wr*3lE^!a zCv)1DE)-bT=CSw?z?6cBHe~HYpaL2&{ZI2 zpf{(X+UAk2Ktr&*td*Agax!Tl@f)ThWMch;xE;GQ@?J2zJ52aBR{!AJw>FYhS^!;p zm0^C(E2H_^3Rb37DW~fSWZQ+F?(s({&7XDRMQV)MIEAjL8!O6%#Dy`x@6}Q#jGU^G z>n}|E?AtX9vsh*p(Ql^IfU*@V3k|$W^1Cy7d7#@@v*LsJDswZdvdX98jcG*ow%EQY z{7Ppaq{8su#f{E*B{#6vf(bkDjd))(=z9$shi-rneY6KqFs>k{wSS)uY-K7k*bP`1 zXq=2SXk0Q!F!XTHAx-AiJ|~(jTgNHy6eKbnsOW&Zrse2zLI<&55xIFgFC6tmNLAv2 z=z@36SEPg+JkTpw!E7tHR`F4|$1Lp9}c3#v? zx4$s|mUB(~Nev|>S-0EUFGcS%Oj%f<*^-%3c`hUAB!;GDqgA1(%O+fEC13BWUMVXh zQ&SWXyC!8xQP_1Z2Z~usQMjU6Z7?j+uy5z8pyp!Wwt`FM{x$4Q9<*evai^fA$TrMxypHVaXrtiG zarjOqgnx&)?q9}jh4d>dOnR)poO5-*8GK%1c&98etE5qGDuQCq4Z=0c! zDI>!R2(phNtYh(2T+t5d6r-kNcX}0uq>}sAvRVGW-T?wq}N3e42%Zq4^gy zbRA3d6es9xvD-azUgiG2A;>VGWALkRt5s zh;b8D4~8BtqBW-YGd6Bb{0ml9EY#d^*M}EWB`DN_KL#zGvtw8vO*@a%i@W-hAQM5J zIa5!1HC6W8rhNM(#oM2vdVS|P>%bz(YQG(XCXI18#mO24zK@o*NbOz8n=pJb!`5~l zyY*q@0=pp*k`kJ-R2UJPL)y%a%<$FZ<*m7e9FTa(#U8#b1gSGcaeV9{khoR-)zd+j z=hQ7t0k5a0XV!23V9Z6E0SgF{k6V0{@bJFMhfyZ)wC=-^sC-6Xiq0UY=zfB%Dh#uLKD{2>5 zI`vkROHdP-BU|3A1g$y-nLzjS4faGsOs#I3kC_>GF|E7q-q#EafC|jHZ3O+IQ?pmE zH0Xg)v8nIyr-Z~|2iugBeQekeTS8QdF6_lyO55aH^|ttp*Zk=f^QYvyvDv;ubcV2x zgHeePqJ!&)sbrh=o}7(TRA%<13ukU5oFIBNpdha!K+~UJTbbpL*+@A=JB1b-)ag}h z2{eL3a)WFAr|J4MQkm78*f4I^dN(A8<@mDhJIR1WxsMzgKhW2G;7`6OpYcztC4pi4 z+D7}@2HsTW!7#(x(K0A9=Bgb0+My#|MNQQz1Ym$w>E7Nec&*$OwLD$hrp8iq`;Eyl zhHH`d|1;6}f1kYnPe7o=g>r3{x%!MPv1oZ! z(AE7P+bVFo?b_?P;wj@E$7dgmjZPjE#ubL4X9q0I+c0eK{@N?9mIh?61hNzFUS!$;t!zUn7_rt`&sIcY4TQPb*8y~6oJ zwY6a3_4Dx98D*1+gGyE#eU?_lfBx@m}Xj0I?HbrNF^hn4vc(zz7-g^xM zrdS(w=+553O0Er&e^)Is^MZYNljhP?(FO{F&0!Rz{kU`*yCZqv+$8qLoN(9p2~07H>^(m*e^> z#`Q06f71B)8{@YgIP~+ex}l_Z2oM!@WH??A@QsU{P`Q*$5tUXGbmjYbYD`WoRTsR} z*sHjV>WrRj9UCDjOC1=9vtC@P1oy>>ea6HII|A_)T%qBUrn?M;u$)PtBITOp|nG(!nfH(NQV=72*o( z++egO`q*@;ut!m7aT3<9uKg=WAQS1(MU+>+(i(Iu^U1+hGbz+l0Y<}2Xfv&)%QOjS6 zk+d7~EtZOi@meMHRGXpj4k9IYm+09uhPe1$!U$<)t3LIx|K$|?rcTtAHEfv@iiKf&Hjo130R zw!>n1L6?RB0sLNN_e^FL?3vr*$bqEHvnD665xHn({Dl>EJScH@2DID$X`Uijx_5K* z2t1A7Re(zA6)}-ov75Pbv|H#e3f%(Do}RDx{15Ul>eomJm2<60PG-E{6eLF`nIozG zwm!#5UDRuIM(=IDQwK*6S2yirW;gJGMlJ|+yI4t<+A!;FDJF@|L|0Heiz-m1rOw>o zREgZ9>B2sG=g=YKru94%4Tf{phacw>G$IRxlhecwh<$1e_zZ_d&T43;s*O7CK5sJ~ z3V0vr{c!~VUSPc+V10DehTk=zba(jL{;dT5KvbM_Od^B+Fx|p)>aE~{^?U?-lHw47 zs`G)P6*(;!X2Dn#B|1VhgkW%^mHsPV<7P;ld#hNLG!jPT4&=x+Vz^t#?}Nep&dn1o z><}OQ&kA0o9U~|D97T?iQENOyW#bdrlTym~&9At%dKnHpp_(R}$T2k<;Z-hty)e_Eip0PVr-HAkxtguTE6-n!otf5mnVq24u_SeZ+IIP<{f!BkG}hbahk?wK8-`kYS|1w!1! zFV4ZYgR+7P-=@^<(Zjn%%nsSWEm2{|*LPeXO*tDvKw#F1Kz?oc(q_3A^JM;td4&M{ zrBUh^iT&^26rimd68pkNV9xXeORnQPM^0^_g*bwxA$s`VA3M@YWb>T_oKC6X) z=%EV8Dfy7HlaIF&;9B&JC9KHEDq1F+T?u#PPo7;Ur2Bf>yvYABp_hoA4mrwPF~?H5 zj({czm6atG+6fD-xkMY{=_h_U=~;_da#U+Ul~HmUCY7yV*;+%A-*3Yb@cP1vVy^7m zac4{3{H&tnpxC{tm8H?EL@mQ=Wpgd(S4&9CEs)3xQz`YxEvx6vWx(SY3|mBpM%~xP zs>Ih4t^Jv-GW)_dP9Pk??nqR!dM+95SI#)iIEe~D3O>Y9vG*;^AiL?k2YJj!YIq<= z{O0Q06u3^{B@WxC0~ujYRf+GZ#7?{nSny*1Y0^5!F`pAqV0s5tkOQ&^lykoSMu+iV zgBI$f23_AT?o*lIfC9^!t$y^`AQ4im3SY2IN#q8rbS824v!0BUs?DEku)YIP?Cx%Q2aUNG}`d^?!giwz(kZiffTeLeIeFV z^r8c3S|Gr$H{qTx&A0B>GwNtmQ6NAdHo}vPs9=EwaEjfbp_)IIkn){EB5JKUzW*d7 zBwtlfelEKQ?jL+?!tjDj#+eO)e-9$nq}7MBBS*)>14O7+U3L5eVeqUlw%AR}^^N&I z!4UqhFD>N};lUI04U6eXX}-ak<}Qh$Lhvhw{@}k}&y@dB;z+Pe%#vT~Q$Iwf?n-DL zE3|_vVXuCSr3eORPDC|%kn|}eKOx7E0}&fqq!A_u%=W($4XE2omXp#W8BZ3-n63;!5pf;@#4#WI49Qv91z4nLsJmbGzDyx3&TX`$r1)u?NJUvcbG;_mXAYd-W%#E-`Nbme+ z3$;djlm_Fc^4}!|K#?RB9&Z@LPr8c~7CU2%jk0+Wv5H_bR^bSMXTa< zNsb`=UV@kc88J)CmXUr_K<4Rm-qY+=ngA+0MApD~{Ar4qh!`y_kE+Z7V44@XaurE0 zB~`avzRyT7vsjMbhS5l&hhA*7$YY^A404=U9mo|(N+FG6`5pg1+Pkixrn+`5NS(nN{xX!PVL#_F#4HY4^`$q@%FOJxMW#ir=%=4rD19{S?|wepX^`s#*4I}g($xrZ0qc#3bd)!J{>cjHoGrH zoeiw;yYPm{a?2l!`(d#rhswe%R^hdib!)SSZ^sB9e7IjH2Ck~Lmlr=XdOUmCf_2JC z=#w^6sxk}frQ?0t)(aE?h4Pj}E5I4N)5^dCD^Ci-9&=VE06R^qm9HPIH+Via563SW z5eYpDynL#9iM-xFJ#PZmg7QoWSzRz1u!=<=G-wsK#HK01A>b|Z6v?OzV)V@tq&8$$ z+Ts*yuKCA-fAI;m%>y{Uc|TTj!d@+UU0i{|kS1R^>hAT=%mC%a*`4bY5<6$!SFaKEr~MSL~I1kvid_j8l<=B(r}|9HE@ z)rZ84g$+#+eM)$>>goffsUwhpSN{s&&#+BUwU<&DYMI?yIgpEc0IhNO8A60Ouzq=s zV5qH7+Pod>@VyHlvC#o7Z1v;Hsec^F>2P+pRk2k8Sx08n@6zTG~* z?9YJ=`Bhe0Q4#3lueo+ctqITF%EPUJ>S%dj*?$J+S*sZzgZH+q_akUG~5YW_1=G{B{Y-?nw+8kyPGI3^=oo1CzPk zb-V$uDZq#Zp2&}sNZ$zA_Gj(n^)Y^yM&RiSrp+XBWbj7k%ud4GsY&FECq6vjFj}kG zd$1=ZlXCB!<;}dB)zuKWn>$?F6o0^yN@}~c2M=l>kZZ{N0S_ZJVBn(A$5jhvL3^Ve z38~XxE}_FxWIrA<-fSWAwQS;zi};pC{NC9kluwNUDC9sH_$s z5wg3uEH%~!*$W}l6ef7@UZBPh&H2r7^+1bf3;SV;G%wAn!AKioqOVTJp}BeS&(3gN zcLp!7*&z*l$sg~qy?*|n`8R(^PtSYJ$Ppi8 z#-~+xE`;KtZ`}-dhi;OWr)HL8?U=*s_-hJaYqWxK3soAC@Xl^LWnjH$?tD;X-0~B% zb0cSr9JlP5#q@HtIv6?c);a`J-9YHHq9#6a8Qazu*@POlz#8qD_i~Th8e}7q2GNk{ z{VNkuC7j6)KO0+>ePDnOA7Uc1$y#3-N6vTMIGwoXk67QQ7{8nkWL-v5ii7feOvGi( zRWeI`IDsv;(o{1Up{p;`rl;P1Qaf$gw1KcEHXg|ZtPzoK#_Ju2zC1naA1VTtEP_Ax z4XT_UcY*xooecz>`53fPW&UGV`~LO;nf3SDRHR_@sQqB-miI!-kjG5Tcv`xH#+Qf5 zJ~@@itmx!D`+OEvu*nxrMh+JUEjqI~1{pq$i}Pr%aa-d$Jf5rI5gMW!U~!#!ztX*3 zZ-88K_u?ZJVpJ4YqzuPtoN=s5*ys;16Hk);kWxbDlJZUT|16{yDMdB zwq?6kkXpy{TW$ndpbOn&E8+ntRNlKow)Avmkv)p@@wdINS8LC1??!hxAYvzIC*x}F zRCqgoRdpvWacu6mjkRH?e!g7r(U=Dk>~}Gdn8|`toqhUPpG;^2jr4kF*E3Ly+G0yz z7Yr+AHF~93DlAm*qWc93tkMjzr!wF@!%I6&cB_%8<3RBZo@*RTT8edG@&7FPY-(Ym(@b{b& z@vSfS=$omOAJ=UNC1Ew^Mrc22`6Ol0oooZ}r*&`7jM_S}^ev}GZXO!d3+e5ev+HC0 zkIkELHUHJwX0sBfnmKhREQML!BVmjmw*1ChGA@9yk>FDg1^zHrpVaBdWQcee2+;rI9&0rR;JPLQNF zsV9>nEM|-~IoeB0($drQ<`4i|CcbX!Q-neARkieLs>*?G6SC>%T@icY9_D!wLajh) zNf=S640Xo6|AA$gVK##b_JIxcW{exOpAY}PvAX{wG5P-&{ga6KzkPd`l4Gm` zkEqZ@j&Zlz(Iwrh_pf)uigj zbt40uXP_`@kg$j@N5C(ppQtnk#||m{yP?Qa(m3b}MHUd~P^?=^Q`BVl)<6 zg}2`Xg@zX}+|uZk*!##p@L9Q}f_LC1}s> zNm%2fE$$Nt^r=k_x+=T@lqxUv&W*z&-Q@0L0t#}w_6;FLqzZ{5IAULaqxyFIH;wq5 z`H}IFqgzehLshN9uQq0JkzYc`1wo36|#_K#s=8kLNC))>bmBKEKA1b*xen|t@o zzjvr^Z3=uDN&Q)H26t9PK;7L_kOlB4_m)}kHL~P02c4H-W5wQaS12Z3^?QaE3ffuS zHd7`NoWmfSdaZO{&3X9va|#Q0US?ac1iVS1e-OU7r_UIeEB7l@p~*m=|Yp4gonTf)X)&S1u@;ssM`=ozytQM*2m##N*s0T}u%0ArB z&Ltd)D(HRmxV?t%BL-ReCaN&i(k;`l+wM=K==rrQDmlMaei+4_btf^XBu=&>e`7|E z`9h+2*mfT8^GgNZ$kbpLVr%9S)Jf(D#e3tiyd%4RLLoKvf9aHi_TMC~k?8$gR@8?B z*y~Y4b}+8X48>H5HXvo3$_9CtYs%Niov( z7xt2YMZo|~r&mA>_K`L@jPH2g1eci)6gX1mj4psdj9xfQO9EFcj0D>eZ3@v<+P9qU zK@AG-V4vfW-#9(XC0PYM+9#g3v4@j`n%@bgzOQ%u{xF~ghFsDo^ikV8!7yCzE;)BU zQ}B5{abxPwiiIi5f<`Ib?hjliKe4_iMwD3qUr{~-%4)?w`q8Y>_H|%53?5Hu<$6-<9jb=k;O6LyxY= znjMBRrLn$t)YK9*tBT{OBYa|0g-D*3y0onLomWuR?S2YUq*Zsea$d(Cu4dVUMguNL z7CHWMW*7G?@+gh_c9m~wkc36vQ*eGO*7$M-bvf+}@hu$p>1@u2@7+BW-nNE~1xxkg z+S;zPa(P?j9-C%AgazrJ3jg*FQ+;|vtg|v45|J4LHjU2uy2_GS{;YSpK(R2O!l1{i z)Q{PJgPM|M8p36ln}G3#dg>9Bt;y*^in!QmSa(Zl>EmFwI^Q;qx8;^?zgGrp2(L=R zbsx@ZA`5g7LGk_H{9zj1CH;;_zs2;4;%f|)*kpByf?Z8L@R2MQIdhn2V50|TIWr2& z4+Z9~AJ8#xRkG({2{Dy!PplRFGntEmGN-UT2J;o5GqomkY86>BV9VGH+YDj|KvnK_ zDbR?|bo+2LW-7x)(>qDNyb3oMx+Ik-pXEj1WB-Midf#W`)}F3hWG=`SDx+4$ujN#2 zs~^u&=H-j`FL|%{>g#>7;QF`|lw0p$k$1ROupHTIX=iTflwnZcT(9C4t}FoL1B?$l z*I6mlZ8TO^R_b-G_(dlX03s~3Osc_`^aoX3N?22qkZ;xh8G8E#NPy{tstGf9Ilk1k>u>=zWOENd3>AqQ;4 zwe@HT_Uhg@aN|AiSTv-R1kS_zGZBEXZr3;xihz!xAO`u4>N_`dYpo5Z56Xs2#9zU; zqCkg>Jp-{`by3Eu8_%7N@9(u9l%D25J}eFZZ3@KL7v# diff --git a/ej2-javascript/document-editor/images/cursor-css.png b/ej2-javascript/document-editor/images/cursor-css.png deleted file mode 100644 index f9ec9b864aa91fc4d0d798754a55a89d3ac3d928..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41538 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

    nk^L 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%0DX3z{fSp8L$KA5Q0LxruubIw*d` z<|#$Hj}yHFpu-GUJ?u^n0Tv1T4vElLz!7yrMa{k;K#ob&G=tsrE;(lthX@aaecjiA<2zgr92m8zfge4iEjrPfp>0%JW8FnHfg z@Vel!c**$P{F+O@ug&Ob`9PK0=S;U-?{6=P-)X+xy5>pT1+&55^V;Fb_EXXZl>nqS zlc;oAq3NrSOix03jz5c5-@Pt%q^*CHOELd3OM!uC7T$2XY+bh1KDm1s)GZ8nBw>ZJE6x0v1O0>$?fr?wEg zlO3&n*y}-8w-q<`0?*ag(|fcUUpl4s-T>N{{a7#|J{^$yRovZIKUgnw;s=id&`WCV7tB$&9=v(xlt3|odMxyCdO+pW zt-b8o`GNaTFk}vOs!v*l=$|*BTos;id(gmcY-qrfye=bzowm>b-P2vBc$TAXlpMUz z;E3TN4~6;%VC=}r39%K-0|87i!WR z>xhPtTP6@*2~SMn81inK@!)vZV7jUg736Y_Mydz&5bn5mAP+XV-YB)7;ISL!9e=dNltvJo<>YiRMQA z$2QXgIg zxS112EV=;#PS(2Oo=Ld5@bigBVAQ5ap?yoAntMt(x0vt8;*+~_#%{--|Mg}+N;Irs zT>rsOQqmHljDohI@%M50Dgd~nj!o{e9=bYoZPDwe_-k-*oC1?|*R%KLyVZZu_VUoB z#rp;*w;%n1_d^Om1C=sQDkppH4tFTAC!I{)Z!dMV12{WiPLTMWeZO1Siy2i`s14m? zNk@ImRxwM;!u*6RAAqD5Ikb?J6Mj#aBlT#F#+GDCqj61}eaeN0LH2#79URU6WWfNAs&xrrtW)4l4( zk9i=+kSaG@4_OadHA$9z7E!QqHZKUBQo3d~qrz(qz_lqyFZ$MRSE$?Q`UHx*( zL)*tNJrwyO(I8J|5@3uq`0C7(Oy-V2SMP$pa@&t^ltHSiYtrS#TW&X!bbi+fJBhMx zu?zd<^Doa5JoHm0Qq{RO=xi6kGwtrC)AqcQ#(42SpBIcgwakHqp`Xvc=SUmm1tdy) zBs|LDh{hK!Uf1-qa58wRpE~RIDD~M@Gi{d4Y;GIfQiNola!Xx{PqY7y0{n+!NPCTG z`arJ*RNcEx0KNj)QdFTA1M*lLi_5!W$%VotM~nv0p2y&W_MvN>d7I+-__KjZ*>6&( zknvzD!mLfW?HD#HFIGA`&-AF(z4<@jUch_a3lSYGIhIO+v2sv-Bj)wESNmH5%DlaI z|1YDV@!6u3!o|3mXRUFr7C|R&fB7_4aWTRQn!zBgfyyr{i&?;qnMh?=iNp!54P1t&v06Ev`@Wgg%euyX z779^For~dR)KKRGIwb;D;b|(1=cp4dW(KE-U*GWtu`NUtiw_S5Km&(?qb%-fjc@Ji z(bW72P&o=3`r5fElyCYyR{hdF?Vad_Wm4svvbp=oZ;_^HT`G4!@0G~}@GPHe%_7IO z_Z*ihWs6B(7|Y{OQ14y@3^HF8+Cu@M#CxJUdAzf`=^isPa7?)YJLG6(W;4$?o^Tqq zV405ins->?S!ucTysUTd4f%IgWj2loiXWbTN34#MK=$V7>1vquw*cvKRCuc!IYqry zP?&MQ^mutpoqGRjc5bHxAIVHOPGS_zT5`ezilvb@(Q<3u$Rt^9!=mxBGJZaeIVx$; z;FG?U8|@gprO4ALwW3q<{jvOgxV+@>IJerIL0P7upf>YhyJwthZy9)j~- zYcz;H_9%79o+UqA6l|%eDP)2)8&$S52ADlSj)E|EE7d8Iw}_d59liJCJ>oqF{cYQQ zQ`}-sgD3UTlv#rY+y&C3=HCE>a_8(HcSCrce3sD)dfbRXL!C_sA;ZoBwRF*Hp+__C z+Nsgl)SH^WEV>jcxN94{+%oDNe=q(iMUSQ6mLFuxy>%!0HdB0m4Zh17A!QLdIxgr` zuhRb9Jm60VA+~{0)~P|d#5Fb4WkmxVkQ9I?XCqhfzd%iY9qF|*P5t^cox7vKvmjRH z8Yjk*A>D7!f6?;zaYHHD)>c6fs=EWn)dusQwD0I@^ECrFqqBn*O!2sK*F8aX&VNcQeVr*=x zJ18WM7<{2P>LY`p%{kc5e@-j~^Se);%HR*@@YJ?>qRkkUVSk0`1i}=C*@J_$Q zvPTfB5dLaGux)#KR9^bj9kX|dn5i67s5*N_y?C_7Zs=Oebqzg-9p$mG3SUd{nkI@e zpfdTb%XG5HlXOfJYky~C23bGf%Mut7xs1au=56}*%3U1~WQ^vnNrlwla&BITNtdZT? z*T2)&A?O*A8v4Y#`wVqrlndzd=n4c(?)w)9+FJYGuwCr#M00qqzgZhU0yHNY3k99k z*Vsp-q?jl$yx{q-?#9ibT)D!{$wkdzc78I8!#3l&M#hibYoBESo1dTR`AVKWzilimwsx*yhh)$zH_=5G%D<>?ya1WX{Pa9iw-#TB7WI_Yje0~_2Ijo%bUF? z`zWPA=~L&oEdT`0yNuduEhG|E`7 zv!1_@b`cR%ZrE|Jc~7ESz9)v(-86p^?SS)%)@a<8#;~#EXyF@c%0?0!Ml|>n#oQhX zs&Y3;2=7vVJ^K1!{bKT z@-7P`q+He5|L@TEk8WA1TR5Ze*pqRsbg!X%Gq+Sn20G?zxdtAf`!b5+j^hCSrh^=b z_rCYW+1Nn$^m(W2&4(8W%fIi9qJ(aS~DC)ES&f;rqMI{L`V>fp*S= zZQcQdV6*72VYfTl+k6qC-kO)rbH7JTfAr(rDcOPVVgx;(>^+m1?K56}{7KUO@AJ4| zF95*k|D=ca9c2fg-hb8O0N?okzOA^_Qu&?t_t+2rYM=cD`Sm~QNFrkab`-2_fL!0K zB>FcPpDd>bQlbq=o;%uPYv%02j-rq=4c0g8ZVM%9oXivWvvTqW)3RCY>yKuey7lV) zKUrP3_^95$?a~~j$4^lP-_xh$D~GNmuh~E02A9i!uekjAcTxAz%>)%73?-|wD!*e( zblXWb`%<8D1$=TUh>d@hEibf2`gn+L*`P z(z8TfZQ6i>nt5VEQvO$>)!&Wl1poVpe1m)vbo+w>183vLO?ok-wDHi`@$W;X;O^hB zf~REZuFP{j@u+)0WZgB@wdxHQR6Tfs#=QXh=M{B?f9c;5hu!*za@QXSNdP{1P{1$c zvE%z=1~!v;5pS*cFK0pFK-+VH3Dv6VOyFhW7D^N&Tqb;WqP+;=kRqmv53Y;IZ5MOSeYTu~%4C?4#<_X%4TgGvEUyh;3y&Kr2B{^n4*GS_-&jAF7f%Izn#VIk-y0+We zAv8A~xt>@t$_bb!{Dj*$CSyY%qH|W`ESDK#Yjf727kk2^4>?*k?gc{t)ww1YTPnP$ z@6Qms@UGOVhPAaUN5n$>WW|fB@skuSeh3Z1`)ZgRz!`gxy*$ycI4sP*_@>qbg4K>u z9|el_ES#RxCC6jlpS?D+QS9U0)Ku&&ZB29~1U@}QJ#Iqu45oj18A)t1sy8wJ;h!cC ziUN-%I1Xs@jH$$?USlnuk_Wx`F=APLkgN4I;Q&u3yV z(S5pJ8z`2&w{qb?0ol={@#eC?;99LNGKI83)zrh{W+ z2}H5U%_ZG0pE@;ZO~2c`)3BrcD^?(mL$6k>#?w}M;D`tjUgIRfuRJk97iVajd8;Mk zUQG0n#fSsY12QJnh83>fEtx)z;&<(2RhJeVHXyY3#gAIU3SK4w0R+0<@v@<r+X zd2Rh3Ps$qDp+JUu$wmeP3*?9=#|d?&oB()}De7A3m81#lnpPWjR9S3GD8qipOk?Ve zZ<#MX1J`9+u~)=sU+Bbw3uW5(xHi84wCCV;XRD1%$62h9hojp28C$`6!k+%+HLN-= zC9Bx<(ik#+oA*9*Urm$^9t)6qssq=}n5+Bn{^`rnUJdXLYf4k>g|{&OS-zoIivm*2 zlQNT&*H9+17nh3qN1q8iycMqKPu*~%H+#~O_ki1$0fO{j{^Ee+^-82l>AZ)Y^tD*r z2}A1vGHR)I7l3PRyfao`lcIjm!rqw|*)ylrg7YzvpX-@ap|T(3vR3!0+L|tG$FI-2 z@F=HU?B+-TVD>zm)GPA>5$q7$P>&ww4JWe(tdjkyS9As`Shx9z2+%_HrH%x2=i<88 z^`N{i&5>vOPLS3=;kD;{LzTXWHPGSKu>Ll9vkt=Aw5pd6+SwU7U>)3_-P}^^xFq@Wz$RWd@oax&WaQ}TBM14a?xrF&Ymr|L zUHY#(wr7hd|36mLSvWxHhD@GcqQ=AX}=Lrkknd|C5&n#^zS^0BAxb@gwy+5R$ zNl_Do=HuLazq0QV{vL{5l@Nk$C}^G=Li+!ZHEU{#B`Fcuu5NAtBkVgl|NK>TXB6z$ z$tjVug#B5&FaX}Igjsx%5Xluc{ui9;kMONc+jl-8(V9%DkwcrdIKRl%!;bncogdm1g|K zb(d%kTtWdJ7W~t)BOoY39e7y?4`lBOBj;zU0hG5CJ1Ww!3?m_E_>XYKW}A}XvnCH? z3An4!L7@ZNs-ki$T_1AA<&gBZMl?S&dWS!KnDV`34BXfz$As6hY$1L5u%n_fVeDIA zgG#_fwL|y9fBH6{1HSZjApIGYb=+wGn~GR}dK;kb=-~f0KKVxo_WwLE{eIB=4`XF3 z_iR?gl=wnLP|g#4sBg6YH2nzpijNh1{ziXLR9%Wddb03_%}l3cOV5!>(|L{?@~b}+ z6=I=Yw?A~WEApyeuz8(KP4sQ+p(;WI-f$Dg__!ha`#x+Qd{P*r3Ve6F@?jhp?cmmX z+9;C>|D?goMbE}LMq>k9+$s+~MFFQuU%A z^gvg$}0e-q5Q52zwTWMmcjb$=;1^X1ws#tmJU=zm_k~KLTlqEmRhfYw^fFZKr@N2(yCUBmgr3NU zC#BIZNHLiuCAtF8%Vv)DfjBXn!$G0>$-}Pf0N&j^LP!OFgFjDcOS*rvvof6b*s|`IwA?54+y1~w4MR{MlP!aH@^|y zZ=;--=Gb@Tpcppa?Kg94kBGd<^OVGr*7gp?8kGHfmM9Wh-lzx@*7_?7*O+R`t8e63}e@ynN8NMOHOZNEv{Ihyt45|seFf5B8c3vJ3*l@ zTWz$deB#P9xU<`a|75`#OnZmyi_XK!sGR7PFa0)-6VD^OE~M#Pmja0m96qUH&?2FF zdcNwmW1e+O@ws@(&94c@Q9z5gTHKfM7InFF5c^I*#{MSDo6x^IN;>E3<&Q6qKsWdK zS>=7PqsDHkwPcb^TLp64^>QbPgTfSJr4pPE zAlRIon4;RU`6|_Xn`%Dtolwy5Tx!Xr07B7HZK+Syb&Kg`S9Jg|r&)E!-ovbz?9R#u zK=le(A5MeTa-hKKF^+ei_ByXc7+Cma-Ay)sFl+qnfrB{NM)9nrja6NGB}F*V>V}1= z-v;1oyc#l>^O0|pNuBl1mW@vfg52=9S3fBc)X1iKLC{W{)DLSb$*49<`#HrON4z!J z!6S`!mE^9vnsjlWIW^Rmh-vGVAM|h-&;hOd_)##ln`HoETTp@I8ynfsDzruK2x>SM zLvdN?6B=Z^X5uuK*Y#eEO-%#o3P$pNNgXTAKNW+voR| zJmTQ=m))dWQ!fH=0gKL|=*<;@`s8q~Nu#Sh6G%J-EEpxHBs>Lxxp?FHsSQoGsA_f~ zo+|OJ6?+0cNz=UHEOzxOkyllwz690Q!Fw6md6h^pJ03-`KFVqg_XpD|OR3yS6_!`k zPf^JMh{k-{w@numj(hv9><2PNz>xOEw6KjPg02}HqPcEBrsR0t5!2oxk2CLNh~HaE zLA3;%s2w)74NuMi=ZuC-H>fX0iQiv>Dl2(~UHI_Csv>4sZ3UYIm5j?D3-TMKQ};op z=4xB4i}oQJmTF$-@Ff*ZBs>4XV*Z%wuzHpA;l~` z(ZR}nl{?3N{KDOvppiA0{SXU8+hzVN{rr311^3EY7Y<_*nVtbJdVJn8kcaPbV?{O< z4-Hc9YpRT&RA1B`)-O)5re{AA5>w_{e;t>#TQ+(7E^qUlQmXdZBtNOo_DO9e;x2qD zvKquO#jR?NEqv1K-7jTW+GIm`?KLyl0T@w;n>75J|6qhs= znUI{@;PhC(%;(_A%!mwF4Y0Oli@^L2jCh=ydUN_5PHUMQ;k7eQ2^YWlCH~CMAB6t| zyct79&#DmwbwGUkb8DMyWJ4(7W=z>c3#}%gTCDv7Vrp8&aajcW&ceF^5V#LfOuSpw z06AT(=IGEqwJFb_rP<`oVym(H+qC1Q&Cz};tw*4xLj`pKwZ>`<(FdH|O*U)2K(qxn zPwpKK+i~P>II@1l3tiC}m-s!n{pG->UuCEd2Q7sA$eu3$S(8|a>p@+CZKy!&K;6E@ zswrqb*+DH%Ie2iy#*y)~+mrV73U(jcLqATa^7f=nM~Cbk6Jraj7ai9ZDYfc^?$n%9 z&|)wcT<%b<@c#4XJ$S0sXK!%2rpd_f45krI1gHSl`(F-tIrwdPoBH;7LK7a#^eGfG zwz9RO*A;G7!{uQ(3aEgO1F4(VzPxFWp|_~}H4W8|qC(5FWd=aoU@~u53-|~yoE7w; zN~Fv%vc+nud%SxI*(qduY-b}Suip6O8n-F+jY?H~mHo4ePycM=+ov}Ce+3we}i zJme-|8Y&u`p^QURC$25Ju!>syp3T7gR}c-X`IfmZUPhU+7ZK1iEs(f`we~-}g(V?- zAR}l+o=uK@r)lLmLslfti#NzERGAAwZHb)r+kFSPfEKKL43XS^KuqkiQ}Non`%1%* zBj@`dqDu9HUv7TbnRX!{+`8#1@ZsRt05Mx-M@3_AjQWa{>hOKUUGl=T&9v?O!uq}e zCBNr>CV*Yzhrjus`hD^P*DtBwtCW7!)ARavxbQnrbHP@-?u<)J%5WQ^-6>5cGki2y zBP!T;cQ=RwOBT%^ut|0U{6zrB z{AaU@rRs4}p z9cW!oA|tQb;-jcn=y<}9XnVrq=yjW0Y35(LzTN(>MTW}gltu6}o6@$8c{%XU-!5eP7 z|InoWTSi$^KBe#ew5Q4sd7e=v)bNEI=cr3-X;`lsTVBA^Ewjg!IjBFR2Y=H2xAfru zs0Z->yQ8t$XaF>#Dwt2npMUjD^=S z83)`S=kURCZi`8QH4ptp#Y)8qj?+O10dM=@oUEcZXU?b&51p>LP`%jc>tfMIdH(0-C%wn|zaYOsWK31SToSdeI85}6d z=NxSX{~O36v(vJ^zrCQxlX$Vl9<*a*EOGvs&5`O1g)}*IPr4q#*K+2*?_v}J5g3D@ z5#G`p?w*oGSN@3ZYLnKsA7&&b#-+3EyYDBb2%-57y6=E1f>Y3Ii3u~ay7lO-m}rgo z?kGb z%gGwCo*9Aje z)01W;47%Gr1X-2fKaUuqVA*M%5FFn>8-OSH#m|)kbr``-JR-;w|IM2BM-L@>hm`D( zQXbR)WOw|7cIH8UIo(G-)yxZdf!ay|plCV(n4QRk4 zJh7?r2T)6U@sB!y1c=%hTf4q`W(*bNug4d(bnS9In!?6_yiP3GG= zWBPieJf00fh?$@uQde6}{M4=i3qoMfNpkpzXD*wf7M3k}r{jh?%LY33b@#m97#3L+ zrfkmS0>MQPUJD0t%GXim-H+!6VX-~8 z_`IZs>dI%a@~o1nn@n`xp+A!&BUQ=qa9IS%5^y)rFgcJvBq=ydV*EuP0_ivP7Fp`( zTvr`XJxfY+`0yKz#0nxK)4k9!9^SR2irJoKNXE~kk`ml%kc`YVU#D_AVppK%rv#yc z2dRUA?p9Gmq3SNJE++GQaKj1;7rMgMqz^N#-&e=Zj^?2#taylWP zx=C71!_hTcseC@*%VCh2#gv-BCr<)KLfmDvQAsn;j*xvG9&sW*Vl%j6+X=c5-JUoE z>RP?#@X2G&D|vK{tRU5!ECA`uQh>cpeS@B0TvFU@aEsx`46x3)$?vcCx85Fjra6^G zWD2UTSy%z;WlLl!`&mGtbsde7e8?R0V<4yarmwe_{(~{(O70oA3l4yB5~wGKB`|8M zPX;+8Cz(zMyB|*hRH~?WY-2?l7{b4&aqPMEbyxBFQ8&fLRoH8kmp;fp63ksXt9n5S zaH%-^5uX8oTaAzKKAl7HG-HFPo?42V$`=}L>VCA>wS5QUus|>v`iR@|jz=r`QXqO+ zmAHQFn_u7J$^a~=&|9WD!f%-4=ktpwt6J3Bs@uGxCyQ#%;7{r>nAgmjq`+XDej$W* z_O^CQXQ%u%16QD%O0g6Vti1&ng%!vQ8+cyJR338nM@PDyo2GyfBU?cA8j7a$hD_t< zKTO$ECJY6UuN`K1753zUXTcD5X>E>_#L6SFGJ;e*Q7EVaIF1ddRphkny$ln`Mk*kI zR9*&BVGX~rrWm)^QC)!oLK2s{s&o2w!?dArz0D~BI z?oM|IUiTPsxj|L%qm=t;IX`OG@iD~9;IqhyiZw>}p1h}N#wR9ID&L)9lgCe9tL~^E z_HNRD9=IkuRECd873tLAlAr$^P*7Uvp#(n1}ax(bI=hBuQZu)8J$zlXGMzli4W z4TfI-SXT=qtK`wA;>+`iHa1THZF3;~u@Ow{%bt&ww#Lq>q^C>IyCWPq?LtX7R5U!V zeDQYqM!kIB5U*p&X035b<&uRrlh#re73e^ea~C7V-iNUtH;oW0@En+UvVx6k3T?V| z1rg=RzK9uR;-1LSab8p$l_p~&JghjZjvZZQhUwQ_RL3P|uae{xmk%jB@_eIXUX;yr zhYUjxQBdkx;(nQLDmK9zs^by~!W`Mvgik{HabotUEAT zt+C0A$K0>uly=kpJ>qspY|L{<|4D1~p7x!COl9?)p@6FLBUk2ltmS z8;9&bSB)jl4$3@XIIgk}lrJ7{=DiT$1T+MfB+J$`ZHQLGCOxUfV~MtFC2Kj$yKuW` zdQI;dO+KlaIe!Y^t?DGTK!vd*Bt>Uvbg&>xQt{&)`txyt0Y$*Zum>TA4R#71Q0Zl^ zapP3@l7gu9Lq+gj0V3_u#&A@Y*Q?JApWKe!G;6lx{Vtr4tTiPS%aoJVXbEa+Pm;6s za+^)@dfvBMvsW=}h|C2$b5WBK{9>}5JdCsB1!g0amlu8h^RFw|&)x z34t~89lH1$Kv+gk8f7@A&_Xh=J)dhoqH?=za%#%T8?F8mCqhBy3&Cl2H;~0E&kveT z5w78`-s3{#HAe>n5R0Uo6Z409;csHE+1B4n84X|qrGmy5)~|XQICP_pC%@J@!JeAk zQ0maoMXO_eCD!7a-!FrX`#ky8IyL#QPQh%dye;lEG1fjg?U`c=OpX8I*P7AAmj`fx zq%&+k*8)z!3SUEUizd#0L9k;H7crMMJ2-2HS-bJkzLW%8nWY8j>81J+IrUzwK=jjm zn1+AT^w+g&V$(Q@Z3*Limb0z9ov*Q+gBFJB+N5gsHpFVsm(v41MXd3}UYP#^($Jx) zQ8$1ja6}Icn;Ef^<5G?p+wWdn^z54JE_1|F%jr9|j#P;#+;CN;qtKjyStL3JCaIx8 zhBXxDkbhMNan&v{nPN~>PxHK`IRMQk? zL!@n|#pxPs4xj-&!}h+JhZt}1%H2V9aSS_DHWWgI1Z8u)#Jue*Sw)xFs~rTyDCAWT zODv){@kbvQTl_c%f-(67 zn-&-tmS3dEl2tH96Uv_}v<=SRwM5 zB>Bk)qU7qu*DMhNxMR4#>DurfHo@)-^RY)-(a;PTH@{VEinxz+86Eef$96rNPb`lU zC`s@NasX%TFx{%7)KP!Q1wA5~Nqn+;(Sl99!@1LeCtb;WEL)TAcSK&2kzPpk{vEe= z3X>irIUHhpeK(QhodSc%{}v~ci@)~TT9LltqXFyF{BI?my`?tqJTaAmaYxl@Lj zpjqBg+A*Y7w2xNWBxkmavzGUp)Frj0CkIK+iJW$!25yj|#$E*x0|kzBU^BTT%;MmO zixz7+Oofmofh#-cu`CU zG!7wE#S;B#%=-Wb;!}1LIuV@5hr5Ctt{S75pefzn>@4{;lx2`!$heGDT z8j2RwFo-+pBb;Fci+8*@Bn|TFv%Xp!vSRNQixusM!M7m|j`ibL=7~2`cypPCl@|k{ zNdK1W&^XirezD`;WG!Zifi>qSFTJ*vIIRkvVrE5gd$i|)VQ(r5_|@rldPwFBke~^j zyGg&Ly~b6rkO_{lkrZD?#bI*r^yRuht6tYt#2DI-r!#nkrU!d$ z5xU&W65$LxsN}6ybMal}+zp99Hoi2OH}B6THbuoXMN0N6A__e4%o>0VaUD+)cdJOmv)Qpydu zGofr2gO3&Ig>*zgZ0{ZFYdIi5_^k z-7SqvG7OB_r%+%Sq8YK8PN!<51Ur(S73FkKfDUk8c}&wN~H&hixRl6gV^n{P~p=a+=Jk4unSM_PvpF zl5e&shOtUJqA7(_>+4m7Lvx6Y3G;5UVXybXMU)* zow{;8RusLi9*i2pNt%vhr_>e0xi9G^oe;2cI zLC{ePcbCSzKny&4zm`$Wx}i;ADw7+GUzG;22l+Vb(TBYp^mmZGz5GBW& z_Hn@?*NyqP>yQTS?sBdJ)-#W*ezk>5WBN*O*Iiz4{B1+M(-zVv>-`moQwEZ+<40>v z!NQ*67GR?%{X23UKi*(B9vUNcQ@wtZY~I0l=j>~qD!7PuIBe8KQ8!>?-7SUs&b9(+ zQ!yTU=)%i)e3G}Hy^F@2Z6>S+GIax}#)oppV?T9iQ+boydG+0A{C=0!xS=)T&?t{X zh`l+brMrqgPM}N7lVVM2?5*Wuv+~w&=Fh$6aYOS&;=1F87)Xi?nI3yHo!W(c*i?R* z%7f2T(}u|1bQE>92x&95%#Vvo$Y1>lx%c+tKgCcs^QE~ne-1~0pZD+n&(E8C@}GU! w+=c(_!ymiwpMChxKK#c9{=eA3kDcq1Q`@r5XXZ-3HSG+p80%DAz8Utv0B@S^!Tw&%tzXmALPy97&ccL^3eKyY_!972$w!4s0;1cD}L@FcjqTWBD-TVvhR zIrq%HIq#1*bLM{YzM1c(`rCBv>cv{MepS2nuhuH~4E#GlprW9x03abD0Z$Ph0KP(y zBM-K>0RVM%fE@q;OaK*06hKDQ@DVpEQT6~TqK<^98@+w^^BbT600RGQY5)V#b_a1U zfw%zbZNwkUpS9oRHv+#A_>I7C1b!p%8-f3h2{Py`b0>2UXjlgdNek1TJ0y=;<-~reJetX!*xZeWm-{{sASMZRGq-fK_M)}0wzYQ=XE|tUW1+RT z5@*pDRKKt8CTneHujKDxt>gdbv8BJGrLYx?qy#Ru7+3`C?B;CkWljrrc5?9)0gKcB zpdPK-?Qug zGr0am8m(OrOwkuX3E}gAEP#QAhK`1cfsTfbiGhKMO^Acw7}zBE1a}C@Nhm4ENyy2l zXjtf|?lIjXBd6!4XJTdJ;N+mB<>BXH=VM{#VE?HE2?G-o8w;Bl2ZxxQnw*;bZx{F% zfDjXaAOR>y^Z+s;5(*&_yaNCs0%>T7#NE%_-Jb;s83h#$9Rm{!8wVj!O8_7vp`ak6 zqM)InBC>W!L5SZ0R6;Z&I$mk?yISTL^zOubVM)1|3^Jd-l4y?}GV)t^Jj22!B_pSx zWMXDvWn&i*eDF|6SVUG%UO`bwSw-iuuAaVup^>GPwT-Qvy@RKhw~sH_&p-TmL}XO- ziMn z+bbJGjrl?5IjSe6e8cXaGtIlWFn5W=f%-c3E)FZXB1SUrbWEERnqCS_=3~e-h2$w? zsi2X@CH7Z1@WcuZj3kG0jyz&55CClA#RshY^6@)(6E1a%xNFd}Du7!ld1 z(K_jo1(7q$GkmA3X@(;W^&{rOqU_yw3aYpdFpZSsKQi0D_0md^s>B#$e52D@*gW1^ z>dvY}WJvwm?DmJSwzz%R*^h00LmKkhiQSurwyqTe)u!F#c;7b;SsE_N9c0J^Y?5Pu zC!?7vtVo^;_N+N*gA@gMp?_&sRWHIz1+?Ue@06Rv0h(brU{VMNM&tDyYNKufByW8( z;DCalVGeSsG8~{YklcyOz9Q1iEN8iicnSw9_(C?7rAX~@x#)6G^I}*Dv}06|IsuUw zwb4v;RDb=%ZCSNL-%hOk%Dfoz3hae$UbQSRZLr`jMI|+~Fu)N4BA&H-F!I9oMV(mE z$}5)**L!Taf}YcmG?oaa7xfIq)(oEot}2V>gAyOr*HK?;m3Z#5chX|B=7nNwircd% ze9nA6C)i=cQQ%v}J+qdQclX9DLZD)oC9fejhS$`@`!M728}&@tRa_Ml<SVenkI4NKwTw#KU3yY<1F*Fh zK6opli6l>~$@do^OQt|ayKvxa&g_!eO6#;Xp1EU|1kf6B$Yr z!1ji3)Z=Aw$Lj8(ZdR255^VP&9ouea|ce4(vB#Kb^ zA{Fl7%iwZ>gEJuI0pIkqE#CwN;8FISFlk(u`H^f<;wRR;bM9>Jm{|%L#u|DU(ikvJ zLTxRQDNeCt$rq?V;n}^E=zSZ^zB91RnoqGtJ!%paL#!naunMk&2*l_Lz=;s_*VHcr zGV~c4p()r5W={G6kU_s2{*|V9BT=(joIujp;4yu%@6#;bogdA2E^#+aJ2Mi^w`0ch zPZ~DRmvD7IW=>6eJp=V^7txRKI{0K)_ic%K-^Ih=D#d6bsvI~{u3MZLQ#M4}QdY5N z`#G-xohTJ&A+H={1di5@_|Wr^t34iAoI|y4ndIs$9N4L8yW%Yw1W5k!1eZm_XXdrtmH`24QkV48Ww?GWwQ8 z-QV7wm#A&uY^7>D91cHqC7e+*G8jJaxg8(I*!0)a`{3tZ0qwf#FczQeh_gx34g4~a z5?bIxtKSF>PW1;K4o(R=-P)-^UlRr6_pz(P zcI=5Tf*VhNJIB zG-vA=`faEEYT}8KA%mM+&-X*=3lh%`NqoV0VhU%ZNzRdVL!nGwSP(}dzW&`uWQ$y& zjI)zd@wYx?Tpg2|ZHxse8de8T$#>ar#7k*XEt>V)mk9-(83+ctwd-UfBhAvma6qDV zYYrn$AcRm67U4naeo?-DX`(TL=)ib>Op(6a?(nOwb)mOR>rCJavr63)Vf+OD+)szB zwT4Fgeyp+)Ly9dRR51`JDv+}NIBv;7ve`#SNMnVf0%tX$$qU9^KVIR}Z;n$eOD?P@ zE{pf0Wkaq$a$5RRurxr~Md0PdE6yMy77t(5YvT9Pb3`u`Z_&=_du{V$I zu>y!?k;14QCY}vzQiTKglx35@&cgrvH8MtNBrAm_Pm%$_C)k2fj#*C#8a5YOQseCh z0sD4@?+1zt-#sgdOMV1Ys2V|YS8(xU@BR36w@--o>q+)_%waawjr!z`F+=X>6peA= z<2?(D!tQH1kKnYvttHB-+UT1>Nmc9TXK9h0k}ry$N<_u3Rz71)WiT;Oz&{eB4vx&3 zlwf>NzAPr1WAZ7%_pe?d&+laQAM;ue7?Gi-L3ys4aIPeWr z5{5pTnBt=#)@7Of%13ZtYNJs2My}I{g%>f+aRX%SY1J0zk&muE?$_$CEWb!7Eqo_( z)Hcr9#kXi83M$@otRh)o;u&W-%!r|#K8@fYu1uF6_dQ}emmF%|-Wtm+zt@;89hT~z zN`sw04VIKx<}2!m)gKkJwl1HK&y%T8f*qgTa!i(0Bp-KCy^3bz!vIBB@ONp=L+e*I z&f^oPJ5aZ_KVSE22XargF0TmI`3$7HSPDzFPiViN;Kk*7U(uo%9am~S>S21u(sxU< z>^U-W1PVjUOcc(fp!5R}SBDs=d#bt3>@c`?rC07kOK<_}f(NlKT_v8JReG0Y6EEY6 zew&LJQqUtsktm7*$8oV0iD!FwEKHLqxaYNO);mf{40~Vt(J-tG3W2jbeO@{+RZQ7; zBnyQ9uzuuuQ@SarSwf-!kRvyntyp)aRYn&CDR@28!kY<)19y3c%?bk;Gwye~j4QKa zzI3r&xQ|ip8WkQvUNnCqRLx#e!B>zzU3F?iZ?sW6d=Ko|K1-QZMARd>o*E(=EYq9; zdDz8PVU?nOIMGGrqWfOsEcq7S+*IG*zHH|q>Ws9&-rJ_)9*o6!FN2feJgU{G=cBDZ za&#m^ddLxcs5C?#8oLtYBTbTCM5z|Cp1Nuo+#Fncq6!9e+)?(a>xGei-ni7I+5;Jn z9&z0kWSME)zt?|xj+l}CJ+uTK_-fkILo~?HrU1lx!#=O)$0JbXCR?{fOOta!)72U= zUW;R*uMv6v%{p_*dLf~RHb%+_!D{B*wv_(nsy}7?#6&=A+srnqU)9Gs%e@!FF~qmB z|7rxikgl-60f_to;ZQZ?=B8F8Rxz2$0!U8CI(Wzz!TlX{D>m1h8dXCxwl5z&v}_RE zTBZurbP}+u;n44>&-YpbH4*GVGgpEspfW)+`=ZAWhTW5#)@*y?+{SJLxCH1!&;x}7 zV$=Afi7#?)j)$6ZYQ%lQM%T{Qu+IYUk?l6CaP=Nc+9rlxM0te4`hq4w(#AfSUJr~c zw$6(gt{>b1ZwJAOS`1>O8RxriY7&JmNc2!%9q~j8*fsOBeH`7*Yw#dsN|<~|$3n5S zWvZ2DXkzc1`TQzAR$ja#7wd%2R?aEB#!Un-?Gz<&>WJs!4aSz~LzYPOy1i|IV&DKIP-!7gj3D^+S80FkH@`zTu+)_tGVHdTXYlH(7 zcCIVKcQz>(-}ht^KW+v9YgF6hfIHLaJ4VVAu7#I|))DD;ECw-If={oBKk{73T$*2qsae?O6kxi<2}w}@Yr_}A%!OjZE{;z zHqFZ``Te&om>;jTYVjl6UYawadQ#yHW*eRJobfX%CUUD)UcdjeuF#v*TQrNwO>8(H zfdTl*g8Hh@G%&XspTD7vHdJ0;tHDODujWwzX&Ljufe#IE0IXf}hB@u(W$t7DOfK(R zzdM%~UD>$%PCQK6YN3jrAjyDMW7UL zjqJEsE6yi+E4u4JO7v-|s&Xkl>InOC86p{JrZBm5$w0_>?B}Z#{yd}De0Nc?MHXf2 ziwE0kp*sjiObZTRJq$PJZ*}ENoZaX}ee31gq3KegVerS%N00z81Dy{UWq^{6O+UWdYH^Ovkf< z!022x+g!jhQC6>>V3jtBXa$`@$Qou*+Dg}!=z7)Q@%Yw%B2Rw7Hg-RYNp>P&;$b$^ zo4w08p>#fctu1{=AR|N7wva00DJttRQBYW=Bvgy+yrBN-joc{b37MPKQpN0c>$5ru zdIwkM?_}2xi5Bs>dEeg6`ttn*`WO!2mW5O`g9yFmIivPpBC#Bn*Tz4X*0VaxG)ZW+ z?P8G5aLH<)YUY7#M4H#1ysx7m$QH(=cCw5Fg?pMV#2i<%XSMAxf_n6Mj*y4O4ipoX z*SSvQ9(#ti-$<2F)-@#)&pm z8a`sH%;R`~Tool#!B=))dY|LlP0)%?zQfQscRoyE`<;~&FORpe&eF( zqLGT-x&3X5IAm4#&r0nhG>RL>Q&;b%5{sqXMbuG0lCY;RFuRZ39S6nxf9&WZbpL>{ zT?+@op&&_4H1>*94*5%!qmYE`7jq7jE`^87`st8KqXW4H*VE`IP0{5Yp;&&8w=i*@tE zOz|Ib=jH8P;!K&ZZ?}PygXiga#y@<%w?Hb*_A4A0Q9XH-5dj51d2rD;QeANW1N^zQ-tKFX z-E4b}%gYql?bM5hAD=<6W-gQbEX=gNm~T3AL-y?$lCdB&?MzDIWH%fdd&=X(8L(T> zVTET$RqF?HceIE;SA(~laRme&mLz4a)iPoiI@5c#?<}ZPjgLHC(MBy7C?iD*J2f3r;+7a+}ta%1kFe z==#&rMCi5IEqZHu@l%p}odZ7U$;13;2~3)DIJfaaGP-VPrh^?T!uMpttB@@N!-S=vQE?89hDn^Onr z0}93M;66uZ`jIu>jrWr<7RP-rM~T7f?yBGyC8W1pREzfiu< z95~m%|Kzz?r-w{i9rkxm(~G(tn1A=Bz9@bIIvoh5R~BQApiuB1xNnG{-vt3?6mx1GTB06 z9?s3N2pchrrssl<-@(32S=k#m+^HwkMrO2PC(d4tufo`L+`Q5#3Zpwao_iFKWpCSFfnGu8J}x-;OlkMBIL z$k_9}FHeBHM23q0#JBve-JQ+TVfI5hgPU3Ek551MhxL?y+?~pUpe^)0=p{VRt(e%4 zS;3>Ec-cu~Mb13QW?%@!h%-X@lT-od8kBnD3SQy8AeID+(Cf4p#glW{p z6XnS(3raT*!qT~l!3WxtPpq9G?1(L*UwjaX;YaLmM_Jj-MJpVev=nJN19ARUZxh#z zYiRt(P&RbOrwyA#qLN>B`aIG#7GgL!KzTV!T=$TycV%;rt7f4fxwhGtdzFYx(v3$a zp>=Y`0Y;jkc4V?Sk1!A?Dsw^xQl>b~GH~&>2%5K92W5-Mcyh7HV zO~Kr#phaEH)OTNu!2jfOy3L-f{KM7uzL)&ET|Ar^mYW&z;FH6LTsaLgXvYv!lwLLtU9wp_Z6M zRFV6S0(6(v1yCZwmFrV*D61Rn?E=+$H_-^Jz9F?Zd!>O-*)b#-J!y&N%5&K zAZE}Ec~dp7xVFlmC=SHE^5_ZmhOorx@*S`T98e95tgKvg7*T=)oE~{Ou`{dXYA&@X zdVN6(3us=-?aBQ^Q|3EorNbXOUiR4Fqmq>!v2EgMegaB5% z0m2v4;pF>jk6Kdi&YRrP@U1ty1xX@)e(3||72${?rQsL1A-=r@ydSTTk^8=z8y@D5 z>V4QUDsL?<5M0ks5gT6brE(i-lX>n#UvnP4E_aV1ZrnJ`%shEfa&F1qTw1Vct_>*m zl0d{|${dv1Cg-kG)V?O5CHdJ=f9Uoe6y8VKTf1x2?90f}*`6|gZ>Iys3Vz#~Ef5BC zY_Hi(c#_P0t*Xk~jwMin&1OVvIVtxg{|19m};eY)+0e-AqUzV5ZHd8xtd zoGNl#ikPPic}SJ#L@;_qAlH$ngTHp3Oj5I)G$Xb$R(H>rl(#f#n=~vVxkoIK2Lh$p zP3{!fA&rZP8)p3A0PV&@{n*0V3Bu_p!%vZmZwCcQ; z=y2Q?yF}kqKP{kC)BRZ$Ea}gn1ocC@E;=0aR|v1@^nL2duIkbILt$rZ1z!O);UoBg z8s|KEN>|@XX6@q;`NjKnH;&DW(QQ+T+NKCbx%B&At<=jT@@rLHJ39^~7n5F?m8(66 z1Ga1|jBp@co*l&JksZueh2Nj){!~R)#2K`cyRLB&;g{G6A}t`jTf>5m_TVsl$p*v= z2SO`PD!Myh^s1P892A;n$`l?0!N%b09$2W)nczuf^clsCImFRKR2iQ!;3n2u(yv!i zAZp<(w<&B1Hf)5`GF1q{nqEiQ9Z43+Dsx=IQ0X|#j>!<}{+@4du682TqsFK_N=t`5iOmCyY~Yyq~r?*1z0Zn&Vqt+=D=oyVoy)1iXxXEUO-SGplll31L9mjrYI0DJbKr?>05e6>VfdjXY?(0*$yTR z)FT*uS$B^*GI>=UYXf4LQoxU$tBl(&R>c!bE-GCQH{v0a4EE(eVs&M5W#{i3PTxY` zU`VP>v2^e}JHI-ua>$~v+x5PCqKrfy;|UEKKQO&pX4kk8S&8jP>Am>82mBgoE~vc{ z^iI4hNYNeABq~Y{apcld4%v9?A6OQ0O0B2Rv^sMNorB0^%JGona_!&?z<~zL{<~*@ z{-D`m#&(v0{1ItxJ^37Wh=x&h!KVK~jH_4+hkEk_v*p0phTTsXU$I!)cA7p6GElZH zd}01E=|YvUywR~}_X!+e+A}RbbX;lQJWM2X{Fv7I&fOX3ECSziQ(g7&;Co?xRAHj- z5r213apfR2J3leT(RKGy%Tq5%3PH^u8J9n@e*aE3+m1m%OA0H7S5+P$$@lngYjXhAjR`Myd8=K`vsX$Smx`4o@r{ zsqygem%#&VE5-!I?arVK=R0mi7nYj&$A}Fi;9W3}=od4a9U=pc$b$bbp69ZVYPyk# z+2jy0qYV6wR%woGGffVQ(hwU&#AEnf+wGOvVGhc`&toY8Avc(=F#1HkYgo`8;sgs_ z8#Ja`9?(1CY1>#roN+;>f&VLzA>XK)I7QW)W!ybb?xwx$cg?o=5D$9 bOEJBX{Dinqp^B?IBR|g={5uy0eD;3;eo@*a diff --git a/ej2-javascript/document-editor/images/image.png b/ej2-javascript/document-editor/images/image.png deleted file mode 100644 index 383c9913cd4a78e7ead9ff743a4b6461fd01af9e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58190 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 bSK$8xYLH6@uW&aD00000NkvXXu0mjf)dzrO diff --git a/ej2-javascript/document-editor/images/insert_text.gif b/ej2-javascript/document-editor/images/insert_text.gif deleted file mode 100644 index 183c6c7d9456b99843db0d4f0e98619485c607be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75306 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%0DAUp?nBuVApIuo@q3PcH)5zeLA=yj^6yqX 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 M1@t`}@Iw#&7wa|XV*mgE diff --git a/ej2-javascript/document-editor/images/list.png b/ej2-javascript/document-editor/images/list.png deleted file mode 100644 index 35794621d456939103122ee1329a60a76766be8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19667 zcmbq*Wl&pR^lgH>ySoM{THK|$ThU_0-MuYPiWe*H?jE2(ic4{KFKuuQ&dcxr=6!x| z=6$-Exo0xD=dA3#*IsMi7%dGYYzztv004mfPFY?Der*K+fE;Kj@K3r#_^|*09pIh3 zjGn*w$p-olZzX+{?H4nT3BJ*p-Oje(91@4FN_o-~oibI9hboA|3b%zG;{FEcN%bBcfJxA)fjcIdpH zMy{y-O|INwUeIZB*vny9-qRucvd>}IF}6RF%$O4PycCuTetO+{ecnpZd??Y(3cj@u zyWKAn?*6yGNBerW?y%aA@*@sGA#Avo`YlJDV4hPzOJo|DA9;SUck7fmIN{7rSkW%mPG>=Hy6z&D$ z8P~K<5#t#SzIL?7wy9dyGoKgYhJ3W9@&8*)`~2~$(s|bk ztXkEQhZ#Z^wv9;p(P*DRSarfC8_hs#nBc0^?4tGR{g(l+|Gj@UJ;ORzOsn!2=R5sM zziIYDD=fp0&%o3)6$OW?k1l3;>xnLI^l?BZzd?(5kHTTd-a$JK@Zm@%yA_}fc2;^vR%UqGM$jW|Okt zbx=BeMCs>;&$LgLYsUjJ^^&bIMWy3Trh63Q6@EO$s+MI)={Qio-p7rJ=LV;G^RwVX zvFyhSW{XSaZm~`zUp)j>)Yi1Y_U;pxlUw{Qg-sttgmkw+#H+chi%9mlCD1y%hTh3 z=@$m`a|tS}ty}83ZCyjt5`K?O8g~a1G%y#oXJ32e((1JYg|dp3W^_xSgQ(}Ltmo#W zp8BQKdd@L>8x~HR#<{cC_gRD;s#DiGUjF63I9$SE@8J1-WYNoo!;VW9;;IKwA=LSH z;03s8pF+HY!>Ox7(XjVnA$yAFw=z)P{-KqIU>RSFFrGLU_VZ9eU8T9LX_A262|H=Q zQHO|xBB^&9v&Ry#B%Ixbtes`NguUz3c!#1J)_s<{ejX*f?jG-%@9DW}FVT6s-S**M zfdQRm;}19ge#$JHM6pva3R&GSLx0yHB6NK!7dW!Eaq3&ERwtiu1kP_oUJZL14s)(U zJJ-dTA;X}j@cLJp(Z=VzNDz5n#Pd*8M)z#OgMN%wf!NvJb5pBs(heTv61x2aLV$AY z)+mPVGtxSQ|D1_;otKU39}l5@{;RYm(f;#*OL#r0KN?qMl(WIGFo3HoMy+WVt;}srCy&5q827|`uDx2vLW1h_n~tt%5an#&2zGu7=?)A$nt$Xn{`}u}^-vo^~>)Q4cDQ{psqxkNQX{vMVfv39}AoGmN zaTml)YGX7sO=}TD15G32f+LnfYoHRioOH%#h2*{Hx$2N*+*)UlZGqMBWSJZrh#Yr% z;d&aaDvwxkQhSs6%(i=gL$Z`M(L)+6;A-#?F;k#HWn3MFk5OR7)q(E!bB|j1FEQXg z$7|A|5IptzG$l3Wr*FQFW}9`6UE6VH?6NI(^_&0wbzfp^(|MXY)?m$)*x65#c9hUq z$(P>6*182nYz){R;ogn~#sV6XqqNgn^NvU+UW)lSmXDC%65B9QN|fOL4obMsIUH5Z z6xk9%vOi4BksobCT`Vr?s|pcBN4)x^8{jN&*?m6)r6*BG4?d-42`{4RvG3S=eSx*( zf4-^f@yTc7{*sy2>#$a^C`k7Y9fuy~cD=ZM$@q01ID#$qq9- z(rh=+W)?enl`gs&IiSa(_?QsVA;ihvwMrvSgBqDH1C=2osfPLPHXT}?dH7(kpj7cD(+FOfB|XUdb-TXucVa$1 zpqomc92-#B)ADgdtS?O~!}w8Uz200g93UOIyP_s2Wsy6o!W=n(F_Rp!nbn4gH;J^1~TE{@kfVM3(ueVv246+oN z{^dj{*4i+GDMg7S^leA=n6}7kStLfZ%7R&v_MP!)w$kT7=Jzw43(Q(f(=r=74ZZ|_ z3(UK?Pq3i{r({NA=-yiOW*N6AK3aZQHMvNl6-#xhL7zn{#84JB5UA&!mP)&2sOPB> zomeAqpsh!bru^fhV0U!WEx8tu0UfL(_`hnO}m} z!rZEeyw-jG5p3nJ)XClAxt{vvkRC~y)lmJlG7jR~CjF!Ivyd{HG?ZWO$np)%q4aJ( z8p9QGQVu;*=e@RCfc00$DAvvy zC_=#*LW@GwIlaa3Imp^aX8j1mQuwH9os!o}s_%!%#t)NW739XhF|eD+@t2P)>C$HR zf=?6AkQ@9-`+Y%3I3`k(k)Aiwa<;5sTc-b?3wOGlfs(4=v%zY=+#}QS4oMH{zI)+) z)JkJN>x%^!QKk8Xa z9v0oL{JzxJf+7I+dsV+N(a(~GU62aXUG6<=kuZtOJ(=Ic3*rW-w+@ZnnqKzV2xKXy z&!yzl^~l2i1ui=N0(jZhHnLA6)H}Z0;W&3dG<31vwXI+`EcH1SKjPFho-BPu$$uiQ z8oA*b*~^j2_CLNe*2Oh#@G~`#&vJq_?;HPAZzJM-=h~c1#Y*f=79&qIu9rl2qAUf80h&@*W#M_mW34aoN_n9L}ZvI z=osbP{=O=}Vl3%hc+-GSB}7T4jJt>{6^pmAk)af6J*jDLTJq&?Zw&^1jT5+QnR)88 z*cfb%$XdHTfL8-2xeK%w&vg=DK{$Rms;~}3XWb{Bk7=rf937+N~SS2G~b#j^#R%XnjE-{3Fr;>U1{bayya2v5qxA_A*Ia< zVgp6SQlw6YuLB831kLt)u%`LB<;Un)p0RyVcVaNf*n}5)EAy9;CY3Om!oIH<6@ZBo zZ9{D`fG;^PbsRS7Gs>LN5;TolUHkxJQgXt9?!2J&G{xjwWv5x+gBgpc7FJnQl8;+Y zE9u)DAfxu$DB46A{bOBhUmyI1Y42;ACmkWAmtKwMkbmT%jq~ImRuxGyI>)g4JGMj-0-njfsMoX|n(#66 zGpKLa7|gGT@82hrp(Arx=O{XBj(h25rDU@^-BB%eh(mA~pkvWfpyH^1r4wBX$WT4* zCg|Ke79$JDdfdR|eKK{}hT8DGIp0B09z#2iB3zhf*G>fmc&QtiWcUTPD@U6Oq%w>@ z8yCF8At#iV6cjFdIF`6OeH0@4%E?;|fdDoMZ;x zR*8R@Rm4q^Csdcb;|=6@LFkg|ytiEN{8zvtNiwbJ*)@-?QsV%!@geucocH;jon!&Y zMpH2pvFSDrbyeQd?3PNk{#TIK-tU@a6cyCsC+FR4no}5b@cO2*+^_ibnL1n5a#%W7 zt?i=JxQi-#tmls!j=hWIYRu%^_TA=1@)60ryk)rL>0Ha6jhJ@3`5#ZF25+q;_pKiz zzg+VL-u)II%jk6d^Whr#$3eJjxvH^f1)NaaorCqTTWvkb#@{Le+Za=K78e~U)=vnhkq-DQrN$^?yeHxr7P#4(w z!-BxtVJ5caTv^Vo+E;nwG{;cS`DEKw8^2Ynt$?$CTW9hA@qlgz#W1G~$g66>=gwlQ z6L{+D_BC6joR`^n^MA>Jik~|#|GKmV{zwBi&@BWt7qY9)bL_0vmR`0V4Q>_`|CikY zR;%8#bwG74?aJlsaxbbmgQ=IP3)j*h=`s>daykj73$@wCzBt$`cz3|oA&~4%*M=hO zaOpilu?#iu6v7tBDMx~SAq4#g=S%?VO(3GHut__!mRsAXMX48*QrgRgv+MdYY(1k> zuKvt$GoIVx)h`Z3Fj+5f&4Hos`xIk}Owe|Dh#(OX&0U0)Q%qA5r`kKuDst&ySZK(2>TV014An!&I?=uco z!v^iE7%F<%n^*(Y1STbszx{Cte|=M;I!$w4YWW^*x9Z&OSNA}_>pFaiM*f$#%}EMv_Q7hdz*SinwBD?6AY z`Zd0dbR-2`Iz))G9zhreZz6QWuL?5`pXXKi@4PN|f*(`5=>MygOZh6VD81N<6c-7l zwf}U=Qtk2EBLWZqt33C!mVVkbe*=1=S=-f04rS?(na&hq-QrZf4bS;LkA>JX2i7V+ zFcW;N8?EW|N;B1O{7yAmA#G*0${Qc(FDzQsYwdyVOgRrgcfQL-w5vzOAhG}oxFh8- zFaU7W`qyLot8lqm&$I!Q*x>|X?5gS!=O4Tx<1n6XtrJAbB61F^-B0m3-8Ro{4vZ8^0xD^JUPf!1qvR;hG`5B%MKBvlLwh8*j#|IpLUKP$;ujI zwW11yc95hGG7GYTFKdB#q%&*FkHs&gXd`sSuSpHn8J%9qV9GK3 zjS$+cFdng*-k=^N#m}NCjdzPRq?Qfy(q^pA!7g<&b<>0Z{lB3R$+o$z=X^+lSsP%! z@Tk4OzXSkIPAu@40q&DOlq}4mJA!zrRbGKRJ-?`7u~L{*Q-;ljI_6Jo+g79De>e#j z*|xJ{=0+e(=}W3WjHj3K?)KSIst7L48$te>M}3M({)ysk1UX%|m~``Y|5($QH2aum z*V;y%hb8Cd_Xz7XP4j--F3HXU`)7*4r-hi%hUL_7&yUet&n6-0&Y1IA88!v$SaK3t zcAi7S$S4prBOr>Ak?9t*b6Z8J0S;-gq7{J3lAUDyw`Vp$hlxZ8cc?9m_Q@dw133R)gE0vnvbwpxab#+L8;^1a0&?y4nDs(Oga_mzOl#r7T_&uFpr z9hGZv^Y_nL{w%oG!5$>}rGFCcCYkWGMcuPXzBQe9Zxs{D$KWyCwX@O`Bj_PwL;_aDr(ryqHin-A-|c-AqWG>1nE8rn_VD z6ubQtQ^TsI#tHmLU+i?W?y!;GF(<#H1T^NM_X596f!RPc_H43$L!x&nTs>~23KriL zUOwS|EkrbsI;*(&3$5409B1$PZn)_0ZAyA`)IqdFG~a4$yxsuVC3rzd0Hq)%*+}~o zGHavua0xR!mZuR*{#D!cEGk2&ra>M*oV&F|EC^y(fAT$0Yz#NQ*Cv25ahq)w<}hhM zJ)nZftvI-MLTl@8e}%}sdwV4aoiLO`)$ZVUtQ32VGB6<*nHqVn7?p_;X>{G{fO11t zv75;>HwYm(Y1NWjTsK*tL?;jgq|xZ2P3Jw(n=C$%!3&gLeMh!t23-52*<%Z zE2X3!xKo@%vW8`^52sXrYA?^M|gC zQP|A~<|EVCMk*`>hAv(oji%-VwGegI$Tf<*%e&M$G-mzaTlD$L6%&oD(lp?;A$QU? z%El`T)c#(I4`&z#>MMM}f$i@nPvvT2$1XBVxwZG?Z4p#R{2&C~sL^g?s8d7-dZE-YA^}sd0f{#PklTBvShODsE=K}k6n~2aZwIx626h6 z|N1a_a@Nm6VNN6?eiWyY`@%*k9R8jS?Wb7RakL~V6DO+?89IS}V;=u1nza{Vn4CL29U`!~ov(99t%+nEQweZvwprBUX;R ztkyrT?k6V(+gOYBIe%;8lm-0F__@!V;`Z3)wnq1HJ#GlI;2Dct{Rodl#T-lZwhFX2 zW;_a(T7|B%SHB$}a|qHmWlR;t;-^lE4ju96I$3N^C?Fbtjl)5HpXx2it)$#QeLM{2#$vu#hd3f+JTc0}}5J?^zF~H0fmIrayw_EYl;32 zRF3`B=J%#wie=2Wm?uKUbn|9Edg70m244)Ov&@v((*Z zmnOi7DHcgO@=)M|#MYIBQt8~tKCd{<99t-y42OAKJ{?N+x+LC69EI)1uud{H8n?); z8?u^%CaW!;q3N@qn;5oM;xT#IW@(>((W<@tx3!l8tdbs|3TLDiTSI{ZT9G^vF!VdQyxZ=mUV(opX?p@_= zoLl;+r9>FbZ#-;|Mgh6g1i7$akea&x+7}MH63z~i{YV6`J>|5xANx}`u#2KK$MOj& z!WYIGcFD^6AGh5P>V*YmJAZtwEYA}SfcN(OiO44mkYVeGlI_NjuJr?MO700)8qvD+ z(}1a<&HbDDu;+a^hgsVHg&TT4^z-x0VWA_UOOAz}XOyhG&G^($in~2iwhG?y53uUn#W2q53CB@6G$(1<|N+?T-AT z<^WXL8`AE-3KOmOWo{2;WmFeI<=89lPyQZ?ABwmjO((F$Ys74c#-lq{pJm;eGGNNza7*$A&FZ+{GnmyNEOvd~Z2-qns-y0Z~2@hRQkL1PtVc6IGT zWqo(Jwoa9szSguOL9O%{=-DI%RpWsRylHcMHA1v$4dz!_OKLO^)6qh7M=dEDqLs#{ zYO+<^&=Q3&2g0Fy!YrCWt8+qVGij9LW&CK9Sdah7I4t)0A--N-JugSSJ@*eEI_&nN zJiP!1bQVgiSX7XQID2vHOSlMSUrV*PI`XOhLG$%mlT|bHGUYwxQ_rEqS;r2=h|0Ez zO~xv0y!UC`<%N!*bJOo};d;_ruJOa1G#}L7jJC*nLLW%I0u9Z`S5N4L`>d z$j);=Tsd%&*S8-+pd-gC=$Q&Rom)o<@mlv7Zfz^ojO#HSw=wbG!L(Rb#16lV1L3SD z#96Ft?xAvBvX|$~R(wx;{11>52agxDuNMYeYG2ZR-OQ4%x(KkeXSv#vK$JdrKI8yD zAR8k>YH-JyNi*^h^F^L=zpf7u{hD{ay6Y5EsdwpU7e@H^4N7g%rDku&w{f0)LWe;WV7 z8DHQ2kdLIukt3_O6ZDb(;|>QHN{THU78VZeFyEj7f-xZm+j)nt9hHtm-`%l)a6m zC%Tf;@3xtas}lN}al`KV*FIkClJLpiC!a~#vucZSswYP#GBdw>E=Jo+v%~5Og;Uc5-`qccW)(=M2Y$2$cd~Sc9ZQF zkK%(-lZ=vEiEsQo%ZtofztiH+FN2VyLCwNf1+!0%-ZmmH000h-Mrz9Nsm5WK8NEM& zV*IYug@nC(Vm-yif~z=KG1Km!?-Fr?misAwpl7EE?Sj<^)K$F_$Nc*M=yew-E&!z z4UUZ>(G|wQ_sjOCYLr5!he)_78D?$`MMy-G#&sxyBu<9%`$rM}^V*l0#s7}=HBrHCky&#{D zm}sSJ!}nS%aQ|7~Uk1U3de;^_M=9u8S&Mf`x+F!%G>lx@&+(_|r}EV>hlR zD2_fFvN|i>c{erot(g+%0L)l)sxe*3CBWa;U7nXB;EZyydK_>m7QsW)6Zpvwh`-b? zKQo9e`g}ddnix1=y!yzNBt#ZtBqe@DcgnBFLCOTh!XtF@T43X7js6=zp?@_ zGh;6dedAaWTY(!niI5P}s4X8dV!heQtYv@sr!)$0+vY&PmrQKJ#_Da55L2}{z3q<8 zsyx%T{@u&9p3|eAI_yfHWctt_R&lXK8g&C%KzuxTTO-bt1uW~sTtD+56tvXJy}RKW z6kGb>0@BUPxJNaH1z@+z+S5YsT9OfdA{6O zyxs^^zC^j*MR5?+yZ#?905&tgZV@9XUUHqRhgJ3Wx6bhNB5jn@At#H+RTRepPi;xY zsQbts?_N2LYF$}p|#c?UP z2=991fqSrMK9$t?+QE0KpRqqM&$CYYjqi*C8%mLhwjErCh_*Gr0WGweZqsrpv6El^N)!wBIhK1B_j$2fsI2 zZX#k8@qy6CM_+B8d*Erx$GXBmb20j|;gUs<0Y4RmE`0U8x>oe_Bcd~iYfmZRNeWnTq6N{N&2|}RpMhYEpv2{v?6t`<_v)9>;0(oFCRM8(E6I*)x(V_ zchZAd4N1X%`2?&8q4Al1!F`G(;&aFLCNhu~unR6bZo5b(Ve z`8{CcD=OnUe=&jIAl0vsxbQSbSd4P!v1hNWX(xFDJn%Z&rfWs4o&!PIgX)63S(+n| z4`0>5Y>Q6dH)CG(l}I1@?5wPr?=qf55G-e~$5W#?KPX>GSg1=xaFfK??$F?oIh_{K zMJeR=b5J}OIg(@zmi}bnH6`*P$Y1gW?1VLada_Q>8t-5ITJI%h8t%%VI>S$I&@;)P zNlN?P%vkZIcKxUD*kDm?@c+|eo6(Q-{(H4s$#U%RHUxk)FbFXS9I(je}?Ek z{+q7n6SplzjLX^R{SnIwR79|~q|f&m)?2hMcF>ksEdi=K>rvpqR-L?nz}S}v5rLdeSQMh@SZ@zO z#i`TnK5pWT%i;sPYp3i+7JWmobuXUn^U>rcqRbfD8Q?JU+`pM_xYFF7zMN#$HR;VGv z=bWj5Sqrz;%U`0;%9-}q-C757wvtmc88Da=CE~w(#N%UcyYT*p>CQoy@8?_|)2TVS|e&kry*p#_jXgo%LH{>IiUQ$o7wX zSEM*|jwg8eTwwbHqBkqKCqopoU9z!HjpQ(GSn!@HCh~F%B3k!aC(@9Lr9cH|VoS6K zU%^nH^Or$X1=+U?d>+@maw!^+^Jvg% zgrfI~9AM^v7th)DWD(Z`9e-`@0N$~FSP`d;YD#ZvJonhPEOOx#ol1 z)dTXDkBZVRE6y6<2c*G=c-ebnYqff=)?9zgH+q@1P?-c_^ePo4+12rtoUxMmK1{=h z?}GPw=udw5?Yj00eH)*Qe8P92GZ!AiSEa;Qo^LkcU8MZ`^ao+5qyJqrtE)*uFVqpJ zNn}9YnA3#o-rM&oe*AkLHB5*Z$rmdRjkK7pr~f!coWMG*Np2%O_!}hjKdsGv>v0n% z6hP+susk38a|26^Tu)_iwXzV3;}68 zCU}~e5;z`>oVu1`C7MhO)6+s(U-)qK>Y>}5!_pC+8d(HJodX4*08}Eu1UpuFnjhvV zW@N@jb}98sS^(SbxeX9y+QxX#!zfhs(b(V=JA^JtMg|F`RKFSi;Bkbhs&sye`3vK! zsZ0&r(W0{|pBhLO3mS=mf;W@2ExJUV#%&^i_k4F-?zNimLdJSrp7KcKxb!Yj;`6ES zlhY4b?bD*lgY<$wg0pv6h@1^p=!5>>VnwKCiBOv*VwLYxhfjWOf&4K1IJxl>2#wKs zlXXlFs-t})$w>&S{B|yf?#9xJp1$smCh8Br`>`&vO7#7a4Q(YWhq6%%!OyO`SX+={ zzH$DZI%1gTR;1dRZ7@P@`(1lYzfq-4zpaOl-PcuqwI$ud%(wrP3x>9NJ`jAmX1W1V z*g)SV%)mMUgl1gaj&$iwJO34R*|_5;0JKd1#@8T&ji0#m9YHgH$1KAc41<2AD8NK; z4#M@z0N#+E>VL6m#3I@(4j?d2jmUv?NX~lPlQYJci4u(!C&rJxVt#_rFHt&g6-zD~ zYO07g;sfCbZ-p!*&XJR;8P7sBm=sKETzV*VmJN=M&j1X@uIPxPV04}IrRPLr^W3|x z@MuPIGQLbCEvCQAXU6^m=L=j2uKRz`MrZJb^UF&r#XM!}kPpyed)!Mz12en>Kir&R zLfC>pY?1vkwPuRMgu34bnp9U)(31SLNOET2{rBq8zO-9ij2V{wGwHfG1-1@fM7^Nr zgqeZ_RY2;+BN}l5*48Mbs+llk`WMjWfU7P$hXdvR@VZcVuyH#%>agS`n40y`X-Au~ z)GXhmxH81NnUhp05kGKLvLO|g?=Z49wn$O$3Aq`JPNp+3(|GrdS=&)@G@$3z{Ig5@ zrWD0|X573xu_{v}u;GGL9nD9DfN1bxu2nRc*haPQ{LSj?jT0o^E8hqdLPam&3*QpPS0nq-dQ&D-a?)*crQd*aYNW#gi z6n)@Hf--GHC0C-s`|nL$b08@D45)GFskz&S6+KBmTGGUp^mssErLS*pjz`GNh+NIO z&-^)JowKHMBywK`^p+De`zwU^%{30vmtZf9l=U~zscxVrCe^I2=XNvLDt zrEqTw@%WbtZqma%&4q5E-j^Q*3;?{rf2J!2hZ{k$bw$RH1Tvu;bIw5;BH-@BAjkEXb zR}M(P7Jde zm^&F`YT%H@)xC;@kA!Oq82y-%u7Qfk4P&uqF#dg;!XNi{cKMf9x!U$*}T>StO` zB3_nL@fNK{JM^3TUe_p$<=`?IV398b#ewK-PIi5n=bQqG=A39blR^Ljkyn0pRUT>mRmP~f7&c#jhAMa zuTENCcpYgpbF^?wcQ%pH*Zdn9;6fsiVWc--rnpDHfQfxo)a%l5*zrT-P0Odwvn7dT%N4g;DUA7BUH&Z*;UDTR8_&yb8-ct>+0u%)x|%nYN26)K zL0;dO<@xa~4v^4GPkEo$&r?TQn#yJp7PzZW^_&9w8I8miYE7G{2*;CKc0Bmc>WBtk z5;-$;xkM!PVd6c%avjG-)4OVk2dTmj%J#37aOxC|1Raa`y(|*!_4~5Lbv2_S>z#9e98Ott z(+l74%~$Hi8l+l$d!|&%wdojtC9&F+BS9s&?YHKI(*v_gZ^$F30wx+bCm1}}Ym@ED zZJId_5>R|N%%>(MoZ=?OE)UK(sTON%DtC%7KkiNi`6{ay0BiPJKwVeR){QfEFVhA< z(|653>$cPimws$yAMnnLuAM{(mia0q$Se=fjNX^mc!jskIuDwWdwR^j@`DVk!V78h zbhqd~uY)r7JO{2{OTSpL{}Tx2caf<|__#`aTVnN9fEhQ&Io<5+v)<-MEkleN1?04M zdv@}i^tR~Ti%AzFUFW{rBR~E~T^(Rw&8?>?9Cf5U-c8$l!kpS#{y`ve={J#D5Kkm< znud&U1gtv^bXItn%O}T%I-DwravHD^4pVSl6*3utC0_$68X*KF3B z37t8cYXlWXvT+(>uyrrW4tgQ&MUI~VLJGP5yD{-DdMcthLCQoI9L3Lrwc;hrm_MTX z-wY;?Ap}*}hn#J&6u&Lk{>Koq{*TjD0U7|UEEh_Mu|XTL2~gJ14G>}L^~BR=Xc>_C zn{|+N?47+>`vi}+1%%bz=Y5!o3|xmFY%ULlvrMs`cT!oTuRH#_T%1}FtJ_aDt>Smu zyZSa~t0%yX=J847mez8uVYfTDVg8()NN+OrhN>2^O~!r;4VHxRW6WQBuQ>dr={06M&L!E^mgUDf2?+p>P=;( z_MrQZ!9H;sapyjuG9A~?EqG5FTZoho@5#%)Yfc}=SWkTuK@>bn3|l4M&hcG!i0>ga zs}Cyqog^f?N98MhcytDz1TmjjrM!G|QB0@!<~ZnJh<2EtiyyFr(kSxsaci`0a4?BR z<2fE{KcYWte22Ukh0m`?pvR$@D9e(4cSQM=JblHBkFwxI;bPoHrm2#fUdO_Qy9q>B zqbpJ@lRNbOz5R+!*>@r$P0v=g8rCZFg5A7^kyQG0On~|0>XHy_0EySsf1#BegTnGc zs`-PoT!4}IDbCABb{-}c(SuaoEMo5fTHjD97Td(2^}Q@+R9ERiw-fV~rqoD?84Gu) zn3lH5{&5X^HE0~L4P;@y&C!;<2etX_rw{f(Sz z+9gYtd7JXCiTC)1VJ;N#`cVtFm_QU!%QSQJh_~iN6!+Y*O29z$X?`kjv6(_Otj;(t zf8kj=m^&ho(x@mxENXBgAT6#+%>J2{YId_1d~GVjQS65viK5%VoPP7qs; zLS%r0^Q+i0GR*4&jG2*xK$;~N*1{&irV8WGp0%Z(vV&xYToyEU#{5W0yzZQM}B z**tfL0Ye1eRwWe6oB)$i7PW^*oo(M{v@ujWM%hbSpBRBnMWb(;p&$PWci7Y#(b`5q zg85;H=Ovk6!;Z}lwBUwzR`QP#IX42=s!sF^RIy{Q1MZ8fVrNLHn)HX01!VlrPRDxR zk*q<5q)62cZWV@yUk`yAj@SjrT2o_0ERm7Pzi;5WMsI0-vG@KkT@qqawt$mvu)~?) z_j&ZI7T!a1pnckw7{$DUn$Uqe*S@aRs8Qx!X-$@ue)(8M+T?}o_M6{`-*cD+LnWr3 zx68gPOV}a^#@67le1jmGK3Tm8jgMg?NCI|snBFCej^{JD6}6D8Qx+U>*tYU`A=x(0 z&wjM|6=R$3`*~}kUN~%9w>tY{qIP7duZO11aGJ1UjmbAjZNfqcc0RT6ql&bH>)&z) zXCheF9U48I4M=vw+v_FYn(Vjk4_wDLt zJHM+eqf(iFTk#OGkD(yi*P($n&<}`p;p%4#=IKIa9!E(*rv#< zRW!>!Qq^4Th$jC;m^N?04K=MvD23E2^J{EO1j;h?+Gb!Nz$m@9LG`7Ka;Q+WKE`)0tQpr5iasPf}C7=R^m+Te^Ypyc;vKfzUE z2k|N{gr!drkRe|JWrE7EcbIPuF6<=6;%SpfPuaXl8PG?Z01rL{_PIro6ub&PjU500ad$Sk5rE6gUI{o$gu7gAp?t9Rri=eAJH zv0(lyHle_o*`;D{iWBRHGt04(90#wr2bm8>)<{Q2S1EbM~vd#W@Qk@^H z__M8)3LU)!=YZkZz0O90YbnecM)Om&e&gHjucN-r-9oq}MU3VDX}DoJA-t1d(;rw? zY_*wgT%>6#&Z<8!l$IQ?|3YfizWWd2tWm9JSN@ap25rT9tRl64vplEd>(whSwy8z< zs>Qb^Z!JSvvQ%q8gu6tLqR{xGtam>a!b^QjLR7gC!>LN-cC)dbSvJtye>UesfD}ih zgU_0US%|x1m$#OZcMbcefpa-VU(~ITu=mgsED^0(2lVMC3!(5jrc@&On%B9J zaY6A^bC9r8yo&HULtd5dLfr!&inW= zQsGVbh*`VhUN)$aJ_yx-t`q=r_A$G}Ik0CMVM-a4`cJ)c3mAWIl1DGmq#RyG$I_gaV!QpHo~Ziii@oUYazO%qPH0o7S&+L^o2{1pED^0qPR7E| z?N69lZVwI763(AvwhsC9HvR~;JA64j#cmGc^Zkc#D!tK*9e1kkk5ggspL*+bCYFh2 zWE}Hl-+JfNT`U#*hmHoFko^KP+b%-DP{mGOxx|UX$uNI?@B!!hJTkgOsrqc3ti^#u(Ou+yr^zMNAC}9;vFFr#>y*u$ppe## z+`vqxf`)U3C}kX~z>TZbydLcNyZk%#I|`vPG3nEL z)pz3v5`*^{vmfdCip1$f3*}Q}U_YKljg{$*%toV`9`-}&tTXlonRNN+4P7$)yo_h_ zKBK2S&p};2i-sc+0j#hIGrwkkH)=*NZphistg!{T6WLVoqSrESbqtc)j!r6w7(HT0 zx+Y$`5gpOMz)H=Npw1DrNd8~@b3y5)>3YfoUv7j}_QSGqM|{|jsd=3&V3jc3f(37Z z3Vx6m&n_zG!13gxrMwvZKEE_`Llv9- zknd3lX16YSL$95~eTR_zsjB?ibsLmvJQbASi)vlpBKq(=+w)HUJ>xB4ORwC87*AQ~ z|BP4sWY$`u_VCGOKL;uy)4gHBAaEittuWv(5ji!SS1U;fSaRPj z51v{`+DY=30N{d;#9&G=n%^d_=<}$$dff|;3UK27SXv$^LHZwY?<;}|pOV6f`&mXF z^v2W(eiJjcY71=fpQYa-uxiQ63VxFZR28}xnhakb`mfS_Dw5fqS7bBPH2JzGY~6+ z7>f0ehs?`4BAgi|G3J}s6UCP!He_1H2+(|nv`>e3`lGWoCw|qX2c}WZ9xXECq0h(c zMm^F${JNk!a~wT12};(s^PNk_&I9gF zQp;UUi>99*PWae)_skAroe89Tv?6kzd@Ep#wD%+0PKeu)(3|{6_dvP%6m5Gc zfPLE0Ta0;8x@3F^Mu?0wIm7^yn!!u90N}CP{2}uyhF-@nKPWX#u4QKq@tSH@eKnp< z1Lt2|Q$w-$&6Bkv{mI|-K#^`?jQN_6pq9dvNST4V1izofT(z8_I(Y`>(BUSNe=^hl zDcS2bp0V%Oi|)UNb085$Dx)>lqEL&@k6|TQuT-5Khcq5nPtFwPdaSY4+<$&3wt#5P zI*{E0=EH||hU2GY!gJ@=MA=@vjGp&64M{)i7a@g4UwuB%$Rpmq&hhL{;W_R8JK*UU ztgQOK0v!wD^rpN}oh?T+%P%F0OMYa>1yOH5{;r$ImjCvHQ{pH~tuwB6wW~Gog*ziN zdY}uNX(AjUmdT1_U8T%wWhRVqH&h6yJxgJ5@3GqNd*Az-B{M<*JLO51E|G)%VC6EZ zB#M-|1^z)ifvc{R`$a8Afm)*iLg2z@hcWauuX#Pq;g{8FIed;SP6bVXI6U z<7OmW7tRnsX1T)P1k{FRv}1_W0bJS2Lr8hcTi&uM*nU{`)J8JWCRAr!5Wn&IA%(yF z?Qg$daI@0&90lr{dLq=e{6t_ioW?Z?_!DMhMMM7;rX>Goa_70Eq^P7gvGneJ&U2pA za=zfnW6{nz=bXlSjkg-Xd;ED;-1|~ah;9;oqOM5A_ zI;ls3{Qge_2q~s$hWmYHM8PFUMwBvhgtQ+q<)a_{=*dlQdee;*d#rlcr83g>=*VKa zGz!%5p~IJ_^L@s$vfAlbV2NKGKbtjWp#a5wvAF4A;EDB))gFQx?JgcZ7Ve^pE}EQr z>Zz0Ck3YUyYjpu;b;$%Qlhy!TdEUo;;zj`|A3gqTzypZ*s=ZG=fi(Nf)!ldM8=B&{ zV09;>ztzXPW1YR5W%jHIGvRwTu59hV>gqY4UFSO2X>D?4zR{`Bb^z4;ULBZ)145T- z;^i-Yc>{5>&;o#t)HyDl>oXI*>tFx+jR5_=_q}gRN9O{rgzYx7)GQe~-dN0MJmVQH z^A{`nq$fS8Wfkz9d+=3bG{y5LLIbF$opxFSki0Rn9UyB5YUJ#mPnx-qxKl*b!E(c} znh$uu1KPy(DNlLI0fXdJG+Y>s#Nty$4`UI_adzb+3Ef$+_pA+W_{= zXFhXs?6Jo-aQIBUZhPC?HmfZw7m)j3q9ZQNlb`(LHnLDeG`|3-9Bu^KVqwXLJmev* zE+%?N+wXFhyELT&NIpNsHNjOMRy|b5?|%2YCog)@i&`DIPH2a{=jl&>db8jNgOHqRS$~jGhEe10l6Q6ACMmOpa-?@S#Kon+^YvZ@PQ4~%10hA z&Q5WRSZTZWzW(*EZ};KS)QRqsR`>-kctIPz)Im9TwzbvwlqY+H zSAE5FG05%wU88*JdG1F*O!(R0bf-Jrsbv>16FBz@cGYwe)EMN z|M0Ap#ewd zb0y?I1Za60DUOcknyAZzAN=5nl+xT2mf8qH0SxneWxhA74d7f46Ez8u_|8DhS65ea z1_0+9a~)V}N?~;9$lLI%vWXB#LXAi_?pauY`D?FQh z5-g>h<&S;rW1B0$7v=K;%yGvZ*Cu9$a(Ns980ZZBQe$u*{LcqAS@aCc4#X@r5Xle2 zDsv@HJn_T^IzBhx%fL$}o)?wjUH~o2d*d75xLJJl0K$cx~a;eWlANtVA z^{#il_D(ry)LHg0?WBx+>Tap$1KJ&B+9TW5+d@E+%4|k zZ1IKFl8`8tnk(ZOJ~Lo@FN?>GVbK9m>W=fzKffh9qD=0QkC7h>Fk;`_8k0;e0N`*p zq@rdq0i6|>TvYZh?u`Vfk9fo*T2w@YM`BUYlcdq$a|~xOa^L^}J>Bx~i9$aAMCnIFPIWI>=`_ zJ<$>X-E5hhwaR|#L{>6+QU-T~rON>Y0Lq4`tbp=O-OESLB29g#HmaNFxG;dnY6Gcg zhA4*j7%c!iG31O+WZ)jLY+&@8d&J6fQL;@pi$d-dIWfvm5K2#WK&-Chqs%03I=E0> zyyc@nJ#Rx(R=^U*1Fm$4PRZf{U}k%1=okP^XZo47p(&?gva}9>@yme&(3P8m1O5hF z-x&e2jGv7~-s5@qDbwG8!u1w5a8OqIf-UW;~BIe%g_EV<%@O5Pw17Odpx5*=a zHw#Sei>pzW=d*mCeJ^=8SHnb+s{{DJT^Fk;kk4GKbtc*V&x);x&#G^&T@^JN1?qW+ z1Y!wek^NuybPTD?fU^4G`94;Bct{}8mw+bs=V({&kZ zS>@-1jgHDT+U$49hAqlzB1r-AjPJbPyR)^HKh712tCFp!CXqhRX&BE^#H_vodM4+9 zuO9uHFM&~@*7=(q=c;?BV{t={lanerjH{fiP-ZVk4yDdI&Xtod?oSvnE0|fD4`o{N ziHGbmLwqK&@wHRG?Dvj!&!m!~a7h4=yTIxLC*WFfjEfauYLj;b&;%?F&TYwYx17UN z7gwT2Q5tp2Mk!?}TYdV9;(S1lj(*HLcsm@*byhYdCA^n&h1r4{OP-13W(RNMR%HK) zva-Y;fbc^BIUDbDsyIONEWp*HRZ&0+BFqPXfF*k`iw~G4pjlze37m{b01nKaNjBg3 z?Eycxhx?G7eW|xmL^%{CC*r*??w3x=?munm*L(?#w$uS-mbr6AFiYORl325Q1LiE9 z=eu-JcG9^|$8JWEkn%LEMm+-PC`t|>q%N_BQ5@i`_12bTy-n03;YEIOq9b_@FcYqf zpYOZ0fdVPVv+B&!2K1~ufM;2~Qai+GWCvg7D3r)EeV5*RKwrsHhoOm;sHar2B{Sez ztmuAMm%wr*FmFx)pNtFxlRZL*@KduO71SA;*e;6^nPk=9UBF!edm({&pw6OLB5Do8AN=44k0fG{-_?(qSLj|ew7>J$U!O$myiB2|$RS}3v=P?0JqsFWB3(j`>uYj_uQZNtohz&o|*Y(ed}Fo&8%6&7-dWY{AY|z zjQ|h`1UzJJ0An0503cxSufY@+=3w2&%F4pR%E`{owvU^Wo12T1i;IU>fS-pK%FD&Y zFT@Ys4-*s=JX}1m|Ftk$0O&p-9oU3`4gz2( z2m%E$+5ss50I@Qy{blg)0s=E_WMkjQ!O6v(P{j{`K@bR-1@g;k=ImhRb$|uRDsVta zk8Qu@RrZ5kFy-*X7yD%N%UT7`_frrm&bK2tIE92oM8#we9hN&Hud1eg@|4DD14ERN zv5D!K3m2^}S=-p!xm>$`!`02*!`sK#&p#mW&fUnUd(koX@kz;#9;c)}NlVYlewmY- zmtXLzyrQzIx~8_S{%u=(M`u@e&%1%aq2UqY=;tvK`RmN=-2B4gH|pxz`o`u@+Sc|j zULXMSH(Gx%`wK59lNXqU1;WDqix&v&&jbX@!g@f7O+e3*{i@gggUaFiVETzK%33*O zRL)Zbop1MZ3L#WUveaMH{+rpqMl9mrV)h5IKY5J-+z=2mcn~On1orfHw4By@kSmGC zpUDg$!;}Hw@JVjl#RVzVKf4Y+CH6RQB z7rgp5mXjNuJLw_3R$TSC2%|cv;~A5UAY_)fbP)ukDTKBlg7BzqPsvzuxkF3JJlN2a zvkrkPh~PN2I2NWUCZ7?T&j4<^Z3>gLUih+jfB)$B!(z1WtMy;j`L*t=Z$w4c9LEXc z1Z5FNRCjmxc@%DA8cv97hHA-PC37hXFI=i7zWVs^gY(G}k$5lB^^Huv?1j=4En8|f zS*oQOzOb30I#kI3po^)AqO$RCM-AUSt)4wMycO->qqg38x5SqA6jeU#vxwV)cc-{r zYlT005YGcR{Z1QPJim*xVE{xI29Wio*vh_-Mk`|gC0z^v^~Np}jFtTtzHE#)(rZ%vUaMM`c#g^2$&NEg{XH>|~zN89f(R0%idMRBVWg-0aO zlRY=XjUPgQ%xTQj!s$CTc zJK#)+Kj=NaJf)+U1GahLi4u3uv>%a~Yw`W4?FM=MZzj)Qlj)xvbJh^3RAx?IPN2u$ zsj|W%zmmJ?4N`kT8y;bta#{ZXt!lowOWVkpCfS7jedrvT|J&rxMydB<4|ZImY|>8H zBQ*i_{FbF9`w%E?c)Cv_0DqYeH4-vh(8W<_bFC^JswEwEJ!%GJn~cEqr-;X+=T~B( zMb%D~cBi9_n))FM+!5TKo@nAOmfLIBlXj_BAjSTy6-*9TUX|H0t^tRsAEhH{Y&#ta zBpOaXE?>K+BHjR_JZ9#}!3L{8GSe7V02l1N2E`LPox~fV(-JN_iVj599CB9A=`OVD zqDS2GQZIyCFZh|bYL2l4dj70pr}1F2KAJswQc?rE{+ehTnB`;9 zA7k&+i^y;$g;d%muXj17DY>bWHCdEF;U z{AJ+RAfRbuZR9RicvmU9qhdDK{vuVgY)s>7zQYxQSNIm^0$p}#jPGuf^zjn9QX}m; zS+vsL-mBo7pOV9(*w7h=mm=6FJ#bB2KDAE3tJVkDeC|T-iu6(B7!637cc@854T0hC z*b~GL%U34z7p6O@36>vEH#=F>3MNM%P;mmPukHTcqu*TP-yewj@b9|V)EQ| z*5AT}L^b@XvKDG2_dT_HP4&zEx<1nAo!R4E=%LO(-s-uiYQn8^QK{?TGACEQR*6an zaAzLh>`}_Kpc0@|bhIkYqqjYEuK!kXCC1>U97~!fYXuh5|Fu`dIWJ(#2t5XEk10~Q zCo0M!)lG~I8Mu>^cWd{m&0KYUc(R+oEIbxkT5OZN9}y5tQ|BU^c11g%I5X;axh9K+8kckzd@l zqg$~t89;njhaLURRWf?Zr`V{=X(;2T_g;o+3i;U9D*j1~{L>4(A&#uxVwltztzb%5 zdngRvCAOJJh6nn>1lZQcc%Q2oIkukW z%Vo1+|0ILVC7fos+8Jd~pX;w&;KLFgUhA4)ShYH2r=1svbnlDIkgH9#scIN*lnO31 z#YmPhA4lmRFw|LK*@o_2e?q+ucxgye}WJA8Nd@I%Pp?rJ@}u8$V;J-f$UwQZ3|)too!l^EzpcJfoTBXw&`hRU{|B z`WJgo?Z#wsM-?%yi6<5bMT?c>1d|9cLSo!^9#>~;=Zznr4^&$vSw;0bS{Xw^luL3_ z(cZdJu9i-UyGB&?ihP{ikk)=|4$g46QIj+&|KY0>n}?U4H)3@~=lX|sqUD+CqgOz6 zcO_=mI)d0+VpoKmaB72naYt8fR*mLl2-K%O-Yhs^Yh!@;azQo3#fZOpz{oU{Pxtr2 z2>GaGzoQ=@)2bs^Px+DKUuarn*C9SQzStx+q}XmIEz70d$eS%Ksgj{kLWz!DpOSDp zu_R{Npsu1KA6(xVbmVr?#knK>;_A;l?7-nmJP-Ml90SF+d$e7(gO0r4Auwo zp~Gmd%@t}A%7doOBd+M)Siv{YY@w9jD#Jy4kFRq`}#4g)09eF|3|5MYhIc}@YT?P9!-N%t`~i;C7I zP~XkW5L_w~CjF$BJ0yLjBT*U`m@ROyvCZp#`iIS(@gT*@_tli(EUSbMkDI=ulh>45 z-^QPlpTq@{(e6$1G(OUs`TJ^@?Y>$K?qV6hzTKMoTgBeasqQ@Q`vZ5R6Zy})J>efF zdT#n9=b{cGpu&OJq=?RdC795n3l?-F$|_c^Tec&Gk}6jVHB!j#$6q8;1ocbhJv++J z0>Ma>CjqjeWfe^6GYu6To3slE*Xqu-C-K+%*ory_8X9K$>E=`?DW6kl$oyBoc{G}Z zXnf|>lpIpw(&rNARNWz?Jdf({FC6vYUD5BJl^|}h@#@Z1YF!`&t8`{aG=JKNy&9P7 zWOy}0pu_*jx^%?8Q_^=I>K?3;%jDCbq_#>R+Z<&oiHeN|WIiFMQA3LRhtkQHy;tG^ z?2+@TtTBLaaNmQtiS+j)$Qx69--u&LB~@fNAD>4Jk8eSM^T(|VXB!i{m4(jVL-88f z%J^LB>DEwNQng?gBx9q*Tw@xoNCc=sP`+DwZdj5Y_Rte*R`0D@?vz!9YzSN=`NuN$ z(G~m)cgjh<3YrU93Y_yL%O~!3&`xYxy2z?>_uty1_P*Jkw38F`EmUeZp^k)5|dy1q9Z_=&*f8r{8;CI8Gz9-#N_8 zvQ+a_$AKSLVodi z+>lL6n@BQ65cEC)r;7jVG9kSy34Kkq=7PyfC;Q(OzzWJ9zB0_5cA1w6Y?=7rn8WnME|O*aREW^wuuDr8r%#{q(nvy9 zUNfKHTYehyQ_4TDS#?STCtOA~j>#q7#OamN%&h98j+NfhLi!~JS0g@lJiZo3ltHjt zlz>`1*5#QoQzL|DNDMVexjXWgr7&Bg@&Q-;l6m8xEBM=3!078oT6og4r1sQHleP1z zefxI>%BXBL=#tO0*mg-c73P;XI^nUc)^7PB2rT~UW9k0R-IN0nY;b0POO3L^RJ7Dc zJE5Ele(9Hsi2f(WOIV0RMK6^k)1#{zviA{$*>F1_OI^XgZzTTK_=D<_=>ewOp>d+W z@7*kQMYsNQ?w|TV@C6EhS^nSPx>vqK51-nSaND{5a}UzIdU_-Z1|n?su57c1&iH08 zr%tW&GJx(SJD3Gq=(u9@f&>Fd97(8l3jL(X0Az}P1&aBjrHKJ#`qPc=bUp_&lWJu* UzKUtwf0X}^TNL#10ORw20r9;Mr~m)} diff --git a/ej2-javascript/document-editor/images/notes-option.jpg b/ej2-javascript/document-editor/images/notes-option.jpg deleted file mode 100644 index eecbbb2493d9d56ed640690b5e60a00c690a7eca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74828 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� 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�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

    {0icLdFpO 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 G6TaEc_j7VdI4 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%0DdNnCpBf7J~Hn|VwuM`W+ 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 a(r4spqesbQ4QWCIcqqxK$<|0)g!~WwOUs}D diff --git a/ej2-javascript/document-editor/images/spell-check-dialog.png b/ej2-javascript/document-editor/images/spell-check-dialog.png deleted file mode 100644 index ffbebbdb0a81e0dd898ba14e5e4866976cd5a4e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28833 zcmd43Wl&Y&+c&C!ba%I;(jZ7lNr(v2ARvvjbR*p$ASDfwA}Jeb*c%CHlx}IMO*fu< z`G3wlXU?2w&iU}pnfHUU2HmW^yzBbawW8G36!EaBvG3fugQu({|MJcq6mjqe8xtM; z&39zHCb-;neW@sWr*epP3;cj)E%RLF&YhYBoNLp2;AbpnC4JXBcksKQKX+5O@oDbd zaTZaQm(lVv-krzDA{oEzK1f@TX^Jcrx{LFD;d}H{4bz`{&9@JyzH@tYMz1gOIG$+mGBp#Rj%{J7K7d^uN4W$f!T}}{35pNY4JYV*>C>~yZ|kP7)IVx2ZW@7y0L+-Z;a+kMaW z%8CS6eCN#*BzGD&a*lfZ+LjR!v%KxszY`SXsZmVtB06`5Om7Hr@$*b8@cDB0?TJCF zf%N60CwDF{HgX*<4%f=Wn3)}2^dv9Zq_5wtE!wnNgV3%*XX0av@b^^?YRVK@}U>y^H4U)=ZRreV`onZL5! zV|ZZj@b~I9*rms`?!Pn^o-5tM2`x9Mx4qEHm%W$E&dglfcCx>?ILjT){P_rc%T+>P z_cD1sGnTkp6`x4hTY(ITYb4^di{!<*3kkd0*Ohqjp|*>4nyZxr>77`?p=!yqxu4B# zPvfXle7^rErM=mZ{#!HeF+0fp^x|Q|W4UnLgT1ew3*PL)J$@CqBut?Pd{?^-xfn2A z6aR7U`&$cMD|q6Ey)2R)8f69ITfsOy=abTmm@K1?_1Eh6emBop=lWOpU!9(=XFB=h zF)g9Ft`F1*4om!O#>Udns({UV7+xU}1g*8OaUH|ylSz|Y1D~*bxriCDjjWZ<-O`x zzweOLl|92V5_Ad8#NTz6W znl$W<;v18K(oNcc^W}ioBvh}#26`c>8JZMlnW%&wC4VT#YCBPp0geWR0>uRSsN0(> z_9V`S^>)gBmp?cD&s!%?%55N^J18llm8Z{}OWAuw*Ll;}7ebTq9y=MQM$VerPjK}Wf4F~sCJ|Iu=!N52&U#u+5 zegkXwvZX#>iAy|hX0+MUX@4wVR_Q zd}Dqn9zH| z_l2J2kGU-RpIvC!`Mpqe(@k{QT6lK*aHlXqsy5qmVLC~M`{W1NlvJAujFYYkX9~Y~ zbBeL;>S4p&7`K>)TjGJSp9q(#DWmWrMxY=lf(2T2R?mkqkA<9t_%XIdlAjEZfLYm< zB(Qsy7)D2EjL9an85@)@W1aOw-#UA3{zaa~y}OKbLGL!U)<2557Bh4YE&rnZ-jxPV zRCPNTsh86oIzL#^ta>1^z$+;~vMI<*3xBTrB8L3oHFCd{(4`=Vg(S7`fnwwm@>(tX z@kN(8zIcgm^qwHw?NnAEJD2@pd+UqGP2VXOyC~`L0}~1|W0RQol^@ZDC@QYh^b^2^cs22uZ4wDnD~v(7S@9rs7A^VX^RpR@k5rfiw3U72FCHkklM4mk1&$5 z;`lp-$@x126p}Nl>bVO2x|ZrhJnHjnS@|g)IA)a4&pRu^c#QVjf8x8bm$@W2^YWP3 zmn5-xwBiN)_tEGl=w#`zuZ+PSvkOM_Bl0(o$3_b4V3u?qrMOwna4abWjArytBJl-g z&cx#%ohjWfmw)9Ipi-Nnb7^osKAkeZ34KS~N>(frf_~BE?LSdGf+T4weg8?f@EkWo zO3{>13DbAb9qaX;m76Uwq`Zd$5j<0B(09KdmU!o>5{4p(9M z4oy?-CXqpAtz(&3*}R(gu0{Lp~PMKm5a&@1@~pm*;HwoYp0Uf4UbHOcg=NV~cNM+qAFk zW0PV_C>Ez{{ept8*Mdfn3>jRGHQm_Q~1(Ii&$@~go2t_|x~#HH~>dXdh7=3EmP*mBEg9_Ag&kwuL3E&t7zS29~42^gvv5UEp}7%bw(R9N1xg@qJG zM%sS^1!O}~IE#L5+B)~7=2IR;L}wpuI^x@0J((A%?asA~)B$Sby&V=qIIhQ|idT7N z)NkTtnHz(u5qiW;u+0V*+?ofS5iyZ2@aA{CAu9)BPjd<7H<$bbLQ&P$DbR5R+amUI zM+UpjDS`=&?DNe!r^uQ{3#{Mbhq(Tvxja7Mzm2@}veCt|T^=R% zAH!gA6%uhE$JiN}P<(M~sHMV6)6cxyp4T6?M~A+WG{vDidY_C>E%a$dcvj)p(kCM} zb+~x0$Ii#^D*3tx2-PrYh2}XeW4YP3GNhX9^1at0J@4jb zSmTP6to@>uM#(W~Co028CSXiKH;mYx@|fteLq(w&9^LKs9Q35D{Cp1bK>zvN#^e=e`ah@aG@98GhNz z5^M}F9Hf*(+_4?n9H6A`Uev148?8D}(9MpFj9e{tUx@oYMTO6AjpUC=rC_J69DKq( zG&gW6_$1>8*z%F9mG1N&08YwJ+>e|7-<+)cFQrl3iApN-!!yWb#O|z9dp&^2GoW&s z&pI?@YnQ4so!FnQ59d0CpySm7oHR{tXm2WLHBb$z@zBiIH|78v)E=z#%r13?d;v&C zr&u-P*Jm(_7IHeQDcK4!Pb-Cg>4L{7wNfHF{Z@M#aI1k3}I(R9U$KhOP=Ws z=SVt$XE1|FWyI!SMXvrfCpc%A|5u}BL#k5pb0 zN0WeyB8RV|Pw7Q|r13gI3~7BZ)38J>+aBUDfZmm)8aJ0~m6^rSJUTt20E?dLCk4~7OGE!rQg4?dG@_5s6Kx!ZCyBn6AG9SgiYVrag-+`f_YoOO6a zAglZ8ZCJtyR;kpyGXig-KmjLk*P&tlA4hWEUzjK7HO?|n0b?EgnVB<))?>;PwpE;I z03hBM-6~@#539Yo#xiT&yymDHA(p4H$c_WR3oq`h(@XlCcUZ;JJQ@nY?_5cKAyvbk z>oBf{}o3tqMd_+MQg4f|(6-~zT7;7joQQ~RNh z1p;*d6wXpvXDur_jSj+wrLLv`$KD$jtj@?&=y(ihw4WhF6dkiyKeJAH_a~Kac3LPK5*2i=;ag3l~M^6mwlae~cY`AP>mUb4i0BY)w8>INBmxu=*2)2yX>1`8M!f6^aT{ zNog{0EenXON|X8nRweZ`ypk0~zL=1xdy3HJvD@a-ilwN1w)-pBL1C%A2$l-jlu|}a z360S+>&(q^E}QR4&}=4DAn;L>6Qpmwq~|2)#_5}q(q*;7-w_eYmu?cqi++r8WDQoF zg*mhuMn#dJjooO$?5CNlV81H#e>PbE`BeshHJ5tJ3z^SKVCN)d*5Zq!QKR%JGWf5O zrS~PXUv-#t!y!&Kktc&{5{~41Gse0-+fb$JgZU(O%T%m;d@0>L{=mKE@CUb4dPZS2 zW$E>ldBVk!LfjsAQ)7<*sXoMP?K^|-1^l86`RI;r1x{iwjwHtiLnU%&KXG_lmO_%L ztPvTpSfW`r@0XrXkZRL(uQ`i~jps!$1WcJU|5Ovd@S)s5BpOs~e9%-om~@dRH}@sv zl39L_962FVGwAiBucHNJ=?=;F6=x3d6;Dd7L8?5e^nnf=bh&Mg2jC0OImYbF-(G|R zFxHQd&wlJ)p`6U71L}5QeBoEomdv9CLci{Ky6ug{<<*eU%7?Mk!apYE^nRB<99ltz z4>+~otdCRTb8q-Rji=q}=hKPg5jO50HLgf5Cps$QxhFB4sAK5ZXlWZi4Iu0_F@+x) zph`zPViSX=$JE0tK=WuJdo!g^2ghFyva=#`ak)FrfI?&*2EWg?87zJ@Ab7(Xs^tsj z^OF~Ml4FIiOm&`srq*O17q(XVChT|1W4AJXj}m}0Z|AVsvz8jbT)k}hQuhPjT5TQo zJD_(nTpMlri;!OAyVtmJO>G=X*G&@kR`$O>SPdS5xmK#8&Jm0TQR0aV1PtZPp3m!n z8@;xD{HgTIAU6fa4%m@xhjz@r+>|u>Nj;*u?r=hX^;C$!mf6A|+mwBFq!79lH`btR zKm)U#q0p*)h?=Qf0vr^@)hP7LP11FRB588Yieo|&de^NIXXzUlBLHGH5fnsy55wLN zcC>F~9nfc4N=dAXTpLye9$7j>?$yn)Z-!PQ+_|Rr;n%@G9`87(yyf{=mTe+$akH}c z+hy&C{&>0e7u5`bvPQdbbvbilJTVC?Vts}w3c01I1#+zkQ)_rAR=`CByrmIrWXVdo zUV_n&!gj^$*UclO&d*RuD$Vtp+}^a4f!|?Bd!YZjGy4y|>?UVq1qpVaiHxE=t0&UQ zWi#49Q;2JnQ_E9+f?XEx%FHeB!9YNUyNZUlraWr{X)*uO;-QVXtYt}Fkn*R}8k3jP zrY08c7F?=(>dH^$xE=aAIVbH;Rxk42LnleaWMNbKA@)V_Oc{=WeB_; zmAgmM`6=-4tp||VW>XCv-_VJBd~Nf;y1XVd@M?jyAI%q%YfK^4@GeWd%I3Yt;_K<= zkWx8h7yxt)kDt#U>1T>K*tg%D)`5b3pSLBn+U@pY!w@h^zt+LbM-4zoSpYJLNT#q| zD(@qw1qtzuEZ1vqwp2^ou}@LpynY+7ta~r#+JSI!02Dye=b0k)8G_cu>yUKH6`Fi; zwBbw0^ofx4o53}p$-hn48WscU0Bu>c8qV1bDzTfa3}ATBb3`C@p63rvV)`Um8>Xyk zwIM7-3vb&w{B+*a#3a@EWsRAF_|;C`?q*>EERjXghw*o7iE760NtRh4nO^&2N!a&y zVlddZUmwO`(5Ei9&cGZpAJyzVgiXO04G$Y+LbDIo`VFD|{38hLqR?0yb*KQeULW>* zbW>S-xktP^1O;LiD7-fNt!FtW+mpj-EAA;=+O^PelLIuUmU8Uv<bpe{m{ z_wq6)@YdTGXm_o(g0{ane3!#0?1AocOAQ~LFm!TAkT{H-5Bz&`I_Elk;ey7#kooSr zaKFc*zvp5lkV1P)7FvCM@09|PrOA2Q)}GLmeWw>Z-IgrP!B$DG&+9z9m}=rm*mJUQ z$KpTZpRZg7J{#1R>*`?gGx#Apxpr|=(t$GKqrDE4$gkmeH0wsn0h30a_24M!le*dw zteQZRcwxyAN)CSk(40L$2i`{l_10)b$QFxKLDLAj;3T@hUrYVG?Z;B1&e1lv=~Zo) zwpy4+!u!O%`QM;@^x+mg|%h3pn!xhRgZxz1Aw8qjWBh%k70wO0}lBE zJE8bz+NZ zN^y)SPNn`2$N$9Xsf-2xGo$@S_gmh>hsF0L7Dx5Mv+a&IM<F{Lw__G#xU_! zF_aKRrI-;um8~v`((ey25e$JZJ_VSx4Y+TnQQ*x944|GFrU=^K{nd_K($asg>uvxS z40v`DdCJ>T1&y|K-Jr;k#vj~ulsBmX>PfufPttqvYx;Sb&&@qP$Pq~Xk^=~LZsmTr zajTF1N_SlAjGW~L5O`q_1;0`Q+Uy}BVP_=y4txLzowh*GM>5PNvpqk&VA4~se=}WM z)WH8}&N;;YWL($yptIJpzarq~G9XjA^f1)@Af4f6nS;Cg&khj9PXVaDO4ppIb6%DO z8!%hf6IckVKO>1)T2x47lPyv;%{`Q=uMeJ>6;&nC#RWVEv&hgUSdAK#9gR3bxt)rA zPrxbq+F36^JS#F1({{4b;b+N<;cWwe4O7nO!IJ4iRrEPwMJv=)6Z@V}V3x<%ilgO% zDFD#a2@E>r+i3MLhBY#l8~N}fPh4EPt8WQc-kojl zFRPZ@+Jm%Wy12wYnfA3&bZ#RuQaRRu2(*z9z1#eW7KpU@SVY_f)cdesS!7>XK)DM5 z=SVdn8zncw;mN%S&URQRzbNfTDKF$}h*Gp-1jC}LyS$wjyf^5aCiUX!qk#B34r%xd zp9Z}0-c5#Tej2gsw4+*(d8ECGjbmh45pfd6DH+-K!-Z>yFES=d1wU{Ol94|a$Ha90 za8uA&=qK>c(+Uv%z#E+{3rd7LrM+Jlk>YtLZzx66d(nZ+8o^jHyxkX=ig%eJ^W^Vw ze3c$B&lA*U@OeO~)7i8K#7>3{xn?&w7Q0ubLJ@m(&%lOv_}dW&g>pBal4kP}9D|D4y-0%|!118%okXIV{W{LeOjU+K@RC3D5GJyxzC z$RbcYfIX9js5V7hJ4^hC$hwzY%gnObFl|Kx(Yah28F|(rSx-!J^$F6y#R8+wKhJ+w zrviZ*^-1cW{1CQuFv1$+sI)0`Kllz&DoZ3E@8wEH&)q6>@AWYELs2)GFiUUA;jlb} z08?q`B-61<=q{$FmlS4|axMdgpD_xjX;Rd_fM4KfJEFa>(FMc*!v_@L&usjnt$XbL z=ez|lS$3zAyAfz(gJcSp8$j+n&SuThb^(arm>y$ z=rLN@(9)~b9K9VV^=Kz3=p!r(GzsBk-|#dq4^5M<*Irpd(4p{0e3ybfHz@9a^eRK} z0YJL{@uCAK;$v=P%`z{oCjEy)uqBe7jh*!b@8x2HTO=i-Bvd$=GN?*VYRa5F&(>0x zXSKq1ec9=3WsLNx{M#ilBs&~6N9t!`WFGjc`gPD?w)kWfQMWSBGy%d=3|kg_F{@Rr zScm{g8s`#oTAkJ4VcoB>Z_YYv)mgnW-2u8Vd;Rtf&W2Z$Nrtlc!w|BxU&1Ewcygb8 zZmie24-MFm0#K`eE^j%%5rU-mY zAtAP9?1c($H`4>rnGud-B@N}pDxfLFQWO>-9P%J>$AZj*5QSh6^{f$3^S$LyrrKzm zrR9Lq)lg@Ilx}(+DnMn4>3t$QXhH<4`By3yM%Xg!neRy~&TPRWWfQujKPe=+8Gl#{ zt7#AO=ksZ=)&dGqRE9m5c)l`b+_Q8WXW28IWADU*jsUXxh61u|J_sa3Q)0$8d-q4) z8_X4V%Jf)554c0>U_`HqY{%UziUb4}TH(Cj=#`zyzj4N<@sN$gT4tLgFMdnJiM2AlGxKfCV=cRM(P8{$MH$5j_ETxN?-VaWOMNCrLEa*zJJjS?*c&bR zXyUtBBZH)*R_$64RBb88|AyCItN=d$>{J2%C@8`|$@^Xr1o(N-=&8xHJy>-^dB)-B zbP!SK<&xbb(qEjSsKZr}oH`>a=EHW6`C z`B3N*Al6JskC*@liTLkGmg~Bor7v_!$9|R@$B; zcumagwFipe+5SV?rgl*K&pm`4W_~f8ZT;+l=<#AVvel*E!+m#V92~mhe{r|;Zh`c2 zGPwvG_K9j!Ig|LawG#pf!TOBiX4P8I6K=_?WgbgUU$4}2~Rc*9swTRYmiPj@J5rCg}?2gv#x46 zjJ^TBEChNCfFQO5q@PptbcYM@i~oGD#lXMw-3bi)v%d-z3AX1N>-;a)(%N{|iK0RE zTg!j5GgSi#cr=neZVOjM=9yCqlg7S-3jtRSiwhhJzR0D{TQMw=QNj*aG=>}oA)EKo z3xxj&X^jGcKH$I{n1@gV!S~4pm@nbEoD#7kB#)9+&F?Q4p3R={pmO zMIylw#7Anh0cedS2uIZFzQ+^-Zh8%bg6}l0f3&-nli2GOJGs4KQUwNz0$^&eZqojhp(SIc-fMXpm5%DlL0!_o)GGa-_lkD!h4ajq^f{zR)$6I1O4~+r# z**K*B%(J&R#yo^o1I=xkTT#msC8uzv%caHXi$Q$_SPJy9jUa^G#Abkr!yCJ@mc8Lz z?YEfma0}oImn|G{0um$BC4Y9ctj!f)N)|Uj!OoYgo3gzARxbd`I18xc^7tnpVEuBU zQp)E17J48u1z?Wk*LwTuv7SYwF}Aqf)5Rok{-EDQXF>~og3zNtK|xJGjB4g>ms$;e zoB-H{f#e9vN7yWT8~1CxWD+gHIfDBhrl0UvM(hcpa|0A>jx9ICb|Q zK97jkU9KATk2)hy)D;T2@xh2x=%#NDB?3HnfE>PM}3BQ|eGrg;!ZyNU+5D};uLi%|TEQm`Ce`SIyc;eKQ-_hXir)0H5 z#*r_Ek051{p|7j&R@64SMob8qfkH6+c8?Z+)C%cTy2`f@{#G24xpS=}9Pbb1B9w6m z#8wHV1-PRp`H3Ega>Z71H1%{ya4FNes9A=Bbwx^s6Fyvf6lP198@IRbz}oyN@8v*{D84=DaP2>fd*AJh3>@ zAQYiFV2rj95EtV_cJ`>gkiPkvkZBr#DHw`c&W1(;$FEwe==I&H=~0P@cI`cT{%C$x zn(d@I*Lc?vq+Ya3YM(e+e)c9AV<++1k#HGi9#KsNQe$PX8<<-b) z=vn&}z`Dl8`yKAwh*{1PO5Ef^nJJe>Vk8|(4$ELE6QvP2!$S9Cz!hZ^LQ;u+%H-k2 z$04ve2Z#3`cB)Tiat-8F*4cg~S!?NpT^Fu;3`gECU}1HFg8YsVXUpyb*8T$}E?uX! zdn5H|sVn~8bo)Jv?|NDo6km;Yhwnxf+*le?3)`-4TU>BVAhz{*x3M<!13GEm7MBklf9y z7x(5LxxbVF@Q-sq`JPzDYa4toNp`Z;PYxjPqO+NJ5?&`>$Lp$3pvKkPmcBThr>pqi zpcoH#^3`txl`MsfaJHXo*zyzPaNH~AD@N<*>(s`ta8vFKeF7`3Hi%nwN(NJC&LzdZ z5>w3_aZj)@{eHporvM5n}fCo3aaGgn||I zD&P0^`eLEz`$?@VC3ZjA@npSHz*I@W6-j5fBX{K>c~iBlLJ8khHb7xY1EeB5@1Dq+ z!&7RpBr0O^oR%(R~aZdEor)+!Xr^QT1oj zg?Sp=6k|u%)Ltz;c+=%xKKL&X3r>e-mlE2@o~86Q$(J&1h9Z;kvaP}F=n%`|lZ*vE zr&v#`?`>CJ?14*Bwwmab|3l{*9_E%!3de0q8oi{Yjn8u#{9B6uFQ7OwetcO(h+=MR zDYS=qT7`g50)NFFev`*%WB{R0e$A?0=D*Bxc^WYOKqFRcQF6nuhgMC z|Bh2B-Fav7^FM(3%2L$Vb4nWLXWW0`;vD3&$7l?RCsF>1Q8%@GG8oYB)Fu&nX-y}- zA}oJA{qLOfBRfs|s-&T^_}?lp1dsbX0{5UfR$=x%T0eIsbelTJUGc@$Fyp4`_~Hg)7?UiJ zj7}B@mJARqS{}PHR`43>1s-2)+UcGJZ0UIb0p(u`)r)SCsS0ax|KooM*(+>uAuoo2 z^ZYoFii5J9PP{ftHeFr`pukN6?<8X~&k^8n7=Rx$PiY)hb3@Q~tJ-gCA!igA$NRIo z^|soxuEUaF0BX4P^GQEH8kXJ#VV64nIxFvL%w=Y3XDDY2AaIjYKY{f1YY@509?X%P z^_Y3XKI^@a{pDqm%4eay7RP0H*uRA7`as6Y;x@=8$yc zzB$sFYb`Z=lz}+Y_+lVD3#85K8=x${c51sQ9wxwhyp3i08VIu!uv^a z>de#W;F8-eMMZwizs)_+W%m~7ORPyu?1}cDZv4IC&s1*p)M$Y+90f!RRs&$ZLLo%v zX-syIwM)chXnT+p=f*tk#YQb+pKb%(m;x{%QQdJg?3KX!>-xZ{c{tJ6bz_mP#EMWi zgHn5tY#IeLaZwGB2yM^Br4JDIIo^~Pkht&IdNR=kEQhUaCtw6DvW2KKQ|ag!I8Civ zyjK!(m=V$dKJOwqOl-P?UG4GKCwT$N^HYE%+rYieey8XfD-SB4KTdf3hXZ^lZWz%- z51w0IK>og(*c$0y`--%SKEBodgLxq!tG@+`{H0Hl>HS1p!YC{fwpD+{zB}txb|ZN* z1z__;0i<;wXtCeq1@2rNZBBeKWTqM-ezf3a&Pas}C6@PXz)MSGGe(`Fo5b4Zf;vZQ+sn1myP|8e5;T&Z~|-ZY+p zjL9-AwxB$;EJahVS3-Z-4A@%h2IB)=AdNIHhtt>tDd`lrEtf}qjHX~uRO=SNAD4xy zpX3t@f!Nj+z+o*uvTI>y=KyFwq>^ueA75@)&9Wp&n6YO$2kUyIgFWeCvKNFwkHkhx z3FDyGt$Z~-Byps=mK`3#+Uu^8|jM4I(g*&n1-+A9~ZsOpq#gEa`_6jsoGI0K}ru!bX%r(6cS|*hz*D za!l!sETC|HNp8Rl2o4f#PkhN72QGSZ%BHP2(4SjrVyin~3N@{&Am2DROWu^f*K(vr zAnm5X)Fipo2&}akDCL}+=qS(>2Zayz50}N7@TNs3o+I_z{2F-`^Ip%wTNqmu_ZM0v zTL24mhuHt$oXvO^dB``Q*Fu?46t(bWS52?};ekF-Vi@~gWr_KGbUdX^V)5Sgs$^pk z%^_eBwVfdtzGqV)!?0P^2=cl9-nX~@m&Y}bQP9kURk9rn6&X@7S(FqixKgvn?hce; zKu>&{YjT!Pj7qIat;x10m}3E%4hQ$|9=+MjuwnF84H>#3R4IVhnr53CA4_72$8Jq~ z%sTkfRV44C;EBXZtXLnC_!I0k0GcJ&KawwZ^A_{oa;m#Vw%HE07u~+%>w>YLjjq;# zwA6nIZQ&35Bd+c)GNsgx7ApE`M?C4;Mu;3ti-7og%YMWp$sf#DTEpkFjFKJ5ba%e) zh*=Op81A_UeXBXzPKWts$vyU=8Lkd6@+CeIwP6-(^{4*@y#GAF8G!FgpQ$1De-3vv zEgr)>r(3@Ibbfw`VMrxD`q_E}ddAZvY}|PcEv7M=m60c7-+q1@YbC~`v1%=Q=M+s1V-1NtT9%YkhUzV;f3UQxZPKXVA{wL2Q=!AX z59j?HW?}W9ivk{^j>&zODYTu&)U}7s^Q+IvpNqx!jEZCr4KmF2xh&4+J#*(leOnMd z0XE&`9p`c_(aX)k)@XN-;J$oqz0eF!rO%-a_5bADXi_{zMVwJ#ImC}qC7~`iC!oiV zHrMGypo=|T+gQvop@SuICKD=Q6Xz7nz8rD*?T>wEtl@{=)G82FDLBU-Nfi7qS7RO9 zAai*om=pPfmW+~6{aifUmH_VYbFF8pWY)2H@Uuef7qbfdQXOHNk&Yp;4O(BI(@18~ z1B=#p{-29&7GrXY+f{_!v7}Xw8mqYl+FXXsmz)E<9?C=^I<{Q$|GcNCmt}eOh&0aX z=JMp`t&A*s3X6KD5`kpPBQg>$MLXtDaq2^GXnqkIVz(#B4ZF&KCGJNf)^MWTiC&d{ zJTM}Ba8BPL!e5>KgL0ovL01>pQ+_QYVEb>Q!nV}pyd?9(9Y8TizIN(aeEmU`1-bqUgC~VQeBM0KPc@|WXp*=2rf)4%-8SMb-#~4o zT9NGVx;2X?oL^4p@WNCa4trPlo-z$_VKX&xT(0n0=Sz!Wtb53rS;5$M?=Vd4(Y<`( zPG3SEy+`I|o3iF~6%@FtY+w1&u}m{%mkKW7@9fciH2d;pyEd5ayi74)5@w2Mr(5LL zejJRy%<w z`ebfObAZTo8TCh0B{Do=4NHo)U}(9Iw#@avT>2eQ0@S{^E65Fw%Hg_LX7xd7DLesG zU*O<3seIF;gHxI-iN1_{2R9v~_3rZ7ieKj7Q>#>5!a@y44aOxwO-I0-H@&NjTU&g? zozt-LgBUwBlg)q@FJks=>@M?;U0UTsnlSk@g=2 zK&?6n8qCNrWH+N(FqNXcBsfEF8&;f@$ReW&BMOgNL!HUneCdy}iBl;Fx=s&_g04&r z7$5@hNoh2afI(`G8&xP;RZG=o6O)aWNgmOcC@In7tt(1{1lDPir;P~Sqj^EbEJ8Pc zGM250*n|k9H^Y~e7-TgA;yCd5=ee{*3;IVeHKV@m)b{%^3R^#3=hw!Hmw3EgQP*1L3Qg1%>bI=GzK%t$4vp?TPkWC_!I9CHetw75bsX{kL_>8^}}>b zv8;;>TO!4@ng{)1&Ims^e&8aK3gJJMS09zlNU8RoK$(byU@um!@q zBmVrj{PqfsDOfI_YEi~LoW*<05*cx{nArGr`lsd>bX}NCu~Gjee`w%Ue_zrj^yDoM9kqiL z#k>+N*9*)%F8EPJ+LBCI=(7h%iP_!_7Ft4QOeeo?5X+sB#@HuoW1lzz@y`oS1k+V$ z3L&9h_#Wr&Q@6mH>?L70^MlqS`dIUVa=CFfdy;K)KSJ%#eB{v=XtXG}s8JWjRB4FC zxDl!w#|uNG4-bh*t};V(N7p>biooV3jg~_L8JmmFg^UTl?`DZWY#;N#^2q!6I)J)@<6= z7509oPvhX%xKT^E^~T%t1%WS*q+8S=fkCIH4H2)T!C78ixBe^|N)5_EhYT~Z-T!#0 zC60eb)F(W>llG4qV&9|hyT28YLE-in;(kPlS){VhFB^0IE%gprb6FN*HZ{Id66_zB zq(i5)r+x4-st*eCX2pEg>hb6_)Ra8bePJ|>u$OVv!hUVNO{*4>i=v@z!9>)o><0!7Obz?TDrVj@Xprj{w>kKfCK?v-{?m!emVE@g_$N$$|R5cOI9@r7dJdjCrU z)c?QT?7x!QAcE|0eSQG5=p+7Y*ziwCR!NOj%=sv29Y2^Q_7fm3b8diZZ7acIUTp$> ziv4N44G>+2;yN^s9J4U8fbc#8f-sJN1=T`P=(77Uyi&8EG~0nhR7QPVw;Om z;s+yOh}g9Hp1~k10yLFkK~MtFRJA%Fmi}TO36D;OQl%Rg0R6ml9RM+84Dr9$M_)k8 z(SLeFX+i9o0~d;a8@GzBebBTAB@Bdw%BN*8=q!M$|F!jKNPMAQJ4-#|5+XK+JX7{{ zgZ8=pr!}B8^%Dq>MJl~j2WfJU8k`0W8I(K)8CSQhvF~znAjt%|S};J(7XTJX@tJ7p z-wq{Fs|GZuXgwVdR2k3?hG{qRwG8MFgW!b&%-U78`ps_IUV+G(|1Ffo2JM3fyZ0;j z^PLvkP6Pj*1w!%hD|4hbAVrQQZGcgOeAn4Dh~K;%{s;n5{f^(3(HB!ac4scEf4}t^ zW=i4XQnc>}?%;09eXv3~sr4hWiSMg;G3G5x1O0dxif6z1S-j?M6xP`yVcg7U0k6qH| zxEk>0xxJ=so-2^nyLP<>&94VgPk5hkqLv3H4j8U>2cRp^OJGX>>k-{2UG zrFWz#h=I3WZRPmx9o$hMM7AaMu90cyxt<=w7EoRe~i#=1sv z8Nw|9zg1+tN4ps7u_YHW1;sW3aW%^{)* zGpKp5>9f(>?_{T-OZ^{%HxI-#1*4MG3X=EpqEM(z^5mDMh*?);OJO3WDCmVV>%>CO zDE;RARr^VZ+T=@2^w>A1b3>n$ldt*5@w&efVwXm$3;)LL2J_`-{0=}xBQ2&o{2t*B z1+}E9%VP0uW+S|c_WYC?j)m`7V0xZ<7&!Gb?FWV2Z35xon%uH;aIzmET0t1mHIMr3i__y07I&Y1nlt1(1C}ulVdU1<;07E*)A2 z#Szl8Ac+^1g#Fny=qZ=%-2wNfpQHSyIv#C10K@`+aV%5F9q$}oIwDG^bfzU7(90Q? zBP$1TZot~elPQg+}wb&9?azVmcvqUwO)F_0MWGc2p-gR$o|$xktTB9hP}(B|yEk$>?(sk*R0ZqwY5 z@+&QJ`dk8pM4fEoFFXz}5Es53uiwBajl5{5zbER4GXCf2GR71#45eVhw5A&c1w$d4PyJ;-@J0Li6`%3!MiqWA$1E>>7#3gb9)qms*PL^l;Mxq&+j(0NL9%Fh4o){Nqqx&2*92JmHd*t zTB)HJ6O_vY8Tn5($OK;)$zL849c*TQx_kbuy)#cXtplyF3(h7%mjQdG2?Ka4n)8ON z_o$8+!ba&&6+Us)nAGwTw@oulKf*~C2RIdsFaZ;Cq%_p=LE?$S)>x7Lz5g$Xsc0g6 zRNevar`Rgmbba?BQ_P-GbkzfdTml^H;IskF#kEv4Otmlz5-*4=MBgnJ!=d2$3YxBF z(o6#0fZV+SI~jeV=tv+ZGqYH{Izo9Iiqa5>sXDcuq^3MH)FGox6wU(BpcjFU&Q%wkDB$nHUL6F*ykjgo`2UwM4NDK}zMN>#b2K`9ah77>X<5 zCJ^@ApdcHp&FB^LOWV4eI84Wr*m*|xDX?L=(fR2jW7E)PQ^)H=zP9N0=f_tA`>h2> zA%VV9T>i~5+-;Kp)#!uwhxq>%UvFL&f6$u_HAf`UCUNeNet@gp+Av}X-)q05rHgs8*QG zKpOt%D6PTm{+_Q8fRN0Y{pLtMnEm!?V9Na=*`4}Trinv}CW3Y;lB5&~qUve;Ens!O z2u%X8cm#C$IRLY(0)ov59Ht;w3aHVLn_KG@msaUgzar6VQIzV~puS0IY!cZDyybcetatr|H4Jf?q{ zo)VVVjo_(f_Uj&yF@jDXHDYmmanC7!1^J0b)V*-kBr4Njo?<9K77zRx=v6rqQ-s)m zCcfA~v_;nq^qMA}Nsc+7%wWu5t(PREVC{B;RqO=e4I}q)Z4rxJLK<<89Tn54v;1fF zze+XeVPms26N3U;nIL!b8id>0hS?d3!XfP*VhC}dHL|GPwV0>-TkIsKirA3}y8p+m zn}kpLDuH(ce*sG29gH_6#(6Tjp{&e%8Bt;&*Zx5H3b2NQUo`3}eqgEYf}GmPp}9{m z1(AO4=0dvYTeBcGHhK9Dc8hJTP_8g1;PQ<$9N(16k&0b` zat7oI!S1we^IvX-_!of|@DY#VPuHc!p2ptz&c>{o&cE^DAqt$wa*oAK;^ z_s#`@_vkzxHPzHvZ%SDTB+M4yVm=9_&nd)Jz98KB03mV$a^K%k>@60`E>?{o9Om7Z zD46(CXY~YIf;kDtX4U2xPz%kxsL7F$B3(R-FsND5ljck8J8$jJIwyC#+%ym91Vl5F zMHfIo6Cy(w-@rr5ku)U+10>&z!A+tBHPGgs=MVXyPV}unO#%SZIzsVCg6v3``1O2x z=_;X%7vAiXvwZ)3riey?iB&3 z`a`iXy^P}!hd~Q$6tp}WOfz-Fp>5?u9LApD9C6$s8>26d6q)S5SPC==c zZcs@P5D^fN248aa;rr%x=4RHKxtJSZE!Kkfobx~DzxRHg=XX>uh4p*^1?tb#gXhbq zC+nwPrfQxw$Uz*T_9v|9PtE-O(DX4r3MX$K?Ffax0RP}dCp^EhA~|{#n^&#Dr?R&o zNf|1Qc`dpnuQ~#0nMNe1H52Je?Z!SAPREzrDl2o##9DJHJsFDgrvvy^Sg7%fbHPK> ziL+`h1!9nH+7JIyw1F0!)Oi*rXh*C~NxZvwkM=oA6-D&m7G72B|jvlkiDaUe}ycZ zbJ8CSS6`>Dvao0=;0h_#L1TqX9(oC`;@aWZU8G=OzDO58=d;xMGgXw3g_z;eoB9ZFuYrdeR46mS{w)>m5mwOtpHJ8|hsUr627--Vprs;3Qge1~*rn`6`7y zH6N`?lu51%U4~qO7G$%JqqEm=-6mq@I(~Ji#?FwQXmA)ih>puAw1@aOCn(cT@~x>G zO5Cc)eAbD&jqq>f_T3#AA5uxUUL5^E zH@Yqj3ED;Ny;sCP8nS#WM9iD3f%fOGQgn$LmTqwlqM2+UrW5{G7Evb7r4+a!dnp3T zUa*pPszcrUzE2)Nwa<$O|ysJS?# zuesjMI6>FFt#Ok{()Er8_rrvofdRC-PL8#!`N=<8*MYDX#PsGuYW1sNGmct2>-5*- z{d-aq!z&o3pLc;NKlhykJaFcog7s{~z53v~) z-lKa}`B38+4;9K8$-}UqsKFybv7DaWn0I41mleokqoO-%{NyJ$8o+4?jklh#!FYOQCy4W3XZ%jxA;}_BB)~?Iu<4tw)EMU6ZqCVPh){o6jc&Vp} z4CaN*y@TmCgl}_PZPBitxN>0-vQV~Qt99?asLxN&=stobI20c{_<8WisNrQ~4!MV3 z$^SIpIdvTni@=DT$jC3c(4kVfC}pwImPck3wFYn&NWMqMAJi7&fNIMS5lX890JY$@R3XiLVyX)DUtN} zp7FTpDC6mEZwZ1!`m94U6yoHIk#;JkVg16MwJ#eX#U~>tt$J{@G=C5Aw85_|{CHMo zed=UAUg-SCc6bhLR$oG08)z+{gQ~AO>l3;T2t_i5!a`{6rKR6mI5Sjqw2F6%%g^G? zg-&f4-A5FNUvGA=x@J+**7)x}Yov(Y4fcNH9W6a5Ez7Lsi7$l(qQ))GCBMTUrs&;Q zEGh>l)YH0SZ;^}bmfc#qq_(;^=7PFL8J*SU^RPX}n|n1Qc)8=u&PjDa^&b;mKvdU3 zTVq$7kN$r`Ib`||aYZ40&4H_(W{doP`9}OhMaW*iUk|-R^b=p?E;3+*fCKNYyo@>e zL&57`F}C}1!D(-yH8F$&KqE>r?`@z-7UN3mke}CJoW0kX$oC{>8YpzGT@0amwf57t5Le8%>VwA292s>Y z+!C0LL}3mP^ZFnW0NKtU6i_*=g1f1!;q52r*4q>Zs{VrCyB1tXXe2!mg~yNhfskA+ zzgY)iMrV>N%zx%T#S$Dt91)m$ofAmn6wnCeKqnbTJl}KJMS-N>5F3j;l40SE@qu7x zBdwMBty{>f$`xj{1@&+jkxL6vxbjcCXd;!O_rY@RN#Z$P-xII(Y=pPB{X34+^aldL z@byAQv^Gez;4B6X_VcPpj`}X}eknjdm7MWA^^pu|mIwL>nY#O)9-215V0;yt-Q+beV?N@+F|=EPZ}mHa2u|KNCH4OC=XV{}w>W`io9oau&~xu2i+D*`y}4 z8uX}oX)|RSplWiCBZGcO(MTjWkWD8~Hs)@zYqOL&Hj??|rGPGMC0%oDvA(fI+tAj|A=$)Vr zao~xJ1XGzSR8j8Z!o!QPLm51)r_@*%xEg4kPxBG)IqHGeP2{o>8PP0;zC2+m5JJ84ETReHrw z0J;dboI@PlGMwOnDKcop1%|z)cQY7>tFU10)d>70^v}~P&pPXH1+>=lw|L*1(H-4* zt@97>MwJKze5y^|VzBh71+KN8Tf@RS>IGNgZZKZa!ZPb-z%bT;68mbaguIYGERh2&aRuB~| z!K{Qo_^1$tF5pn<;)@m~jD67@0GgAq4%r9fkSiFTLac?pdK7J> zA)0E+S-NweUhQ@EF$W>hH2O=akp#QXjXP7VWX8C8loH?l~upF0!0+X>u1mdorWXsFdpUj+| zECzN8E)w7W15``}F;+&#k0CXF57Ouhf+$<1aLK=KIf$cz>FY!-ueK6NSRcA(naS}xM`p6=c2rDVuSbp|%{y-21A2#Ec zA4A8x@VPxKLM{G@vY`{RvtJAM)J8dXa&v?gsC&3Ed_wG~=t;23F0Ii`iMTAOk;o?% zC{+YBUWI@gQvrSINRT5hA*lMQFC){$zPtk4=?|ZZ3QcOJWqX z1Dn&9jQlA@oijWAWB;eP)6#@?v(Fr^oen*3W8cmj;<69z zcy=*czvrYnf_1^?+qG<|t)$-vpYI`LBQ}1lz9X&{o;mgMT z$J-^C>c^id8t?AHM5ebiiu$gI%Y2dYwv;Tc;PO05aE92-197OYW6w)ct9VPvKQ4lk&1$ zyeKNXSz3TxPR8*o)x1NZoWPaPq%TYz?$7JU&tav1biHY84WQ#19P*mz1w2`;9O$hV zDfaQ~8D2UnCNhR0BC?6{&*vx+JpLe276aP&0k4|ao-aU=o?ZF1hXm3Fm1h}fVRE+Y zKDbTibd732h^iA`HT)O7?e6ft=|;OulpmN$TC=0G&SyWq-~R4~wdnE)E)n-4jiF}d z`CJBbv7n3B>^i#4CzOgPFH#hc)83b*B9>EgoQ!_<`rhr1@-o^v1}|(WZ0%T3=Vltv zf;hy}%7Ccbym4O**Nr{F*>N}1OTiQpDxe~t$m;7XE)vJtA;Z1tz3o2HNQym%2tM+}>f`#(sJ@5I zHKC-D2L5It|{zC!Z*r|+7cZ7b+VqF>+9}Qkw0qd#F^9-E1hA?}p z+pC5sv7`+zj^odfEUQJB7?7WYf~)rp zcEs|&A{Sm{vx-JC(8n>X?b|b0V7IdUuiXlo9ZJ{cl~x;lDyp}s0N^# zn*v9S9fI-SU7h%1P-Tti)>W{d&kTOZGv$T_zU6>$UhPKR3=@ZvV*q zm6IKQZ^O8F;GY$$qOqJL?p<$6b5nu&BVshW7xyL5r0(YvIBB*pCI>skk~M;B)7KON zp79c`b07EKYUSV=UEl{;n^xh2>{3|gvns-jE+@XrA9Z+zo4t<+ASib1SVHSmPV{aqw^?q}I{xml+HY?(;(YP8nDRN|JH zw`df&sjdvXOI2P-?h%kH{6pBo$hw4J7KCI_ayd&2JBbLYEZP={<%h`^{Xg^VR~~=UGT##o5T@nrQ^0t4MtuUr#8h7ruQxD|(u{%e$nUwg`c;E5 zCWEMi2K1#T2*VSxK^4IQ&Ho4mAj4-G);szYIfD&gKPm>%+_jr2!A+M^Q~0@Ac#&;j z;p#@z#p54u{bXe#B1xatyRJQ5OnZ^ODRNJ92tafTO5^$!=HcLlVcoS322pkjByx=? zokR)W6NT-6BtEd__}#b6Id?5vZO+uP`W;gx7(|_?r0-bUFne{#SYZhWEyC-f zL6G$Q+-FWWV2JHF^6S+-%QW^_em`2M%jqi$V22gh)sc56Al`+Q@$ziMx_4r<0gVyn zMq?ncaMytF3Y+Jj{9G?F(1$c=H?cT-hjAEbQbEr^RMK(@1j;61IYig82o-J_(Ay3~ zJEjnDJ<~TdTot^^;-I@4@dP5~ zNkpN@IE79WF(bHw(@!5kqxG`a?rdm+(7gK`TuQb#zyTnuufjAwwALn^zoE7)1mU1! zAcLHUYNrB;%@EKL$BwXRuffcx3_@5V$xv{je#7v4Yq5C?D6%TBFv+5c)CaU&n=@w# zZ=ZlP@j2oP*zJ&TqSrf~ZO}v)Ltp9UskJ05=3VUAbphQKF)PB-+btmJ4McM$W#MXw zmWn%&b!-2zq`GUMpJ9d2K7H)2ye93sVyp$XeJNN1Mx*!yVQTO>vH(CLjXoVKtI&Cw z3?~UXW+4G2R{;7=f#5dZ>nt<2kYH+$ylUdb6J!+SbNwA_NnLBke3^5{sv3Je=*@t> zv=ldm_#vs&zm^0$0g=UDb2EKAy^3MBd2mv+RJKI$bWmI>%(mo|)T5@r<;&g@CFqRpqgKrqPb8ahVy5?7UtN=z%Q(?~MPPNnn!HXMhE6Oo>#xT8l}Lu44aQRHgM z+)7yZ`k$vy)>%fMvHbsk`#*UKG?ds=_`ZBd^KN>@@gnC~`{xasT1-CwV!8l(x!c31 z;l6AbcNeE5EW0grfr%|lq=vJu-cG**f63p6{HRWX*p<}iEb8plrbr{py|QFt{jZFQ8qnhI}O&EE4DTSWTOS~%1DNZfl7923`Lm_PEZSO!yZ;?~kB zG5J=dc53TMW%0q9mEJ28D}(&WZ?*@RsPRwYrWhWk-h}dz-KY8s133EqI0Kc*`{_3K zVl?|32FoKt|2|?;NT|`ME-=Wy7UzwrKBI8uP$%!}nHp{#&gjf{N7`oF2R4>pZg)6Pm#^w@wUld2g<3n7()K{wsTf!jlrTKnF${L!}MC)?o!rJ z2HlDrrYmeJA({K4d0##LY7}}btLyB>5bMnQQt2(fDxCV>Fr(0@&-gKm9A3qv*N%3r zU|FPntUVy{wIJO$QTyZUGuB!g0#&43_&>a?-h3wHqR|8#Zqhy8Zmoy>Hye*mY~0kTUz_ zC~C+b=?3MwE4^9?4f!1(@R(~U_haNf^1mwj(@t095;%F1XvBS5Tw2^0pQ48mGt|R) z8%$IRR&m3YbrAN5TBny=nY4mdrGU$8I#5%hoAh|2{Po_iWT(eoiBSROB)d zS4$^lSOf|ycg7rRW(|f`Fr&(@$8ioB#kMAk_7zw; zzPYI1-#JigplWRXtweZ0L5Iz%#`fEqNy>kYH%WuW!Th~I@e@TkWrcoBXF#L0?d07T zht9oJY&EjSA<672*a;@3Q&kk}Wy@A#j}(25dgG5aYuQ&NM0X3~;-;VS7CKpa8g6vx z*34G>ch6Re0yg)+GyZ#C4Ev#t1`n0&1w|g}{;ln_z)Q$thgB-P1EaOzDpMkEY|8x zb2@D2@7bJIkGxuOf77k{Ud7WeiT%%QtYKA4#rWI0jo%gQOvZZF8sqvE8|}L}%`_F0 zaSDa@n^w%ik4T?8sqt*6-R}wG3aY>mKH_-H6w_@xJsN{-EjHm3+qMe1CN&$`EjsoI z?8R*lv~9b~nrxR%DT)R>1@waVM8;QBOlyQlK3i4)sGIDun-PTfyX3X@`OMPUaP8eS zJlN+;aT+Jm!Bk-tO=@@M#&e~d9!RD*wq)0se|MYu)hSnG+Z$42y&<3S14C>m>=6++ z25eTK3&ur z-7xWMZ)~zc;-sdcd*gC_`w~9ujH_Xx$AtPxUEUeALxV6b&!GFyC(mN-rgb)n)Bcz_ zvmzs&JGMMqjwHgpRs+?t5=@J0Q$0O=6N0-1zFLA#RIJ9O4|o!fmcAuw?AqKO)8~d8 zo>FAhl2T;d>^;26Oo7XuIo~LyL+8bivCi&Dwq18uc#X^I5wVv? zs}?F3Cx0^d9z>gpAB#@LtEQ~v&N0x&kAbKa*Qjwzi|9TS< z2fFVA#^*ES;h!2PjImJn zIq}*#am{><_c{h8Z7|7B`5y0kK?Rq0j=L5Yb-T~(66$)^{;9GabL(;0z>+hZB#lop zQ%-+Fo5^w{22^*dFDAU9sH6YQ&=)yig1(^wzcN7;1Ds9-X nzPQ<@)dszy7|-_Pl*Gq)^Tvp=(>%OZ@Z3XL6`2yLM*;r>cW%7W diff --git a/ej2-javascript/document-editor/images/spell-check-menu.png b/ej2-javascript/document-editor/images/spell-check-menu.png deleted file mode 100644 index 49fe61e67be6cadca098bb09d595cc20cfb07edf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9966 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

    $a}A`1pap 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 F{hXXeZZI5vJE^ZS?QG!C!rS#D@Ry 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 M07*qoM6N<$f-U*kQUCw| diff --git a/ej2-javascript/document-editor/images/table-of-contents.jpeg b/ej2-javascript/document-editor/images/table-of-contents.jpeg deleted file mode 100644 index a85ed5a23b3a0841d8df18e1630b30883dda5d1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16905 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 Oe_a0$TUkN(bN?TrsK<-YN}5wPv2x^Hu9br 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�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 SPl){(_|efc&?r^24F4a|Jf6w` diff --git a/ej2-javascript/document-editor/images/tracked-changes.png b/ej2-javascript/document-editor/images/tracked-changes.png deleted file mode 100644 index 7659bb1cb25b195ad427cd9610812f1f35d3c9f7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36975 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 diff --git a/ej2-javascript/document-editor/images/updatefields.png b/ej2-javascript/document-editor/images/updatefields.png deleted file mode 100644 index 4669502712cc6b395fd864c0248fd629c5f57b92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28015 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

    Q8g#vAZ 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 diff --git a/ej2-javascript/document-editor/import.md b/ej2-javascript/document-editor/import.md deleted file mode 100644 index faf7f0add..000000000 --- a/ej2-javascript/document-editor/import.md +++ /dev/null @@ -1,209 +0,0 @@ ---- -layout: post -title: Import in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Import in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Import -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Import in ##Platform_Name## Document editor control - -In Document Editor, the documents are stored in its own format called **Syncfusion Document Text (SFDT)**. - -The following example shows how to open SFDT data in Document Editor. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/import-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/import-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/import-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/import-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/import-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/import-cs1" %} -{% endif %} - -## Import document from local machine - -The following example shows how to import document from local machine. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/import-sfdt-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/import-sfdt-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/import-sfdt-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/import-sfdt-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/import-sfdt-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/import-sfdt-cs1" %} -{% endif %} - -## Convert word documents into SFDT - -You can convert word documents into SFDT format using the .NET Standard library [`Syncfusion.EJ2.WordEditor.AspNet.Core`]() by the web API service implementation. This library helps you to convert word documents (.dotx,.docx,.docm,.dot,.doc), rich text format documents (.rtf), and text documents (.txt) into SFDT format. - ->Note: The Syncfusion® Document Editor component's document pagination (page-by-page display) can't be guaranteed for all the Word documents to match the pagination of Microsoft Word application. For more information about [why the document pagination (page-by-page display) differs from Microsoft Word](../document-editor/import/#why-the-document-pagination-differs-from-microsoft-word) - -Please refer the following example for converting word documents into SFDT. - -```ts -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -// Initialize the Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor(); - -documenteditor.appendTo('#DocumentEditor'); - -document.getElementById('file_upload').setAttribute('accept', '.dotx,.docx,.docm,.dot,.doc,.rtf,.txt,.xml,.sfdt'); - -//Open file picker. -document.getElementById("import").addEventListener("click", (): void => { - document.getElementById('file_upload').click(); -}); - -document.getElementById('file_upload').addEventListener("change", (e: any): void => { - if (e.target.files[0]) { - //Get the selected file. - let file = e.target.files[0]; - if (file.name.substr(file.name.lastIndexOf('.')) !== '.sfdt') { - loadFile(file); - } - } -}); - -function loadFile(file: File): void { - let ajax: XMLHttpRequest = new XMLHttpRequest(); - ajax.open('POST', 'https://localhost:4000/api/documenteditor/Import', true); - ajax.onreadystatechange = () => { - if (ajax.readyState === 4) { - if (ajax.status === 200 || ajax.status === 304) { - //Open SFDT text in Document Editor - documenteditor.open(ajax.responseText); - } - } - } - let formData: FormData = new FormData(); - formData.append('files', file); - //Send the selected file to web api for converting it into sfdt. - ajax.send(formData); -} -``` - -Here’s how to handle the server-side action for converting word document in to SFDT. - -```c# - [AcceptVerbs("Post")] - public string Import(Microsoft.AspNetCore.Http.IFormCollection data) - { - if (data.Files.Count == 0) - return null; - System.IO.Stream stream = new System.IO.MemoryStream(); - Microsoft.AspNetCore.Http.IFormFile file = data.Files[0]; - int index = file.FileName.LastIndexOf('.'); - string type = index > -1 && index < file.FileName.Length - 1 ? - file.FileName.Substring(index) : ".docx"; - file.CopyTo(stream); - stream.Position = 0; - - Syncfusion.EJ2.DocumentEditor.WordDocument document = Syncfusion.EJ2.DocumentEditor.WordDocument.Load(stream, GetFormatType(type.ToLower())); - string sfdt = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - return sfdt; - } - - internal static Syncfusion.EJ2.DocumentEditor.FormatType GetFormatType(string format) - { - if (string.IsNullOrEmpty(format)) - throw new System.NotSupportedException("EJ2 DocumentEditor does not support this file format."); - switch (format.ToLower()) { - case ".dotx": - case ".docx": - case ".docm": - case ".dotm": - return Syncfusion.EJ2.DocumentEditor.FormatType.Docx; - case ".dot": - case ".doc": - return Syncfusion.EJ2.DocumentEditor.FormatType.Doc; - case ".rtf": - return Syncfusion.EJ2.DocumentEditor.FormatType.Rtf; - case ".txt": - return Syncfusion.EJ2.DocumentEditor.FormatType.Txt; - case ".xml": - return Syncfusion.EJ2.DocumentEditor.FormatType.WordML; - default: - throw new System.NotSupportedException("EJ2 DocumentEditor does not support this file format."); - } - } - -``` - -To know about server-side action, please refer this [page](../document-editor/web-services-overview). - -## Compatibility with Microsoft Word - -Syncfusion® Document Editor is a minimal viable Word document viewer/editor product for web applications. As most compatible Word editor, the product vision is adding valuable feature sets of Microsoft Word, and not to cover 100% feature sets of Microsoft Word desktop application. You can even see the feature sets difference between Microsoft Word desktop and their Word online application. So kindly don't misunderstand this component as a complete replacement for Microsoft Word desktop application and expect 100% feature sets of it. - -### How Syncfusion® accepts the feature request for Document Editor - -Syncfusion accepts new feature request as valid based on feature value and technological feasibility, then plan to implement unsupported features incrementally in future releases in a phase-by-phase manner. - -### How to report the problems in Document Editor - -You can report the problems with displaying, or editing Word documents in Document Editor component through [`support forum`](https://www.syncfusion.com/forums/), [`Direct-Trac`](https://www.syncfusion.com/support/directtrac/), or [`feedback portal`](https://www.syncfusion.com/feedback/). Kindly share the Word document for replicating the problem easily in minimal time. If you have confidential data, you can replace it and attach the document. - -### Why the document pagination differs from Microsoft Word - -For your understanding about the Word document structure and the workflow of Word viewer/editor components, the Word document is a flow document in which content will not be preserved page by page; instead, the content will be preserved sequentially like a HTML file. Only the Word viewer/editor paginates the content of the Word document page by page dynamically, when opened for viewing or editing and this page-wise position information will not be preserved in the document level (it is Word file format specification standard). Syncfusion® Document Editor component also does the same. -  -At present there is a known technical limitation related to slight difference in text size calculated using HTML element based text measuring approach. Even though the text size is calculated with correct font and font size values, the difference lies; it is as low as 0.00XX to 0. XXXX values compared to that of Microsoft Word application’s display. Hence the document pagination (page-by-page display) can't be guaranteed for all the Word documents to match the pagination of Microsoft Word application. - -### How Syncfusion® address the document pagination difference compared to Microsoft Word - -The following table illustrates the reasons for pagination (page-by-page display) difference compared to Microsoft Word in your documents and how Syncfusion® address it. - -| Root causes | How is it solved? | -|-----------------|-------------| -|Any mistake (wrong behavior handled) in lay outing the supported elements and formatting  |Customer can report to Syncfusion® support and track the status through bug report link.  Syncfusion® fixes the bugs in next possible weekly patch release and service pack or main releases. | -|Font missing in deployment environment|Customer can either report to Syncfusion® support and get suggestion or solve it on their own by installing the missing fonts in their deployment environment.| -|Any unsupported elements or formatting present in your document |Customer can report to Syncfusion® support and track the status through feature request link.   Syncfusion® implements unsupported features incrementally in future releases based on feature importance, customer interest, efforts involved, and technological feasibility. Also, suggests alternate approach for possible cases.| -|Technical limitation related to framework   For example, there is a known case with slight fractional difference in text size measured using HTML and Microsoft Word’s display.|Customer can report to Syncfusion® support and track the status through feature request link.  Syncfusion® does research about alternate approaches to overcome the technical limitation/behaviors and process it same as a feature. >Note: Here the challenge is, time schedule for implementation varies based on the alternate solution and its reliability.| - -## See Also - -* [Feature modules](../document-editor/feature-module) -* [How to show and hide spinner while opening document in DocumentEditor](../document-editor/how-to/show-hide-spinner) \ No newline at end of file diff --git a/ej2-javascript/document-editor/js/getting-started.md b/ej2-javascript/document-editor/js/getting-started.md deleted file mode 100644 index 9f21d3b36..000000000 --- a/ej2-javascript/document-editor/js/getting-started.md +++ /dev/null @@ -1,383 +0,0 @@ ---- -layout: post -title: Getting started with ##Platform_Name## Document editor control | Syncfusion -description: Checkout and learn about Getting started with ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Getting started -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Getting started in ##Platform_Name## Document editor control - -The Essential® JS 2 for JavaScript (global script) is an ES5 formatted pure JavaScript framework which can be directly used in latest web browsers. - -## Component Initialization - -The Essential® JS 2 JavaScript components can be initialized by using either of the following ways. - -* Using local script and style references in a HTML page. -* Using CDN link for script and style reference. - -### Using local script and style references in a HTML page - -**Step 1:** Create an app folder `app` for Essential® JS 2 JavaScript components. - -**Step 2:** You can get the global scripts and styles from the [Essential Studio® JavaScript (Essential® JS 2)](https://www.syncfusion.com/downloads/essential-js2/) build installed location. - -**Syntax:** -> Script: `**(installed location)**/JavaScript - EJ2/{RELEASE_VERSION}/Web (Essential JS 2)/JavaScript/{PACKAGE_NAME}/dist/global/{PACKAGE_NAME}.min.js` -> -> Styles: `**(installed location)**/JavaScript - EJ2/{RELEASE_VERSION}/Web (Essential JS 2)/JavaScript/{PACKAGE_NAME}/styles/material.css` - -**Example:** - -> Script: `C:/Program Files (x86)/Syncfusion/Essential Studio/JavaScript - EJ2/23.1.36/Web (Essential JS 2)/JavaScript/ej2-documenteditor/dist/global/ej2-documenteditor.min.js` -> -> Styles: `C:/Program Files (x86)/Syncfusion/Essential Studio/JavaScript - EJ2/23.1.36/Web (Essential JS 2)/JavaScript/ej2-documenteditor/styles/material.css` - -**Step 3:** Create a folder `app/resources` and copy/paste the global scripts and styles from the above installed location to `app/resources` location. - -**Step 4:** Create a HTML page (index.html) in `app` location and add the Essentials JS 2 script and style references. - -```html - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -``` - -**Step 5:** Now, add the `Div` element and initiate the **Essential® JS 2 DocumentEditor** component in the `index.html` by using following code - -```html - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -**Step 6:** Now, run the `index.html` in web browser, it will render the **Essential® JS 2 DocumentEditor** component. - -**Step 7:** To render DocumentEditorContainer component, add the `Div` element and initiate the **Essential® JS 2 DocumentEditorContainer** component in the `index.html` by using following code - -```html - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Now, run the `index.html` in web browser, it will render the **Essential® JS 2 DocumentEditorContainer** component. - -### Using CDN link for script and style reference - -**Step 1:** Create an app folder `app` for the Essential® JS 2 JavaScript components. - -**Step 2:** The Essential® JS 2 component's global scripts and styles are already hosted in the below CDN link formats. - -**Syntax:** -> Script: `https://cdn.syncfusion.com/ej2/23.1.36/{PACKAGE_NAME}/dist/global/{PACKAGE_NAME}.min.js` -> -> Styles: `https://cdn.syncfusion.com/ej2/23.1.36/{PACKAGE_NAME}/styles/material.css` - -**Example:** -> Script: [`https://cdn.syncfusion.com/ej2/23.1.36/ej2-documenteditor/dist/global/ej2-documenteditor.min.js`](https://cdn.syncfusion.com/ej2/23.1.36/ej2-documenteditor/dist/global/ej2-documenteditor.min.js) -> -> Styles: [`https://cdn.syncfusion.com/ej2/23.1.36/ej2-documenteditor/styles/material.css`](https://cdn.syncfusion.com/ej2/23.1.36/ej2-documenteditor/styles/material.css) - -**Step 3:** Create a HTML page (index.html) in `app` location and add the CDN link references. Now, add the `Div` element and initiate the **Essential® JS 2 DocumentEditor** component in the index.html by using following code. - -```html - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -{% previewsample "page.domainurl/code-snippet/document-editor/es5-getting-started-cs1" %} - -**Step 4:** Now, run the `index.html` in web browser, it will render the **Essential® JS 2 DocumentEditor** component. - -**Step 5:** To render DocumentEditorContainer component, add the `Div` element and initiate the **Essential® JS 2 DocumentEditorContainer** component in the index.html by using following code. - -```html - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - - - - -``` - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -{% previewsample "page.domainurl/code-snippet/document-editor/es5-getting-started-cs2" %} - -Now, run the `index.html` in web browser, it will render the **Essential® JS 2 DocumentEditorContainer** component. - -## Server side dependencies - -The Document Editor component requires server-side interactions for the following operations: - -* [Open file formats other than SFDT](../document-editor/import#convert-word-documents-into-sfdt) -* [Paste with formatting](../document-editor/clipboard#paste-with-formatting) -* [Restrict editing](../document-editor/document-management) -* [Spell check](../document-editor/spell-check) -* [Save as file formats other than SFDT and DOCX](../document-editor/server-side-export) - ->Note: If you don't require the above functionalities then you can deploy as pure client-side component without any server-side interactions. - -Please refer the [example from GitHub](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) to configure the web service and set the [serviceUrl](../api/document-editor-container/#serviceurl). - -Syncfusion® provides a predefined [Word Processor server docker image](https://hub.docker.com/r/syncfusion/word-processor-server) targeting ASP.NET Core 2.1 framework. You can directly pull this docker image and deploy it in server on the go. You can also create own docker image by customizing the existing [docker project from GitHub](https://github.com/SyncfusionExamples/Word-Processor-Server-Docker). - ->Note: Staring from `v19.3.0.x`, we have optimized the accuracy of text size measurements such as to match Microsoft Word pagination for most Word documents. This improvement is included as default behavior along with an optional API [to disable it and retain the document pagination behavior of older versions](../document-editor/how-to/disable-optimized-text-measuring).. - -## Frequently Asked Questions - -* [How to localize the Documenteditor container](../document-editor/global-local). -* [How to load the document by default](../document-editor/how-to/open-default-document). -* [How to customize tool bar](../document-editor/how-to/customize-tool-bar). -* [How to resize Document editor component?](../document-editor/how-to/resize-document-editor) -* [How to add a save button to the DocumentEditorContainer component toolbar](../document-editor/how-to/add-save-button-in-toolbar) \ No newline at end of file diff --git a/ej2-javascript/document-editor/js/how-to/customize-ribbon.md b/ej2-javascript/document-editor/js/how-to/customize-ribbon.md deleted file mode 100644 index 44655ef4e..000000000 --- a/ej2-javascript/document-editor/js/how-to/customize-ribbon.md +++ /dev/null @@ -1,246 +0,0 @@ ---- -layout: post -title: Customize Ribbon in ##Platform_Name## Document Editor | Syncfusion -description: Learn how to customize the ribbon in Syncfusion ##Platform_Name## Document Editor - file menu, backstage, tabs, groups, and items. -platform: ej2-javascript -control: Ribbon Customization -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Customize Ribbon in ##Platform_Name## Document Editor - -The Syncfusion Document Editor provides an extensive and flexible API to customize the built-in ribbon UI. You can: - -- Customize the File menu. -- Add the Backstage menu instead of File menu. -- Show, hide, or add Ribbon tabs. -- Show, hide, or add groups within tabs. -- Show, hide, add, enable, or disable items within groups. - -Below are detailed examples for each ribbon customization scenario. - -## File Menu Customization - -Document Editor provides APIs to remove existing File menu items and add new custom items based on your requirements. You can modify the File menu using the [`fileMenuItems`](../api/document-editor-container/#filemenuitems) property. - -In below code example, In the example below, the "Open" and "Export" items have been removed from the File Menu Items, and new custom items have been added. - -```js -import { DocumentEditorContainer, Ribbon } from '@syncfusion/ej2-documenteditor'; - -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, -toolbarMode: 'Ribbon', // Options: 'Ribbon' or 'Toolbar' -ribbonLayout: 'Classic', // Options: 'Simplified' or 'Classic', -fileMenuItems: ["New", "Print", { text: 'Export', id: 'custom_item',iconCss: 'e-icons e-export' } -], -fileMenuItemClick: function (args) { - if (args.item.id) { - container.documentEditor.save('Sample', 'Docx'); - } -}, -height: '590px' }); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Ribbon); -documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -//DocumentEditorContainer control rendering starts -documenteditorContainer.appendTo('#DocumentEditor'); -``` - -## Backstage Menu Customization - -The Document Editor provides an [`backStageMenu`](../api/document-editor-container/#backStageMenu) API to add a backstage menu. When the backstage menu is enabled, the default File menu items are automatically hidden. - -The following code example shows how to add the backstage menu items. - -```ts -import { DocumentEditorContainer, Ribbon } from '@syncfusion/ej2-documenteditor'; - -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, -toolbarMode: 'Ribbon', // Options: 'Ribbon' or 'Toolbar' -ribbonLayout: 'Classic', // Options: 'Simplified' or 'Classic', -backstageMenu: { - text: 'File', - backButton: { text: 'close' }, - items: [ - { id: 'new', text: 'New', iconCss: 'e-icons e-de-ctnr-new' }], -}, -height: '590px' }); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Ribbon); -documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -//DocumentEditorContainer control rendering starts -documenteditorContainer.appendTo('#DocumentEditor'); - -``` - -Refer this documentation know more about [`backstage items`](https://ej2.syncfusion.com/documentation/ribbon/backstage) - -## Tab Customization - -You can customize the ribbon tabs in the Document Editor by showing, hiding, or adding tabs according to your application's requirements. - -### Show/Hide Tab - -Document editor provides the [`showTab`](../api/document-editor-container/ribbon/#showtab) API to show and hide the existing tab using existing `RibbonTabType` and `tabId`. - -The following code example how to show/hide existing tab using existing tab type and tab id. -```ts -// To hide the Home tab using the built-in `RibbonTabType` -container.ribbon.showTab('Home', false); - -// To hide a tab by its tab id (for example, a custom tab) -container.ribbon.showTab('custom_tab', false); -``` - -### Add Tab - -The Document Editor provides the [`addTab`](../api/document-editor-container/ribbon/#addtab) API, which allows you to insert a new custom tab either between existing tabs or at the end of the ribbon tabs. - -```ts -import { RibbonTabModel } from '@syncfusion/ej2-ribbon'; - -// To add the tab at end of tab -let ribbonTab: RibbonTabModel = { - header: 'Custom Tab', id: 'custom_tab', groups: [{ - header: 'Custom Group', collections: [{ - items: [{ - type: 'Button', - buttonSettings: { - content: 'New', - iconCss: 'e-icons e-de-ctnr-new', - clicked: function () { - container.documentEditor.openBlank(); - } - } - }] - }] - }] -}; -container.ribbon.addTab(ribbonTab); - -// To add the tab before the Insert tab(exising tab) -container.ribbon.addTab(ribbonTab,'Insert'); -``` - - -## Group Customization - -You can also customize ribbon groups within a tab to better organize commands or add new functionalities as per your needs. - -### Show/Hide Group - -Document Editor provides an [`showGroup`](../api/document-editor-container/ribbon/#showgroup) API to show or hide existing groups within a ribbon tab. - -The following code example show how to show/hide the group using group Id or [`RibbonGroupInfo`](../api/document-editor-container/#ribbongroupinfo). - -```ts - -// To hide the clipboard group using group index -container.ribbon.showGroup({tabId: 'Home', index: 1} , false); - -// To show the clipboard group using group index -container.ribbon.showGroup({tabId: 'Home', index: 1} , true); - -// To hide the group using id -container.ribbon.showGroup('custom_group', false); - -``` - -### Add Group - -To extend the ribbon's functionality, you can add custom groups to any tab. This allows you to organize related commands together within a tab. - -```ts - -import { RibbonGroupModel } from '@syncfusion/ej2-ribbon'; - -// Add the new group at the end of the Home tab -let ribbonGroup: RibbonGroupModel = -{ - header: 'Custom Group', collections: [{ - items: [{ - type: 'Button', - buttonSettings: { - content: 'New', - iconCss: 'e-icons e-de-ctnr-new', - clicked: function () { - container.documentEditor.openBlank(); - } - } - }] - }] -}; -container.ribbon.addGroup('Home', ribbonGroup); - -// Add the new group at the specified index of the Home tab (before the Clipboard group) - -container.ribbon.addGroup('Home', ribbonGroup, 1); - -``` - -## Item Customization - -You can customize individual items within ribbon groups. This includes showing, hiding, enabling, disabling, or adding new items to any group within a ribbon tab. - -### Show/Hide Item - -Using [`showItems`](../api/document-editor-container/ribbon/#showitems) API in Document editor ribbon to enable/disable the existing item. Here, you can specify the item Id or [`RibbonItemInfo`]. - -The following code example show how to show/hide the item using item Id or [`RibbonItemInfo`](../api/document-editor-container/#ribboniteminfo). - -```ts -// To hide the Bold and Italic items using ribbon item information -container.ribbon.showItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [5, 6] } , false); - -// To show the Bold and Italic items using ribbon item information -container.ribbon.showItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [5, 6] } , true); - -// To hide the item using item id -container.ribbon.showItems('custom_item', false); -``` - -### Enable/Disable Item - -Using [`enableItems`](../api/document-editor-container/ribbon/#enableitems) API in Document editor ribbon to enable/disable the existing item. - -```ts -// To disable the underline using ribbon item info -container.ribbon.enableItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [7] },false); - -// To enable the underline using ribbon item info -container.ribbon.enableItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [7] },true); - -// To disable the item using id -container.ribbon.enableItems('custom_item', false); - -``` - -### Add Item - -You can use the [`addItem`](../api/document-editor-container/ribbon/#additem) API in the Document Editor ribbon to add a new item. Additionally, you can specify the target tab and group where the new item should be placed. - -```ts - -// To add the item at the end of the specified group (the item will be added at the end of the Undo group) -let ribbonItem: RibbonItemModel = { - type: 'Button', - buttonSettings: { - content: 'New', - iconCss: 'e-icons e-de-ctnr-new', - clicked: function () { - container.documentEditor.openBlank(); - } - } -}; -container.ribbon.addItem({ tabId: 'Home', index: 0 }, ribbonItem); - -// To add the item before the specified item index (the item will be added before the Redo item in the Undo group) - -container.ribbon.addItem({ tabId: 'Home', index: 0 }, ribbonItem, 1); - -``` - - -## Related Links - -- [File menu Customization Demo](https://ej2.syncfusion.com/demos/#/material/document-editor/ribbon-customization) \ No newline at end of file diff --git a/ej2-javascript/document-editor/js/how-to/optimize-sfdt.md b/ej2-javascript/document-editor/js/how-to/optimize-sfdt.md deleted file mode 100644 index beb113167..000000000 --- a/ej2-javascript/document-editor/js/how-to/optimize-sfdt.md +++ /dev/null @@ -1,124 +0,0 @@ ---- -layout: post -title: Optimize sfdt in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Optimize sfdt in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Optimize sfdt -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Optimize sfdt in ##Platform_Name## Document editor control - -Starting from version v21.1.x, the SFDT file generated in Word Processor component is optimized by default to reduce the file size. All static keys are minified, and the final JSON string is compressed. This helps reduce the SFDT file size relative to a DOCX file and provides the following benefits, -* File transfer between client and server through the internet gets faster. -* The new optimized SFDT files require less storage space than the old SFDT files. -Hence, the optimized SFDT file can't be directly manipulated as JSON string. - -> This feature comes with a public API to switch between the old and new optimized SFDT format, allowing backward compatibility. - -As a backward compatibility to create older format SFDT files, refer the following code changes, - - - - - - - - - - - - - - - - - - - - -
    Client/ServerOld CodeNew Code from v21.1.x
    Client-side -{% tabs %} -{% highlight js tabtitle="Component Declaration"%} -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer(); -{% endhighlight %} -{% endtabs %} - -{% tabs %} -{% highlight js tabtitle="Component Declaration"%} -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ documentEditorSettings: { optimizeSfdt: false } }); -{% endhighlight %} -{% endtabs %} -
    Server-side C# -{% tabs %} -{% highlight c# tabtitle="Import"%} -WordDocument sfdtDocument = WordDocument.Load(stream, formatType); -string sfdt = Newtonsoft.Json.JsonConvert.SerializeObject(sfdtDocument); -{% endhighlight %} -{% endtabs %} - -{% tabs %} -{% highlight c# tabtitle="Import"%} -WordDocument sfdtDocument = WordDocument.Load(stream, formatType); -sfdtDocument.OptimizeSfdt = false; -string sfdt = Newtonsoft.Json.JsonConvert.SerializeObject(sfdtDocument); -{% endhighlight %} -{% endtabs %} -
    Server-side Java -{% tabs %} -{% highlight java tabtitle="Import"%} -String sfdtDocument = WordProcessorHelper.load(stream, formatType); -{% endhighlight %} -{% endtabs %} - -{% tabs %} -{% highlight java tabtitle="Import"%} -String sfdtDocument = WordProcessorHelper.load(stream, formatType, false); -{% endhighlight %} -{% endtabs %} -
    - -To convert from older format SFDT from a new optimized SFDT file, refer the following code example, - - - - - - - - - - - - - - - - - -
    Client/ServerCode example
    Client-side -{% tabs %} -{% highlight js tabtitle="Component Declaration"%} -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ documentEditorSettings: { optimizeSfdt: false } }); -{% endhighlight %} -{% endtabs %} -
    Server-side C# -{% tabs %} -{% highlight c# tabtitle="Import"%} -using(Syncfusion.DocIO.DLS.WordDocument docIODocument = WordDocument.Save(optimizedSfdt)) { - sfdtDocument = WordDocument.Load(docIODocument); - sfdtDocument.OptimizeSfdt = false; - string oldSfdt = JsonSerializer.Serialize(sfdtDocument); -} -{% endhighlight %} -{% endtabs %} -
    Server-side Java -{% tabs %} -{% highlight java tabtitle="Import"%} -WordDocument docIODocument = WordProcessorHelper.save(optimizedSfdt); -String oldSfdt = WordProcessorHelper.load(docIODocument, false); -{% endhighlight %} -{% endtabs %} -
    \ No newline at end of file diff --git a/ej2-javascript/document-editor/js/ribbon.md b/ej2-javascript/document-editor/js/ribbon.md deleted file mode 100644 index c2753c506..000000000 --- a/ej2-javascript/document-editor/js/ribbon.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -layout: post -title: Ribbon in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about the Ribbon UI in Syncfusion ##Platform_Name## Document editor control, how to switch between Ribbon and Toolbar modes. -platform: ej2-javascript -control: Ribbon -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Ribbon in ##Platform_Name## Document Editor Control - -The Document Editor provides a modern Ribbon interface similar to Microsoft Word's interface. This Ribbon UI provides an efficient and intuitive way to access editing features, organizing commands within well-structured tabs and groups to enhance your document editing experience. Additionally, the Ribbon interface supports contextual tabs. Contextual tabs appear only when certain elements, such as tables, images, or headers/footers, are selected in the document. - -You can switch between the classic **Toolbar** and the new **Ribbon** UI, and you can also choose between **Classic** and **Simplified** ribbon layouts. - -## Enable Ribbon Mode - -To enable Ribbon in Document Editor, use the [`toolbarMode`](../api/document-editor-container/#toolbarmode) property of `DocumentEditorContainer`. The available toolbar modes are: - -- **'Toolbar'** - The traditional toolbar UI. -- **'Ribbon'** - The Ribbon UI, which provides a tabbed interface with grouped commands. - -By default, `toolbarMode` is `Toolbar`. - -The following code shows the how to enable the `Ribbon` in Document Editor. - -```js - -import { DocumentEditorContainer, Ribbon } from '@syncfusion/ej2-documenteditor'; - -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, -toolbarMode: 'Ribbon', // Options: 'Ribbon' or 'Toolbar' -height: '590px' }); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Ribbon); -documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -//DocumentEditorContainer control rendering starts -documenteditorContainer.appendTo('#DocumentEditor'); -``` - -## Ribbon Layouts - -Document Editor provides two different Ribbon layouts: - -- **Classic**: A traditional Office-like ribbon with detailed grouping and larger icons -- **Simplified**: A more compact ribbon design with streamlined controls - -By default, `ribbonLayout` is set to `Simplified`. - -The following code shows the how to configure the ribbon layout in Document Editor: - -```ts - -import { DocumentEditorContainer, Ribbon } from '@syncfusion/ej2-documenteditor'; - -var documenteditorContainer = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, -toolbarMode: 'Ribbon', // Options: 'Ribbon' or 'Toolbar' -ribbonLayout: 'Classic', // Options: 'Simplified' or 'Classic' -height: '590px' }); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Ribbon); -documenteditorContainer.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -//DocumentEditorContainer control rendering starts -documenteditorContainer.appendTo('#DocumentEditor'); -``` - -## See Also - -* [How to customize the ribbon](../document-editor/how-to/customize-ribbon) \ No newline at end of file diff --git a/ej2-javascript/document-editor/js/styles.md b/ej2-javascript/document-editor/js/styles.md deleted file mode 100644 index f0e5ab04d..000000000 --- a/ej2-javascript/document-editor/js/styles.md +++ /dev/null @@ -1,228 +0,0 @@ ---- -layout: post -title: Styles in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Styles in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Styles -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Styles in ##Platform_Name## Document editor control - -Styles are useful for applying a set of formatting consistently throughout the document. In Document Editor, styles are created and added to a document programmatically or via the built-in Styles dialog. - -## Styles definition overview - -A Style in Document Editor should have the following properties: - -* **name**: Name of the style. All styles in a document have a unique name, which is used as an identifier when applying the style. -* **type**: Specifies the document elements that the style will target. For example, paragraph or character. -* **next**: Specifies that the current style inherits the style set to this property. This is how hierarchical styles are defined. -* **link**: Provides a relation between the paragraph and character style. -* **characterFormat**: Specifies the properties of paragraph and character style. -* **paragraphFormat**: Specifies the properties of paragraph style. -* **basedOn**: Specifies that the current style inherits the style set to this property. This is how hierarchical styles are defined. It can be optional. - -> The style type should match the inherited style type. For example, it is not possible to have a character style inherit a paragraph style. - -## Default style - -The default style for span and paragraph properties is normal. It internally inherits the default style of the document loaded or Document Editor component. - -## Style hierarchy - -Each style initially checks its local value for the property that is being evaluated and turns to the style it is based on. If no local value is found, it turns to its default style. - -Style inheritance of different styles are listed as follows: - -### Character style - -Character styles are based only on other character styles. - -The inheritance is: Character properties are inherited from the base character style. - -### Paragraph style - -Paragraph styles are based on other paragraph styles or on linked styles. When a paragraph style is based on another paragraph style, the inheritance of the properties is as follows: -* Paragraph properties are inherited from the base paragraph style. -* Span properties are inherited from the base paragraph style. - -When a paragraph style is based on a linked style, the inheritance of the properties is as follows: -* Paragraph properties are inherited from the paragraph style part in its base linked style. -* Span properties are inherited from the span style part in its base linked style. - -### Linked style - -Linked styles are composite styles and their components are paragraph and character styles with link between them. To apply paragraph properties, take the properties from the linked paragraph style. Similarly, to apply character properties, take the properties from linked character style. Linked styles are based on other linked styles or on paragraph styles. - -When a linked style is based on a paragraph style, the hierarchy of the properties is as follows: - -* Paragraph properties are inherited from the ‘basedOn’ paragraph style. -* Character properties are inherited from the ‘basedOn’ paragraph style. - -When a linked style is based on another linked style, the hierarchy of the properties is as follows: - -* Paragraph properties are inherited from the paragraph style part in its base linked style. -* Span properties are inherited from the span style part in its base linked style. - -## Defining new styles - -New Styles are defined and added to the style collection of the document. In this way, they will be discovered by the default UI and applied to the parts of a document. - -### Defining a character style - -The following example shows how to programmatically create a character style. - -```javascript - -//Initialize Document Editor component. -var documentEditor = new ej.documenteditor.DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); - -// Create custom style object. -var styleJson = { - "type": "Character", - "name": "New CharacterStyle", - "basedOn": "Default Paragraph Font", - "characterFormat": { - "fontSize": 16.0, - "fontFamily": "Calibri Light", - "fontColor": "#2F5496", - "bold": true, - "italic": true, - "underline": "Single" - } -}; - -//Created new style using `createStyle` method. -documentEditor.editor.createStyle(JSON.stringify(styleJson)); -``` - -### Defining a paragraph style - -The following example shows how to programmatically create a paragraph style. - -```javascript - -//Initialize Document Editor component. -var documentEditor = new ej.documenteditor.DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); - -// Create custom style object. -var styleJson = { - "type": "Paragraph", - "name": "New ParagraphStyle", - "basedOn": "Normal", - "characterFormat": { - "fontSize": 16.0, - "fontFamily": "Calibri Light", - "fontColor": "#2F5496", - "bold": true, - "italic": true, - "underline": "Single" - }, - "paragraphFormat": { - "leftIndent": 0.0, - "rightIndent": 0.0, - "firstLineIndent": 0.0, - "beforeSpacing": 12.0, - "afterSpacing": 0.0, - "lineSpacing": 1.0791666507720947, - "lineSpacingType": "Multiple", - "textAlignment": "Left", - "outlineLevel": "Level1" - } -}; - -//Created new style using `createStyle` method. -documentEditor.editor.createStyle(JSON.stringify(styleJson)); -``` - -### Defining a linked style - -The following example shows how to programmatically create linked style. - -```javascript - -//Initialize Document Editor component. -var documentEditor = new ej.documenteditor.DocumentEditor({ enableEditor: true,isReadOnly: false, enableSelection: true }); - -// Create custom style object. -var styleJson = { -    "type": "Paragraph", -    "name": "New Linked", -    "basedOn": "Normal", -    "next": "Normal", -    "link": "New Linked Char", -    "characterFormat": { -        "fontSize": 16.0, -        "fontFamily": "Calibri Light", -        "fontColor": "#2F5496" -    }, -    "paragraphFormat": { -        "leftIndent": 0.0, -        "rightIndent": 0.0, -        "firstLineIndent": 0.0, -        "beforeSpacing": 12.0, -        "afterSpacing": 0.0, -        "lineSpacing": 1.0791666507720947, -        "lineSpacingType": "Multiple", -        "textAlignment": "Left", -        "outlineLevel": "Level1" -    } -}; - -//Created new style using `createStyle` method. -documentEditor.editor.createStyle(JSON.stringify(styleJson)); -``` - -## Applying a style - -The styles are applied using the **applyStyle** method of **editorModule**, the parameter should be passed is the **Name** of the Style. - -The styles of the **Character** type is applied to the currently selected part of the document. If there is no selection, the values that will be applied to the word at caret position. The styles of **Paragraph** type follow the same logic and are applied to all paragraphs in the selection or the current paragraph. - -When there is no selection, styles of **Linked** type will change the values of the paragraph, and apply both the Paragraph and Character properties. When there is selection, Linked Style changes only the character properties of the selected text. - -For example, the following line will apply the "New Linked" to the current paragraph. - -```javascript -//Apply specified style for selected paragraph. -editor.editorModule.applyStyle('New Linked'); - -//Clear direct formatting and apply the specified style -editor.editorModule.applyStyle('New Linked', true); -``` - -## Get Styles - -You can get the styles in the document using the below code snippet. - -```ts -//Get paragraph styles -let paragraphStyles = documentEditor.getStyles('Paragraph'); -//Get character styles -let paragraphStyles = documentEditor.getStyles('Character'); -``` - -## Modify an existing style - -You can modify a existing style with the specified style properties using [`createStyle`](../api/document-editor/editor/#createStyle) method. If modifyExistingStyle parameter is set to `true` the style properties is updated to the existing style. - -The following illustrate to modify an existing style. - -```ts -let styleJson: any = { - "type": "Paragraph", - "name": "Heading 1", - "characterFormat": { - "fontSize": 32, - "fontFamily": "Calibri" - } -}; -documentEditor.editor.createStyle(styleName, true); -``` - -> If modifyExistingStyle parameter is set to true and a style already exists with same name, it modifies the specified properties in the existing style. -> If modifyExistingStyle parameter is set to false and a style already exists with same name, it creates a new style with unique name by appending ‘_1’. Hence, the newly style will not have the specified name. -> If no style exists with same name, it creates a new style. \ No newline at end of file diff --git a/ej2-javascript/document-editor/js/web-services-overview.md b/ej2-javascript/document-editor/js/web-services-overview.md deleted file mode 100644 index 82e37e41a..000000000 --- a/ej2-javascript/document-editor/js/web-services-overview.md +++ /dev/null @@ -1,120 +0,0 @@ ---- -layout: post -title: Web services in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Web services in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Web services -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Web services in ##Platform_Name## Document editor control - -You can deploy web APIs for server-side dependencies of Document Editor component in the following platforms. - -* [ASP.NET Core](../document-editor/web-services/core) -* [ASP.NET MVC](../document-editor/web-services/mvc) -* [Java](../document-editor/web-services/java) - -## Which operations require server-side interaction - -|Operations|When client-server communication will be triggered?|What type of data will be transferred between client and server?| -|------------|--------------------------------------|------------------------| -|[Open file formats other than SFDT](../document-editor/import#convert-word-documents-into-sfdt)|When opening the document other than SFDT (Syncfusion® Document Editor's native file format), the server-side web API is invoked from client-side script.|**Client**: Sends the input file.
    **Server**: Receives the input file and sends the converted SFDT back to the client.

    The server-side web API internally extracts the content from the document (DOCX, DOC, WordML, RTF, HTML) using Syncfusion® Word library (DocIO) and converts it into SFDT for opening the document in Document Editor.| -|[Paste with formatting](../document-editor/clipboard#paste-with-formatting)|When pasting the formatted content (HTML/RTF) received from system clipboard. For converting HTML/RTF to SFDT format.

    **Note**: Whereas plain text received from system clipboard will be pasted directly in the client-side.|**Client**: Sends the input Html or Rtf string.
    **Server**: Receives the input Html or Rtf string and sends the converted SFDT back to the client.| -|[Restrict editing](../document-editor/document-management)|When protecting the document, for generating hash.|**Client**: Sends the input data for hashing algorithm.
    **Server**: Receives the input data for hashing algorithm and sends the result hash information back to the client.| -|[Spellcheck](../document-editor/spell-check)(default)|When the spellchecker is enabled on client-side Document Editor, and it performs the spell check validation for words in the document.|**Client**: Sends the words (string) with their language for spelling validation.
    **Server**: Receives the words (string) with their language for spelling validation and sends the validation result as JSON back to the client.| -|[SpellCheckByPage](../document-editor/spell-check)|Document editor provides options to spellcheck page by page when loading the documents. By [enabling optimized spell check](../document-editor/spell-check#enableoptimizedspellcheck) in client-side, you can perform spellcheck page by page when loading the documents.|**Client**: Sends the words (string) with their language for spelling validation.
    **Server**: Receives the words (string) with their language for spelling validation and sends the validation result as JSON back to the client.| -|[Save as file formats other than SFDT and DOCX](../document-editor/server-side-export) (optional API)|You can configure this API, if you want to save the document in file format other than DOCX and SFDT.

    For saving the files as WordML, DOC, RTF, HTML, ODT, Text using Syncfusion® Word library (DocIO) and PDF using Syncfusion® Word (DocIO) and PDF libraries.|You can transfer document from client to server either as SFDT or DOCX format.

    First option (SFDT):
    **Client**: Sends the SFDT.
    **Server**: Receives the SFDT and saves the converted document as any file format supported by [Syncfusion® Word library (DocIO)](https://www.syncfusion.com/word-framework/net/word-library) in server or sends the saved file to the client browser.

    Second option (DOCX):
    **Client**: Sends the DOCX file.
    **Server**: Receives the DOCX file and saves the converted document as any file format supported by [Syncfusion® Word library (DocIO)](https://www.syncfusion.com/word-framework/net/word-library) in server or sends the saved file to the client browser.| - ->Note: If you don't require the above functionalities then you can deploy as pure client-side component without any server-side interactions. - -Please refer the [example from GitHub](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) to configure the web service and set the [serviceUrl](../api/document-editor-container#serviceurl). - -If your running web service Url is `http://localhost:62869/`, set the serviceUrl like below: - -```ts -container.serviceUrl = "http://localhost:62869/api/documenteditor/"; -``` - -## Required Web API structure - -Please check below table for expected web API structure. - -|Expected method name |Parameters |Return type | -|-----|----|----| -|Import |Files(IFormCollection) |json(sfdt format) | -|SystemClipboard|CustomerParameter: content(type string either rtf or html) and type(either .rtf or .html) |json(sfdt format) | -|RestrictEditing |Parameter of type CustomRestrictParameter
    public class CustomRestrictParameter
    {
    public string passwordBase64 { get; set; }
    public string saltBase64 { get; set; }
    public int spinCount { get; set; }
    } |result hash information | -|SpellCheck(default) |Parameter: SpellCheckJsonData
    public class SpellCheckJsonData
    {
    public int LanguageID { get; set; }
    public string TexttoCheck { get; set; }
    public bool CheckSpelling { get; set; }
    public bool CheckSuggestion { get; set; }
    public bool AddWord { get; set; }
    } |Json type of Spellcheck containing details of spell checked word | -|SpellCheckByPage |Parameter: SpellCheckJsonData
    public class SpellCheckJsonData
    {
    public int LanguageID { get; set; }
    public string TexttoCheck { get; set; }
    public bool CheckSpelling { get; set; }
    public bool CheckSuggestion { get; set; }
    public bool AddWord { get; set; }
    } |Json type of Spellcheck containing details of spell checked word

    **Note**: Document editor provides options to spellcheck page by page when loading the documents. By [enabling optimized spell check](../document-editor/spell-check#enableoptimizedspellcheck) in client-side, you can perform spellcheck page by page when loading the documents. | -|Save(optional API) |parameter: SaveParameter
    public class SaveParameter
    {
    public string Content { get; set; }
    public string FileName { get; set; }
    } |void(Save the file as file stream) | -|ExportSFDT(optional API) |parameter: SaveParameter
    public class SaveParameter
    {
    public string Content { get; set; }
    public string FileName { get; set; }
    } |FileStreamResult (to save the document in client-side) | -|Export(optional API) |Files(IFormCollection) |FileStreamResult (to save the document in client-side) | - -## Customize the expected method name - -Document editor component provides an option to customize the expected method name for Import, SystemClipboard, RestrictEditing and SpellCheck using [serverActionSettings](../api/document-editor-container/documentEditorContainerModel/#serveractionsettings). - -The following example code illustrates how to customize the method name using serverActionSettings. - -```javascript - - var container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px' ,enableSpellCheck:true}); - ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - container.serviceUrl = hostUrl + 'api/documenteditor/'; - // Customize the API name - var settings = { import: 'Import1', systemClipboard: 'SystemClipboard1', spellCheck: 'SpellCheck1', restrictEditing: 'RestrictEditing1' } - container.serverActionSettings = settings; - container.appendTo('#container'); - -``` - -## Add the custom headers to XMLHttpRequest - -Document editor component provides an an option to add custom headers of XMLHttpRequest using the [`headers`](../api/document-editor-container/documentEditorContainerModel/#headers). - -```javascript - - var container = new ej.documenteditor.DocumentEditorContainer({ enableToolbar: true, height: '590px'}); - ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - container.serviceUrl = hostUrl + 'api/documenteditor/'; - // custom headers - var customHeaders = [{ 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' }, { 'Content-Type': 'application/json' }]; - container.headers = customHeaders; - container.appendTo('#container'); - -``` - -## Modify the XMLHttpRequest before request send - -Document editor component provides an option to modify the XMLHttpRequest object (setting additional headers, if needed) using [`beforeXmlHttpRequestSend`](../api/document-editor-container/#beforexmlhttprequestsend) event and it gets triggered before a server request. - -You can customize the required [`XMLHttpRequest`](../api/document-editor/xmlHttpRequestEventArgs/) properties. - -The following example code illustrates how to modify the XMLHttpRequest using beforeXmlHttpRequestSend. - -```javascript -var container = new ej.documenteditor.DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -// Below action, cancel all server-side interactions expect spell check -container.beforeXmlHttpRequestSend = function(args) { - //Here, modifying the request headers - args.headers = [{ syncfusion: 'true' }];; - args.withCredentials = true; - switch (args.serverActionType) { - case 'Import': - case 'RestrictEditing': - case 'SystemClipboard': - args.cancel = true; - break; - } -}; -container.appendTo('#container'); - -``` - -Note: Find the customizable serverActionType values are `'Import' | 'RestrictEditing' | 'SpellCheck' | 'SystemClipboard'`. \ No newline at end of file diff --git a/ej2-javascript/document-editor/keyboard-shortcut.md b/ej2-javascript/document-editor/keyboard-shortcut.md deleted file mode 100644 index af8b22fc7..000000000 --- a/ej2-javascript/document-editor/keyboard-shortcut.md +++ /dev/null @@ -1,134 +0,0 @@ ---- -layout: post -title: Keyboard shortcut in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Keyboard shortcut in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Keyboard shortcut -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Keyboard shortcut in ##Platform_Name## Document editor control - -## Text formatting - -The following table lists the default keyboard shortcuts in Document Editor for formatting text: - -| Key combination | Description | -|-----------------|-------------| -|Ctrl + B |Toggles the bold property of selected text.| -|Ctrl + I | Toggles the italic property of selected text.| -|Ctrl + U | Toggles the underline property of selected text.| -|Ctrl + + | Toggles the subscript formatting of selected text.| -|Ctrl + Shift + + | Toggles the superscript formatting of selected contents.| -| Ctrl + } | Increases the actual font size of selected text by one point.| -| Ctrl + { | Decreases the actual font size of selected text by one point.| - -## Paragraph formatting - -The following table lists the default keyboard shortcuts for formatting the paragraph: - -| Key combination | Description | -|-----------------|-------------| -|Ctrl + E | Selected paragraphs are center aligned.| -|Ctrl + J |Selected paragraphs are justified.| -|Ctrl + L | Selected paragraphs are left aligned.| -|Ctrl + R | Selected paragraphs are right aligned.| -|Ctrl + 1 | Single line spacing is applied for selected paragraphs.| -|Ctrl + 5 | 1.5 line spacing is applied for selected paragraphs.| -|Ctrl + 2 | Double spacing is applied for selected paragraphs.| -|Ctrl + 0 | No spacing is applied before the selected paragraphs.| -|Ctrl + M | Increases the left indent of selected paragraphs by a factor of 36 points.| -|Ctrl + Shift + M | Decreases the left indent of selected paragraphs by a factor of 36 points.| -|Ctrl + * | Show/Hide the hidden characters like spaces, tab, paragraph marks, and breaks.| - -## Clipboard - -|Key Combination| Description | -|---------------|-------------| -|Ctrl + C | Copies selected contents to the clipboard.| -|Ctrl + V | Pastes plain text content from the clipboard.| -|Ctrl + X | Moves selected content to the clipboard.| - -## Keyboard shortcut to navigate around the document - -|Key Combination| Description | -|---------------|-------------| -|Left arrow| Moves the cursor position one character to the left.| -|Right arrow| Moves the cursor position one character to the right.| -|Down arrow| Moves the cursor position down one line.| -|Up arrow| Moves the cursor position up one line.| -|Ctrl + Left arrow| Moves the cursor position one word to the left.| -|Ctrl + Right arrow| Moves the cursor position one word to the right.| -|Ctrl + Up arrow| Moves the cursor position one paragraph up.| -|Ctrl + Down arrow| Moves the cursor position one paragraph down.| -|Tab (in table)| Moves the cursor position one cell to the right.| -|Shift + Tab (in table)| Moves the cursor position one cell to the left.| -|Home| Moves the cursor position to the start of a line.| -|End| Moves the cursor position to the end of a line.| -|Page up| Moves the cursor position one screen up.| -|Page down| Moves the cursor position one screen down.| -|Ctrl + Home| Moves the cursor position to the start of a document.| -|Ctrl + End| Moves the cursor position to the end of a document.| - -## Keyboard shortcut to extend selection - -|Key Combination| Description| -|---------------|------------| -|Shift + Left arrow| Extends selection one character to the left.| -|Shift + Right arrow| Extends selection one character to the right.| -|Shift + Down arrow| Extends selection one line downward.| -|Shift + Up arrow| Extends selection one line upward.| -|Shift + Home| Extends selection to the start of a line.| -|Shift + End| Extends Selection to the end of a line.| -|Ctrl + A| Extends selection to the entire document.| -|Ctrl + Shift + Left arrow| Extends selection one word to the left.| -|Ctrl + Shift + Right arrow| Extends selection one word to the right.| -|Ctrl + Shift + Down arrow| Extends selection to the end of a paragraph.| -|Ctrl + Shift + Up arrow| Extends selection to the start of a paragraph.| -|Ctrl + Shift + Home| Extends selection to the start of a document.| -|Ctrl + Shift + End| Extends selection to the end of a document.| - -## Find and Replace - -|Key Combination|Description| -|---------------|-----------| -|Ctrl + F| Opens options pane.| -|Ctrl + H| Opens replace tab in options pane.| - -## Create, Save and Print document - -|Key Combination|Description| -|---------------|-----------| -|Ctrl + N| Opens empty document.| -|Ctrl + S| Saves the document in SFDT format.| -|Ctrl + P| Prints the document.| - -## Edit Operation - -|Key Combination|Description| -|---------------|-----------| -|Backspace | Deletes one character to the left.| -|Delete | Deletes one character to the right.| -|Ctrl + Z | Undo last performed action.| -|Ctrl + Y | Redo last undo action.| - -## Insert special characters - -|Key Combination|Description| -|---------------|-----------| -|Ctrl + Enter | Inserts page break.| -|Shift + Enter | Inserts line break.| - -## Dialog - -|Key Combination|Description| -|---------------|-----------| -|Ctrl + F| Opens options pane.| -|Ctrl + D| Opens font dialog.| -|Ctrl + K| Opens hyperlink dialog.| - -## See Also - -* [How to override the keyboard shortcuts](../document-editor/how-to/override-the-keyboard-shortcuts) \ No newline at end of file diff --git a/ej2-javascript/document-editor/link.md b/ej2-javascript/document-editor/link.md deleted file mode 100644 index 28659816d..000000000 --- a/ej2-javascript/document-editor/link.md +++ /dev/null @@ -1,204 +0,0 @@ ---- -layout: post -title: Link in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Link in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Link -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Link in ##Platform_Name## Document editor control - -Document Editor supports hyperlink field. You can link a part of the document content to Internet or file location, mail address, or any text within the document. - -## Navigate a hyperlink - -Document Editor triggers ‘requestNavigate’ event whenever user clicks Ctrl key or tap a hyperlink within the document. This event provides necessary details about link type, navigation URL, and local URL (if any) as arguments, and allows you to easily customize the hyperlink navigation functionality. - -### Add the requestNavigate event for DocumentEditor - -The following example illustrates how to add requestNavigate event for DocumentEditor. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/hyperlink-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/hyperlink-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/hyperlink-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/hyperlink-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/hyperlink-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/hyperlink-cs1" %} -{% endif %} - -### Add the requestNavigate event for DocumentEditorContainer component - -The following example illustrates how to add requestNavigate event for DocumentEditorContainer component. - -```ts -import { DocumentEditor, SfdtExport, Selection, RequestNavigateEventArgs } from '@syncfusion/ej2-documenteditor'; - -let hostUrl: string = - 'https://services.syncfusion.com/js/production/'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = hostUrl + 'api/documenteditor/'; -container.appendTo('#container'); - -// Add event listener for requestNavigate event to customize hyperlink navigation functionality -container.documentEditor.requestNavigate = (args: RequestNavigateEventArgs) => { - if (args.linkType !== 'Bookmark') { - let link: string = args.navigationLink; - if (args.localReference.length > 0) { - link += '#' + args.localReference; - } - //Navigate to the selected URL. - window.open(link); - args.isHandled = true; - } -}; -``` - -If the selection is in hyperlink, trigger this event by calling ‘navigateHyperlink’ method of ‘Selection’ instance. Refer to the following example. - -```ts -documenteditor.selection.navigateHyperlink(); -``` - -## Copy link - -Document Editor copies link text of a hyperlink field to the clipboard if the selection is in hyperlink. Refer to the following example. - -```ts -documenteditor.selection.copyHyperlink(); -``` - -## Add hyperlink - -To create a basic hyperlink in the document, press `ENTER` / `SPACEBAR` / `SHIFT + ENTER` / `TAB` key after typing the address, for instance [`http://www.google.com`](http://www.google.com). Document Editor automatically converts this address to a hyperlink field. The text can be considered as a valid URL if it starts with any of the following. - -> ``
    -> ``
    -> `file:///`
    -> `www.`
    -> `mailto:`
    - -Refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/hyperlink-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/hyperlink-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/hyperlink-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/hyperlink-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/hyperlink-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/hyperlink-cs2" %} -{% endif %} - -Also Document Editor expose API [`insertHyperlink()`](../api/document-editor/editor/#inserthyperlink)to insert hyperlink. - -Refer to the following sample code. - -```ts -documenteditor.editor.insertHyperlink('https://www.google.com', 'Google'); -``` - -## Customize screen tip - -You can customize the screen tip text for the hyperlink by using below sample code. - -```ts -documenteditor.editor.insertHyperlink('https://www.google.com', 'Google', '<>'); -``` - -Screen tip text can be modified through UI by using the [Hyperlink dialog](../document-editor/dialog#hyperlink-dialog) - -![Add or modify the screen tip text for hyperlinks in a Word document.](images/screentip.png) - -## Remove hyperlink - -To remove link from hyperlink in the document, press Backspace key at the end of a hyperlink. By removing the link, it will be converted as plain text. You can use ‘removeHyperlink’ method of ‘Editor’ instance if the selection is in hyperlink. Refer to the following example. - -```ts -documenteditor.editor.removeHyperlink(); -``` - -## Hyperlink dialog - -Document Editor provides dialog support to insert or edit a hyperlink. Refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/dialog-cs16/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs16/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs16" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/dialog-cs16/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/dialog-cs16/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/dialog-cs16" %} -{% endif %} - -You can use the following keyboard shortcut to open the hyperlink dialog if the selection is in hyperlink. - -| Key Combination | Description | -|-----------------|-------------| -|Ctrl + K | Open hyperlink dialog that allows you to create or edit hyperlink| - -## See Also - -* [Feature modules](../document-editor/feature-module/) -* [Hyperlink dialog](../document-editor/dialog#hyperlink-dialog) diff --git a/ej2-javascript/document-editor/list-format.md b/ej2-javascript/document-editor/list-format.md deleted file mode 100644 index e1ddaa314..000000000 --- a/ej2-javascript/document-editor/list-format.md +++ /dev/null @@ -1,97 +0,0 @@ ---- -layout: post -title: List format in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about List format in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: List format -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# List format in ##Platform_Name## Document editor control - -Document Editor supports both the single-level and multilevel lists. Lists are used to organize data as step-by-step instructions in documents for easy understanding of key points. You can apply list to the paragraph either using supported APIs. - -## Create bullet list - -Bullets are usually used for unordered lists. To apply bulleted list for selected paragraphs, use the following method of ‘Editor’ instance. - -> applyBullet(bullet, fontFamily); - -|Parameter|Type|Description| -|---------|----|-----------| -|Bullet|string|Bullet character.| -|fontFamily|string|Bullet font family.| - -Refer to the following sample code. - -```ts -documenteditor.editor.applyBullet('\uf0b7', 'Symbol'); -``` - -## Create numbered list - -Numbered lists are usually used for ordered lists. To apply numbered list for selected paragraphs, use the following method of ‘Editor’ instance. - -> applyNumbering(numberFormat,listLevelPattern) - -|Parameter|Type|Description| -|---------|----|-----------| -|numberFormat|string|“%n” representations in ‘numberFormat’ parameter will be replaced by respective list level’s value.“%1)” will be displayed as “1)”| -|listLevelPattern(optional)|string|Default value is 'Arabic'.| - -Refer to the following example. - -```ts -documenteditor.editor.applyNumbering('%1)', 'UpRoman'); -``` - -## Clear list - -You can also clear the list formatting applied for selected paragraphs. Refer to the following sample code. - -```ts -documenteditor.editor.clearList(); -``` - -## Working with lists - -The following sample demonstrates how to create bullet and numbering lists in Document Editor. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/list-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/list-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/list-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/list-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/list-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/list-cs1" %} -{% endif %} - -## Editing numbered list - -Document Editor restarts the numbering or continue numbering for a numbered list. These options are found in the built-in context menu, if the list value is selected. Refer to the following screenshot. - -![Image](images/list.png) - -## See Also - -* [List dialog](../document-editor/dialog#list-dialog) diff --git a/ej2-javascript/document-editor/notes.md b/ej2-javascript/document-editor/notes.md deleted file mode 100644 index f00cc887c..000000000 --- a/ej2-javascript/document-editor/notes.md +++ /dev/null @@ -1,58 +0,0 @@ ---- -layout: post -title: Notes in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Notes in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Notes -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Notes in ##Platform_Name## Document editor control - -DocumentEditorContainer component provides support for inserting footnotes and endnotes through the in-built toolbar. Refer to the following screenshot. - -![Insert footnote endnote](images/note-toolbar.jpg) - -The Footnotes and endnotes are both ways of adding extra bits of information to your writing outside of the main text. You can use footnotes and endnotes to add side comments to your work or to place other publications like books, articles, or websites. - -## Insert footnotes - -Document Editor exposes an API to insert footnotes at cursor position programmatically or can be inserted to the end of selected text. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -//Inject require modules. -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -container.appendTo('#DocumentEditor'); -//Insert footnote in current selection. -container.documentEditor.editor.insertFootnote(); -``` - -## Insert endnotes - -Document Editor exposes an API to insert endnotes at cursor position programmatically or can be inserted to the end of selected text. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -//Inject require modules. -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); -container.appendTo('#DocumentEditor'); -//Insert endnote in current selection. -container.documentEditor.editor.insertEndnote(); -``` - -## Update or edit footnotes and endnotes - -You can update or edit the footnotes and endnotes using the built-in context menu shown up by right-clicking it. The footnote endnote dialog box popup and you can customize the number format and start at. Refer to the following screenshot. - -![Update or edit footnotes and endnotes](images/notes-option.jpg) diff --git a/ej2-javascript/document-editor/opening-documents/aws-s3-bucket.md b/ej2-javascript/document-editor/opening-documents/aws-s3-bucket.md deleted file mode 100644 index 14e12d4ec..000000000 --- a/ej2-javascript/document-editor/opening-documents/aws-s3-bucket.md +++ /dev/null @@ -1,155 +0,0 @@ ---- -layout: post -title: Open document from AWS S3 in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Open document from AWS S3 in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Open document from AWS S3 -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document from AWS S3 - -To load a document from AWS S3 in a Document Editor, you can follow the steps below - -{% if page.publishingplatform == "typescript" %} - -**Step 1:** Create a Simple Document Editor Sample in TypeScript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 1:** Create a Simple Document Editor Sample in Javascript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 2:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Amazon; -using Amazon.S3; -using Amazon.S3.Model; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string _accessKey; -public readonly string _secretKey; -public readonly string _bucketName; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - _accessKey = _configuration.GetValue("AccessKey"); - _secretKey = _configuration.GetValue("SecretKey"); - _bucketName = _configuration.GetValue("BucketName"); -} -``` - -* Create the `LoadFromS3()` method to load the document from AWS S3. - -```csharp - -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("LoadFromS3")] -//Post action for Loading the documents - -public async Task LoadFromS3([FromBody] Dictionary onObject) -{ - MemoryStream stream = new MemoryStream(); - - if (jsonObject == null && !jsonObject.ContainsKey("documentName")) - { - return null; - } - RegionEndpoint bucketRegion = RegionEndpoint.USEast1; - - // Configure the AWS SDK with your access credentials and other settings - var s3Client = new AmazonS3Client(_accessKey, _secretKey, bucketRegion); - - string documentName = jsonObject["documentName"]; - - // Specify the document name or retrieve it from a different source - var response = await s3Client.GetObjectAsync(_bucketName, documentName); - - Stream responseStream = response.ResponseStream; - responseStream.CopyTo(stream); - stream.Seek(0, SeekOrigin.Begin); - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Close(); - return json; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "AccessKey": "Your Access Key from AWS S3", - "SecretKey": "Your Secret Key from AWS S3", - "BucketName": "Your Bucket name from AWS S3" -} -``` - -N> Replace **Your Access Key from AWS S3**, **Your Secret Key from AWS S3**, and **Your Bucket name from AWS S3** with your actual AWS access key, secret key and bucket name - -**Step 3:** Modify the index File in the Document Editor sample - -In the client-side, the document is returned from the web service is opening using [`open`](../../api/document-editor/#open) method. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-aws-s3/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-aws-s3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-aws-s3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **AWSSDK.S3** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/opening-documents/azure-blob-storage.md b/ej2-javascript/document-editor/opening-documents/azure-blob-storage.md deleted file mode 100644 index 3cb876f91..000000000 --- a/ej2-javascript/document-editor/opening-documents/azure-blob-storage.md +++ /dev/null @@ -1,141 +0,0 @@ ---- -layout: post -title: Open document from Azure Blob Storage in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Open document from Azure Blob Storage in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Open document from Azure Blob Storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document from Azure Blob Storage - -To load document from Azure Blob Storage in a Document Editor, you can follow the steps below - -{% if page.publishingplatform == "typescript" %} - -**Step 1:** Create a Simple Document Editor Sample in TypeScript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 1:** Create a Simple Document Editor Sample in Javascript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 2:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Azure.Storage.Blobs; -using Azure.Storage.Blobs.Specialized; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - - -```csharp -private readonly string _storageConnectionString; -private readonly string _storageContainerName; -private readonly ILogger _logger; - -public DocumentEditorController(IConfiguration configuration, ILogger logger) -{ - _storageConnectionString = configuration.GetValue("connectionString"); - _storageContainerName = configuration.GetValue("containerName"); - _logger = logger; -} -``` - -* Modify the `LoadFromAzure()` method to load the document from Azure Blob Storage - -```csharp - -[HttpPost("LoadFromAzure")] -[Microsoft.AspNetCore.Cors.EnableCors("MyPolicy")] -[Route("[controller]/LoadFromAzure")] -//Post action for Loading the PDF documents  -  -public IActionResult LoadFromAzure([FromBody] Dictionary jsonObject) -{ - MemoryStream stream = new MemoryStream(); - - if (jsonObject == null && !jsonObject.ContainsKey("documentName")) - { - return null - } - BlobServiceClient blobServiceClient = new BlobServiceClient(_storageConnectionString); - string fileName = jsonObject["documentName"]; - BlobContainerClient containerClient = blobServiceClient.GetBlobContainerClient(_storageContainerName); - BlockBlobClient blockBlobClient = containerClient.GetBlockBlobClient(fileName); - blockBlobClient.DownloadTo(stream); - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Close(); - return json; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "connectionString": "*Your Connection string from Azure*", - "containerName": "*Your container name in Azure*" -} -``` - -N> Replace **Your Connection string from Azure** with the actual connection string for your Azure Blob Storage account and **Your container name in Azure** with the actual container name - -**Step 3:** Modify the index File in the Document Editor sample - -In the client-side, the document is returned from the web service is opening using [`open`](../../api/document-editor/#open) method. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-azure-blob/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-azure-blob/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-azure-blob/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Azure.Storage.Blobs** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/opening-documents/box-cloud-file-storage.md b/ej2-javascript/document-editor/opening-documents/box-cloud-file-storage.md deleted file mode 100644 index 76fb995fe..000000000 --- a/ej2-javascript/document-editor/opening-documents/box-cloud-file-storage.md +++ /dev/null @@ -1,167 +0,0 @@ ---- -layout: post -title: Opening the document from Box cloud file storage in Syncfusion ##Platform_Name## Document editor control | Syncfusion -description: Learn here to open a document from Box cloud file storage in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Opening from Box cloud file storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document from Box cloud file storage - -To load a document from Box cloud file storage in a document Editor, you can follow the steps below - -**Step 1:** Set up a Box developer account and create a Box application - -To access Box storage programmatically, you'll need a developer account with Box. Go to the [Box Developer Console](https://developer.box.com/), sign in or create a new account, and then create a new Box application. This application will provide you with the necessary credentials Client ID and Client Secret to authenticate and access Box APIs. Before accessing files, you need to authenticate your application to access your Box account. Box API supports `OAuth 2.0 authentication` for this purpose. - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor Sample in TypeScript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor Sample in Javascript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using Box.V2; -using Box.V2.Auth; -using Box.V2.Config; -using Box.V2.Models; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string _accessToken; -public readonly string _clientID; -public readonly string _clientSecret; -public readonly string _folderID; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - _accessToken = _configuration.GetValue("AccessToken"); - _clientID = _configuration.GetValue("ClientID"); - _clientSecret = _configuration.GetValue("ClientSecret"); - _folderID = _configuration.GetValue("FolderID"); -} -``` - -* Create the `LoadFromBoxCloud()` method to load the document from Box cloud file storage. - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("LoadFromBoxCloud")] -//Post action for Loading the documents - -public async Task LoadFromBoxCloud([FromBody] Dictionary jsonObject) -{ - if (jsonObject == null && !jsonObject.ContainsKey("documentName")) - { - return null - } - MemoryStream stream = new MemoryStream(); - // Initialize the Box API client with your authentication credentials - var auth = new OAuthSession(_accessToken, "YOUR_REFRESH_TOKEN", 3600, "bearer"); - var config = new BoxConfigBuilder(_clientID, _clientSecret, new Uri("http://boxsdk")).Build(); - var client = new BoxClient(config, auth); - - // Download the file from Box storage - var items = await client.FoldersManager.GetFolderItemsAsync(_folderID, 1000, autoPaginate: true); - var files = items.Entries.Where(i => i.Type == "file"); - - // Filter the files based on the objectName - var matchingFile = files.FirstOrDefault(file => file.Name == objectName); - - // Fetch the file from Box storage by its name - var fileStream = await client.FilesManager.DownloadAsync(matchingFile.Id); - stream = new MemoryStream(); - await fileStream.CopyToAsync(stream); - - // Reset the position to the beginning of the stream - stream.Position = 0; - - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Close(); - return json; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "AccessToken": "Your_Box_Storage_Access_Token", - "FolderID": "Your_Folder_ID", - "ClientID": "Your_Box_Storage_ClientID", - "ClientSecret": "Your_Box_Storage_ClientSecret" -} -``` - -N> replace **Your_Box_Storage_Access_Token** with your actual box access token, and **Your_Folder_ID** with the ID of the folder in your box storage where you want to perform specific operations. Remember to use your valid box API credentials, as **Your_Box_Storage_ClientID** and **Your_Box_Storage_ClientSecret"** are placeholders for your application's API key and secret. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, the document is returned from the web service is opening using [`open`](../../api/document-editor/#open) method. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-box-cloud-file-storage/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-box-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-box-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Box.V2.Core** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/opening-documents/dropbox-cloud-file-storage.md b/ej2-javascript/document-editor/opening-documents/dropbox-cloud-file-storage.md deleted file mode 100644 index db7c8e9fe..000000000 --- a/ej2-javascript/document-editor/opening-documents/dropbox-cloud-file-storage.md +++ /dev/null @@ -1,150 +0,0 @@ ---- -layout: post -title: Open document from Dropbox cloud file storage in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Open document from Dropbox cloud file storage in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Open document from Dropbox cloud file storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document from Dropbox cloud file storage - -To load a document from Dropbox cloud file storage in a Document editor, you can follow the steps below - -**Step 1:** Create a Dropbox API - -To create a Dropbox API App, you should follow the official documentation provided by Dropbox [link](https://www.dropbox.com/developers/documentation/dotnet#tutorial). The process involves visiting the Dropbox Developer website and using their App Console to set up your API app. This app will allow you to interact with Dropbox programmatically, enabling secure access to files and data. - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor Sample in TypeScript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor Sample in Javascript - -Start by following the steps provided in this [link]((../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Dropbox.Api; -using Dropbox.Api.Files; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string _accessToken; -public readonly string _folderName; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - _accessToken = _configuration.GetValue("AccessToken"); - _folderName = _configuration.GetValue("FolderName"); -} -``` - -* Create the `LoadFromDropBox()` method to load the document from Dropbox cloud file storage. - -```csharp - -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("LoadFromBoxCloud")] -//Post action for Loading the documents - -public async Task LoadFromDropBox([FromBody] Dictionary jsonObject) -{ - if (jsonObject == null && !jsonObject.ContainsKey("documentName")) - { - return null - } - MemoryStream stream = new MemoryStream(); - - using (var dropBox = new DropboxClient(_accessToken)) - { - using (var response = await dropBox.Files.DownloadAsync(_folderName + "/" + fileName)) - { - var byteArray = await response.GetContentAsByteArrayAsync(); - stream = new MemoryStream(byteArray); - } - } - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Close(); - return json; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "AccessToken": "Your_Dropbox_Access_Token", - "FolderName": "Your_Folder_Name" -} -``` - -N> Replace **Your_Dropbox_Access_Token** with your actual Dropbox access token and **Your_Folder_Name** with your folder name. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, the document is returned from the web service is opening using [`open`](../../api/document-editor/#open) method. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-dropbox-cloud-file-storage/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-dropbox-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-dropbox-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Dropbox.Api** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/opening-documents/google-cloud-storage.md b/ej2-javascript/document-editor/opening-documents/google-cloud-storage.md deleted file mode 100644 index 6a1320692..000000000 --- a/ej2-javascript/document-editor/opening-documents/google-cloud-storage.md +++ /dev/null @@ -1,156 +0,0 @@ ---- -layout: post -title: Open document from Google Cloud Storage in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Open document from Google Cloud Storage in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Open document from Google Cloud Storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document from Google Cloud Storage - -To load a document from Google Cloud Storage in a Document editor, you can follow the steps below - -{% if page.publishingplatform == "typescript" %} - -**Step 1:** Create a Simple Document Editor Sample in TypeScript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 1:** Create a Simple Document Editor Sample in Javascript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 2:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Google.Cloud.Storage.V1; -using Google.Apis.Auth.OAuth2; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -// Private readonly object _storageClient -private readonly StorageClient _storageClient; - -private IConfiguration _configuration; - -public readonly string _bucketName; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - - // The key file is used to authenticate with Google Cloud Storage. - string keyFilePath = "path/to/service-account-key.json"; - - // Load the service account credentials from the key file. - var credentials = GoogleCredential.FromFile(keyFilePath); - - // Create a storage client with Application Default Credentials - _storageClient = StorageClient.Create(credentials); - - _configuration = configuration; - - _bucketName = _configuration.GetValue("BucketName"); -} -``` - -* Create the `LoadFromGoogleCloud()` method to load the document from Google Cloud Storage. - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("LoadFromGoogleCloud")] -//Post action for Loading the documents - -public async Task LoadFromGoogleCloud([FromBody] Dictionary jsonObject) -{ - if (jsonObject == null && !jsonObject.ContainsKey("documentName")) - { - return null - } - MemoryStream stream = new MemoryStream(); - - string bucketName = _bucketName; - string objectName = jsonObject["document"]; - _storageClient.DownloadObject(bucketName, objectName, stream); - stream.Position = 0; - - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Close(); - return json; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "BucketName": "Your Bucket name from Google Cloud Storage" -} -``` - -N> Replace **Your Bucket name from Google Cloud Storage** with the actual name of your Google Cloud Storage bucket - -N> Replace **path/to/service-account-key.json** with the actual file path to your service account key JSON file. Make sure to provide the correct path and filename. - -**Step 3:** Modify the index File in the Document Editor sample - -In the client-side, the document is returned from the web service is opening using [`open`](../../api/document-editor/#open) method. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-google-cloud-storage/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-google-cloud-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-google-cloud-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Google.Cloud.Storage.V1** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/opening-documents/google-drive.md b/ej2-javascript/document-editor/opening-documents/google-drive.md deleted file mode 100644 index fb845b211..000000000 --- a/ej2-javascript/document-editor/opening-documents/google-drive.md +++ /dev/null @@ -1,181 +0,0 @@ ---- -layout: post -title: Open document from Google Drive in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Open document from Google Drive in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Open document from Google Drive -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document from Google Drive - -To load a document from Google Drive in a Document editor, you can follow the steps below - -**Step 1:** Set up Google Drive API - -You must set up a project in the Google Developers Console and enable the Google Drive API. Obtain the necessary credentials to access the API. For more information, view the official [link](https://developers.google.com/drive/api/guides/enable-sdk). - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor Sample in TypeScript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor Sample in Javascript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Google.Apis.Drive.v3; -using Google.Apis.Util.Store; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string folderId; -public readonly string applicationName; -public readonly string credentialPath; -private static readonly string[] Scopes = { DriveService.Scope.DriveFile, DriveService.Scope.DriveReadonly}; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - folderId = _configuration.GetValue("FolderId"); - credentialPath = _configuration.GetValue("CredentialPath"); - applicationName = _configuration.GetValue("ApplicationName"); -} -``` - -* Create the `LoadFromGoogleDrive()` method to load the document from Google Drive. - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("LoadFromGoogleDrive")] -//Post action for Loading the documents -public async Task LoadFromGoogleDrive([FromBody] Dictionary jsonObject) -{ - - MemoryStream stream = new MemoryStream(); - UserCredential credential; - using (var stream1 = new FileStream(credentialPath, FileMode.Open, FileAccess.Read)) - { - string credPath = "token.json"; - credential = await GoogleWebAuthorizationBroker.AuthorizeAsync( - GoogleClientSecrets.Load(stream1).Secrets, - Scopes, - "user", - CancellationToken.None, - new FileDataStore(credPath, true)); - } - - // Create Google Drive API service. - var service = new DriveService(new BaseClientService.Initializer() - { - HttpClientInitializer = credential, - ApplicationName = applicationName, - }); - // List DOCX files in Google Drive - listRequest.Q = "mimeType='application/vnd.openxmlformats-officedocument.wordprocessingml.document' and '" + folderId + "' in parents and trashed=false"; - listRequest.Fields = "files(id, name)"; - var files = await listRequest.ExecuteAsync(); - string fileIdToDownload = string.Empty; - foreach (var file in files.Files) - { - string fileId = file.Id; - string fileName = file.Name; - if (fileName == objectName) - { - // Save the matching fileId - fileIdToDownload = fileId; - break; - } - } - string fileIds = fileIdToDownload; - var request = service.Files.Get(fileIds); - await request.DownloadAsync(stream); - stream.Position = 0; - - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Close(); - return json; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "FolderId": "Your Google Drive Folder ID", - "CredentialPath": "Your Path to the OAuth 2.0 Client IDs json file", - "ApplicationName": "Your Application name" -} -``` - -N> Replace **Your Google Drive Folder ID**, **Your Application name**, and **Your Path to the OAuth 2.0 Client IDs json file** with your actual Google drive folder ID , Your name for your application and the path for the JSON file. - -N> The **FolderId** part is the unique identifier for the folder. For example, if your folder URL is: `https://drive.google.com/drive/folders/abc123xyz456`, then the folder ID is `abc123xyz456`. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, the document is returned from the web service is opening using [`open`](../../api/document-editor/#open) method. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-box-cloud-file-storage/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-box-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-box-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Google.Apis.Drive.v3** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/opening-documents/one-drive.md b/ej2-javascript/document-editor/opening-documents/one-drive.md deleted file mode 100644 index fc8e63230..000000000 --- a/ej2-javascript/document-editor/opening-documents/one-drive.md +++ /dev/null @@ -1,185 +0,0 @@ ---- -layout: post -title: Open document from One Drive in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Open document from One Drive in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Open document from One Drive -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Open document from One Drive - -To load a document from One Drive in a Document editor, you can follow the steps below - -**Step 1:** Create the Microsoft graph API. - -Need to create a Microsoft Graph API application and obtain the necessary credentials, namely the application ID and tenant ID. Follow the steps provided in the [link](https://learn.microsoft.com/en-us/training/modules/msgraph-access-file-data/3-exercise-access-files-onedrive) to create the application and obtain the required IDs. - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor Sample in TypeScript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor Sample in Javascript - -Start by following the steps provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview)for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Microsoft.Graph; -using Microsoft.Identity.Client; -using Helpers; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string folderName; -public readonly string applicationId; -public readonly string tenantId; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - folderName = _configuration.GetValue("FolderName"); - tenantId = _configuration.GetValue("TenantId"); - applicationId = _configuration.GetValue("ApplicationId"); -} -``` - -* Create the `LoadFromOneDrive()` method to load the document from One Drive. - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("LoadFromBoxCloud")] -//Post action for Loading the documents - -public async Task LoadFromOneDrive([FromBody] Dictionary jsonObject) -{ - MemoryStream stream = new MemoryStream(); - - var config = LoadAppSettings(); - var client = GetAuthenticatedGraphClient(config); - - var request = client.Me.Drive.Root.Children.Request(); - string folderIdToSearch = string.Empty; - var results = await request.GetAsync(); - - var folder = results.FirstOrDefault(f => f.Name == folderName && f.Folder != null); - if (folder != null) - { - // Save the matching folderId - folderIdToSearch = folder.Id; - } - - var folderRequest = client.Me.Drive.Items[folderIdToSearch].Children.Request(); - var folderContents = await folderRequest.GetAsync(); - - string fileIdToDownload = string.Empty; - var file = folderContents.FirstOrDefault(f => f.File != null && f.Name == objectName); - if (file != null) - { - // Save the matching fileId - fileIdToDownload = file.Id; - } - - string fileIds = fileIdToDownload; - var fileRequest = client.Me.Drive.Items[fileIdToDownload].Content.Request(); - - using (var streamResponse = await fileRequest.GetAsync()) - { - if (streamResponse != null) - { - streamResponse.Seek(0, SeekOrigin.Begin); - await streamResponse.CopyToAsync(stream); - } - } - WordDocument document = WordDocument.Load(stream, FormatType.Docx); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - stream.Close(); - return json; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "TenantId": "Your_Tenant_ID", - "applApplicationIdicationId": "Your_Application_ID", - "FolderName": "Your_Folder_Name_To_Access_The_Files_In_Onedrive" -} - -``` - -N> Replace **Your_Tenent_ID**, **Your_Application_ID**, and **Your_Folder_Name_To_Access_The_Files_In_Onedrive** with your actual tenant ID, application ID, and folder name. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, the document is returned from the web service is opening using [`open`](../../api/document-editor/#open) method. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/open-one-drive/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-one-drive/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/open-one-drive/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The following NuGet packages are required to use the previous code example -* **Microsoft.Identity.Client** -* **Microsoft.Graph** -* **Microsoft.Extensions.Configuration** -* **Microsoft.Extensions.Configuration.FileExtensions** -* **Microsoft.Extensions.Configuration.Json** - -You can install these packages using the NuGet Package Manager in Visual Studio or Visual Studio Code. diff --git a/ej2-javascript/document-editor/overview.md b/ej2-javascript/document-editor/overview.md deleted file mode 100644 index 6f179415a..000000000 --- a/ej2-javascript/document-editor/overview.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -layout: post -title: Overview of ##Platform_Name## Document editor control | Syncfusion -description: Document editor for ##Platform_Name## is used to create, edit, view and print word documents. -platform: ej2-javascript -control: Index -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Overview - -The Document Editor component is used to create, edit, view, and print Word documents in web applications. All the user interactions and editing operations that run purely in the client-side provides much faster editing experience to the users. - -## Key Features - -* [Opens](../document-editor/import) the native `Syncfusion Document Text (*.sfdt)` format documents in the client-side. -* [Saves the documents](../document-editor/export) in the client-side as `Syncfusion Document Text (*.sfdt)` and `Word document (*.docx)`. -* Supports document elements like text, [image](../document-editor/image), [table](../document-editor/table), fields, [bookmark](../document-editor/bookmark),[shapes](../document-editor/shapes), [section](../document-editor/section-format), [header and footer](../document-editor/header-footer). -* Supports the commonly used fields like [hyperlink](../document-editor/link), page number, page count, and table of contents. -* Supports formats like [text](../document-editor/text-format), [paragraph](../document-editor/paragraph-format), [bullets and numbering](../document-editor/list-format), [table](../document-editor/table-format), [page settings](../document-editor/section-format), etc. -* Provides support to create, edit, and apply [paragraph and character styles](../document-editor/styles). -* Provides support to [find and replace](../document-editor/find-and-replace) text within the document. -* Supports all the common editing and formatting operations along with [undo and redo](../document-editor/history). -* Provides support to [cut](../document-editor/clipboard#cut), [copy](../document-editor/clipboard#copy), and [paste](../document-editor/clipboard#paste) rich text contents within the component. Also allows pasting simple text to and from other applications. -* Provides support to insert, and edit [form fields](../document-editor/form-fields). -* Provides support to insert, and edit [comments](../document-editor/comments). -* Provides support to track the [inserted and deleted content](../document-editor/track-changes). -* Provides support to perform [spell checking](../document-editor/spell-check) for any input text -* Allows user interactions like [zoom](../document-editor/scrolling-zooming#zooming), [scroll](../document-editor/scrolling-zooming), select contents through touch, mouse, and keyboard. -* Provides intuitive UI options like context menu, [dialogs](../document-editor/dialog), and [navigation pane](../document-editor/find-and-replace#options-pane). -* [Localizes](../document-editor/global-local) all the static text to any desired language. -* Allows to create a lightweight Word viewer using module injection to view and [prints](../document-editor/print) Word documents. -* Provides a [server-side helper library](../document-editor/web-services-overview) to open the Word documents like DOCX, DOC, WordML, RTF, and Text, by converting it to SFDT file format. - -## Supported Web platforms - -### Other platforms - -* [Javascript(ES5)](https://ej2.syncfusion.com/javascript/documentation/document-editor/getting-started/) -* [Javascript](https://ej2.syncfusion.com/documentation/document-editor/getting-started/) -* [Angular](https://ej2.syncfusion.com/angular/documentation/document-editor/getting-started/) -* [React](https://ej2.syncfusion.com/react/documentation/document-editor/getting-started/) -* [Vue](https://ej2.syncfusion.com/vue/documentation/document-editor/getting-started/) -* [ASP.NET Core](https://ej2.syncfusion.com/aspnetcore/documentation/document-editor/getting-started-core/) -* [ASP.NET MVC](https://ej2.syncfusion.com/aspnetmvc/documentation/document-editor/getting-started/) -* [Blazor](https://blazor.syncfusion.com/documentation/document-editor/getting-started/server-side-application/) - -### Supported platforms for server-side dependencies - -You can deploy web APIs for server-side dependencies of Document Editor component in the following platforms. - -* [ASP.NET Core](../document-editor/web-services/core) -* [ASP.NET MVC](../document-editor/web-services/mvc) -* [Java](../document-editor/web-services/java) - -To know more about server-side dependencies, refer this [page](../document-editor/web-services-overview). - -#### Which operations require server-side interaction - -* Open file formats other than SFDT -* Paste with formatting -* Restrict editing -* Spellcheck -* Save as file formats other than SFDT and DOCX - ->Note: If you don't require the above functionalities then you can deploy as pure client-side component without any server-side interactions. \ No newline at end of file diff --git a/ej2-javascript/document-editor/paragraph-format.md b/ej2-javascript/document-editor/paragraph-format.md deleted file mode 100644 index 62c009f71..000000000 --- a/ej2-javascript/document-editor/paragraph-format.md +++ /dev/null @@ -1,191 +0,0 @@ ---- -layout: post -title: Paragraph format in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Paragraph format in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Paragraph format -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Paragraph format in ##Platform_Name## Document editor control - -Document Editor supports various paragraph formatting options such as text alignment, indentation, paragraph spacing, and more. - -## Indentation - -You can modify the left or right indentation of selected paragraphs using the following sample code. - -```ts -documenteditor.selection.paragraphFormat.leftIndent = 24; -documenteditor.selection.paragraphFormat.rightIndent = 24; -``` - -## Special indentation - -You can define special indent for first line of the paragraph using the following sample code. - -```ts -documenteditor.selection.paragraphFormat.firstLineIndent = 24; -``` - -## Increase indent - -You can increase the left indent of selected paragraphs by a factor of 36 points using the following sample code. - -```ts -documenteditor.editor.increaseIndent() -``` - -## Decrease indent - -You can decrease the left indent of selected paragraphs by a factor of 36 points using the following sample code. - -```ts -documenteditor.editor.decreaseIndent() -``` - -## Text alignment - -You can get or set the text alignment of selected paragraphs using the following sample code. - -```ts -documenteditor.selection.paragraphFormat.textAlignment = 'Center' | 'Left' | 'Right' | 'Justify'; -``` - ->Note: Starting from `v19.4.0.x`, the text justification of Document editor component matches alignment of Microsoft Word 2013 and newer versions based on the compatibility mode present in the document. The DOCX document created using Microsoft Word 2013 and newer versions will have the compatibility mode `Word2013` and follows a special behavior in justifying the text. You can retain the text justification behavior like old versions by modifying the compatibility mode as `Word2010`. - -```ts -documenteditor.documentSettings.compatibilityMode = 'Word2010'; -``` - ->Note: The Document editor component assumes the compatibility mode as `Word2013` by default, if it is not defined for a document. - -![Image](images/word2013justification.png) - -You can toggle the text alignment of selected paragraphs by specifying a value using the following sample code. - -```ts -documenteditor.editor.toggleTextAlignment('Center' | 'Left' | 'Right' | 'Justify'); -``` - -## Line spacing and its type - -You can define the line spacing and its type for selected paragraphs using the following sample code. - -```ts -documenteditor.selection.paragraphFormat.lineSpacingType = 'AtLeast'; -documenteditor.selection.paragraphFormat.lineSpacing = 6; -``` - -## Paragraph spacing - -You can define the spacing before or after the paragraph by using the following sample code. - -```ts -documenteditor.selection.paragraphFormat.beforeSpacing = 24; -documenteditor.selection.paragraphFormat.afterSpacing = 24; -``` - -You can also set automatic spacing before and after the paragraph by using the following sample code. - -```ts -documenteditor.selection.paragraphFormat.spaceBeforeAuto = true; -documenteditor.selection.paragraphFormat.spaceAfterAuto = true; -``` - ->Note: If auto spacing property is enabled, then value defined in the `beforeSpacing` and `afterSpacing` property will not be considered. - -## Pagination properties - -You can enable or disable the following pagination properties for the paragraphs in a Word document. - -* Widow/Orphan control - whether the first and last lines of the paragraph are to remain on the same page as the rest of the paragraph when paginating the document. -* Keep with next - whether the specified paragraph remains on the same page as the paragraph that follows it while paginating the document. -* Keep lines together - whether all lines in the specified paragraphs remain on the same page while paginating the document. - -The following example code illustrates how to enable or disable these pagination properties for the selected paragraphs. - -```ts -documenteditor.selection.paragraphFormat.widowControl = false; -documenteditor.selection.paragraphFormat.keepWithNext = true; -documenteditor.selection.paragraphFormat.keepLinesTogether = true; -``` - -## Paragraph Border - -You can apply borders to the paragraphs in a Word document. Using borders, decorate the paragraphs to set them apart from other paragraphs in the document. - -The following example code illustrates how to apply box border for the selected paragraphs. - -```ts -// left -documenteditor.selection.paragraphFormat.borders.left.lineStyle = 'Single'; -documenteditor.selection.paragraphFormat.borders.left.lineWidth = 3; -documenteditor.selection.paragraphFormat.borders.left.color = "#000000"; - -//right -documenteditor.selection.paragraphFormat.borders.right.lineStyle = 'Single'; -documenteditor.selection.paragraphFormat.borders.right.lineWidth = 3; -documenteditor.selection.paragraphFormat.borders.right.color = "#000000"; - -//top -documenteditor.selection.paragraphFormat.borders.top.lineStyle = 'Single'; -documenteditor.selection.paragraphFormat.borders.top.lineWidth = 3; -documenteditor.selection.paragraphFormat.borders.top.color = "#000000"; - -//bottom -documenteditor.selection.paragraphFormat.borders.bottom.lineStyle = 'Single'; -documenteditor.selection.paragraphFormat.borders.bottom.lineWidth = 3; -documenteditor.selection.paragraphFormat.borders.bottom.color = "#000000"; -``` - -Note: At present, the Document editor component displays all the border styles as single line. But you can apply any border style and get the proper display in Microsoft Word app when opening the exported Word document. - -## Show or Hide Paragraph marks - -You can show or hide the hidden formatting symbols like spaces, tab, paragraph marks, and breaks in Document editor component. These marks help identify the start and end of a paragraph and all the hidden formatting symbols in a Word document. - -The following example code illustrates how to show or hide paragraph marks. - -```ts -documenteditor.documentEditorSettings.showHiddenMarks = true; -``` - -## Toolbar with paragraph formatting options - -The following sample demonstrates the paragraph formatting options using a toolbar. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/paragraph-format-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/paragraph-format-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/paragraph-format-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/paragraph-format-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/paragraph-format-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/paragraph-format-cs1" %} -{% endif %} - -## See Also - -* [Feature modules](../document-editor/feature-module) -* [Paragraph dialog](../document-editor/dialog#paragraph-dialog) -* [Keyboard shortcuts](../document-editor/keyboard-shortcut#paragraph-formatting) diff --git a/ej2-javascript/document-editor/print.md b/ej2-javascript/document-editor/print.md deleted file mode 100644 index 09be7d95f..000000000 --- a/ej2-javascript/document-editor/print.md +++ /dev/null @@ -1,171 +0,0 @@ ---- -layout: post -title: Print in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Print in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Print -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Print in ##Platform_Name## Document editor control - -To print the document, use the [`print`](../api/document-editor#print) method from Document Editor instance. - -Refer to the following example for showing a document and print it. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/print-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/print-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/print-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/print-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/print-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/print-cs1" %} -{% endif %} - -Refer to the following example for creating a document and print it. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/print-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/print-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/print-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/print-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/print-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/print-cs2" %} -{% endif %} - -## Improve print quality - -Document editor provides an option to improve the print quality using [`printDevicePixelRatio`](../api/document-editor/documentEditorSettingsModel/#printdevicepixelratio) in Document editor settings. Document editor using canvas approach to render content. Then, canvas are converted to image and it process for print. Using printDevicePixelRatio API, you can increase the image quality based on your requirement. - -The following example code illustrates how to improve the print quality in Document editor container. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px', - documentEditorSettings: { - printDevicePixelRatio: 2 - } - }); - DocumentEditorContainer.Inject(Toolbar); - container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; - container.appendTo('#container'); -``` -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - ->Note: By default, printDevicePixelRatio value is 1 - -## Print using window object - -You can print the document in Document Editor by passing the window instance. This is useful to implement print in third party frameworks such as electron, where the window instance will not be available. Refer to the following example. - -```ts -import { DocumentEditor, Print } from '@syncfusion/ej2-documenteditor'; - -DocumentEditor.Inject(Print); - -let documenteditor: DocumentEditor = new DocumentEditor({ - enablePrint: true, height: '370px' -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.print(window); -``` - -## Page setup - -Some of the print options cannot be configured using JavaScript. Refer to the following links to learn more about the browser page setup: - -* [`Chrome`](https://support.google.com/chrome/answer/1069693?hl=en&visit_id=1-636335333734668335-3165046395&rd=1/) -* [`Firefox`](https://support.mozilla.org/en-US/kb/how-print-web-pages-firefox/) - -However, you can customize margins, paper, and layout options by modifying the section format properties using page setup dialog - -```ts -import { DocumentEditor, Print, PageSetupDialog, Editor, Selection, EditorHistory } from '@syncfusion/ej2-documenteditor'; - -DocumentEditor.Inject(Print, PageSetupDialog, Editor, Selection, EditorHistory); - -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enablePrint: true, - enablePageSetupDialog: true, - enableEditor: true, - enableSelection: true, - enableEditorHistory: true, - height: '370px' -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.showPageSetupDialog(); -``` - -By customizing margins, papers, and layouts, the layout of the document will be changed in Document Editor. To modify these options during print operation, serialize the document as SFDT using the [`serialize`](../api/document-editor#serialize) method in Document Editor instance and open the SFDT data in another instance of Document Editor in separate window. - -The following example shows how to customize layout options only for printing. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/print-cs3/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/print-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/print-cs3" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/print-cs3/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/print-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/print-cs3" %} -{% endif %} - -## See Also - -* [Feature modules](../document-editor/feature-module/) -* [Page Setup dialog](../document-editor/dialog#page-setup-dialog) diff --git a/ej2-javascript/document-editor/r-t-l.md b/ej2-javascript/document-editor/r-t-l.md deleted file mode 100644 index 93deacf18..000000000 --- a/ej2-javascript/document-editor/r-t-l.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -layout: post -title: R t l in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about R t l in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: R t l -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# R t l in ##Platform_Name## Document editor control - -Document Editor provides RTL (right-to-left) support. This can be enabled using the “enableRtl” property. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/rtl-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/rtl-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/rtl-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/rtl-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/rtl-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/rtl-cs1" %} -{% endif %} \ No newline at end of file diff --git a/ej2-javascript/document-editor/restrict-editing.md b/ej2-javascript/document-editor/restrict-editing.md deleted file mode 100644 index 23b20a8e4..000000000 --- a/ej2-javascript/document-editor/restrict-editing.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -layout: post -title: Restrict editing in ##Platform_Name## Document Editor Control | Syncfusion -description: Learn here all about Restrict editing in Syncfusion ##Platform_Name## Document Editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Restrict editing -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Restrict Editing in ##Platform_Name## Document Editor Control - -Document Editor provides support to restrict editing. When the protected document includes range permission, then unique user or user group only authorized to edit separate text area. - -## Set current user - -You can use the [`currentUser`](../api/document-editor#currentuser) property to authorize the current document user by name, email, or user group name. - -The following code shows how to set currentUser - -```ts -documentEditor.currentUser = 'engineer@mycompany.com'; -``` - -## Highlighting the text area - -You can highlight the editable region of the current user using the [`userColor`](../api/document-editor#usercolor) property. - -The following code shows how to set userColor. - -```ts -documentEditor.userColor = '#fff000'; -``` - -## Restrict Editing Pane - -Restrict Editing Pane provides the following options to manage the document: -* To apply formatting restrictions to the current document, select the allow formatting check box. -* To apply editing restrictions to the current document, select the read only check box. -* To add users to the current document, select more users option and add user from the popup dialog. -* To include range permission to the current document, select parts of the document and choose users who are allowed to freely edit them from the listed check box. -* To apply the chosen editing restrictions, click the **YES,START ENFORCING PROTECTION** button. A dialog box displays asking for a password to protect. -* To stop protection, select **STOP PROTECTION** button. A dialog box displays asking for a password to stop protection. - -The following code shows Restrict Editing Pane. To unprotect the document, use password '123'. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/data-protection-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/data-protection-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/data-protection-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/data-protection-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/data-protection-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/data-protection-cs2" %} -{% endif %} - -### See Also - -* [How to protect the document in form filling mode](../document-editor/form-fields/#protect-the-document-in-form-filling-mode) -* [How to protect the document in comments only mode](../document-editor/comments/#protect-the-document-in-comments-only-mode) -* [How to protect the document in track changes only mode](../document-editor/track-changes/#protect-the-document-in-track-changes-only-mode) \ No newline at end of file diff --git a/ej2-javascript/document-editor/saving-documents/aws-s3-bucket.md b/ej2-javascript/document-editor/saving-documents/aws-s3-bucket.md deleted file mode 100644 index 42313c12f..000000000 --- a/ej2-javascript/document-editor/saving-documents/aws-s3-bucket.md +++ /dev/null @@ -1,163 +0,0 @@ ---- -layout: post -title: Save document to AWS S3 in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Save document to AWS S3 in ##Platform_Name## Document editor of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Save document to AWS S3 -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Save document to AWS S3 - -To save a document to AWS S3, you can follow the steps below - -{% if page.publishingplatform == "typescript" %} - -**Step 1:** Create a Simple Document Editor sample in TypeScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 1:** Create a Simple Document Editor sample in JavaScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 2:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Amazon; -using Amazon.S3; -using Amazon.S3.Model; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string _accessKey; -public readonly string _secretKey; -public readonly string _bucketName; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - _accessKey = _configuration.GetValue("AccessKey"); - _secretKey = _configuration.GetValue("SecretKey"); - _bucketName = _configuration.GetValue("BucketName"); -} -``` - -* Create the `SaveToS3()` method to save the document to AWS S3 bucket - -```csharp - -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("SaveToS3")] -//Post action for save the document to AWS S3 - -public void SaveToS3(IFormCollection data) -{ - if (data.Files.Count == 0) - return; - RegionEndpoint bucketRegion = RegionEndpoint.USEast1; - // Configure the AWS SDK with your access credentials and other settings - var s3Client = new AmazonS3Client(_accessKey, _secretKey, bucketRegion); - string bucketName = _bucketName; - IFormFile file = data.Files[0]; - string documentName = this.GetValue(data, "documentName"); - string result = Path.GetFileNameWithoutExtension(documentName); - Stream stream = new MemoryStream(); - file.CopyTo(stream); - var request = new PutObjectRequest - { - BucketName = bucketName, - Key = result + "_downloaded.docx", - InputStream = stream, - }; - // Upload the document to AWS S3 - var response = s3Client.PutObjectAsync(request).Result; -} - -private string GetValue(IFormCollection data, string key) -{ - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "AccessKey": "Your Access Key from AWS S3", - "SecretKey": "Your Secret Key from AWS S3", - "BucketName": "Your Bucket name from AWS S3" -} -``` - -N> Replace **Your Access Key from AWS S3**, **Your Secret Key from AWS S3**, and **Your Bucket name from AWS S3** with your actual AWS access key, secret key and bucket name - -**Step 3:** Modify the index File in the Document Editor sample - -In the client-side, to export the document into blob the document using [`saveAsBlob`](../../api/document-editor/#saveAsBlob) and sent to server-side for saving in AWS S3 Bucket. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/save-aws-s3/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-aws-s3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-aws-s3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **AWSSDK.S3** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/saving-documents/azure-blob-storage.md b/ej2-javascript/document-editor/saving-documents/azure-blob-storage.md deleted file mode 100644 index ec371e6a2..000000000 --- a/ej2-javascript/document-editor/saving-documents/azure-blob-storage.md +++ /dev/null @@ -1,148 +0,0 @@ ---- -layout: post -title: Save document to Azure Blob Storage in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Save document to Azure Blob Storage in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Save document to Azure Blob Storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Save document to Azure Blob Storage - -To save a document to Azure Blob Storage, you can follow the steps below - -{% if page.publishingplatform == "typescript" %} - -**Step 1:** Create a Simple Document Editor sample in TypeScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 1:** Create a Simple Document Editor sample in JavaScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 2:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Azure.Storage.Blobs; -using Azure.Storage.Blobs.Specialized; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private readonly string _storageConnectionString; -private readonly string _storageContainerName; -private readonly ILogger _logger; - -public DocumentEditorController(IConfiguration configuration, ILogger logger) -{ - _storageConnectionString = configuration.GetValue("connectionString"); - _storageContainerName = configuration.GetValue("containerName"); - _logger = logger; -} -``` - -* Create then 'SaveToAzure' method to save the downloaded documents to Azure Blob Storage container - -```csharp - -[HttpPost("SaveToAzure")] -[Microsoft.AspNetCore.Cors.EnableCors("MyPolicy")] -[Route("[controller]/SaveToAzure")] -//Post action for downloading the documents - -public void Download(IFormCollection data) -{ - if (data.Files.Count == 0) - return; - - BlobServiceClient blobServiceClient = new BlobServiceClient(_storageConnectionString); - BlobContainerClient containerClient = blobServiceClient.GetBlobContainerClient(_storageContainerName); - - IFormFile file = data.Files[0]; - string documentName = this.GetValue(data, "documentName"); - string result = Path.GetFileNameWithoutExtension(documentName); - - // Get a reference to the blob - BlobClient blobClient = containerClient.GetBlobClient(result + "_downloaded.docx"); - - Stream stream = new MemoryStream(); - file.CopyTo(stream); - - // Upload the document to Azure Blob Storage - blobClient.Upload(stream, true); -} - -private string GetValue(IFormCollection data, string key) -{ - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; -} - -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "connectionString": "*Your Connection string from Azure*", - "containerName": "*Your container name in Azure*" -} -``` - -N> Replace **Your Connection string from Azure** with the actual connection string for your Azure Blob Storage account and **Your container name in Azure** with the actual container name - -**Step 3:** Modify the index File in the Document Editor sample - -In the client-side, to export the document into blob the document using [`saveAsBlob`](../../api/document-editor/#saveAsBlob) and sent to server-side for saving in Azure Blob Storage container. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/save-azure-blob/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-azure-blob/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-azure-blob/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Azure.Storage.Blobs** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/saving-documents/box-cloud-file-storage.md b/ej2-javascript/document-editor/saving-documents/box-cloud-file-storage.md deleted file mode 100644 index 138d66ad6..000000000 --- a/ej2-javascript/document-editor/saving-documents/box-cloud-file-storage.md +++ /dev/null @@ -1,172 +0,0 @@ ---- -layout: post -title: Save document to Box cloud file storage in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Save document to Box cloud file storage in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Save document to Box cloud file storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Save document to Box cloud file storage - -To save a document to Box cloud file storage, you can follow the steps below - -**Step 1:** Set up a Box developer account and create a Box application - -To access Box storage programmatically, you'll need a developer account with Box. Go to the [Box Developer Console](https://developer.box.com/), sign in or create a new account, and then create a new Box application. This application will provide you with the necessary credentials Client ID and Client Secret to authenticate and access Box APIs. Before accessing files, you need to authenticate your application to access your Box account. Box API supports `OAuth 2.0 authentication` for this purpose. - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor sample in TypeScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor sample in JavaScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using Box.V2; -using Box.V2.Auth; -using Box.V2.Config; -using Box.V2.Models; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string _accessToken; -public readonly string _clientID; -public readonly string _clientSecret; -public readonly string _folderID; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - _accessToken = _configuration.GetValue("AccessToken"); - _clientID = _configuration.GetValue("ClientID"); - _clientSecret = _configuration.GetValue("ClientSecret"); - _folderID = _configuration.GetValue("FolderID"); -} -``` - -* Create the `SaveToBoxCloud()` method to save the downloaded document to Box cloud file storage bucket - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("SaveToBoxCloud")] -//Post action for downloading the document - -public void SaveToBoxCloud(IFormCollection data) -{ - if (data.Files.Count == 0) - return; - - IFormFile file = data.Files[0]; - string documentName = this.GetValue(data, "documentName"); - string result = Path.GetFileNameWithoutExtension(documentName); - - // Initialize the Box API client with your authentication credentials - var auth = new OAuthSession(_accessToken, "YOUR_REFRESH_TOKEN", 3600, "bearer"); - var config = new BoxConfigBuilder(_clientID, _clientSecret, new Uri("http://boxsdk")).Build(); - var client = new BoxClient(config, auth); - - var fileRequest = new BoxFileRequest - { - Name = result + "_downloaded.docx", - Parent = new BoxFolderRequest { Id = _folderID }, - }; - - Stream stream = new MemoryStream(); - file.CopyTo(stream); - - var boxFile = await client.FilesManager.UploadAsync(fileRequest, stream); -} - -private string GetValue(IFormCollection data, string key) -{ - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "AccessToken": "Your_Box_Storage_Access_Token", - "FolderID": "Your_Folder_ID", - "ClientID": "Your_Box_Storage_ClientID", - "ClientSecret": "Your_Box_Storage_ClientSecret" -} -``` - -N> replace **Your_Box_Storage_Access_Token** with your actual box access token, and **Your_Folder_ID** with the ID of the folder in your box storage where you want to perform specific operations. Remember to use your valid box API credentials, as **Your_Box_Storage_ClientID** and **Your_Box_Storage_ClientSecret"** are placeholders for your application's API key and secret. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, to export the document into blob the document using [`saveAsBlob`](../../api/document-editor/#saveAsBlob) and sent to server-side for saving in Box cloud file storage. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/save-box-cloud-file-storage/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-box-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-box-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Box.V2.Core** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/saving-documents/dropbox-cloud-file-storage.md b/ej2-javascript/document-editor/saving-documents/dropbox-cloud-file-storage.md deleted file mode 100644 index a223fd2a7..000000000 --- a/ej2-javascript/document-editor/saving-documents/dropbox-cloud-file-storage.md +++ /dev/null @@ -1,164 +0,0 @@ ---- -layout: post -title: Save document to Dropbox cloud file storage in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Save document to Dropbox cloud file storage in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Save document to Dropbox cloud file storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Save document to Dropbox cloud file storage - -To save a document to Dropbox cloud file storage, you can follow the steps below - -**Step 1:** Create a Dropbox API - -To create a Dropbox API App, you should follow the official documentation provided by Dropbox [link](https://www.dropbox.com/developers/documentation/dotnet#tutorial). The process involves visiting the Dropbox Developer website and using their App Console to set up your API app. This app will allow you to interact with Dropbox programmatically, enabling secure access to files and data. - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor sample in TypeScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor sample in JavaScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Dropbox.Api; -using Dropbox.Api.Files; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string _accessToken; -public readonly string _folderName; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - _accessToken = _configuration.GetValue("AccessToken"); - _folderName = _configuration.GetValue("FolderName"); -} -``` - -* Create the `SaveToDropBox()` method to save the downloaded document to Dropbox cloud file storage bucket - -```csharp - -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("SaveToDropBox")] -//Post action for downloading the document - -public void SaveToDropBox(IFormCollection data) -{ - if (data.Files.Count == 0) - return; - - IFormFile file = data.Files[0]; - string documentName = this.GetValue(data, "documentName"); - string result = Path.GetFileNameWithoutExtension(documentName); - string fileName = result + "_downloaded.docx"; - - using (var dropBox = new DropboxClient(_accessToken)) - { - Stream stream = new MemoryStream(); - file.CopyTo(stream); - - // Upload the document to Dropbox - var uploadedFile = await dropBox.Files.UploadAsync( - _folderName + "/" + fileName, - WriteMode.Overwrite.Instance, - body: stream - ); - } -} - -private string GetValue(IFormCollection data, string key) -{ - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "AccessToken": "Your_Dropbox_Access_Token", - "FolderName": "Your_Folder_Name" -} -``` - -N> Replace **Your_Dropbox_Access_Token** with your actual Dropbox access token and **Your_Folder_Name** with your folder name. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, to export the document into blob the document using [`saveAsBlob`](../../api/document-editor/#saveAsBlob) and sent to server-side for saving in Dropbox cloud file storage. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/save-dropbox-cloud-file-storage/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-dropbox-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-dropbox-cloud-file-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Dropbox.Api** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/saving-documents/google-cloud-storage.md b/ej2-javascript/document-editor/saving-documents/google-cloud-storage.md deleted file mode 100644 index cccf0b650..000000000 --- a/ej2-javascript/document-editor/saving-documents/google-cloud-storage.md +++ /dev/null @@ -1,167 +0,0 @@ ---- -layout: post -title: Save document to Google Cloud Storage in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Save document to Google Cloud Storage in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Save document to Google Cloud Storage -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Save document to Google Cloud Storage - -To save a document to Google Cloud Storage, you can follow the steps below - -{% if page.publishingplatform == "typescript" %} - -**Step 1:** Create a Simple Document Editor sample in TypeScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 1:** Create a Simple Document Editor sample in JavaScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 2:** Create the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Google.Cloud.Storage.V1; -using Google.Apis.Auth.OAuth2; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -// Private readonly object _storageClient -private readonly StorageClient _storageClient; - -private IConfiguration _configuration; - -public readonly string _bucketName; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - - // The key file is used to authenticate with Google Cloud Storage. - string keyFilePath = "path/to/service-account-key.json"; - - // Load the service account credentials from the key file. - var credentials = GoogleCredential.FromFile(keyFilePath); - - // Create a storage client with Application Default Credentials - _storageClient = StorageClient.Create(credentials); - - _configuration = configuration; - - _bucketName = _configuration.GetValue("BucketName"); -} -``` - -* Create the `SaveToGoogleCloud()` method to save the downloaded document to Google Cloud Storage bucket - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("SaveToGoogleCloud")] -//Post action for downloading the document -public void SaveToGoogleCloud(IFormCollection data) -{ - if (data.Files.Count == 0) - return; - - IFormFile file = data.Files[0]; - string documentName = this.GetValue(data, "documentName"); - string result = Path.GetFileNameWithoutExtension(documentName); - - string bucketName = _bucketName; - - Stream stream = new MemoryStream(); - file.CopyTo(stream); - - // Upload the document to Google Cloud Storage - _storageClient.UploadObject(bucketName, result + "_downloaded.docx", null, stream); - -} - -private string GetValue(IFormCollection data, string key) -{ - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "BucketName": "Your Bucket name from Google Cloud Storage" -} -``` - -N> Replace **Your Bucket name from Google Cloud Storage** with the actual name of your Google Cloud Storage bucket - -N> Replace **path/to/service-account-key.json** with the actual file path to your service account key JSON file. Make sure to provide the correct path and filename. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, to export the document into blob the document using [`saveAsBlob`](../../api/document-editor/#saveAsBlob) and sent to server-side for saving in Google Cloud Storage. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/save-google-cloud-storage/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-google-cloud-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-google-cloud-storage/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Google.Cloud.Storage.V1** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/saving-documents/google-drive.md b/ej2-javascript/document-editor/saving-documents/google-drive.md deleted file mode 100644 index 45d21e72b..000000000 --- a/ej2-javascript/document-editor/saving-documents/google-drive.md +++ /dev/null @@ -1,192 +0,0 @@ ---- -layout: post -title: Save document to Google Drive in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Save document to Google Drive in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Save document to Google Drive -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Save document to Google Drive - -To save a document to Google Drive, you can follow the steps below - -**Step 1:** Set up Google Drive API - -You must set up a project in the Google Developers Console and enable the Google Drive API. Obtain the necessary credentials to access the API. For more information, view the official [link](https://developers.google.com/drive/api/guides/enable-sdk). - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor sample in TypeScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor sample in JavaScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Google.Apis.Drive.v3; -using Google.Apis.Util.Store; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string folderId; -public readonly string applicationName; -public readonly string credentialPath; -private static readonly string[] Scopes = { DriveService.Scope.DriveFile, DriveService.Scope.DriveReadonly}; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - folderId = _configuration.GetValue("FolderId"); - credentialPath = _configuration.GetValue("CredentialPath"); - applicationName = _configuration.GetValue("ApplicationName"); -} -``` - -* Create the `SaveToGoogleDrive()` method to save the downloaded document to Google Drive bucket - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("SaveToGoogleDrive")] -//Post action for downloading the document - -public void SaveToGoogleDrive(IFormCollection data) -{ - if (data.Files.Count == 0) - return; - - IFormFile file = data.Files[0]; - string documentName = this.GetValue(data, "documentName"); - string result = Path.GetFileNameWithoutExtension(documentName); - string fileName = result + "_downloaded.docx"; - - UserCredential credential; - - using (var memStream = new FileStream(credentialPath, FileMode.Open, FileAccess.Read)) - { - string credPath = "token.json"; - credential = await GoogleWebAuthorizationBroker.AuthorizeAsync( - GoogleClientSecrets.Load(memStream).Secrets, - Scopes, - "user", - CancellationToken.None, - new FileDataStore(credPath, true)); - } - - // Create the Drive API service. - var service = new DriveService(new BaseClientService.Initializer() - { - HttpClientInitializer = credential, - ApplicationName = applicationName, - }); - - var fileMetadata = new Google.Apis.Drive.v3.Data.File() - { - Name = fileName, - Parents = new List { folderId } - }; - - Stream stream = new MemoryStream(); - file.CopyTo(stream); - - FilesResource.CreateMediaUpload request; - request = service.Files.Create(fileMetadata, stream, "application/pdf"); - request.Fields = "id"; - object value = await request.UploadAsync(); -} - -private string GetValue(IFormCollection data, string key) -{ - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "FolderId": "Your Google Drive Folder ID", - "CredentialPath": "Your Path to the OAuth 2.0 Client IDs json file", - "ApplicationName": "Your Application name" -} -``` - -N> Replace **Your Google Drive Folder ID**, **Your Application name**, and **Your Path to the OAuth 2.0 Client IDs json file** with your actual Google drive folder ID , Your name for your application and the path for the JSON file. - -N> The **FolderId** part is the unique identifier for the folder. For example, if your folder URL is: `https://drive.google.com/drive/folders/abc123xyz456`, then the folder ID is `abc123xyz456`. - -N> You must use a unique `Client_ID` from json file to interface your application with the Google Drive API in order to save document directly to Google Drive. This Client_ID will serve as the authentication key, allowing you to save files securely. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, to export the document into blob the document using [`saveAsBlob`](../../api/document-editor/#saveAsBlob) and sent to server-side for saving in Google Drive. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/save-google-drive/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-google-drive/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-google-drive/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The **Google.Apis.Drive.v3** NuGet package must be installed in your application to use the previous code example. diff --git a/ej2-javascript/document-editor/saving-documents/one-drive.md b/ej2-javascript/document-editor/saving-documents/one-drive.md deleted file mode 100644 index 4117c98ca..000000000 --- a/ej2-javascript/document-editor/saving-documents/one-drive.md +++ /dev/null @@ -1,189 +0,0 @@ ---- -layout: post -title: Save document to One Drive in ##Platform_Name## Document editor control | Syncfusion -description: Learn about how to Save document to One Drive in ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Save document to One Drive -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Save document to One Drive - -To save a document to One Drive, you can follow the steps below - -**Step 1:** Create the Microsoft graph API. - -Need to create a Microsoft Graph API application and obtain the necessary credentials, namely the application ID and tenant ID. Follow the steps provided in the [link](https://learn.microsoft.com/en-us/training/modules/msgraph-access-file-data/3-exercise-access-files-onedrive) to create the application and obtain the required IDs. - -{% if page.publishingplatform == "typescript" %} - -**Step 2:** Create a Simple Document Editor sample in TypeScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Typescript. This will give you a basic setup of the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -**Step 2:** Create a Simple Document Editor sample in JavaScript - -Follow the instructions provided in this [link](../../document-editor/getting-started) to create a simple Document Editor sample in Javascript. This will give you a basic setup of the Document Editor component. - -{% endif %} - -**Step 3:** Modify the `DocumentEditorController.cs` File in the Web Service Project - -{% if page.publishingplatform == "typescript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% elsif page.publishingplatform == "javascript" %} - -* Create a web service project in .NET Core 3.0 or above. You can refer to this [link](../../document-editor/web-services-overview) for instructions on how to create a web service project. - -{% endif %} - -* Open the `DocumentEditorController.cs` file in your web service project. - -* Import the required namespaces at the top of the file: - -```csharp -using System.IO; -using Microsoft.Graph; -using Microsoft.Identity.Client; -using Helpers; -``` - -* Add the following private fields and constructor parameters to the `DocumentEditorController` class, In the constructor, assign the values from the configuration to the corresponding fields - -```csharp -private IConfiguration _configuration; -public readonly string folderName; -public readonly string applicationId; -public readonly string tenantId; - -public DocumentEditorController(IWebHostEnvironment hostingEnvironment, IMemoryCache cache, IConfiguration configuration) -{ - _hostingEnvironment = hostingEnvironment; - _cache = cache; - _configuration = configuration; - folderName = _configuration.GetValue("FolderName"); - tenantId = _configuration.GetValue("TenantId"); - applicationId = _configuration.GetValue("ApplicationId"); -} -``` - -* Create the `SaveToOneDrive()` method to save the downloaded document to One Drive bucket - -```csharp -[AcceptVerbs("Post")] -[HttpPost] -[EnableCors("AllowAllOrigins")] -[Route("SaveToOneDrive")] -//Post action for downloading the document - -public void SaveToOneDrive(IFormCollection data) -{ - - if (data.Files.Count == 0) - return; - - IFormFile file = data.Files[0]; - string documentName = this.GetValue(data, "documentName"); - string result = Path.GetFileNameWithoutExtension(documentName); - string fileName = result + "_downloaded.docx"; - - Stream stream = new MemoryStream(); - file.CopyTo(stream); - - - var config = LoadAppSettings(); - var client = GetAuthenticatedGraphClient(config); - - var request = client.Me.Drive.Root.Children.Request(); - string folderId = string.Empty; - var results = await request.GetAsync(); - - var folder = results.FirstOrDefault(f => f.Name == folderName && f.Folder != null); - if (folder != null) - { - // Save the matching folderId - folderId = folder.Id; - } - - var uploadedFile = client.Me.Drive.Items[folderId] - .ItemWithPath(fileName) - .Content - .Request() - .PutAsync(stream) - .Result; - -} - -private string GetValue(IFormCollection data, string key) -{ - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; -} -``` - -* Open the `appsettings.json` file in your web service project, Add the following lines below the existing `"AllowedHosts"` configuration - -```json -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "TenantId": "Your_Tenant_ID", - "applApplicationIdicationId": "Your_Application_ID", - "FolderName": "Your_Folder_Name_To_Access_The_Files_In_Onedrive" -} - -``` - -N> Replace **Your_Tenent_ID**, **Your_Application_ID**, and **Your_Folder_Name_To_Access_The_Files_In_Onedrive** with your actual tenant ID, application ID, and folder name. - -**Step 4:** Modify the index File in the Document Editor sample - -In the client-side, to export the document into blob the document using [`saveAsBlob`](../../api/document-editor/#saveAsBlob) and sent to server-side for saving in One Drive. - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/save-one-drive/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-one-drive/index.html %} -{% endhighlight %} -{% endtabs %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/save-one-drive/index.html %} -{% endhighlight %} -{% endtabs %} - -{% endif %} - -N> The following NuGet packages are required to use the previous code example -* **Microsoft.Identity.Client** -* **Microsoft.Graph** -* **Microsoft.Extensions.Configuration** -* **Microsoft.Extensions.Configuration.FileExtensions** -* **Microsoft.Extensions.Configuration.Json** - -You can install these packages using the NuGet Package Manager in Visual Studio or Visual Studio Code. diff --git a/ej2-javascript/document-editor/saving-documents/server-side-export.md b/ej2-javascript/document-editor/saving-documents/server-side-export.md deleted file mode 100644 index 6c346407e..000000000 --- a/ej2-javascript/document-editor/saving-documents/server-side-export.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -layout: post -title: Server side export in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Server side export in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Server side export -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Server side export in ##Platform_Name## Document editor control - -## SFDT to DOCX export - -Document Editor supports server-side export of **Syncfusion Document Text (.sfdt)** to Doc, DOCX, RTF, Txt, WordML, HTML formats using server-side helper **Syncfusion.EJ2.DocumentEditor** available in ASP.NET Core & ASP.NET MVC platform in the below NuGet's. - -* [Syncfusion.EJ2.WordEditor.AspNet.Core](https://www.nuget.org/packages/Syncfusion.EJ2.WordEditor.AspNet.Core) -* [Syncfusion.EJ2.WordEditor.AspNet.Mvc5](https://www.nuget.org/packages/Syncfusion.EJ2.WordEditor.AspNet.Mvc5) -* [Syncfusion.EJ2.WordEditor.AspNet.Mvc4](https://www.nuget.org/packages/Syncfusion.EJ2.WordEditor.AspNet.Mvc4) - -Please refer the following code example. - -```c# - //API controller for the conversion. - [HttpPost] - public void ExportSFDT([FromBody]SaveParameter data) - { - Stream document = WordDocument.Save(data.content, FormatType.Docx); - FileStream file = new FileStream("sample.docx", FileMode.OpenOrCreate, FileAccess.ReadWrite); - document.CopyTo(file); - file.Close(); - document.Close(); - } - - public class SaveParameter - { - public string content { get; set; } - } -``` - -Please refer the client side example to serialize the sfdt and send to the server. - -```ts -import { DocumentEditor, FormatType, WordExport, SfdtExport } from '@syncfusion/ej2-documenteditor'; - -//Inject require modules. -DocumentEditor.Inject(WordExport, SfdtExport); - -let documenteditor: DocumentEditor = new DocumentEditor({ enableSfdtExport: true, enableWordExport: true, enableTextExport: true }); - -documenteditor.appendTo('#DocumentEditor'); - -//Open the sfdt document. -documenteditor.open(sfdt); - -document.getElementById('export').addEventListener('click', () => { - let http: XMLHttpRequest = new XMLHttpRequest(); - http.open('POST', 'http://localhost:5000/api/documenteditor/ExportSFDT'); - http.setRequestHeader('Content-Type', 'application/json;charset=UTF-8'); - http.responseType = 'json'; - //Serialize document content as SFDT. - let sfdt: any = { content: documenteditor.serialize() }; - //Send the sfdt content to server side. - http.send(JSON.stringify(sfdt)); -}); - -``` - -> DocumentEditor object is available in DocumentEditorContainer component(DocumentEditor packaged with toolbar, statusbar & properties pane) as [`documentEditor`](../../api/document-editor-container#documenteditor) diff --git a/ej2-javascript/document-editor/scrolling-zooming.md b/ej2-javascript/document-editor/scrolling-zooming.md deleted file mode 100644 index 57b512715..000000000 --- a/ej2-javascript/document-editor/scrolling-zooming.md +++ /dev/null @@ -1,141 +0,0 @@ ---- -layout: post -title: Scrolling zooming in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Scrolling zooming in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Scrolling zooming -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Scrolling zooming in ##Platform_Name## Document editor control - -The Document Editor renders the document as page by page. You can scroll through the pages by mouse wheel or touch interactions. You can also scroll through the page by using ‘scrollToPage()’ method of Document Editor instance. Refer to the following code example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/scrolling-zooming-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/scrolling-zooming-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/scrolling-zooming-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/scrolling-zooming-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/scrolling-zooming-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/scrolling-zooming-cs1" %} -{% endif %} - -> Calling this method brings the specified page into view but doesn’t move selection. Hence this method will work by default. That is, it works even if selection is not enabled. - -In case, if you wish to move the selection to any page in Document Editor and bring it into view, you can use ‘goToPage()’ method of selection instance. Refer to the following code example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/scrolling-zooming-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/scrolling-zooming-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/scrolling-zooming-cs2" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/scrolling-zooming-cs2/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/scrolling-zooming-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/scrolling-zooming-cs2" %} -{% endif %} - -## Zooming - -You can scale the contents in Document Editor ranging from 10% to 500% of the actual size. You can achieve this using mouse or touch interactions. You can also use ‘zoomFactor’ property of Document Editor instance. The value can be specified in a range from 0.1 to 5. Refer to the following code example. - -```ts -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -//Initialize the Document Editor module. -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); - -// Enable all the built in modules. -documenteditor.enableAllModules(); - -documenteditor.appendTo('#DocumentEditor'); -//set zoom factor. -documenteditor.zoomFactor = 3; -``` - -## Page Fit Type - -Apart from specifying the zoom factor as value, the Document Editor provides option to specify page fit options such as fit to full page or fit to page width. You can set this option using ‘fitPage’ method of Document Editor instance. Refer to the following code example. - -```ts -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; -//Initialize the Document Editor module. -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' -}); - -// Enable all the built in modules. -documenteditor.enableAllModules(); - -documenteditor.appendTo('#DocumentEditor'); -//Set zoom factor to fit page width. -documenteditor.fitPage('FitPageWidth'); -``` - -## Zoom option using UI - -The following code example shows how to provide zoom options in Document Editor. -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/scrolling-zooming-cs3/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/scrolling-zooming-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/scrolling-zooming-cs3" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/scrolling-zooming-cs3/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/scrolling-zooming-cs3/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/scrolling-zooming-cs3" %} -{% endif %} diff --git a/ej2-javascript/document-editor/section-format.md b/ej2-javascript/document-editor/section-format.md deleted file mode 100644 index 85d20bec3..000000000 --- a/ej2-javascript/document-editor/section-format.md +++ /dev/null @@ -1,98 +0,0 @@ ---- -layout: post -title: Section format in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Section format in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Section format -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Section format in ##Platform_Name## Document editor control - -Document Editor supports various section formatting such as page size, page margins, and more. - -## Page size - -You can get or set the size of a section at cursor position by using the following sample code. - -```ts -documenteditor.selection.sectionFormat.pageWidth = 500; -documenteditor.selection.sectionFormat.pageHeight = 600; -``` - -You can change the orientation of the page by swapping the values of page width and height respectively. - -## Page margins - -Left and right page margin defines the gap between the document content from left and right side of the page respectively. Top and bottom page margins defines the gap between the document content from header and footer of the page respectively. -Refer to the following sample code. - -```ts -documenteditor.selection.sectionFormat.leftMargin = 10; -documenteditor.selection.sectionFormat.rightMargin = 10; -documenteditor.selection.sectionFormat.bottomMargin = 10; -documenteditor.selection.sectionFormat.topMargin = 10; -``` - ->Note: The maximum value of Margin is 1584, as per Microsoft Word application and you can set any value less than or equal to 1584 to this property. If you set any value greater than 1584, then Syncfusion Document editor will automatically reset as 1584. - -## Header distance - -You can define the distance of header content from the top of the page by using the following sample code. - -```ts -documenteditor.selection.sectionFormat.headerDistance = 72; -``` - -## Footer distance - -You can define the distance of footer content from the bottom of the page by using the following sample code. - -```ts -documenteditor.selection.sectionFormat.footerDistance = 72; -``` - -## Columns - -You can define the number of columns, column width, and space between columns for the pages in a section. - -The following code example illustrates how to define the two columns layout for the pages in a section. - -```ts -let column: SelectionColumnFormat = new SelectionColumnFormat(container.documentEditor.selection); -column.width = 216; -column.space = 36; -container.documentEditor.selection.sectionFormat.columns = [column, column]; -container.documentEditor.selection.sectionFormat.lineBetweenColumns = true; -``` - -## Breaks - -You can insert column break. The following code example illustrates how to insert a column break. - -```ts -container.documentEditor.editor.insertColumnBreak(); -``` - -You can insert next page section break to start the new section on the next page. - -The following code example illustrates how to insert a next page section break. - -```ts -container.documentEditor.editor.insertSectionBreak(SectionBreakType.NewPage); -``` - -You can insert continuous section break to start the new section on the same page. - -The following code example illustrates how to insert a continuous section break. - -```ts -container.documentEditor.editor.insertSectionBreak(SectionBreakType.Continuous); -``` - -## See Also - -* [Page setup dialog](../document-editor/dialog#page-setup-dialog) -* [Column dialog](../document-editor/dialog#column-dialog) diff --git a/ej2-javascript/document-editor/security-advisories.md b/ej2-javascript/document-editor/security-advisories.md deleted file mode 100644 index 337ee7e07..000000000 --- a/ej2-javascript/document-editor/security-advisories.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -layout: post -title: Security Advisories in ##Platform_Name## Document Editor control | Syncfusion -description: Learn here all about Security Advisories in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Security advisories -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Security Advisories in Syncfusion® EJ2 Controls - -Syncfusion® places the utmost priority on the security of our controls. Users can rest assured about the security of our controls, as we have implemented all necessary measures to mitigate security vulnerabilities such as cross-site scripting and insecure dependencies. To meet security standards, Syncfusion® utilizes the [ESLint](https://eslint.org/) and [ESLint plugin security](https://github.com/eslint-community/eslint-plugin-security#rules) tools for static code analysis. Additionally, Syncfusion® packages undergo software composition analysis using the [SOOS](https://soos.io/) security tool. - -This document provides a description of the security updates available for Syncfusion® Essential® JS2 controls for volume release. - -## Security Updates - -The following security updates are available for Syncfusion® DocumentEditor control and are listed based on the release version. - -### 2024 Volume 2 (v26.2.4) - July 25, 2024 - -This release resolves critical and moderate security vulnerabilities affecting the Syncfusion® Document Editor Docker Image. - -**Threat:** - -* ASP.NET Core Components: Multiple moderate vulnerabilities in Kestrel’s HTTP request handling could expose applications to access control issues and data leakage. - -* Npgsql: A potential SQL injection vulnerability via Protocol Message Size Overflow was detected. - -* Dynamic LINQ: Vulnerable to remote code execution via untrusted input manipulation. - -**Resolution:** - -* Updated affected ASP.NET Core packages. - -* The Npgsql package and Dynamic LINQ have been removed, as they are no longer required, to enhance security and mitigate the risk of SQL injection attacks. - -## Common Security Updates - -{% if page.publishingplatform == "typescript" %} - -For details on common security updates related to Syncfusion® products, please refer to [this link](https://ej2.syncfusion.com/documentation/common/security). This resource provides information on the latest advisories and best practices to help ensure the security and integrity of your applications. - -{% elsif page.publishingplatform == "javascript" %} - -For details on common security updates related to Syncfusion® products, please refer to [this link](https://ej2.syncfusion.com/javascript/documentation/common/security). This resource provides information on the latest advisories and best practices to help ensure the security and integrity of your applications. - -{% endif %} - -## Security Issue - -If users discover any security issues or need assistance in resolving them with Syncfusion® controls, please contact us by creating a support ticket on [our support site](https://syncfusion.com/support) or by posting your query on Stack Overflow with the tag `syncfusion-ej2`. diff --git a/ej2-javascript/document-editor/server-deployment/how-to-deploy-documenteditor-java-web-api-in-azure.md b/ej2-javascript/document-editor/server-deployment/how-to-deploy-documenteditor-java-web-api-in-azure.md deleted file mode 100644 index 8ad5789a3..000000000 --- a/ej2-javascript/document-editor/server-deployment/how-to-deploy-documenteditor-java-web-api-in-azure.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -layout: post -title: How to deploy documenteditor java web api in azure in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about How to deploy documenteditor java web api in azure in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: How to deploy documenteditor java web api in azure -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- -# How to deploy documenteditor java web api in azure in ##Platform_Name## Document editor control - -## Prerequisites - -Have [`Azure account`](https://azure.microsoft.com/en-gb/) and [`Azure CLI`](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest) setup in your environment. - -You can get the example [`web service project from GitHub`](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-Java-WebService) and then perform the following steps to create the packages and host in azure app service. - -**Step 1:** Clean the package using following command. - -```console -mvn clean package -``` - -**Step 2:** Run the application locally using following command. - -```console -mvn spring-boot:run -``` - -**Step 3:** Build the package using following command. - -```console -mvn package -``` - -Above package generation command creates the `**tomcat-0.0.1-SNAPSHOT.war**` in the below location in the sample folder. - -`target/tomcat-0.0.1-SNAPSHOT.war` - -**Step 4:** Create a Azure app service with Java & Tomcat. For example, create the app services name as `documenteditorjava`. - -**Step 5:** After creating app service, navigate to `Advanced Tools` options under `Development Tools`. - -![Advanced tools ](../images/azure_java_advancedtools.png) - -Then, click `Go` and select the `CMD` options under `Debug console`. - -![Debug console ](../images/azure_java_debugconsole.png) - -**Step 6:** Once the file manager is opened, please navigate to - -`site -> wwwroot -> webapps` - -**Step 7:** Now, upload the generated war file `tomcat-0.0.1-SNAPSHOT.war`. Uploaded war file gets extracted automatically, it will uploaded like below: - -![Uploaded war](../images/java_azure_uploaded.png) - -**Step 8:** Browse to the app. - -Browse to the deployed app at `http://.azurewebsites.net`, i.e. `http://documenteditorjava.azurewebsites.net`. Browse this link and it navigate to the Document Editor Web API control `http://documenteditorjava.azurewebsites.net/tomcat-0.0.1-SNAPSHOT`. It returns the default get method response. - -Append the app service running the URL `http://documenteditorjava.azurewebsites.net/tomcat-0.0.1-SNAPSHOT` to the service URL in the client-side Document Editor control. For more information about the Document Editor control, refer to this [`getting started page`](https://ej2.syncfusion.com/javascript/documentation/document-editor/getting-started). \ No newline at end of file diff --git a/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-amazon-kubernetes-service.md b/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-amazon-kubernetes-service.md deleted file mode 100644 index 8100bc481..000000000 --- a/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-amazon-kubernetes-service.md +++ /dev/null @@ -1,151 +0,0 @@ ---- -layout: post -title: Deploy Syncfusion Word Processor in Amazon Kubernetes Service -description: Learn here all about How to deploy word processor server docker container in amazon kubernetes service in Syncfusion Document editor. -platform: ej2-javascript -control: How to deploy word processor server docker container in amazon kubernetes service -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- -# How to deploy Word Processor server in Amazon Kubernetes Service - -## Prerequisites - -* `AWS Account` :Have Amazon account -* `AWS CLI`: Install the AWS Command Line Interface (CLI) on your local machine. -* `Kubectl` : Install the Kubernetes command-line tool kubectl on your local machine. -* `Docker`: Install Docker on your local machine. -* `Word Processor Docker Image`: Have a Docker image of the Word Processor server ready to deploy. - -To deploy the Word Processor server docker image, need to follow the below process - -* Push Docker Image to Registry (Amazon Elastic Registry) -* Deploy Docker Image on Amazon Kubernetes Service - -Lets us discuss briefly about the each process - -## Push the Docker image to the Amazon Elastic Registry - -**Step 1:** Dockerize the Word Processor Server Application with the image name [syncfusion/word-processor-server](https://hub.docker.com/r/syncfusion/word-processor-server) - -``` -docker build -t -``` - -**Step 2:** Create a private repository name ‘documenteditor’ in Amazon Elastic Container Registry (ECR) using the AWS CLI or AWS Console to push the docker image - -``` -aws ecr create-repository --repository-name -``` - -**Step 3:** Tag the image to push to ECR - -``` -docker tag :latest /:latest -``` -Refer to the following example to tag the image - -``` -docker tag syncfusion/word-processor-server:latest 123456.dkr.ecr.us-east-1.amazonaws.com/documenteditor:latest -``` - -> Get the ECR registry URI from AWS console or using the below AWS CLI command - -``` -aws ecr describe-repositories --repository-names --query 'repositories[*].repositoryUri' --output text -``` - -**Step 4:** Login to the ECR registry using the AWS CLI to push the docker image - -``` -aws ecr get-login-password --region | docker login --username AWS --password-stdin -``` - -Replace with your AWS region and with your ECR registry URI. - -**Step 5:** Push the tagged image to ECR - -``` -docker push /:latest -``` - -## Deploy Docker Image on Amazon Kubernetes Service - -Follow the below steps to deploy the Docker image from the Amazon Elastic Registry( ECR) to Amazon Kubernetes Services (EKS) - -**Step 1:** DCreate Amazon EKS cluster using the AWS Console - -**Step 2:** Authenticate with AWS ECR -Need to get the authenticate with the AWS ECR to pull the image from the registry - -``` -aws ecr get-login-password --region | docker login --username AWS --password-stdin .dkr.ecr..amazonaws.com -``` - -**Step 3:** : Configure Kubernetes to Communicate with the Cluster - -``` -aws eks --region update-kubeconfig --name -``` - -**Step 4:** Tag the Docker Image to the created cluster - -``` -docker tag .dkr.ecr..amazonaws.com/: .dkr.ecr..amazonaws.com/: -``` - -Refer to the following example -``` -docker tag 12345.dkr.ecr.us-east-1.amazonaws.com/documenteditor:latest 98765ABCD.dkr.ecr.us-east-1.amazonaws.com/documenteditor:latest -``` - -In this command: -* should be replaced with your EKS cluster ID, which is the base part of your EKS cluster endpoint (e.g., abcd1234). -* should be replaced with your AWS region. - - -**Step 5:** To create Kubernetes deployment write Kubernetes manifest - -**i.** Create a Kubernetes Deployment manifest (deployment.yaml) for your application. Specify the Docker image location. - -``` -apiVersion: apps/v1 -kind: Deployment -metadata: - name: ```your-deployment``` -spec: - replicas: 3 - selector: - matchLabels: - app: ```your-app``` - template: - metadata: - labels: - app: ```your-app``` - spec: - containers: - - name: your-container - image: ```.dkr.ecr..amazonaws.com/your-repository-name:tag``` - ports: - - containerPort: 80 -``` -**ii.** Apply the Deployment manifest to create the deployment in your EKS cluster - -``` -kubectl apply -f deployment.yaml -``` - -**iii.** Use port forwarding to access the Word Processor Server application locally and verify its functionality - -``` -kubectl port-forward pod-name local-port:container-port -``` - -> Get the pod names in AWS Console or using the below AWS CLI command - -``` -kubectl get pods -``` - -Finally you can get the sample in the localhost http://``````/api/documenteditor/ \ No newline at end of file diff --git a/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-app-service.md b/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-app-service.md deleted file mode 100644 index 0b4033f36..000000000 --- a/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-app-service.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -layout: post -title: How to deploy word processor server docker container in azure app service in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about How to deploy word processor server docker container in azure app service in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: How to deploy word processor server docker container in azure app service -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- -# How to deploy word processor server docker container in azure app service in ##Platform_Name## Document editor control - -## Prerequisites - -* Have [`Azure account`](https://azure.microsoft.com/en-gb/) and [`Azure CLI`](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest) setup in your environment. - -* Run the following command to open the Azure login page. Sign into your [`Microsoft Azure account`](https://azure.microsoft.com/en-gb/). - -``` -az login -``` - -**Step 1:** Create a resource group. - -Create a resource group using the [`az group create`](https://docs.microsoft.com/en-us/cli/azure/group#az-group-create) command. - -The following example creates a resource group named documenteditorresourcegroup in the eastus location. - -``` -az group create --name documenteditorresourcegroup --location "East US" -``` - -**Step 2:** Create an Azure App Service plan. - -Create an App Service plan in the resource group with the [`az appservice plan create`](https://docs.microsoft.com/en-us/cli/azure/appservice/plan?view=azure-cli-latest#az-appservice-plan-create) command. - -The following example creates an App Service plan named documenteditorappservice in the Standard pricing tier (--sku S1) and in a Linux container (--is-linux). - -``` -az appservice plan create --name documenteditorappservice --resource-group documenteditorresourcegroup --sku S1 --is-linux -``` - -**Step 3:** Create a Docker Compose app. - -Create a multi-container [`web app`](https://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-intro) in the documenteditorappservice App Service plan with the [`az webapp create`](https://docs.microsoft.com/en-us/cli/azure/webapp?view=azure-cli-latest#az-webapp-create) command. The following command creates the web app using the provided Docker compose file. Please look into the section for getting started with Docker compose to create the Docker compose file for the Document Editor server and use the created Docker compose file here. - -``` -az webapp create --resource-group documenteditorresourcegroup --plan documenteditorappservice --name documenteditor-server --multicontainer-config-type compose --multicontainer-config-file documenteditor-server-compose.yml -``` - -**Step 4:** Browse to the app. - -Browse to the deployed app at `http://.azurewebsites.net`, i.e. `http://documenteditor-server.azurewebsites.net`. Browse this link and navigate to the Document Editor Web API control `http://documenteditor-server.azurewebsites.net/api/documenteditor`. It returns the default get method response. - -Append the app service running the URL `http://documenteditor-server.azurewebsites.net/api/documenteditor/` to the service URL in the client-side Document Editor control. For more information about the Document Editor control, refer to this [`getting started page`](https://ej2.syncfusion.com/javascript/documentation/document-editor/getting-started). - -For more information about the app container service, please look deeper into the [`Microsoft Azure Container Service`](https://docs.microsoft.com/en-us/azure/app-service/containers/quickstart-multi-container) for a production-ready setup. diff --git a/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-kubernetes-service.md b/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-kubernetes-service.md deleted file mode 100644 index a8882ba94..000000000 --- a/ej2-javascript/document-editor/server-deployment/how-to-deploy-word-processor-server-docker-container-in-azure-kubernetes-service.md +++ /dev/null @@ -1,117 +0,0 @@ ---- -layout: post -title: How to deploy word processor server docker container in azure kubernetes service in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about How to deploy word processor server docker container in azure kubernetes service in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: How to deploy word processor server docker container in azure kubernetes service -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- -# How to deploy word processor server docker container in azure kubernetes service in ##Platform_Name## Document editor control - -## Prerequisites - -* Have [`Azure account`](https://azure.microsoft.com/en-gb/) and [`Azure CLI`](https://docs.microsoft.com/en-us/cli/azure/?view=azure-cli-latest) setup in your environment. - -* Run the following command to open the Azure login page. Sign into your [`Microsoft Azure account`](https://azure.microsoft.com/en-gb/). - -``` -az login -``` - -**Step 1:** Create a resource group. - -Create a resource group using the [`az group create`](https://docs.microsoft.com/en-us/cli/azure/group#az-group-create) command. - -The following example creates a resource group named documenteditorresourcegroup in the eastus location. - -``` -az group create --name documenteditorresourcegroup --location "East US" -``` - -**Step 2:** Create AKS cluster. - -Use the [`az aks create`](https://docs.microsoft.com/en-us/cli/azure/aks?view=azure-cli-latest#az-aks-create) command to create an AKS cluster. The following example creates a cluster named documenteditorcluster with one node. - -``` -az aks create --resource-group documenteditorresourcegroup --name documenteditorcluster --node-count 1 -``` - -**Step 3:** Connect to the cluster. - -Install the [`kubectl`](https://kubernetes.io/docs/reference/kubectl/kubectl/) into the workspace using the following command. - -``` -az aks install-cli -``` - -To configure kubectl to connect to your Kubernetes cluster, use the [`az aks get-credentials`](https://docs.microsoft.com/en-us/cli/azure/aks?view=azure-cli-latest#az-aks-get-credentials) command. This command downloads credentials and configures the Kubernetes CLI to use them. - -``` -az aks get-credentials --resource-group documenteditorresourcegroup --name documenteditorcluster -``` - -**Step 4:** Create Kubernetes Services and Deployments - -[`Kubernetes Services`](https://kubernetes.io/docs/concepts/services-networking/service/) and [`Deployments`](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) can be configured in a file. To run the Document Editor server, you must define a Service and a Deployment documenteditorserver. To do this, create the documenteditor-server.yml file in the current directory using the following code. - -```yaml - apiVersion: apps/v1 - kind: Deployment - metadata: - labels: - app: documenteditorserver - name: documenteditorserver - spec: - replicas: 1 - selector: - matchLabels: - app: documenteditorserver - strategy: {} - template: - metadata: - labels: - app: documenteditorserver - spec: - containers: - - image: syncfusion/word-processor-server:latest - name: documenteditorserver - ports: - - containerPort: 80 - env: - - name: SYNCFUSION_LICENSE_KEY - value: "YOUR_LICENSE_KEY" - --- - apiVersion: v1 - kind: Service - metadata: - labels: - app: documenteditorserver - name: documenteditorserver - spec: - ports: - - port: 80 - targetPort: 80 - selector: - app: documenteditorserver - type: LoadBalancer -``` - -**Step 5:** To create all Services and Deployments needed to run the Document Editor server, execute the following. - -```console -kubectl create -f ./documenteditor-server.yml -``` - -Run the following command to get the Kubernetes cluster deployed service details and copy the external IP address of the Document Editor service. - -```console -kubectl get all -``` - -Browse the copied external IP address and navigate to the Document Editor Web API control `http:///api/documenteditor`. It returns the default get method response. - -**Step 6:** Append the Kubernetes service running the URL `http:///api/documenteditor/` to the service URL in the client-side Document Editor control. For more information about the Document Editor control, refer to this [`getting started page`](https://ej2.syncfusion.com/javascript/documentation/document-editor/getting-started). - -For more details about the Azure Kubernetes service, please look deeper into [`Microsoft Azure Kubernetes Service`](https://docs.microsoft.com/en-us/azure/aks/kubernetes-walkthrough) for a production-ready setup. diff --git a/ej2-javascript/document-editor/server-deployment/how-to-publish-documenteditor-web-api-application-in-azure-app-service-from-visual-studio.md b/ej2-javascript/document-editor/server-deployment/how-to-publish-documenteditor-web-api-application-in-azure-app-service-from-visual-studio.md deleted file mode 100644 index 86f10c3a4..000000000 --- a/ej2-javascript/document-editor/server-deployment/how-to-publish-documenteditor-web-api-application-in-azure-app-service-from-visual-studio.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -layout: post -title: How to publish documenteditor web api application in azure app service from visual studio in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about How to publish documenteditor web api application in azure app service from visual studio in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: How to publish documenteditor web api application in azure app service from visual studio -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# How to publish documenteditor web api application in azure app service from visual studio in ##Platform_Name## Document editor control - -## Prerequisites - -* Visual Studio 2017 or 2019. -* An [`Azure subscription`](https://azure.microsoft.com/en-gb/). -* The Document Editor Web API controller application from [`here`](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices). - -Make sure you build the project using the Build > Build Solution menu command before following the deployment steps. - -## Publish to Azure App Service - -**Step 1:** In Solution Explorer, right-click the project and click Publish (or use the Build > Publish menu item). - -![azure publish ](../images/azure_publish.png) - -**Step 2:** If you have previously configured any publishing profiles, the Publish pane appears, in which case select Create new profile. - -**Step 3:** In the Pick a publish target dialog box, select App Service. - -![azure target](../images/azure_target.png) - -**Step 4:** Select Publish. The Create App Service dialog box appears. Sign in with your Azure account, if necessary, and then the default app service settings populate the fields. - -![azure documenteditor](../images/azure_documenteditor.png) - -**Step 5:** Select Create. Visual Studio deploys the app to your Azure App Service, and the web app loads in your browser with the app name at `http://.azurewebsites.net` (i.e. `http://ej2-documenteditor-server20200514102909.azurewebsites.net`). - -**Step 6:** Navigate to Document Editor Web API control `http://ej2-documenteditor-server20200514102909.azurewebsites.net/api/documenteditor`. It returns the default get method response. - -Append the app service running the URL `http://ej2-documenteditor-server20200514102909.azurewebsites.net/api/documenteditor` to the service URL in the client-side Document Editor control. For more information about how to get started with the Document Editor control, refer to this [`getting started page`](https://ej2.syncfusion.com/javascript/documentation/document-editor/getting-started). - -For more information about the app container service, please look deeper into the [`Microsoft Azure App Service`](https://docs.microsoft.com/en-us/visualstudio/deployment/) for a production-ready setup. diff --git a/ej2-javascript/document-editor/server-deployment/word-processor-server-docker-image-overview.md b/ej2-javascript/document-editor/server-deployment/word-processor-server-docker-image-overview.md deleted file mode 100644 index 712ad9118..000000000 --- a/ej2-javascript/document-editor/server-deployment/word-processor-server-docker-image-overview.md +++ /dev/null @@ -1,231 +0,0 @@ ---- -layout: post -title: Overview in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Word processor server docker image overview in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Word processor server docker image overview -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- -# Word processor server docker image overview in ##Platform_Name## Document editor control - -The Syncfusion® **Word Processor (also known as Document Editor)** is a component with editing capabilities like Microsoft Word. It is used to create, edit, view, and print Word documents. It provides all the common word processing abilities, including editing text; formatting contents; resizing images and tables; finding and replacing text; importing, exporting, and printing Word documents; and using bookmarks and tables of contents. - -This Docker image is the predefined Docker container of Syncfusion’s Word Processor backend. You can deploy it quickly to your infrastructure. - -Word Processor is a commercial product, and it requires a valid license to use it in a production environment [`(request license or trial key).`](https://help.syncfusion.com/common/essential-studio/licensing/licensing-faq/where-can-i-get-a-license-key) - -The Word Processor is supported in the JavaScript, Angular, React, Vue, ASP.NET Core, ASP.NET MVC, and Blazor platforms. - -## Prerequisites - -Have [`Docker`](https://www.docker.com/products/container-runtime#/download) installed in your environment: -* On Windows, install [`Docker for Windows`](https://hub.docker.com/editions/community/docker-ce-desktop-windows). -* On macOS, install [`Docker for Mac`](https://hub.docker.com/editions/community/docker-ce-desktop-windows). - -## How to deploy Word Processor Docker image - -**Step 1:** Pull the word-processor-server image from Docker Hub. - -```console -docker pull syncfusion/word-processor-server -``` - -**Step 2:** Create the docker-compose.yml file with the following code in your file system. - -```yaml - version: '3.4' - - services: - word-processor-server: - image: syncfusion/word-processor-server:latest - environment: - #Provide your license key for activation - SYNCFUSION_LICENSE_KEY: YOUR_LICENSE_KEY - ports: - - "6002:80" -``` - -**Step 3:** In a terminal tab, navigate to the directory where you’ve placed the docker-compose.yml file and execute the following. - -```console -docker-compose up -``` - -Now the Word Processor server Docker instance runs in the localhost with the provided port number `http://localhost:6002`. Open this link in a browser and navigate to the Word Processor Web API control `http://localhost:6002/api/documenteditor`. It returns the default get method response. - -**Step 4:** Append the Docker instance running the URL `(http://localhost:6002/api/documenteditor)` to the service URL in the client-side Word Processor control. For more information about how to get started with the Word Processor control, refer to this [`getting started page.`](https://ej2.syncfusion.com/javascript/documentation/document-editor/getting-started) - -``` - - - - - Essential JS 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    - - - - - -``` - -## How to configure spell checker dictionaries path in Docker compose file - -**Step 1:** In the Docker compose file, mount the local directory as a container volume using the following code. - -```yaml - version: '3.4' - services: - word-processor-server: - image: syncfusion/word-processor-server:latest - environment: - #Provide your license key for activation - SYNCFUSION_LICENSE_KEY: YOUR_LICENSE_KEY - volumes: - - ./data:/app/data - ports: - - "6002:80" -``` - -This YAML definition binds the data folder that is available in the Docker compose file directory. - -**Step 2:** In the data folder, include the dictionary files (.dic, .aff) and JSON file. The JSON file should contain the language based dictionary file configuration in the following format. - -```yaml - [ - { - "LanguadeID": 1036, - "DictionaryPath": "fr_FR.dic", - "AffixPath": "fr_FR.aff", - "PersonalDictPath": "customDict.dic" - }, - { - "LanguadeID": 1033, - "DictionaryPath": "en_US.dic", - "AffixPath": "en_US.aff", - "PersonalDictPath": "customDict.dic" - } - ] -``` - ->Note: By default, the json file name should be "spellcheck.json". You can also use different file name by mounting the file name to 'SPELLCHECK_JSON_FILENAME' attribute in Docker compose file as below, - -```yaml - version: '3.4' - - services: - word-processor-server: - image: syncfusion/word-processor-server:latest - environment: - #Provide your license key for activation - SYNCFUSION_LICENSE_KEY: YOUR_LICENSE_KEY - SPELLCHECK_DICTIONARY_PATH: data - SPELLCHECK_JSON_FILENAME: spellcheck1.json - volumes: - - ./data:/app/data - ports: - - "6002:80" -``` - -**Step 3:** For handling the personal dictionary, place an empty .dic file (e.g.,. customDict.dic file) in the data folder. - -**Step 4:** Provide the configured volume path to the environment variable like in the following in the Docker compose file. - -```yaml - version: '3.4' - services: - word-processor-server: - image: syncfusion/word-processo -server:latest - environment: - #Provide your license key for activation - SYNCFUSION_LICENSE_KEY: YOUR_LICENSE_KEY - SPELLCHECK_DICTIONARY_PATH: data - volumes: - - ./data:/app/data - ports: - - "6002:80" -``` - -## How to copy template Word documents to Docker image - -You can copy the required template Word documents into docker container while deploying the docker image to server. You can open these Word documents present in the server by passing the document path (name with relative path) to LoadDocument() web API. - ->Note: Place the word files in the data folder mentioned in the volumes section(i.e., C:/Docker/Data) of the docker-compose.yml file. All the files present in the folder path (C:/Docker/Data) mentioned in the volumes section of ‘docker-compose.yml’ file will be copied to the respective folder (/app/Data) of docker container. The Word documents copied to docker container can be processed using the 'LoadDocument' web API. - -The following code example shows how to use LoadDocument() API in Document Editor. - -```ts -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' }); -DocumentEditorContainer.Inject(Toolbar); - -container.created = function () { - var dataContext = this; - var uploadDocument = new FormData(); - uploadDocument.append('DocumentName', 'Getting Started.docx'); - var baseUrl = 'http://localhost:6002/api/documenteditor/LoadDocument'; - var httpRequest = new XMLHttpRequest(); - httpRequest.open('POST', baseUrl, true); - httpRequest.onreadystatechange = function () { - if (httpRequest.readyState === 4) { - if (httpRequest.status === 200 || httpRequest.status === 304) { - dataContext.container.documentEditor.open(httpRequest.responseText); - } - } - }; - httpRequest.send(uploadDocument); - dataContext.container.documentEditor.spellChecker.languageID = 1033; -}; - -container.appendTo('#container'); -``` - -Refer to these getting started pages to create a Word Processor in [`Angular`](https://ej2.syncfusion.com/angular/documentation/document-editor/getting-started/), [`React`](https://ej2.syncfusion.com/react/documentation/document-editor/getting-started/), [`Vue`](https://ej2.syncfusion.com/vue/documentation/document-editor/getting-started/), [`ASP.NET MVC`](https://ej2.syncfusion.com/aspnetmvc/documentation/document-editor/getting-started/), [`ASP.NET Core`](https://ej2.syncfusion.com/aspnetcore/documentation/document-editor/getting-started-core/), and [`Blazor`](https://blazor.syncfusion.com/documentation/document-editor/getting-started/server-side-application/). diff --git a/ej2-javascript/document-editor/shapes.md b/ej2-javascript/document-editor/shapes.md deleted file mode 100644 index f62db9704..000000000 --- a/ej2-javascript/document-editor/shapes.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -layout: post -title: Shapes in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Shapes in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Shapes -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Shapes in ##Platform_Name## Document editor control - -Shapes are drawing objects that include a text box, rectangles, lines, curves, circles, etc. It can be preset or custom geometry. At present, DocumentEditor does not have support to insert shapes. however, if the document contains a shape while importing, it will be preserved properly. - -## Supported shapes - -The DocumentEditor has preservation support for Lines, Rectangle, Basic Shapes, Block Arrows, Equation Shapes,Flowchart and Stars and Banners. - -![List of supported shapes in DocumentEditor](images/Shapes_images/supported_shapes.png) - ->Note: When using ASP.NET MVC service, the unsupported shapes will be converted as image and preserved as image. - -## Text box Shape - -A text box is a rectangular area on the document where you can enter text. When you click in a text box, a flashing cursor will display indicating that you can begin typing. It allows you to enter multiple lines of text with all text formatting. - -![Text box shape view in DocumentEditor](images/Shapes_images/textbox_shape.png) - -## Shape Resizer - -The DocumentEditor also supports a built-in shape resizer to resize the shapes present in the document. The shape resizer accepts both touch and mouse interactions. - -![Shape resizer view in DocumentEditor](images/Shapes_images/shape_resizer.png) - -## Text wrapping style - -Text wrapping refers to how shapes fit with surrounding text in a document. Please [refer to this page](../document-editor/text-wrapping-style) for more information about text wrapping styles available in Word documents. - -## Positioning the shape - -DocumentEditor preserves the position properties of the shape and displays the shape based on position properties. It does not support modifying the position properties. Whereas the shape will be automatically moved along with text edited if it is positioned relative to the line or paragraph. diff --git a/ej2-javascript/document-editor/spell-check.md b/ej2-javascript/document-editor/spell-check.md deleted file mode 100644 index 3ddd7a3a9..000000000 --- a/ej2-javascript/document-editor/spell-check.md +++ /dev/null @@ -1,162 +0,0 @@ ---- -layout: post -title: Spell check in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Spell check in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Spell check -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Spell check in ##Platform_Name## Document editor control - -Document Editor supports performing spell checking for any input text. You can perform spell checking for the text in Document Editor and it will provide suggestions for the mis-spelled words through dialog and in context menu. Document editor's spell checker is compatible with [hunspell dictionary files](https://github.com/wooorm/dictionaries). - -```ts -import { DocumentEditorContainer, Toolbar, SpellChecker } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, enableSpellCheck: true -}); -container.appendTo('#container'); -//Accessing spell checker. -let spellChecker: SpellChecker = container.documentEditor.spellChecker; -//Set language id to map dictionary in server side.; -spellChecker.languageID = 1033; -spellChecker.removeUnderline = false; -//Allow suggetion for miss spelled word/ -spellChecker.allowSpellCheckAndSuggestion = true; -``` - ->Note: Document Editor requires server-side dependencies for spell check configuration. -Refer to the [Document Editor Web API service projects from GitHub](https://github.com/SyncfusionExamples/EJ2-Document-Editor-Web-Services/tree/master/ASP.NET%20Core#spell-check) link for configuring spell checker in server-side.To know about server-side dependencies, please refer this [page](../document-editor/web-services-overview). - -## Features - -* Supports context menu suggestions. -* Provides built-in options to Ignore, Ignore All, Change, Change All for error words in spell checker dialog. - -## Enable SpellCheck - -To enable spell check in DocumentEditor, set [`enableSpellCheck`](../api/document-editor#enablespellcheck) property as `true` and then configure SpellCheckSettings. - -## Disable SpellCheck - -To disable spell check in DocumentEditor, set [`enableSpellCheck`](../api/document-editor#enablespellcheck) property as `false` or remove [`enableSpellCheck`](../api/document-editor#enablespellcheck) property initialization code. The default value of this property is false. - -## Spell check settings - -### Remove Underline - -By default, mis-spelled words are marked with squiggly line. You can also disable this behavior by enabling the [`removeUnderline`](../api/document-editor/spellChecker#removeunderline) API and now, the squiggly lines will never be rendered for mis-spelled words. - -```ts -documentEditor.spellChecker.removeUnderline = false; -``` - -### AllowSpellCheckAndSuggestion - -By default, on performing spell check in Document Editor, both spelling and suggestions of the mis-spelled words will be retrieved, and this mis-spelled words can be corrected through context menu suggestions. You can modify this behavior using the [`allowSpellCheckAndSuggestion`](../api/document-editor/spellChecker#allowspellcheckandsuggestion) API, which will perform only spell check. - -```ts -documentEditor.spellChecker.allowSpellCheckAndSuggestion = false; -``` - -### LanguageID - -Document Editor provides multi-language spell check support. You can add as many languages (dictionaries) in the server-side and to use that language for spell checking in Document Editor, it must be matched with [`languageID`](../api/document-editor/spellChecker#languageid) you pass in the Document Editor. - -```ts -documentEditor.spellChecker.languageID = 1033; //LCID of "en-us"; -``` - -### EnableOptimizedSpellCheck - -Document Editor provides option to spellcheck page by page when loading the documents. The default value of this property is false, so when opening the document spellcheck web API will be called for each word in the document. To optimize the frequency of spellcheck web API calls, you can enable this property. - -The following code example illustrates how to enable optimized spell checking. - -```ts -documentEditor.spellChecker.enableOptimizedSpellCheck = true; -``` - -### Spell check dictionary cache - -Starting from `v20.1.0.xx`, we have optimized the performance and memory usage of spell checker by adding a static method to initialize the dictionaries with specified cache count. - -By default, the spell checker holds only one language dictionary in memory. If you want to hold multiple dictionaries in memory, you need to set the cache limit by using `InitializeDictionaries` method as in the below example. - -```c# - List spellDictCollection = new List(); - string personalDictPath = string.Empty; - int cacheCount = 2; - - // Initialize dictionaries - SpellChecker.InitializeDictionaries(spellDictCollection, personalDictPath, cacheCount); -``` - -If dictionaries are initialized using `InitializeDictionaries` method, then we should use default constructor of the `SpellChecker`to check spelling and get suggestion as in the below example code, it will prevent reinitialization of already loaded dictionaries. - -```c# -public string SpellCheck([FromBody] SpellCheckJsonData spellChecker) -{ - try { - SpellChecker spellCheck = new SpellChecker(); - spellCheck.GetSuggestions(spellChecker.LanguageID, spellChecker.TexttoCheck, spellChecker.CheckSpelling, spellChecker.CheckSuggestion, spellChecker.AddWord); - return Newtonsoft.Json.JsonConvert.SerializeObject(spellCheck); - } - catch - { - return "{\"SpellCollection\":[],\"HasSpellingError\":false,\"Suggestions\":null}"; - } -} -``` - -Previously on every `SpellChecker.GetSuggestion()` method call, the `.aff` and dictionary data will be parsed to generate suggestion for miss spelled word. But, starting from `v20.1.0.xx`, the `.aff` and dictionary data will be parsed only for the first time alone while calling `SpellChecker.GetSuggestion()` method. - -### Add new root word and possible words to dictionary - -If you find any root word is missing in the dictionary file, then you can add that new root word and the rule to form the possible words to dictionary file using `AddNewWord` API in the server-side Spell check library. - ->Note: ->1. The rules are framed automatically using the root word, the possible words and affix file. ->2. If you pass null for the parameters `affPath` and `possibleWords`, then it will add a single root word to dictionary. ->3. This API is included starting from `v20.2.0.xx`. - -The following code example demonstrates how to add a new root word to the dictionary along with the rule to form the possible words. - -```c# -SpellChecker spellChecker = new SpellChecker(); -// Adds the specified new root word to the dictionary along with the rule to form the possible words. -spellChecker.AddNewWord("en.dic","en.aff", "construct", new string[] { "constructs", "reconstruct", "constructed", "constructive" }); -``` - -## Context menu - -Right click on error word to open the context menu with spell check options. Please see below screenshot for your reference. - -![Spell check option in JavaScript document editor context menu](images/spell-check-menu.png) - -### Suggestions - -Context menu shows the suggestions for mis-spelled words. By clicking on the required word from suggestion, the error word gets replaced automatically. - -### Add To Dictionary - -Using this option, you can add the current word to the dictionary. So that the spell checker does not consider that word as error in future. - -### Ignore Once and Ignore All - -If you do not wish to add the word to dictionary and do not want to show error, use Ignore Once or Ignore All options. - -Ignore: ignore only the current occurrence of a word from error. - -Ignore All: ignore all occurrence of a word from error in the entire document. - -### Spelling - -Using this option, you can open spell check dialog. Please see below screenshot for your reference. - -![Spell check dialog in JavaScript document editor](images/spell-check-dialog.png) diff --git a/ej2-javascript/document-editor/table-format.md b/ej2-javascript/document-editor/table-format.md deleted file mode 100644 index 15a26d87a..000000000 --- a/ej2-javascript/document-editor/table-format.md +++ /dev/null @@ -1,211 +0,0 @@ ---- -layout: post -title: Table format in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Table format in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Table format -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Table format in ##Platform_Name## Document editor control - -Document Editor customizes the formatting of table, or table cells such as table width, cell margins, cell spacing, background color, and table alignment. This section describes how to customize these formatting for selected cells, rows, or table in detail. - -## Cell margins - -You can customize the cell margins by using the following sample code. - -```ts -//To change the left margin -documenteditor.selection.cellFormat.leftMargin = 5.4; -//To change the right margin -documenteditor.selection.cellFormat.rightMargin = 5.4; -//To change the top margin -documenteditor.selection.cellFormat.topMargin = 5.4; -//To change the bottom margin -documenteditor.selection.cellFormat.bottomMargin = 5.4; -``` - -You can also define the default cell margins for a table. If the specific cell margin value is not defined explicitly in the cell formatting, the corresponding value will be retrieved from default cells margin of the table. Refer to the following sample code. - -```ts -//To change the left margin -documenteditor.selection.tableFormat.leftMargin = 5.4; -//To change the right margin -documenteditor.selection.tableFormat.rightMargin = 5.4; -//To change the top margin -documenteditor.selection.tableFormat.topMargin = 5.4; -//To change the bottom margin -documenteditor.selection.tableFormat.bottomMargin = 5.4; -``` - -## Background color - -You can explicitly set the background color of selected cells using the following sample code. - -```ts -documenteditor.selection.cellFormat.background = '#E0E0E0'; -``` - -Refer to the following sample code to customize the background color of the table. - -```ts -documenteditor.selection.tableFormat.background = '#E0E0E0'; -``` - -## Cell spacing - -Refer to the following sample code to customize the spacing between each cell in a table. - -```ts -documenteditor.selection.tableFormat.cellSpacing = 2; -``` - -## Cell vertical alignment - -The content is aligned within a table cell to ‘Top’, ‘Center’, or ‘Bottom’. You can customize this property of selected cells. Refer to the following sample code. - -```ts -documenteditor.selection.cellFormat.verticalAlignment = 'Bottom'; -``` - -## Table alignment - -The tables are aligned in Document Editor to ‘Left’, ‘Right’, or ‘Center’. Refer to the following sample code. - -```ts -documenteditor.selection.tableFormat.tableAlignment = 'Center'; -``` - -## Cell width - -Set the desired width of table cells that will be considered when the table is layouted. Refer to the following sample code. - -```ts -import { DocumentEditor, Editor, Selection, SfdtExport } from '@syncfusion/ej2-documenteditor'; -//Inject the required module -DocumentEditor.Inject(Editor, Selection, SfdtExport); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableSfdtExport: true -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2, 2); -//To change the width of a cell -documenteditor.selection.cellFormat.preferredWidthType = 'Point'; -documenteditor.selection.cellFormat.preferredWidth = 100; -``` - -## Table width - -You can set the desired width of a table in ‘Point ‘or ‘Percent’ type. Refer to the following sample code. - -```ts -import { DocumentEditor, Editor, Selection, SfdtExport } from '@syncfusion/ej2-documenteditor'; -//Inject the required module -DocumentEditor.Inject(Editor, Selection, SfdtExport); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableSfdtExport: true -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2, 2); -//To change the width of a table -documenteditor.selection.tableFormat.preferredWidthType = 'Point'; -documenteditor.selection.tableFormat.preferredWidth = 300; -``` - -## Apply borders - -Document Editor exposes API to customize the borders for table cells by specifying the settings. Refer to the following sample code. - -```ts -import { DocumentEditor, Editor, Selection, SfdtExport, BorderSettings } from '@syncfusion/ej2-documenteditor'; -//Inject the required module -DocumentEditor.Inject(Editor, Selection, SfdtExport); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableSfdtExport: true -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2, 2); -//To apply border -let borderSettings: BorderSettings = { - type: 'AllBorders', - lineWidth: 12 -}; -documenteditor.editor.applyBorders(borderSettings); -``` - -Please check below gif which illustrates how to apply border for selected cells through properties pane options - border color, line size and no border: - -![Apply border to selected cell via properties Pane in Javascript document editor](images/ApplyBorderToSelectedCell_viaPropertiesPane.gif) - -## Working with row formatting - -Document Editor allows various row formatting such as height and repeat header. - -### Row height - -You can customize the height of a table row as ‘Auto’, ‘AtLeast’, or ‘Exactly’. Refer to the following sample code. - -```ts -import { DocumentEditor, Editor, Selection, SfdtExport } from '@syncfusion/ej2-documenteditor'; -//Inject the required module -DocumentEditor.Inject(Editor, Selection, SfdtExport); -let documenteditor: DocumentEditor = new DocumentEditor({ - isReadOnly: false, - enableSelection: true, - enableEditor: true, - enableSfdtExport: true -}); -documenteditor.appendTo('#DocumentEditor'); -documenteditor.editor.insertTable(2, 2); -//To change row height of first row -documenteditor.selection.rowFormat.heightType = 'Exactly'; -documenteditor.selection.rowFormat.height = 20; -``` - -### Header row - -The header row describes the content of a table. A table can optionally have a header row. Only the first row of a table can be the header row. If the cursor position is at first row of the table, then you can define whether it as header row or not, using the following sample code. - -```ts -documenteditor.selection.rowFormat.isHeader = true; -``` - -### Allow row break across pages - -This property is valid if a table row does not fit in the current page during table layout. It defines whether a table row can be allowed to break. If the value is false, the entire row will be moved to the start of next page. You can modify this property for selected rows using the following sample code. - -```ts -documenteditor.selection.rowFormat.allowRowBreakAcrossPages = false; -``` - -### Title - -Document Editor expose API to get or set the table title of the selected table. Refer to the following sample code to set title. - -```ts -documenteditor.selection.tableFormat.title = 'Shipping Details'; -``` - -### Description - -Document Editor expose API to get or set the table description of the selected image. Refer to the following sample code to set description. - -```ts -documenteditor.selection.tableFormat.description = 'Freight cost and shipping details'; -``` - -## See Also - -* [Table properties dialog](../document-editor/dialog#table-properties-dialog) \ No newline at end of file diff --git a/ej2-javascript/document-editor/table-of-contents.md b/ej2-javascript/document-editor/table-of-contents.md deleted file mode 100644 index ee5b41dca..000000000 --- a/ej2-javascript/document-editor/table-of-contents.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -layout: post -title: Table of contents in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Table of contents in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Table of contents -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Table of contents in ##Platform_Name## Document editor control - -The table of contents in a document is same as the list of chapters at the beginning of a book. It lists each heading in the document and the page number, where that heading starts with various options to customize the appearance. - -## Inserting table of contents - -Document Editor exposes an API to insert table of contents at cursor position programmatically. You can specify the settings for table of contents explicitly. Otherwise, the default settings will be applied. - -[`TableOfContentsSettings`](../api/document-editor/tableOfContentsSettings/) contain the following properties: -* **startLevel**: Specifies the start level for constructing table of contents. -* **endLevel**: Specifies the end level for constructing table of contents. -* **includeHyperlink**: Specifies whether the link for headings is included. -* **includePageNumber**: Specified whether the page number of the headings is included. -* **rightAlign**: Specifies whether the page number is right aligned. -* **tabLeader**: Specifies the tab leader styles such as none, dot, hyphen, and underscore. -* **includeOutlineLevels**: Specifies whether the outline levels are included. - -The following code illustrates how to insert table of content in Document Editor. - -```ts -let tocSettings: TableOfContentsSettings = -{ - startLevel: 1, endLevel: 3, includeHyperlink: true, includePageNumber: true, rightAlign: true -}; -//Insert table of contents in Document Editor. -editor.editorModule.insertTableOfContents(tocSettings); -``` - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/table-of-contents-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/table-of-contents-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/table-of-contents-cs1" %} - -## Update or edit table of contents - -You can update or edit the table of contents using the built-in context menu shown up by right-clicking it. Refer to the following screenshot. - -![Table of Contents](images/table-of-contents.png) - -* **Update Field**: Updates the headings in table of contents with same settings by searching the entire document. -* **Edit Field**: Opens the built-in table of contents dialog and allows you to modify its settings. - -You can also do it programmatically by using the exposed API. Refer to the following sample code. - -```ts -let documentEditor: DocumentEditor = new DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); -documentEditor.appendTo('#DocumentEditor'); -/*Open any existing document*/ -documentEditor.open(''); -//Table of contents settings. -let tocSettings: TableOfContentsSettings = -{ - startLevel: 1, endLevel: 3, includeHyperlink: true, includePageNumber: true, rightAlign: true -}; -//Insert table of contents in Document Editor. -documentEditor.editorModule.insertTableOfContents(tocSettings); -``` - ->Same method is used for inserting, updating, and editing table of contents. This will work based on the current element at cursor position and the optional settings parameter. If table of contents is present at cursor position, the update operation will be done based on the optional settings parameter. Otherwise, the insert operation will be done. - -## See Also - -* [Table of contents dialog](../document-editor/dialog#table-of-contents-dialog) diff --git a/ej2-javascript/document-editor/table.md b/ej2-javascript/document-editor/table.md deleted file mode 100644 index df4c57c82..000000000 --- a/ej2-javascript/document-editor/table.md +++ /dev/null @@ -1,223 +0,0 @@ ---- -layout: post -title: Table in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Table in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Table -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Table in ##Platform_Name## Document editor control - -Tables are an efficient way to present information. Document Editor can display and edit the tables. You can select and edit tables through keyboard, mouse, or touch interactions. Document Editor exposes a rich set of APIs to perform these operations programmatically. - -## Create a table - -You can create and insert a table at cursor position by specifying the required number of rows and columns. - -Refer to the following sample code. - -```ts - documenteditor.editor.insertTable(3,3); -``` -## Set the maximum number of rows when inserting a table - -{% if page.publishingplatform == "typescript" %} - -You can use the [maximumRows](https://ej2.syncfusion.com/documentation/api/document-editor/documentEditorSettings/#maximumrows) property to set the maximum number of rows allowed while inserting a table in the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -You can use the [maximumRows](https://ej2.syncfusion.com/javascript/documentation/api/document-editor/documentEditorSettings/#maximumrows) property to set the maximum number of rows allowed while inserting a table in the Document Editor component. - -{% endif %} - -Refer to the following sample code. - -```ts - let container: DocumentEditorContainer = new DocumentEditorContainer({ documentEditorSettings: { maximumRows: 4 } }); -``` - -When the maximum row limit is reached, an alert will appear, as follow - -![Row Limit Alert](images/Row_Limit_Alert.PNG) - ->Note: The maximum value of Row is 32767, as per Microsoft Word application and you can set any value less than or equal to 32767 to this property. -## Set the maximum number of Columns when inserting a table - -{% if page.publishingplatform == "typescript" %} - -You can use the [maximumColumns](https://ej2.syncfusion.com/documentation/api/document-editor/documentEditorSettings/#maximumcolumns) property to set the maximum number of columns allowed while inserting a table in the Document Editor component. - -{% elsif page.publishingplatform == "javascript" %} - -You can use the [maximumColumns](https://ej2.syncfusion.com/javascript/documentation/api/document-editor/documentEditorSettings/#maximumcolumns) property to set the maximum number of columns allowed while inserting a table in the Document Editor component. - -{% endif %} - -Refer to the following sample code. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ documentEditorSettings: { maximumColumns: 4 } }); -``` - -When the maximum column limit is reached, an alert will appear, as follow - -![Column Limit Alert](images/Column_Limit_Alert.PNG) - ->Note: The maximum value of Column is 63, as per Microsoft Word application and you can set any value less than or equal to 63 to this property. - -## Insert rows - -You can add a row (or several rows) above or below the row at cursor position by using the [`insertRow`](../api/document-editor/editor/#insertrow) method. This method accepts the following parameters: - -Parameter | Type | Description -----------|------|------------- -above(optional) | boolean | This is optional and if omitted, it takes the value as false and inserts below the row at cursor position. -count(optional) | number | This is optional and if omitted, it takes the value as 1. - -Refer to the following sample code. - -```ts -//Inserts a row below the row at cursor position -documentedior.editor.insertRow(); - -//Inserts a row above the row at cursor position -documentedior.editor.insertRow(false); - -//Inserts three rows below the row at cursor position -documentedior.editor.insertRow(true, 3) -``` - -## Insert columns - -You can add a column (or several columns) to the left or right of the column at cursor position by using the [`insertColumn`](../api/document-editor/editor/#insertcolumn) method. This method accepts the following parameters: - -Parameter | Type | Description -----------|------|------------- -left(optional) | boolean| This is optional and if omitted, it takes the value as false and inserts to the right of column at cursor position. -count(optional) | number | This is optional and if omitted, it takes the value as 1. - -Refer to the following sample code. - -```ts -//Insert a column to the right of the column at cursor position. -documentedior.editor.insertColumn(); - -//Insert a column to the left of the column at cursor position. -documentedior.editor.insertColumn(false); - -//Insert two columns to the left of the column at cursor position. -documentedior.editor.insertColumn(false, 2); -``` - -### Select an entire table - -If the cursor position is inside a table, you can select the entire table by using the following sample code. - -```ts -documenteditor.selection.selectTable(); -``` - -### Select row - -You can select the entire row at cursor position by using the following sample code. - -```ts -documenteditor.selection.selectRow(); -``` - -If current selection spans across cells of different rows, all these rows will be selected. - -### Select column - -You can select the entire column at cursor position by using the following sample code. - -```ts -documenteditor.selection.selectColumn(); -``` - -If current selection spans across cells of different columns, all these columns will be selected. - -### Select cell - -You can select the cell at cursor position by using the following sample code. - -```ts -documenteditor.selection.selectCell(); -``` - -## Delete table - -Document Editor allows you to delete the entire table. You can use the [`deleteTable()`](../api/document-editor/editor/#deletetable) method of editor instance, if selection is in table. Refer to the following sample code. - -```ts -documenteditor.editor.deleteTable(); -``` - -## Delete row - -Document Editor allows you to delete the selected number of rows. You can use the [`deleteRow()`](../api/document-editor/editor/#deleterow) method of editor instance to delete the selected number of rows, if selection is in table. Refer to the following sample code. - -```ts -documenteditor.editor.deleteRow(); -``` - -## Delete column - -Document Editor allows you to delete the selected number of columns. You can use the [`deleteColumn()`](../api/document-editor/editor/#deletecolumn) method of editor instance to delete the selected number of columns, if selection is in table. Refer to the following sample code. - -```ts -documenteditor.editor.deleteColumn(); -``` - -## Merge cells - -You can merge cells vertically, horizontally, or combination of both to a single cell. To vertically merge the cells, the columns within selection should be even in left and right directions. To horizontally merge the cells, the rows within selection should be even in top and bottom direction. -Refer to the following sample code. - -```ts -documenteditor.editor.mergeCells() -``` - -## Positioning the table - -Document Editor preserves the position properties of the table and displays the table based on position properties. It does not support modifying the position properties. Whereas the table will be automatically moved along with text edited if it is positioned relative to the paragraph. - -## How to work with tables - -The following sample demonstrates how to delete the table row or columns, merge cells and how to bind the API with button. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/table-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/table-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/table-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/table-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/table-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/table-cs1" %} -{% endif %} - -## See Also - -* [Feature modules](../document-editor/feature-module/) -* [Insert table dialog](../document-editor/dialog#table-dialog) diff --git a/ej2-javascript/document-editor/text-format.md b/ej2-javascript/document-editor/text-format.md deleted file mode 100644 index afabc075e..000000000 --- a/ej2-javascript/document-editor/text-format.md +++ /dev/null @@ -1,230 +0,0 @@ ---- -layout: post -title: Text format in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Text format in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Text format -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Text format in ##Platform_Name## Document editor control - -Document Editor supports several formatting options for text like bold, italic, font color, highlight color, and more. This section describes how to modify the formatting for selected text in detail. - -## Bold - -The bold formatting for selected text can be get or set by using the following sample code. - -```ts - -//Gets the value for bold formatting of selected text. -let bold : boolean = documenteditor.selection.characterFormat.bold; -//Sets bold formatting for selected text. -documenteditor.selection.characterFormat.bold = true; - -``` - -You can toggle the bold formatting based on existing value at selection. Refer to the following sample code. - -```ts -documenteditor.editor.toggleBold(); -``` - -## Italic - -The Italic formatting for selected text can be get or set by using the following sample code. - -```ts -//Gets the value for italic formatting of selected text. -let italic : boolean = documenteditor.selection.characterFormat.italic; -//Sets italic formatting for selected text. -documenteditor.selection.characterFormat.italic = true|false; -``` - -You can toggle the Italic formatting based on existing value at selection. Refer to the following sample code. - -```ts -documenteditor.editor.toggleItalic(); -``` - -## Underline property - -The underline style for selected text can be get or set by using the following sample code. - -```ts -//Gets the value for underline formatting of selected text. -let underline : Underline = documenteditor.selection.characterFormat.underline; -//Sets underline formatting for selected text. -documenteditor.selection.characterFormat.underline = 'Single' | 'None'; -``` - -You can toggle the underline style of selected text based on existing value at selection by specifying a value. Refer to the following sample code. - -```ts -documenteditor.editor.toggleUnderline('Single'); -``` - -## Strikethrough property - -The strikethrough style for selected text can be get or set by using the following sample code. - -```ts -//Gets the value for strikethrough formatting of selected text. -let strikethrough : Strikethrough = documenteditor.selection.characterFormat.strikethrough; -//Sets strikethrough formatting for selected text. -documenteditor.selection.characterFormat.strikethrough = 'Single' | 'Normal'; -``` - -You can toggle the strikethrough style of selected text based on existing value at selection by specifying a value. Refer to the following sample code. - -```ts -documenteditor.editor.toggleStrikethrough(); -``` - -## Superscript property - -The selected text can be made superscript by using the following sample code. - -```ts -//Gets the value for baselineAlignment formatting of selected text. -let baselineAlignment : BaselineAlignment = documenteditor.selection.characterFormat.baselineAlignment; -//Sets baselineAlignment formatting for selected text. -documenteditor.selection.characterFormat.baselineAlignment = 'Superscript'; -``` - -Toggle the selected text as superscript or normal using the following sample code. - -```ts -documenteditor.editor.toggleSuperscript(); -``` - -## Subscript property - -The selected text can be made subscript by using the following sample code. - -```ts -//Gets the value for baselineAlignment formatting of selected text. -let baselineAlignment : BaselineAlignment = documenteditor.selection.characterFormat.baselineAlignment; -//Sets baselineAlignment formatting for selected text. -documenteditor.selection.characterFormat.baselineAlignment = 'Subscript'; -``` - -Toggle the selected text as subscript or normal using the following sample code. - -```ts -documenteditor.editor.toggleSubscript(); -``` - -You can make a subscript or superscript text as normal using the following code. - -```ts -documenteditor.selection.characterFormat.baselineAlignment = 'Normal'; -``` - -## Change case - -You can apply different case formatting based on the selected text. Refer to the following sample code. - -```ts -documenteditor.editor.changeCase('Uppercase'|'Lowercase'|'SentenceCase'|'ToggleCase'|'CapitalizeEachWord'); -``` - -## Size - -The size of selected text can be get or set using the following code. - -```ts -//Gets the value for fontSize formatting of selected text. -let fontSize : number = documenteditor.selection.characterFormat.fontSize; -//Sets fontSize formatting for selected text. -documenteditor.selection.characterFormat.fontSize = 32; -``` - -## Color - -### Change Font Color by UI Option - -In the Document Editor, the Text Properties pane features two icons for managing text color within the user interface (UI): - -* **Colored Box:** This icon visually represents the **current color** applied to the selected text. -* **Text (A) Icon:** Clicking this icon allows users **to modify the color** of the selected text by choosing a new color from the available options. - -This Font Color option appear as follows. - -![Font Color](images/fontColor.PNG) - -### Change Font Color by Code - -The color of selected text can be get or set using the following code. - -```ts -//Gets the value for fontColor formatting of selected text. -let fontColor : string = documenteditor.selection.characterFormat.fontColor; -//Sets fontColor formatting for selected text. -documenteditor.selection.characterFormat.fontColor = 'Pink'; -documenteditor.selection.characterFormat.fontColor = '#FFC0CB'; -``` - -## Font - -The font style of selected text can be get or set using the following sample code. - -```ts -//Gets the value for fontFamily formatting of selected text. -let baselineAlignment : string = documenteditor.selection.characterFormat.fontFamily; -//Sets fontFamily formatting for selected text. -documenteditor.selection.characterFormat.fontFamily = 'Arial'; -``` - -## Highlight color - -The highlight color of the selected text can be get or set using the following sample code. - -```ts -//Gets the value for highlightColor formatting of selected text. -let highlightColor : HighlightColor = documenteditor.selection.characterFormat.highlightColor; -//Sets highlightColor formatting for selected text. -documenteditor.selection.characterFormat.highlightColor = 'Pink'; -documenteditor.selection.characterFormat.highlightColor = '#FFC0CB'; -``` - -N> 1. Character scaling and spacing present in the input Word document will be preserved in the exported Word document. N> 2. Scaling is implemented using the letterSpacing property, which may present compatibility problems. For more information, please refer to this [link](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/letterSpacing#browser_compatibility) - -## Toolbar with options for text formatting - -Refer to the following example. - -{% if page.publishingplatform == "typescript" %} - - {% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/text-format-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/text-format-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/text-format-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/text-format-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/text-format-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/text-format-cs1" %} -{% endif %} - -## See Also - -* [Feature modules](../document-editor/feature-module) -* [Font dialog](../document-editor/dialog#font-dialog) -* [Keyboard shortcuts](../document-editor/keyboard-shortcut#text-formatting) \ No newline at end of file diff --git a/ej2-javascript/document-editor/text-wrapping-style.md b/ej2-javascript/document-editor/text-wrapping-style.md deleted file mode 100644 index 9347588a6..000000000 --- a/ej2-javascript/document-editor/text-wrapping-style.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -layout: post -title: Text wrapping style in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Text wrapping style in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Text wrapping style -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Text wrapping style in ##Platform_Name## Document editor control - -Text wrapping refers to how images and shapes are fit with surrounding text in a document. Currently, DocumentEditor has only preservation support for image and textbox shape with below wrapping styles. - -## In-Line with Text - -In this option, the image or shape is placed on the same line surrounding with text like any other word or letter. This image or shape will be automatically moved along with the text while editing, whereas the other options denote that the image or shape stays in a fixed position while the text shifts and wraps around it. - -![view of image with inline wrapping style in DocumentEditor](images/Text-Wrapping-Style_images/inline-textwrapping.PNG) - -## In Front of Text - -In this option, the image or shape is placed in front of the text. This can be used to place an image around some text or to add shape to highlight the part in a paragraph. - -![view of image with in front of text wrapping style in DocumentEditor](images/Text-Wrapping-Style_images/infront-textwrapping.PNG) - ->Note: Starting from v18.2.0.x, the in front of wrapping styles are supported. - -## Top and Bottom - -In this option, Text wraps above and below the image or shape. No text is to the left or right of the image or shape. This can be used for larger images or shapes that occupy most of the width in a document. - ->Note: Starting from v19.1.0.x, the top and bottom wrapping style is supported. - -![view of image with top and bottom wrapping style in DocumentEditor](images/Text-Wrapping-Style_images/topandbottom-textwrapping.PNG) - -## Behind - -In this option, the image or shape is placed behind the text. This can be used when you need to add a watermark or background image to a document. - -![view of image with behind wrapping style in DocumentEditor](images/Text-Wrapping-Style_images/behind-textwrapping.PNG) - ->Note: Starting from v19.2.0.x, behind text wrapping styles are supported. - -## Square - -In this option, Text wraps around the image or text box in a square shape. - ->Note: Tight and Through styles will be preserved as square wrapping style in DocumentEditor which is supported from v19.2.0.x. - -![view of shape with square wrapping style in DocumentEditor](images/Text-Wrapping-Style_images/square-textwrapping.PNG) diff --git a/ej2-javascript/document-editor/track-changes.md b/ej2-javascript/document-editor/track-changes.md deleted file mode 100644 index cdcffbae6..000000000 --- a/ej2-javascript/document-editor/track-changes.md +++ /dev/null @@ -1,379 +0,0 @@ ---- -layout: post -title: Track changes in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Track changes in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Track changes -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Track changes in ##Platform_Name## Document editor control - -Track Changes allows you to keep a record of changes or edits made to a document. You can then choose to accept or reject the modifications. It is a useful tool for managing changes made by several reviewers to the same document. If track changes option is enabled, all editing operations are preserved as revisions in Document Editor. - -## Enable track changes in Document Editor - -The following example demonstrates how to enable track changes. - -{% if page.publishingplatform == "typescript" %} - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableTrackChanges: true, -}); -container.appendTo('#container'); -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js -var container = new ej.documenteditor.DocumentEditorContainer({ enableTrackChanges: true }); -container.appendTo('#container'); -``` - -{% endif %} - ->Track changes are document level settings. When opening a document, if the document does not have track changes enabled, then enableTrackChanges will be disabled even if we set enableTrackChanges : true in the initial rendering. If you want to enable track changes for all the documents, then we recommend enabling track changes during the document change event. The following example demonstrates how to enable Track changes for the all the Document while Opening. - -{% if page.publishingplatform == "typescript" %} - -```ts -container.documentChange = (): void => { - if (container !== null) { - container.documentEditor.enableTrackChanges = true; - } -}; -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js -container.documentChange = function () { - if (container !== null) { - container.documentEditor.enableTrackChanges = true; - } -}; -``` - -{% endif %} -## Show/Hide Revisions Pane - -The Show/Hide Revisions Pane feature in the Document Editor allows users to toggle the visibility of the revisions pane, providing flexibility in managing tracked changes within the document. - -The following example code illustrates how to show/hide the revisions pane. - -{% if page.publishingplatform == "typescript" %} - -```ts - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableTrackChanges: true, -}); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -container.documentEditor.showRevisions = true; // To show revisions pane -container.documentEditor.showRevisions = false; // To hide revisions pane - -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js - -var container = new ej.documenteditor.DocumentEditorContainer({ enableTrackChanges: true }); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); -container.appendTo('#container'); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.documentEditor.showRevisions = true; // To show revisions pane -container.documentEditor.showRevisions = false; // To hide revisions pane - -``` - -{% endif %} - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -## Get all tracked revisions - -The following example demonstrate how to get all tracked revision from current document. - -{% if page.publishingplatform == "typescript" %} - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableTrackChanges: true, -}); -container.appendTo('#container'); -/** - * Get revisions from the current document - */ -let revisions : RevisionCollection = container.documentEditor.revisions; -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js -var container = new ej.documenteditor.DocumentEditorContainer({ enableTrackChanges: true }); -container.appendTo('#container'); - -/** - * Get revisions from the current document - */ -var revisions = container.documentEditor.revisions; -``` - -{% endif %} - -## Accept or Reject all changes programmatically - -The following example demonstrates how to accept/reject all changes. - -{% if page.publishingplatform == "typescript" %} - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableTrackChanges: true, -}); -container.appendTo('#container'); -/** - * Get revisions from the current document - */ -let revisions : RevisionCollection = container.documentEditor.revisions; - -/** - * Accept all tracked changes - */ -revisions.acceptAll(); - -/** - * Reject all tracked changes - */ -revisions.rejectAll(); -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js -var container = new ej.documenteditor.DocumentEditorContainer({ enableTrackChanges: true }); -container.appendTo('#container'); -/** - * Get revisions from the current document - */ -var revisions = container.documentEditor.revisions; - -/** - * Accept all tracked changes - */ -revisions.acceptAll(); - -/** - * Reject all tracked changes - */ -revisions.rejectAll(); -``` - -{% endif %} - -## Accept or reject a specific revision - -The following example demonstrates how to accept/reject specific revision in the Document Editor. - -{% if page.publishingplatform == "typescript" %} - -```ts -/** - * Get revisions from the current document - */ -let revisions : RevisionCollection = container.documentEditor.revisions; -/** - * Accept specific changes - */ -revisions.get(0).accept(); -/** - * Reject specific changes - */ -revisions.get(1).reject(); -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js -/** - * Get revisions from the current document - */ -var revisions = container.documentEditor.revisions; -/** - * Accept specific changes - */ -revisions.get(0).accept(); -/** - * Reject specific changes - */ -revisions.get(1).reject(); -``` - -{% endif %} - -## Navigate between the tracked changes - -The following example demonstrates how to navigate tracked revision programmatically. - -{% if page.publishingplatform == "typescript" %} - -```ts - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableTrackChanges: true, -}); -container.appendTo('#container'); -/** - * Navigate to next tracked change from the current selection. - */ -container.documentEditor.selection.navigateNextRevision(); - -/** - * Navigate to previous tracked change from the current selection. - */ -container.documentEditor.selection.navigatePreviousRevision(); -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js -var container = new ej.documenteditor.DocumentEditorContainer({ enableTrackChanges: true }); -container.appendTo('#container'); -/** - * Navigate to next tracked change from the current selection. - */ -container.documentEditor.selection.navigateNextRevision(); - -/** - * Navigate to previous tracked change from the current selection. - */ -container.documentEditor.selection.navigatePreviousRevision(); -``` - -{% endif %} - -## Filtering changes based on user - -In DocumentEditor, we have built-in review panel in which we have provided support for filtering changes based on the user. - -![Track changes](images/track-changes.png) - -## Protect the document in track changes only mode - -Document Editor provides support for protecting the document with `RevisionsOnly` protection. In this protection, all the users are allowed to view the document and do their corrections, but they cannot accept or reject any tracked changes in the document. Later, the author can view their corrections and accept or reject the changes. - -Document editor provides an option to protect and unprotect document using [`enforceProtection`](../api/document-editor/editor/#enforceprotection) and [`stopProtection`](../api/document-editor/editor/#stopprotection) API. - -The following example code illustrates how to enforce and stop protection in Document editor container. - -{% if page.publishingplatform == "typescript" %} - -```ts - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -container.serviceUrl = 'http://localhost:5000/api/documenteditor/'; -container.appendTo('#container'); - -//enforce protection -container.documentEditor.editor.enforceProtection('123', 'RevisionsOnly'); - -//stop the document protection -container.documentEditor.editor.stopProtection('123'); -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js -var container = new ej.documenteditor.DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); -ej.documenteditor.DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = - 'http://localhost:5000/api/documenteditor/'; -container.appendTo('#container'); - -//enforce protection -container.documentEditor.editor.enforceProtection('123', 'RevisionsOnly'); - -//stop the document protection -container.documentEditor.editor.stopProtection('123'); -``` - -{% endif %} - -Tracked changes only protection can be enabled in UI by using [Restrict Editing pane](../document-editor/document-management#restrict-editing-pane) - -![Enable track changes only protection](images/tracked-changes.png) - ->Note: In enforce Protection method, first parameter denotes password and second parameter denotes protection type. Possible values of protection type are `NoProtection |ReadOnly |FormFieldsOnly |CommentsOnly |RevisionsOnly`. In stop protection method, parameter denotes the password. - -## Events - -DocumentEditor provides [beforeAcceptRejectChanges](../api/document-editor-container#beforeacceptrejectchanges) event, which is triggered before a tracked content is accepted or rejected. This event provides an opportunity to perform custom logic before accepting or rejecting changes. The event handler receives the [RevisionActionEventArgs](../api/document-editor/revisionActionEventArgs) object as an argument, which allows access to information about the tracked content. . - -To demonstrate a specific use case, let's consider an example where we want to restrict the accept and reject changes functionality based on the author name. The following code snippet illustrates how to allow only the author of the tracked content to accept or reject changes: - -{% if page.publishingplatform == "typescript" %} - -```ts - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; -DocumentEditorContainer.Inject(Toolbar); -let container: DocumentEditorContainer = new DocumentEditorContainer({ - beforeAcceptRejectChanges: beforeAcceptRejectChanges.bind(this), - enableToolbar: true, - height: '590px', - currentUser: 'Hary' -}); -container.appendTo('#container'); - -// Event get triggerd before accepting/rejecting changes -function beforeAcceptRejectChanges(args : RevisionActionEventArgs) : void { - // Check the author of the revision and current user are different - if (args.author !== container.currentUser) { - // Cancel the accept/reject action - args.cancel = true; - } -} -``` - -{% elsif page.publishingplatform == "javascript" %} - -```js - -var container = new ej.documenteditor.DocumentEditorContainer({ - beforeAcceptRejectChanges:{beforeAcceptRejectChanges}, - enableToolbar: true, - height: '590px', - currentUser: 'Hary' -}); -ej.documenteditor.DocumentEditorContainer.Inject(ej.documenteditor.Toolbar); - -container.appendTo('#container'); - -// Event get triggerd before accepting/rejecting changes -function beforeAcceptRejectChanges(args) { - // Check the author of the revision and current user are different - if (args.author !== container.currentUser) { - // Cancel the accept/reject action - args.cancel = true; - } -} -``` - -{% endif %} diff --git a/ej2-javascript/document-editor/ts/getting-started.md b/ej2-javascript/document-editor/ts/getting-started.md deleted file mode 100644 index ce7b739e3..000000000 --- a/ej2-javascript/document-editor/ts/getting-started.md +++ /dev/null @@ -1,278 +0,0 @@ ---- -layout: post -title: Getting started with ##Platform_Name## Document editor control | Syncfusion -description: Checkout and learn about Getting started with ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more details. -platform: ej2-javascript -control: Getting started -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Getting started in ##Platform_Name## Document editor control - -This section briefly explains how to create a simple **Document editor** component and configure its available functionalities in TypeScript, using Essential® JS 2 [quickstart](https://github.com/SyncfusionExamples/ej2-quickstart-webpack-) seed repository. - -> This application is integrated with the `webpack.config.js` configuration and uses the latest version of the [webpack-cli](https://webpack.js.org/api/cli/#commands). It requires node `v14.15.0` or higher. For more information about webpack and its features, refer to the [webpack documentation](https://webpack.js.org/guides/getting-started/). - -## Dependencies - -Following is the list of minimum dependencies required to use the Document Editor. - -```javascript - |-- @syncfusion/ej2-documentEditor - |-- @syncfusion/ej2-base - |-- @syncfusion/ej2-buttons - |-- @syncfusion/ej2-calendars - |-- @syncfusion/ej2-compression - |-- @syncfusion/ej2-dropdowns - |-- @syncfusion/ej2-file-utils - |-- @syncfusion/ej2-inputs - |-- @syncfusion/ej2-navigations - |-- @syncfusion/ej2-office-chart - |-- @syncfusion/ej2-charts - |-- @syncfusion/ej2-popups - |-- @syncfusion/ej2-splitbuttons - -``` - -### Server side dependencies - -The Document Editor component requires server-side interactions for the following operations: - -* [Open file formats other than SFDT](../document-editor/import#convert-word-documents-into-sfdt) -* [Paste with formatting](../document-editor/clipboard#paste-with-formatting) -* [Restrict editing](../document-editor/document-management) -* [Spell check](../document-editor/spell-check) -* [Save as file formats other than SFDT and DOCX](../document-editor/server-side-export) - ->Note: If you don't require the above functionalities then you can deploy as pure client-side component without any server-side interactions. - -To know about server-side dependencies, please refer this [page](../document-editor/web-services-overview). - -## Set up development environment - -Open the command prompt from the required directory, and run the following command to clone the Syncfusion® JavaScript (Essential® JS 2) quickstart project from [GitHub](https://github.com/SyncfusionExamples/ej2-quickstart-webpack-). - -{% tabs %} -{% highlight bash tabtitle="CMD" %} - -git clone https://github.com/SyncfusionExamples/ej2-quickstart-webpack- ej2-quickstart - -{% endhighlight %} -{% endtabs %} - -After cloning the application in the `ej2-quickstart` folder, run the following command line to navigate to the `ej2-quickstart` folder. - -{% tabs %} -{% highlight bash tabtitle="CMD" %} - -cd ej2-quickstart - -{% endhighlight %} -{% endtabs %} - -## Add Syncfusion® JavaScript packages - -Syncfusion® JavaScript (Essential® JS 2) packages are available on the [npmjs.com](https://www.npmjs.com/~syncfusionorg) public registry. You can install all Syncfusion® JavaScript (Essential® JS 2) controls in a single [@syncfusion/ej2](https://www.npmjs.com/package/@syncfusion/ej2) package or individual packages for each control. - -The quickstart application is preconfigured with the dependent [@syncfusion/ej2](https://www.npmjs.com/package/@syncfusion/ej2) package in the `~/package.json` file. Use the following command to install the dependent npm packages from the command prompt. - -{% tabs %} -{% highlight bash tabtitle="NPM" %} - -npm install - -{% endhighlight %} -{% endtabs %} - -## Import the Syncfusion® CSS styles - -Syncfusion® JavaScript controls come with [built-in themes](https://ej2.syncfusion.com/documentation/appearance/theme/), which are available in the installed packages. It's easy to adapt the Syncfusion® JavaScript controls to match the style of your application by referring to one of the built-in themes. - -The quickstart application is preconfigured to use the `Material` theme in the `~/src/styles/styles.css` file, as shown below: - -{% tabs %} -{% highlight css tabtitle="style.css" %} - -@import "../../node_modules/@syncfusion/ej2/material.css"; - -{% endhighlight %} -{% endtabs %} - -> You can check out the [themes](https://ej2.syncfusion.com/documentation/appearance/theme/) section to know more about built-in themes and CSS reference for individual controls. - -## Adding component - -You can add `DocumentEditorContainer` component with predefined toolbar and properties pane options or `DocumentEditor` component with customize options. - ->Note: Starting from `v19.3.0.x`, we have optimized the accuracy of text size measurements such as to match Microsoft Word pagination for most Word documents. This improvement is included as default behavior along with an optional API [to disable it and retain the document pagination behavior of older versions](../document-editor/how-to/disable-optimized-text-measuring). - -### Document Editor component - -Document Editor component is used to create, view and edit word documents. In this, you can customize the UI options based on your requirements to modify the document. - -#### Adding Document Editor component - -You can start adding Essential® JS 2 documenteditor component to the application. To get started, add the DocumentEditor component in `app.ts` and `index.html` files using the following code. - -Place the following code in the `app.ts`. - -{% tabs %} -{% highlight ts tabtitle="app.ts" %} - -import { DocumentEditor } from '@syncfusion/ej2-documenteditor'; - -// Initialize Document Editor component. -let documenteditor: DocumentEditor = new DocumentEditor({ isReadOnly: false, height: '370px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -// Enable all built in modules. -documenteditor.enableAllModules(); - -// Render the Document Editor component. -documenteditor.appendTo('#DocumentEditor'); - -{% endhighlight %} -{% endtabs %} - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Now, add an HTML div element to act as the DocumentEditor element in `index.html` using the following code. - -{% tabs %} -{% highlight html tabtitle="index.html" %} - - - - - - Essential JS 2 - - - - - - - - - - -
    - - - - -{% endhighlight %} -{% endtabs %} - -#### Run the Document Editor application - -The quickstart project is configured to compile and run the application in the browser. Use the following command to run the application. - -{% tabs %} -{% highlight bash tabtitle="NPM" %} - -npm start - -{% endhighlight %} -{% endtabs %} - -Documenteditor output will be displayed as follows. - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/getting-started-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/getting-started-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/getting-started-cs1" %} - -### Document Editor Container component - -Document Editor Container is a predefined component which wraps DocumentEditor, Toolbar, Properties pane, and Status bar into a single component. And the toolbar and properties pane is used to view and modify the document in DocumentEditor thought public APIs available in it. - -#### Adding Document Editor Container component - -You can start adding Essential® JS 2 documenteditor container component to the application. To get started, add the DocumentEditorContainer component in `app.ts` and `index.html` files using the following code. - -Place the following code in the `app.ts`. - -{% tabs %} -{% highlight ts tabtitle="app.ts" %} - -import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Toolbar); - -let documenteditor: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '390px', serviceUrl: 'https://services.syncfusion.com/js/production/api/documenteditor/' }); - -documenteditor.appendTo('#DocumentEditor'); - -{% endhighlight %} -{% endtabs %} - -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. - -Now, add an HTML div element to act as the DocumentEditorContainer element in `index.html` using the following code. - -{% tabs %} -{% highlight html tabtitle="index.html" %} - - - - - - Essential JS 2 - - - - - - - - - - -
    - - - - -{% endhighlight %} -{% endtabs %} - -#### Run the Document Editor Container application - -The quickstart project is configured to compile and run the application in the browser. Use the following command to run the application. - -{% tabs %} -{% highlight bash tabtitle="NPM" %} - -npm start - -{% endhighlight %} -{% endtabs %} - -DocumentEditorContainer output will be displayed as follows. - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/getting-started-cs2/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/getting-started-cs2/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/getting-started-cs2" %} - -## Frequently Asked Questions - -* [How to localize the Documenteditor container](../document-editor/global-local). -* [How to load the document by default](../document-editor/how-to/open-default-document). -* [How to customize tool bar](../document-editor/how-to/customize-tool-bar). -* [How to resize Document editor component?](../document-editor/how-to/resize-document-editor) -* [How to add a save button to the DocumentEditorContainer component toolbar](../document-editor/how-to/add-save-button-in-toolbar) diff --git a/ej2-javascript/document-editor/ts/how-to/customize-ribbon.md b/ej2-javascript/document-editor/ts/how-to/customize-ribbon.md deleted file mode 100644 index d1f245211..000000000 --- a/ej2-javascript/document-editor/ts/how-to/customize-ribbon.md +++ /dev/null @@ -1,232 +0,0 @@ ---- -layout: post -title: Customize Ribbon in ##Platform_Name## Document Editor | Syncfusion -description: Learn how to customize the ribbon in Syncfusion ##Platform_Name## Document Editor - file menu, backstage, tabs, groups, and items. -platform: ej2-javascript -control: Ribbon Customization -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Customize Ribbon in ##Platform_Name## Document Editor - -The Syncfusion Document Editor provides an extensive and flexible API to customize the built-in ribbon UI. You can: - -- Customize the File menu. -- Add the Backstage menu instead of File menu. -- Show, hide, or add Ribbon tabs. -- Show, hide, or add groups within tabs. -- Show, hide, add, enable, or disable items within groups. - -Below are detailed examples for each ribbon customization scenario. - -## File Menu Customization - -Document Editor provides APIs to remove existing File menu items and add new custom items based on your requirements. You can modify the File menu using the [`fileMenuItems`](../api/document-editor-container/#filemenuitems) property. - -In below code example, In the example below, the "Open" and "Export" items have been removed from the File Menu Items, and new custom items have been added. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, toolbarMode: 'Ribbon', - fileMenuItems: ["New", "Print", { text: 'Export', id: 'custom_item',iconCss: 'e-icons e-export' } - ], - fileMenuItemClick: function (args) { - if (args.item.id) { - container.documentEditor.save('Sample', 'Docx'); - } - } -}); -``` - -## Backstage Menu Customization - -The Document Editor provides an [`backStageMenu`](../api/document-editor-container/#backStageMenu) API to add a backstage menu. When the backstage menu is enabled, the default File menu items are automatically hidden. - -The following code example shows how to add the backstage menu items. - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, toolbarMode: 'Ribbon', - backstageMenu: { - text: 'File', - backButton: { text: 'close' }, - items: [ - { id: 'new', text: 'New', iconCss: 'e-icons e-de-ctnr-new' }], - } -}); - -``` - -Refer this documentation know more about [`backstage items`](https://ej2.syncfusion.com/documentation/ribbon/backstage) - -## Tab Customization - -You can customize the ribbon tabs in the Document Editor by showing, hiding, or adding tabs according to your application's requirements. - -### Show/Hide Tab - -Document editor provides the [`showTab`](../api/document-editor-container/ribbon/#showtab) API to show and hide the existing tab using existing `RibbonTabType` and `tabId`. - -The following code example how to show/hide existing tab using existing tab type and tab id. -```ts -// To hide the Home tab using the built-in `RibbonTabType` -container.ribbon.showTab('Home', false); - -// To hide a tab by its tab id (for example, a custom tab) -container.ribbon.showTab('custom_tab', false); -``` - -### Add Tab - -The Document Editor provides the [`addTab`](../api/document-editor-container/ribbon/#addtab) API, which allows you to insert a new custom tab either between existing tabs or at the end of the ribbon tabs. - -```ts -import { RibbonTabModel } from '@syncfusion/ej2-ribbon'; - -// To add the tab at end of tab -let ribbonTab: RibbonTabModel = { - header: 'Custom Tab', id: 'custom_tab', groups: [{ - header: 'Custom Group', collections: [{ - items: [{ - type: 'Button', - buttonSettings: { - content: 'New', - iconCss: 'e-icons e-de-ctnr-new', - clicked: function () { - container.documentEditor.openBlank(); - } - } - }] - }] - }] -}; -container.ribbon.addTab(ribbonTab); - -// To add the tab before the Insert tab(exising tab) -container.ribbon.addTab(ribbonTab,'Insert'); -``` - - -## Group Customization - -You can also customize ribbon groups within a tab to better organize commands or add new functionalities as per your needs. - -### Show/Hide Group - -Document Editor provides an [`showGroup`](../api/document-editor-container/ribbon/#showgroup) API to show or hide existing groups within a ribbon tab. - -The following code example show how to show/hide the group using group Id or [`RibbonGroupInfo`](../api/document-editor-container/#ribbongroupinfo). - -```ts - -// To hide the clipboard group using group index -container.ribbon.showGroup({tabId: 'Home', index: 1} , false); - -// To show the clipboard group using group index -container.ribbon.showGroup({tabId: 'Home', index: 1} , true); - -// To hide the group using id -container.ribbon.showGroup('custom_group', false); - -``` - -### Add Group - -To extend the ribbon's functionality, you can add custom groups to any tab. This allows you to organize related commands together within a tab. - -```ts - -import { RibbonGroupModel } from '@syncfusion/ej2-ribbon'; - -// Add the new group at the end of the Home tab -let ribbonGroup: RibbonGroupModel = -{ - header: 'Custom Group', collections: [{ - items: [{ - type: 'Button', - buttonSettings: { - content: 'New', - iconCss: 'e-icons e-de-ctnr-new', - clicked: function () { - container.documentEditor.openBlank(); - } - } - }] - }] -}; -container.ribbon.addGroup('Home', ribbonGroup); - -// Add the new group at the specified index of the Home tab (before the Clipboard group) - -container.ribbon.addGroup('Home', ribbonGroup, 1); - -``` - -## Item Customization - -You can customize individual items within ribbon groups. This includes showing, hiding, enabling, disabling, or adding new items to any group within a ribbon tab. - -### Show/Hide Item - -Using [`showItems`](../api/document-editor-container/ribbon/#showitems) API in Document editor ribbon to enable/disable the existing item. Here, you can specify the item Id or [`RibbonItemInfo`]. - -The following code example show how to show/hide the item using item Id or [`RibbonItemInfo`](../api/document-editor-container/#ribboniteminfo). - -```ts -// To hide the Bold and Italic items using ribbon item information -container.ribbon.showItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [5, 6] } , false); - -// To show the Bold and Italic items using ribbon item information -container.ribbon.showItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [5, 6] } , true); - -// To hide the item using item id -container.ribbon.showItems('custom_item', false); -``` - -### Enable/Disable Item - -Using [`enableItems`](../api/document-editor-container/ribbon/#enableitems) API in Document editor ribbon to enable/disable the existing item. - -```ts -// To disable the underline using ribbon item info -container.ribbon.enableItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [7] },false); - -// To enable the underline using ribbon item info -container.ribbon.enableItems({ tabId: 'Home', groupIndex: 2, itemIndexes: [7] },true); - -// To disable the item using id -container.ribbon.enableItems('custom_item', false); - -``` - -### Add Item - -You can use the [`addItem`](../api/document-editor-container/ribbon/#additem) API in the Document Editor ribbon to add a new item. Additionally, you can specify the target tab and group where the new item should be placed. - -```ts - -// To add the item at the end of the specified group (the item will be added at the end of the Undo group) -let ribbonItem: RibbonItemModel = { - type: 'Button', - buttonSettings: { - content: 'New', - iconCss: 'e-icons e-de-ctnr-new', - clicked: function () { - container.documentEditor.openBlank(); - } - } -}; -container.ribbon.addItem({ tabId: 'Home', index: 0 }, ribbonItem); - -// To add the item before the specified item index (the item will be added before the Redo item in the Undo group) - -container.ribbon.addItem({ tabId: 'Home', index: 0 }, ribbonItem, 1); - -``` - - -## Related Links - -- [File menu Customization Demo](https://ej2.syncfusion.com/demos/#/material/document-editor/ribbon-customization) \ No newline at end of file diff --git a/ej2-javascript/document-editor/ts/how-to/optimize-sfdt.md b/ej2-javascript/document-editor/ts/how-to/optimize-sfdt.md deleted file mode 100644 index e081edab1..000000000 --- a/ej2-javascript/document-editor/ts/how-to/optimize-sfdt.md +++ /dev/null @@ -1,124 +0,0 @@ ---- -layout: post -title: Optimize sfdt in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Optimize sfdt in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Optimize sfdt -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Optimize sfdt in ##Platform_Name## Document editor control - -Starting from version v21.1.x, the SFDT file generated in Word Processor component is optimized by default to reduce the file size. All static keys are minified, and the final JSON string is compressed. This helps reduce the SFDT file size relative to a DOCX file and provides the following benefits, -* File transfer between client and server through the internet gets faster. -* The new optimized SFDT files require less storage space than the old SFDT files. -Hence, the optimized SFDT file can't be directly manipulated as JSON string. - -> This feature comes with a public API to switch between the old and new optimized SFDT format, allowing backward compatibility. - -As a backward compatibility to create older format SFDT files, refer the following code changes, - - - - - - - - - - - - - - - - - - - - -
    Client/ServerOld CodeNew Code from v21.1.x
    Client-side -{% tabs %} -{% highlight ts tabtitle="Component Declaration"%} -let container: DocumentEditorContainer = new DocumentEditorContainer(); -{% endhighlight %} -{% endtabs %} - -{% tabs %} -{% highlight ts tabtitle="Component Declaration"%} -let container: DocumentEditorContainer = new DocumentEditorContainer({ documentEditorSettings: { optimizeSfdt: false } }); -{% endhighlight %} -{% endtabs %} -
    Server-side C# -{% tabs %} -{% highlight c# tabtitle="Import"%} -WordDocument sfdtDocument = WordDocument.Load(stream, formatType); -string sfdt = Newtonsoft.Json.JsonConvert.SerializeObject(sfdtDocument); -{% endhighlight %} -{% endtabs %} - -{% tabs %} -{% highlight c# tabtitle="Import"%} -WordDocument sfdtDocument = WordDocument.Load(stream, formatType); -sfdtDocument.OptimizeSfdt = false; -string sfdt = Newtonsoft.Json.JsonConvert.SerializeObject(sfdtDocument); -{% endhighlight %} -{% endtabs %} -
    Server-side Java -{% tabs %} -{% highlight c# tabtitle="Import"%} -String sfdtDocument = WordProcessorHelper.load(stream, formatType); -{% endhighlight %} -{% endtabs %} - -{% tabs %} -{% highlight java tabtitle="Import"%} -String sfdtDocument = WordProcessorHelper.load(stream, formatType, false); -{% endhighlight %} -{% endtabs %} -
    - -To convert from older format SFDT from a new optimized SFDT file, refer the following code example, - - - - - - - - - - - - - - - - - -
    Client/ServerCode example
    Client-side -{% tabs %} -{% highlight ts tabtitle="Component Declaration"%} -let container: DocumentEditorContainer = new DocumentEditorContainer({ documentEditorSettings: { optimizeSfdt: false } }); -{% endhighlight %} -{% endtabs %} -
    Server-side C# -{% tabs %} -{% highlight c# tabtitle="Import"%} -using(Syncfusion.DocIO.DLS.WordDocument docIODocument = WordDocument.Save(optimizedSfdt)) { - sfdtDocument = WordDocument.Load(docIODocument); - sfdtDocument.OptimizeSfdt = false; - string oldSfdt = JsonSerializer.Serialize(sfdtDocument); -} -{% endhighlight %} -{% endtabs %} -
    Server-side Java -{% tabs %} -{% highlight java tabtitle="Import"%} -WordDocument docIODocument = WordProcessorHelper.save(optimizedSfdt); -String oldSfdt = WordProcessorHelper.load(docIODocument, false); -{% endhighlight %} -{% endtabs %} -
    \ No newline at end of file diff --git a/ej2-javascript/document-editor/ts/ribbon.md b/ej2-javascript/document-editor/ts/ribbon.md deleted file mode 100644 index 3723e5936..000000000 --- a/ej2-javascript/document-editor/ts/ribbon.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -layout: post -title: Ribbon in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about the Ribbon UI in Syncfusion ##Platform_Name## Document editor control, how to switch between Ribbon and Toolbar modes. -platform: ej2-javascript -control: Ribbon -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Ribbon in ##Platform_Name## Document Editor Control - -The Document Editor provides a modern Ribbon interface similar to Microsoft Word's interface. This Ribbon UI provides an efficient and intuitive way to access editing features, organizing commands within well-structured tabs and groups to enhance your document editing experience. Additionally, the Ribbon interface supports contextual tabs. Contextual tabs appear only when certain elements, such as tables, images, or headers/footers, are selected in the document. - -You can switch between the classic **Toolbar** and the new **Ribbon** UI, and you can also choose between **Classic** and **Simplified** ribbon layouts. - -## Enable Ribbon Mode - -To enable Ribbon in Document Editor, use the [`toolbarMode`](../api/document-editor-container/#toolbarmode) property of `DocumentEditorContainer`. The available toolbar modes are: - -- **'Toolbar'** - The traditional toolbar UI. -- **'Ribbon'** - The Ribbon UI, which provides a tabbed interface with grouped commands. - -By default, `toolbarMode` is `Toolbar`. - -The following code shows the how to enable the `Ribbon` in Document Editor. - -```ts - -import { DocumentEditorContainer, Ribbon } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Ribbon); -// Initialize the Document Editor Container with Ribbon mode enabled -var container = new ej.documenteditor.DocumentEditorContainer({ - enableToobar: true, - toolbarMode: 'Ribbon', // Options: 'Ribbon' or 'Toolbar' - height: '590px' -}); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -``` - -## Ribbon Layouts - -Document Editor provides two different Ribbon layouts: - -- **Classic**: A traditional Office-like ribbon with detailed grouping and larger icons -- **Simplified**: A more compact ribbon design with streamlined controls - -By default, `ribbonLayout` is set to `Simplified`. - -The following code shows the how to configure the ribbon layout in Document Editor: - -```ts - -import { DocumentEditorContainer, Ribbon } from '@syncfusion/ej2-documenteditor'; - -DocumentEditorContainer.Inject(Ribbon); -// Initialize the Document Editor Container with Ribbon mode enabled -var container = new ej.documenteditor.DocumentEditorContainer({ - enableToobar: true, - toolbarMode: 'Ribbon', // Options: 'Ribbon' or 'Toolbar' - ribbonLayout: 'Classic', // Options: 'Simplified' or 'Classic' - height: '590px' -}); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -``` - -## See Also - -* [How to customize the ribbon](../document-editor/how-to/customize-ribbon) \ No newline at end of file diff --git a/ej2-javascript/document-editor/ts/styles.md b/ej2-javascript/document-editor/ts/styles.md deleted file mode 100644 index 0f7d34a1a..000000000 --- a/ej2-javascript/document-editor/ts/styles.md +++ /dev/null @@ -1,209 +0,0 @@ ---- -layout: post -title: Styles in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Styles in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Styles -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Styles in ##Platform_Name## Document editor control - -Styles are useful for applying a set of formatting consistently throughout the document. In Document Editor, styles are created and added to a document programmatically or via the built-in Styles dialog. - -## Styles definition overview - -A Style in Document Editor should have the following properties: - -* **name**: Name of the style. All styles in a document have a unique name, which is used as an identifier when applying the style. -* **type**: Specifies the document elements that the style will target. For example, paragraph or character. -* **next**: Specifies that the current style inherits the style set to this property. This is how hierarchical styles are defined. -* **link**: Provides a relation between the paragraph and character style. -* **characterFormat**: Specifies the properties of paragraph and character style. -* **paragraphFormat**: Specifies the properties of paragraph style. -* **basedOn**: Specifies that the current style inherits the style set to this property. This is how hierarchical styles are defined. It can be optional. - -> The style type should match the inherited style type. For example, it is not possible to have a character style inherit a paragraph style. - -## Default style - -The default style for span and paragraph properties is normal. It internally inherits the default style of the document loaded or Document Editor component. - -## Style hierarchy - -Each style initially checks its local value for the property that is being evaluated and turns to the style it is based on. If no local value is found, it turns to its default style. - -Style inheritance of different styles are listed as follows: - -### Character style - -Character styles are based only on other character styles. - -The inheritance is: Character properties are inherited from the base character style. - -### Paragraph style - -Paragraph styles are based on other paragraph styles or on linked styles. When a paragraph style is based on another paragraph style, the inheritance of the properties is as follows: -* Paragraph properties are inherited from the base paragraph style. -* Span properties are inherited from the base paragraph style. - -When a paragraph style is based on a linked style, the inheritance of the properties is as follows: -* Paragraph properties are inherited from the paragraph style part in its base linked style. -* Span properties are inherited from the span style part in its base linked style. - -### Linked style - -Linked styles are composite styles and their components are paragraph and character styles with link between them. To apply paragraph properties, take the properties from the linked paragraph style. Similarly, to apply character properties, take the properties from linked character style. -Linked styles are based on other linked styles or on paragraph styles. - -When a linked style is based on a paragraph style, the hierarchy of the properties is as follows: - -* Paragraph properties are inherited from the ‘basedOn’ paragraph style. -* Character properties are inherited from the ‘basedOn’ paragraph style. - -When a linked style is based on another linked style, the hierarchy of the properties is as follows: - -* Paragraph properties are inherited from the paragraph style part in its base linked style. -* Span properties are inherited from the span style part in its base linked style. - -## Defining new styles - -New Styles are defined and added to the style collection of the document. In this way, they will be discovered by the default UI and applied to the parts of a document. - -### Defining a character style - -The following example shows how to programmatically create a character style. - -```ts -let documentEditor: DocumentEditor = new DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); -let styleJson: any = { - "type": "Character", - "name": "New CharacterStyle", - "basedOn": "Default Paragraph Font", - "characterFormat": { - "fontSize": 16.0, - "fontFamily": "Calibri Light", - "fontColor": "#2F5496", - "bold": true, - "italic": true, - "underline": "Single" - } -}; -documentEditor.editor.createStyle(JSON.stringify(styleJson)); -``` - -### Defining a paragraph style - -The following example shows how to programmatically create a paragraph style. - -```ts -let documentEditor: DocumentEditor = new DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); -let styleJson: any = { - "type": "Paragraph", - "name": "New ParagraphStyle", - "basedOn": "Normal", - "characterFormat": { - "fontSize": 16.0, - "fontFamily": "Calibri Light", - "fontColor": "#2F5496", - "bold": true, - "italic": true, - "underline": "Single" - }, - "paragraphFormat": { - "leftIndent": 0.0, - "rightIndent": 0.0, - "firstLineIndent": 0.0, - "beforeSpacing": 12.0, - "afterSpacing": 0.0, - "lineSpacing": 1.0791666507720947, - "lineSpacingType": "Multiple", - "textAlignment": "Left", - "outlineLevel": "Level1" - } -}; -documentEditor.editor.createStyle(JSON.stringify(styleJson)); -``` - -### Defining a linked style - -The following example shows how to programmatically create linked style. - -```ts -let documentEditor: DocumentEditor = new DocumentEditor({ enableEditor: true, isReadOnly: false, enableSelection: true }); -let styleJson: any = { - "type": "Paragraph", - "name": "New Linked", - "basedOn": "Normal", - "next": "Normal", - "link": "New Linked Char", - "characterFormat": { - "fontSize": 16.0, - "fontFamily": "Calibri Light", - "fontColor": "#2F5496" - }, - "paragraphFormat": { - "leftIndent": 0.0, - "rightIndent": 0.0, - "firstLineIndent": 0.0, - "beforeSpacing": 12.0, - "afterSpacing": 0.0, - "lineSpacing": 1.0791666507720947, - "lineSpacingType": "Multiple", - "textAlignment": "Left", - "outlineLevel": "Level1" - } -}; -documentEditor.editor.createStyle(JSON.stringify(styleJson)); -``` - -## Applying a style - -The styles are applied using the **applyStyle** method of **editorModule**, the parameter should be passed is the **Name** of the Style. - -The styles of the **Character** type is applied to the currently selected part of the document. If there is no selection, the values that will be applied to the word at caret position. The styles of **Paragraph** type follow the same logic and are applied to all paragraphs in the selection or the current paragraph. - -When there is no selection, styles of **Linked** type will change the values of the paragraph, and apply both the Paragraph and Character properties. When there is selection, Linked Style changes only the character properties of the selected text. - -For example, the following line will apply the "New Linked" to the current paragraph. - -```ts -editor.editorModule.applyStyle('New Linked'); -//Clear direct formatting and apply the specified style -editor.editorModule.applyStyle('New Linked', true); -``` - -## Get Styles - -You can get the styles in the document using the below code snippet. - -```ts -//Get paragraph styles -let paragraphStyles = documentEditor.getStyles('Paragraph'); -//Get character styles -let paragraphStyles = documentEditor.getStyles('Character'); -``` - -## Modify an existing style - -You can modify a existing style with the specified style properties using [`createStyle`](../api/document-editor/editor/#createStyle) method. If modifyExistingStyle parameter is set to `true` the style properties is updated to the existing style. - -The following illustrate to modify an existing style. - -```ts -let styleJson: any = { - "type": "Paragraph", - "name": "Heading 1", - "characterFormat": { - "fontSize": 32, - "fontFamily": "Calibri" - } -}; -documentEditor.editor.createStyle(styleName, true); -``` - -> If modifyExistingStyle parameter is set to true and a style already exists with same name, it modifies the specified properties in the existing style. -> If modifyExistingStyle parameter is set to false and a style already exists with same name, it creates a new style with unique name by appending ‘_1’. Hence, the newly style will not have the specified name. -> If no style exists with same name, it creates a new style. diff --git a/ej2-javascript/document-editor/ts/web-services-overview.md b/ej2-javascript/document-editor/ts/web-services-overview.md deleted file mode 100644 index e6ffd8b0d..000000000 --- a/ej2-javascript/document-editor/ts/web-services-overview.md +++ /dev/null @@ -1,123 +0,0 @@ ---- -layout: post -title: Web services in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Web services in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Web services -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Web services in ##Platform_Name## Document editor control - -You can deploy web APIs for server-side dependencies of Document Editor component in the following platforms. - -* [ASP.NET Core](../document-editor/web-services/core) -* [ASP.NET MVC](../document-editor/web-services/mvc) -* [Java](../document-editor/web-services/java) - -## Which operations require server-side interaction - -|Operations|When client-server communication will be triggered?|What type of data will be transferred between client and server?| -|------------|--------------------------------------|------------------------| -|[Open file formats other than SFDT](../document-editor/import#convert-word-documents-into-sfdt)|When opening the document other than SFDT (Syncfusion® Document Editor's native file format), the server-side web API is invoked from client-side script.|**Client**: Sends the input file.
    **Server**: Receives the input file and sends the converted SFDT back to the client.

    The server-side web API internally extracts the content from the document (DOCX, DOC, WordML, RTF, HTML) using Syncfusion® Word library (DocIO) and converts it into SFDT for opening the document in Document Editor.| -|[Paste with formatting](../document-editor/clipboard#paste-with-formatting)|When pasting the formatted content (HTML/RTF) received from system clipboard. For converting HTML/RTF to SFDT format.

    **Note**: Whereas plain text received from system clipboard will be pasted directly in the client-side.|**Client**: Sends the input Html or Rtf string.
    **Server**: Receives the input Html or Rtf string and sends the converted SFDT back to the client.| -|[Restrict editing](../document-editor/document-management)|When protecting the document, for generating hash.|**Client**: Sends the input data for hashing algorithm.
    **Server**: Receives the input data for hashing algorithm and sends the result hash information back to the client.| -|[Spellcheck](../document-editor/spell-check)(default)|When the spellchecker is enabled on client-side Document Editor, and it performs the spell check validation for words in the document.|**Client**: Sends the words (string) with their language for spelling validation.
    **Server**: Receives the words (string) with their language for spelling validation and sends the validation result as JSON back to the client.| -|[SpellCheckByPage](../document-editor/spell-check)|Document editor provides options to spellcheck page by page when loading the documents. By [enabling optimized spell check](../document-editor/spell-check#enableoptimizedspellcheck) in client-side, you can perform spellcheck page by page when loading the documents.|**Client**: Sends the words (string) with their language for spelling validation.
    **Server**: Receives the words (string) with their language for spelling validation and sends the validation result as JSON back to the client.| -|[Save as file formats other than SFDT and DOCX](../document-editor/server-side-export) (optional API)|You can configure this API, if you want to save the document in file format other than DOCX and SFDT.

    For saving the files as WordML, DOC, RTF, HTML, ODT, Text using Syncfusion® Word library (DocIO) and PDF using Syncfusion® Word (DocIO) and PDF libraries.|You can transfer document from client to server either as SFDT or DOCX format.

    First option (SFDT):
    **Client**: Sends the SFDT.
    **Server**: Receives the SFDT and saves the converted document as any file format supported by [Syncfusion® Word library (DocIO)](https://www.syncfusion.com/word-framework/net/word-library) in server or sends the saved file to the client browser.

    Second option (DOCX):
    **Client**: Sends the DOCX file.
    **Server**: Receives the DOCX file and saves the converted document as any file format supported by [Syncfusion® Word library (DocIO)](https://www.syncfusion.com/word-framework/net/word-library) in server or sends the saved file to the client browser.| - ->Note: If you don't require the above functionalities then you can deploy as pure client-side component without any server-side interactions. - -Please refer the [example from GitHub](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) to configure the web service and set the [serviceUrl](../api/document-editor-container#serviceurl). - -If your running web service Url is `http://localhost:62869/`, set the serviceUrl like below: - -```ts -container.serviceUrl = "http://localhost:62869/api/documenteditor/"; -``` - -## Required Web API structure - -Please check below table for expected web API structure. - -|Expected method name |Parameters |Return type | -|-----|----|----| -|Import |Files(IFormCollection) |json(sfdt format) | -|SystemClipboard|CustomerParameter: content(type string either rtf or html) and type(either .rtf or .html) |json(sfdt format) | -|RestrictEditing |Parameter of type CustomRestrictParameter
    public class CustomRestrictParameter
    {
    public string passwordBase64 { get; set; }
    public string saltBase64 { get; set; }
    public int spinCount { get; set; }
    } |result hash information | -|SpellCheck(default) |Parameter: SpellCheckJsonData
    public class SpellCheckJsonData
    {
    public int LanguageID { get; set; }
    public string TexttoCheck { get; set; }
    public bool CheckSpelling { get; set; }
    public bool CheckSuggestion { get; set; }
    public bool AddWord { get; set; }
    } |Json type of Spellcheck containing details of spell checked word | -|SpellCheckByPage |Parameter: SpellCheckJsonData
    public class SpellCheckJsonData
    {
    public int LanguageID { get; set; }
    public string TexttoCheck { get; set; }
    public bool CheckSpelling { get; set; }
    public bool CheckSuggestion { get; set; }
    public bool AddWord { get; set; }
    } |Json type of Spellcheck containing details of spell checked word

    **Note**: Document editor provides options to spellcheck page by page when loading the documents. By [enabling optimized spell check](../document-editor/spell-check#enableoptimizedspellcheck) in client-side, you can perform spellcheck page by page when loading the documents. | -|Save(optional API) |parameter: SaveParameter
    public class SaveParameter
    {
    public string Content { get; set; }
    public string FileName { get; set; }
    } |void(Save the file as file stream) | -|ExportSFDT(optional API) |parameter: SaveParameter
    public class SaveParameter
    {
    public string Content { get; set; }
    public string FileName { get; set; }
    } |FileStreamResult (to save the document in client-side) | -|Export(optional API) |Files(IFormCollection) |FileStreamResult (to save the document in client-side) | - -## Customize the expected method name - -Document editor component provides an option to customize the expected method name for Import, SystemClipboard, RestrictEditing and SpellCheck using [serverActionSettings](../api/document-editor-container/documentEditorContainerModel/#serveractionsettings). - -The following example code illustrates how to customize the method name using serverActionSettings. - -```ts - - let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px' ,enableSpellCheck:true}); - DocumentEditorContainer.Inject(Toolbar); - container.serviceUrl = hostUrl + 'api/documenteditor/'; - // Customize the API name - let settings = { import: 'Import1', systemClipboard: 'SystemClipboard1', spellCheck: 'SpellCheck1', restrictEditing: 'RestrictEditing1' } - container.serverActionSettings = settings; - container.appendTo('#container'); - -``` - -## Add the custom headers to XMLHttpRequest - -Document editor component provides an an option to add custom headers of XMLHttpRequest using the [`headers`](../api/document-editor-container/documentEditorContainerModel/#headers). - -```ts - - let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true, height: '590px'}); - DocumentEditorContainer.Inject(Toolbar); - container.serviceUrl = hostUrl + 'api/documenteditor/'; - // custom headers - let customHeaders = [{ 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' }, { 'Content-Type': 'application/json' }]; - container.headers = customHeaders; - container.appendTo('#container'); - -``` - -## Modify the XMLHttpRequest before request send - -Document editor component provides an option to modify the XMLHttpRequest object (setting additional headers, if needed) using [`beforeXmlHttpRequestSend`](../api/document-editor-container/#beforexmlhttprequestsend) event and it gets triggered before a server request. - -You can customize the required [`XMLHttpRequest`](../api/document-editor/xmlHttpRequestEventArgs/) properties. - -The following example code illustrates how to modify the XMLHttpRequest using beforeXmlHttpRequestSend. - -```ts -import { DocumentEditorContainer, XmlHttpRequestEventArgs } from '@syncfusion/ej2-documenteditor'; - -let container: DocumentEditorContainer = new DocumentEditorContainer({ - enableToolbar: true, - height: '590px', -}); - -// Below action, cancel all server-side interactions expect spell check -container.beforeXmlHttpRequestSend = (args: XmlHttpRequestEventArgs): void => { - //Here, modifying the request headers - args.headers = [{ syncfusion: 'true' }]; - args.withCredentials = true; - switch (args.serverActionType) { - case 'Import': - case 'RestrictEditing': - case 'SystemClipboard': - args.cancel = true; - break; - } -}; -container.appendTo('#container'); - -``` - -Note: Find the customizable serverActionType values are `'Import' | 'RestrictEditing' | 'SpellCheck' | 'SystemClipboard'`. \ No newline at end of file diff --git a/ej2-javascript/document-editor/view.md b/ej2-javascript/document-editor/view.md deleted file mode 100644 index 312cd64f1..000000000 --- a/ej2-javascript/document-editor/view.md +++ /dev/null @@ -1,73 +0,0 @@ ---- -layout: post -title: View in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about View in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: View -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- -# View in ##Platform_Name## Document editor control - -## Web layout - -DocumentEditor allows you to change the view to web layout and print using the [`layoutType`](../../api/document-editor#layouttype) property with the supported [`LayoutType`](../../api/document-editor/layoutType/). - -```ts -let docEdit: DocumentEditor = new DocumentEditor({ layoutType: 'Continuous'}); -``` - ->Note: Default value of [`layoutType`](../../api/document-editor#layouttype) in DocumentEditor component is [`Pages`](../../api/document-editor/layoutType/). - -## Ruler - -Using ruler we can refer to setting specific margins, tab stops, or indentations within a document to ensure consistent formatting in Document Editor. - -The following example illustrates how to enable ruler in Document Editor - -{% if page.publishingplatform == "typescript" %} - -{% tabs %} -{% highlight ts tabtitle="index.ts" %} -{% include code-snippet/document-editor/ruler-cs1/index.ts %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/ruler-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/ruler-cs1" %} - -{% elsif page.publishingplatform == "javascript" %} - -{% tabs %} -{% highlight js tabtitle="index.js" %} -{% include code-snippet/document-editor/ruler-cs1/index.js %} -{% endhighlight %} -{% highlight html tabtitle="index.html" %} -{% include code-snippet/document-editor/ruler-cs1/index.html %} -{% endhighlight %} -{% endtabs %} - -{% previewsample "page.domainurl/code-snippet/document-editor/ruler-cs1" %} -{% endif %} - -## Navigation Pane - -Using the heading navigation pane allows users to swiftly navigate documents by heading, enhancing their ability to move through the document efficiently. - -The following example illustrates how to enable heading navigation pane in Document Editor - -```ts -let container: DocumentEditorContainer = new DocumentEditorContainer({ enableToolbar: true,height: '590px', -// Enable heading navigation pane in document editor - documentEditorSettings: { - showNavigationPane: true, - } -}); -DocumentEditorContainer.Inject(Toolbar); -container.serviceUrl = 'https://services.syncfusion.com/js/production/api/documenteditor/'; -container.appendTo('#container'); -``` -> The Web API hosted link `https://services.syncfusion.com/js/production/api/documenteditor/` utilized in the Document Editor's serviceUrl property is intended solely for demonstration and evaluation purposes. For production deployment, please host your own web service with your required server configurations. You can refer and reuse the [GitHub Web Service example](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices) or [Docker image](https://hub.docker.com/r/syncfusion/word-processor-server) for hosting your own web service and use for the serviceUrl property. \ No newline at end of file diff --git a/ej2-javascript/document-editor/web-services/core.md b/ej2-javascript/document-editor/web-services/core.md deleted file mode 100644 index 3937ba7c7..000000000 --- a/ej2-javascript/document-editor/web-services/core.md +++ /dev/null @@ -1,523 +0,0 @@ ---- -layout: post -title: Core in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Core in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Core -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Core in ##Platform_Name## Document editor control - -DocumentEditor depends on server side interaction for below listed operations can be written in ASP.NET Core using [Syncfusion.EJ2.WordEditor.AspNet.Core](https://www.nuget.org/packages/Syncfusion.EJ2.WordEditor.AspNet.Core). - -* Import Word Document -* Paste with formatting -* Restrict Editing -* Spell Check -* Save as file formats other than SFDT and DOCX - ->Note: Syncfusion® provides a predefined [Word Processor server docker image](https://hub.docker.com/r/syncfusion/word-processor-server) targeting ASP.NET Core 2.1 framework. You can directly pull this docker image and deploy it in server on the go. You can also create own docker image by customizing the existing [docker project from GitHub](https://github.com/SyncfusionExamples/Word-Processor-Server-Docker). To know more, refer this link.[Word Processor Server Docker Image Overview](../../document-editor/server-deployment/word-processor-server-docker-image-overview) - -This section explains how to create the service for DocumentEditor in ASP.NET Core. - -## Importing Word Document - -As the Document editor client-side script requires the document in SFDT file format, you can convert the Word documents (.dotx,.docx,.docm,.dot,.doc), rich text format documents (.rtf), and text documents (.txt) into SFDT format by using this Web API. - -The following example code illustrates how to write a Web API for importing Word documents into Document Editor component. - -```c# - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("Import")] - public string Import(IFormCollection data) - { - if (data.Files.Count == 0) - return null; - Stream stream = new MemoryStream(); - IFormFile file = data.Files[0]; - int index = file.FileName.LastIndexOf('.'); - string type = index > -1 && index < file.FileName.Length - 1 ? - file.FileName.Substring(index) : ".docx"; - file.CopyTo(stream); - stream.Position = 0; - - WordDocument document = WordDocument.Load(stream, GetFormatType(type.ToLower())); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - return json; - } -``` - -### Import document with TIFF, EMF and WMF images - -The web browsers do not support to display metafile images like EMF and WMF and also TIFF format images. As a fallback approach, you can convert the metafile/TIFF format image to raster image using any image converter in the `MetafileImageParsed` event and this fallback raster image will be displayed in the client-side Document editor component. - ->Note: In `MetafileImageParsedEventArgs` event argument, you can get the metafile stream using `MetafileStream` property and you can get the `IsMetafile` boolean value to determine whether the image is meta file images(WMF,EMF) or Tiff format images. In below example, we have converted the TIFF to raster image in `ConvertTiffToRasterImage()` method using `Bitmiracle https://www.nuget.org/packages/BitMiracle.LibTiff.NET`. - -The following example code illustrates how to use `MetafileImageParsed` event for creating fallback raster image for metafile present in a Word document. - -```c# - using SkiaSharp; - using BitMiracle.LibTiff.Classic; - - public string Import(IFormCollection data) - { - if (data.Files.Count == 0) - return null; - Stream stream = new MemoryStream(); - IFormFile file = data.Files[0]; - int index = file.FileName.LastIndexOf('.'); - string type = index > -1 && index < file.FileName.Length - 1 ? - file.FileName.Substring(index) : ".docx"; - file.CopyTo(stream); - stream.Position = 0; - - //Hooks MetafileImageParsed event. - WordDocument.MetafileImageParsed += OnMetafileImageParsed; - //Converts Stream DOM to SFDT DOM. - WordDocument document = WordDocument.Load(stream, GetFormatType(type.ToLower())); - //Unhooks MetafileImageParsed event. - WordDocument.MetafileImageParsed -= OnMetafileImageParsed; - //Serializes SFDT DOM to SFDT string. - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - return json; - } - - //Converts Metafile to raster image. - private static void OnMetafileImageParsed(object sender, MetafileImageParsedEventArgs args) - { - if (args.IsMetafile) - { - //MetaFile image conversion(EMF and WMF) - //You can write your own method definition for converting metafile to raster image using any third-party image converter. - args.ImageStream = ConvertMetafileToRasterImage(args.MetafileStream); - } - else - { - //TIFF image conversion - args.ImageStream = ConvertTiffToRasterImage(args.MetafileStream); - } - } - - // Converting Tiff to Png image using Bitmiracle https://www.nuget.org/packages/BitMiracle.LibTiff.NET - private static MemoryStream ConvertTiffToRasterImage(Stream tiffStream) - { - MemoryStream imageStream = new MemoryStream(); - using (Tiff tif = Tiff.ClientOpen("in-memory", "r", tiffStream, new TiffStream())) - { - // Find the width and height of the image - FieldValue[] value = tif.GetField(BitMiracle.LibTiff.Classic.TiffTag.IMAGEWIDTH); - int width = value[0].ToInt(); - - value = tif.GetField(BitMiracle.LibTiff.Classic.TiffTag.IMAGELENGTH); - int height = value[0].ToInt(); - - // Read the image into the memory buffer - int[] raster = new int[height * width]; - if (!tif.ReadRGBAImage(width, height, raster)) - { - throw new Exception("Could not read image"); - } - - // Create a bitmap image using SkiaSharp. - using (SKBitmap sKBitmap = new SKBitmap(width, height, SKImageInfo.PlatformColorType, SKAlphaType.Premul)) - { - // Convert a RGBA value to byte array. - byte[] bitmapData = new byte[sKBitmap.RowBytes * sKBitmap.Height]; - for (int y = 0; y < sKBitmap.Height; y++) - { - int rasterOffset = y * sKBitmap.Width; - int bitsOffset = (sKBitmap.Height - y - 1) * sKBitmap.RowBytes; - - for (int x = 0; x < sKBitmap.Width; x++) - { - int rgba = raster[rasterOffset++]; - bitmapData[bitsOffset++] = (byte)((rgba >> 16) & 0xff); - bitmapData[bitsOffset++] = (byte)((rgba >> 8) & 0xff); - bitmapData[bitsOffset++] = (byte)(rgba & 0xff); - bitmapData[bitsOffset++] = (byte)((rgba >> 24) & 0xff); - } - } - - // Convert a byte array to SKColor array. - SKColor[] sKColor = new SKColor[bitmapData.Length / 4]; - int index = 0; - for (int i = 0; i < bitmapData.Length; i++) - { - sKColor[index] = new SKColor(bitmapData[i + 2], bitmapData[i + 1], bitmapData[i], bitmapData[i + 3]); - i += 3; - index += 1; - } - - // Set the SKColor array to SKBitmap. - sKBitmap.Pixels = sKColor; - - // Save the SKBitmap to PNG image stream. - sKBitmap.Encode(SKEncodedImageFormat.Png, 100).SaveTo(imageStream); - imageStream.Flush(); - } - } - return imageStream; - } -``` - -## Paste with formatting - -This Web API converts the system clipboard data (HTML/RTF) to SFDT format which is required to paste content with formatting. - -The following example code illustrates how to write a Web API for paste with formatting. - -```c# - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("SystemClipboard")] - public string SystemClipboard([FromBody]CustomParameter param) - { - if (param.content != null && param.content != "") - { - try - { - //Hooks MetafileImageParsed event. - WordDocument.MetafileImageParsed += OnMetafileImageParsed; - WordDocument document = WordDocument.LoadString(param.content, GetFormatType(param.type.ToLower())); - //Unhooks MetafileImageParsed event. - WordDocument.MetafileImageParsed -= OnMetafileImageParsed; - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - return json; - } - catch (Exception) - { - return ""; - } - } - return ""; - } - - public class CustomParameter - { - public string content { get; set; } - public string type { get; set; } - } - - //Converts Metafile to raster image. - private static void OnMetafileImageParsed(object sender, MetafileImageParsedEventArgs args) - { - //You can write your own method definition for converting metafile to raster image using any third-party image converter. - args.ImageStream = ConvertMetafileToRasterImage(args.MetafileStream); - } -``` - ->Note: The web browsers do not support to display metafile images like EMF and WMF. As a fallback approach, you can convert the metafile to raster image using any image converter in the [MetafileImageParsed](https://help.syncfusion.com/cr/aspnetcore-js2/Syncfusion.EJ2.DocumentEditor.WordDocument.html#Syncfusion_EJ2_DocumentEditor_WordDocument_MetafileImageParsed) event and this fallback raster image will be displayed in the client-side Document editor component. - -## Restrict editing - -This Web API generates hash from the specified password and salt value which is required for restrict editing functionality of Document Editor component. - -The following example code illustrates how to write a Web API for restrict editing. - -```c# - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("RestrictEditing")] - public string[] RestrictEditing([FromBody]CustomRestrictParameter param) - { - if (param.passwordBase64 == "" && param.passwordBase64 == null) - return null; - return WordDocument.ComputeHash(param.passwordBase64, param.saltBase64, param.spinCount); - } - - public class CustomRestrictParameter - { - public string passwordBase64 { get; set; } - public string saltBase64 { get; set; } - public int spinCount { get; set; } - } -``` - -## Spell Check - -Document Editor supports performing spell checking for any input text. You can perform spell checking for the text in Document Editor and it will provide suggestions for the mis-spelled words through dialog and in context menu. Document editor client-side script requires this Web API to show error words and list suggestions in context menu. This Web API returns the json type of spell-checked word which contains details about error words if any and suggestions. - -To know more about configure spell check, please check this [link](https://github.com/SyncfusionExamples/EJ2-Document-Editor-Web-Services/tree/master/ASP.NET%20Core#steps-to-configure-spell-checker). - -In startup.cs file, you can configure the spell check files like below: - -```c# - - public Startup(IConfiguration configuration, IHostingEnvironment env) - { - var builder = new ConfigurationBuilder() - .SetBasePath(env.ContentRootPath) - .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) - .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true) - .AddEnvironmentVariables(); - - Configuration = builder.Build(); - _contentRootPath = env.ContentRootPath; - - path = Configuration["SPELLCHECK_DICTIONARY_PATH"]; - string jsonFileName = Configuration["SPELLCHECK_JSON_FILENAME"]; - //check the spell check dictionary path environment variable value and assign default data folder - //if it is null. - path = string.IsNullOrEmpty(path) ? Path.Combine(env.ContentRootPath, "App_Data") : Path.Combine(env.ContentRootPath, path); - //Set the default spellcheck.json file if the json filename is empty. - jsonFileName = string.IsNullOrEmpty(jsonFileName) ? Path.Combine(path, "spellcheck.json") : Path.Combine(path, jsonFileName); - if (System.IO.File.Exists(jsonFileName)) - { - string jsonImport = System.IO.File.ReadAllText(jsonFileName); - List spellChecks = JsonConvert.DeserializeObject>(jsonImport); - spellDictCollection = new List(); - //construct the dictionary file path using customer provided path and dictionary name - foreach (var spellCheck in spellChecks) - { - spellDictCollection.Add(new DictionaryData(spellCheck.LanguadeID, Path.Combine(path, spellCheck.DictionaryPath), Path.Combine(path, spellCheck.AffixPath))); - personalDictPath = Path.Combine(path, spellCheck.PersonalDictPath); - } - } - } - -``` - -Document editor provides options to spell check word by word and spellcheck page by page when loading the documents. - -### Spell check word by word - -This Web API performs the spell check word by word and return the json which contains information about error words and suggestions if any. By default, spell check word by word is performed in Document editor when enabling spell check in client-side. - -The following example code illustrates how to write a Web API for spell check word by word. - -```c# - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("SpellCheck")] - public string SpellCheck([FromBody] SpellCheckJsonData spellChecker) - { - try - { - SpellChecker spellCheck = new SpellChecker(spellDictionary, personalDictPath); - spellCheck.GetSuggestions(spellChecker.LanguageID, spellChecker.TexttoCheck, spellChecker.CheckSpelling, spellChecker.CheckSuggestion, spellChecker.AddWord); - return Newtonsoft.Json.JsonConvert.SerializeObject(spellCheck); - } - catch - { - return "{\"SpellCollection\":[],\"HasSpellingError\":false,\"Suggestions\":null}"; - } - } - - public class SpellCheckJsonData - { - public int LanguageID { get; set; } - public string TexttoCheck { get; set; } - public bool CheckSpelling { get; set; } - public bool CheckSuggestion { get; set; } - public bool AddWord { get; set; } - } -``` - -### Spell check page by page - -This Web API performs the spell check page by page and return the json which contains information about error words and suggestions if any. By [enabling optimized spell check](../../document-editor/spell-check#enableoptimizedspellcheck) in client-side, you can perform spellcheck page by page when loading the documents. - -The following example code illustrates how to write a Web API for spell check page by page. - -```c# - - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("SpellCheckByPage")] - public string SpellCheckByPage([FromBody] SpellCheckJsonData spellChecker) - { - try - { - SpellChecker spellCheck = new SpellChecker(spellDictionary, personalDictPath); - spellCheck.CheckSpelling(spellChecker.LanguageID, spellChecker.TexttoCheck); - return Newtonsoft.Json.JsonConvert.SerializeObject(spellCheck); - } - catch - { - return "{\"SpellCollection\":[],\"HasSpellingError\":false,\"Suggestions\":null}"; - } - } - - public class SpellCheckJsonData - { - public int LanguageID { get; set; } - public string TexttoCheck { get; set; } - public bool CheckSpelling { get; set; } - public bool CheckSuggestion { get; set; } - public bool AddWord { get; set; } - } -``` - -## Save as file formats other than SFDT and DOCX - -You can configure this API, if you want to save the document in file format other than DOCX and SFDT using server-side. You can save the document in following ways: - -### Save the document in database or file server - -This Web API saves the document in the server machine. You can customize this API to save the document into databases or file servers. - -The following example code illustrates how to write a Web API for save document in server-side. - -```c# - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("Save")] - public void Save([FromBody] SaveParameter data) - { - string name = data.FileName; - string format = RetrieveFileType(name); - if (string.IsNullOrEmpty(name)) - { - name = "Document1.doc"; - } - WDocument document = WordDocument.Save(data.Content); - // Saves the document to server machine file system, you can customize here to save into databases or file servers based on requirement. - FileStream fileStream = new FileStream(name, FileMode.OpenOrCreate, FileAccess.ReadWrite); - document.Save(fileStream, GetWFormatType(format)); - document.Close(); - fileStream.Close(); - } - - public class SaveParameter - { - public string Content { get; set; } - public string FileName { get; set; } - } -``` - -### Save as other file formats by passing SFDT string - -This Web API converts the SFDT string to required format and returns the document as FileStreamResult to client-side. Using this API, you can save the document in file format other than SFDT and DOCX and download the document in client browser. - -The following example code illustrates how to write a Web API for export sfdt. - -```c# - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("ExportSFDT")] - public FileStreamResult ExportSFDT([FromBody] SaveParameter data) - { - string name = data.FileName; - string format = RetrieveFileType(name); - if (string.IsNullOrEmpty(name)) - { - name = "Document1.doc"; - } - WDocument document = WordDocument.Save(data.Content); - return SaveDocument(document, format, name); - } - - public class SaveParameter - { - public string Content { get; set; } - public string FileName { get; set; } - } - - private FileStreamResult SaveDocument(WDocument document, string format, string fileName) - { - Stream stream = new MemoryStream(); - string contentType = ""; - if (format == ".pdf") - { - contentType = "application/pdf"; - } - else - { - WFormatType type = GetWFormatType(format); - switch (type) - { - case WFormatType.Rtf: - contentType = "application/rtf"; - break; - case WFormatType.WordML: - contentType = "application/xml"; - break; - case WFormatType.Html: - contentType = "application/html"; - break; - case WFormatType.Dotx: - contentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.template"; - break; - case WFormatType.Doc: - contentType = "application/msword"; - break; - case WFormatType.Dot: - contentType = "application/msword"; - break; - } - document.Save(stream, type); - } - document.Close(); - stream.Position = 0; - return new FileStreamResult(stream, contentType) - { - FileDownloadName = fileName - }; - } -``` - -### Save as other file formats by passing DOCX file - -This Web API converts the DOCX document to required format and returns the document as FileStreamResult to client-side. Using this API, you can save the document in file format other than SFDT and DOCX and download the document in client browser. - -The following example code illustrates how to write a Web API for export. - -```c# - - [AcceptVerbs("Post")] - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("Export")] - public FileStreamResult Export(IFormCollection data) - { - if (data.Files.Count == 0) - return null; - string fileName = this.GetValue(data, "filename"); - string name = fileName; - string format = RetrieveFileType(name); - if (string.IsNullOrEmpty(name)) - { - name = "Document1"; - } - WDocument document = this.GetDocument(data); - return SaveDocument(document, format, fileName); - } - - private string RetrieveFileType(string name) - { - int index = name.LastIndexOf('.'); - string format = index > -1 && index < name.Length - 1 ? - name.Substring(index) : ".doc"; - return format; - } - - private string GetValue(IFormCollection data, string key) - { - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; - } - -``` - ->Note: Please refer the [ASP.NET Core Web API sample](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices/tree/master/ASP.NET%20Core). diff --git a/ej2-javascript/document-editor/web-services/java.md b/ej2-javascript/document-editor/web-services/java.md deleted file mode 100644 index f2b819f19..000000000 --- a/ej2-javascript/document-editor/web-services/java.md +++ /dev/null @@ -1,685 +0,0 @@ ---- -layout: post -title: Java in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Java in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Java -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Java in ##Platform_Name## Document editor control - -This page illustrates how to create web service in Java for the server-side dependent functionalities of Word Processor component a.k.a. Document Editor. Document Editor depends on server side interaction for below listed operations and it can be written in Java using `syncfusion-ej2-wordprocessor.jar` file. - -* Import Word Document -* Paste with formatting -* Restrict Editing -* Spell Check -* Save as file formats other than SFDT and DOCX - -## Supported Java versions - -Syncfusion® Java library supports Java SE 8.0(1.8) or above versions. - -## External Jars Required - -The following jar files are required to be referenced in your Java application. - -1. syncfusion-ej2-wordprocessor - -2. syncfusion-docio - -3. syncfusion-javahelper - -## Download JAR file - -The JAR file is available in both [Syncfusion® Essential-JS2](https://www.syncfusion.com/downloads/essential-js2) build and maven repository. - -### Get JAR file from Syncfusion® build - -You can get the `syncfusion-ej2-wordprocessor.jar` and its dependent jar files from Syncfusion® build installed location. - -**Syntax:** -> Jar file: `(installed location)/Syncfusion/Essential Studio/{Platform}/{version}/JarFiles/syncfusion-ej2-wordprocessor-{version}.jar` - -**Example:** -> Jar file: `C:/Program Files (x86)/Syncfusion/Essential Studio/JavaScript - EJ2/18.4.0.30/JarFiles/syncfusion-ej2-wordprocessor-18.4.0.30.jar` - -You can also get the jar files by installing [file formats controls](https://www.syncfusion.com/sales/products/fileformats?utm_source=ug&utm_medium=listing&utm_campaign=java-word-processor#). You can find the required jars in the build installed location. - -**Syntax:** -> Jar file: `(installed location)/Syncfusion/Essential Studio/{Platform}/{version}/JarFiles/syncfusion-ej2-wordprocessor-{version}.jar` - -**Example:** -> Jar file: `C:/Program Files (x86)/Syncfusion/Essential Studio/FileFormats/18.4.0.30/JarFiles/syncfusion-ej2-wordprocessor-18.4.0.30.jar` - -### Referring JAR from Syncfusion® Maven Repository - -You can download the jars from the Syncfusion® [maven repository](https://jars.syncfusion.com/) to use our artifacts in your projects. It helps to use the Syncfusion® Java packages without installing Essential Studio® or platform installation to development with Syncfusion® controls. - -#### Download Syncfusion® Java packages - -You can easily download the Syncfusion® packages for Java via maven repository. Follow the below guidelines to configure as per the tool. - -#### Refer the maven repository in build tool - -##### Gradle - -```java - repositories { - maven { - // Syncfusion maven repository to download the artifacts - url "https://jars.syncfusion.com/repository/maven-public/" - } - } -``` - -##### Apache Maven - -```java - - Syncfusion-Java - Syncfusion Java repo - https://jars.syncfusion.com/repository/maven-public/ - -``` - -#### Refer the Syncfusion® package in your project as the dependency - -##### Gradle - -```java - dependencies { - implementation 'com.syncfusion:syncfusion-ej2-wordprocessor:+' - } -``` - -##### Apache Maven - -```java - - com.syncfusion - syncfusion-ej2-wordprocessor - 18.4.0.30 - -``` - -This section explains how to create the Java web service for DocumentEditor. - -## Importing Word Document - -As the Document editor client-side script requires the document in SFDT file format, you can convert the Word documents (.dotx,.docx,.docm), rich text format documents (.rtf), and text documents (.txt) into SFDT format by using this Web API. - -Note: Document editor Java library doesn’t have support for the **DOC format** Word document. As the DOC format is an older file format, we are concentrating on latest DOCX specific features and it will be more helpful in future if you use DOCX format to utilize some more features from Document editor. So, we recommend you to use the DOCX file format instead of DOC file format, to achieve your requirement. - -The following example code illustrates how to write a Web API for importing Word documents into Document Editor component. - -```java - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/Import") - public String uploadFile(@RequestParam("files") MultipartFile file) throws Exception { - try { - return WordProcessorHelper.load(file.getInputStream(), FormatType.Docx); - } catch (Exception e) { - e.printStackTrace(); - return "{\"sections\":[{\"blocks\":[{\"inlines\":[{\"text\":" + e.getMessage() + "}]}]}]}"; - } - } -``` - -### Import document with TIFF, EMF and WMF images - -The web browsers do not support to display metafile images like EMF and WMF and also TIFF format images. As a fallback approach, you can convert the metafile/TIFF format image to raster image using any image converter in the `MetafileImageParsed` event and this fallback raster image will be displayed in the client-side Document editor component. - ->Note: In `MetafileImageParsedEventArgs` event argument, you can get the metafile stream using `getMetafileStream()` property and you can get the `getIsMetafile()` boolean value to determine whether the image is meta file images(WMF,EMF) or Tiff format images. In below example, we have converted the TIFF to raster image in `ConvertTiffToRasterImage()` method using TwelveMonkeys ImageIO TIFF library. - -The following example code illustrates how to use `MetafileImageParsed` event for creating fallback raster image for metafile present in a Word document. - -```java -import com.syncfusion.javahelper.system.collections.generic.*; -import com.syncfusion.ej2.wordprocessor.*; -// Below import statements are used for TIFF image conversion -import javax.imageio.*; -import javax.imageio.spi.IIORegistry; -import java.awt.image.BufferedImage; -import java.io.*; -import com.twelvemonkeys.imageio.plugins.tiff.TIFFImageReaderSpi; - - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/Import") - public String importFile(@RequestParam("files") MultipartFile file) throws Exception { - try { - WordDocument docIoDocument = new WordDocument(file.getInputStream()); - - MetafileImageParsedEventHandler metafileImageParsedEvent = new MetafileImageParsedEventHandler() { - - ListSupport delegateList = new ListSupport( - MetafileImageParsedEventHandler.class); - - // Represents event handling for MetafileImageParsedEventHandlerCollection. - public void invoke(Object sender, MetafileImageParsedEventArgs args) throws Exception { - OnMetafileImageParsed(sender, args); - } - - // Represents the method that handles MetafileImageParsed event. - public void dynamicInvoke(Object... args) throws Exception { - OnMetafileImageParsed((Object) args[0], (MetafileImageParsedEventArgs) args[1]); - } - - // Represents the method that handles MetafileImageParsed event to add collection item. - public void add(MetafileImageParsedEventHandler delegate) throws Exception { - if (delegate != null) - delegateList.add(delegate); - } - - // Represents the method that handles MetafileImageParsed event to remove collection - // item. - public void remove(MetafileImageParsedEventHandler delegate) throws Exception { - if (delegate != null) - delegateList.remove(delegate); - } - }; - // Hooks MetafileImageParsed event. - WordProcessorHelper.MetafileImageParsed.add("OnMetafileImageParsed", metafileImageParsedEvent); - // Converts DocIO DOM to SFDT DOM. - String sfdtContent = WordProcessorHelper.load(docIoDocument); - // Unhooks MetafileImageParsed event. - WordProcessorHelper.MetafileImageParsed.remove("OnMetafileImageParsed", metafileImageParsedEvent); - return sfdtContent; - } catch (Exception e) { - e.printStackTrace(); - return "{\"sections\":[{\"blocks\":[{\"inlines\":[{\"text\":" + e.getMessage() + "}]}]}]}"; - } - } - - // Converts Metafile to raster image. - private static void OnMetafileImageParsed(Object sender, MetafileImageParsedEventArgs args) { - if (args.getIsMetafile()) - { - //MetaFile image conversion(EMF and WMF) - //You can write your own method definition for converting metafile to raster image using any third-party image converter. - args.setImageStream(ConvertMetafileToRasterImage(args.getMetafileStream())) ; - } - else - { - //TIFF image conversion - args.setImageStream(ConvertTiffToRasterImage(args.getMetafileStream())) ; - } - } - - private static StreamSupport ConvertTiffToRasterImage(StreamSupport ImageStream) throws Exception { - InputStream inputStream = StreamSupport.toStream(args.getMetafileStream()); - // Use ByteArrayOutputStream to collect data into a byte array - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - - // Read data from the InputStream and write it to the ByteArrayOutputStream - byte[] buffer = new byte[1024]; - int bytesRead; - while ((bytesRead = inputStream.read(buffer)) != -1) { - byteArrayOutputStream.write(buffer, 0, bytesRead); - } - - // Convert the ByteArrayOutputStream to a byte array - byte[] tiffData = byteArrayOutputStream.toByteArray(); - // Read TIFF image from byte array - ByteArrayInputStream tiffInputStream = new ByteArrayInputStream(tiffData); - IIORegistry.getDefaultInstance().registerServiceProvider(new TIFFImageReaderSpi()); - - // Create ImageReader and ImageWriter instances - ImageReader tiffReader = ImageIO.getImageReadersByFormatName("TIFF").next(); - ImageWriter pngWriter = ImageIO.getImageWritersByFormatName("PNG").next(); - - // Set up input and output streams - tiffReader.setInput(ImageIO.createImageInputStream(tiffInputStream)); - ByteArrayOutputStream pngOutputStream = new ByteArrayOutputStream(); - pngWriter.setOutput(ImageIO.createImageOutputStream(pngOutputStream)); - - // Read the TIFF image and write it as a PNG - BufferedImage image = tiffReader.read(0); - pngWriter.write(image); - pngWriter.dispose(); - byte[] jpgData = pngOutputStream.toByteArray(); - InputStream jpgStream = new ByteArrayInputStream(jpgData); - return StreamSupport.toStream(jpgStream); - } -``` - -## Paste with formatting - -This Web API converts the system clipboard data (HTML/RTF) to SFDT format which is required to paste content with formatting. - -The following example code illustrates how to write a Web API for paste with formatting. - -```java - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/SystemClipboard") - public String systemClipboard(@RequestBody CustomParameter param) { - if (param.content != null && param.content != "") { - try { - MetafileImageParsedEventHandler metafileImageParsedEvent = new MetafileImageParsedEventHandler() { - - ListSupport delegateList = new ListSupport( - MetafileImageParsedEventHandler.class); - - // Represents event handling for MetafileImageParsedEventHandlerCollection. - public void invoke(Object sender, MetafileImageParsedEventArgs args) throws Exception { - OnMetafileImageParsed(sender, args); - } - - // Represents the method that handles MetafileImageParsed event. - public void dynamicInvoke(Object... args) throws Exception { - OnMetafileImageParsed((Object) args[0], (MetafileImageParsedEventArgs) args[1]); - } - - // Represents the method that handles MetafileImageParsed event to add collection item. - public void add(MetafileImageParsedEventHandler delegate) throws Exception { - if (delegate != null) - delegateList.add(delegate); - } - - // Represents the method that handles MetafileImageParsed event to remove collection - // item. - public void remove(MetafileImageParsedEventHandler delegate) throws Exception { - if (delegate != null) - delegateList.remove(delegate); - } - }; - // Hooks MetafileImageParsed event. - WordProcessorHelper.MetafileImageParsed.add("OnMetafileImageParsed", metafileImageParsedEvent); - // Converts Clipboard content to SFDT DOM. - String sfdtContent = WordProcessorHelper.loadString(param.content, GetFormatType(param.type.toLowerCase())); - // Unhooks MetafileImageParsed event. - WordProcessorHelper.MetafileImageParsed.remove("OnMetafileImageParsed", metafileImageParsedEvent); - return sfdtContent; - } catch (Exception e) { - return ""; - } - } - return ""; - } - - public class CustomParameter { - public String content; - public String type; - public String getContent() { - return content; - } - public String getType() { - return type; - } - public void setContent(String value) { - content= value; - } - public void setType(String value) { - type = value; - } - } - - // Converts Metafile to raster image. - private static void OnMetafileImageParsed(Object sender, MetafileImageParsedEventArgs args) { - // You can write your own method definition for converting metafile to raster - // image using any third-party image converter. - args.setImageStream(ConvertMetafileToRasterImage(args.getMetafileStream())) ; - } -``` - ->Note: The web browsers do not support to display metafile images like EMF and WMF. As a fallback approach, you can convert the metafile to raster image using any image converter in the `MetafileImageParsed` event and this fallback raster image will be displayed in the client-side Document editor component. - -## Restrict editing - -This Web API generates hash from the specified password and salt value which is required for restrict editing functionality of Document Editor component. - -The following example code illustrates how to write a Web API for restrict editing. - -```java - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/RestrictEditing") - public String[] restrictEditing(@RequestBody CustomRestrictParameter param) throws Exception { - if (param.passwordBase64 == "" && param.passwordBase64 == null) - return null; - return WordProcessorHelper.computeHash(param.passwordBase64, param.saltBase64, param.spinCount); - } - - public class CustomRestrictParameter { - public String passwordBase64; - public String saltBase64; - public int spinCount; - public String getPasswordBase64() { - return passwordBase64; - } - public String getSaltBase64() { - return saltBase64; - } - public int getSpinCount() { - return spinCount; - } - public void setPasswordBase64(String value) { - passwordBase64= value; - } - public void setSaltBase64(String value) { - saltBase64= value; - } - public void setSpinCount(int value) { - spinCount= value; - } - } -``` - -## Spell Check - -Document Editor supports performing spell checking for any input text. You can perform spell checking for the text in Document Editor and it will provide suggestions for the mis-spelled words through dialog and in context menu. Document editor client-side script requires this Web API to show error words and list suggestions in context menu. This Web API returns the json type of spell-checked word which contains details about error words if any and suggestions. - -To know more about configure spell check, please check this [link](https://github.com/SyncfusionExamples/EJ2-Document-Editor-Web-Services/tree/master/Java#steps-to-configure-spell-checker). - -In controller file, you can configure the spell check files like below: - -```java - List spellDictionary; - String personalDictPath; - - public WordEditorController() throws Exception { - - String jsonFilePath = "src/main/resources/spellcheck.json"; - String jsonContent = new String(Files.readAllBytes(Paths.get(jsonFilePath)), StandardCharsets.UTF_8); - JsonArray spellDictionaryItems = new Gson().fromJson(jsonContent, JsonArray.class); - personalDictPath = "src/main/resources/customDict.dic"; - spellDictionary = new ArrayList(); - for(int i = 0; i < spellDictionaryItems.size(); i++) { - JsonObject spellCheckerInfo = spellDictionaryItems.get(i).getAsJsonObject(); - DictionaryData dict = new DictionaryData(); - - if(spellCheckerInfo.has("LanguadeID")) - dict.setLanguadeID(spellCheckerInfo.get("LanguadeID").getAsInt()); - if(spellCheckerInfo.has("DictionaryPath")) - dict.setDictionaryPath("src/main/resources/"+spellCheckerInfo.get("DictionaryPath").getAsString()); - if(spellCheckerInfo.has("AffixPath")) - dict.setAffixPath("src/main/resources/"+spellCheckerInfo.get("AffixPath").getAsString()); - spellDictionary.add(dict); - } - - } -``` - -Document editor provides options to spell check word by word and spellcheck page by page when loading the documents. - -### Spell check word by word - -This Web API performs the spell check word by word and return the json which contains information about error words and suggestions if any. By default, spell check word by word is performed in Document editor when enabling spell check in client-side. - -The following example code illustrates how to write a Web API for spell check word by word. - -```c# - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/SpellCheck") - public String spellCheck(@RequestBody SpellCheckJsonData spellChecker) throws Exception { - try { - SpellChecker spellCheck = new SpellChecker(spellDictionary,personalDictPath); - String data = spellCheck.getSuggestions(spellChecker.languageID, spellChecker.texttoCheck, spellChecker.checkSpelling, spellChecker.checkSuggestion, spellChecker.addWord); - return data; - } catch (Exception e) { - e.printStackTrace(); - return "{\"SpellCollection\":[],\"HasSpellingError\":false,\"Suggestions\":null}"; - } - } - - public class SpellCheckJsonData { - - @JsonProperty("LanguageID") - int languageID; - @JsonProperty("TexttoCheck") - String texttoCheck; - @JsonProperty("CheckSpelling") - boolean checkSpelling; - @JsonProperty("CheckSuggestion") - boolean checkSuggestion; - @JsonProperty("AddWord") - boolean addWord; - - } -``` - -### Spell check page by page - -This Web API performs the spell check page by page and return the json which contains information about error words and suggestions if any. By [enabling optimized spell check](../../document-editor/spell-check#enableoptimizedspellcheck) in client-side, you can perform spellcheck page by page when loading the documents. - -The following example code illustrates how to write a Web API for spell check page by page. - -```c# - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/SpellCheckByPage") - public String spellCheckByPage(@RequestBody SpellCheckJsonData spellChecker) throws Exception { - try { - SpellChecker spellCheck = new SpellChecker(spellDictionary,personalDictPath); - String data = spellCheck.checkSpelling(spellChecker.languageID, spellChecker.texttoCheck); - return data; - } catch (Exception e) { - e.printStackTrace(); - return "{\"SpellCollection\":[],\"HasSpellingError\":false,\"Suggestions\":null}"; - } - } - - public class SpellCheckJsonData { - - @JsonProperty("LanguageID") - int languageID; - @JsonProperty("TexttoCheck") - String texttoCheck; - @JsonProperty("CheckSpelling") - boolean checkSpelling; - @JsonProperty("CheckSuggestion") - boolean checkSuggestion; - @JsonProperty("AddWord") - boolean addWord; - - } -``` - -## Save as file formats other than SFDT and DOCX - -You can configure this API, if you want to save the document in file format other than DOCX and SFDT using server-side. You can save the document in following ways: - -### Save the document in database or file server - -This Web API saves the document in the server machine. You can customize this API to save the document into databases or file servers. - -The following example code illustrates how to write a Web API for save document in server-side. - -```c# - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/Save") - public void save(@RequestBody SaveParameter data) throws Exception { - try { - String name = data.getFileName(); - String format = retrieveFileType(name); - if (name == null || name.isEmpty()) { - name = "Document1.docx"; - } - WordDocument document = WordProcessorHelper.save(data.getContent()); - // Saves the document to server machine file system, you can customize here to save into databases or file servers based on requirement. - FileOutputStream fileStream = new FileOutputStream(name); - document.save(fileStream, getWFormatType(format)); - fileStream.close(); - document.close(); - } catch (Exception ex) { - throw new Exception(ex.getMessage()); - } - } - - public class SaveParameter { - private String _content; - private String _fileName; - - public String getContent() { - return _content; - } - - public String setContent(String value) { - _content = value; - return value; - } - - public String getFileName() { - return _fileName; - } - - public String setFileName(String value) { - _fileName = value; - return value; - } - } - static com.syncfusion.docio.FormatType getWFormatType(String format) throws Exception { - - if (format == null || format.trim().isEmpty()) - throw new Exception("EJ2 WordProcessor does not support this file format."); - switch (format.toLowerCase()) { - case ".dotx": - return com.syncfusion.docio.FormatType.Dotx; - case ".docm": - return com.syncfusion.docio.FormatType.Docm; - case ".dotm": - return com.syncfusion.docio.FormatType.Dotm; - case ".docx": - return com.syncfusion.docio.FormatType.Docx; - case ".rtf": - return com.syncfusion.docio.FormatType.Rtf; - case ".html": - return com.syncfusion.docio.FormatType.Html; - case ".txt": - return com.syncfusion.docio.FormatType.Txt; - case ".xml": - return com.syncfusion.docio.FormatType.WordML; - default: - throw new Exception("EJ2 WordProcessor does not support this file format."); - } - } -``` - -### Save as other file formats by passing SFDT string - -This Web API converts the SFDT string to required format and returns the document as FileStreamResult to client-side. Using this API, you can save the document in file format other than SFDT and DOCX and download the document in client browser. - -The following example code illustrates how to write a Web API for export sfdt. - -```c# - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/ExportSFDT") - public ResponseEntity exportSFDT(@RequestBody SaveParameter data) throws Exception { - try { - String name = data.getFileName(); - String format = retrieveFileType(name); - if (name == null || name.isEmpty()) { - name = "Document1.docx"; - } - WordDocument document = WordProcessorHelper.save(data.getContent()); - return saveDocument(document, format); - } catch (Exception ex) { - throw new Exception(ex.getMessage()); - } - } - - public class SaveParameter { - - private String _content; - private String _fileName; - - public String getContent() { - return _content; - } - - public String setContent(String value) { - _content = value; - return value; - } - - public String getFileName() { - return _fileName; - } - - public String setFileName(String value) { - _fileName = value; - return value; - } - } - - private ResponseEntity saveDocument(WordDocument document, String format) throws Exception { - String contentType = ""; - ByteArrayOutputStream outStream = new ByteArrayOutputStream(); - com.syncfusion.docio.FormatType type = getWFormatType(format); - switch (type.toString()) { - case "Rtf": - contentType = "application/rtf"; - break; - case "WordML": - contentType = "application/xml"; - break; - case "Dotx": - contentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.template"; - break; - case "Html": - contentType = "application/html"; - break; - } - document.save(outStream, type); - ByteArrayResource resource = new ByteArrayResource(outStream.toByteArray()); - outStream.close(); - document.close(); - - return ResponseEntity.ok().contentLength(resource.contentLength()) - .contentType(MediaType.parseMediaType(contentType)).body(resource); - } -``` - -### Save as other file formats by passing DOCX file - -This Web API converts the DOCX document to required format and returns the document as FileStreamResult to client-side. Using this API, you can save the document in file format other than SFDT and DOCX and download the document in client browser. - -The following example code illustrates how to write a Web API for export. - -```c# - @CrossOrigin(origins = "*", allowedHeaders = "*") - @PostMapping("/api/wordeditor/Export") - public ResponseEntity export(@RequestParam("data") MultipartFile data, String fileName) throws Exception { - try { - String name = fileName; - String format = retrieveFileType(name); - if (name == null || name.isEmpty()) { - name = "Document1"; - } - WordDocument document = new WordDocument(data.getInputStream(), com.syncfusion.docio.FormatType.Docx); - return saveDocument(document, format); - } catch (Exception ex) { - throw new Exception(ex.getMessage()); - } - } - - private ResponseEntity saveDocument(WordDocument document, String format) throws Exception { - String contentType = ""; - ByteArrayOutputStream outStream = new ByteArrayOutputStream(); - com.syncfusion.docio.FormatType type = getWFormatType(format); - switch (type.toString()) { - case "Rtf": - contentType = "application/rtf"; - break; - case "WordML": - contentType = "application/xml"; - break; - case "Dotx": - contentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.template"; - break; - case "Html": - contentType = "application/html"; - break; - } - document.save(outStream, type); - ByteArrayResource resource = new ByteArrayResource(outStream.toByteArray()); - outStream.close(); - document.close(); - - return ResponseEntity.ok().contentLength(resource.contentLength()) - .contentType(MediaType.parseMediaType(contentType)).body(resource); - } -``` - ->Note: Please refer the [Java Web API example from GitHub](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices/tree/master/Java). \ No newline at end of file diff --git a/ej2-javascript/document-editor/web-services/mvc.md b/ej2-javascript/document-editor/web-services/mvc.md deleted file mode 100644 index 924609b31..000000000 --- a/ej2-javascript/document-editor/web-services/mvc.md +++ /dev/null @@ -1,378 +0,0 @@ ---- -layout: post -title: Mvc in ##Platform_Name## Document editor control | Syncfusion -description: Learn here all about Mvc in Syncfusion ##Platform_Name## Document editor control of Syncfusion Essential JS 2 and more. -platform: ej2-javascript -control: Mvc -publishingplatform: ##Platform_Name## -documentation: ug -domainurl: ##DomainURL## ---- - -# Mvc in ##Platform_Name## Document editor control - -DocumentEditor depends on server side interaction for below listed operations can be written in ASP.NET MVC using [Syncfusion.EJ2.WordEditor.AspNet.Mvc5](https://www.nuget.org/packages/Syncfusion.EJ2.WordEditor.AspNet.Mvc5) or [Syncfusion.EJ2.WordEditor.AspNet.Mvc4](https://www.nuget.org/packages/Syncfusion.EJ2.WordEditor.AspNet.Mvc4). - -* Import Word Document -* Paste with formatting -* Restrict Editing -* Spell Check -* Save as file formats other than SFDT and DOCX - -This section explains how to create the service for DocumentEditor in ASP.NET MVC. - -## Importing Word Document - -As the Document editor client-side script requires the document in SFDT file format, you can convert the Word documents (.dotx,.docx,.docm,.dot,.doc), rich text format documents (.rtf), and text documents (.txt) into SFDT format by using this Web API. - -The following example code illustrates how to write a Web API for importing Word documents into Document Editor component. - -```c# - [HttpPost] - [EnableCors("*", "*", "*")] - [Route("Import")] - public HttpResponseMessage Import() - { - if (HttpContext.Current.Request.Files.Count == 0) - return null; - - HttpPostedFile file = HttpContext.Current.Request.Files[0]; - int index = file.FileName.LastIndexOf('.'); - string type = index > -1 && index < file.FileName.Length - 1 ? - file.FileName.Substring(index) : ".docx"; - Stream stream = file.InputStream; - stream.Position = 0; - - EJ2WordDocument document = EJ2WordDocument.Load(stream, GetFormatType(type.ToLower())); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - return new HttpResponseMessage() { Content = new StringContent(json) }; - } -``` - -## Paste with formatting - -This Web API converts the system clipboard data (HTML/RTF) to SFDT format which is required to paste content with formatting. - -The following example code illustrates how to write a Web API for paste with formatting. - -```c# - [HttpPost] - [EnableCors("*", "*", "*")] - [Route("SystemClipboard")] - public HttpResponseMessage SystemClipboard([FromBody]CustomParameter param) - { - if (param.content != null && param.content != "") - { - try - { - Syncfusion.EJ2.DocumentEditor.WordDocument document = Syncfusion.EJ2.DocumentEditor.WordDocument.LoadString(param.content, GetFormatType(param.type.ToLower())); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(document); - document.Dispose(); - return new HttpResponseMessage() { Content = new StringContent(json) }; - } - catch (Exception) - { - return new HttpResponseMessage() { Content = new StringContent("") }; - } - - } - return new HttpResponseMessage() { Content = new StringContent("") }; - } - - public class CustomParameter - { - public string content { get; set; } - public string type { get; set; } - } -``` - -## Restrict editing - -This Web API generates hash from the specified password and salt value which is required for restrict editing functionality of Document Editor component. - -The following example code illustrates how to write a Web API for restrict editing. - -```c# - [HttpPost] - [EnableCors("*", "*", "*")] - [Route("RestrictEditing")] - public string[] RestrictEditing([FromBody]CustomRestrictParameter param) - { - if (param.passwordBase64 == "" && param.passwordBase64 == null) - return null; - return Syncfusion.EJ2.DocumentEditor.WordDocument.ComputeHash(param.passwordBase64, param.saltBase64, param.spinCount); - } - - public class CustomRestrictParameter - { - public string passwordBase64 { get; set; } - public string saltBase64 { get; set; } - public int spinCount { get; set; } - } -``` - -## Spell Check - -Document Editor supports performing spell checking for any input text. You can perform spell checking for the text in Document Editor and it will provide suggestions for the mis-spelled words through dialog and in context menu. Document editor client-side script requires this Web API to show error words and list suggestions in context menu. This Web API returns the json type of spell-checked word which contains details about error words if any and suggestions. - -To know more about configure spell check, please check this [link](https://github.com/SyncfusionExamples/EJ2-Document-Editor-Web-Services/tree/master/ASP.NET%20MVC#steps-to-configure-spell-checker). - -In `Global.asax.cs` file, you can configure the spell check files like below: - -```c# - internal static List spellDictCollection; - internal static string path; - internal static string personalDictPath; - protected void Application_Start() - { - GlobalConfiguration.Configure(WebApiConfig.Register); - //check the spell check dictionary path environment variable value and assign default data folder - //if it is null. - string path = HostingEnvironment.MapPath("//App_Data//"); - //Set the default spellcheck.json file if the json filename is empty. - string jsonFileName = HostingEnvironment.MapPath("//App_Data//spellcheck.json"); - if (System.IO.File.Exists(jsonFileName)) - { - string jsonImport = System.IO.File.ReadAllText(jsonFileName); - List spellChecks = JsonConvert.DeserializeObject>(jsonImport); - spellDictCollection = new List(); - //construct the dictionary file path using customer provided path and dictionary name - foreach (var spellCheck in spellChecks) - { - spellDictCollection.Add(new DictionaryData(spellCheck.LanguadeID, Path.Combine(path, spellCheck.DictionaryPath), Path.Combine(path, spellCheck.AffixPath))); - personalDictPath = Path.Combine(path, spellCheck.PersonalDictPath); - } - } - } - -``` - -Document editor provides options to spell check word by word and spellcheck page by page when loading the documents. - -### Spell check word by word - -This Web API performs the spell check word by word and return the json which contains information about error words and suggestions if any. By default, spell check word by word is performed in Document editor when enabling spell check in client-side. - -The following example code illustrates how to write a Web API for spell check word by word. - -```c# - [HttpPost] - [EnableCors("*", "*", "*")] - [Route("SpellCheck")] - public HttpResponseMessage SpellCheck([FromBody] SpellCheckJsonData spellChecker) - { - try - { - SpellChecker spellCheck = new SpellChecker(spellDictionary, personalDictPath); - spellCheck.GetSuggestions(spellChecker.LanguageID, spellChecker.TexttoCheck, spellChecker.CheckSpelling, spellChecker.CheckSuggestion, spellChecker.AddWord); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(spellCheck); - return new HttpResponseMessage() { Content = new StringContent(json) }; - } - catch - { - return new HttpResponseMessage() { Content = new StringContent("{\"SpellCollection\":[],\"HasSpellingError\":false,\"Suggestions\":null}") }; - } - } - - public class SpellCheckJsonData - { - public int LanguageID { get; set; } - public string TexttoCheck { get; set; } - public bool CheckSpelling { get; set; } - public bool CheckSuggestion { get; set; } - public bool AddWord { get; set; } - } -``` - -### Spell check page by page - -This Web API performs the spell check page by page and return the json which contains information about error words and suggestions if any. By [enabling optimized spell check](../../document-editor/spell-check#enableoptimizedspellcheck) in client-side, you can perform spellcheck page by page when loading the documents. - -The following example code illustrates how to write a Web API for spell check page by page. - -```c# - [HttpPost] - [EnableCors("*", "*", "*")] - [Route("SpellCheckByPage")] - public HttpResponseMessage SpellCheckByPage([FromBody] SpellCheckJsonData spellChecker) - { - try - { - SpellChecker spellCheck = new SpellChecker(spellDictionary, personalDictPath); - spellCheck.CheckSpelling(spellChecker.LanguageID, spellChecker.TexttoCheck); - string json = Newtonsoft.Json.JsonConvert.SerializeObject(spellCheck); - return new HttpResponseMessage() { Content = new StringContent(json) }; - } - catch - { - return new HttpResponseMessage() { Content = new StringContent("{\"SpellCollection\":[],\"HasSpellingError\":false,\"Suggestions\":null}") }; - } - } - - public class SpellCheckJsonData - { - public int LanguageID { get; set; } - public string TexttoCheck { get; set; } - public bool CheckSpelling { get; set; } - public bool CheckSuggestion { get; set; } - public bool AddWord { get; set; } - } -``` - -## Save as file formats other than SFDT and DOCX - -You can configure this API, if you want to save the document in file format other than DOCX and SFDT using server-side. You can save the document in following ways: - -### Save the document in database or file server - -This Web API saves the document in the server machine. You can customize this API to save the document into databases or file servers. - -The following example code illustrates how to write a Web API for save document in server-side. - -```c# - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("Save")] - public void Save([FromBody] SaveParameter data) - { - string name = data.FileName; - string format = RetrieveFileType(name); - if (string.IsNullOrEmpty(name)) - { - name = "Document1.doc"; - } - WDocument document = WordDocument.Save(data.Content); - // Saves the document to server machine file system, you can customize here to save into databases or file servers based on requirement. - FileStream fileStream = new FileStream(name, FileMode.OpenOrCreate, FileAccess.ReadWrite); - document.Save(fileStream, GetWFormatType(format)); - document.Close(); - fileStream.Close(); - } - - public class SaveParameter - { - public string Content { get; set; } - public string FileName { get; set; } - } -``` - -### Save as other file formats by passing SFDT string - -This Web API converts the SFDT string to required format and returns the document as FileStreamResult to client-side. Using this API, you can save the document in file format other than SFDT and DOCX and download the document in client browser. - -The following example code illustrates how to write a Web API for export sfdt. - -```c# - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("ExportSFDT")] - public FileStreamResult ExportSFDT([FromBody] SaveParameter data) - { - string name = data.FileName; - string format = RetrieveFileType(name); - if (string.IsNullOrEmpty(name)) - { - name = "Document1.doc"; - } - WDocument document = WordDocument.Save(data.Content); - return SaveDocument(document, format, name); - } - - public class SaveParameter - { - public string Content { get; set; } - public string FileName { get; set; } - } - - private FileStreamResult SaveDocument(WDocument document, string format, string fileName) - { - Stream stream = new MemoryStream(); - string contentType = ""; - if (format == ".pdf") - { - contentType = "application/pdf"; - } - else - { - WFormatType type = GetWFormatType(format); - switch (type) - { - case WFormatType.Rtf: - contentType = "application/rtf"; - break; - case WFormatType.WordML: - contentType = "application/xml"; - break; - case WFormatType.Html: - contentType = "application/html"; - break; - case WFormatType.Dotx: - contentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.template"; - break; - case WFormatType.Doc: - contentType = "application/msword"; - break; - case WFormatType.Dot: - contentType = "application/msword"; - break; - } - document.Save(stream, type); - } - document.Close(); - stream.Position = 0; - return new FileStreamResult(stream, contentType) - { - FileDownloadName = fileName - }; - } -``` - -### Save as other file formats by passing DOCX file - -This Web API converts the DOCX document to required format and returns the document as FileStreamResult to client-side. Using this API, you can save the document in file format other than SFDT and DOCX and download the document in client browser. - -The following example code illustrates how to write a Web API for export. - -```c# - [HttpPost] - [EnableCors("AllowAllOrigins")] - [Route("Export")] - public FileStreamResult Export(IFormCollection data) - { - if (data.Files.Count == 0) - return null; - string fileName = this.GetValue(data, "filename"); - string name = fileName; - string format = RetrieveFileType(name); - if (string.IsNullOrEmpty(name)) - { - name = "Document1"; - } - WDocument document = this.GetDocument(data); - return SaveDocument(document, format, fileName); - } - - private string RetrieveFileType(string name) - { - int index = name.LastIndexOf('.'); - string format = index > -1 && index < name.Length - 1 ? - name.Substring(index) : ".doc"; - return format; - } - - private string GetValue(IFormCollection data, string key) - { - if (data.ContainsKey(key)) - { - string[] values = data[key]; - if (values.Length > 0) - { - return values[0]; - } - } - return ""; - } -``` - ->Note: Please refer the [ASP.NET MVC Web API sample](https://github.com/SyncfusionExamples/EJ2-DocumentEditor-WebServices/tree/master/ASP.NET%20MVC). \ No newline at end of file diff --git a/ej2-typescript-toc.html b/ej2-typescript-toc.html index 13bda13c9..ffb0cf0e4 100644 --- a/ej2-typescript-toc.html +++ b/ej2-typescript-toc.html @@ -961,141 +961,6 @@
  • API Reference
  • -
  • Migration from Essential JS 1
  • -DocumentEditor -
  • DropDown Menu