---
title: i18n-error-base
description: Valibot-এর ভাষা সেটিংয়ের সাথে ত্রুটি বার্তা বদলে দেয় এমন Error-এর বেস ক্লাস।
---

Valibot-এর `lang` দিয়ে `message` বদলে দেয় এমন `Error` বেস ক্লাস।

```ts
import { setGlobalConfig } from "valibot";
import { I18nErrorBase, setErrorMessage } from "i18n-error-base";

class NotFoundError extends I18nErrorBase<{ resource: string }> {}

setErrorMessage(NotFoundError, ({ resource }) => `リソースが見つかりません: ${resource}`, "ja");
setErrorMessage(NotFoundError, ({ resource }) => `Resource not found: ${resource}`, "en");

const error = new NotFoundError({ resource: "user" }, "fallback message");

setGlobalConfig({ lang: "ja" });
console.log(error.message); // リソースが見つかりません: user

setGlobalConfig({ lang: "en" });
console.log(error.message); // Resource not found: user
```

`message` প্রতিটি পাঠে `lang` দেখে। নতুন করে না বানিয়ে বদলান। অনিবন্ধিত ভাষা কনস্ট্রাক্টরের ডিফল্ট বার্তা ব্যবহার করে।

## বৈশিষ্ট্য [#features]

- Valibot-এর `setGlobalConfig({ lang })` দিয়ে `message` গতিশীলভাবে রিজলভ করে
- `setErrorMessage` দিয়ে পরে প্রতিটি ভাষার বার্তা নিবন্ধন করুন। `meta` নেওয়া ফাংশনও চলে
- অনিবন্ধিত ভাষা কনস্ট্রাক্টরের ডিফল্ট বার্তা ব্যবহার করে
- ক্লাস-প্রতি `static prefix` দিয়ে উপসর্গ যোগ করে
- `meta` সংরক্ষণ করে বার্তা তৈরির ফাংশনে পাঠায়
- `instanceof Error`, `cause`, `stack` যথাযথভাবে চলে

## গঠন [#structure]

**[ইনস্টলেশন](/i18n-error-base/bn/installation)**

প্যাকেজ যোগ করা এবং peer নির্ভরতা সম্পর্কে।

**[ব্যবহারবিধি](/i18n-error-base/bn/usage)**

সংজ্ঞা থেকে বদল, prefix, ফলব্যাক পর্যন্ত।

**[API রেফারেন্স](/i18n-error-base/bn/api)**

`I18nErrorBase` ও `setErrorMessage`-এর বিবরণ।

## কার্যপ্রণালী [#how-it-works]

`message` প্রতিটি পাঠে নিচের ক্রমে রিজলভ হয়।

1. `getGlobalConfig()` থেকে `lang` নেয়। সেট না থাকলে `"en"`
2. `(ক্লাস × lang)` নিবন্ধন থাকলে `meta` দিয়ে চালায়
3. না থাকলে কনস্ট্রাক্টরের ডিফল্ট বার্তা ফেরত দেয়
4. `static prefix` সেট থাকলে শুরুতে যুক্ত করে

:::tip
নিবন্ধিত বার্তা প্রতিটি পাঠে `meta` থেকে তৈরি হয় বলে, বদল তাৎক্ষণিক প্রতিফলিত হয়।
:::

## পরবর্তী পদক্ষেপ [#next-steps]

[ইনস্টলেশন](/i18n-error-base/bn/installation) দিয়ে শুরু করুন, [ব্যবহারবিধি](/i18n-error-base/bn/usage)-তে প্রবাহ দেখুন। বিস্তারিত [API রেফারেন্স](/i18n-error-base/bn/api)-তে আছে।
