Open junminahn opened 1 month ago
Maintine theme
themed Maintine button
Size: 2xs, xs, sm, base, lg, xl, 2xl, 3xl, 4xl
2xs, xs, sm, base, lg, xl, 2xl, 3xl, 4xl
mantine-theme.ts
'use client';
import { Button, virtualColor, createTheme, Group, MantineProvider, defaultVariantColorsResolver, VariantColorsResolver, parseThemeColor, rem, rgba, darken, } from '@mantine/core';
console.log(virtualColor({ name: 'primary', light: 'blue', dark: 'red' }));
// See https://mantine.dev/styles/styles-api/#styles-api-selectors // See https://mantine.dev/styles/variants-sizes/#adding-custom-variants export const theme = createTheme({ colors: { primary: [ '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', ], }, components: { Button: Button.extend({ vars: (_theme, props) => { console.log('props', _theme, props); if (props.variant === 'light222') { return { root: { '--button-height': rem(120), '--button-padding-x': rem(30), '--button-fz': rem(24), }, }; }
if (props.size === 'xxl') { return { root: { '--button-height': rem(60), '--button-padding-x': rem(30), '--button-fz': rem(24), }, }; } if (props.size === 'xxs') { return { root: { '--button-height': rem(24), '--button-padding-x': rem(10), '--button-fz': rem(10), }, }; } return { root: {} }; }, classNames: { // root: 'my-root-class', // label: 'my-label-class', // inner: 'my-inner-class', }, styles: { // root: { backgroundColor: 'red' }, // label: { color: 'blue' }, // inner: { fontSize: 20 }, }, }),
}, });
https://www.figma.com/file/jsrhMxnmN4awqlbU8LuyuK/Quota-Redesign?type=design&node-id=31-846&mode=design&t=ws2pL0CvTG4X2Bpi-0
https://developer.gov.bc.ca/docs/default/component/bc-developer-guide/design-system/about-the-design-system/#design-tokens
https://www.npmjs.com/package/@bcgov/design-system-react-components
Maintine theme
to support various colors that required for our application.themed Maintine button
is sufficient.Size:
2xs, xs, sm, base, lg, xl, 2xl, 3xl, 4xl
mantine-theme.ts
import { Button, virtualColor, createTheme, Group, MantineProvider, defaultVariantColorsResolver, VariantColorsResolver, parseThemeColor, rem, rgba, darken, } from '@mantine/core';
console.log(virtualColor({ name: 'primary', light: 'blue', dark: 'red' }));
// See https://mantine.dev/styles/styles-api/#styles-api-selectors // See https://mantine.dev/styles/variants-sizes/#adding-custom-variants export const theme = createTheme({ colors: { primary: [ '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', '#FFBF3E', ], }, components: { Button: Button.extend({ vars: (_theme, props) => { console.log('props', _theme, props); if (props.variant === 'light222') { return { root: { '--button-height': rem(120), '--button-padding-x': rem(30), '--button-fz': rem(24), }, }; }
}, });