@workday/canvas-kit-preview-react
Version:
Canvas Kit Preview is made up of components that have the full design and a11y review, are part of the DS ecosystem and are approved for use in product. The API's could be subject to change, but not without strong communication and migration strategies.
40 lines (39 loc) • 4.14 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { createContainer } from '@workday/canvas-kit-react/common';
import { createStencil, handleCsProp, px2rem } from '@workday/canvas-kit-styling';
import { system } from '@workday/canvas-tokens-web';
import { InformationHighlightHeading } from './parts/Heading';
import { Body } from './parts/Body';
import { Icon } from './parts/Icon';
import { Link } from './parts/Link';
import { useInformationHighlightModel } from './hooks/useInformationHighlightModel';
import { systemIconStencil } from '@workday/canvas-kit-react/icon';
export const informationHighlightStencil = createStencil({
base: { name: "fatgl", styles: "box-sizing:border-box;display:grid;grid-template-columns:min-content;column-gap:var(--cnvs-sys-space-x4);row-gap:var(--cnvs-sys-space-x2);padding:var(--cnvs-sys-space-x4);border-radius:var(--cnvs-sys-shape-x1);outline:0.0625rem solid transparent;border-inline-start:var(--cnvs-sys-space-x1) solid transparent;" },
modifiers: {
informational: {
low: { name: "2oeyow", styles: "border-inline-start-color:var(--cnvs-sys-color-border-info-default);background-color:var(--cnvs-sys-color-bg-alt-soft);& [data-part=\"information-highlight-icon\"]{--accentColor-system-icon-3a4847:var(--cnvs-sys-color-icon-info-default);--color-system-icon-3a4847:var(--cnvs-sys-color-icon-info-default);--backgroundColor-system-icon-3a4847:transparent;}" },
high: { name: "1hmrts", styles: "border-inline-start-color:var(--cnvs-sys-color-border-info-default);background-color:var(--cnvs-sys-color-bg-info-softest);& [data-part=\"information-highlight-icon\"]{--accentColor-system-icon-3a4847:var(--cnvs-sys-color-icon-inverse);--color-system-icon-3a4847:var(--cnvs-sys-color-icon-info-default);--backgroundColor-system-icon-3a4847:var(--cnvs-sys-color-icon-info-default);}" }
},
caution: {
low: { name: "t4mg2", styles: "border-inline-start-color:var(--cnvs-sys-color-border-caution-default);background-color:var(--cnvs-sys-color-bg-alt-soft);& [data-part=\"information-highlight-icon\"]{--accentColor-system-icon-3a4847:var(--cnvs-sys-color-icon-strong);--color-system-icon-3a4847:var(--cnvs-sys-color-icon-strong);--backgroundColor-system-icon-3a4847:transparent;}" },
high: { name: "1zlssu", styles: "border-inline-start-color:var(--cnvs-sys-color-border-caution-default);background-color:var(--cnvs-sys-color-bg-caution-softest);& [data-part=\"information-highlight-icon\"]{--accentColor-system-icon-3a4847:var(--cnvs-sys-color-icon-inverse);--color-system-icon-3a4847:var(--cnvs-sys-color-icon-caution-softer);--backgroundColor-system-icon-3a4847:var(--cnvs-sys-color-icon-caution-softer);}" }
},
critical: {
low: { name: "22k6r3", styles: "border-inline-start-color:var(--cnvs-sys-color-border-critical-default);background-color:var(--cnvs-sys-color-bg-alt-soft);& [data-part=\"information-highlight-icon\"]{--accentColor-system-icon-3a4847:var(--cnvs-sys-color-icon-critical-default);--color-system-icon-3a4847:var(--cnvs-sys-color-icon-critical-default);--backgroundColor-system-icon-3a4847:transparent;}" },
high: { name: "23bz24", styles: "border-inline-start-color:var(--cnvs-sys-color-border-critical-default);background-color:var(--cnvs-sys-color-bg-critical-softest);& [data-part=\"information-highlight-icon\"]{--accentColor-system-icon-3a4847:var(--cnvs-sys-color-icon-inverse);--color-system-icon-3a4847:var(--cnvs-sys-color-icon-critical-default);--backgroundColor-system-icon-3a4847:var(--cnvs-sys-color-icon-critical-default);}" }
}
}
}, "information-highlight-b4c864");
export const InformationHighlight = createContainer('section')({
displayName: 'InformationHighlight',
modelHook: useInformationHighlightModel,
subComponents: {
Icon: Icon,
Heading: InformationHighlightHeading,
Body: Body,
Link: Link,
},
})(({ ...elemProps }, Element, model) => {
return (_jsx(Element, { ...handleCsProp(elemProps, informationHighlightStencil({ [model.state.variant]: model.state.emphasis })) }));
});