selectors.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /*
  2. * <<
  3. * Davinci
  4. * ==
  5. * Copyright (C) 2016 - 2017 EDP
  6. * ==
  7. * Licensed under the Apache License, Version 2.0 (the "License");
  8. * you may not use this file except in compliance with the License.
  9. * You may obtain a copy of the License at
  10. *
  11. * http://www.apache.org/licenses/LICENSE-2.0
  12. *
  13. * Unless required by applicable law or agreed to in writing, software
  14. * distributed under the License is distributed on an "AS IS" BASIS,
  15. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  16. * See the License for the specific language governing permissions and
  17. * limitations under the License.
  18. * >>
  19. */
  20. import { createSelector } from 'reselect'
  21. import { ISourceState } from './types'
  22. const selectSource = (state) => state.source
  23. const makeSelectSources = () => createSelector(
  24. selectSource,
  25. (sourceState: ISourceState) => sourceState.sources
  26. )
  27. const makeSelectListLoading = () => createSelector(
  28. selectSource,
  29. (sourceState: ISourceState) => sourceState.listLoading
  30. )
  31. const makeSelectFormLoading = () => createSelector(
  32. selectSource,
  33. (sourceState: ISourceState) => sourceState.formLoading
  34. )
  35. const makeSelectTestLoading = () => createSelector(
  36. selectSource,
  37. (sourceState: ISourceState) => sourceState.testLoading
  38. )
  39. const makeSelectResetLoading = () => createSelector(
  40. selectSource,
  41. (sourceState: ISourceState) => sourceState.resetLoading
  42. )
  43. const makeSelectDatasourcesInfo = () => createSelector(
  44. selectSource,
  45. (sourceState: ISourceState) => sourceState.datasourcesInfo
  46. )
  47. export {
  48. selectSource,
  49. makeSelectSources,
  50. makeSelectListLoading,
  51. makeSelectFormLoading,
  52. makeSelectTestLoading,
  53. makeSelectResetLoading,
  54. makeSelectDatasourcesInfo
  55. }