New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

nuxt-i18n

Package Overview
Dependencies
Maintainers
1
Versions
167
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

nuxt-i18n - npm Package Compare versions

Comparing version 5.8.3 to 5.8.4

10

CHANGELOG.md

@@ -5,2 +5,12 @@ # Change Log

<a name="5.8.4"></a>
## [5.8.4](https://github.com/nuxt-community/nuxt-i18n/compare/v5.8.3...v5.8.4) (2019-02-22)
### Bug Fixes
* Prevent duplicated route names issue with prefix_and_default strategy ([318850c](https://github.com/nuxt-community/nuxt-i18n/commit/318850c)), closes [#140](https://github.com/nuxt-community/nuxt-i18n/issues/140)
<a name="5.8.3"></a>

@@ -7,0 +17,0 @@ ## [5.8.3](https://github.com/nuxt-community/nuxt-i18n/compare/v5.8.2...v5.8.3) (2019-02-17)

10

package.json
{
"name": "nuxt-i18n",
"version": "5.8.3",
"version": "5.8.4",
"description": "i18n for Nuxt",

@@ -55,3 +55,3 @@ "license": "MIT",

"codecov": "3.2.0",
"eslint": "5.14.0",
"eslint": "5.14.1",
"eslint-config-standard": "12.0.0",

@@ -63,3 +63,3 @@ "eslint-plugin-import": "2.16.0",

"eslint-plugin-standard": "4.0.0",
"eslint-plugin-vue": "5.2.1",
"eslint-plugin-vue": "5.2.2",
"jest": "24.1.0",

@@ -69,5 +69,5 @@ "jsdom": "13.2.0",

"standard-version": "5.0.0",
"typescript": "3.3.3",
"vuepress": "0.14.8"
"typescript": "3.3.3333",
"vuepress": "0.14.9"
}
}

@@ -30,2 +30,3 @@ const packageJson = require('../../package.json')

routesNameSeparator: '___',
defaultLocaleRouteNameSuffix: 'default',
strategy: STRATEGIES.PREFIX_EXCEPT_DEFAULT,

@@ -32,0 +33,0 @@ lazy: false,

@@ -11,2 +11,3 @@ const {

routesNameSeparator,
defaultLocaleRouteNameSuffix,
strategy,

@@ -96,3 +97,4 @@ parsePages,

if (locale === defaultLocale && strategy === STRATEGIES.PREFIX_AND_DEFAULT) {
routes.push({ ...localizedRoute, path })
const nameDefault = localizedRoute.name + routesNameSeparator + defaultLocaleRouteNameSuffix
routes.push({ ...localizedRoute, path, name: nameDefault })
}

@@ -99,0 +101,0 @@

@@ -69,11 +69,13 @@ /* global app, req, vuex, store */

* @param {String} routesNameSeparator Separator used to add locale suffixes in routes names
* @param {String} defaultLocaleRouteNameSuffix Suffix added to default locale routes names
* @param {Array} locales Locales list from nuxt config
* @return {String} Locale code found if any
*/
exports.getLocaleFromRoute = (route = {}, routesNameSeparator = '', locales = []) => {
exports.getLocaleFromRoute = (route = {}, routesNameSeparator = '', defaultLocaleRouteNameSuffix = '', locales = []) => {
const codes = getLocaleCodes(locales)
const localesPattern = `(${codes.join('|')})`
const defaultSuffixPattern = `(?:${routesNameSeparator}${defaultLocaleRouteNameSuffix})?`
// Extract from route name
if (route.name) {
const regexp = new RegExp(`${routesNameSeparator}${localesPattern}$`, 'i')
const regexp = new RegExp(`${routesNameSeparator}${localesPattern}${defaultSuffixPattern}$`, 'i')
const matches = route.name.match(regexp)

@@ -80,0 +82,0 @@ if (matches && matches.length > 1) {

@@ -57,3 +57,2 @@ import Vue from 'vue'

app.i18n.forwardedHost = <%= options.forwardedHost %>
app.i18n.routesNameSeparator = '<%= options.routesNameSeparator %>'
app.i18n.beforeLanguageSwitch = <%= options.beforeLanguageSwitch %>

@@ -81,3 +80,6 @@ app.i18n.onLanguageSwitched = <%= options.onLanguageSwitched %>

} else {
const routeLocale = getLocaleFromRoute(route, app.i18n.routesNameSeparator, app.i18n.locales)
const routesNameSeparator = '<%= options.routesNameSeparator %>'
const defaultLocaleRouteNameSuffix = '<%= options.defaultLocaleRouteNameSuffix %>'
const routeLocale = getLocaleFromRoute(route, routesNameSeparator, defaultLocaleRouteNameSuffix, app.i18n.locales)
locale = routeLocale ? routeLocale : locale

@@ -84,0 +86,0 @@ }

import './middleware';
import Vue from 'vue'
const routesNameSeparator = '<%= options.routesNameSeparator %>'
function localePathFactory (i18nPath, routerPath) {
const STRATEGIES = <%= JSON.stringify(options.STRATEGIES) %>
const STRATEGY = '<%= options.strategy %>'
const defaultLocale = '<%= options.defaultLocale %>'
const defaultLocaleRouteNameSuffix = '<%= options.defaultLocaleRouteNameSuffix %>'
return function localePath (route, locale) {

@@ -18,4 +24,9 @@ // Abort if no route or no locale

// Build localized route options
const routesNameSeparator = '<%= options.routesNameSeparator %>'
const name = route.name + routesNameSeparator + locale
let name = route.name + routesNameSeparator + locale
// Match route without prefix for default locale
if (locale === defaultLocale && STRATEGY === STRATEGIES.PREFIX_AND_DEFAULT) {
name += routesNameSeparator + defaultLocaleRouteNameSuffix
}
const localizedRoute = Object.assign({}, route, { name })

@@ -40,5 +51,6 @@

function switchLocalePathFactory (i18nPath) {
const LOCALE_DOMAIN_KEY = '<%= options.LOCALE_DOMAIN_KEY %>'
const LOCALE_CODE_KEY = '<%= options.LOCALE_CODE_KEY %>'
return function switchLocalePath (locale) {
const LOCALE_DOMAIN_KEY = '<%= options.LOCALE_DOMAIN_KEY %>'
const LOCALE_CODE_KEY = '<%= options.LOCALE_CODE_KEY %>'
const name = this.getRouteBaseName()

@@ -84,3 +96,2 @@ if (!name) {

return function getRouteBaseName (route) {
const routesNameSeparator = '<%= options.routesNameSeparator %>'
route = routeGetter.call(this, route)

@@ -87,0 +98,0 @@ if (!route.name) {

@@ -21,2 +21,3 @@ import cookie from 'cookie'

const routesNameSeparator = '<%= options.routesNameSeparator %>'
const defaultLocaleRouteNameSuffix = '<%= options.defaultLocaleRouteNameSuffix %>'
const locales = getLocaleCodes(<%= JSON.stringify(options.locales) %>)

@@ -37,3 +38,3 @@ const syncVuex = <%= options.syncVuex %>

const detectBrowserLanguage = <%= JSON.stringify(options.detectBrowserLanguage) %>
const routeLocale = getLocaleFromRoute(route, routesNameSeparator, locales)
const routeLocale = getLocaleFromRoute(route, routesNameSeparator, defaultLocaleRouteNameSuffix, locales)

@@ -40,0 +41,0 @@ const getCookie = () => {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc