UNPKG

@winstrike/next-i18next-koa

Version:

The easiest way to translate your NextJs apps. With Koa support only. Forked from 'next-i18next'.

50 lines (36 loc) 1.68 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _reactI18next = require("react-i18next"); var _createConfig = _interopRequireDefault(require("./config/create-config")); var _createI18nextClient = _interopRequireDefault(require("./create-i18next-client")); var _hocs = require("./hocs"); var _utils = require("./utils"); var _components = require("./components"); var _router = require("./router"); var NextI18Next = function NextI18Next(userConfig) { (0, _classCallCheck2.default)(this, NextI18Next); this.config = (0, _createConfig.default)(userConfig); this.consoleMessage = _utils.consoleMessage.bind(this); /* Validation */ if (this.config.otherLanguages.length <= 0) { throw new Error('To properly initialise a next-i18next instance you must provide one or more locale codes in config.otherLanguages.'); } this.i18n = (0, _createI18nextClient.default)(this.config); this.appWithTranslation = _hocs.appWithTranslation.bind(this); this.withNamespaces = _reactI18next.withNamespaces; var nextI18NextInternals = { config: this.config, i18n: this.i18n }; this.Trans = (0, _hocs.withInternals)(_components.Trans, nextI18NextInternals); this.Link = (0, _hocs.withInternals)(_components.Link, nextI18NextInternals); this.Router = (0, _router.wrapRouter)(nextI18NextInternals); }; exports.default = NextI18Next; module.exports = exports.default; module.exports.default = exports.default;