UNPKG

@atlaskit/editor-plugin-extension

Version:

editor-plugin-extension plugin for @atlaskit/editor-core

93 lines (91 loc) 3.24 kB
import _slicedToArray from "@babel/runtime/helpers/slicedToArray"; /** * @jsxRuntime classic * @jsx jsx */ import React, { useState } from 'react'; // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766 import { css, jsx } from '@emotion/react'; import { injectIntl } from 'react-intl'; import { IconButton } from '@atlaskit/button/new'; import { configPanelMessages as messages } from '@atlaskit/editor-common/extensions'; import ChevronDownIcon from '@atlaskit/icon/core/chevron-down'; import ChevronRightIcon from '@atlaskit/icon/core/chevron-right'; var expandContainerStyles = css({ borderBottom: "var(--ds-border-width, 1px)".concat(" solid ", "var(--ds-border, #0B120E24)") }); var expandControlStyles = css({ display: 'flex', height: "var(--ds-space-600, 48px)", justifyContent: 'center', paddingRight: "var(--ds-space-100, 8px)" }); var chevronContainerStyles = css({ display: 'flex', alignItems: 'center', // eslint-disable-next-line @atlaskit/design-system/no-nested-styles, @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766 '& > button': { width: "var(--ds-space-300, 24px)", height: "var(--ds-space-300, 24px)" } }); var labelContainerStyles = css({ width: '100%', alignItems: 'center', display: 'flex', fontWeight: "var(--ds-font-weight-medium, 500)" }); var expandContentContainerHiddenStyles = css({ display: 'none', marginTop: "var(--ds-space-negative-100, -8px)" }); var expandContentContainerVisibleStyles = css({ display: 'block', marginTop: "var(--ds-space-negative-100, -8px)" }); function Expand(_ref) { var field = _ref.field, children = _ref.children, _ref$isExpanded = _ref.isExpanded, isExpanded = _ref$isExpanded === void 0 ? false : _ref$isExpanded, intl = _ref.intl; var _useState = useState(isExpanded), _useState2 = _slicedToArray(_useState, 2), expanded = _useState2[0], setExpanded = _useState2[1]; return jsx("div", { "data-testid": "expand-config-field", css: expandContainerStyles }, jsx("div", { css: expandControlStyles }, jsx("div", { css: labelContainerStyles }, field.label), jsx("div", { css: chevronContainerStyles }, jsx(IconButton // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed) , { onClick: function onClick() { setExpanded(!expanded); }, label: intl.formatMessage(expanded ? messages.collapse : messages.expand), testId: "form-expand-toggle" // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed) , icon: function icon(iconProps) { return expanded ? jsx(ChevronDownIcon, { label: iconProps.label, size: "small" }) : jsx(ChevronRightIcon, { label: iconProps.label, size: "small" }); } }))), jsx("div", { "data-testid": "expand-content-container", css: expanded ? expandContentContainerVisibleStyles : expandContentContainerHiddenStyles }, children)); } // eslint-disable-next-line @typescript-eslint/ban-types var _default_1 = injectIntl(Expand); export default _default_1;