/* * Copyright 2007-2017 Charles du Jeu - Abstrium SAS * This file is part of Pydio. * * Pydio is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Pydio is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with Pydio. If not, see . * * The latest code can be found at . */ 'use strict'; exports.__esModule = true; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var _managerManager = require('../manager/Manager'); var _managerManager2 = _interopRequireDefault(_managerManager); var React = require('react'); var _require$requireLib = require('pydio').requireLib('boot'); var AsyncComponent = _require$requireLib.AsyncComponent; /** * Display a form companion linked to a given input. * Props: helperData : contains the pluginId and the whole paramAttributes */ exports['default'] = React.createClass({ displayName: 'FormHelper', propTypes: { helperData: React.PropTypes.object, close: React.PropTypes.func.isRequired }, closeHelper: function closeHelper() { this.props.close(); }, render: function render() { var helper = undefined; if (this.props.helperData) { var helpersCache = _managerManager2['default'].getHelpersCache(); var pluginHelperNamespace = helpersCache[this.props.helperData['pluginId']]['namespace']; helper = React.createElement( 'div', null, React.createElement( 'div', { className: 'helper-title' }, React.createElement('span', { className: 'helper-close mdi mdi-close', onClick: this.closeHelper }), 'Pydio Companion' ), React.createElement( 'div', { className: 'helper-content' }, React.createElement(AsyncComponent, _extends({}, this.props.helperData, { namespace: pluginHelperNamespace, componentName: 'Helper', paramName: this.props.helperData['paramAttributes']['name'] })) ) ); } return React.createElement( 'div', { className: 'pydio-form-helper' + (helper ? ' helper-visible' : ' helper-empty'), style: { zIndex: 1 } }, helper ); } }); module.exports = exports['default'];