Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

API Reference

setLanguage(lang)

function setLanguage(lang: SupportedLanguage | 'auto'): void;

Sets the module-level default language.

ArgumentDescription
langA supported language code or auto. Unsupported values fall back to en at runtime.

Use per-call language overrides instead of setLanguage() in request-scoped server code.

translateErrorCode(code, service, lang?)

function translateErrorCode(
  code: string | undefined,
  service: ErrorService,
  lang?: SupportedLanguage | 'auto',
): string;

Returns a translated string for a Supabase error code.

ArgumentDescription
codeThe Supabase error code. Empty, whitespace-only, or undefined values are treated as unknown_error.
serviceOne of auth, storage, realtime, database, or functions.
langOptional per-call language override. auto uses browser detection.

lookupErrorCode(code, service, lang?)

function lookupErrorCode(
  code: string | undefined,
  service: ErrorService,
  lang?: SupportedLanguage | 'auto',
): ErrorCodeLookupResult;

Performs an exact lookup without fallback messages.

ArgumentDescription
codeThe Supabase error code. Empty, whitespace-only, or undefined values return undefined.
serviceOne of auth, storage, realtime, database, or functions.
langOptional per-call language override. Unsupported values resolve to en.

The result contains the normalized code, resolved language, service, and either the exact message or undefined:

type ErrorCodeLookupResult = {
  code: string;
  service: ErrorService;
  language: SupportedLanguage;
  message: string | undefined;
};

lookupErrorCode() does not fall back to English and does not fall back to unknown_error. Passing unknown_error explicitly returns the localized unknown-error message.

getCurrentLanguage()

function getCurrentLanguage(): SupportedLanguage;

Returns the current module-level default language.

getSupportedLanguages()

function getSupportedLanguages(): SupportedLanguage[];

Returns a copy of the supported language-code list.

isSupportedLanguage(lang)

function isSupportedLanguage(lang: string): lang is SupportedLanguage;

Runtime guard for supported language codes.

isSupportedService(service)

function isSupportedService(service: string): service is ErrorService;

Runtime guard for supported service names.

Constants And Types

import {
  SUPPORTED_LANGUAGES,
  SUPPORTED_SERVICES,
  type ErrorCodeLookupResult,
  type ErrorService,
  type SupportedLanguage,
  type TranslationStructure,
} from 'supabase-error-translator-js';

Translation Subpaths

import { translations } from 'supabase-error-translator-js/translations';
import de from 'supabase-error-translator-js/translations/de';
import en from 'supabase-error-translator-js/translations/en';

Supported language subpaths:

supabase-error-translator-js/translations/ar
supabase-error-translator-js/translations/de
supabase-error-translator-js/translations/en
supabase-error-translator-js/translations/es
supabase-error-translator-js/translations/fr
supabase-error-translator-js/translations/ja
supabase-error-translator-js/translations/ko
supabase-error-translator-js/translations/pl
supabase-error-translator-js/translations/pt
supabase-error-translator-js/translations/zh

Translation maps are immutable at runtime. The functions service is reserved and currently has empty maps.