<% if (i18nEnabled) { %>
// Multi-language store — locales loaded dynamically
import { getDirectionForLocale } from 'brainerce';

export const defaultLocale = '<%= defaultLocale %>';
export const supportedLocales = <%- supportedLocales %> as const;
export type Locale = (typeof supportedLocales)[number];

/**
 * Resolve script direction. Delegates to the SDK so the storefront stays in
 * sync as Brainerce adds support for new RTL locales — never maintain a
 * local RTL locale set here.
 */
export function getDirection(locale: string): 'ltr' | 'rtl' {
  return getDirectionForLocale(locale);
}

export async function getMessages(locale: string): Promise<Record<string, Record<string, string>>> {
  try {
    return (await import(`../messages/${locale}.json`)).default;
  } catch {
    return (await import(`../messages/<%= defaultLocale %>.json`)).default;
  }
}
<% } else { %>
import messages from '../messages/<%= language %>.json';

export const defaultLocale = '<%= language %>';
export const direction = '<%= direction %>' as 'ltr' | 'rtl';
export { messages };
<% } %>
