Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
web-interface.assets.41.41.8701985bb0448f528696.js Maven / Gradle / Ivy
webpackJsonp([41],{1022:function(module,exports,__webpack_require__){eval("/* REACT HOT LOADER */ if (false) { (function () { var ReactHotAPI = require(\"/var/lib/jenkins/jobs/graylog-release/workspace/target/checkout/graylog2-web-interface/node_modules/react-hot-api/modules/index.js\"), RootInstanceProvider = require(\"/var/lib/jenkins/jobs/graylog-release/workspace/target/checkout/graylog2-web-interface/node_modules/react-hot-loader/RootInstanceProvider.js\"), ReactMount = require(\"react/lib/ReactMount\"), React = require(\"react\"); module.makeHot = module.hot.data ? module.hot.data.makeHot : ReactHotAPI(function () { return RootInstanceProvider.getRootInstances(ReactMount); }, React); })(); } try { (function () {\n\n'use strict';\n\nObject.defineProperty(exports, '__esModule', {\n value: true\n});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _react = __webpack_require__(1);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reflux = __webpack_require__(4);\n\nvar _reflux2 = _interopRequireDefault(_reflux);\n\nvar _reactBootstrap = __webpack_require__(2);\n\nvar _graylogWebPluginPlugin = __webpack_require__(44);\n\nvar _injectionStoreProvider = __webpack_require__(3);\n\nvar _injectionStoreProvider2 = _interopRequireDefault(_injectionStoreProvider);\n\nvar _utilDocsHelper = __webpack_require__(18);\n\nvar _utilDocsHelper2 = _interopRequireDefault(_utilDocsHelper);\n\nvar _utilUserNotification = __webpack_require__(8);\n\nvar _utilUserNotification2 = _interopRequireDefault(_utilUserNotification);\n\nvar _componentsCommon = __webpack_require__(5);\n\nvar _utilPermissionsMixin = __webpack_require__(27);\n\nvar _utilPermissionsMixin2 = _interopRequireDefault(_utilPermissionsMixin);\n\nvar _componentsSupportDocumentationLink = __webpack_require__(24);\n\nvar _componentsSupportDocumentationLink2 = _interopRequireDefault(_componentsSupportDocumentationLink);\n\nvar _componentsDashboardEditDashboardModalTrigger = __webpack_require__(102);\n\nvar _componentsDashboardEditDashboardModalTrigger2 = _interopRequireDefault(_componentsDashboardEditDashboardModalTrigger);\n\nvar _componentsWidgetsWidget = __webpack_require__(371);\n\nvar _componentsWidgetsWidget2 = _interopRequireDefault(_componentsWidgetsWidget);\n\nvar CurrentUserStore = _injectionStoreProvider2['default'].getStore('CurrentUser');\nvar DashboardsStore = _injectionStoreProvider2['default'].getStore('Dashboards');\nvar FocusStore = _injectionStoreProvider2['default'].getStore('Focus');\nvar WidgetsStore = _injectionStoreProvider2['default'].getStore('Widgets');\n\nvar ShowDashboardPage = _react2['default'].createClass({\n displayName: 'ShowDashboardPage',\n\n mixins: [_reflux2['default'].connect(CurrentUserStore), _reflux2['default'].connect(FocusStore), _utilPermissionsMixin2['default']],\n\n getInitialState: function getInitialState() {\n return {\n locked: true,\n forceUpdateInBackground: false\n };\n },\n componentDidMount: function componentDidMount() {\n this.loadData();\n this.listenTo(WidgetsStore, this.removeWidget);\n this.loadInterval = setInterval(this.loadData, 2000);\n },\n componentWillUnmount: function componentWillUnmount() {\n if (this.loadInterval) {\n clearInterval(this.loadInterval);\n }\n },\n DASHBOARDS_EDIT: 'dashboards:edit',\n DEFAULT_HEIGHT: 1,\n DEFAULT_WIDTH: 2,\n loadData: function loadData() {\n var _this = this;\n\n DashboardsStore.get(this.props.params.dashboardId).then(function (dashboard) {\n if (_this.isMounted()) {\n _this.setState({ dashboard: dashboard });\n }\n });\n },\n updateUnFocussed: function updateUnFocussed() {\n return this.state.currentUser.preferences.updateUnfocussed;\n },\n shouldUpdate: function shouldUpdate() {\n return Boolean(this.updateUnFocussed() || this.state.forceUpdateInBackground || this.state.focus);\n },\n removeWidget: function removeWidget(props) {\n if (props['delete']) {\n this.loadData();\n }\n },\n emptyDashboard: function emptyDashboard() {\n return _react2['default'].createElement(\n _reactBootstrap.Row,\n { className: 'content' },\n _react2['default'].createElement(\n _reactBootstrap.Col,\n { md: 12 },\n _react2['default'].createElement(\n _reactBootstrap.Alert,\n { className: 'no-widgets' },\n 'This dashboard has no widgets yet. Learn how to add widgets in the ',\n _react2['default'].createElement(_componentsSupportDocumentationLink2['default'], {\n page: _utilDocsHelper2['default'].PAGES.DASHBOARDS, text: 'documentation' }),\n '.'\n )\n )\n );\n },\n _defaultWidgetDimensions: function _defaultWidgetDimensions(widget) {\n var dimensions = { col: 0, row: 0 };\n\n var widgetPlugin = _graylogWebPluginPlugin.PluginStore.exports('widgets').filter(function (plugin) {\n return plugin.type.toUpperCase() === widget.type.toUpperCase();\n })[0];\n if (widgetPlugin) {\n dimensions.height = widgetPlugin.defaultHeight;\n dimensions.width = widgetPlugin.defaultWidth;\n } else {\n dimensions.height = this.DEFAULT_HEIGHT;\n dimensions.width = this.DEFAULT_WIDTH;\n }\n\n return dimensions;\n },\n _dashboardIsEmpty: function _dashboardIsEmpty(dashboard) {\n return dashboard.widgets.length === 0;\n },\n formatDashboard: function formatDashboard(dashboard) {\n var _this2 = this;\n\n if (this._dashboardIsEmpty(dashboard)) {\n return this.emptyDashboard();\n }\n\n var positions = {};\n dashboard.widgets.forEach(function (widget) {\n var persistedDimensions = dashboard.positions[widget.id] || {};\n var defaultDimensions = _this2._defaultWidgetDimensions(widget);\n positions[widget.id] = {\n col: persistedDimensions.col === undefined ? defaultDimensions.col : persistedDimensions.col,\n row: persistedDimensions.row === undefined ? defaultDimensions.row : persistedDimensions.row,\n height: persistedDimensions.height === undefined ? defaultDimensions.height : persistedDimensions.height,\n width: persistedDimensions.width === undefined ? defaultDimensions.width : persistedDimensions.width\n };\n });\n\n var widgets = dashboard.widgets.sort(function (widget1, widget2) {\n var position1 = positions[widget1.id];\n var position2 = positions[widget2.id];\n if (position1.col === position2.col) {\n return position1.row - position2.row;\n }\n\n return position1.col - position2.col;\n }).map(function (widget) {\n return _react2['default'].createElement(_componentsWidgetsWidget2['default'], { id: widget.id, key: 'widget-' + widget.id, widget: widget, dashboardId: dashboard.id,\n locked: _this2.state.locked, shouldUpdate: _this2.shouldUpdate() });\n });\n\n return _react2['default'].createElement(\n _reactBootstrap.Row,\n null,\n _react2['default'].createElement(\n 'div',\n { className: 'dashboard' },\n _react2['default'].createElement(\n _componentsCommon.GridsterContainer,\n { ref: 'gridsterContainer', positions: positions, onPositionsChange: this._onPositionsChange },\n widgets\n )\n )\n );\n },\n _unlockDashboard: function _unlockDashboard(event) {\n event.preventDefault();\n this.setState({ locked: false });\n },\n _onUnlock: function _onUnlock() {\n var locked = !this.state.locked;\n this.setState({ locked: locked });\n\n if (locked) {\n this.refs.gridsterContainer.lockGrid();\n } else {\n this.refs.gridsterContainer.unlockGrid();\n }\n },\n _onPositionsChange: function _onPositionsChange(newPositions) {\n DashboardsStore.updatePositions(this.state.dashboard, newPositions);\n },\n _toggleFullscreen: function _toggleFullscreen() {\n var element = document.documentElement;\n if (element.requestFullscreen) {\n element.requestFullscreen();\n } else if (element.mozRequestFullScreen) {\n element.mozRequestFullScreen();\n } else if (element.webkitRequestFullscreen) {\n element.webkitRequestFullscreen();\n } else if (element.msRequestFullscreen) {\n element.msRequestFullscreen();\n }\n },\n _toggleUpdateInBackground: function _toggleUpdateInBackground() {\n var forceUpdate = !this.state.forceUpdateInBackground;\n this.setState({ forceUpdateInBackground: forceUpdate });\n _utilUserNotification2['default'].success('Graphs will be updated ' + (forceUpdate ? 'even' : 'only') + ' when the browser is in the ' + (forceUpdate ? 'background' : 'foreground'), '');\n },\n render: function render() {\n if (!this.state.dashboard) {\n return _react2['default'].createElement(_componentsCommon.Spinner, null);\n }\n\n var dashboard = this.state.dashboard;\n\n var actions = undefined;\n if (!this._dashboardIsEmpty(dashboard)) {\n actions = _react2['default'].createElement(\n 'div',\n null,\n _react2['default'].createElement(\n _reactBootstrap.Button,\n { id: 'update-unfocussed', bsStyle: 'info', onClick: this._toggleUpdateInBackground },\n 'Update in ',\n this.state.forceUpdateInBackground ? 'foreground' : 'background'\n ),\n ' ',\n _react2['default'].createElement(\n _reactBootstrap.Button,\n { className: 'toggle-fullscreen', bsStyle: 'info', onClick: this._toggleFullscreen },\n 'Fullscreen'\n ),\n _react2['default'].createElement(\n _componentsCommon.IfPermitted,\n { permissions: this.DASHBOARDS_EDIT + ':' + dashboard.id },\n ' ',\n _react2['default'].createElement(\n _reactBootstrap.Button,\n { bsStyle: 'success', onClick: this._onUnlock },\n this.state.locked ? 'Unlock / Edit' : 'Lock'\n )\n )\n );\n }\n\n var supportText = undefined;\n if (!this._dashboardIsEmpty(dashboard)) {\n supportText = _react2['default'].createElement(\n _componentsCommon.IfPermitted,\n { permissions: this.DASHBOARDS_EDIT + ':' + dashboard.id },\n _react2['default'].createElement(\n 'div',\n { id: 'drag-widgets-description' },\n 'Drag widgets to any position you like in ',\n _react2['default'].createElement(\n 'a',\n { href: '#', role: 'button', onClick: this._unlockDashboard },\n 'unlock / edit'\n ),\n ' mode.'\n )\n );\n }\n\n var dashboardTitle = _react2['default'].createElement(\n 'span',\n null,\n _react2['default'].createElement(\n 'span',\n { 'data-dashboard-id': dashboard.id, className: 'dashboard-title' },\n dashboard.title\n ),\n ' ',\n !this.state.locked && !this._dashboardIsEmpty(dashboard) && _react2['default'].createElement(\n _componentsDashboardEditDashboardModalTrigger2['default'],\n { id: dashboard.id, action: 'edit', title: dashboard.title,\n description: dashboard.description, buttonClass: 'btn-info btn-xs' },\n _react2['default'].createElement('i', { className: 'fa fa-pencil' })\n )\n );\n return _react2['default'].createElement(\n 'span',\n null,\n _react2['default'].createElement(\n _componentsCommon.PageHeader,\n { title: dashboardTitle },\n _react2['default'].createElement(\n 'span',\n { 'data-dashboard-id': dashboard.id, className: 'dashboard-description' },\n dashboard.description\n ),\n supportText,\n actions\n ),\n this.formatDashboard(dashboard),\n _react2['default'].createElement('div', { className: 'clearfix' })\n );\n }\n});\n\nexports['default'] = ShowDashboardPage;\nmodule.exports = exports['default'];\n\n/* REACT HOT LOADER */ }).call(this); } finally { if (false) { (function () { var foundReactClasses = module.hot.data && module.hot.data.foundReactClasses || false; if (module.exports && module.makeHot) { var makeExportsHot = require(\"/var/lib/jenkins/jobs/graylog-release/workspace/target/checkout/graylog2-web-interface/node_modules/react-hot-loader/makeExportsHot.js\"); if (makeExportsHot(module, require(\"react\"))) { foundReactClasses = true; } var shouldAcceptModule = true && foundReactClasses; if (shouldAcceptModule) { module.hot.accept(function (err) { if (err) { console.error(\"Cannot not apply hot update to \" + \"ShowDashboardPage.jsx\" + \": \" + err.message); } }); } } module.hot.dispose(function (data) { data.makeHot = module.makeHot; data.foundReactClasses = foundReactClasses; }); })(); } }\n\n/*****************\n ** WEBPACK FOOTER\n ** ./~/react-hot-loader!./~/babel-loader!./src/pages/ShowDashboardPage.jsx\n ** module id = 1022\n ** module chunks = 41\n **/\n//# sourceURL=webpack:///./src/pages/ShowDashboardPage.jsx?./~/react-hot-loader!./~/babel-loader")}});