Files
portal-api/resources/js/pages/tinymce.js
T
2026-01-30 08:23:19 +07:00

37 lines
1.4 KiB
JavaScript

// npm package: tinymce
// github link: https://github.com/tinymce/tinymce
'use strict';
(function () {
const tinymceExample = document.querySelector('#tinymceExample');
const bodyColor = getComputedStyle(document.documentElement).getPropertyValue('--bs-body-color').trim();
if (tinymceExample) {
const options = {
selector: '#tinymceExample',
min_height: 350,
plugins: [
'advlist', 'autoresize', 'autolink', 'lists', 'link', 'image', 'charmap', 'preview', 'anchor', 'pagebreak',
'searchreplace', 'wordcount', 'visualblocks', 'visualchars', 'code', 'fullscreen',
],
toolbar: 'undo redo | insert | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | print preview media | forecolor backcolor emoticons | codesample help',
image_advtab: true,
promotion: false,
license_key: 'gpl',
content_style: `body { color: ${bodyColor}; }`,
};
const theme = localStorage.getItem('theme');
if (theme === 'dark') {
options.content_css = 'dark';
const bgColor = getComputedStyle(document.documentElement).getPropertyValue('--bs-body-bg');
options.content_style += ` body { background: ${bgColor}; }`;
} else if (theme === 'light') {
options.content_css = 'default';
}
tinymce.init(options);
}
})();