الحزم
@lia-labs/sdk
نسخ الصفحة
الـ Lia SDK للتطبيقات التي تحتوي على خطوة بناء. كل ميزة كاستيراد مُعرَّف، قابل للقص، مع نفس التحقق والأكواد الخطأ كما في العلامة النصية، وحالة يمكنك مراقبتها.
npm install @lia-labs/sdk#ابدأ
import { init, isLia, mockLia, ready } from '@lia-labs/sdk';
if (!isLia()) mockLia(); // building in a desktop browser
const me = await init();
render(me);
ready();init(options?) يُحدث Lia مرة واحدة ويُجيب بنفس النتيجة كما في Lia.init(); إذا تم استدعاؤه مرة أخرى، يُعيد النتيجة الأولى. كما أنه:
- يحتفظ بال
--lia-*متغيرات CSS الحالي على صفحتك (إيقافه باستخدام{ cssVars: false }, أو استدعاءbindCssVars()نفسك)، - يحدد صفحتك's
langوdirمن الشخص'لغته (أطفئها بـ{ documentLanguage: false }), - يحتفظ بال SDK's الحالة الحالي من Lia'الفعاليات.
#من علامة السكربت إلى الاستيراد
كل ما في علامة البرنامج النصي's Lia الكائن هو تصدير مسمى هنا، مع نفس المعلمات، الإجابات وأكواد الأخطاء. استورد فقط ما تحتاجه؛ يتم استبعاد الباقي من حجم حزمة التطبيق.
| علامة السكربت | @lia-labs/sdk |
|---|---|
Lia.init(), Lia.ready(), Lia.session(), Lia.close() | init(), ready(), session(), close() |
Lia.pay(id, opts), Lia.charges(), Lia.onCharge(fn) | pay(id, opts), charges(), onCharge(fn) |
Lia.showAd(opts) وإشاراته السريعة، Lia.onAd(fn) | showAd(opts), showRewardedAd(), showRewardedInterstitialAd(), showInterstitialAd(), onAd(fn) |
Lia.showBanner(opts), Lia.hideBanner(), Lia.banner, Lia.onBanner(fn), Lia.showNativeAd(opts), Lia.hideNativeAd(), Lia.nativeAd, Lia.onNativeAd(fn) | showBanner(opts), hideBanner(), banner, onBanner(fn), showNativeAd(opts), hideNativeAd(), nativeAd, onNativeAd(fn); أيضًا holdBanner(position), والتي تظهر واحدة حتى يتم استدعاء الدالة التي ترجعها |
Lia.requestNotifications() | requestNotifications() |
Lia.inviteFriend(opts), Lia.inviteLink(p), Lia.share(text) | inviteFriend(opts), inviteLink(p), share(text) |
Lia.confirm, Lia.showPopup, Lia.showAlert, Lia.showConfirm, Lia.toast | نفس الأسماء |
Lia.expand(), Lia.requestFullscreen(), Lia.exitFullscreen() | نفس الأسماء |
Lia.enableExpand() … Lia.disableClosingConfirmation() | نفس الأسماء |
Lia.setBackgroundColor(c), Lia.setHeaderColor(c) | نفس الأسماء |
Lia.mainButton, Lia.secondaryButton, Lia.backButton, Lia.settingsButton | mainButton, secondaryButton, backButton, settingsButton |
Lia.haptic, Lia.scanQr, Lia.copyText, Lia.readClipboard, Lia.openLink, Lia.openLiaLink | نفس الأسماء |
Lia.submitScore, Lia.leaderboard | نفس الأسماء |
Lia.cloudStorage, Lia.deviceStorage, Lia.secureStorage, Lia.biometric | نفس الأسماء |
Lia.accelerometer, Lia.gyroscope, Lia.deviceOrientation | نفس الأسماء، مع reading و isStarted إلى ما |
Lia.on(event, fn), Lia.off, Lia.onPause, Lia.onResume | on(event, fn), off, once, onAny, onPause, onResume |
Lia.language, Lia.theme, Lia.viewport والخصائص الأخرى | language.get(), themeParams.get(), viewport.get() والباقي |
كل طريقة'س المحادثات، والإجابات والأخطاء في مرجع SDK.
#حالة المشاهدة
import { colorScheme, language, viewport } from '@lia-labs/sdk';
language.get(); // "en"
const stop = colorScheme.subscribe((scheme, previous) => repaint(scheme));
viewport.subscribe(({ height }) => resizeCanvas(height));مستمع يسمع التغييرات فقط (أبداً عند الاشتراك) و subscribe يعيد إرجاع دالة توقفه الخاصة. يمكنك إنشاء دالة خاصة بك باستخدام signal(initial) و computed(sources, fn).
#الأزرار
تعمل الأزرار كما في علامة السكربت، وتُخبرك أيضًا بحالتها:
import { mainButton } from '@lia-labs/sdk';
mainButton.setParams({ text: 'Buy for 5 LIA', isVisible: true });
const stop = mainButton.onClick(buy);
mainButton.state.subscribe((s) => console.log(s.isProgressVisible));setParams تتلقى camelCase أسماء: text, color, textColor, isVisible, isActive, isProgressVisible, hasShineEffect, position. onClick يعيد إرجاع دالة توقف الاستماع. backButton.isVisible و settingsButton.isVisible يمكن مراقبته أيضًا.
لعرض زر فقط أثناء وجود جزء من صفحتك على الشاشة، controlBottomButton(button, options) و controlHeaderButton(button, onClick) يمنح لك update(…) و dispose() (إخفاء يخفيه). تستخدم هذه الإطارات.
#الأخطاء
كل فشل هو LiaError مع code, نفس الشفرات كما في علامة السكربت. isLiaError(error, 'cancelled') يتحقق من واحد.
import { isLiaError, pay } from '@lia-labs/sdk';
try {
await pay('extra-lives', { idempotencyKey: orderId });
} catch (error) {
if (isLiaError(error, 'cancelled')) return;
throw error;
}يتم التحقق من الخيارات قبل أن يصل أي شيء إلى Lia، ويتم رفض الوعود (أو رميها، للحالات القليلة التي لا تفعل ذلك)'لإرجاع واحد).
#بدون مُعَدِّل
الحزمة تحتوي أيضًا على بناء سكريبت يضع كل شيء على window.liaSdk:
<script src="https://unpkg.com/@lia-labs/sdk/dist/index.global.js"></script>
<script>
liaSdk.init().then(function (me) { liaSdk.ready(); });
</script>استخدم هذا أو العلامة الأصلية للنص البرمجي على الصفحة، وليس كليهما.
#TypeScript
كل شيء مُعرّف، بما في ذلك كل طريقة'引数 وردود الأسئلة، وكل حدث'بيانات Methods, Events, InitResult, ThemeParams, Charge, AdResult والباقي يتم استيرادها).
تم الترجمة تلقائيًا. الإنجليزية هي مصدر الحقيقة. اقرأ باللغة الإنجليزية