aboutsummaryrefslogtreecommitdiffstats
path: root/src/components
diff options
context:
space:
mode:
authorLibravatar Raino <rainoboy97@gmail.com>2017-10-27 20:56:35 +0200
committerLibravatar Raino <rainoboy97@gmail.com>2017-10-27 20:56:35 +0200
commit059319506050ac652a4e790475fd9423db4f5133 (patch)
treee3aa16dcd0fe26b17c234ea43bbcfeb3bec93c05 /src/components
parent[translation] Add norwegian translations (diff)
parentMerge pull request #152 from meetfranz/chore/travis-setup (diff)
downloadferdium-app-059319506050ac652a4e790475fd9423db4f5133.tar.gz
ferdium-app-059319506050ac652a4e790475fd9423db4f5133.tar.zst
ferdium-app-059319506050ac652a4e790475fd9423db4f5133.zip
Fix merge conflict and add missing translation
Diffstat (limited to 'src/components')
-rw-r--r--src/components/layout/Sidebar.js2
-rw-r--r--src/components/services/tabs/TabBarSortableList.js110
2 files changed, 73 insertions, 39 deletions
diff --git a/src/components/layout/Sidebar.js b/src/components/layout/Sidebar.js
index 4aee1ec60..6a5c0f365 100644
--- a/src/components/layout/Sidebar.js
+++ b/src/components/layout/Sidebar.js
@@ -52,7 +52,7 @@ export default class Sidebar extends Component {
52 <button 52 <button
53 onClick={openSettings} 53 onClick={openSettings}
54 className="sidebar__settings-button" 54 className="sidebar__settings-button"
55 data-tip={`Settings (${ctrlKey}+,)`} 55 data-tip={`${intl.formatMessage(messages.settings)} (${ctrlKey}+,)`}
56 > 56 >
57 {isPremiumUser && ( 57 {isPremiumUser && (
58 <span className="emoji"> 58 <span className="emoji">
diff --git a/src/components/services/tabs/TabBarSortableList.js b/src/components/services/tabs/TabBarSortableList.js
index c0a68d1a5..e5ae36419 100644
--- a/src/components/services/tabs/TabBarSortableList.js
+++ b/src/components/services/tabs/TabBarSortableList.js
@@ -1,44 +1,78 @@
1import React from 'react'; 1import React, { Component } from 'react';
2import { observer } from 'mobx-react'; 2import { observer, PropTypes as MobxPropTypes } from 'mobx-react';
3import PropTypes from 'prop-types';
3import { SortableContainer } from 'react-sortable-hoc'; 4import { SortableContainer } from 'react-sortable-hoc';
5import { defineMessages, intlShape } from 'react-intl';
4 6
5import TabItem from './TabItem'; 7import TabItem from './TabItem';
6import { ctrlKey } from '../../../environment'; 8import { ctrlKey } from '../../../environment';
7 9
8export default SortableContainer(observer(({ 10const messages = defineMessages({
9 services, 11 addNewService: {
10 setActive, 12 id: 'sidebar.addNewService',
11 reload, 13 defaultMessage: '!!!Add new service',
12 toggleNotifications, 14 },
13 deleteService, 15});
14 disableService, 16
15 openSettings, 17@observer
16}) => ( 18class TabBarSortableList extends Component {
17 <ul 19 static propTypes = {
18 className="tabs" 20 services: MobxPropTypes.arrayOrObservableArray.isRequired,
19 > 21 setActive: PropTypes.func.isRequired,
20 {services.map((service, index) => ( 22 openSettings: PropTypes.func.isRequired,
21 <TabItem 23 reload: PropTypes.func.isRequired,
22 key={service.id} 24 toggleNotifications: PropTypes.func.isRequired,
23 clickHandler={() => setActive({ serviceId: service.id })} 25 deleteService: PropTypes.func.isRequired,
24 service={service} 26 disableService: PropTypes.func.isRequired,
25 index={index} 27 }
26 shortcutIndex={index + 1} 28
27 reload={() => reload({ serviceId: service.id })} 29 static contextTypes = {
28 toggleNotifications={() => toggleNotifications({ serviceId: service.id })} 30 intl: intlShape,
29 deleteService={() => deleteService({ serviceId: service.id })} 31 };
30 disableService={() => disableService({ serviceId: service.id })} 32
31 openSettings={openSettings} 33 render() {
32 /> 34 const {
33 ))} 35 services,
34 <li> 36 setActive,
35 <button 37 reload,
36 className="sidebar__add-service" 38 toggleNotifications,
37 onClick={() => openSettings({ path: 'recipes' })} 39 deleteService,
38 data-tip={`Add new service (${ctrlKey}+N)`} 40 disableService,
41 openSettings,
42 } = this.props;
43
44 const { intl } = this.context;
45
46 return (
47 <ul
48 className="tabs"
39 > 49 >
40 <span className="mdi mdi-plus" /> 50 {services.map((service, index) => (
41 </button> 51 <TabItem
42 </li> 52 key={service.id}
43 </ul> 53 clickHandler={() => setActive({ serviceId: service.id })}
44))); 54 service={service}
55 index={index}
56 shortcutIndex={index + 1}
57 reload={() => reload({ serviceId: service.id })}
58 toggleNotifications={() => toggleNotifications({ serviceId: service.id })}
59 deleteService={() => deleteService({ serviceId: service.id })}
60 disableService={() => disableService({ serviceId: service.id })}
61 openSettings={openSettings}
62 />
63 ))}
64 <li>
65 <button
66 className="sidebar__add-service"
67 onClick={() => openSettings({ path: 'recipes' })}
68 data-tip={`${intl.formatMessage(messages.addNewService)} (${ctrlKey}+N)`}
69 >
70 <span className="mdi mdi-plus" />
71 </button>
72 </li>
73 </ul>
74 );
75 }
76}
77
78export default SortableContainer(TabBarSortableList);