Sha256: 589cccf8cf1a110df6caeeeb84cd7f090b0cfd17dbb13af95dc4c4e1cf228066

Contents?: true

Size: 1.34 KB

Versions: 74

Compression:

Stored size: 1.34 KB

Contents

/* eslint-disable no-param-reassign */
import requireAll from "./require_all";

const { I18n } = require("react-i18nify");

/**
 * Load components translations from yaml files and import them into
 * react-i18ify system so they can be used via `I18n.t` method.
 * @returns {Void} - Nothing
 */
const loadTranslations = () => {
  const translationsContext = (require as any).context("../../../config/locales/", true, /\.yml$/);
  const translationFiles = requireAll(translationsContext);

  const translations = translationsContext.keys().reduce((acc: any, key: string, index: number) => {
    const match = key.match(/\.\/(.*)\.yml/);

    if (match) {
      const locale = match[1];
      acc[locale] = translationFiles[index][locale].decidim;
    }

    return acc;
  }, {});

  I18n.setTranslations(translations);
};

/**
 * Load components translations from a locale files and import them into
 * react-i18ify system so they can be used via `I18n.t` method.
 * @returns {Void} - Nothing
 */
export const loadLocaleTranslations = (locale: string) => {
  const translationFile = require(`./../../../config/locales/${locale}.yml`);
  const translations = Object.keys(translationFile).reduce((acc: any, key: string) => {
    acc[locale] = translationFile[locale].decidim;
    return acc;
  }, {});

  I18n.setTranslations(translations);
};

export default loadTranslations;

Version data entries

74 entries across 74 versions & 2 rubygems

Version Path
decidim-comments-0.15.1 app/frontend/support/load_translations.ts
decidim-comments-0.15.0 app/frontend/support/load_translations.ts
decidim-comments-0.14.4 app/frontend/support/load_translations.ts
decidim-comments-0.14.3 app/frontend/support/load_translations.ts
decidim-comments-0.14.2 app/frontend/support/load_translations.ts
decidim-comments-0.14.1 app/frontend/support/load_translations.ts
decidim-comments-0.13.1 app/frontend/support/load_translations.ts
decidim-comments-0.12.2 app/frontend/support/load_translations.ts
decidim-comments-0.13.0 app/frontend/support/load_translations.ts
decidim-comments-0.12.1 app/frontend/support/load_translations.ts
decidim-comments-0.13.0.pre1 app/frontend/support/load_translations.ts
decidim-comments-0.12.0 app/frontend/support/load_translations.ts
decidim-comments-0.11.2 app/frontend/support/load_translations.ts
decidim-comments-0.12.0.pre app/frontend/support/load_translations.ts
decidim-comments-0.11.1 app/frontend/support/load_translations.ts
decidim-comments-0.11.0.pre1 app/frontend/support/load_translations.ts
decidim-comments-0.10.1 app/frontend/support/load_translations.ts
decidim-comments-0.10.0 app/frontend/support/load_translations.ts
decidim-comments-0.9.3 app/frontend/support/load_translations.ts
decidim-comments-0.9.2 app/frontend/support/load_translations.ts