cryptofoundry

الاتصال بـ cryptofoundry

أخبرنا بما تريد بناءه أو أتمتته.

البريد الإلكتروني
[email protected]
ADAMANT Messenger
فتح في ADAMANT
adamant-api-jsclient

ADAMANT API JS Client v3.1.0

dev-adamant-imمن المسبك ↗

هذا الإصدار تحديث لمجموعة SDK متزامن مع ADAMANT Node v0.10.2. يُكمل واجهة Node API للقراءة فقط مع الأنواع، ويضيف اشتراكات مباشرة اختيارية للكتل والأرصدة، ويزامن DTOs الخاصة بالمفوّضين وحالة الشبكة مع المخطط الرسمي، ويُحدّث أدوات الحزمة.

إكمال واجهة Node API للقراءة فقط مع الأنواع

يُضيف هذا الإصدار getTopAccounts() مع خيارات limit وoffset وisDelegate ذات الأنواع، حيث يمكن استخدام limit: 0 للحصول على بيانات وصفية للعدد فقط. ويُكمل أنواع الخيارات للكتل والمفوّضين والبحث عن المفوّضين والإحصائيات والأقران والمعاملات المجمّعة والنطاقات الزمنية للمعاملات. ويُصدر الإصدار أسماء رمزية متفق عليها للتحقق من الإجماع وجداول التفعيل ذات الأنواع، ومراحل مكافآت الكتل، ومبالغ التفويض المُنتَجة طوال فترة الحياة. كما يوسّع فحوصات المستهلك المدمجة بحيث يتم التحقق من الطرق الجديدة وعقود الاستجابة من حزمة npm المبنية.

معالجة الاستعلامات الواعية بنقاط النهاية

تُقيّد مجموعة SDK الآن معاملات التحويل المباشر ومعاملات التحكم الأخرى بنقاط النهاية التي تدعمها. وتُزيل عناصر التحكم غير المدعومة المعروفة قبل إرسال الطلب بدلاً من السماح لها بأن تصبح مرشحات غير فعالة أو غير صالحة، مع الحفاظ على ترتيب محدد لسلسلة الاستعلام. ويُحذّر العميل عند وجود شروط مختلطة and / or تعتمد على نموذج تعبيرات SQL المسطح والحساس للترتيب في Node، ويُبقي مرشحات المبالغ محصورة في /api/transactions حيث يُطبّقها Node فعلياً.

اشتراكات حالة WebSocket للعميل

يُضيف هذا الإصدار اشتراكات اختيارية onNewBlock() لرؤوس مدمجة للكتل المُطبَّقة حديثاً، بالإضافة إلى اشتراكات onBalanceChange() للرصيد المؤكد أو الرصيد غير المؤكد أو كليهما. تُعامَل حمولات الرصيد كقيم مطلقة حالية وليست فروقات، ويُوثَّق التسليم الجزئي للحقول. وتُستعاد اشتراكات الكتل والأرصدة تلقائياً بعد إعادة الاتصال بنفس العقدة أو عقدة سليمة أخرى. وتُوجَّه أخطاء المعالجات عبر مسار .catch() الموجود، ويمكن إزالة المعالجات عبر .off(). هذه الأحداث إشعارات مباشرة بأفضل جهد وليست تدفقات متينة. ويجب على التطبيقات استعادة الحالة عبر REST بعد انقطاع الاتصال عندما تعتمد الصحة على السجل الكامل.

مزامنة DTOs الرسمية

أُعيد توليد أنواع API من Adamant-im/adamant-schema@f35b8ddb5597a8f1a80a3a670bedb003af65ef90. ويُضيف الإصدار consensusCodeName وconsensusSchedule وmilestoneSchedule إلى عقود حالة الشبكة، ويُضيف قيمة forged طوال فترة حياة المفوّض مع الحفاظ على شكل استجابة البحث عن المفوّضين المميز. ويُصحّح خاصية المفوّض المولَّدة producedlocks لتصبح خاصية وقت التشغيل producedblocks، ويُوثّق دلالات لقطات وتصفية المفوّض التالي والمفوّضين والأقران والمعاملات المجمّعة.

صيانة الحزمة والأدوات

تُعيَّن نسخة الحزمة إلى 3.1.0 وتُعلن Node.js >=22.12.0. يُحدَّث pnpm إلى 11.13.1 مع تحديث تبعيات وقت التشغيل والتطوير دون إضافة تبعيات مباشرة. ويُقلَّل الرسم البياني المُحلَّل لملف القفل من 886 إلى 876 مدخلاً للحزم. وتُوحَّد التنسيق مع Prettier 3.9، وتُستبعد أدلة وكيل الذكاء الاصطناعي المحلي والمحرر من المستودع. ويتم النشر عبر npm Trusted Publishing مع إثبات المصدر من GitHub Actions.

ملاحظات التوافق

تتطلب القدرات الجديدة لأفضل الحسابات وحالة الشبكة والمفوّضين والكتل وأحداث الأرصدة ADAMANT Node v0.10.2. ولم يتغير تخطيط بايت المعاملات ولا التجزئات ولا المعرّفات ولا التوقيعات ولا التشفير ولا التصدير الجذري ولا اختيار العقدة ولا إعادة المحاولة ولا سلوك التحوّل عند الفشل. ويتضمن الفرق 17 ملفاً تم تغييره مع 1,471 إدراجاً و513 حذفاً، ويغطي سجل v3.0.0..master الكامل لواجهة API ذات الأنواع وDTOs المولَّدة واشتراكات WebSocket والاختبارات والتوثيق وبيانات الإصدار وتحديث التبعيات.

التحقق

تم التحقق على Node.js 22.23.1 وpnpm 11.13.1. نجحت جميع الفحوصات: npm run compile وnpm run typecheck وnpm test (19 مجموعة و253 اختباراً ناجحاً) وnpm run lint وnpm run test:package (ESM وCommonJS والمستهلكون المباشرون ومسارات الحزمة الفرعية وتصريحات TypeScript) وnpm run api-types:check وnpm run metadata:check وnpm run docs:build وgit diff --check. وتتطابق أنواع API المولَّدة مع نسخة adamant-schema المثبّتة، وتتطابق بيانات محفظة metadata مع Adamant-im/adamant-wallets@54a820b6dc5e0ec77c3a6fbac91d2f7809a2f5b7.

تغييرات غير متوافقة

يتغير الحد الأدنى لمحرك الحزمة من Node.js >=22 إلى >=22.12.0. ويجب على عمليات النشر التي تُشغّل أيضاً ADAMANT Node v0.10.2 استخدام Node.js >=22.13.0 المطلوب من Node. ويجب على مستخدمي TypeScript الذين يستخدمون خاصية DelegateDto.producedlocks المكتوبة بخطأ الانتقال إلى producedblocks. وقد يحتاج المستهلكون الذين يُنشئون يدوياً DTOs المفوّضين أو حالة الشبكة المولَّدة إلى توفير الحقول المطلوبة حديثاً. ويجب على مستدعي TypeScript الذين مرّروا عناصر تحكم استعلام غير متوافقة مع نقطة النهاية استخدام نوع الخيار لنقطة النهاية المقصودة.