⚠️ إشعار مهم
ميزات محرر الأكواد
TypeScript IntelliSense
props المتاحة أثناء الكتابة. تلميحات أنواع الخصائص هي ميزة IntelliSense خاصة بالمحرر فقط لمساعدتك على كتابة القوالب — فهي ليست شيئًا تكتبه في القالب، ولا تعمل أبدًا على واجهة متجرك.
جسم القالب القابل للتحرير
القسم العام
الرأس (Header)
الخصائص المتاحة - القالب الكامل

cartQuantity
-
النوع:
string - الوصف: العدد الحالي للعناصر في السلة، منسّق كسلسلة نصية
- الاستخدام: عرض عدد عناصر السلة في تصميم الرأس المخصص لديك
closeHandler
-
النوع:
() => void - الوصف: دالة رد نداء تُغلق السلة عند تفعيلها
- الاستخدام: اربطها بالأزرار أو الأيقونات أو عناصر تفاعلية أخرى لإغلاق السلة
titleComponent
-
النوع:
React.ReactElement | null - الوصف: مكوّن عنوان مُعدّ مسبقًا لرأس السلة يتضمن التنسيق والترجمات الصحيحة
- الاستخدام: عرض عنوان السلة بناءً على إعدادات ضبط سلتك
قسم الجسم (Body)
الإعلانات
الخصائص المتاحة - القالب الكامل

announcementTemplate
-
النوع:
string - الوصف: محتوى HTML لرسالة الإعلان
- الاستخدام: عرض رسالة الإعلان في تنفيذاتك المخصصة
timer
-
النوع:
string - الوصف: قيمة المؤقت الحالية منسّقة كسلسلة نصية
- الاستخدام: عرض مؤقت العد التنازلي في تنفيذات الإعلانات المخصصة
shouldUseTimer
-
النوع:
boolean - الوصف: يشير إلى ما إذا كانت وظيفة المؤقت ممكّنة لهذا الإعلان
- الاستخدام: عرض المحتوى وعناصر التحكم المتعلقة بالمؤقت بشكل مشروط
isTimerExpiredAndShouldHide
-
النوع:
boolean - الوصف: يشير إلى ما إذا كان المؤقت قد انتهى ويجب إخفاء الإعلان
- الاستخدام: التحكم في ظهور الإعلان بأكمله بناءً على حالة المؤقت
المكافآت المتدرجة
الخصائص المتاحة - القالب الكامل

rewardsMessageHtml
-
النوع:
string - الوصف: محتوى HTML لرسالة المكافآت
- الاستخدام: عرض رسالة المكافآت بتنسيق غني في التنفيذات المخصصة
milestonesCompleted
-
النوع:
number - الوصف: عدد المراحل التي اكتملت
- الاستخدام: عرض عدد الإكمال أو حساب نسبة الإكمال
milestonesData
-
النوع:
- الوصف: بيانات الضبط الكاملة للمراحل والتقدم لنظام المكافآت
- الاستخدام: الوصول إلى معلومات المراحل ونسبة التقدم وإعدادات العرض
-
الخصائص:
milestonesToRender: مصفوفة من كائنات المراحل مع حالة الإكمال والتموضعprogressPercent: التقدم الحالي كنسبة مئوية (0-100)showMilestones: ما إذا كان يجب عرض علامات المراحلsettings: الضبط المرئي لعرض المراحل
الخصومات
TRIGGERED_REWARDS للتوافق مع أكواد القوالب المخصصة الموجودة.
الخصائص المتاحة - القالب الكامل
rules
-
النوع:
- الوصف: مصفوفة من قواعد الخصم الممكّنة حاليًا
- الاستخدام: عرض المكافآت المتاحة وعناوينها وأوصافها وما إذا كانت شروط كل قاعدة مستوفاة
-
الخصائص:
id: معرّف فريد لقاعدة المكافأةtitle: عنوان قاعدة الخصمdescription: وصف قاعدة المكافأةconditionsMet: ما إذا كانت شروط القاعدة مستوفاة حاليًا بواسطة السلة. استخدمها لبناء أنماط تجربة مستخدم مثل “لقد فتحت X” مقابل “أنفق $Y إضافية لفتح X”
showSection
-
النوع:
boolean - الوصف: يشير إلى ما إذا كان يجب عرض قسم Discounts
- الاستخدام: التحكم في ظهور وحدة Discounts بأكملها
onToggleSection
-
النوع:
() => void - الوصف: دالة رد نداء تبدّل حالة ظهور قسم Discounts
- الاستخدام: اربطها بأزرار أو عناصر تفاعلية للسماح للمستخدمين بإظهار/إخفاء قسم المكافآت
التوصيات
الخصائص المتاحة - قالب بطاقة التوصية

عناصر السلة
عرض مؤشر تحميل أثناء الإضافة إلى السلة أو تحديثات السلة: لا توفر وحدة Cart Items القياسية مؤشر تحميل “جارٍ الإضافة إلى السلة” مدمجًا. إذا أردت عرض حالة تحميل أثناء إضافة عنصر أو أثناء تنفيذ عملية على السلة، فاستخدم قالب Product tile واقرأ الخاصيتين
isLoading وloadingOperation (الموثقتين أدناه) لعرض مؤشر دوّار أو طبقة تراكب بشكل مشروط. تتطلب القوالب المخصصة خبرة تطوير — انظر الإشعار أعلى هذه الصفحة.الخصائص المتاحة - قالب بطاقة المنتج
إذا أردت استخدام كود مخصص في أي من تلك القوالب، يجب عليك إيقاف قالب Product Tile.

title
-
النوع:
string - الوصف: عنوان/اسم المنتج
- الاستخدام: عرض اسم المنتج الرئيسي في عناصر السلة
variant
-
النوع:
React.ReactNode - الوصف: مكوّن معلومات الخيار مُعدّ مسبقًا
- الاستخدام: عرض تفاصيل الخيار كمكوّن React
properties
-
النوع:
React.ReactNode - الوصف: مكوّن خصائص المنتج مُعدّ مسبقًا
- الاستخدام: عرض خصائص المنتج ومعلومات الاشتراك كمكوّن React
bundle
-
النوع:
React.ReactNode - الوصف: مكوّن تفاصيل الحزمة مُعدّ مسبقًا
- الاستخدام: عرض معلومات الحزمة كمكوّن React
compareAtPrice
-
النوع:
string | undefined - الوصف: سعر المقارنة المنسّق (السعر الأصلي)
- الاستخدام: عرض السعر الأصلي للعناصر المخفّضة
price
-
النوع:
string - الوصف: السعر الحالي المنسّق
- الاستخدام: عرض سعر العنصر الحالي
savings
-
النوع:
string | undefined - الوصف: مبلغ الوفورات المنسّق
- الاستخدام: عرض مقدار ما يوفره العميل
imageUrl
-
النوع:
string | undefined - الوصف: رابط صورة المنتج
- الاستخدام: عرض صورة المنتج
productUrl
-
النوع:
string | undefined - الوصف: رابط صفحة المنتج
- الاستخدام: الربط بصفحة تفاصيل المنتج
quantity
-
النوع:
number - الوصف: كمية العنصر الحالية في السلة
- الاستخدام: عرض كمية العنصر وإدارتها
showQuantitySelector
-
النوع:
boolean - الوصف: ما إذا كان يجب عرض عناصر التحكم بالكمية
- الاستخدام: عرض محدد الكمية بشكل مشروط
discountCodes
-
النوع:
string[] | undefined - الوصف: مصفوفة أكواد الخصم المطبّقة على هذا العنصر
- الاستخدام: عرض الخصومات الخاصة بالعنصر
subscription
-
النوع:
- الوصف: كائن إدارة اشتراك كامل مع بيانات الترقية وخطط البيع ودوال المعالجة
- الاستخدام: إدارة وظائف الاشتراك
-
يحتوي كائن الاشتراك على:
-
subscriptionUpgradeData: معلومات الترقية (null إذا لم تتوفر ترقية)
buttonText: نص زر الترقيةdefaultSellingPlanId: معرّف خطة البيع الافتراضية للترقيات
-
sellingPlansData: خيارات خطط البيع المتاحة (null إذا لم توجد خطط)
sellingPlanGroups: مصفوفة مجموعات الخطط مع خطط البيع الخاصة بهاactiveSellingPlanId: معرّف خطة البيع المحددة حاليًاoneTimePurchaseText: نص خيار الشراء لمرة واحدة (null إذا لم يكن متاحًا)
- upgradeSellingPlan: دالة للترقية إلى خطة بيع محددة
- changeSellingPlan: دالة لتغيير خطة البيع الحالية
- getSellingPlanGroupText: دالة مساعدة لتنسيق نص عرض خطة البيع
-
subscriptionUpgradeData: معلومات الترقية (null إذا لم تتوفر ترقية)
onIncrease
-
النوع:
() => void - الوصف: دالة لزيادة كمية العنصر
- الاستخدام: معالجة إجراءات زيادة الكمية
onDecrease
-
النوع:
() => void - الوصف: دالة لتقليل كمية العنصر
- الاستخدام: معالجة إجراءات تقليل الكمية
onDeleteProduct
-
النوع:
() => void - الوصف: دالة لإزالة العنصر من السلة
- الاستخدام: معالجة إزالة العنصر
onQuantityChange
-
النوع:
(quantity: string) => void - الوصف: دالة لمعالجة الإدخال المباشر للكمية
- الاستخدام: معالجة تغييرات الكمية اليدوية
handleInputChange
-
النوع:
(e: React.ChangeEvent<HTMLInputElement>) => void - الوصف: معالج تغيير الإدخال لحقل الكمية
- الاستخدام: معالجة تغييرات حقل إدخال الكمية
replaceItemWithVariant
-
النوع:
(variantId: string) => Promise<{ success: boolean }> - الوصف: دالة لاستبدال العنصر بخيار مختلف
- الاستخدام: معالجة تبديل الخيارات
isLoading
-
النوع:
boolean - الوصف: حالة التحميل لعمليات السلة
- الاستخدام: عرض مؤشرات التحميل
loadingOperation
-
النوع:
'increase' | 'decrease' | 'inputChange' | 'remove' | 'subscription' | undefined - الوصف: العملية المحددة قيد التحميل حاليًا
- الاستخدام: عرض حالات تحميل خاصة بكل عملية
setLoadingOperation
-
النوع:
(op: "increase" | "decrease" | "inputChange" | "remove" | "subscription" | undefined) => void - الوصف: دالة لضبط حالة عملية التحميل
- الاستخدام: إدارة حالات التحميل للعمليات المختلفة
rawItem
-
النوع:
CartItem(راجع نوعCartItemأدناه) - الوصف: بيانات عنصر السلة الخام التي تحتوي على جميع المعلومات
الخصائص المتاحة - قالب Variant

item
-
النوع:
CartItem(راجع نوعCartItemأدناه) - الوصف: بيانات عنصر السلة الخام التي تحتوي على معلومات الخيار
- الاستخدام: الوصول إلى تفاصيل الخيار من عنصر السلة
الخصائص المتاحة - قالب Properties

productProperties
-
النوع:
{ key: string; value: string; isUrl?: boolean; }[] - الوصف: مصفوفة خصائص المنتج (الحقول المخصصة وخصائص عناصر السلة)
subscriptionLabel
-
النوع:
string | undefined - الوصف: تسمية معلومات الاشتراك
الخصائص المتاحة - قالب Bundle

getSizedImageUrl
-
النوع:
getSizedImageUrl: ({ src, width, height }: SizedImageParams) => string - الوصف: دالة مساعدة للحصول على روابط صور بأحجام صحيحة
item
-
النوع:
-
الوصف: معلومات عنصر الحزمة بما في ذلك المكوّنات.
itemComponentsمصفوفة من كائنات المكوّنات — مرّ عليها (map) لعرض كل مكوّن مضمّن في الحزمة.
showDetailsText
-
النوع:
string | undefined - الوصف: نص إجراء “عرض التفاصيل”
- الاستخدام: عرض نص زر التوسيع
hideDetailsText
-
النوع:
string | undefined - الوصف: نص إجراء “إخفاء التفاصيل”
isExpanded
-
النوع:
boolean - الوصف: ما إذا كانت تفاصيل الحزمة موسّعة
toggleCollapsible
-
النوع:
() => void - الوصف: دالة لتبديل ظهور تفاصيل الحزمة
- الاستخدام: معالجة إجراءات التوسيع/الطي
chevronDownIconComponent
-
النوع:
React.ReactElement - الوصف: أيقونة سهم مُعدّة مسبقًا للتوسيع/الطي
- الاستخدام: عرض مؤشر توسيع/طي متسق
الخصائص المتاحة - قالب Price

compareAtPrice
-
النوع:
string | undefined - الوصف: سعر المقارنة المنسّق (السعر الأصلي)
- الاستخدام: عرض السعر الأصلي للعناصر المخفّضة
price
-
النوع:
string - الوصف: السعر الحالي المنسّق
- الاستخدام: عرض سعر العنصر الحالي
savings
-
النوع:
string | undefined - الوصف: مبلغ الوفورات المنسّق
- الاستخدام: عرض مقدار ما يوفره العميل
خصائص كائن CartItem
CartItem على جميع المعلومات التفصيلية حول عنصر السلة. يتوفر هذا الكائن كـ props.rawItem في قالب Product Tile وكـ props.item في قالب Variant.
التعريف الأساسي
-
key (string)- معرّف فريد لعنصر السلة هذا. -
id (number)- معرّف الخيار (حقل قديم، استخدم variant_id بدلاً منه) -
variant_id (number)- معرّف خيار Shopify لهذا العنصر -
product_id (number)- معرّف منتج Shopify -
lineIdxFrom1 (number)- فهرس هذا العنصر بدءًا من 1 في السلة الأصلية قبل التعديلات
معلومات المنتج
-
title (string)- عنوان عنصر السلة (عادةً عنوان الخيار) -
product_title (string)- عنوان المنتج الرئيسي -
handle (string)- معرّف رابط المنتج (مثل “camp-stool”) -
vendor (string)- اسم بائع/علامة المنتج -
product_type (string)- فئة/نوع المنتج لأغراض الضرائب -
sku (string)- معرّف وحدة إدارة المخزون -
product_description (string)- الوصف الكامل للمنتج -
product_has_only_default_variant (boolean)- ما إذا كان للمنتج خيار واحد فقط
التسعير (جميع الأسعار بالسنتات)
-
quantity (number)- عدد هذا العنصر في السلة -
price (number)- سعر الوحدة قبل الخصومات -
original_price (number)- نفس price -
discounted_price (number)- سعر الوحدة بعد الخصومات على مستوى المنتج -
compare_at_price (number | null)- سعر المقارنة (MSRP). ملاحظة: هذا الحقل مضاف بواسطة Upcart، وليس مقدمًا من واجهة برمجة تطبيقات سلة Shopify -
final_line_price (number)- السعر الإجمالي بعد الخصومات على مستوى المنتج (quantity × discounted_price) -
original_line_price (number)- السعر الإجمالي قبل الخصومات (quantity × price) -
line_price (number)- السعر الإجمالي بعد جميع الخصومات -
final_price (number)- مهمل - سعر الوحدة بعد خصومات المنتج (لا يأخذ الكمية في الحسبان) -
total_discount (number)- نفس line_level_total_discount -
line_level_total_discount (number)- إجمالي مبلغ الخصم المطبّق على عنصر السلة هذا
الوسائط والروابط
-
image (string)- رابط صورة المنتج الرئيسية -
url (string)- مسار الرابط النسبي لصفحة المنتج (مثل “/products/camp-stool?variant=42789611372803”) -
featured_image (object | null)- تفاصيل الصورة المميزة:alt (string)- النص البديل للصورةaspect_ratio (number)- نسبة أبعاد الصورةheight (number)- ارتفاع الصورة بالبكسلurl (string)- رابط الصورةwidth (number)- عرض الصورة بالبكسل
الخيارات (Variants & Options)
-
variant_title (string | null)- عنوان الخيار (مثل “Large / Red”) -
variant_options (string[])- مصفوفة قيم خيارات المنتج -
options_with_values (Array)- معلومات الخيارات التفصيلية:name (string)- اسم الخيار (مثل “Size”)value (string)- قيمة الخيار (مثل “Large”)
-
untranslated_product_title (string | undefined)- عنوان المنتج الأصلي قبل الترجمة (في استجابات تعديل السلة فقط) -
untranslated_variant_title (string | undefined)- عنوان الخيار الأصلي قبل الترجمة (في استجابات تعديل السلة فقط)
الخصائص المخصصة والبيانات الوصفية
-
properties (Record<string, any> | null)- خصائص عنصر السلة المخصصة، أوnullعندما لا يملك العنصر أيًا منها — تحقق قبل قراءة أي مفتاح. الخصائص التي تبدأ مفاتيحها بـ__مخفية دائمًا عن العملاء؛ والمفاتيح التي تبدأ بشرطة سفلية واحدة_مخفية أيضًا عند تشغيل إعداد السلة Hide properties starting with single underscore ”_”. -
gift_card (boolean)- ما إذا كان هذا العنصر بطاقة هدية -
taxable (boolean)- ما إذا كان هذا العنصر خاضعًا للضريبة -
requires_shipping (boolean)- ما إذا كان هذا العنصر يتطلب شحنًا -
grams (number)- وزن العنصر بالجرامات
الخصومات والعروض الترويجية
-
discounts (Array)- معلومات خصم مبسّطة:amount (number)- مبلغ الخصم بالسنتاتtitle (string)- عنوان/اسم الخصم
-
line_level_discount_allocations (Array)- معلومات تخصيص الخصم التفصيلية:-
amount (number)- مبلغ الخصم بالسنتات -
discount_application (object)- تفاصيل تطبيق الخصم الكاملة:allocation_method (string)- كيفية تخصيص الخصمcreated_at (string)- وقت إنشاء الخصمdescription (string | null)- وصف الخصمkey (string)- معرّف مفتاح الخصمtarget_selection (string)- ما يستهدفه الخصمtarget_type (string)- نوع الهدفtitle (string)- عنوان الخصمtotal_allocated_amount (number)- إجمالي المبلغ المخصصtype ('discount_code' | '')- نوع الخصم (سلسلة فارغة للخصومات التلقائية)value (string)- قيمة الخصمvalue_type (string)- كيفية تطبيق القيمة
-
منتجات الحزم
-
has_components (boolean | undefined)- ما إذا كان هذا العنصر حزمة تحتوي على منتجات أخرى (في استجابات GET للسلة فقط) -
item_components (Array | null | undefined)- تفاصيل مكوّنات الحزمة:-
quantity (number)- كمية هذا المكوّن -
image (object)- صورة المكوّن:url (string)- رابط الصورةheight (number | null)- ارتفاع الصورةwidth (number | null)- عرض الصورةalt (string)- النص البديل
-
-
product (object)- معلومات منتج المكوّن:title (string)- عنوان المنتجhas_only_default_variant (boolean)- ما إذا كان للمنتج الخيار الافتراضي فقط
-
variantTitle (string)- عنوان خيار المكوّن
قواعد العمل
-
quantity_rule (object | undefined)- قيود الكمية (في استجابات GET للسلة فقط):min (number)- الحد الأدنى للكمية المسموح بهاmax (number | null)- الحد الأقصى للكمية المسموح بها (null = بلا حد)increment (number)- خطوة زيادة الكمية
معلومات الاشتراك
-
selling_plan_allocation (object | undefined)- تفاصيل الاشتراك/خطة البيع:-
price (number)- سعر الاشتراك بالسنتات -
compare_at_price (number | null)- سعر المقارنة للاشتراك -
per_delivery_price (number)- السعر لكل تسليم -
selling_plan (object)- تفاصيل خطة البيع:-
id (number)- معرّف خطة البيع -
name (string)- اسم الخطة -
description (string)- وصف الخطة -
options (Array)- خيارات الخطة:name (string)- اسم الخيارposition (number)- موضع الخيارvalue (string)- قيمة الخيار
-
recurring_deliveries (boolean)- ما إذا كانت الخطة تتضمن تسليمات متكررة
-
-
بيانات التكامل الوصفية
-
__appIntegrated (object | undefined)- بيانات تكامل التطبيقات الخارجية:app ('stay.ai')- معرّف التطبيق المتكاملbundleRole ('parent' | 'child')- الدور في بنية الحزمة
عروض البيع الإضافي (Upsells)
الخصائص المتاحة - قالب بطاقة البيع الإضافي

itemUrl
-
النوع:
string - الوصف: رابط صفحة المنتج
- الاستخدام: إنشاء روابط لصفحة تفاصيل المنتج لتحسين تنقل المستخدم
imageUrl
-
النوع:
string | undefined - الوصف: رابط صورة المنتج
- الاستخدام: عرض صور المنتجات في تنفيذات البيع الإضافي المخصصة
- البديل الاحتياطي: تعامل مع القيم undefined بسلاسة باستخدام صور بديلة
description
-
النوع:
string - الوصف: وصف المنتج
- الاستخدام: عرض وصف المنتج في تنفيذات البيع الإضافي المخصصة
altText
-
النوع:
string - الوصف: النص البديل لصورة المنتج لأغراض إمكانية الوصول
- الاستخدام: توفير دعم قارئات الشاشة وتحسين الامتثال لإمكانية الوصول
productId
-
النوع:
string - الوصف: المعرّف الفريد للمنتج
- الاستخدام: تتبع المنتجات أو تنفيذ التحليلات أو الاستخدام في وظيفة الإضافة إلى السلة
productTitle
-
النوع:
string - الوصف: عنوان/اسم المنتج
- الاستخدام: عرض اسم المنتج في تنفيذات البيع الإضافي المخصصة
oldPrice وnewPrice
-
النوع:
string | null(oldPrice)،string(newPrice) - الوصف: سعر المقارنة والسعر الحالي منسّقين
- الاستخدام: عرض معلومات التسعير مع مؤشرات التخفيض
isSingleVariant
-
النوع:
boolean - الوصف: يشير إلى ما إذا كان للمنتج خيار واحد فقط
- الاستخدام: عرض عناصر واجهة اختيار الخيارات بشكل مشروط
productOptions
-
النوع:
{ name: string; position: 1 | 2 | 3; values: string[]; }[] - الوصف: ضبط خيارات المنتج الكامل بما في ذلك جميع الاختيارات المتاحة
- الاستخدام: الوصول إلى معلومات خيارات المنتج التفصيلية لواجهة اختيار خيارات متقدمة
variantOptions
-
النوع:
{ label: string; value: string }[] - الوصف: خيارات المنتج المتاحة
- الاستخدام: إنشاء قوائم منسدلة أو أزرار لاختيار الخيارات
- البنية: يحتوي كل خيار على تسمية عرض ومعرّف قيمة فريد
selectedVariantId وselectedVariantLabel
- النوع: string (selectedVariantId)، string | undefined (selectedVariantLabel)
- الوصف: معرّف الخيار المحدد حاليًا وتسمية عرضه
- الاستخدام: تتبع معلومات الخيار المحدد وعرضها
onVariantChange
-
النوع:
(variantId: string) => void - الوصف: دالة لمعالجة تغييرات اختيار الخيار
- الاستخدام: تحديث الخيار المحدد عندما يقوم المستخدم بالاختيار
onAddClick
-
النوع:
(productId: string, variantId?: string) => void - الوصف: دالة لمعالجة إضافة المنتج إلى السلة
- الاستخدام: تنفيذ وظيفة الإضافة إلى السلة مع تحديد المنتج والخيار بشكل صحيح
rating وreviewCount
-
النوع:
number | undefined(rating)،string | undefined(reviewCount) - الوصف: تقييم المنتج ونص عدد التقييمات المنسّق
- الاستخدام: عرض الدليل الاجتماعي ومؤشرات جودة المنتج
addLoading وaddButtonText
-
النوع:
boolean(addLoading)،string(addButtonText) - الوصف: حالة التحميل لإجراء الإضافة إلى السلة ونص الزر
- الاستخدام: تقديم ملاحظات للمستخدم أثناء عمليات السلة وتخصيص نص الزر
cartItemsCount
-
النوع:
number - الوصف: العدد الحالي للعناصر في السلة
- الاستخدام: عرض حالة السلة أو تنفيذ منطق قائم على السلة
الملاحظات الإضافية
الخصائص المتاحة - القالب الكامل

cartNote
-
النوع:
string - الوصف: محتوى ملاحظة السلة الحالي الذي أدخله العميل
- الاستخدام: عرض نص ملاحظة السلة وإدارته في التنفيذات المخصصة
notesPlaceholder
-
النوع:
string - الوصف: النص البديل لحقل إدخال الملاحظات
- الاستخدام: تقديم إرشادات للعملاء حول ما يجب تضمينه في ملاحظاتهم
notesTitle
-
النوع:
string - الوصف: نص عنوان/رأس قسم الملاحظات
- الاستخدام: عرض عنوان القسم في تنفيذات الملاحظات المخصصة
chevronDownIconComponent
-
النوع:
React.ReactElement - الوصف: مكوّن أيقونة سهم مُعدّ مسبقًا لوظيفة التوسيع/الطي
- الاستخدام: عرض مؤشرات توسيع/طي متسقة في التنفيذات المخصصة
loadingIndicatorComponent
-
النوع:
React.ReactElement | null - الوصف: مكوّن مؤشر تحميل مُعدّ مسبقًا للعمليات غير المتزامنة
- الاستخدام: عرض حالات التحميل أثناء عمليات حفظ الملاحظات
handleCartNoteChange
-
النوع:
(newCartNote: string) => void - الوصف: دالة لمعالجة تغييرات محتوى ملاحظة السلة
- الاستخدام: تحديث ملاحظة السلة عندما يعدّل المستخدم النص
isExpanded
-
النوع:
boolean - الوصف: يشير إلى ما إذا كان قسم الملاحظات موسّعًا حاليًا
- الاستخدام: التحكم في ظهور منطقة إدخال الملاحظات
toggleCollapsible
-
النوع:
() => void - الوصف: دالة لتبديل حالة التوسيع/الطي لقسم الملاحظات
- الاستخدام: اربطها بأزرار أو عناصر تفاعلية للتحكم في ظهور القسم
الإضافات (Add-ons)
الخصائص المتاحة - القالب الكامل

addonProduct
-
النوع:
- الوصف: معلومات منتج الإضافة الكاملة بما في ذلك تفاصيل المنتج وتسعير الخيار وبيانات الصورة
- الاستخدام: الوصول إلى جميع معلومات المنتج اللازمة لعرض منتجات الإضافات
-
البنية: يحتوي على كائنات متداخلة للمنتج والخيار والصورة مع بيانات منتج شاملة
-
خصائص كائن المنتج
addonProduct.product- id: معرّف رقمي فريد للمنتج
- title: اسم عرض منتج الإضافة
- description: محتوى وصف HTML للمنتج
-
خصائص كائن الخيار
- id: معرّف رقمي فريد للخيار
- price: السعر الحالي بالسنتات
- compare_at_price: السعر الأصلي بالسنتات (null إذا لم يوجد سعر مقارنة)
-
خصائص كائن الصورة
- src: رابط صورة المنتج
- alt: النص البديل للصورة (لإمكانية الوصول)
-
خصائص كائن المنتج
toggle
-
النوع:
- الوصف: حالة عنصر التحكم بالتبديل ومعالجاته لتمكين/تعطيل الإضافة
- الاستخدام: تنفيذ وظيفة تبديل تفاعلية لاختيار الإضافات
- الحالات: ثلاث حالات ممكنة - enabled وdisabled وloading
- المعالجات: دوال منفصلة لإجراءات التمكين والتعطيل
moneyFormat
-
النوع:
string - الوصف: سلسلة تنسيق العملة المستخدمة لتنسيق الأسعار
- الاستخدام: مرّرها إلى دالة formatMoney لعرض عملة متسق
formatMoney
-
النوع:
- الوصف: دالة مساعدة لتنسيق قيم العملة
- الاستخدام: تنسيق الأسعار بشكل متسق مع إعدادات عملة المتجر
- المعاملات: تأخذ قيمة السنتات، وسلسلة تنسيق اختيارية، وخيار إزالة HTML
أكواد الخصم
الخصائص المتاحة - القالب الكامل

indicator
-
النوع:
'validating' | 'invalid' | 'none' - الوصف: حالة التحقق الحالية لإدخال كود الخصم
- الاستخدام: عرض ملاحظات واجهة مناسبة بناءً على حالة التحقق
-
الحالات:
validating: الكود قيد المعالجة/التحققinvalid: فشل التحقق من الكودnone: لا توجد حالة تحقق (افتراضي/خامل)
discountCodeInput
-
النوع:
string - الوصف: القيمة الحالية لحقل إدخال كود الخصم
- الاستخدام: عرض نص كود الخصم الذي أدخله المستخدم وإدارته
discountCodePlaceholder
-
النوع:
string - الوصف: النص البديل لحقل إدخال كود الخصم
- الاستخدام: تقديم إرشادات للمستخدمين حول ما يجب إدخاله في الحقل
discountCodeButtonText
-
النوع:
string - الوصف: النص المعروض على زر التطبيق/الإرسال
- الاستخدام: تخصيص نص زر إرسال كود الخصم
setDiscountCodeInput
-
النوع:
(value: string | ((prev: string) => string)) => void - الوصف: دالة لتحديث قيمة إدخال كود الخصم
- الاستخدام: معالجة تغييرات إدخال المستخدم في حقل كود الخصم
handleSubmit
-
النوع:
(e: React.FormEvent<HTMLFormElement>) => void - الوصف: دالة لمعالجة إرسال النموذج لتطبيق كود الخصم
- الاستخدام: معالجة التحقق من كود الخصم وتطبيقه
- الحدث: يعالج أحداث إرسال النموذج
ملخص السلة
الخصائص المتاحة - القالب الكامل

totalSavingsText
-
النوع:
string - الوصف: تسمية نصية لقسم إجمالي الوفورات
- الاستخدام: عرض تسمية الوفورات في تنفيذات ملخص السلة المخصصة
discountApplications
-
النوع:
- الوصف: مصفوفة أكواد الخصم المطبّقة والخصومات التلقائية
- الاستخدام: عرض جميع الخصومات النشطة مع عناوينها وأنواعها
- البنية: يحتوي كل خصم على مفتاح فريد وعنوان عرض ومعرّف نوع
cartTotalDiscount
-
النوع:
number - الوصف: إجمالي مبلغ الخصم بالسنتات
- الاستخدام: الوصول إلى قيمة الخصم الخام للحسابات أو التنسيق المخصص
showCartTotalDiscount
-
النوع:
boolean -
الوصف: يشير إلى ما إذا كان يجب عرض إجمالي الخصم. مُعلَّم كمهمل لصالح
showTotalSavings، لكن راجع الملاحظة أدناه — داخل القالب المخصص هذه لا تزال الخاصية المتوفرة لديك. - الاستخدام: عرض معلومات الخصم بشكل مشروط بناءً على الإعدادات
formattedCartTotalDiscount
-
النوع:
string -
الوصف: سلسلة HTML منسّقة مسبقًا لإجمالي مبلغ الخصم. مُعلَّمة كمهملة لصالح
formattedTotalSavings، لكن راجع الملاحظة أدناه. - الاستخدام: عرض مبلغ الخصم منسّقًا بشكل صحيح مع رموز العملة
isRemovingDiscount
-
النوع:
boolean - الوصف: يشير إلى ما إذا كانت عملية إزالة خصم قيد التنفيذ
- الاستخدام: عرض حالات التحميل أثناء إزالة الخصم
handleRemoveDiscount
-
النوع:
() => Promise<void> - الوصف: دالة لمعالجة إزالة كود الخصم
- الاستخدام: إزالة أكواد الخصم المطبّقة من السلة
totalCompareAtPrice
-
النوع:
number - الوصف: مجموع أسعار المقارنة الإجمالي (جميع العناصر في السلة)
- الاستخدام: حساب وعرض الوفورات أو معلومات التسعير الأصلية
totalAfterAllDiscounts
-
النوع:
number - الوصف: إجمالي السلة النهائي بالسنتات بعد تطبيق جميع الخصومات
- الاستخدام: عرض السعر النهائي الذي سيدفعه العملاء
originalTotalPrice
-
النوع:
number - الوصف: إجمالي السلة الأصلي بالسنتات قبل أي خصومات
- الاستخدام: عرض التسعير الأصلي للشفافية وحساب الوفورات
cartItemCount
-
النوع:
number - الوصف: إجمالي عدد العناصر في السلة
- الاستخدام: عرض معلومات عدد العناصر في ملخصات السلة
شارات الثقة
الخصائص المتاحة - القالب الكامل
showBadge
-
النوع:
boolean - الوصف: يشير إلى ما إذا كان يجب عرض شارة الثقة
- الاستخدام: التحكم في ظهور شارات الثقة بناءً على إعدادات الوحدة
badgeUrl
-
النوع:
string - الوصف: رابط صورة شارة الثقة المراد عرضها
- الاستخدام: رابط مصدر صورة شارة الثقة في التنفيذات المخصصة