@micromag/intl 0.3.824 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es/index.d.ts ADDED
@@ -0,0 +1,24 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ declare class IntlManager {
4
+ constructor();
5
+ addLocale(locale: any, messages: any, replace?: boolean): void;
6
+ getLocale(locale: any): any;
7
+ hasLocale(locale: any): boolean;
8
+ getMessages(locale: any): any;
9
+ }
10
+
11
+ declare const LocalesContext: any;
12
+ declare const useLocales: () => unknown;
13
+ declare const useOtherLocales: () => any;
14
+ declare function IntlProvider({ intlManager, locale, locales, children, extraMessages, }: {
15
+ intlManager?: IntlManager;
16
+ locale?: any;
17
+ locales?: any;
18
+ children?: any;
19
+ extraMessages?: any;
20
+ }): react_jsx_runtime.JSX.Element;
21
+
22
+ declare const intlManager: IntlManager;
23
+
24
+ export { IntlManager, IntlProvider, LocalesContext, intlManager as default, useLocales, useOtherLocales };
package/es/index.js CHANGED
@@ -2,8 +2,7 @@ import _objectSpread from '@babel/runtime/helpers/objectSpread2';
2
2
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
3
3
  import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
4
4
  import _createClass from '@babel/runtime/helpers/createClass';
5
- import React, { useContext, useMemo } from 'react';
6
- import PropTypes from 'prop-types';
5
+ import React, { useContext, useMemo, useCallback } from 'react';
7
6
  import { IntlContext, IntlProvider as IntlProvider$1 } from 'react-intl';
8
7
 
9
8
  var IntlManager = /*#__PURE__*/function () {
@@ -67,26 +66,17 @@ var useOtherLocales = function useOtherLocales() {
67
66
  }, [locales, locale]);
68
67
  return otherLocales;
69
68
  };
70
- var propTypes = {
71
- intlManager: PropTypes.instanceOf(IntlManager),
72
- locale: PropTypes.string,
73
- locales: PropTypes.arrayOf(PropTypes.string),
74
- extraMessages: PropTypes.objectOf(PropTypes.string),
75
- children: PropTypes.node
76
- };
77
- var defaultProps = {
78
- intlManager: intlManager,
79
- locale: null,
80
- locales: null,
81
- extraMessages: null,
82
- children: null
83
- };
84
- var IntlProvider = function IntlProvider(_ref) {
85
- var intlManager = _ref.intlManager,
86
- locale = _ref.locale,
87
- locales = _ref.locales,
88
- children = _ref.children,
89
- extraMessages = _ref.extraMessages;
69
+ function IntlProvider(_ref) {
70
+ var _ref$intlManager = _ref.intlManager,
71
+ intlManager$1 = _ref$intlManager === void 0 ? intlManager : _ref$intlManager,
72
+ _ref$locale = _ref.locale,
73
+ locale = _ref$locale === void 0 ? null : _ref$locale,
74
+ _ref$locales = _ref.locales,
75
+ locales = _ref$locales === void 0 ? null : _ref$locales,
76
+ _ref$children = _ref.children,
77
+ children = _ref$children === void 0 ? null : _ref$children,
78
+ _ref$extraMessages = _ref.extraMessages,
79
+ extraMessages = _ref$extraMessages === void 0 ? null : _ref$extraMessages;
90
80
  var previousLocales = useLocales();
91
81
  var _ref2 = useContext(IntlContext) || {},
92
82
  _ref2$locale = _ref2.locale,
@@ -94,17 +84,22 @@ var IntlProvider = function IntlProvider(_ref) {
94
84
  _ref2$messages = _ref2.messages,
95
85
  previousMessages = _ref2$messages === void 0 ? null : _ref2$messages;
96
86
  var messages = useMemo(function () {
97
- var currentMessages = intlManager.getMessages(locale);
87
+ var currentMessages = intlManager$1.getMessages(locale);
98
88
  return _objectSpread(_objectSpread(_objectSpread({}, currentMessages), extraMessages), previousLocale === locale ? previousMessages : null);
99
89
  }, [locale, previousLocale, previousMessages, extraMessages]);
90
+ var onError = useCallback(function (err) {
91
+ if (err.code === 'MISSING_TRANSLATION') {
92
+ return;
93
+ }
94
+ console.error(err);
95
+ }, []);
100
96
  return /*#__PURE__*/React.createElement(IntlProvider$1, {
101
97
  locale: locale,
102
- messages: messages
98
+ messages: messages,
99
+ onError: onError
103
100
  }, /*#__PURE__*/React.createElement(LocalesContext.Provider, {
104
101
  value: locales || previousLocales
105
102
  }, children));
106
- };
107
- IntlProvider.propTypes = propTypes;
108
- IntlProvider.defaultProps = defaultProps;
103
+ }
109
104
 
110
105
  export { IntlManager, IntlProvider, LocalesContext, intlManager as default, useLocales, useOtherLocales };