UNPKG

@atlaskit/editor-plugin-media

Version:

Media plugin for @atlaskit/editor-core

60 lines • 2.23 kB
/** * @jsxRuntime classic * @jsx jsx */ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled, @typescript-eslint/consistent-type-imports import { jsx } from '@emotion/react'; import ButtonGroup from '@atlaskit/button/button-group'; import Button from '@atlaskit/editor-common/FloatingToolbar/Button'; import FloatingToolbarSeparator from '@atlaskit/editor-common/FloatingToolbar/Separator'; // eslint-disable-next-line @atlaskit/design-system/no-emotion-primitives -- to be migrated to @atlaskit/primitives/compiled – go/akcss import { Box } from '@atlaskit/primitives/box'; // eslint-disable-next-line @atlaskit/design-system/no-emotion-primitives -- to be migrated to @atlaskit/primitives/compiled – go/akcss import { xcss } from '@atlaskit/primitives/xcss/xcss'; const containerStyles = xcss({ marginLeft: 'space.100' }); export const LayoutGroup = ({ layoutButtons, dispatchCommand, hide, areAnyNewToolbarFlagsEnabled }) => { return jsx(Box, { xcss: containerStyles }, jsx(ButtonGroup, null, layoutButtons.map((item, idx) => { switch (item.type) { case 'separator': return jsx(FloatingToolbarSeparator // Ignored via go/ees005 // eslint-disable-next-line react/no-array-index-key , { key: idx, areAnyNewToolbarFlagsEnabled: areAnyNewToolbarFlagsEnabled }); case 'button': // Ignored via go/ees005 // eslint-disable-next-line @typescript-eslint/no-explicit-any const ButtonIcon = item.icon; return jsx(Button // Ignored via go/ees005 // eslint-disable-next-line react/no-array-index-key , { key: idx, icon: item.icon ? jsx(ButtonIcon, { label: item.title }) : undefined, title: item.title, selected: item.selected, disabled: item.disabled // eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed) , onClick: () => { dispatchCommand(item.onClick); hide(); }, areAnyNewToolbarFlagsEnabled: areAnyNewToolbarFlagsEnabled }); } }))); };