UNPKG

@atlaskit/editor-plugin-tasks-and-decisions

Version:

Tasks and decisions plugin for @atlaskit/editor-core

79 lines (78 loc) 4.18 kB
import _extends from "@babel/runtime/helpers/extends"; import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties"; 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"; import _defineProperty from "@babel/runtime/helpers/defineProperty"; var _excluded = ["providers", "intl", "taskDecisionProvider", "api", "placeholder"]; 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'; import { injectIntl } from 'react-intl'; import { tasksAndDecisionsMessages } from '@atlaskit/editor-common/messages'; import { ProviderFactory, WithProviders } from '@atlaskit/editor-common/provider-factory'; import { useSharedPluginStateSelector } from '@atlaskit/editor-common/use-shared-plugin-state-selector'; import TaskItemWithProviders from './task-item-with-providers'; // eslint-disable-next-line @repo/internal/react/no-class-components export var TaskItem = /*#__PURE__*/function (_PureComponent) { function TaskItem(props) { var _this; _classCallCheck(this, TaskItem); _this = _callSuper(this, TaskItem, [props]); _defineProperty(_this, "renderWithProvider", function (providers) { var _this$props = _this.props, _providerFactory = _this$props.providers, formatMessage = _this$props.intl.formatMessage, taskDecisionProvider = _this$props.taskDecisionProvider, api = _this$props.api, placeholder = _this$props.placeholder, otherProps = _objectWithoutProperties(_this$props, _excluded); var contextIdentifierProvider = providers.contextIdentifierProvider; return /*#__PURE__*/React.createElement(TaskItemWithProviders // Ignored via go/ees005 // eslint-disable-next-line react/jsx-props-no-spreading , _extends({}, otherProps, { placeholder: placeholder !== null && placeholder !== void 0 ? placeholder : formatMessage(tasksAndDecisionsMessages.taskPlaceholder), taskDecisionProvider: taskDecisionProvider ? Promise.resolve(taskDecisionProvider) : undefined, contextIdentifierProvider: contextIdentifierProvider })); }); _this.providerFactory = props.providers || new ProviderFactory(); return _this; } _inherits(TaskItem, _PureComponent); return _createClass(TaskItem, [{ key: "componentWillUnmount", value: function componentWillUnmount() { if (!this.props.providers) { // new ProviderFactory is created if no `providers` has been set // in this case when component is unmounted it's safe to destroy this providerFactory this.providerFactory.destroy(); } } }, { key: "render", value: function render() { var providers = ['contextIdentifierProvider']; return /*#__PURE__*/React.createElement(WithProviders, { providers: providers, providerFactory: this.providerFactory, renderNode: this.renderWithProvider }); } }]); }(PureComponent); _defineProperty(TaskItem, "displayName", 'TaskItem'); var TaskItemWrapper = function TaskItemWrapper(props) { var provider = useSharedPluginStateSelector(props.api, 'taskDecision.taskDecisionProvider'); // Ignored via go/ees005 // eslint-disable-next-line react/jsx-props-no-spreading return /*#__PURE__*/React.createElement(TaskItem, _extends({ taskDecisionProvider: provider }, props)); }; // eslint-disable-next-line @typescript-eslint/ban-types var _default_1 = injectIntl(TaskItemWrapper); export default _default_1;