تخطَّ إلى المحتوى

كل ما تصدّره النواة

صفحة واحدة للخيارات والدوال والسمات. وتعيد حزم أطر العمل تصدير كل ذلك.

في هذه الصفحة

createEditor(options)

كل الخيارات مع قيمها الافتراضية. وجميعها اختيارية.

خيارات createEditor
الخيارالنوعالافتراضيالوصف
elementHTMLElement | string | <textarea>الحاوية أو محدّد CSS أو textarea (يُخفى ويبقى متزامنًا). احذفه لإنشاء المحرّر منفصلًا وأضِف editor.root بنفسك.
contentstring | JSONالمحتوى الابتدائي: HTML (يُعقَّم دائمًا) أو JSON بصيغة ProseMirror.
extensionsAnyExtension[][StarterKit]مجموعة الميزات.
editablebooleantrueالسماح بالتحرير.
autofocusboolean | "start" | "end"falseالتركيز على المحرّر عند إنشائه.
placeholderstringنص يظهر حين يكون المحرّر فارغًا.
ariaLabel, ariaLabelledBy, ariaDescribedBystringالاسم والوصف المتاحان لقارئات الشاشة لمنطقة التحرير.
languagestring<html lang>لغة الواجهة. المدمجة: en وar.
languagesEditorLanguage[]إضافة لغات للواجهة أو استبدال الموجودة.
labelsPartial<Labels>استبدال نصوص مفردة في الواجهة.
dir"ltr" | "rtl" | "auto"الاتجاه الأساسي للمحتوى.
contentLangstringقيمة lang للمحتوى، تُستخدم في التدقيق الإملائي وقارئات الشاشة.
urlPolicyUrlPolicy{ protocols, allowDataImages, allowRelative }. عناوين الروابط والصور المسموح بها.
inputRulesbooleantrueاختصارات الكتابة بأسلوب Markdown: # و* و1. و> والكود المحاط بعلامات، و**bold**…
uiUIOptions | falsebuilt-in UIشريط الأدوات والأزرار المخصّصة وشريط الحالة والسمة والاختصارات. false = بدون واجهة.

خيارات ui

شريط الأدوات وشريط الحالة والسمة المدمجة. مرّر false بدلًا منها للحصول على محرّر بلا واجهة.

خيارات ui
الخيارالنوعالافتراضيالوصف
toolbarstring[] | falseDEFAULT_TOOLBARأسماء العناصر والفواصل "|". يُخفي false شريط الأدوات.
itemsRecord<string, ItemSpec>أزرار مخصّصة أو بديلة لشريط الأدوات، يُشار إليها بالاسم في toolbar.
statusbar{ elementPath, wordCount, characterCount } | falseمحتوى شريط الحالة. يمكن أن تأخذ characterCount القيمة { limit }.
theme"auto" | "light" | "dark""auto"سمة ألوان المحرّر.
stickyToolbarbooleantrueإبقاء شريط الأدوات ظاهرًا أثناء تمرير المستندات الطويلة.
shortcuts{ toolbar, help, find, link }Alt-F10, Alt-0, Mod-f, Mod-kاختصارات لوحة المفاتيح للواجهة المدمجة.

دوال الاستدعاء

مرّرها ضمن الخيارات. وتستدعي حزم أطر العمل أحدث دالة دائمًا.

دوال استدعاء المحرّر
الاسمالنوعالوصف
onCreate(editor) => voidأُنشئ المحرّر.
onUpdate(editor) => voidتغيّر المحتوى.
onSelectionUpdate(editor) => voidتغيّر التحديد.
onFocus, onBlur(editor, event) => voidاكتسبت منطقة التحرير التركيز أو فقدته.
onDestroy() => voidدُمِّر المحرّر.
onContentError(error: Error) => voidتعذّر تحميل المحتوى.

دوال المحرّر

ما تعيده createEditor().

دوال المحرّر
الدالةتعيدالوصف
getHTML()stringHTML نظيف ومعقَّم. احفظ هذا.
getJSON()JSONContentJSON بصيغة ProseMirror.
getText({ blockSeparator })stringنص عادي. تُفصل الكتل افتراضيًا بـ \n\n.
setContent(content, { emitUpdate, addToHistory })voidتحميل HTML أو JSON. الخياران emitUpdate وaddToHistory متوقفان افتراضيًا.
clearContent()voidإفراغ المستند.
isEmpty, isFocused, isEditablebooleanمؤشرات حالة للقراءة فقط.
setEditable(editable)voidتفعيل التحرير أو إيقافه.
setOptions(options)voidتغيير الخيارات الديناميكية: editable وplaceholder وaria* وdir وcontentLang.
commands.name()booleanتنفيذ أمر واحد، مثل editor.commands.toggleBold().
can().name()booleanهل ينجح الأمر عند التحديد الحالي؟
chain().…run()booleanعدة أوامر في معاملة واحدة وخطوة تراجع واحدة.
isActive(name, attrs?)booleanهل العلامة أو العقدة مفعّلة، مثل isActive("heading", { level: 2 }).
getAttributes(name)objectسمات العنصر عند التحديد، مثل href للرابط.
on(event, fn)() => voidالاستماع إلى حدث في المحرّر. تعيد دالة لإلغاء الاشتراك.
subscribe(fn)() => voidاشتراك على نمط المخازن يُستدعى عند كل تغيير.
announce(message)voidإرسال رسالة إلى قارئات الشاشة.
focus(), blur()voidنقل التركيز إلى المحرّر أو منه.
destroy()voidإزالة المحرّر ومستمعي الأحداث.

الأوامر

نفّذها بـ editor.commands.name() واختبرها بـ editor.can().name() واجمعها بـ editor.chain()…run().

الأوامر حسب المجال
المجالالأوامر
علامات التنسيقtoggleBold toggleItalic toggleUnderline toggleStrike toggleCode toggleSubscript toggleSuperscript unsetAllMarks
الألوانsetTextColor(color) unsetTextColor setHighlight(color?) unsetHighlight toggleHighlight(color?)
الكتلsetParagraph setHeading(level) toggleHeading(level) clearNodes toggleBlockquote toggleCodeBlock setHorizontalRule setHardBreak
القوائمtoggleBulletList toggleOrderedList toggleTaskList sinkListItem liftListItem
الروابط والصورsetLink({ href, text?, title?, newTab? }) unsetLink setImage({ src, alt, caption? }) updateImage
الجداولinsertTable({ rows, cols, withHeaderRow, caption }) addRowBefore addRowAfter addColumnBefore addColumnAfter deleteRow deleteColumn deleteTable mergeCells splitCell toggleHeaderRow toggleHeaderColumn setTableCaption
التخطيطsetTextAlign("start" | "center" | "end" | "justify") setTextDirection("ltr" | "rtl" | "auto") unsetTextAlign unsetTextDirection
البحثsetSearch({ query, caseSensitive, wholeWord }) findNext findPrevious replaceCurrent(text) replaceAll(text) clearSearch
عامundo redo focus blur selectAll

السمات

تتبع placeholder وreadonly وdisabled وdir وcontent-lang وlabel التغييرات اللاحقة. أما value وlanguage وtoolbar فتُقرأ عند بدء المحرّر.

سمات owe-editor
الاسمالنوعالوصف
namestringاسم حقل النموذج. يرسل النموذج HTML المحرّر تحته.
placeholderstringنص الإرشاد حين يكون المحرّر فارغًا.
readonlybooleanيجعل المحتوى للقراءة فقط.
disabledbooleanيعطّل المحرّر ويستبعده من النموذج.
dirltr | rtl | autoالاتجاه الأساسي للمحتوى.
content-langstringقيمة lang للمحتوى (التدقيق الإملائي وقارئات الشاشة).
labelstringالاسم المتاح لقارئات الشاشة. أو اجعل <label for> يشير إلى id العنصر.
valueHTML stringالمحتوى الابتدائي بصيغة HTML. يُقرأ مرة واحدة عند إنشاء المحرّر.
languagestringلغة الواجهة، مثل ar. تُقرأ مرة واحدة. الافتراضي <html lang>.
toolbarstringعناصر شريط الأدوات مفصولة بمسافات ("bold italic | link")، أو none. تُقرأ مرة واحدة.

الخصائص

عيّن options قبل إضافة العنصر إلى الصفحة.

خصائص owe-editor
الاسمالنوعالوصف
editorEditor | nullالمحرّر الحي، أو null ما دام العنصر خارج المستند.
valuestringالمحتوى بصيغة HTML. تعيينه يحمّل محتوى جديدًا.
optionsEditorOptionsخيارات إضافية لـ createEditor(). عيّنها قبل إضافة العنصر إلى الصفحة. وتتغلّب عليها السمات.
formHTMLFormElement | nullعنصر <form> المحيط، أو null.

الأحداث

كلاهما يصعد في الشجرة (bubbles)، فيمكنك الاستماع على النموذج.

أحداث owe-editor
الاسمالنوعالوصف
inputEventعند كل تغيير. تحمل event.target.value الـ HTML.
changeEventحين يفقد المحرّر التركيز بعد تغيير.

نقاط الدخول

ما يوفّره كل مسار استيراد.

نقاط دخول الحزمة
الاستيرادالنوعالوصف
open-wysiwyg-editorESM + CJS + .d.tsالمحرّك وكل الإضافات والواجهة المتاحة.
open-wysiwyg-editor/headlessESM + CJS + .d.tsالمحرّك والإضافات دون كود الواجهة.
open-wysiwyg-editor/elementESM + CJS + .d.tsيعرّف العنصر <owe-editor>.
open-wysiwyg-editor/style.cssCSSتنسيقات المحرّر والواجهة والمحتوى (ومنه style.min.css).
open-wysiwyg-editor/content.cssCSSتنسيقات المحتوى فقط، للصفحات التي تعرض HTML محفوظًا (ومنه content.min.css).
dist/open-wysiwyg-editor.global.jsIIFEنسخة لوسم السكربت. تكشف window.OpenWysiwygEditor وتعرّف <owe-editor>.

عدّل هذه الصفحة على GitHub