@gasket/plugin-intl
Version:
NodeJS script to build localization files.
144 lines (143 loc) • 6.15 kB
JavaScript
/// <reference types="@gasket/plugin-metadata" />
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function() {
return _default;
}
});
const _packagejson = /*#__PURE__*/ _interop_require_default(require("../package.json"));
const _actions = /*#__PURE__*/ _interop_require_default(require("./actions.cjs"));
const _configure = /*#__PURE__*/ _interop_require_default(require("./configure.cjs"));
const _init = /*#__PURE__*/ _interop_require_default(require("./init.cjs"));
const _serviceworkercachekey = /*#__PURE__*/ _interop_require_default(require("./service-worker-cache-key.cjs"));
const _apmtransaction = /*#__PURE__*/ _interop_require_default(require("./apm-transaction.cjs"));
const _publicgasketdata = /*#__PURE__*/ _interop_require_default(require("./public-gasket-data.cjs"));
const _configureutils = require("./utils/configure-utils.cjs");
const _create = /*#__PURE__*/ _interop_require_default(require("./create.cjs"));
const _postcreate = /*#__PURE__*/ _interop_require_default(require("./post-create.cjs"));
const _prompt = /*#__PURE__*/ _interop_require_default(require("./prompt.cjs"));
const _build = /*#__PURE__*/ _interop_require_default(require("./build.cjs"));
const _preboot = /*#__PURE__*/ _interop_require_default(require("./preboot.cjs"));
function _interop_require_default(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
const { name, version, description } = _packagejson.default;
/** @type {import('@gasket/core').Plugin} */ const plugin = {
name,
version,
description,
actions: _actions.default,
hooks: {
init: _init.default,
configure: _configure.default,
preboot: _preboot.default,
create: _create.default,
postCreate: _postcreate.default,
prompt: _prompt.default,
build: _build.default,
apmTransaction: _apmtransaction.default,
publicGasketData: _publicgasketdata.default,
serviceWorkerCacheKey: _serviceworkercachekey.default,
metadata (gasket, meta) {
const { localesDir } = (0, _configureutils.getIntlConfig)(gasket);
return {
...meta,
actions: [
{
name: 'getIntlLocale',
description: 'Get the current locale',
link: 'README.md#getIntlLocale'
},
{
name: 'getIntlManager',
description: 'Get the IntlManager instance',
link: 'README.md#getIntlManager'
}
],
lifecycles: [
{
name: 'intlLocale',
method: 'execWaterfallSync',
description: 'Set the language for which locale files to load',
link: 'README.md#intlLocale',
parent: 'middleware'
}
],
structures: [
{
name: localesDir + '/',
description: 'Locale JSON files with translation strings',
link: 'README.md#Options'
}
],
configurations: [
{
name: 'intl',
link: 'README.md#configuration',
description: 'Intl config object',
type: 'object'
},
{
name: 'intl.defaultLocaleFilePath',
link: 'README.md#configuration',
description: 'Lookup path to locale files',
default: 'locales',
type: 'string'
},
{
name: 'intl.defaultLocale',
link: 'README.md#configuration',
description: 'Locale to fallback to when loading files',
type: 'string',
default: 'en'
},
{
name: 'intl.locales',
link: 'README.md#configuration',
description: 'Ordered list of accepted locales',
type: 'string[]'
},
{
name: 'intl.localesMap',
link: 'README.md#configuration',
description: 'Mapping of locales to share files',
type: 'object'
},
{
name: 'intl.localesDir',
link: 'README.md#configuration',
description: 'Path to on-disk directory where locale files exists',
type: 'string',
default: './locales'
},
{
name: 'intl.managerFilename',
link: 'README.md#configuration',
description: 'Change the name of the IntlManager file',
type: 'string',
default: 'intl.js'
},
{
name: 'intl.modules',
link: 'README.md#configuration',
description: 'Enable locale files collation from node modules',
type: 'boolean | object'
},
{
name: 'intl.nextRouting',
link: 'README.md#configuration',
description: 'Enable Next.js Routing when used with @gasket/plugin-nextjs',
type: 'boolean',
default: 'true'
}
]
};
}
}
};
const _default = plugin;