import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; import { Components, registerComponent, Locales } from 'meteor/vulcan:core'; class FormIntl extends PureComponent { /* If translations already exist, try to make sure they're loaded and stored in the same order. If not, use order of Locales array. */ getLocalePath = (locale, defaultIndex) => { const translations = this.props.value; const index = translations && !!translations.length ? translations.findIndex(t => t.locale === locale) : defaultIndex; return `${this.props.path}_intl.${index}`; } render() { // do not pass FormIntl's own value, inputProperties, and intlInput props down const properties = _.omit(this.props, 'value', 'inputProperties', 'intlInput'); return (
{Locales.map((locale, i) => (
))}
); } } registerComponent('FormIntl', FormIntl);