2017-06-01 11:49:32 +09:00
|
|
|
import React, { Component } from 'react';
|
2018-04-21 17:58:25 +09:00
|
|
|
import { intlShape } from './shape';
|
2017-06-01 11:49:32 +09:00
|
|
|
|
2018-06-10 12:15:18 +09:00
|
|
|
const FormattedMessage = ({ id, values, defaultMessage = '', html = false, className = '' }, { intl }) => {
|
2018-04-21 17:58:25 +09:00
|
|
|
const message = intl.formatMessage({ id, defaultMessage }, values);
|
2018-06-10 12:15:18 +09:00
|
|
|
const cssClass = `i18n-message ${className}`;
|
|
|
|
|
2018-02-21 10:48:22 +09:00
|
|
|
return html ?
|
2018-06-10 12:15:18 +09:00
|
|
|
<span className={cssClass} dangerouslySetInnerHTML={{__html: message}}/> :
|
2018-12-31 15:22:17 +09:00
|
|
|
<span className={cssClass}>{message}</span>;
|
|
|
|
};
|
2017-06-01 11:49:32 +09:00
|
|
|
|
2018-04-21 17:58:25 +09:00
|
|
|
FormattedMessage.contextTypes = {
|
|
|
|
intl: intlShape
|
2018-12-31 15:22:17 +09:00
|
|
|
};
|
2018-04-21 17:58:25 +09:00
|
|
|
|
2018-01-25 15:03:03 -06:00
|
|
|
export default FormattedMessage;
|