@micromag/intl 0.4.71 → 0.4.74

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.
Files changed (2) hide show
  1. package/es/index.js +74 -79
  2. package/package.json +7 -7
package/es/index.js CHANGED
@@ -1,94 +1,89 @@
1
- import _objectSpread from '@babel/runtime/helpers/objectSpread2';
2
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
3
- import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
4
- import _createClass from '@babel/runtime/helpers/createClass';
1
+ import { c } from 'react/compiler-runtime';
5
2
  import React, { use, useMemo, useCallback } from 'react';
6
3
  import { IntlContext, IntlProvider as IntlProvider$1 } from 'react-intl';
7
4
  import { jsx } from 'react/jsx-runtime';
8
5
 
9
- var IntlManager = /*#__PURE__*/function () {
10
- function IntlManager() {
11
- _classCallCheck(this, IntlManager);
6
+ class IntlManager {
7
+ constructor() {
12
8
  this.locales = [];
13
9
  }
14
- return _createClass(IntlManager, [{
15
- key: "addLocale",
16
- value: function addLocale(locale, messages) {
17
- var replace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
18
- var currentLocale = this.getLocale(locale);
19
- this.locales = [].concat(_toConsumableArray(currentLocale !== null ? this.locales.filter(function (it) {
20
- return it.locale !== locale;
21
- }) : this.locales), [{
22
- locale: locale,
23
- messages: currentLocale !== null && !replace ? _objectSpread(_objectSpread({}, currentLocale.messages), messages) : messages
24
- }]);
25
- }
26
- }, {
27
- key: "getLocale",
28
- value: function getLocale(locale) {
29
- return this.locales.find(function (it) {
30
- return it.locale === locale;
31
- }) || null;
32
- }
33
- }, {
34
- key: "hasLocale",
35
- value: function hasLocale(locale) {
36
- return this.getLocale(locale) !== null;
37
- }
38
- }, {
39
- key: "getMessages",
40
- value: function getMessages(locale) {
41
- var localeObj = this.locales.find(function (it) {
42
- return it.locale === locale;
43
- }) || null;
44
- if (localeObj === null) {
45
- return null;
46
- }
47
- return localeObj.messages;
10
+ addLocale(locale, messages, replace = false) {
11
+ const currentLocale = this.getLocale(locale);
12
+ this.locales = [...(currentLocale !== null ? this.locales.filter(it => it.locale !== locale) : this.locales), {
13
+ locale,
14
+ messages: currentLocale !== null && !replace ? {
15
+ ...currentLocale.messages,
16
+ ...messages
17
+ } : messages
18
+ }];
19
+ }
20
+ getLocale(locale) {
21
+ return this.locales.find(it => it.locale === locale) || null;
22
+ }
23
+ hasLocale(locale) {
24
+ return this.getLocale(locale) !== null;
25
+ }
26
+ getMessages(locale) {
27
+ const localeObj = this.locales.find(it => it.locale === locale) || null;
28
+ if (localeObj === null) {
29
+ return null;
48
30
  }
49
- }]);
50
- }();
31
+ return localeObj.messages;
32
+ }
33
+ }
51
34
 
52
- var intlManager = new IntlManager();
35
+ const intlManager = new IntlManager();
53
36
 
54
- var defaultLocales = ['en', 'fr'];
55
- var LocalesContext = /*#__PURE__*/React.createContext(defaultLocales);
56
- var useLocales = function useLocales() {
57
- return use(LocalesContext);
58
- };
59
- var useOtherLocales = function useOtherLocales() {
60
- var locales = useLocales();
61
- var _use = use(IntlContext),
62
- locale = _use.locale;
63
- var otherLocales = useMemo(function () {
64
- return locales.filter(function (it) {
65
- return it !== locale;
66
- });
67
- }, [locales, locale]);
37
+ const defaultLocales = ['en', 'fr'];
38
+ const LocalesContext = /*#__PURE__*/React.createContext(defaultLocales);
39
+ const useLocales = () => use(LocalesContext);
40
+ const useOtherLocales = () => {
41
+ const $ = c(5);
42
+ const locales = useLocales();
43
+ const {
44
+ locale
45
+ } = use(IntlContext);
46
+ let t0;
47
+ if ($[0] !== locale || $[1] !== locales) {
48
+ let t1;
49
+ if ($[3] !== locale) {
50
+ t1 = it => it !== locale;
51
+ $[3] = locale;
52
+ $[4] = t1;
53
+ } else {
54
+ t1 = $[4];
55
+ }
56
+ t0 = locales.filter(t1);
57
+ $[0] = locale;
58
+ $[1] = locales;
59
+ $[2] = t0;
60
+ } else {
61
+ t0 = $[2];
62
+ }
63
+ const otherLocales = t0;
68
64
  return otherLocales;
69
65
  };
70
- function IntlProvider(_ref) {
71
- var _ref$intlManager = _ref.intlManager,
72
- intlManager$1 = _ref$intlManager === void 0 ? intlManager : _ref$intlManager,
73
- _ref$locale = _ref.locale,
74
- locale = _ref$locale === void 0 ? null : _ref$locale,
75
- _ref$locales = _ref.locales,
76
- locales = _ref$locales === void 0 ? null : _ref$locales,
77
- _ref$children = _ref.children,
78
- children = _ref$children === void 0 ? null : _ref$children,
79
- _ref$extraMessages = _ref.extraMessages,
80
- extraMessages = _ref$extraMessages === void 0 ? null : _ref$extraMessages;
81
- var previousLocales = useLocales();
82
- var _ref2 = use(IntlContext) || {},
83
- _ref2$locale = _ref2.locale,
84
- previousLocale = _ref2$locale === void 0 ? null : _ref2$locale,
85
- _ref2$messages = _ref2.messages,
86
- previousMessages = _ref2$messages === void 0 ? null : _ref2$messages;
87
- var messages = useMemo(function () {
88
- var currentMessages = intlManager$1.getMessages(locale);
89
- return _objectSpread(_objectSpread(_objectSpread({}, currentMessages), extraMessages), previousLocale === locale ? previousMessages : null);
66
+ function IntlProvider({
67
+ intlManager: intlManager$1 = intlManager,
68
+ locale = null,
69
+ locales = null,
70
+ children = null,
71
+ extraMessages = null
72
+ }) {
73
+ const previousLocales = useLocales();
74
+ const {
75
+ locale: previousLocale = null,
76
+ messages: previousMessages = null
77
+ } = use(IntlContext) || {};
78
+ const messages = useMemo(() => {
79
+ const currentMessages = intlManager$1.getMessages(locale);
80
+ return {
81
+ ...currentMessages,
82
+ ...extraMessages,
83
+ ...(previousLocale === locale ? previousMessages : null)
84
+ };
90
85
  }, [locale, previousLocale, previousMessages, extraMessages]);
91
- var onError = useCallback(function (err) {
86
+ const onError = useCallback(err => {
92
87
  if (err.code === 'MISSING_TRANSLATION') {
93
88
  return;
94
89
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/intl",
3
- "version": "0.4.71",
3
+ "version": "0.4.74",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "keywords": [
@@ -63,17 +63,17 @@
63
63
  "build": "rm -rf ./locale && npm run intl && ../../scripts/prepare-package.sh --types"
64
64
  },
65
65
  "devDependencies": {
66
- "react": "^18.3.0 || ^19.0.0",
67
- "react-dom": "^18.3.0 || ^19.0.0"
66
+ "react": "^19.0.0",
67
+ "react-dom": "^19.0.0"
68
68
  },
69
69
  "peerDependencies": {
70
- "react": "^18.3.0 || ^19.0.0",
71
- "react-dom": "^18.3.0 || ^19.0.0"
70
+ "react": "^19.0.0",
71
+ "react-dom": "^19.0.0"
72
72
  },
73
73
  "dependencies": {
74
74
  "@babel/runtime": "^7.28.6",
75
75
  "@formatjs/cli": "^6.2.7",
76
- "@micromag/core": "^0.4.71",
76
+ "@micromag/core": "^0.4.74",
77
77
  "commander": "^12.0.0",
78
78
  "fs-extra": "^11.2.0",
79
79
  "gettext-parser": "^7.0.1",
@@ -90,6 +90,6 @@
90
90
  "access": "public",
91
91
  "registry": "https://registry.npmjs.org/"
92
92
  },
93
- "gitHead": "9101554bc5761e32b4a002a10d26800608c69773",
93
+ "gitHead": "fe510ee87845280d0760cb292aef9d2eb69e67c1",
94
94
  "types": "es/index.d.ts"
95
95
  }