Vanilla JS reference
create18waysEngine(options)
@18ways/core/engine سے import کریں۔
import { create18waysEngine } from '@18ways/core/engine';Common options:
| Option | قسم | نوٹس |
|---|---|---|
apiKey | string | ضروری ہے۔ |
baseLocale | string | ماخذ لوکیل۔ |
مقامی زبان | string | موجودہ ہدف مقام۔ |
سیاق و سباق | string | object | Default context key. |
initialTranslations | Translations | Optional starting cache. |
apiUrl | string | Optional API base override. |
fetcher | fetch کی قسم | کسٹم فیچ امپلیمنٹیشن۔ |
cacheTtlSeconds | عدد | Request cache TTL. |
origin | string | Origin forwarded on server-side requests. |
Engine methods
t(text, options?)
Translate a string and return the resolved value.
setLocale(locale)
Change the target locale.
getLocale()
Read the current target locale.
getStore()
Access the underlying translation store.
TranslationStore
engine.getStore() نچلی سطح کا runtime state machine ظاہر کرتا ہے۔ store میں locale state، config، hydrated translations، یاد رکھی گئی source strings، اور بلاک کرنے والی لوڈنگ حالت شامل ہوتی ہے۔
عام طریقے:
| طریقہ | نوٹس |
|---|---|
getState() | موجودہ منتخب لوکیل، طے شدہ لوکیل، config، اور cached translations پڑھتا ہے۔ |
hydrate(input) | ترجمے اور config کو store میں merge کریں۔ SSR یا custom bootstrapping کے لیے مفید۔ |
dehydrate() | store کو ایک merge-friendly hydration payload میں snapshot کریں۔ |
loadConfig() | accepted locales اور fallback config ایک بار fetch کریں، پھر نتیجہ cache کر لیں۔ |
setLocale(locale) | اسٹور کے اندر ایک لوکیل ٹرانزیشن شروع کریں۔ |
getTranslationSync(input) | synchronous read جو یا تو تیار ویلیو واپس کرتا ہے یا fallback ویلیو کے ساتھ pending read۔ |
getTranslation(input) | آخری translated string پر حل ہونے والا async translation read۔ |
isLoading(input?) | جب بلاک کرنے والا ترجمہ کام ابھی بھی زیرِ التوا ہو، عالمی طور پر یا ایک context کے لیے، تو true واپس کرتا ہے۔ |
waitForIdle(input?) | جب بلاک کرنے والا ترجمہ کام مکمل ہو جائے تو resolve ہوتا ہے۔ لوڈنگ پسِ منظر میں جاری رہتے ہوئے ایک ڈیڈلائن کے بعد انتظار روکنے کے لیے timeoutMs پاس کریں۔ |
getIdleState(input?) | store کی ملکیت والا timed wait state واپس کرتا ہے جسے renderers استعمال کرتے ہیں: {timedOut, promise}۔ |
mount(entry) / unmount(entry) | انٹیگریشنز کے لیے اختیاری ماؤنٹ ٹریکنگ، جو ماؤنٹ سے آگاہ garbage collection کو فعال کرتی ہیں۔ |
اگر آپ @18ways/core کو براہِ راست استعمال کر رہے ہیں، تو عموماً آپ engine.t(...) کی سطح پر ہی رہتے ہیں۔ جب آپ اپنا rendering runtime یا hydration layer بنا رہے ہوں تو store کی طرف رجوع کریں۔
t() کے آپشنز
| Option | قسم | نوٹس |
|---|---|---|
مقامی زبان | string | Override the target locale for this call. |
baseLocale | string | Override the base locale for this call. |
سیاق و سباق | string | object | Override the context for this call. |
vars | Record<string, unknown> | waysParser کے لیے متغیر input۔ |
Utility exports
The core package also exports lower-level helpers such as:
fetchAcceptedLocalesfetchConfig- locale utilities
Use those when you need them, but the engine should be the default starting point.