UNPKG

@atlaskit/editor-plugin-extension

Version:

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

41 lines 1.32 kB
import React, { Suspense, lazy, useMemo } from 'react'; // eslint-disable-next-line @atlaskit/design-system/no-emotion-primitives -- to be migrated to @atlaskit/primitives/compiled – go/akcss import { Box, xcss } from '@atlaskit/primitives'; import { withExtensionManifest } from '../withExtensionManifest'; const iconWidth = '40px'; const itemIconStyles = xcss({ width: iconWidth, height: iconWidth, overflow: 'hidden', border: `${"var(--ds-border-width, 1px)"} solid ${"var(--ds-border, #0B120E24)"}`, borderRadius: "var(--ds-radius-small, 3px)", boxSizing: 'border-box', display: 'flex', justifyContent: 'center', alignItems: 'center' }); function HeaderIcon({ extensionManifest }) { const icon = extensionManifest.icons['48']; const title = extensionManifest.title; const ResolvedIcon = useMemo(() => { return /*#__PURE__*/lazy(() => icon().then(Cmp => { if ('default' in Cmp) { return Cmp; } return { default: Cmp }; })); }, [icon]); return /*#__PURE__*/React.createElement(Box, { xcss: itemIconStyles }, /*#__PURE__*/React.createElement(Suspense, { fallback: null }, /*#__PURE__*/React.createElement(ResolvedIcon, { label: title }))); } const _default_1 = withExtensionManifest(HeaderIcon); export default _default_1;