debounce search input catalog
[sdc/sdc-workflow-designer.git] / workflow-designer-ui / src / main / frontend / src / features / catalog / Catalog.js
1 /*
2 * Copyright © 2018 European Support Limited
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http: //www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17 import { connect } from 'react-redux';
18
19 import CatalogView from 'features/catalog/CatalogView';
20 import {
21     fetchWorkflow,
22     resetWorkflow,
23     searchChangedAction
24 } from 'features/catalog/catalogActions';
25
26 import { showCustomModalAction } from 'shared/modal/modalWrapperActions';
27 import { NEW_WORKFLOW_MODAL } from 'shared/modal/modalWrapperComponents';
28 import { clearWorkflowAction } from 'features/workflow/workflowConstants';
29
30 const mapStateToProps = state => ({
31     catalog: state.catalog
32 });
33
34 const mapDispatchToProps = dispatch => ({
35     handleFetchWorkflow: (sort, offset, searchNameFilter) =>
36         dispatch(fetchWorkflow(sort, offset, searchNameFilter)),
37     handleResetWorkflow: () => dispatch(resetWorkflow()),
38     clearWorkflow: () => dispatch(clearWorkflowAction),
39     showNewWorkflowModal: () =>
40         dispatch(
41             showCustomModalAction({
42                 customComponentName: NEW_WORKFLOW_MODAL,
43                 title: 'New Workflow'
44             })
45         ),
46     searchInputChanged: searchValue =>
47         dispatch(searchChangedAction(searchValue))
48 });
49
50 const Catalog = connect(mapStateToProps, mapDispatchToProps)(CatalogView);
51
52 export default Catalog;