Skip to content

Commit

Permalink
[Emotion] Convert EuiCallOut (#5870)
Browse files Browse the repository at this point in the history
* Fixed position logicals 😬
* [EuiCallOut] Converted to Emotion
  - Using EuiPanel and EuiTitle directly, changed default heading to `<p>`
* Increased default text contrast value to `4.85`
  • Loading branch information
cchaos authored May 6, 2022
1 parent 170a8db commit d6e6931
Show file tree
Hide file tree
Showing 19 changed files with 171 additions and 179 deletions.
10 changes: 5 additions & 5 deletions src-docs/src/views/call_out/call_out_example.js
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ export const CallOutExample = {
<EuiCode>s</EuiCode> (small).
</li>
<li>
Use an <EuiCode>icon</EuiCode> prop if it adds context.
Use an <EuiCode>iconType</EuiCode> if it adds context.
</li>
</ul>
</EuiText>
Expand All @@ -86,7 +86,7 @@ export const CallOutExample = {
title: 'Info',
source: [
{
type: GuideSectionTypes.JS,
type: GuideSectionTypes.TSX,
code: infoSource,
},
],
Expand All @@ -107,7 +107,7 @@ export const CallOutExample = {
title: 'Success',
source: [
{
type: GuideSectionTypes.JS,
type: GuideSectionTypes.TSX,
code: successSource,
},
],
Expand All @@ -125,7 +125,7 @@ export const CallOutExample = {
title: 'Warning',
source: [
{
type: GuideSectionTypes.JS,
type: GuideSectionTypes.TSX,
code: warningSource,
},
],
Expand All @@ -141,7 +141,7 @@ export const CallOutExample = {
title: 'Danger',
source: [
{
type: GuideSectionTypes.JS,
type: GuideSectionTypes.TSX,
code: dangerSource,
},
],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react';

import { EuiCallOut, EuiLink } from '../../../../src/components';
import { EuiCallOut, EuiLink } from '../../../../src';

export default () => (
<EuiCallOut title="Sorry, there was an error" color="danger" iconType="alert">
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react';

import { EuiCallOut, EuiLink, EuiSpacer } from '../../../../src/components';
import { EuiCallOut, EuiLink, EuiSpacer } from '../../../../src';

export default () => (
<div>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react';

import { EuiCallOut, EuiLink } from '../../../../src/components';
import { EuiCallOut, EuiLink } from '../../../../src';

export default () => (
<EuiCallOut title="Good news, everyone!" color="success" iconType="user">
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react';

import { EuiCallOut, EuiLink, EuiButton } from '../../../../src/components';
import { EuiCallOut, EuiLink, EuiButton } from '../../../../src';

export default () => (
<EuiCallOut title="Proceed with caution!" color="warning" iconType="help">
Expand Down
44 changes: 20 additions & 24 deletions src/components/call_out/__snapshots__/call_out.test.tsx.snap
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
exports[`EuiCallOut is rendered 1`] = `
<div
aria-label="aria-label"
class="euiCallOut euiCallOut--primary testClass1 testClass2"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary testClass1 testClass2 css-1flvw80-euiCallOut"
data-test-subj="test subject string"
>
<div
class="euiText euiText--small"
class="euiText euiText--small css-i7i3v9-euiCallOut__description"
>
<div
class="euiTextColor euiTextColor--default"
Expand All @@ -20,91 +20,87 @@ exports[`EuiCallOut is rendered 1`] = `

exports[`EuiCallOut props color danger is rendered 1`] = `
<div
class="euiCallOut euiCallOut--danger"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--danger euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--danger css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props color primary is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props color success is rendered 1`] = `
<div
class="euiCallOut euiCallOut--success"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--success euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--success css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props color warning is rendered 1`] = `
<div
class="euiCallOut euiCallOut--warning"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--warning euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--warning css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props heading h1 is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props heading h2 is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props heading h3 is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props heading h4 is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props heading h5 is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props heading h6 is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props heading p is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props iconType is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
/>
`;

exports[`EuiCallOut props title is rendered 1`] = `
<div
class="euiCallOut euiCallOut--primary"
class="euiPanel euiPanel--paddingMedium euiPanel--borderRadiusNone euiPanel--primary euiPanel--noShadow euiPanel--noBorder euiCallOut euiCallOut--primary css-1flvw80-euiCallOut"
>
<div
class="euiCallOutHeader"
<p
class="euiTitle euiCallOutHeader__title css-1ps1ss5-euiTitle-xs-euiCallOutHeader-primary"
>
<span
class="euiCallOutHeader__title"
>
Title
</span>
</div>
Title
</p>
<div
class="euiText euiText--small"
class="euiText euiText--small css-i7i3v9-euiCallOut__description"
>
<div
class="euiTextColor euiTextColor--default"
Expand Down
58 changes: 0 additions & 58 deletions src/components/call_out/_call_out.scss

This file was deleted.

1 change: 0 additions & 1 deletion src/components/call_out/_index.scss
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
@import 'variables';
@import 'mixins';

@import 'call_out';
16 changes: 6 additions & 10 deletions src/components/call_out/_mixins.scss
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
// Kibana's Ace Editor uses this function, can't remove yet
// https://github.com/elastic/kibana/blob/main/src/core/public/styles/_ace_overrides.scss
// As well as deprecation notices
// https://github.com/elastic/kibana/blob/main/x-pack/plugins/upgrade_assistant/public/application/components/es_deprecations/deprecation_types/reindex/flyout/_step_progress.scss
@function euiCallOutColor($type: 'primary', $returnBackgroundOrForeground: 'background') {
@warn 'euiCallOutColor() is set for deprecation. Please consider using EuiCallOut directly.';

@if (map-has-key($euiCallOutTypes, $type)) {
$color: map-get($euiCallOutTypes, $type);
$backgroundColor: tintOrShade($color, 90%, 70%);
Expand All @@ -15,13 +21,3 @@
@warn 'Incorrect type of call out provided. See the $euiCallOutTypes map for allowed values.';
}
}

@mixin euiCallOutTitle($size: null) {
@if ($size == 's') {
@include euiTitle('xxs');
font-weight: $euiFontWeightRegular;
} @else {
@include euiTitle('xs');
font-weight: $euiFontWeightRegular;
}
}
2 changes: 1 addition & 1 deletion src/components/call_out/_variables.scss
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Modifier naming and colors.
// Used in mixin that's used in Kibana
$euiCallOutTypes: (
primary: $euiColorPrimary,
success: $euiColorSuccess,
Expand Down
47 changes: 47 additions & 0 deletions src/components/call_out/call_out.styles.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the Elastic License
* 2.0 and the Server Side Public License, v 1; you may not use this file except
* in compliance with, at your election, the Elastic License 2.0 or the Server
* Side Public License, v 1.
*/

import { css } from '@emotion/react';
import { logicalCSS } from '../../global_styling';
import { UseEuiTheme } from '../../services';

export const euiCallOutStyles = ({ euiTheme }: UseEuiTheme) => {
return {
euiCallOut: css``,
euiCallOut__icon: css`
position: relative;
${logicalCSS('top', '-1px')};
${logicalCSS('margin-right', euiTheme.size.s)};
`,
euiCallOut__description: css`
${logicalCSS('margin-top', euiTheme.size.s)};
`,
};
};

export const euiCallOutHeadingStyles = ({ euiTheme }: UseEuiTheme) => {
return {
euiCallOutHeader: css`
font-weight: ${euiTheme.font.weight.medium};
margin-bottom: 0 !important; // In case it's nested inside EuiText
`,

primary: css`
color: ${euiTheme.colors.primaryText};
`,
success: css`
color: ${euiTheme.colors.successText};
`,
warning: css`
color: ${euiTheme.colors.warningText};
`,
danger: css`
color: ${euiTheme.colors.dangerText};
`,
};
};
Loading

0 comments on commit d6e6931

Please sign in to comment.