12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- "use strict";
- var __assign = (this && this.__assign) || function () {
- __assign = Object.assign || function(t) {
- for (var s, i = 1, n = arguments.length; i < n; i++) {
- s = arguments[i];
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
- t[p] = s[p];
- }
- return t;
- };
- return __assign.apply(this, arguments);
- };
- var __rest = (this && this.__rest) || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
- t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
- t[p[i]] = s[p[i]];
- }
- return t;
- };
- Object.defineProperty(exports, "__esModule", { value: true });
- var utils_1 = require("./utils");
- function nextTranslate(nextConfig) {
- if (nextConfig === void 0) { nextConfig = {}; }
- var fs = require('fs');
- var path = require('path');
- var test = /\.(tsx|ts|js|mjs|jsx)$/;
- var dir = path.resolve(path.relative(pkgDir(), process.env.NEXT_TRANSLATE_PATH || '.'));
- var _a = require(path.join(dir, 'i18n')), loadLocaleFrom = _a.loadLocaleFrom, localesToIgnore = _a.localesToIgnore, pages = _a.pages, logger = _a.logger, loggerEnvironment = _a.loggerEnvironment, staticsHoc = _a.staticsHoc, extensionsRgx = _a.extensionsRgx, _b = _a.loader, loader = _b === void 0 ? true : _b, logBuild = _a.logBuild, revalidate = _a.revalidate, pagesInDir = _a.pagesInDir, interpolation = _a.interpolation, keySeparator = _a.keySeparator, nsSeparator = _a.nsSeparator, defaultNS = _a.defaultNS, restI18n = __rest(_a, ["loadLocaleFrom", "localesToIgnore", "pages", "logger", "loggerEnvironment", "staticsHoc", "extensionsRgx", "loader", "logBuild", "revalidate", "pagesInDir", "interpolation", "keySeparator", "nsSeparator", "defaultNS"]);
- var hasGetInitialPropsOnAppJs = false;
- if (!pagesInDir) {
- pagesInDir = 'pages';
- if (fs.existsSync(path.join(dir, 'src/pages'))) {
- pagesInDir = 'src/pages';
- }
- else if (fs.existsSync(path.join(dir, 'app/pages'))) {
- pagesInDir = 'app/pages';
- }
- else if (fs.existsSync(path.join(dir, 'integrations/pages'))) {
- pagesInDir = 'integrations/pages';
- }
- }
- var pagesPath = path.join(dir, pagesInDir);
- var app = fs
- .readdirSync(pagesPath)
- .find(function (page) { return page.startsWith('_app.'); });
- if (app) {
- var code = fs.readFileSync(path.join(pagesPath, app)).toString('UTF-8');
- hasGetInitialPropsOnAppJs =
- !!code.match(/\WgetInitialProps\W/g) || (0, utils_1.hasHOC)(code);
- }
- var i18n = __assign(__assign({}, (nextConfig.i18n || {})), restI18n);
- return __assign(__assign({}, nextConfig), { i18n: i18n, webpack: function (conf, options) {
- var config = typeof nextConfig.webpack === 'function'
- ? nextConfig.webpack(conf, options)
- : conf;
- config.resolve.alias = __assign(__assign({}, (config.resolve.alias || {})), { '@next-translate-root': path.resolve(dir) });
- if (!loader)
- return config;
- config.module.rules.push({
- test: test,
- use: {
- loader: 'next-translate/plugin/loader',
- options: {
- extensionsRgx: extensionsRgx || test,
- revalidate: revalidate || 0,
- hasGetInitialPropsOnAppJs: hasGetInitialPropsOnAppJs,
- hasAppJs: !!app,
- pagesPath: path.join(pagesPath, '/'),
- hasLoadLocaleFrom: typeof loadLocaleFrom === 'function',
- },
- },
- });
- return config;
- } });
- }
- exports.default = nextTranslate;
- function pkgDir() {
- try {
- return require('pkg-dir').sync() || process.cwd();
- }
- catch (e) {
- return process.cwd();
- }
- }
|