diff --git a/src/components/actions/Button/Button.module.scss b/src/components/actions/Button/Button.module.scss index 00e9d568..c63ce1ab 100644 --- a/src/components/actions/Button/Button.module.scss +++ b/src/components/actions/Button/Button.module.scss @@ -10,7 +10,11 @@ --bk-button-color-accent: #{bk.$theme-button-primary-background-default}; --bk-button-color-contrast: #{bk.$theme-button-primary-text-default}; - + &.bk-button--card { + --bk-button-color-accent: #{bk.$theme-button-card-primary-background-default}; + --bk-button-color-contrast: #{bk.$theme-button-card-primary-text-default}; + } + cursor: pointer; user-select: none; @@ -58,19 +62,32 @@ /* NOTE: the ordering here is important, more important rules must come later (in case of multiple states) */ &:is(:focus-visible, :global(.pseudo-focus-visible)) { --bk-button-color-accent: #{bk.$theme-button-primary-background-focused}; + + &.bk-button--card { + --bk-button-color-accent: #{bk.$theme-button-card-primary-background-focused}; + } } &:is(:hover, :global(.pseudo-hover)) { --bk-button-color-accent: #{bk.$theme-button-primary-background-hover}; + + &:where(.bk-button--card) { + --bk-button-color-accent: #{bk.$theme-button-card-primary-background-hover}; + } } &:is(:disabled, .bk-button--disabled) { + cursor: not-allowed; --bk-button-color-accent: #{bk.$theme-button-primary-background-disabled}; --bk-button-color-contrast: #{bk.$theme-button-primary-text-disabled}; - cursor: not-allowed; } &.bk-button--nonactive { + cursor: not-allowed; --bk-button-color-accent: #{bk.$theme-button-primary-background-non-active}; --bk-button-color-contrast: #{bk.$theme-button-primary-text-non-active}; - cursor: not-allowed; + + &.bk-button--card { + --bk-button-color-accent: #{bk.$theme-button-card-primary-background-non-active}; + --bk-button-color-contrast: #{bk.$theme-button-card-primary-text-non-active}; + } } @media (prefers-reduced-motion: no-preference) { diff --git a/src/components/actions/Button/Button.stories.tsx b/src/components/actions/Button/Button.stories.tsx index 67a005e1..32f0be7d 100644 --- a/src/components/actions/Button/Button.stories.tsx +++ b/src/components/actions/Button/Button.stories.tsx @@ -11,6 +11,7 @@ import { ErrorBoundary } from 'react-error-boundary'; import { notify } from '../../overlays/ToastProvider/ToastProvider.tsx'; import { Icon } from '../../graphics/Icon/Icon.tsx'; +import { Card } from '../../containers/Card/Card.tsx'; import { Banner } from '../../containers/Banner/Banner.tsx'; import { Button } from './Button.tsx'; @@ -29,7 +30,7 @@ export default { args: { unstyled: false, label: 'Button', - variant: 'primary', + kind: 'primary', nonactive: false, disabled: false, onPress: () => { notify.success('You pressed the button.'); }, @@ -60,7 +61,7 @@ const BaseStory: Story = { const PrimaryStory: Story = { ...BaseStory, - args: { ...BaseStory.args, variant: 'primary' }, + args: { ...BaseStory.args, kind: 'primary' }, }; export const PrimaryStandard: Story = { @@ -95,7 +96,7 @@ export const PrimaryDisabled: Story = { export const Secondary: Story = { ...BaseStory, name: 'Secondary [standard]', - args: { ...BaseStory.args, variant: 'secondary' }, + args: { ...BaseStory.args, kind: 'secondary' }, }; export const SecondaryHover: Story = { @@ -125,7 +126,7 @@ export const SecondaryDisabled: Story = { export const Tertiary: Story = { ...BaseStory, name: 'Tertiary [standard]', - args: { ...BaseStory.args, variant: 'tertiary' }, + args: { ...BaseStory.args, kind: 'tertiary' }, }; export const TertiaryHover: Story = { @@ -152,6 +153,29 @@ export const TertiaryDisabled: Story = { args: { ...Tertiary.args, disabled: true }, }; +export const VariantCard: Story = { + render: (args) => ( + +

+ { const CancelAction = (props: ActionProps) => { const context = useDialogContext(); const handlePress = () => { props.onPress?.(); context.close(); }; - return ; + return ; }; const SubmitAction = (props: ActionProps) => { const context = useDialogContext(); const handlePress = () => { props.onPress?.(); context.close(); }; - return ; + return ; }; export type DialogProps = Omit, 'title'> & { diff --git a/src/components/forms/context/SubmitButton/SubmitButton.tsx b/src/components/forms/context/SubmitButton/SubmitButton.tsx index 1e4a89fe..cbe3203d 100644 --- a/src/components/forms/context/SubmitButton/SubmitButton.tsx +++ b/src/components/forms/context/SubmitButton/SubmitButton.tsx @@ -84,7 +84,7 @@ export const SubmitButton = (props: SubmitButtonProps) => { return ( - + + ); diff --git a/src/components/graphics/PlaceholderEmpty/PlaceholderEmpty.tsx b/src/components/graphics/PlaceholderEmpty/PlaceholderEmpty.tsx index 0190d8d8..f27563d9 100644 --- a/src/components/graphics/PlaceholderEmpty/PlaceholderEmpty.tsx +++ b/src/components/graphics/PlaceholderEmpty/PlaceholderEmpty.tsx @@ -80,7 +80,7 @@ export const PlaceholderEmpty = (props: PlaceholderEmptyProps) => { export type PlaceholderEmptyActionProps = React.PropsWithChildren>; /** * A wrapper component, intended to easily add some styling to children's ` @@ -136,7 +136,7 @@ export const DialogModalUncloseable: Story = { children: ({ close }) => (

It should not be possible to close this dialog, except through the following button:

-

), }, @@ -181,8 +181,8 @@ const DialogModalControlledWithSubject = (props: React.ComponentPropsA single details modal will be used, filled in with the subject based on which name was pressed.

-

), @@ -55,7 +55,7 @@ export const WithPlacement: Story = { args: { placement: 'right', children: ({ props, state }) => ( - ), diff --git a/src/components/overlays/SpinnerModal/SpinnerModal.stories.tsx b/src/components/overlays/SpinnerModal/SpinnerModal.stories.tsx index f9027212..f9c259f5 100644 --- a/src/components/overlays/SpinnerModal/SpinnerModal.stories.tsx +++ b/src/components/overlays/SpinnerModal/SpinnerModal.stories.tsx @@ -40,7 +40,7 @@ const SpinnerModalControlledWithTrigger = (props: SpinnerModalArgs) => { <> {isLoading && } - - + + } /> diff --git a/src/components/tables/DataTable/DataTableLazy.tsx b/src/components/tables/DataTable/DataTableLazy.tsx index 9025da9b..1cd2bdda 100644 --- a/src/components/tables/DataTable/DataTableLazy.tsx +++ b/src/components/tables/DataTable/DataTableLazy.tsx @@ -280,7 +280,7 @@ export const DataTableLazy = ({ className, footer, ...propsRest }: DataTableLazy - diff --git a/src/components/tables/DataTable/DataTableStream.stories.tsx b/src/components/tables/DataTable/DataTableStream.stories.tsx index 2616136c..ea8f994e 100644 --- a/src/components/tables/DataTable/DataTableStream.stories.tsx +++ b/src/components/tables/DataTable/DataTableStream.stories.tsx @@ -118,8 +118,8 @@ const DataTableStreamTemplate = ({dataTableProps, ...props} : dataTeableLazyTemp title="No users" actions={ - - + + } /> diff --git a/src/components/tables/DataTable/DataTableStream.tsx b/src/components/tables/DataTable/DataTableStream.tsx index 5c23594c..3fc16e30 100644 --- a/src/components/tables/DataTable/DataTableStream.tsx +++ b/src/components/tables/DataTable/DataTableStream.tsx @@ -519,7 +519,7 @@ export const DataTableStream = ({ - diff --git a/src/components/tables/DataTable/pagination/PaginationSizeSelector.tsx b/src/components/tables/DataTable/pagination/PaginationSizeSelector.tsx index 239d5907..549d2d19 100644 --- a/src/components/tables/DataTable/pagination/PaginationSizeSelector.tsx +++ b/src/components/tables/DataTable/pagination/PaginationSizeSelector.tsx @@ -46,7 +46,7 @@ export const PaginationSizeSelector = (props: PaginationSizeSelectorProps) => { > {({ props, open }) => (