From cf0db5fee602ae67742c68b4145781c40f06b984 Mon Sep 17 00:00:00 2001 From: Christoph Knittel Date: Sat, 15 Jun 2019 08:10:17 +0200 Subject: [PATCH] Adaptations for react-intl 3.0.0b8 --- examples/index.re | 10 +----- package.json | 4 +-- src/ReactIntl.re | 9 +---- yarn.lock | 83 +++++++++++++++++++++++++---------------------- 4 files changed, 49 insertions(+), 57 deletions(-) diff --git a/examples/index.re b/examples/index.re index 8868dc5..e580cbe 100644 --- a/examples/index.re +++ b/examples/index.re @@ -1,9 +1 @@ -[@bs.module "react-intl/locale-data/en"] -external en: ReactIntl.localeData('t) = "default"; -[@bs.module "react-intl/locale-data/ru"] -external ru: ReactIntl.localeData('t) = "default"; - -ReactIntl.addLocaleData(en); -ReactIntl.addLocaleData(ru); - -ReactDOMRe.renderToElementWithId(, "app"); +ReactDOMRe.renderToElementWithId(, "app"); \ No newline at end of file diff --git a/package.json b/package.json index d81dd67..13f1f76 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ }, "peerDependencies": { "bs-platform": "^5.0.3", - "react-intl": "^2.7.1", + "react-intl": "3.0.0-beta-8", "reason-react": "^0.7.0" }, "devDependencies": { @@ -29,7 +29,7 @@ "prop-types": "15.7.2", "react": "16.8.6", "react-dom": "16.8.6", - "react-intl": "3.0.0-beta-1", + "react-intl": "3.0.0-beta-8", "reason-react": "0.7.0" }, "repository": { diff --git a/src/ReactIntl.re b/src/ReactIntl.re index 6b8ac3d..a26a942 100644 --- a/src/ReactIntl.re +++ b/src/ReactIntl.re @@ -1,7 +1,3 @@ -type localeData('t) = {.. "locale": string} as 't; - -[@bs.module "react-intl"] external addLocaleData: localeData('t) => unit = ""; - type dateTimeFormatOptions; [@bs.obj] @@ -134,10 +130,7 @@ module Intl = { [@bs.val] [@bs.module "react-intl"] external context: React.Context.t(Intl.t) = "IntlContext"; -// Not in react-intl yet -// [@bs.module "react-intl"] external useIntl: unit => intl = ""; - -let useIntl = () => context->React.useContext; // not zero-cost but will be when react-intl will add it +[@bs.module "react-intl"] external useIntl: unit => Intl.t = ""; type textComponent; diff --git a/yarn.lock b/yarn.lock index e505a31..a00c69e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2560,10 +2560,12 @@ hmac-drbg@^1.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -hoist-non-react-statics@^2.5.5: - version "2.5.5" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47" - integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw== +hoist-non-react-statics@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b" + integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA== + dependencies: + react-is "^16.7.0" hsl-regex@^1.0.0: version "1.0.0" @@ -2699,29 +2701,32 @@ ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== -intl-format-cache@^2.0.5: - version "2.1.0" - resolved "https://registry.yarnpkg.com/intl-format-cache/-/intl-format-cache-2.1.0.tgz#04a369fecbfad6da6005bae1f14333332dcf9316" - integrity sha1-BKNp/sv61tpgBbrh8UMzMy3PkxY= +intl-format-cache@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/intl-format-cache/-/intl-format-cache-3.0.2.tgz#d83f5d659e2eb00d8d575fe104d30e5c2affad2d" + integrity sha512-/cRGShV1FaYpD4pO/mCf3r+00iasUbkV0qp5ai0TZ0FHpZxAigi3CCkLc9me4Smd8/XpjDT2pLY/5iRmnN7r0g== -intl-messageformat-parser@1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-1.4.0.tgz#b43d45a97468cadbe44331d74bb1e8dea44fc075" - integrity sha1-tD1FqXRoytvkQzHXS7Ho3qRPwHU= +intl-locales-supported@^1.0.10: + version "1.1.0" + resolved "https://registry.yarnpkg.com/intl-locales-supported/-/intl-locales-supported-1.1.0.tgz#6f04e86464b527a84850b7f554ac2a0246d55ded" + integrity sha512-EDOpb+LUqTBdOsB24NtW/Tostabhh2JMHDcL4hClXHr4IPqGQL9oTYzmNQWOHwIa7ZjsZSYHSiHXS0iHUwfh2A== -intl-messageformat@^2.0.0, intl-messageformat@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-2.2.0.tgz#345bcd46de630b7683330c2e52177ff5eab484fc" - integrity sha1-NFvNRt5jC3aDMwwuUhd/9eq0hPw= - dependencies: - intl-messageformat-parser "1.4.0" +intl-messageformat-parser@^1.6.6: + version "1.6.6" + resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-1.6.6.tgz#ac803a94f2b94ef575287038ee8ccc2fc876a255" + integrity sha512-MfBWPyCUIrRM1rB6rVdvkv8LxOxo17sLF/XVyOKV0MypU1WL3NuDVC5Ng27Q9zUsikU9vJCzqCEzI8ZEccUsmA== -intl-relativeformat@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/intl-relativeformat/-/intl-relativeformat-2.1.0.tgz#010f1105802251f40ac47d0e3e1a201348a255df" - integrity sha1-AQ8RBYAiUfQKxH0OPhogE0iiVd8= +intl-messageformat@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-4.0.1.tgz#8641034548ed06716c0a0ee6183a426bd7d31992" + integrity sha512-xWPjRs3oyaSGp8dCzx1VAn/C4Fqy59eEvJq7m3RrEn6mzJ32/cR+jVLBlEWMNC31GSmkbtXfFMLYeMAXiV0oUg== dependencies: - intl-messageformat "^2.0.0" + intl-messageformat-parser "^1.6.6" + +intl-relativeformat@^6.1.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/intl-relativeformat/-/intl-relativeformat-6.1.1.tgz#ed60fcd7460469b45c4588ece7b61e1c697c401d" + integrity sha512-KkkuLnq+rJur77pTUuDNA8j2z3n7lj+R2IXLF0uArADngYPWByuY95pJ7DPxiTokXW49FadV887/I/W7arCWew== invariant@^2.1.1: version "2.2.2" @@ -4601,11 +4606,6 @@ rc@^1.2.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -react-display-name@^0.2.4: - version "0.2.4" - resolved "https://registry.yarnpkg.com/react-display-name/-/react-display-name-0.2.4.tgz#e2a670b81d79a2204335510c01246f4c92ff12cf" - integrity sha512-zvU6iouW+SWwHTyThwxGICjJYCMZFk/6r/+jmOdC7ntQoPlS/Pqb81MkxaMf2bHTSq9TN3K3zX2/ayMW/jCtyA== - react-dom@16.8.6, react-dom@>=16.8.1: version "16.8.6" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.8.6.tgz#71d6303f631e8b0097f56165ef608f051ff6e10f" @@ -4616,19 +4616,21 @@ react-dom@16.8.6, react-dom@>=16.8.1: prop-types "^15.6.2" scheduler "^0.13.6" -react-intl@3.0.0-beta-1: - version "3.0.0-beta-1" - resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-3.0.0-beta-1.tgz#de6f91fb7b3409b81fac90dc029d281b54b6bbd4" - integrity sha512-ZH9iKrod9ojg1AX7XnntBcD/t1C2+MNy6NZLoqiarUSsyaj/uOZUPQhIQM2MgCi3n2aOu1PjYxde8iMORYxfhQ== +react-intl@3.0.0-beta-8: + version "3.0.0-beta-8" + resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-3.0.0-beta-8.tgz#6e638a494b02f5228c11737cf9c51f826d137738" + integrity sha512-706VWfLATgIUAGB6oLkWUIv3krsI8YmhC5wMrDzAScg/OSgn2lAmUviNheACb87BmJfSGb4LUaDWz0UN3qUYeg== dependencies: - hoist-non-react-statics "^2.5.5" - intl-format-cache "^2.0.5" - intl-messageformat "^2.1.0" - intl-relativeformat "^2.1.0" + hoist-non-react-statics "^3.3.0" + intl-format-cache "^3.0.0" + intl-locales-supported "^1.0.10" + intl-messageformat "^4.0.0" + intl-relativeformat "^6.1.0" invariant "^2.1.1" - react-display-name "^0.2.4" + react-is "^16.3.1" + shallow-equal "^1.1.0" -react-is@^16.8.1: +react-is@^16.3.1, react-is@^16.7.0, react-is@^16.8.1: version "16.8.6" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== @@ -5045,6 +5047,11 @@ shallow-copy@~0.0.1: resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" integrity sha1-QV9CcC1z2BAzApLMXuhurhoRoXA= +shallow-equal@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.2.0.tgz#fd828d2029ff4e19569db7e19e535e94e2d1f5cc" + integrity sha512-Z21pVxR4cXsfwpMKMhCEIO1PCi5sp7KEp+CmOpBQ+E8GpHwKOw2sEzk7sgblM3d/j4z4gakoWEoPcjK0VJQogA== + shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"