UNPKG

@atlaskit/editor-core

Version:

A package contains Atlassian editor core functionality

120 lines (116 loc) 4.92 kB
/* eslint-disable @atlaskit/ui-styling-standard/use-compiled */ import { css, keyframes } from '@emotion/react'; const placeholderFadeInKeyframes = keyframes({ from: { opacity: 0 }, to: { opacity: 1 } }); // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles export const placeholderTextStyles = css({ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror span[data-placeholder]': { color: "var(--ds-text-subtlest, #6B6E76)", display: 'inline' }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror span.pm-placeholder': { display: 'inline', color: "var(--ds-text-subtlest, #6B6E76)" }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror span.pm-placeholder__text': { display: 'inline', color: "var(--ds-text-subtlest, #6B6E76)" }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror span.pm-placeholder.ak-editor-selected-node': { // ...backgroundSelectionStyles backgroundColor: "var(--ds-background-selected, #E9F2FE)", // ...backgroundSelectionStyles -> hideNativeBrowserTextSelectionStyles // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '&::selection,*::selection': { backgroundColor: 'transparent' }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-selectors, @atlaskit/ui-styling-standard/no-nested-selectors '&::-moz-selection,*::-moz-selection': { backgroundColor: 'transparent' } }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror span.pm-placeholder__text[data-placeholder]::after': { color: "var(--ds-text-subtlest, #6B6E76)", cursor: 'text', content: 'attr(data-placeholder)', display: 'inline' }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror': { // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror-fake-text-cursor': { display: 'inline', pointerEvents: 'none', position: 'relative' }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror-fake-text-cursor::after': { content: '""', display: 'inline', top: 0, position: 'absolute', borderRight: `1px solid ${"var(--ds-border, #0B120E24)"}` }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror-fake-text-selection': { display: 'inline', pointerEvents: 'none', position: 'relative', // Follow the system highlight colour to match native text selection backgroundColor: 'Highlight', // We should also match the text colour to the system highlight text colour. // That way if the system highlight background is dark, the text will still be readable. color: 'HighlightText' } } }); // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles -- Ignored via go/DSP-18766 export const placeholderStyles = css({ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766 '.ProseMirror .placeholder-decoration': { color: "var(--ds-text-subtlest, #6B6E76)", width: '100%', pointerEvents: 'none', userSelect: 'none', // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766 '.placeholder-android': { pointerEvents: 'none', outline: 'none', userSelect: 'none', position: 'absolute' } }, // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors '.ProseMirror .placeholder-decoration-fade-in': { animation: `${placeholderFadeInKeyframes} 300ms ease-out forwards` } }); // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles export const placeholderOverflowStyles = css({ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors -- Ignored via go/DSP-18766 '.ProseMirror p:has(.placeholder-decoration-hide-overflow)': { overflow: 'hidden', whiteSpace: 'nowrap', textOverflow: 'ellipsis' } }); // eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles export const placeholderWrapStyles = css({ // As part of controls work, we add placeholder `Search` to quick insert command // This style is to prevent `/Search` being wrapped if it's triggered at the end of the line // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors '.ProseMirror mark[data-type-ahead-query="true"]:has(.placeholder-decoration-wrap)': { whiteSpace: 'nowrap' } });