diff --git a/.gitignore b/.gitignore index 91dfed8..72f72df 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ .DS_Store -node_modules \ No newline at end of file +node_modules +lib \ No newline at end of file diff --git a/lib/actions.js b/lib/actions.js deleted file mode 100644 index ad888a1..0000000 --- a/lib/actions.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.setLocale = setLocale; -function setLocale(locale) { - return { - type: 'SET_LOCALE', - locale: locale - }; -} \ No newline at end of file diff --git a/lib/context.js b/lib/context.js deleted file mode 100644 index d4d29fc..0000000 --- a/lib/context.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.TranslateConsumer = exports.TranslateProvider = undefined; - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var TranslateContext = _react2.default.createContext(null); -var TranslateProvider = TranslateContext.Provider, - TranslateConsumer = TranslateContext.Consumer; -exports.TranslateProvider = TranslateProvider; -exports.TranslateConsumer = TranslateConsumer; -exports.default = TranslateContext; \ No newline at end of file diff --git a/lib/index.js b/lib/index.js deleted file mode 100644 index 59af919..0000000 --- a/lib/index.js +++ /dev/null @@ -1,31 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.IntlActions = exports.IntlProvider = exports.withTranslate = exports.IntlReducer = undefined; - -var _reducer = require('./reducer'); - -var _reducer2 = _interopRequireDefault(_reducer); - -var _withTranslate = require('./withTranslate'); - -var _withTranslate2 = _interopRequireDefault(_withTranslate); - -var _provider = require('./provider'); - -var _provider2 = _interopRequireDefault(_provider); - -var _actions = require('./actions'); - -var IntlActions = _interopRequireWildcard(_actions); - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.IntlReducer = _reducer2.default; -exports.withTranslate = _withTranslate2.default; -exports.IntlProvider = _provider2.default; -exports.IntlActions = IntlActions; \ No newline at end of file diff --git a/lib/provider.js b/lib/provider.js deleted file mode 100644 index 04f6557..0000000 --- a/lib/provider.js +++ /dev/null @@ -1,93 +0,0 @@ -'use strict'; - -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 _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; }; }(); - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -var _propTypes = require('prop-types'); - -var _propTypes2 = _interopRequireDefault(_propTypes); - -var _reactRedux = require('react-redux'); - -var _utils = require('./utils'); - -var _actions = require('./actions'); - -var _context = require('./context'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - -var IntlProvider = function (_React$Component) { - _inherits(IntlProvider, _React$Component); - - function IntlProvider(props) { - _classCallCheck(this, IntlProvider); - - var _this = _possibleConstructorReturn(this, (IntlProvider.__proto__ || Object.getPrototypeOf(IntlProvider)).call(this, props)); - - _this.translate = function (key, placeholders, isHTML) { - var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}; - - var result = (0, _utils.translateKey)(key, _this.props.translations[_this.props.locale]['messages']); - var tagName = options.tagName || 'div'; - if (typeof placeholders === 'undefined') { - return result; - } - var finalResult = (0, _utils.supplant)(result, placeholders); - return isHTML ? _react2.default.createElement(tagName, { dangerouslySetInnerHTML: (0, _utils.createHTMLMarkup)(finalResult) }, null) : finalResult; - }; - - var translations = props.translations, - locale = props.locale, - setLocale = props.setLocale; - - if (!translations || !locale) { - var namePart = _this.constructor.displayName ? ' of ' + _this.constructor.displayName : ''; - throw new Error('Could not find translations or locale on this.props ' + namePart); - } - return _this; - } - - _createClass(IntlProvider, [{ - key: 'render', - value: function render() { - return _react2.default.createElement( - _context.TranslateProvider, - { value: this.translate }, - this.props.children - ); - } - }]); - - return IntlProvider; -}(_react2.default.Component); - -IntlProvider.defaultProps = { - translations: {} -}; - - -function mapPropsToState(state) { - var Intl = state.Intl; - - return _extends({}, Intl, { - key: Intl.locale - }); -} - -exports.default = (0, _reactRedux.connect)(mapPropsToState, { setLocale: _actions.setLocale })(IntlProvider); \ No newline at end of file diff --git a/lib/reducer.js b/lib/reducer.js deleted file mode 100644 index 442c76a..0000000 --- a/lib/reducer.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -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; }; - -exports.default = function () { - var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState; - var action = arguments[1]; - - switch (action.type) { - case 'SET_LOCALE': - return _extends({}, state, { - locale: action.locale - }); - default: - return state; - } -}; - -var initialState = { - locale: 'en' -}; \ No newline at end of file diff --git a/lib/utils.js b/lib/utils.js deleted file mode 100644 index bbc3a88..0000000 --- a/lib/utils.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.supplant = supplant; -exports.translateKey = translateKey; -exports.createHTMLMarkup = createHTMLMarkup; -function supplant(s, d) { - for (var p in d) { - s = s.replace(new RegExp('{' + p + '}', 'g'), d[p]); - } - return s; -} - -function translateKey(path, obj, safe) { - return path.split('.').reduce(function (prev, curr) { - return !safe ? prev[curr] : prev ? prev[curr] : undefined; - }, obj); -} - -function createHTMLMarkup(html) { - return { __html: html }; -} \ No newline at end of file diff --git a/lib/withTranslate.js b/lib/withTranslate.js deleted file mode 100644 index bffb555..0000000 --- a/lib/withTranslate.js +++ /dev/null @@ -1,34 +0,0 @@ -'use strict'; - -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 _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -var _context = require('./context'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -/** - * Access translate function - * @param {Object} WrappedComponent - * @return {Object} - */ -function withTranslate(WrappedComponent) { - return function (props) { - return _react2.default.createElement( - _context.TranslateConsumer, - null, - function (translate) { - return _react2.default.createElement(WrappedComponent, _extends({}, props, { translate: translate })); - } - ); - }; -} - -exports.default = withTranslate; \ No newline at end of file