UNPKG

@luminati-io/luminati-proxy

Version:

A configurable local proxy for luminati.io

1,184 lines (996 loc) 8.61 MB
webpackJsonp([0],[ /* 0 */, /* 1 */, /* 2 */, /* 3 */, /* 4 */, /* 5 */, /* 6 */, /* 7 */, /* 8 */, /* 9 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var _defineProperty = __webpack_require__(258); var _defineProperty2 = _interopRequireDefault(_defineProperty); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; (0, _defineProperty2.default)(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /***/ }), /* 10 */, /* 11 */, /* 12 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__; var module; // LICENSE_CODE ZON 'use strict'; /*jslint react:true*/ var _regenerator = __webpack_require__(22); var _regenerator2 = _interopRequireDefault(_regenerator); var _classCallCheck2 = __webpack_require__(1); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = __webpack_require__(9); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = __webpack_require__(2); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _get2 = __webpack_require__(470); var _get3 = _interopRequireDefault(_get2); var _inherits2 = __webpack_require__(3); var _inherits3 = _interopRequireDefault(_inherits2); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(0), __webpack_require__(45), __webpack_require__(24)], __WEBPACK_AMD_DEFINE_RESULT__ = function (React, _etask, setdb) { var LONG_CB_MS = 100; // XXX krzysztof: copied from android/who/app/components, removed local // dependency: zerr and event // XXX arik: need test var Pure_component = function (_React$PureComponent) { (0, _inherits3.default)(Pure_component, _React$PureComponent); function Pure_component(props) { (0, _classCallCheck3.default)(this, Pure_component); var _this = (0, _possibleConstructorReturn3.default)(this, (Pure_component.__proto__ || Object.getPrototypeOf(Pure_component)).call(this, props)); _this.listeners = {}; _this.comp_name = _this.constructor.name; return _this; } (0, _createClass3.default)(Pure_component, [{ key: 'componentWillUnmount', value: function componentWillUnmount() { var t0 = Date.now(); if (this.sp) { this.sp.return(); delete this.sp; } // XXX michaelg: 'let of' requires shim with babel+react+ie11 // requires further investigation, leave as is till 01-Feb-2018 /* for (let l of Object.values(this.listeners)) setdb.off(l);*/ Object.values(this.listeners).forEach(function (l) { setdb.off(l); }); if (this.willUnmount) this.willUnmount(); var t1 = Date.now(); if (this.debug && t1 - t0 > LONG_CB_MS) { console.warn('long cb componentWillUnmount %s took %sms', this.comp_name, t1 - t0); } } }, { key: 'setdb_on', value: function setdb_on(path, cb, opt) { this.listeners[path] = setdb.on(path, cb, opt); } }, { key: 'setdb_off', value: function setdb_off(path) { setdb.off(this.listeners[path]); } }, { key: 'setdb_get', value: function setdb_get(path) { return setdb.get(path); } }, { key: 'setdb_set', value: function setdb_set(path, curr, opt) { return setdb.set(path, curr, opt); } }, { key: 'etask', value: function etask(sp) { if (!this.sp) this.sp = _etask('Component', /*#__PURE__*/_regenerator2.default.mark(function _callee() { return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return this.wait(); case 2: case 'end': return _context.stop(); } } }, _callee, this); })); if (sp.constructor.name != 'Etask') sp = _etask(sp); this.sp.spawn(sp); return sp; } }, { key: 'setState', value: function setState(updater, cb) { var _this2 = this, _arguments = arguments; var t0 = void 0, t1 = void 0, t2 = void 0, t3 = void 0; if (this.debug) { console.log('setState %s %s', this.comp_name, Object.keys(updater).join(', ')); t0 = Date.now(); } (0, _get3.default)(Pure_component.prototype.__proto__ || Object.getPrototypeOf(Pure_component.prototype), 'setState', this).call(this, updater, function () { t2 = Date.now(); if (cb) cb.apply(_this2, _arguments); t3 = Date.now(); if (_this2.debug && t3 - t2 > LONG_CB_MS) { console.warn('long cb setState %s cb %s took %sms', _this2.comp_name, cb && cb.name, t3 - t2); } if (_this2.debug && t3 - t0 > LONG_CB_MS) { console.warn('long cb setState-done %s cb %s took %sms', _this2.comp_name, cb && cb.name, t3 - t0); } }); t1 = Date.now(); if (this.debug && t1 - t0 > LONG_CB_MS) { console.warn('long cb setState %s took %sms', this.comp_name, t1 - t0); } } }]); return Pure_component; }(React.PureComponent); return Pure_component; }.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); // eslint-disable-line /***/ }), /* 13 */, /* 14 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(process) {/* unused harmony export bpfrpt_proptype_CellPosition */ /* unused harmony export bpfrpt_proptype_CellRendererParams */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return bpfrpt_proptype_CellRenderer; }); /* unused harmony export bpfrpt_proptype_CellCache */ /* unused harmony export bpfrpt_proptype_StyleCache */ /* unused harmony export bpfrpt_proptype_CellRangeRendererParams */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return bpfrpt_proptype_CellRangeRenderer; }); /* unused harmony export bpfrpt_proptype_CellSizeGetter */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return bpfrpt_proptype_CellSize; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return bpfrpt_proptype_NoContentRenderer; }); /* unused harmony export bpfrpt_proptype_Scroll */ /* unused harmony export bpfrpt_proptype_ScrollbarPresenceChange */ /* unused harmony export bpfrpt_proptype_RenderedSection */ /* unused harmony export bpfrpt_proptype_OverscanIndicesGetterParams */ /* unused harmony export bpfrpt_proptype_OverscanIndices */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return bpfrpt_proptype_OverscanIndicesGetter; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return bpfrpt_proptype_Alignment; }); /* unused harmony export bpfrpt_proptype_VisibleCellRange */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__utils_ScalingCellSizeAndPositionManager__ = __webpack_require__(238); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types__ = __webpack_require__(20); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_prop_types__); var bpfrpt_proptype_CellPosition = process.env.NODE_ENV === 'production' ? null : { columnIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, rowIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired }; var bpfrpt_proptype_CellRendererParams = process.env.NODE_ENV === 'production' ? null : { columnIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, isScrolling: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool.isRequired, isVisible: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool.isRequired, key: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.string.isRequired, parent: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object.isRequired, rowIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, style: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object.isRequired }; var bpfrpt_proptype_CellRenderer = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func; var bpfrpt_proptype_CellCache = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.objectOf(__WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.node.isRequired); var bpfrpt_proptype_StyleCache = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.objectOf(__WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object.isRequired); var bpfrpt_proptype_CellRangeRendererParams = process.env.NODE_ENV === 'production' ? null : { cellCache: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.objectOf(__WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.node.isRequired).isRequired, cellRenderer: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func.isRequired, columnSizeAndPositionManager: function columnSizeAndPositionManager() { return (typeof __WEBPACK_IMPORTED_MODULE_1__utils_ScalingCellSizeAndPositionManager__["a" /* default */] === 'function' ? __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.instanceOf(__WEBPACK_IMPORTED_MODULE_1__utils_ScalingCellSizeAndPositionManager__["a" /* default */]).isRequired : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.any.isRequired).apply(this, arguments); }, columnStartIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, columnStopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, deferredMeasurementCache: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object, horizontalOffsetAdjustment: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, isScrolling: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool.isRequired, isScrollingOptOut: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool.isRequired, parent: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object.isRequired, rowSizeAndPositionManager: function rowSizeAndPositionManager() { return (typeof __WEBPACK_IMPORTED_MODULE_1__utils_ScalingCellSizeAndPositionManager__["a" /* default */] === 'function' ? __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.instanceOf(__WEBPACK_IMPORTED_MODULE_1__utils_ScalingCellSizeAndPositionManager__["a" /* default */]).isRequired : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.any.isRequired).apply(this, arguments); }, rowStartIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, rowStopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, scrollLeft: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, scrollTop: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, styleCache: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.objectOf(__WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object.isRequired).isRequired, verticalOffsetAdjustment: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, visibleColumnIndices: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object.isRequired, visibleRowIndices: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.object.isRequired }; var bpfrpt_proptype_CellRangeRenderer = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func; var bpfrpt_proptype_CellSizeGetter = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func; var bpfrpt_proptype_CellSize = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func, __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number]); var bpfrpt_proptype_NoContentRenderer = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func; var bpfrpt_proptype_Scroll = process.env.NODE_ENV === 'production' ? null : { clientHeight: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, clientWidth: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, scrollHeight: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, scrollLeft: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, scrollTop: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, scrollWidth: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired }; var bpfrpt_proptype_ScrollbarPresenceChange = process.env.NODE_ENV === 'production' ? null : { horizontal: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool.isRequired, vertical: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.bool.isRequired, size: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired }; var bpfrpt_proptype_RenderedSection = process.env.NODE_ENV === 'production' ? null : { columnOverscanStartIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, columnOverscanStopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, columnStartIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, columnStopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, rowOverscanStartIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, rowOverscanStopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, rowStartIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, rowStopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired }; var bpfrpt_proptype_OverscanIndicesGetterParams = process.env.NODE_ENV === 'production' ? null : { // One of SCROLL_DIRECTION_HORIZONTAL or SCROLL_DIRECTION_VERTICAL direction: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.oneOf(['horizontal', 'vertical']).isRequired, // One of SCROLL_DIRECTION_BACKWARD or SCROLL_DIRECTION_FORWARD scrollDirection: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.oneOf([-1, 1]).isRequired, // Number of rows or columns in the current axis cellCount: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, // Maximum number of cells to over-render in either direction overscanCellsCount: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, // Begin of range of visible cells startIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, // End of range of visible cells stopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired }; var bpfrpt_proptype_OverscanIndices = process.env.NODE_ENV === 'production' ? null : { overscanStartIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired, overscanStopIndex: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number.isRequired }; var bpfrpt_proptype_OverscanIndicesGetter = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.func; var bpfrpt_proptype_Alignment = process.env.NODE_ENV === 'production' ? null : __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.oneOf(['auto', 'end', 'start', 'center']); var bpfrpt_proptype_VisibleCellRange = process.env.NODE_ENV === 'production' ? null : { start: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number, stop: __WEBPACK_IMPORTED_MODULE_2_prop_types___default.a.number }; /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(5))) /***/ }), /* 15 */, /* 16 */, /* 17 */, /* 18 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; // LICENSE_CODE ZON ISC /*jslint react:true*/ Object.defineProperty(exports, "__esModule", { value: true }); exports.Ext_tooltip = exports.Preset_description = exports.flag_with_title = exports.any_flag = exports.Logo = exports.Remove_icon = exports.Add_icon = exports.Link_icon = exports.Nav = exports.Checkbox = exports.Labeled_controller = exports.Field_row_raw = exports.Note = exports.Cm_wrapper = exports.Copy_btn = exports.Form_controller = exports.with_www_api = exports.with_proxy_ports = exports.Code = exports.Loader_small = exports.Loader = exports.Warning = exports.Warnings = exports.Tooltip_bytes = undefined; var _objectWithoutProperties2 = __webpack_require__(7); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _extends2 = __webpack_require__(4); var _extends3 = _interopRequireDefault(_extends2); var _regenerator = __webpack_require__(22); var _regenerator2 = _interopRequireDefault(_regenerator); var _classCallCheck2 = __webpack_require__(1); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = __webpack_require__(9); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = __webpack_require__(2); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = __webpack_require__(3); var _inherits3 = _interopRequireDefault(_inherits2); var _react = __webpack_require__(0); var _react2 = _interopRequireDefault(_react); var _pure_component = __webpack_require__(12); var _pure_component2 = _interopRequireDefault(_pure_component); var _reactTooltip = __webpack_require__(135); var _reactTooltip2 = _interopRequireDefault(_reactTooltip); var _classnames = __webpack_require__(6); var _classnames2 = _interopRequireDefault(_classnames); var _codemirror = __webpack_require__(60); var _codemirror2 = _interopRequireDefault(_codemirror); __webpack_require__(92); __webpack_require__(108); var _jquery = __webpack_require__(13); var _jquery2 = _interopRequireDefault(_jquery); var _util = __webpack_require__(28); var _presets = __webpack_require__(210); var _presets2 = _interopRequireDefault(_presets); var _controls = __webpack_require__(93); var _tooltip = __webpack_require__(29); var _tooltip2 = _interopRequireDefault(_tooltip); var _i18n = __webpack_require__(19); var _chrome_widgets = __webpack_require__(81); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var Tooltip_bytes = exports.Tooltip_bytes = function Tooltip_bytes(_ref) { var bytes = _ref.bytes, chrome_style = _ref.chrome_style, bytes_out = _ref.bytes_out, bytes_in = _ref.bytes_in; bytes = bytes || 0; var tooltip = [0, 1, 2, 3].map(function (n) { var bw = (0, _util.bytes_format)(bytes, n); var bw_out = (0, _util.bytes_format)(bytes_out, n); var bw_in = (0, _util.bytes_format)(bytes_in, n); var details = bytes_out && bytes_in && '(' + bw_out + ' up | ' + bw_in + ' down)' || ''; return '<div><strong>' + bw + '</strong> ' + details + '</div>'; }).join(''); return _react2.default.createElement( _tooltip2.default, { title: bytes ? tooltip : '' }, _react2.default.createElement( 'div', { className: 'disp_value' }, (0, _util.bytes_format)(bytes) || '—' ) ); }; var Warnings = exports.Warnings = function Warnings(props) { return _react2.default.createElement( 'div', null, (props.warnings || []).map(function (w, i) { return _react2.default.createElement(Warning, { key: i, text: w.msg, id: w.id }); }) ); }; var Warning = exports.Warning = function (_Pure_component) { (0, _inherits3.default)(Warning, _Pure_component); function Warning(props) { (0, _classCallCheck3.default)(this, Warning); var _this = (0, _possibleConstructorReturn3.default)(this, (Warning.__proto__ || Object.getPrototypeOf(Warning)).call(this, props)); _initialiseProps.call(_this); var dismissed_warnings = JSON.parse(window.localStorage.getItem('dismissed-warnings')) || {}; _this.state = { dismissed: props.id && dismissed_warnings[props.id] }; return _this; } (0, _createClass3.default)(Warning, [{ key: 'render', value: function render() { if (this.state.dismissed) return null; var content = this.props.text || this.props.children; return _react2.default.createElement( _tooltip2.default, { className: 'wide', title: this.props.tooltip, placement: 'bottom' }, _react2.default.createElement( 'div', { className: 'warning' }, _react2.default.createElement('div', { className: 'warning_icon' }), _react2.default.createElement( 'div', { className: 'hbox' }, content ), this.props.id && _react2.default.createElement(_chrome_widgets.Toolbar_button, { tooltip: 'Dismiss', id: 'close_btn', placement: 'left', on_click: this.dismiss }) ) ); } }]); return Warning; }(_pure_component2.default); var _initialiseProps = function _initialiseProps() { var _this11 = this; this.dismiss = function () { _this11.setState({ dismissed: true }, _this11.store); }; this.store = function () { var dismissed_warnings = JSON.parse(window.localStorage.getItem('dismissed-warnings')) || {}; dismissed_warnings[_this11.props.id] = true; window.localStorage.setItem('dismissed-warnings', JSON.stringify(dismissed_warnings)); }; }; var Loader = exports.Loader = function Loader(_ref2) { var show = _ref2.show; if (!show) return null; return _react2.default.createElement( 'div', { className: 'loader_wrapper' }, _react2.default.createElement('div', { className: 'mask' }), _react2.default.createElement( 'div', { className: 'loader' }, _react2.default.createElement('div', { className: 'spinner' }) ) ); }; var Loader_small = exports.Loader_small = function Loader_small(props) { var show = props.show, saving = props.saving, loading_msg = props.loading_msg, _props$std_msg = props.std_msg, std_msg = _props$std_msg === undefined ? '' : _props$std_msg, std_tooltip = props.std_tooltip; saving = show || saving; loading_msg = loading_msg || 'Saving...'; var msg = saving ? loading_msg : std_msg; var tooltip = saving ? '' : std_tooltip; return _react2.default.createElement( 'div', { className: 'loader_small' }, _react2.default.createElement('div', { className: (0, _classnames2.default)('spinner', { show: saving }) }), _react2.default.createElement( 'div', { className: (0, _classnames2.default)('saving_label', { saving: saving }) }, _react2.default.createElement( _tooltip2.default, { title: tooltip }, msg ) ) ); }; // XXX krzysztof: refactoring: reuse Copy_btn component var Code = exports.Code = (0, _i18n.with_tt)(['Copy to clipboard', 'Copy', 'Copied!'], function (_Pure_component2) { (0, _inherits3.default)(Code, _Pure_component2); function Code() { (0, _classCallCheck3.default)(this, Code); return (0, _possibleConstructorReturn3.default)(this, (Code.__proto__ || Object.getPrototypeOf(Code)).apply(this, arguments)); } (0, _createClass3.default)(Code, [{ key: 'componentDidMount', value: function componentDidMount() { var t = this.props.t; (0, _jquery2.default)(this.ref).find('.btn_copy').tooltip('show').attr('title', t['Copy to clipboard']).tooltip('fixTitle'); } }, { key: 'set_ref', value: function set_ref(e) { this.ref = e; } }, { key: 'copy', value: function copy() { var t = this.props.t; if (this.props.on_click) this.props.on_click(); var area = (0, _jquery2.default)(this.ref).children('textarea')[0]; var source = (0, _jquery2.default)(this.ref).children('.source')[0]; area.value = source.innerText; area.select(); try { document.execCommand('copy'); (0, _jquery2.default)(this.ref).find('.btn_copy').attr('title', t['Copied!']).tooltip('fixTitle').tooltip('show').attr('title', t['Copy to clipboard']).tooltip('fixTitle'); } catch (e) { this.etask( /*#__PURE__*/_regenerator2.default.mark(function _callee() { return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return (0, _util.report_exception)(e, 'common.Code.copy'); case 2: case 'end': return _context.stop(); } } }, _callee, this); })); } } }, { key: 'render', value: function render() { var t = this.props.t; return _react2.default.createElement( 'code', { ref: this.set_ref.bind(this) }, _react2.default.createElement( 'span', { className: 'source' }, this.props.children ), _react2.default.createElement('textarea', { style: { position: 'fixed', top: '-1000px' } }), _react2.default.createElement( 'button', { onClick: this.copy.bind(this), 'data-container': 'body', className: 'btn btn_lpm btn_lpm_small btn_copy' }, t['Copy'] ) ); } }]); return Code; }(_pure_component2.default)); var with_proxy_ports = exports.with_proxy_ports = function with_proxy_ports(Component) { var port_select = function port_select(data) { return function port_select_inner(props) { return _react2.default.createElement(_controls.Select, { val: props.val, data: data, on_change_wrapper: props.on_change, disabled: props.disabled }); }; }; var With_proxy_ports = function (_Pure_component3) { (0, _inherits3.default)(With_proxy_ports, _Pure_component3); function With_proxy_ports() { var _ref3; var _temp, _this3, _ret; (0, _classCallCheck3.default)(this, With_proxy_ports); for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return _ret = (_temp = (_this3 = (0, _possibleConstructorReturn3.default)(this, (_ref3 = With_proxy_ports.__proto__ || Object.getPrototypeOf(With_proxy_ports)).call.apply(_ref3, [this].concat(args))), _this3), _this3.state = {}, _this3.port_select = port_select([]), _temp), (0, _possibleConstructorReturn3.default)(_this3, _ret); } (0, _createClass3.default)(With_proxy_ports, [{ key: 'componentDidMount', value: function componentDidMount() { var _this4 = this; this.setdb_on('head.proxies_running', function (proxies) { if (!proxies) return; var ports = proxies.map(function (p) { return p.port; }); var ports_opt = proxies.map(function (p) { var name = p.internal_name ? ' (' + p.internal_name + ')' : ''; var key = p.port + name; return { key: key, value: p.port }; }); var def_port = ports[0]; _this4.port_select = port_select(ports_opt); _this4.setState({ ports: ports, ports_opt: ports_opt, def_port: def_port, ports_loaded: true }); }); } }, { key: 'render', value: function render() { if (!this.state.ports_loaded) return _react2.default.createElement(Loader, { show: true }); return _react2.default.createElement(Component, (0, _extends3.default)({}, this.props, { port_select: this.port_select, def_port: this.state.def_port, ports: this.state.ports, ports_opt: this.state.ports_opt })); } }]); return With_proxy_ports; }(_pure_component2.default); return With_proxy_ports; }; var with_www_api = exports.with_www_api = function with_www_api(Component) { var With_www_api = function (_Pure_component4) { (0, _inherits3.default)(With_www_api, _Pure_component4); function With_www_api() { var _ref4; var _temp2, _this5, _ret2; (0, _classCallCheck3.default)(this, With_www_api); for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } return _ret2 = (_temp2 = (_this5 = (0, _possibleConstructorReturn3.default)(this, (_ref4 = With_www_api.__proto__ || Object.getPrototypeOf(With_www_api)).call.apply(_ref4, [this].concat(args))), _this5), _this5.state = {}, _temp2), (0, _possibleConstructorReturn3.default)(_this5, _ret2); } (0, _createClass3.default)(With_www_api, [{ key: 'componentDidMount', value: function componentDidMount() { var _this6 = this; this.setdb_on('head.defaults', function (defaults) { if (defaults) _this6.setState({ www_api: defaults.www_api }); }); } }, { key: 'render', value: function render() { var www_api = 'https://luminati.io'; if (this.state.www_api) www_api = this.state.www_api; return _react2.default.createElement(Component, (0, _extends3.default)({}, this.props, { www_api: www_api })); } }]); return With_www_api; }(_pure_component2.default); return With_www_api; }; var Form_controller = exports.Form_controller = function Form_controller(props) { var type = props.type; if (type == 'select') return _react2.default.createElement(_controls.Select, props);else if (type == 'typeahead') return _react2.default.createElement(_controls.Typeahead_wrapper, props);else if (type == 'textarea') return _react2.default.createElement(_controls.Textarea, props);else if (type == 'json') return _react2.default.createElement(_controls.Json, props);else if (type == 'url') return _react2.default.createElement(_controls.Url_input, props);else if (type == 'regex') return _react2.default.createElement(_controls.Regex, props);else if (type == 'regex_text') return _react2.default.createElement(_controls.Regex, (0, _extends3.default)({}, props, { no_tip_box: true }));else if (type == 'yes_no') return _react2.default.createElement(_controls.Yes_no, props);else if (type == 'select_number') return _react2.default.createElement(_controls.Select_number, props);else if (type == 'select_status') return _react2.default.createElement(_controls.Select_status, props);else if (type == 'pins') return _react2.default.createElement(_controls.Pins, props); return _react2.default.createElement(_controls.Input, props); }; var Copy_btn = exports.Copy_btn = (0, _i18n.with_tt)(['Copy to clipboard', 'Copy', 'Copied!'], function (_Pure_component5) { (0, _inherits3.default)(Copy_btn, _Pure_component5); function Copy_btn() { var _ref5; var _temp3, _this7, _ret3; (0, _classCallCheck3.default)(this, Copy_btn); for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { args[_key3] = arguments[_key3]; } return _ret3 = (_temp3 = (_this7 = (0, _possibleConstructorReturn3.default)(this, (_ref5 = Copy_btn.__proto__ || Object.getPrototypeOf(Copy_btn)).call.apply(_ref5, [this].concat(args))), _this7), _this7.textarea = _react2.default.createRef(), _this7.btn = _react2.default.createRef(), _this7.copy = function () { var t = _this7.props.t; var txt = _this7.textarea.current; var area = (0, _jquery2.default)(txt)[0]; area.value = _this7.props.val; area.select(); try { document.execCommand('copy'); (0, _jquery2.default)(_this7.btn.current).attr('title', t['Copied!']).tooltip('fixTitle').tooltip('show').attr('title', t['Copy to clipboard']).tooltip('fixTitle'); } catch (e) { _this7.etask( /*#__PURE__*/_regenerator2.default.mark(function _callee2() { return _regenerator2.default.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return (0, _util.report_exception)(e, 'common.Copy_btn.copy'); case 2: case 'end': return _context2.stop(); } } }, _callee2, this); })); } }, _temp3), (0, _possibleConstructorReturn3.default)(_this7, _ret3); } (0, _createClass3.default)(Copy_btn, [{ key: 'refreshTooltip', value: function refreshTooltip() { (0, _jquery2.default)(this.btn.current).attr('title', this.props.t['Copy to clipboard']).tooltip('fixTitle'); } }, { key: 'componentDidMount', value: function componentDidMount() { this.refreshTooltip(); } }, { key: 'componentDidUpdate', value: function componentDidUpdate() { this.refreshTooltip(); } }, { key: 'render', value: function render() { return _react2.default.createElement( 'div', { className: 'copy_btn', style: this.props.style }, _react2.default.createElement( 'button', { onClick: this.copy, 'data-container': 'body', style: this.props.inner_style, ref: this.btn, className: 'btn btn_lpm btn_lpm_small btn_copy' }, _react2.default.createElement( _i18n.T, null, this.props.title || 'Copy' ) ), _react2.default.createElement('textarea', { ref: this.textarea, style: { position: 'fixed', top: '-1000px' } }) ); } }]); return Copy_btn; }(_pure_component2.default)); var Cm_wrapper = exports.Cm_wrapper = function (_Pure_component6) { (0, _inherits3.default)(Cm_wrapper, _Pure_component6); function Cm_wrapper() { var _ref6; var _temp4, _this8, _ret4; (0, _classCallCheck3.default)(this, Cm_wrapper); for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { args[_key4] = arguments[_key4]; } return _ret4 = (_temp4 = (_this8 = (0, _possibleConstructorReturn3.default)(this, (_ref6 = Cm_wrapper.__proto__ || Object.getPrototypeOf(Cm_wrapper)).call.apply(_ref6, [this].concat(args))), _this8), _this8.on_cm_change = function (cm) { var new_val = cm.doc.getValue(); if (new_val == _this8.props.val) return; _this8.props.on_change(new_val); }, _this8.set_ref = function (ref) { _this8.textarea = ref; }, _temp4), (0, _possibleConstructorReturn3.default)(_this8, _ret4); } (0, _createClass3.default)(Cm_wrapper, [{ key: 'componentDidMount', value: function componentDidMount() { var opt = { mode: 'javascript' }; if (this.props.readonly) opt.readOnly = 'nocursor'; this.cm = _codemirror2.default.fromTextArea(this.textarea, opt); this.cm.on('change', this.on_cm_change); this.cm.setSize('100%', '100%'); this.cm.doc.setValue(this.props.val || ''); } }, { key: 'componentDidUpdate', value: function componentDidUpdate(prev_props) { if (prev_props.val != this.props.val && this.cm.doc.getValue() != this.props.val) { this.cm.doc.setValue(this.props.val || ''); } } }, { key: 'render', value: function render() { return _react2.default.createElement( 'div', { className: 'code_mirror_wrapper' }, _react2.default.createElement(Copy_btn, { val: this.props.val }), _react2.default.createElement('textarea', { ref: this.set_ref }) ); } }]); return Cm_wrapper; }(_pure_component2.default); var Note = exports.Note = function Note(props) { return _react2.default.createElement( 'div', { className: 'note' }, _react2.default.createElement( 'span', null, props.children ) ); }; var Field_row_raw = function Field_row_raw(_ref7) { var disabled = _ref7.disabled, note = _ref7.note, animated = _ref7.animated, props = (0, _objectWithoutProperties3.default)(_ref7, ['disabled', 'note', 'animated']); var classes = (0, _classnames2.default)('field_row', { disabled: disabled, note: note }); var inner_classes = (0, _classnames2.default)('field_row_inner', props.inner_class_name, { animated: animated }); return _react2.default.createElement( 'div', { className: 'field_row_wrapper' }, _react2.default.createElement( 'div', { className: classes }, _react2.default.createElement( 'div', { className: inner_classes, style: props.inner_style }, props.children ) ) ); }; exports.Field_row_raw = Field_row_raw; var Labeled_controller = exports.Labeled_controller = function Labeled_controller(props) { return _react2.default.createElement( Field_row_raw, { disabled: props.disabled, note: props.note, animated: props.animated, inner_style: props.field_row_inner_style }, _react2.default.createElement( _i18n.T, null, function (t) { return _react2.default.createElement( _react2.default.Fragment, null, _react2.default.createElement( 'div', { className: 'desc', style: props.desc_style }, _react2.default.createElement( _tooltip2.default, { title: t(props.tooltip) }, t(props.label) ) ), _react2.default.createElement( 'div', null, _react2.default.createElement( 'div', { className: 'field', 'data-tip': true, 'data-for': props.id + 'tip' }, props.children || _react2.default.createElement(Form_controller, (0, _extends3.default)({ disabled: props.disabled }, props)), props.sufix && _react2.default.createElement( 'span', { className: 'sufix' }, t(props.sufix) ), props.field_tooltip && _react2.default.createElement( _reactTooltip2.default, { id: props.id + 'tip', type: 'light', effect: 'solid', delayHide: 30, delayUpdate: 300, place: 'right' }, t(props.field_tooltip) ) ), props.note && _react2.default.createElement( Note, null, t(props.note) ) ) ); } ) ); }; var Checkbox = exports.Checkbox = function Checkbox(props) { return _react2.default.createElement( 'div', { className: 'form-check' }, _react2.default.createElement( 'label', { className: 'form-check-label' }, _react2.default.createElement('input', { className: 'form-check-input', type: 'checkbox', value: props.value, onChange: props.on_change, onClick: props.on_click, checked: props.checked, readOnly: props.readonly }), props.text ) ); }; var Nav = exports.Nav = function Nav(_ref8) { var title = _ref8.title, subtitle = _ref8.subtitle, warning = _ref8.warning; return _react2.default.createElement( 'div', { className: 'nav_header' }, _react2.default.createElement( 'h3', null, _react2.default.createElement( _i18n.T, null, title ) ), _react2.default.createElement( 'div', { className: 'subtitle' }, _react2.default.createElement( _i18n.T, null, subtitle ) ), _react2.default.createElement(Warning_msg, { warning: warning }) ); }; var Warning_msg = function Warning_msg(_ref9) { var warning = _ref9.warning; if (!warning) return null; return _react2.default.createElement(Warning, { text: warning }); }; var Link_icon = exports.Link_icon = function Link_icon(props) { var tooltip = props.tooltip, on_click = props.on_click, id = props.id, classes = props.classes, disabled = props.disabled, invisible = props.invisible, small = props.small, img = props.img; if (invisible) tooltip = ''; if (disabled || invisible) on_click = function on_click() { return null; }; classes = (0, _classnames2.default)(classes, { small: small }); var icon = img ? _react2.default.createElement('div', { className: 'img_icon', style: { backgroundImage: 'url(' + img + ')' } }) : _react2.default.createElement('i', { className: (0, _classnames2.default)('glyphicon', 'glyphicon-' + id) }); return _react2.default.createElement( _i18n.T, null, function (t) { return _react2.default.createElement( _tooltip2.default, { title: t(tooltip), key: id }, _react2.default.createElement( 'span', { className: (0, _classnames2.default)('link', 'icon_link', classes), onClick: on_click }, icon ) ); } ); }; var Add_icon = exports.Add_icon = function Add_icon(_ref10) { var click = _ref10.click, tooltip = _ref10.tooltip; return _react2.default.createElement( _tooltip2.default, { title: tooltip }, _react2.default.createElement( 'span', { className: 'link icon_link top right add_header', onClick: click }, _react2.default.createElement('i', { className: 'glyphicon glyphicon-plus' }) ) ); }; var Remove_icon = exports.Remove_icon = function Remove_icon(_ref11) { var click = _ref11.click, tooltip = _ref11.tooltip; return _react2.default.createElement( _tooltip2.default, { title: tooltip }, _react2.default.createElement( 'span', { className: 'link icon_link top', onClick: click }, _react2.default.createElement('i', { className: 'glyphicon glyphicon-trash' }) ) ); }; var Logo = exports.Logo = with_www_api(function (_Pure_component7) { (0, _inherits3.default)(Logo, _Pure_component7); function Logo() { var _ref12; var _temp5, _this9, _ret5; (0, _classCallCheck3.default)(this, Logo); for (var _len5 = arguments.length, args = Array(_len5), _key5 = 0; _key5 < _len5; _key5++) { args[_key5] = arguments[_key5]; } return _ret5 = (_temp5 = (_this9 = (0, _possibleConstructorReturn3.default)(this, (_ref12 = Logo.__proto__ || Object.getPrototypeOf(Logo)).call.apply(_ref12, [this].concat(args))), _this9), _this9.state = {}, _temp5), (0, _possibleConstructorReturn3.default)(_this9, _ret5); } (0, _createClass3.default)(Logo, [{ key: 'componentDidMount', value: function componentDidMount() { var _this10 = this; this.setdb_on('head.version', function (ver) { return _this10.setState({ ver: ver }); }); } }, { key: 'render', value: function render() { return _react2.default.createElement( 'div', { className: 'nav_top' }, _react2.default.createElement('a', { href: this.props.www_api + '/cp', rel: 'noopener noreferrer', target: '_blank', className: 'logo_big' }), _react2.default.createElement( 'div', { className: 'version' }, 'V', this.state.ver ), _react2.default.createElement( 'div', { className: 'nav_top_right' }, _react2.default.createElement(_i18n.Language, null) ) ); } }]); return Logo; }(_pure_component2.default)); var any_flag = exports.any_flag = _react2.default.createElement( _i18n.T, null, function (t) { return _react2.default.createElement( _tooltip2.default, { title: t('Any') }, _react2.default.createElement( 'span', null, _react2.default.createElement('img', { src: '/img/flag_any_country.svg', style: { height: 18 } }), _react2.default.createElement( 'span', { className: 'lit', style: { marginLeft: 2 } }, t('Any') ) ) ); } ); var flag_with_title = exports.flag_with_title = function flag_with_title(country, title) { return _react2.default.createElement( _tooltip2.default, { title: country.toUpperCase() }, _react2.default.cre