restate / v1.0.0

مرجع API

كل تصدير في @kkwaenggwari/restate 1.0، مع الوسائط والقيم المُعادة والسلوك.

في هذه الصفحةالتصديراتدوال المخزندوال المخزن المحفوظخيارات persistedRestateحقول الحالةrestateManager وscope.managerواجهة محوّل التخزين

التصديرات

يُستورد كل شيء من @kkwaenggwari/restate، على الويب وفي React Native.

التصديريعيديُستخدم لـ
restate(initial, updater | options?)خطّاف المخزنإنشاء مخزن مشترك في الذاكرة.
persistedRestate(initial, options)خطّاف المخزن المحفوظإنشاء مخزن يُستعاد ويُحفظ عبر التخزين.
useRestateScope(factory?)نتيجة دالة المصنع أو النطاقامتلاك مخازن في مكوّن؛ تُتلف بعد الإزالة.
createRestateScope()RestateScopeامتلاك مخازن خارج React؛ استدعِ destroy() في النهاية.
shallow(left, right)booleanمقارنة الاختيارات بعمق مستوى واحد.
batch(callback)نتيجة الاستدعاء الراجعإشعار المشتركين مرة واحدة بعد عدة تغييرات.
restateManagerRestateManagerانتظار بيانات البدء وتنفيذ عمليات جماعية على المخازن العامة.
createIndexedDBStorage(options?)RestateStorageإنشاء محوّل IndexedDB باسم قاعدة بيانات أو مخزن مخصّص.
createMMKVStorage(options?)RestateStorageإنشاء محوّل MMKV بمثيلك أو إعداداتك.

دوال المخزن

المخزن دالة تستدعيها كخطّاف، ولها هذه الدوال.

العضوالوصف
useStore()يعيد القيمة كاملة ويُعاد عرضه عند كل تغيير.
useStore(selector, isEqual?)يعيد الاختيار؛ ويُعاد عرضه حين يُبلغ isEqual (افتراضيًا Object.is) عن تغيير.
get()القيمة الحالية، من دون اشتراك.
set(value | updater)يستبدل القيمة أو يحسبها من السابقة. يُتجاهل بعد destroy().
reset()يستعيد القيمة الأولية المعرَّفة ويعيدها.
subscribe(listener)يستدعي listener(value, previous, event) بعد كل تغيير؛ ويعيد دالة لإلغاء الاشتراك.
subscribeSelector(selector, listener, isEqual?)يستدعي listener فقط حين يتغيّر الاختيار.
on(type, listener)يستمع إلى أحداث مثل change أو reset أو save أو error.
start() / stop() / isRunning()التحكم في updater يدويًا.
destroy() / isDestroyed()يحرّر المستمعين وupdater. وتطرح الاشتراكات اللاحقة STORE_DESTROYED.
getInitial() / getServerSnapshot() / getError()القيمة الأولية ولقطة الخادم وآخر خطأ لمستمع.
id / kindid فريد؛ memory أو persistent.

دوال المخزن المحفوظ

يعيد persistedRestate مخزنًا بهذه الأعضاء الإضافية.

العضوالوصف
readyPromise يُستوفى حين ينتهي التحميل التلقائي، حتى لو فشل. تحقّق من status().
save()يكتب القيمة الحالية؛ ويُستوفى بالقيمة التي كُتبت فعلًا.
restore()يقرأ القيمة المحفوظة إلى الذاكرة.
hasSaved()هل يوجد سجل محفوظ.
clearStorage()يحذف السجل المحفوظ؛ ولا تتغيّر الذاكرة.
resetAndClearStorage()يعيد الذاكرة إلى القيمة الأولية ويحذف السجل المحفوظ.
initialize()يحمّل مجددًا، مثلًا بعد إصلاح سجل فاشل.
status()لقطة مجمّدة للحالة؛ الكائن نفسه ما لم يتغيّر حقل.
useStatus(selector?, isEqual?)خطّاف يُعاد عرضه حين تتغيّر الحالة أو الجزء المختار منها.
key / storageKey / storageالمفتاح المنطقي، والمفتاح مع مساحة الاسم، والمحوّل المستخدم.

خيارات persistedRestate

key إلزامي. وكل الخيارات الأخرى اختيارية.

الخيارالافتراضيالمعنى
keyإلزاميالمفتاح المنطقي للسجل.
namespace"@kkwaenggwari/restate"بادئة المفتاح المحفوظ؛ والنص الفارغ يعطّلها.
storageIndexedDB / MMKVمحوّل يُستخدم بدل الافتراضي للمنصة.
autoSavefalseيحفظ true بعد كل تغيير؛ وينتظر { delayMs } توقّفًا.
version / migrate1 / لا شيءإصدار السجل وكيفية ترقية السجلات الأقدم.
validateلا شيءيتحقق من القيم قبل الحفظ وبعد الاستعادة أو الترحيل.
serializerJSONدوال serialize وdeserialize مخصّصة.
operationTimeoutMs30000أقصى مدة لعملية تخزين.
maxPendingOperations256العمليات المعلّقة المسموح بها، بما فيها النشطة.
maxStorageCharacters5242880أكبر قيمة مرمَّزة، بوحدات ترميز UTF-16.
updater / managed / serverSnapshot / onError—مثل خيارات restate.

حقول الحالة

تعيد status() وuseStatus() هذه الحقول.

الحقلالمعنى
readyانتهى التحميل التلقائي.
dirtyتختلف الذاكرة عن آخر قيمة حُمّلت أو حُفظت أو استُعيدت.
operationعملية التخزين الجارية، أو null.
pendingعمليات التخزين غير المنتهية، بما فيها النشطة.
blockedاستدعاء محوّل أُلغي أو انتهت مهلته ولم يُنهِ عمله بعد.
availableهل يمكن استخدام التخزين.
error / observerErrorآخر خطأ تخزين؛ وآخر خطأ لمستمع الحالة.
lastSavedAt / lastRestoredAtميلي ثانية epoch لآخر نجاح، أو null.

restateManager وscope.manager

يتتبّع كل مدير المخازن المحفوظة المسجّلة لديه.

العضوالوصف
readyينتظر المخازن المسجّلة لحظة الوصول؛ ويُرفض بـ BULK_OPERATION_FAILED.
saveAll(options?) / restoreAll(options?)ينفّذ save أو restore على كل مخزن؛ ويحدّ { concurrency } من العمل المتوازي.
clearStorageAll() / resetAll() / resetAllAndClearStorage()يمسح السجلات، أو يعيد ضبط الذاكرة، أو كليهما.
list() / get(idOrKey) / size()فحص المخازن المسجّلة.
subscribe(listener) / status()مراقبة أحداث المدير وأخطاء المستمعين.
destroyAll()يتلف كل مخزن مسجّل.

واجهة محوّل التخزين

مرّر في storage كائنًا بهذه الدوال. يمكن لكل دالة أن تعيد قيمة أو Promise.

الدالةالوصف
getItem(key, context?)تعيد النص المحفوظ أو null.
setItem(key, value, context?)تحفظ النص.
removeItem(key, context?)تحذف السجل.
isAvailable?()تُبلغ بشكل متزامن عمّا إذا كان التخزين قابلًا للاستخدام.
clear?() / close?()تفريغ وتنظيف اختياريان.
coordinationKey?كائن مشترك بين المغلِّفات التي تعتمد التخزين الأساسي نفسه.

البحث في التوثيق

ابحث في عناوين جميع الأدلة وأوصافها ونصوصها.