blockly

حزمة Blockly

صفوف

لكل الصف الوصف
حظر صف لوحدة واحدة. لا يتم استدعاء دالة workspace.newBlock() مباشرةً في العادة، بل يُفضَّل استخدامها.
BlockFlyoutInflater الفئة المسؤولة عن إنشاء الكتل لقوائم النافذة المنبثقة
BlockNavigationPolicy مجموعة من القواعد التي تتحكّم في التنقّل باستخدام لوحة المفاتيح من أحد الأقسام
BlockSvg فئة لتمثيل SVG للوحدة لا يتم استدعاء دالة workspace.newBlock() مباشرةً في العادة، بل يُفضَّل استخدامها.
ButtonFlyoutInflater الفئة المسؤولة عن إنشاء الأزرار للنوافذ المنبثقة
CodeGenerator فئة لأداة إنشاء الرموز البرمجية التي تترجم الوحدات إلى لغة.
CollapsibleToolboxCategory فئة لفئة في صندوق أدوات يمكن تصغيرها.
ComponentManager مدير لجميع العناصر المسجَّلة في مساحة العمل
الاتصال فئة للربط بين الكتل
ConnectionChecker فئة لمنطق التحقّق من نوع الاتصال
ConnectionDB قاعدة بيانات عمليات الربط يتم تخزين الاتصالات بترتيب مكوّنها العمودي. بهذه الطريقة، يمكن البحث عن الاتصالات في منطقة معيّنة بسرعة باستخدام بحث ثنائي.
ConnectionNavigationPolicy مجموعة من القواعد التي تتحكّم في التنقّل باستخدام لوحة المفاتيح من اتصال
ContextMenuRegistry فئة لتسجيل عناصر قائمة السياقات من المفترض أن يكون هذا العنصر فريدًا. يجب عدم إنشاء مثيل جديد، والوصول إلى هذا الصف فقط من ContextMenuRegistry.registry.
DeleteArea فئة مجردة لمكوّن يمكنه حذف كتلة أو فقاعة يتم إسقاطها فوقه.
DragTarget فئة مجردة لمكوّن يتضمّن سلوكًا مخصّصًا عند سحب كتلة أو فقاعة فوقه أو إسقاطها عليه.
FieldCheckbox فئة لحقل مربّع اختيار
FieldDropdown فئة لحقل قائمة منسدلة قابل للتعديل
FieldImage فئة لصورة على قالب
FieldLabel فئة لحقل نصي غير قابل للتعديل وغير قابل للتسلسل
FieldLabelSerializable فئة لحقل نصي غير قابل للتعديل وقابل للتسلسل
FieldNavigationPolicy مجموعة من القواعد التي تتحكّم في التنقّل باستخدام لوحة المفاتيح من حقل معيّن
FieldNumber فئة لحقل رقمي قابل للتعديل
FieldTextInput فئة لحقل نصي قابل للتعديل
FieldVariable فئة لحقل القائمة المنسدلة للمتغيّر
FlyoutButton فئة زر أو تصنيف في القائمة المنبثقة
FlyoutButtonNavigationPolicy مجموعة من القواعد التي تتحكّم في التنقّل باستخدام لوحة المفاتيح من زرّ منبثق
FlyoutItem تمثيل عنصر معروض في قائمة منسدلة
FlyoutMetricsManager تُحتسب المقاييس لمساحة عمل النافذة المنبثقة. تُستخدَم المقاييس بشكل أساسي لتحديد حجم أشرطة التمرير للقوائم المنبثقة.
FlyoutNavigationPolicy سياسة تنقّل عامة تتيح التنقّل بين العناصر في النافذة المنبثقة
FlyoutNavigator
FlyoutSeparator تمثيل فجوة بين العناصر في قائمة منسدلة
FlyoutSeparatorNavigationPolicy مجموعة من القواعد التي تتحكّم في التنقّل باستخدام لوحة المفاتيح من فاصل نافذة منبثقة هذا عنصر نائب لا يُستخدَم لأي غرض، لأنّه لا يمكن الانتقال إلى فواصل النافذة المنبثقة.
FocusableTreeTraverser أداة مساعدة لتنفيذ IFocusableTree للمساعدة في عمليات التنقّل الشائعة في الشجرة
FocusManager

عنصر فريد لكل صفحة يدير تركيز Blockly على مستوى شجرة واحدة أو أكثر من أشجار IFocusableTrees، ويزامن هذا التركيز مع DOM بشكل ثنائي الاتجاه.

على المُتصلين الذين يريدون تغيير تركيز الإدخال صراحةً لمكوّنات Blockly المحدّدة على الصفحة استخدام دوال التركيز في هذا المدير.

يكون المدير مسؤولاً عن معالجة أحداث التركيز من DOM (التي قد تنشأ عن نقر المستخدمين على عناصر الصفحة) والتأكّد من وضع علامة واضحة على عناصر IFocusableNodes المقابلة على أنّها مميّزة بشكل نشط/سلبي بالطريقة نفسها التي يتم بها تمثيل ذلك من خلال طلبات focusNode()‎.

الإيماءة فئة لإيماءة واحدة
الشبكة فئة لشبكة مساحة العمل
HorizontalFlyout فئة لقائمة منسدلة
الإدخال فئة للإدخال مع الحقول الاختيارية
InsertionMarkerPreviewer
LabelFlyoutInflater الفئة المسؤولة عن إنشاء تصنيفات لقوائم النافذة المنبثقة
LineCursor فئة لمؤشر سطر
محدِّد الموقع فئة العلامة ويُستخدَم هذا الإجراء في التنقّل باستخدام لوحة المفاتيح لحفظ موقع في AST في Blockly.
MarkerManager فئة لإدارة العلامات المتعددة والمؤشر على مساحة عمل
القائمة فئة قائمة أساسية.
MenuItem فئة تمثّل عنصرًا في قائمة
MetricsManager مدير جميع عمليات احتساب مقاييس مساحة العمل
أسماء الحسابات فئة لقاعدة بيانات تحتوي على أسماء الكيانات (المتغيّرات والإجراءات وما إلى ذلك)
Navigator فئة مسؤولة عن تحديد المكان الذي يجب أن ينتقل إليه التركيز استجابةً لأوامر التنقّل في لوحة المفاتيح
الخيارات تحليل الخيارات التي يحدّدها المستخدم، باستخدام الإعدادات التلقائية المعقولة في حال عدم تحديد السلوك
RenderedConnection فئة للربط بين الكتل التي يمكن عرضها على الشاشة
شريط التمرير فئة شريط تمرير SVG خالص توفّر هذه الطريقة شريط تمرير مضمون أن يعمل، ولكن قد لا يبدو أو يعمل مثل أشرطة التمرير في النظام.
ScrollbarPair فئة لزوج من أشرطة التمرير أفقي وعمودي
SeparatorFlyoutInflater الفئة المسؤولة عن إنشاء الفواصل لقوائم النافذة المنبثقة
ShortcutRegistry فئة لسجلّ اختصارات لوحة المفاتيح من المفترض أن يكون هذا العنصر فريدًا. يجب عدم إنشاء مثيل جديد، ولا يمكنك الوصول إلى هذه الفئة إلا من ShortcutRegistry.registry.
المظهر فئة لمظهر
ThemeManager فئة لتخزين مكوّنات واجهة المستخدم ومظهر مساحة العمل وتعديلها
Toast فئة تسمح بعرض الإشعارات المؤقتة وإغلاقها
صندوق الأدوات فئة لمجموعة أدوات لإنشاء عنصر DOM الخاص بصندوق الأدوات
ToolboxCategory فئة لفئة في مجموعة أدوات
ToolboxItem فئة لعنصر في صندوق الأدوات
ToolboxSeparator فئة لفاصل مجموعة الأدوات هذا هو الخط المرئي الرفيع الذي يظهر على صندوق الأدوات. لا يمكن التفاعل مع هذا العنصر.
المهملات فئة لسلة المهملات
UnattachedFieldError يمثّل خطأً يحاول فيه الحقل الوصول إلى اللبنة أو معلومات عن اللبنة قبل إرفاقه فعليًا باللبنة المذكورة.
VariableMap فئة لخريطة متغيّرة يحتوي هذا العنصر على بنية بيانات قاموس تتضمّن أنواع المتغيّرات كمفاتيح وقوائم المتغيّرات كقيم. قائمة المتغيّرات هي النوع الذي يشير إليه المفتاح.
VariableModel فئة لنموذج متغيّر يحتوي على معلومات عن المتغيّر، بما في ذلك الاسم ورقم التعريف والنوع.
VerticalFlyout فئة لقائمة منسدلة
Workspace فئة لمساحة عمل هذه بنية بيانات تحتوي على كتل. لا تتوفّر واجهة مستخدم، ويمكن إنشاء المحتوى بدون واجهة مستخدم.
WorkspaceAudio فئة لتحميل الملفات الصوتية وتخزينها وتشغيلها في مساحة عمل
WorkspaceDragger فئة لأداة سحب مساحة العمل ويؤدي ذلك إلى تحريك مساحة العمل عندما يتم سحبها باستخدام الماوس أو باللمس.
WorkspaceNavigationPolicy مجموعة من القواعد التي تتحكّم في التنقّل باستخدام لوحة المفاتيح من مساحة عمل.
WorkspaceSvg فئة لمساحة عمل هذه منطقة على الشاشة تتضمّن "مكبّر قمامة" وشرائح تمرير اختيارية وفقاعات وسحب.
ZoomControls فئة عناصر التحكّم في التكبير أو التصغير

الفئات المجردة

فئة مجردة الوصف
الحقل فئة مجردة لحقل قابل للتعديل
Flyout فئة لقائمة منسدلة

التعدادات

التعداد الوصف
ConnectionType قائمة بقيم ثابتة لنوع الاتصال أو الإدخال

الدوال

الوظيفة الوصف
getFocusManager() دالة مساعدة لدالة FocusManager.getFocusManager
hasBubble(obj) أداة تحكّم في النوع للتحقّق مما إذا كان العنصر المحدّد من النوع IHasBubble.
hideChaff(opt_onlyClosePopups) إغلاق التلميحات التوضيحية وقوائم السياقات وخيارات القوائم المنسدلة وما إلى ذلك
inject(container, opt_options) أدرِج محرِّر Blockly في عنصر الحاوية المحدّد (عادةً div).
isCopyable(obj)
isDeletable(obj) لعرض ما إذا كان العنصر المحدّد عنصرًا قابلاً للحذف
isDraggable(obj) تعرِض هذه الدالة ما إذا كان الكائن المحدَّد من النوع IDraggable أم لا.
isIcon(obj) أداة تحكّم في النوع للتحقّق مما إذا كان العنصر المحدّد هو رمز IIcon.
isPaster(obj)
isRenderedElement(obj)
isSelectable(obj) للتحقّق مما إذا كان العنصر المحدّد من النوع ISelectable
isSerializable(obj) أداة حماية أنواع تتحقق مما إذا كان العنصر المحدَّد من النوع ISerializable.
isVariableBackedParameterModel(param) لعرض ما إذا كان العنصر المحدّد هو حامل متغيّر أم لا.
setLocale(locale)

تُستخدَم لضبط اللغة (أي الرسائل/النصوص المُعدَّلة/غير ذلك) على اللغة المحدّدة.

لا يكون هذا مفيدًا أو ضروريًا عند التحميل من علامة نص برمجي، لأنّ الرسائل يتم إلحاقها تلقائيًا بعنصر Blockly.Msg. ولكننا نوفّره في سياق علامة نص برمجي وسياق غير علامة نص برمجي حتى يتمكّن المُجمِّع tscompiler من إنشاء ملفات تعريف الأنواع بشكل صحيح.

واجهات

الواجهة الوصف
BlocklyOptions خيارات Blockly
FieldCheckboxConfig خيارات الضبط لحقل مربّع الاختيار
FieldCheckboxFromJsonConfig خيارات إعدادات fromJson لحقل مربّع الاختيار
FieldConfig خيارات ضبط إضافية للحقل الأساسي
FieldDropdownFromJsonConfig إعدادات fromJson لحقل القائمة المنسدلة
FieldImageConfig خيارات الضبط لحقل الصورة
FieldImageFromJsonConfig خيارات إعدادات fromJson لحقل الصورة
FieldLabelConfig خيارات الضبط لحقل التصنيف
FieldLabelFromJsonConfig خيارات الإعداد منJson لحقل التصنيف
FieldNumberConfig خيارات الضبط لحقل الأرقام
FieldNumberFromJsonConfig خيارات ضبط fromJson لحقل الأرقام
FieldTextInputFromJsonConfig خيارات ضبط fromJson لحقل إدخال النص
FieldVariableConfig خيارات الضبط للحقل المتغيّر
FieldVariableFromJsonConfig خيارات ضبط fromJson للحقل المتغيّر
IAutoHideable واجهة لمكوّن يمكن إخفاؤه تلقائيًا
IBoundedElement واجهة عنصر محدود
IBubble واجهة فقاعة
ICollapsibleToolboxItem واجهة لعنصر في صندوق الأدوات يمكن تصغيره
IComponent واجهة مكوّن مساحة العمل الذي يمكن تسجيله باستخدام ComponentManager
IConnectionChecker فئة لمنطق التحقّق من نوع الاتصال
IConnectionPreviewer تعرِض "المعاينات" المرئية مكان اتصال المربّع في حال إسقاطه.
IContextMenu
ICopyable
IDeletable واجهة عنصر يمكن حذفه
IDeleteArea واجهة لمكوّن يمكنه حذف كتلة أو فقاعة تم إسقاطها فوقه
IDraggable يمثّل عنصرًا يمكن سحبه.
IDragger
IDragStrategy
IDragTarget واجهة لمكوّن يتضمّن سلوكًا مخصّصًا عند سحب كتلة أو فقاعة فوقه أو إسقاطها عليه
IFlyout واجهة لقائمة منبثقة
IFlyoutInflater
IFocusableNode يمثّل أي عنصر يمكن أن يكون محور الإدخال.
IFocusableTree

تمثّل شجرة للعناصر القابلة للتركيز مع سياق التركيز النشط/السلبي الخاص بها.

يُرجى العِلم أنّ FocusManager هو المسؤول عن التركيز، ويمكن أن تتضمّن عمليات تنفيذ الأشجار عنصر IFocusableNode واحدًا كحد أقصى في كل مرة. إذا تم التركيز على الشجرة نفسها، تُعتبر العقدة التي تم التركيز عليها في الشجرة "نشطة" (أو "سلبية" إذا تم التركيز على شجرة أخرى).

تتم مشاركة التركيز بين شجرة واحدة أو أكثر، حيث يمكن أن تحتوي كل شجرة على عقدة نشطة أو سلبية واحدة بالضبط (ولا يمكن أن تتوفّر سوى عقدة نشطة واحدة في الصفحة بأكملها في أي وقت). تتمثل فكرة التركيز السلبي في تقديم سياق للمستخدمين حول المكان الذي سيتم فيه استعادة تركيزهم عند الانتقال مرة أخرى إلى شجرة تم التركيز عليها سابقًا.

يُرجى العلم أنّه إذا كنت بحاجة إلى العقدة الحالية التي تركّز عليها الشجرة (سواء كانت سلبية أو نشطة)، يمكنك استخدام FocusableTreeTraverser.findFocusedNode.

يُرجى العلم أنّه إذا كان من الضروري استرداد عقد معيّنة لهذا الشجرة، استخدِم lookUpFocusableNode أو FocusableTreeTraverser.findFocusableNodeFor.

IHasBubble
IIcon
IKeyboardAccessible واجهة لعنصر يعالج اختصارات لوحة المفاتيح
ImageProperties تعريف خيار القائمة المنسدلة للصور القابلة للقراءة
IMetricsManager واجهة لإدارة المقاييس
IMovable واجهة عنصر قابل للنقل
INavigationPolicy مجموعة من القواعد التي تحدّد مواضع التنقّل باستخدام لوحة المفاتيح
IPaster عنصر يمكنه لصق البيانات في مساحة عمل
IPositionable واجهة لمكوّن يتم وضعه أعلى مساحة العمل
IRegistrable واجهة مكوّن Blockly الذي يمكن تسجيله
IRenderedElement
ISelectable

واجهة عنصر قابل للاختيار

من المتوقّع بشكل عام أن تستخدِم عمليات التنفيذ وظيفتَي onNodeFocus() وonNodeBlur() للاتّصال بـ setSelected() مع أنفسهم وnull على التوالي، وذلك لضمان تعديل الاختيارات بشكل صحيح وإطلاق حدث تغيير الاختيار.

ISelectableToolboxItem واجهة لعنصر في صندوق الأدوات يمكن اختياره
ISerializable
IStyleable واجهة لكائن يمكن إضافة نمط إليه
IToolbox واجهة لمجموعة أدوات
IToolboxItem واجهة عنصر في صندوق الأدوات
IVariableBackedParameterModel واجهة لنموذج مَعلمة يحتوي على نموذج متغيّر
IVariableMap

خرائط المتغيّرات هي عناصر حاويات مسؤولة عن تخزين مجموعة المتغيّرات المُشار إليها في مساحة عمل وإدارة هذه المجموعة.

يمكن لأيّ من هذه الطرق تحديد ثوابت حول الأسماء والأنواع القانونية، ورمي استثناء في حال عدم استيفائها.

IVariableModel
IVariableState يمثّل حالة متغيّر معيّن.
ToastOptions خيارات العرض/الضبط للإشعارات المنبثقة

مساحات الاسم

مساحة الاسم الوصف
حظر
blockAnimations
blockRendering
browserEvents
فقاعات الصابون
bumpObjects
الحافظة
CollapsibleToolboxCategory
comments
شائعة
ComponentManager
الثوابت
ContextMenu
ContextMenuItems
ContextMenuRegistry
Css
dialog
السحب
الأحداث
الإضافات
fieldRegistry
geras
الرموز
ICopyable
المدخلات
الطبقات
libraryBlocks
MetricsManager
أسماء الحسابات
الخيارات
الإجراءات
قاعدة بيانات المسجّلين
RenderedConnection
renderManagement
التسلسل
ShortcutItems
ShortcutRegistry
المظهر
ThemeManager
المظاهر
thrasos
Toast خيارات لتحديد مدى سرعة قراءة قارئ الشاشة للرسائل المنبثقة تتطابق القيم مع القيم الخاصة بـ aria-live.
ToolboxCategory
ToolboxSeparator
التلميح
اللمس
uiPosition
utils
المتغيّرات
VariablesDynamic
WidgetDiv
Xml
zelos

المتغيّرات

متغيّر الوصف
الكتل تعيين أسماء أنواع الوحدات إلى عناصر نماذج الوحدات
COLLAPSE_CHARS
COLLAPSED_FIELD_NAME
COLLAPSED_INPUT_NAME
config عنصر يحتوي على جميع القيم في Blockly التي نتوقّع أن يتمكّن المطوّرون من تغييرها.
defineBlocksWithJsonArray يمكنك تحديد الكتل من صفيف لتعريفات كتل JSON، كما يمكن أن يتم إنشاؤها بواسطة أدوات المطوّرين في Blockly.
DELETE_VARIABLE_ID
DropDownDiv
getMainWorkspace عرض مساحة العمل الرئيسية تعرِض هذه الدالة آخر مساحة عمل رئيسية مستخدَمة (استنادًا إلى التركيز). حاول عدم استخدام هذه الدالة، خاصةً إذا كانت هناك عدة نُسخ من Blockly في الصفحة.
getSelected عرض العنصر القابل للنسخ المحدّد حاليًا
INPUT_VALUE
JavaScript
Msg معجم للرسائل المترجَمة
NEXT_STATEMENT
OPPOSITE_TYPE
OUTPUT_VALUE
PREVIOUS_STATEMENT
PROCEDURE_CATEGORY_NAME سلسلة لاستخدامها في سمة "مخصّصة" لفئة في ملف XML الخاص بصندوق الأدوات تشير هذه السلسلة إلى أنّه يجب ملء الفئة ديناميكيًا بكتل الإجراءات.
RENAME_VARIABLE_ID
setParentContainer اضبط الحاوية الرئيسية. هذا هو عنصر الحاوية الذي يتم عرض WidgetDiv وdropDownDiv وTooltip فيه في المرة الأولى التي يتم فيها استدعاء Blockly.inject. هذه الطريقة هي عملية لا تؤدي إلى أيّ تأثير إذا تمّ استدعاؤها بعد الرمز Blockly.inject الأول.
svgResize اضبط حجم صورة SVG لملء الحاوية بالكامل. استخدِم هذا الإجراء عندما يتغيّر حجم طريقة العرض فعليًا (مثلاً عند تغيير حجم النافذة أو تغيير اتجاه الجهاز). اطّلِع على workspace.resizeContents لتغيير حجم مساحة العمل عند تغيير المحتوى (مثلاً عند إضافة أو إزالة قالب). سجِّل ارتفاع/عرض صورة SVG.
TOOLBOX_AT_BOTTOM
TOOLBOX_AT_LEFT
TOOLBOX_AT_RIGHT
TOOLBOX_AT_TOP
VARIABLE_CATEGORY_NAME سلسلة لاستخدامها في سمة "مخصّصة" لفئة في ملف XML الخاص بصندوق الأدوات تشير هذه السلسلة إلى أنّه يجب تعبئة الفئة ديناميكيًا باستخدام وحدات متغيّرة.
VARIABLE_DYNAMIC_CATEGORY_NAME سلسلة لاستخدامها في سمة "مخصّصة" لفئة في ملف XML الخاص بصندوق الأدوات تشير هذه السلسلة إلى أنّه يجب تعبئة الفئة ديناميكيًا باستخدام وحدات متغيّرة.
الإصدار إصدار Blockly الأساسي يتجاوز نصّ إنشاء الحزمة (npm run build) هذا الثابت ليحلّ محلّه قيمة الإصدار في package.json. ويتم ذلك من خلال Closure Compiler في مهمة gulp buildCompressed. بالنسبة إلى عمليات الإنشاء المحلية، يمكنك ضبط القيمة --define='Blockly.VERSION=X.Y.Z' في المُجمِّع لإلغاء هذا الثابت.

الأسماء البديلة

النوع: عنوان بديل الوصف
FieldCheckboxValidator دالة يتمّ استدعاؤها للتحقّق من صحة التغييرات التي تمّ إجراؤها على قيمة الحقل قبل ضبطها.
FieldDropdownConfig خيارات الضبط لحقل القائمة المنسدلة
FieldDropdownValidator دالة يتمّ استدعاؤها للتحقّق من صحة التغييرات التي تمّ إجراؤها على قيمة الحقل قبل ضبطها.
FieldNumberValidator دالة يتمّ استدعاؤها للتحقّق من صحة التغييرات التي تمّ إجراؤها على قيمة الحقل قبل ضبطها.
FieldTextInputConfig خيارات الضبط لحقل إدخال النص
FieldTextInputValidator دالة يتمّ استدعاؤها للتحقّق من صحة التغييرات التي تمّ إجراؤها على قيمة الحقل قبل ضبطها.
FieldValidator دالة يتمّ استدعاؤها للتحقّق من صحة التغييرات التي تمّ إجراؤها على قيمة الحقل قبل ضبطها.
FieldVariableValidator دالة يتمّ استدعاؤها للتحقّق من صحة التغييرات التي تمّ إجراؤها على قيمة الحقل قبل ضبطها.
ICopyData
MenuGenerator إما صفيف من خيارات القائمة أو دالة تنشئ صفيفًا من خيارات القائمة لحقل FieldDropdown أو لعناصره الفرعية.
MenuGeneratorFunction دالة تنشئ صفيفًا من خيارات القائمة لحقل FieldDropdown أو سلفه.
MenuOption خيار فردي في القائمة المنسدلة يمكن أن يكون إما السلسلة الثابتة separator لعنصر فاصل قائمة، أو مصفوفة لعناصر قائمة الإجراءات العادية. في الحالة الأخيرة، يكون العنصر الأول هو القيمة القابلة للقراءة (نص أو عنصر ImageProperties أو عنصر HTML)، والعنصر الثاني هو القيمة المحايدة من حيث اللغة.
ReturnEphemeralFocus

نوع البيان لإعادة التركيز إلى FocusManager عند إكمال عملية تدفق واجهة مستخدم مؤقتة (مثل مربّع حوار)

اطّلِع على FocusManager.takeEphemeralFocus للحصول على مزيد من التفاصيل.