diff --git a/.babelrc b/.babelrc index 002b4aa..92096fe 100644 --- a/.babelrc +++ b/.babelrc @@ -1,3 +1,4 @@ { - "presets": ["env"] + "presets": ["env"], + "plugins": ["transform-object-assign"] } diff --git a/README.md b/README.md index f081649..428b338 100644 --- a/README.md +++ b/README.md @@ -158,7 +158,7 @@ this.strings = new LocalizedStrings( - setLanguage(languageCode) - to force manually a particular language - getLanguage() - to get the current displayed language -- getInterfaceLanguage() - to get the current device interface language +- getInterfaceLanguage() - to get the current device interface language (from Navigation.language in browsers, BCP-47, https://developer.mozilla.org/en-US/docs/Web/API/NavigatorLanguage/language) - getValue(path) - get value from string path, returns error instead of throws exception as with . notation - formatString() - to format the passed string replacing its placeholders {n} with the other arguments strings. Can also be used with $ref{id} to reference another string diff --git a/lib/LocalizedStrings.js b/lib/LocalizedStrings.js index f2c20ef..c14018b 100644 --- a/lib/LocalizedStrings.js +++ b/lib/LocalizedStrings.js @@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); +var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; + var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); @@ -106,7 +108,7 @@ var LocalizedStrings = function () { for (var i = 0; i < this._defaultLanguageFirstLevelKeys.length; i += 1) { delete this[this._defaultLanguageFirstLevelKeys[i]]; } - var localizedStrings = Object.assign({}, this._props[this._language]); + var localizedStrings = _extends({}, this._props[this._language]); Object.keys(localizedStrings).forEach(function (key) { _this2[key] = localizedStrings[key]; }); diff --git a/package.json b/package.json index fb347a1..5c035f1 100644 --- a/package.json +++ b/package.json @@ -29,11 +29,12 @@ }, "homepage": "https://github.com/stefalda/localized-strings#readme", "devDependencies": { + "babel-cli": "^6.26.0", + "babel-preset-env": "^1.7.0", "eslint": "^5.6.0", "eslint-config-airbnb-base": "^13.1.0", "eslint-plugin-import": "^2.14.0", "jasmine": "^3.1.0", - "babel-cli": "^6.26.0", - "babel-preset-env": "^1.7.0" + "babel-plugin-transform-object-assign": "^6.22.0" } } diff --git a/yarn.lock b/yarn.lock index 2c5c331..018b87b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -516,6 +516,12 @@ babel-plugin-transform-exponentiation-operator@^6.22.0: babel-plugin-syntax-exponentiation-operator "^6.8.0" babel-runtime "^6.22.0" +babel-plugin-transform-object-assign@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-assign/-/babel-plugin-transform-object-assign-6.22.0.tgz#f99d2f66f1a0b0d498e346c5359684740caa20ba" + dependencies: + babel-runtime "^6.22.0" + babel-plugin-transform-regenerator@^6.22.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"