CustomVisualsComponent.js 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. 'use strict';
  2. function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
  3. function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
  4. function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
  5. /**
  6. * Licensed Materials - Property of IBM
  7. * IBM Cognos Products: BI Cloud (C) Copyright IBM Corp. 2019
  8. * US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  9. */
  10. define(['react', 'ca-ui-toolkit', 'prop-types', './CustomVisualsContentComponent', './CustomVisualsComponentHeader', '../../../widgets/livewidget/nls/StringResources'], function (React, UI_Toolkit, PropTypes, CustomVisualsContentComponent, CustomVisualsComponentHeader, StringResources) {
  11. var Component = React.Component;
  12. var Label = UI_Toolkit.Label;
  13. var VSpacer = UI_Toolkit.VSpacer,
  14. FlexLayout = UI_Toolkit.FlexLayout,
  15. FlexItem = UI_Toolkit.FlexItem;
  16. var CustomVisualsComponent = function (_Component) {
  17. _inherits(CustomVisualsComponent, _Component);
  18. function CustomVisualsComponent(props) {
  19. _classCallCheck(this, CustomVisualsComponent);
  20. var _this = _possibleConstructorReturn(this, _Component.call(this, props));
  21. _this.state = {
  22. items: _this.props.items,
  23. isRefreshing: _this.props.isRefreshing
  24. };
  25. return _this;
  26. }
  27. CustomVisualsComponent.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
  28. this.setState({
  29. items: nextProps.items,
  30. isRefreshing: nextProps.isRefreshing
  31. });
  32. };
  33. CustomVisualsComponent.prototype.render = function render() {
  34. var customVisAction = this.props.customVisAction;
  35. var _state = this.state,
  36. items = _state.items,
  37. isRefreshing = _state.isRefreshing;
  38. var _props = this.props,
  39. handlers = _props.handlers,
  40. dashboardApi = _props.dashboardApi;
  41. return React.createElement(
  42. FlexLayout,
  43. {
  44. fullHeight: true,
  45. direction: 'column',
  46. justifyContent: 'flex-start'
  47. },
  48. React.createElement(
  49. FlexItem,
  50. { grow: 5,
  51. className: 'vis-custom-visuals-container'
  52. },
  53. React.createElement(
  54. FlexLayout,
  55. {
  56. fullHeight: true,
  57. direction: 'column',
  58. justifyContent: 'flex-start'
  59. },
  60. React.createElement(
  61. FlexItem,
  62. null,
  63. React.createElement(
  64. FlexLayout,
  65. {
  66. direction: 'row',
  67. justifyContent: 'space-between'
  68. },
  69. React.createElement(
  70. FlexItem,
  71. { alignSelf: 'flex-start' },
  72. React.createElement(Label, { className: 'vis-custom-vis-visuals-label', label: StringResources.get('extVisCustomVisuals') })
  73. ),
  74. customVisAction.canManage() && React.createElement(
  75. FlexItem,
  76. {
  77. alignSelf: 'flex-end',
  78. title: StringResources.get('extVisAddCustomVisual')
  79. },
  80. React.createElement(CustomVisualsComponentHeader, {
  81. customVisAction: customVisAction,
  82. handlers: handlers
  83. })
  84. )
  85. )
  86. ),
  87. React.createElement(
  88. FlexItem,
  89. null,
  90. React.createElement(VSpacer, { size: 2 })
  91. ),
  92. React.createElement(
  93. FlexItem,
  94. {
  95. basis: '0%',
  96. grow: 1,
  97. shrink: 1
  98. },
  99. React.createElement(CustomVisualsContentComponent, {
  100. items: items,
  101. handlers: handlers,
  102. isRefreshing: isRefreshing,
  103. customVisAction: customVisAction,
  104. dashboardApi: dashboardApi })
  105. ),
  106. React.createElement(
  107. FlexItem,
  108. null,
  109. React.createElement(VSpacer, { size: 2 })
  110. )
  111. )
  112. )
  113. );
  114. };
  115. return CustomVisualsComponent;
  116. }(Component);
  117. CustomVisualsComponent.propTypes = {
  118. items: PropTypes.array.isRequired,
  119. handlers: PropTypes.shape({
  120. componentDidMountCallback: PropTypes.func.isRequired,
  121. componentWillUnmountCallback: PropTypes.func.isRequired,
  122. refreshCustomVisDefinitions: PropTypes.func.isRequired
  123. }).isRequired,
  124. isRefreshing: PropTypes.bool,
  125. dashboardApi: PropTypes.object.isRequired,
  126. customVisAction: PropTypes.object.isRequired
  127. };
  128. CustomVisualsComponent.defaultProps = {
  129. isRefreshing: false
  130. };
  131. return CustomVisualsComponent;
  132. });
  133. //# sourceMappingURL=CustomVisualsComponent.js.map