UNPKG

@atlaskit/renderer

Version:
57 lines 2.75 kB
import _slicedToArray from "@babel/runtime/helpers/slicedToArray"; /** * @jsxRuntime classic * @jsx jsx */ import { useState } from 'react'; // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766 import { jsx } from '@emotion/react'; import { injectIntl } from 'react-intl'; import { CodeBlockSharedCssClassName } from '@atlaskit/editor-common/styles'; import { CodeBlock as AkCodeBlock } from '@atlaskit/code'; import { codeBidiWarningMessages } from '@atlaskit/editor-common/messages'; import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals'; import CodeBlockContainer from './components/codeBlockContainer'; function CodeBlock(props) { var text = props.text, language = props.language, _props$allowCopyToCli = props.allowCopyToClipboard, allowCopyToClipboard = _props$allowCopyToCli === void 0 ? false : _props$allowCopyToCli, _props$allowWrapCodeB = props.allowWrapCodeBlock, allowWrapCodeBlock = _props$allowWrapCodeB === void 0 ? false : _props$allowWrapCodeB, codeBidiWarningTooltipEnabled = props.codeBidiWarningTooltipEnabled, _props$hideLineNumber = props.hideLineNumbers, hideLineNumbers = _props$hideLineNumber === void 0 ? false : _props$hideLineNumber, localId = props.localId, wrap = props.wrap; var codeBidiWarningLabel = props.intl.formatMessage(codeBidiWarningMessages.label); var className = [CodeBlockSharedCssClassName.CODEBLOCK_CONTAINER, props.className].join(' '); var _useState = useState(function () { return expValEquals('platform_editor_code_block_q4_lovability', 'isEnabled', true) && Boolean(wrap); }), _useState2 = _slicedToArray(_useState, 2), wrapLongLines = _useState2[0], setWrapLongLines = _useState2[1]; return jsx(CodeBlockContainer, { allowCopyToClipboard: allowCopyToClipboard, allowWrapCodeBlock: allowWrapCodeBlock // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766 , className: className, localId: localId, setWrapLongLines: setWrapLongLines, text: text, wrapLongLines: wrapLongLines }, jsx(AkCodeBlock, { testId: "renderer-code-block", language: language, text: text, codeBidiWarningLabel: codeBidiWarningLabel, codeBidiWarningTooltipEnabled: codeBidiWarningTooltipEnabled, shouldWrapLongLines: allowWrapCodeBlock && wrapLongLines, shouldShowLineNumbers: !(expValEquals('platform_editor_code_block_q4_lovability', 'isEnabled', true) && hideLineNumbers), hasBidiWarnings: expValEquals('platform_editor_remove_bidi_char_warning', 'isEnabled', true) ? false : undefined })); } var _default_1 = injectIntl(CodeBlock); export default _default_1;