UNPKG

@atlaskit/editor-plugin-floating-toolbar

Version:

Floating toolbar plugin for @atlaskit/editor-core

97 lines (96 loc) 5.36 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _typeof = require("@babel/runtime/helpers/typeof"); Object.defineProperty(exports, "__esModule", { value: true }); exports.CheckboxModal = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = _interopRequireWildcard(require("react")); var _new = _interopRequireDefault(require("@atlaskit/button/new")); var _checkbox = require("@atlaskit/checkbox"); var _floatingToolbar = require("@atlaskit/editor-common/floating-toolbar"); var _modalDialog = _interopRequireWildcard(require("@atlaskit/modal-dialog")); var _compiled = require("@atlaskit/primitives/compiled"); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); } var CheckboxModal = exports.CheckboxModal = function CheckboxModal(props) { var _options$getChildrenI; var _useState = (0, _react.useState)(false), _useState2 = (0, _slicedToArray2.default)(_useState, 2), isChecked = _useState2[0], setCheckbox = _useState2[1]; var onConfirm = props.onConfirm, onClose = props.onClose, options = props.options, formatMessage = props.intl.formatMessage, testId = props.testId; var heading = (options === null || options === void 0 ? void 0 : options.title) || formatMessage(_floatingToolbar.messages.confirmModalDefaultHeading); var okButtonLabel = (options === null || options === void 0 ? void 0 : options.okButtonLabel) || formatMessage(_floatingToolbar.messages.confirmModalOK); var cancelButtonLabel = (options === null || options === void 0 ? void 0 : options.cancelButtonLabel) || formatMessage(_floatingToolbar.messages.confirmModalCancel); var checkboxlabel = options === null || options === void 0 ? void 0 : options.checkboxLabel; var childrenInfo = options === null || options === void 0 || (_options$getChildrenI = options.getChildrenInfo) === null || _options$getChildrenI === void 0 ? void 0 : _options$getChildrenI.call(options); var ListComponent = function ListComponent(_ref) { var nodes = _ref.nodes; if (nodes.length === 0) { return null; } return /*#__PURE__*/_react.default.createElement("ul", null, nodes.map(function (node) { return ( /*#__PURE__*/ // Ignored via go/ees005 // eslint-disable-next-line react/jsx-props-no-spreading _react.default.createElement(ListItem, (0, _extends2.default)({}, node, { key: node.id })) ); })); }; var ListItem = function ListItem(props) { var id = props.id, name = props.name, amount = props.amount; return /*#__PURE__*/_react.default.createElement("li", { id: id }, formatMessage(_floatingToolbar.messages.confirmModalListUnit, { name: name, amount: amount })); }; return /*#__PURE__*/_react.default.createElement(_modalDialog.default, { onClose: onClose, testId: testId }, /*#__PURE__*/_react.default.createElement(_modalDialog.ModalHeader, { hasCloseButton: true }, /*#__PURE__*/_react.default.createElement(_modalDialog.ModalTitle, { appearance: "warning" }, heading)), /*#__PURE__*/_react.default.createElement(_modalDialog.ModalBody, null, /*#__PURE__*/_react.default.createElement(_compiled.Text, { as: "p" }, options === null || options === void 0 ? void 0 : options.message), !!(childrenInfo !== null && childrenInfo !== void 0 && childrenInfo.length) && /*#__PURE__*/_react.default.createElement(ListComponent, { nodes: childrenInfo }), /*#__PURE__*/_react.default.createElement(_compiled.Text, { as: "p" }, /*#__PURE__*/_react.default.createElement(_checkbox.Checkbox, { isChecked: isChecked // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed) , onChange: function onChange() { return setCheckbox(!isChecked); }, label: checkboxlabel, testId: testId ? "".concat(testId, "-checkbox") : undefined }))), /*#__PURE__*/_react.default.createElement(_modalDialog.ModalFooter, null, /*#__PURE__*/_react.default.createElement(_new.default, { appearance: "default", onClick: onClose, testId: testId ? "".concat(testId, "-cancel-button") : undefined }, cancelButtonLabel), /*#__PURE__*/_react.default.createElement(_new.default, { appearance: "warning" // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed) , onClick: function onClick() { onConfirm(isChecked); onClose(); }, testId: testId ? "".concat(testId, "-confirm-button") : undefined }, okButtonLabel))); };