UNPKG

@react-awesome-query-builder-dev/ui

Version:
108 lines 4.92 kB
import _classCallCheck from "@babel/runtime/helpers/classCallCheck"; import _createClass from "@babel/runtime/helpers/createClass"; import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn"; import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf"; import _inherits from "@babel/runtime/helpers/inherits"; function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } import React, { PureComponent } from "react"; var groupActionsPositionList = { topLeft: "group--actions--tl", topCenter: "group--actions--tc", topRight: "group--actions--tr", bottomLeft: "group--actions--bl", bottomCenter: "group--actions--bc", bottomRight: "group--actions--br" }; var defaultPosition = "topRight"; export var GroupActions = /*#__PURE__*/function (_PureComponent) { function GroupActions() { _classCallCheck(this, GroupActions); return _callSuper(this, GroupActions, arguments); } _inherits(GroupActions, _PureComponent); return _createClass(GroupActions, [{ key: "render", value: function render() { var _this$props = this.props, config = _this$props.config, addRule = _this$props.addRule, addGroup = _this$props.addGroup, removeSelf = _this$props.removeSelf, setLock = _this$props.setLock, isLocked = _this$props.isLocked, isTrueLocked = _this$props.isTrueLocked, id = _this$props.id, parentField = _this$props.parentField, canAddGroup = _this$props.canAddGroup, canAddRule = _this$props.canAddRule, canDeleteGroup = _this$props.canDeleteGroup; var _config$settings = config.settings, immutableGroupsMode = _config$settings.immutableGroupsMode, addRuleLabel = _config$settings.addRuleLabel, addGroupLabel = _config$settings.addGroupLabel, addSubRuleLabel = _config$settings.addSubRuleLabel, addSubGroupLabel = _config$settings.addSubGroupLabel, delGroupLabel = _config$settings.delGroupLabel, groupActionsPosition = _config$settings.groupActionsPosition, renderButton = _config$settings.renderButton, renderIcon = _config$settings.renderIcon, renderSwitch = _config$settings.renderSwitch, renderButtonGroup = _config$settings.renderButtonGroup, lockLabel = _config$settings.lockLabel, lockedLabel = _config$settings.lockedLabel, showLock = _config$settings.showLock, canDeleteLocked = _config$settings.canDeleteLocked; var Icon = function Icon(pr) { return renderIcon(pr, config.ctx); }; var Btn = function Btn(pr) { return renderButton(pr, config.ctx); }; var Switch = function Switch(pr) { return renderSwitch(pr, config.ctx); }; var BtnGrp = function BtnGrp(pr) { return renderButtonGroup(pr, config.ctx); }; var position = groupActionsPositionList[groupActionsPosition || defaultPosition]; var setLockSwitch = showLock && !(isLocked && !isTrueLocked) && /*#__PURE__*/React.createElement(Switch, { type: "lock", id: id, value: isLocked, setValue: setLock, label: lockLabel, checkedLabel: lockedLabel, config: config }); var addRuleBtn = !immutableGroupsMode && canAddRule && !isLocked && /*#__PURE__*/React.createElement(Btn, { type: parentField ? "addSubRule" : "addRule", onClick: addRule, label: parentField ? addSubRuleLabel : addRuleLabel, readonly: isLocked, config: config, renderIcon: Icon }); var addGroupBtn = !immutableGroupsMode && canAddGroup && !isLocked && /*#__PURE__*/React.createElement(Btn, { type: parentField ? "addSubGroup" : "addGroup", onClick: addGroup, label: parentField ? addSubGroupLabel : addGroupLabel, readonly: isLocked, config: config, renderIcon: Icon }); var delGroupBtn = !immutableGroupsMode && canDeleteGroup && (!isLocked || isLocked && canDeleteLocked) && /*#__PURE__*/React.createElement(Btn, { type: "delGroup", onClick: removeSelf, label: delGroupLabel, config: config, renderIcon: Icon }); return /*#__PURE__*/React.createElement("div", { className: "group--actions ".concat(position) }, /*#__PURE__*/React.createElement(BtnGrp, { config: config }, setLockSwitch, addRuleBtn, addGroupBtn, delGroupBtn)); } }]); }(PureComponent);