يحتوي هذا المستودع على العقود الذكية الأساسية لبروتوكول Uniswap V3. للحصول على عقود ذات مستوى أعلى، راجع مستودع uniswap-v3-periphery.
يخضع هذا المستودع لبرنامج مكافآت الأخطاء Uniswap V3، وفقًا للشروط المحددة هنا.
لنشر هذا الرمز على شبكة اختبار محلية، يجب عليك تثبيت حزمة npm @uniswap/v3-core
واستيراد الرمز الثانوي للمصنع الموجود في @uniswap/v3-core/artifacts/contracts/UniswapV3Factory.sol/UniswapV3Factory.json
. على سبيل المثال:
import {
abi as FACTORY_ABI ,
bytecode as FACTORY_BYTECODE ,
} from '@uniswap/v3-core/artifacts/contracts/UniswapV3Factory.sol/UniswapV3Factory.json'
// deploy the bytecode
سيضمن هذا أنك تختبر نفس الكود الثانوي الذي تم نشره على الشبكة الرئيسية وشبكات الاختبار العامة، وسوف تتفاعل جميع أكواد Uniswap بشكل صحيح مع النشر المحلي الخاص بك.
تتوفر واجهات Uniswap v3 للاستيراد إلى العقود الذكية الصلبة عبر npm artifact @uniswap/v3-core
، على سبيل المثال:
import ' @uniswap/v3-core/contracts/interfaces/IUniswapV3Pool.sol ' ;
contract MyContract {
IUniswapV3Pool pool;
function doSomethingWithPool () {
// pool.swap(...);
}
}
الترخيص الأساسي لـ Uniswap V3 Core هو ترخيص مصدر الأعمال 1.1 ( BUSL-1.1
)، راجع LICENSE
. ومع ذلك، فإن بعض الملفات مرخصة بشكل مزدوج بموجب GPL-2.0-or-later
:
contracts/interfaces/
بموجب GPL-2.0-or-later
(كما هو موضح في رؤوس SPDX الخاصة بها)، راجع contracts/interfaces/LICENSE
contracts/libraries/
بموجب GPL-2.0-or-later
(كما هو موضح في رؤوس SPDX الخاصة بها)، راجع contracts/libraries/LICENSE
contracts/libraries/FullMath.sol
مرخصة بموجب MIT
(كما هو موضح في رأس SPDX الخاص بها)، راجع contracts/libraries/LICENSE_MIT
contracts/test
غير مرخصة (كما هو موضح في رؤوس SPDX الخاصة بها).