Vulcan/packages/vulcan-i18n/lib/modules/message.js
2018-12-31 15:22:17 +09:00

17 lines
545 B
JavaScript

import React, { Component } from 'react';
import { intlShape } from './shape';
const FormattedMessage = ({ id, values, defaultMessage = '', html = false, className = '' }, { intl }) => {
const message = intl.formatMessage({ id, defaultMessage }, values);
const cssClass = `i18n-message ${className}`;
return html ?
<span className={cssClass} dangerouslySetInnerHTML={{__html: message}}/> :
<span className={cssClass}>{message}</span>;
};
FormattedMessage.contextTypes = {
intl: intlShape
};
export default FormattedMessage;