Changes:
- Migrate to TypeScript. `react-intl` natively supports TypeScript now.
- Upgrade corresponding `formatjs` packages.
- Dynamically polyfill Intl API per locale since those polyfills are huge.
- Migrate to recommended workflow per https://formatjs.io/docs/getting-started/application-workflow
* Remove next folder before build in with-react-intl
* Relax message id requirement in with-react-intl
* @formatjs/cli instead of babel-plugin-react-intl
* default-lang.js -> extract.js
Co-authored-by: Joe Haddad <timer150@gmail.com>
As long as node does not ship with fill-icu this will do the trick making FormattedRelativeTime work on nodejs.
Other polyfill like @formatjs/intl-relativetimeformat/polyfill did not work on nodejs and thus giving an error that client did not match server.
* Update dependencies
> Update dependencies
* Changes to make v3 work
> Use hook `useIntl` instead of HOC `injectIntl`
> Change use of class components
> Changes to dependencies
* Small changes
Small changes
I wrote a [script](https://github.com/j0lv3r4/dependency-version-updater) to update dependencies recursively in `package.json` files, e.g.:
```
$ node index.js --path="./examples" --dependencies="react=^16.7.0,react-dom=^16.7.0"
```
This PR contains the result against the examples folder.