1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { defineMessages, intlShape } from 'react-intl';
import { FeatureItem } from './FeatureItem';
const messages = defineMessages({
unlimitedServices: {
id: 'pricing.features.unlimitedServices',
defaultMessage: '!!!Add unlimited services',
},
spellchecker: {
id: 'pricing.features.spellchecker',
defaultMessage: '!!!Spellchecker support',
},
workspaces: {
id: 'pricing.features.workspaces',
defaultMessage: '!!!Workspaces',
},
customWebsites: {
id: 'pricing.features.customWebsites',
defaultMessage: '!!!Add Custom Websites',
},
onPremise: {
id: 'pricing.features.onPremise',
defaultMessage: '!!!On-premise & other Hosted Services',
},
thirdPartyServices: {
id: 'pricing.features.thirdPartyServices',
defaultMessage: '!!!Install 3rd party services',
},
serviceProxies: {
id: 'pricing.features.serviceProxies',
defaultMessage: '!!!Service Proxies',
},
teamManagement: {
id: 'pricing.features.teamManagement',
defaultMessage: '!!!Team Management',
},
appDelays: {
id: 'pricing.features.appDelays',
defaultMessage: '!!!No Waiting Screens',
},
adFree: {
id: 'pricing.features.adFree',
defaultMessage: '!!!Forever ad-free',
},
});
export class FeatureList extends Component {
static propTypes = {
className: PropTypes.string,
featureClassName: PropTypes.string,
};
static defaultProps = {
className: '',
featureClassName: '',
}
static contextTypes = {
intl: intlShape,
};
render() {
const {
className,
featureClassName,
} = this.props;
const { intl } = this.context;
return (
<ul className={className}>
<FeatureItem name={intl.formatMessage(messages.unlimitedServices)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.spellchecker)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.workspaces)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.customWebsites)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.onPremise)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.thirdPartyServices)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.serviceProxies)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.teamManagement)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.appDelays)} className={featureClassName} />
<FeatureItem name={intl.formatMessage(messages.adFree)} className={featureClassName} />
</ul>
);
}
}
export default FeatureList;
|