@coveord/plasma-mantine 56.2.6 → 56.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/.turbo/turbo-build.log +4 -4
  2. package/.turbo/turbo-test.log +61 -61
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/cjs/components/action-icon/ActionIcon.d.ts.map +1 -1
  5. package/dist/cjs/components/action-icon/ActionIcon.js +5 -9
  6. package/dist/cjs/components/action-icon/ActionIcon.js.map +1 -1
  7. package/dist/cjs/components/badge/Badge.d.ts +6 -1
  8. package/dist/cjs/components/badge/Badge.d.ts.map +1 -1
  9. package/dist/cjs/components/badge/Badge.js +17 -1
  10. package/dist/cjs/components/badge/Badge.js.map +1 -1
  11. package/dist/cjs/components/browser-preview/BrowserPreview.d.ts.map +1 -1
  12. package/dist/cjs/components/browser-preview/BrowserPreview.js +1 -1
  13. package/dist/cjs/components/browser-preview/BrowserPreview.js.map +1 -1
  14. package/dist/cjs/components/button/Button.d.ts.map +1 -1
  15. package/dist/cjs/components/button/Button.js +5 -3
  16. package/dist/cjs/components/button/Button.js.map +1 -1
  17. package/dist/cjs/components/collection/Collection.js +1 -1
  18. package/dist/cjs/components/collection/Collection.js.map +1 -1
  19. package/dist/cjs/components/collection/enhanceWithCollectionProps.d.ts +3 -1
  20. package/dist/cjs/components/collection/enhanceWithCollectionProps.d.ts.map +1 -1
  21. package/dist/cjs/components/collection/enhanceWithCollectionProps.js +8 -4
  22. package/dist/cjs/components/collection/enhanceWithCollectionProps.js.map +1 -1
  23. package/dist/cjs/components/header/Header.module.css +1 -0
  24. package/dist/cjs/components/info-token/InfoToken.d.ts.map +1 -1
  25. package/dist/cjs/components/info-token/InfoToken.js +2 -3
  26. package/dist/cjs/components/info-token/InfoToken.js.map +1 -1
  27. package/dist/cjs/components/table/Table.module.css +5 -5
  28. package/dist/cjs/styles/DatePicker.module.css +5 -3
  29. package/dist/cjs/styles/DateTimePicker.module.css +17 -0
  30. package/dist/cjs/styles/Input.module.css +6 -0
  31. package/dist/cjs/styles/Radio.module.css +21 -26
  32. package/dist/cjs/styles/ReadOnlyInput.module.css +1 -1
  33. package/dist/cjs/styles/Skeleton.module.css +8 -1
  34. package/dist/cjs/theme/Theme.d.ts.map +1 -1
  35. package/dist/cjs/theme/Theme.js +4 -0
  36. package/dist/cjs/theme/Theme.js.map +1 -1
  37. package/dist/cjs/theme/plasmaCSSVariablesResolver.d.ts.map +1 -1
  38. package/dist/cjs/theme/plasmaCSSVariablesResolver.js +27 -3
  39. package/dist/cjs/theme/plasmaCSSVariablesResolver.js.map +1 -1
  40. package/dist/esm/components/action-icon/ActionIcon.d.ts.map +1 -1
  41. package/dist/esm/components/action-icon/ActionIcon.js +5 -7
  42. package/dist/esm/components/action-icon/ActionIcon.js.map +1 -1
  43. package/dist/esm/components/badge/Badge.d.ts +6 -1
  44. package/dist/esm/components/badge/Badge.d.ts.map +1 -1
  45. package/dist/esm/components/badge/Badge.js +18 -2
  46. package/dist/esm/components/badge/Badge.js.map +1 -1
  47. package/dist/esm/components/browser-preview/BrowserPreview.d.ts.map +1 -1
  48. package/dist/esm/components/browser-preview/BrowserPreview.js +1 -1
  49. package/dist/esm/components/browser-preview/BrowserPreview.js.map +1 -1
  50. package/dist/esm/components/button/Button.d.ts.map +1 -1
  51. package/dist/esm/components/button/Button.js +5 -3
  52. package/dist/esm/components/button/Button.js.map +1 -1
  53. package/dist/esm/components/collection/Collection.js +1 -1
  54. package/dist/esm/components/collection/Collection.js.map +1 -1
  55. package/dist/esm/components/collection/enhanceWithCollectionProps.d.ts +3 -1
  56. package/dist/esm/components/collection/enhanceWithCollectionProps.d.ts.map +1 -1
  57. package/dist/esm/components/collection/enhanceWithCollectionProps.js +14 -4
  58. package/dist/esm/components/collection/enhanceWithCollectionProps.js.map +1 -1
  59. package/dist/esm/components/header/Header.module.css +1 -0
  60. package/dist/esm/components/info-token/InfoToken.d.ts.map +1 -1
  61. package/dist/esm/components/info-token/InfoToken.js +2 -3
  62. package/dist/esm/components/info-token/InfoToken.js.map +1 -1
  63. package/dist/esm/components/table/Table.module.css +5 -5
  64. package/dist/esm/styles/DatePicker.module.css +5 -3
  65. package/dist/esm/styles/DateTimePicker.module.css +17 -0
  66. package/dist/esm/styles/Input.module.css +6 -0
  67. package/dist/esm/styles/Radio.module.css +21 -26
  68. package/dist/esm/styles/ReadOnlyInput.module.css +1 -1
  69. package/dist/esm/styles/Skeleton.module.css +8 -1
  70. package/dist/esm/theme/Theme.d.ts.map +1 -1
  71. package/dist/esm/theme/Theme.js +5 -1
  72. package/dist/esm/theme/Theme.js.map +1 -1
  73. package/dist/esm/theme/plasmaCSSVariablesResolver.d.ts.map +1 -1
  74. package/dist/esm/theme/plasmaCSSVariablesResolver.js +27 -3
  75. package/dist/esm/theme/plasmaCSSVariablesResolver.js.map +1 -1
  76. package/package.json +14 -14
  77. package/src/components/action-icon/ActionIcon.tsx +12 -4
  78. package/src/components/badge/Badge.tsx +23 -4
  79. package/src/components/browser-preview/BrowserPreview.tsx +7 -1
  80. package/src/components/button/Button.tsx +9 -3
  81. package/src/components/collection/Collection.tsx +1 -1
  82. package/src/components/collection/__tests__/Collection.spec.tsx +41 -0
  83. package/src/components/collection/enhanceWithCollectionProps.ts +14 -5
  84. package/src/components/header/Header.module.css +1 -0
  85. package/src/components/info-token/InfoToken.tsx +2 -3
  86. package/src/components/table/Table.module.css +5 -5
  87. package/src/styles/DatePicker.module.css +5 -3
  88. package/src/styles/DateTimePicker.module.css +17 -0
  89. package/src/styles/Input.module.css +6 -0
  90. package/src/styles/Radio.module.css +21 -26
  91. package/src/styles/ReadOnlyInput.module.css +1 -1
  92. package/src/styles/Skeleton.module.css +8 -1
  93. package/src/theme/Theme.tsx +14 -1
  94. package/src/theme/plasmaCSSVariablesResolver.ts +30 -3
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { ArrowHeadLeftSize16Px, ArrowHeadRightSize16Px, CrossSize16Px, FilterSize16Px, IconCalendarWeek, IconCheck, IconClock, IconInfoCircleFilled, IconSlash } from '@coveord/plasma-react-icons';
3
3
  import { color } from '@coveord/plasma-tokens';
4
4
  import { ActionIcon, Alert, AppShell, Badge, Breadcrumbs, Button, Card, Checkbox, Chip, CloseButton, ColorSwatch, Combobox, ComboboxSearch, createTheme, deepMerge, Divider, Image, Input, InputWrapper, List, Loader, Modal, MultiSelect, NavLink, Notification, NumberInput, Pagination, Paper, PasswordInput, Pill, Popover, Radio, ScrollArea, SegmentedControl, Select, Skeleton, Slider, Stepper, Switch, Table, Tabs, Text, Tooltip } from '@mantine/core';
5
- import { DateInput, DatePicker, MonthPicker, PickerInputBase, TimeInput, TimePicker, YearPicker } from '@mantine/dates';
5
+ import { DateInput, DatePicker, DateTimePicker, MonthPicker, PickerInputBase, TimeInput, TimePicker, YearPicker } from '@mantine/dates';
6
6
  import { Accordion, CheckboxIcon, CircleLoader, InfoToken } from '../components/index.js';
7
7
  import AccordionClasses from '../styles/Accordion.module.css';
8
8
  import ActionIconClasses from '../styles/ActionIcon.module.css';
@@ -16,6 +16,7 @@ import CheckboxIndicatorClasses from '../styles/CheckboxIndicator.module.css';
16
16
  import ChipClasses from '../styles/Chip.module.css';
17
17
  import ComboboxClasses from '../styles/Combobox.module.css';
18
18
  import DatePickerClasses from '../styles/DatePicker.module.css';
19
+ import DateTimePickerClasses from '../styles/DateTimePicker.module.css';
19
20
  import InputClasses from '../styles/Input.module.css';
20
21
  import InputWrapperClasses from '../styles/InputWrapper.module.css';
21
22
  import ListClasses from '../styles/List.module.css';
@@ -264,6 +265,9 @@ export const plasmaTheme = createTheme({
264
265
  DatePicker: DatePicker.extend({
265
266
  classNames: DatePickerClasses
266
267
  }),
268
+ DateTimePicker: DateTimePicker.extend({
269
+ classNames: DateTimePickerClasses
270
+ }),
267
271
  Divider: Divider.extend({
268
272
  defaultProps: {
269
273
  color: 'var(--mantine-color-default-border)'
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/theme/Theme.tsx"],"sourcesContent":["import {\n ArrowHeadLeftSize16Px,\n ArrowHeadRightSize16Px,\n CrossSize16Px,\n FilterSize16Px,\n IconCalendarWeek,\n IconCheck,\n IconClock,\n IconInfoCircleFilled,\n IconSlash,\n} from '@coveord/plasma-react-icons';\nimport {color} from '@coveord/plasma-tokens';\nimport {\n ActionIcon,\n Alert,\n AppShell,\n Badge,\n Breadcrumbs,\n Button,\n Card,\n Checkbox,\n Chip,\n CloseButton,\n ColorSwatch,\n Combobox,\n ComboboxSearch,\n createTheme,\n deepMerge,\n Divider,\n Image,\n Input,\n InputWrapper,\n List,\n Loader,\n MantineThemeOverride,\n Modal,\n MultiSelect,\n NavLink,\n Notification,\n NumberInput,\n Pagination,\n Paper,\n PasswordInput,\n Pill,\n Popover,\n Radio,\n ScrollArea,\n SegmentedControl,\n Select,\n Skeleton,\n Slider,\n Stepper,\n Switch,\n Table,\n Tabs,\n Text,\n Tooltip,\n} from '@mantine/core';\nimport {DateInput, DatePicker, MonthPicker, PickerInputBase, TimeInput, TimePicker, YearPicker} from '@mantine/dates';\nimport {Accordion, CheckboxIcon, CircleLoader, InfoToken} from '../components/index.js';\nimport AccordionClasses from '../styles/Accordion.module.css';\nimport ActionIconClasses from '../styles/ActionIcon.module.css';\nimport AlertClasses from '../styles/Alert.module.css';\nimport BadgeClasses from '../styles/Badge.module.css';\nimport BreadcrumbsClasses from '../styles/Breadcrumbs.module.css';\nimport ButtonClasses from '../styles/Button.module.css';\nimport CardClasses from '../styles/Card.module.css';\nimport CheckboxClasses from '../styles/Checkbox.module.css';\nimport CheckboxIndicatorClasses from '../styles/CheckboxIndicator.module.css';\nimport ChipClasses from '../styles/Chip.module.css';\nimport ComboboxClasses from '../styles/Combobox.module.css';\nimport DatePickerClasses from '../styles/DatePicker.module.css';\nimport InputClasses from '../styles/Input.module.css';\nimport InputWrapperClasses from '../styles/InputWrapper.module.css';\nimport ListClasses from '../styles/List.module.css';\nimport ModalClasses from '../styles/Modal.module.css';\nimport MonthPickerClasses from '../styles/MonthPicker.module.css';\nimport NavLinkClasses from '../styles/NavLink.module.css';\nimport NotificationClasses from '../styles/Notifications.module.css';\nimport NumberInputClasses from '../styles/NumberInput.module.css';\nimport PaginationClasses from '../styles/Pagination.module.css';\nimport PaperClasses from '../styles/Paper.module.css';\nimport PillClasses from '../styles/Pill.module.css';\nimport PopoverClasses from '../styles/Popover.module.css';\nimport RadioClasses from '../styles/Radio.module.css';\nimport RadioCardClasses from '../styles/RadioCard.module.css';\nimport ReadOnlyInputClasses from '../styles/ReadOnlyInput.module.css';\nimport ReadOnlyStateClasses from '../styles/ReadOnlyState.module.css';\nimport ScrollAreaClasses from '../styles/ScrollArea.module.css';\nimport SegmentedControlClasses from '../styles/SegmentedControl.module.css';\nimport SelectClasses from '../styles/Select.module.css';\nimport SkeletonClasses from '../styles/Skeleton.module.css';\nimport SliderClasses from '../styles/Slider.module.css';\nimport StepperClasses from '../styles/Stepper.module.css';\nimport TableClasses from '../styles/Table.module.css';\nimport TabsClasses from '../styles/Tabs.module.css';\nimport TextClasses from '../styles/Text.module.css';\nimport TimePickerClasses from '../styles/TimePicker.module.css';\nimport TooltipClasses from '../styles/Tooltip.module.css';\nimport YearPickerClasses from '../styles/YearPicker.module.css';\nimport {PlasmaColors} from './PlasmaColors.js';\n\nimport placeholderSvg from '../images/placeholder.svg';\nimport {plasmaVariantColorResolver} from './plasmaVariantColorResolver.js';\n\nexport const plasmaTheme: MantineThemeOverride = createTheme({\n variantColorResolver: plasmaVariantColorResolver,\n // These are overrides over https://github.com/mantinedev/mantine/blob/master/packages/%40mantine/core/src/core/MantineProvider/default-theme.ts\n fontFamily: 'canada-type-gibson, sans-serif',\n black: color.primary.gray[9],\n defaultRadius: 'md',\n lineHeights: {\n xxs: '1.2',\n xs: '1.16',\n sm: '1.14',\n md: '1.14',\n lg: '1.11',\n xl: '1.2',\n },\n spacing: {\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n xl: '40px',\n },\n radius: {\n none: '0px',\n xs: '2px',\n sm: '4px',\n md: '8px',\n lg: '16px',\n xl: '24px',\n xxl: '32px',\n },\n primaryColor: 'blue',\n headings: {\n fontFamily: 'canada-type-gibson, sans-serif',\n fontWeight: 'var(--coveo-fw-bold)',\n sizes: {\n h1: {fontSize: '40px', lineHeight: '1.2', fontWeight: 'var(--coveo-fw-bold)'},\n h2: {fontSize: '32px', lineHeight: '1.35', fontWeight: 'var(--coveo-fw-normal)'},\n h3: {fontSize: '24px', lineHeight: '1.33', fontWeight: 'var(--coveo-fw-bold)'},\n h4: {fontSize: '18px', lineHeight: '1.2', fontWeight: 'var(--coveo-fw-bold)'},\n h5: {fontSize: '16px', lineHeight: '1.25', fontWeight: 'var(--coveo-fw-bold)'},\n h6: {fontSize: '12px', lineHeight: '1.33', fontWeight: 'var(--coveo-fw-bold)'},\n },\n },\n fontSizes: {\n xxs: '10px',\n xs: '12px',\n sm: '14px',\n md: '16px',\n lg: '18px',\n xl: '20px',\n },\n shadows: {\n xs: '0px 1px 2px 0px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05), 0px -0.5px 1px 0px rgba(0, 0, 0, 0.02)',\n sm: '0px 7px 7px -5px rgba(0, 0, 0, 0.04), 0px 10px 15px -5px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n md: '0px 10px 10px -5px rgba(0, 0, 0, 0.04), 0px 20px 25px -5px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n lg: '0px 12px 12px -7px rgba(0, 0, 0, 0.04), 0px 28px 23px -7px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n xl: '0px 17px 17px -7px rgba(0, 0, 0, 0.04), 0px 36px 28px -7px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n },\n primaryShade: 5,\n colors: PlasmaColors,\n components: {\n Accordion: Accordion.extend({\n classNames: AccordionClasses,\n }),\n ActionIcon: ActionIcon.extend({\n defaultProps: {\n size: 'lg',\n },\n classNames: ActionIconClasses,\n }),\n AppShell: AppShell.extend({\n vars: (theme) =>\n ({\n root: {'--app-shell-border-color': theme.colors.gray[2]},\n }) as any,\n }),\n Alert: Alert.extend({\n defaultProps: {\n icon: <InfoToken variant=\"advice\" />,\n p: 'sm',\n },\n classNames: AlertClasses,\n }),\n Badge: Badge.extend({\n classNames: BadgeClasses,\n defaultProps: {\n variant: 'light',\n tt: 'none',\n },\n }),\n Breadcrumbs: Breadcrumbs.extend({\n classNames: BreadcrumbsClasses,\n defaultProps: {\n separator: <IconSlash size={16} color=\"var(--mantine-color-dimmed)\" />,\n separatorMargin: 'xxs',\n },\n }),\n Button: Button.extend({\n defaultProps: {\n size: 'sm',\n vars: (theme) => ({\n root: {\n '--button-padding-x': theme.spacing.sm,\n },\n }),\n },\n classNames: ButtonClasses,\n }),\n Card: Card.extend({\n defaultProps: {\n radius: 'lg',\n shadow: 'xs',\n padding: 'sm',\n withBorder: true,\n },\n classNames: CardClasses,\n }),\n Checkbox: Checkbox.extend({\n defaultProps: {\n radius: 'sm',\n icon: CheckboxIcon,\n },\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(CheckboxClasses, ReadOnlyStateClasses);\n }\n return CheckboxClasses;\n },\n }),\n CheckboxIndicator: Checkbox.Indicator.extend({\n defaultProps: {\n radius: 'sm',\n icon: CheckboxIcon,\n },\n classNames: CheckboxIndicatorClasses,\n }),\n Chip: Chip.extend({\n defaultProps: {\n icon: <IconCheck size={16} />,\n },\n classNames: ChipClasses,\n }),\n CloseButton: CloseButton.extend({\n defaultProps: {\n icon: <CrossSize16Px height={16} aria-label=\"close\" />,\n },\n }),\n ColorSwatch: ColorSwatch.extend({\n defaultProps: {\n size: 8,\n withShadow: false,\n },\n }),\n Combobox: Combobox.extend({\n classNames: ComboboxClasses,\n defaultProps: {\n middlewares: {inline: true},\n },\n }),\n ComboboxSearch: ComboboxSearch.extend({\n defaultProps: {\n placeholder: 'Search',\n rightSection: <FilterSize16Px height={16} color=\"gray.5\" />,\n },\n }),\n DateInput: DateInput.extend({\n defaultProps: {\n miw: 250,\n leftSection: <IconCalendarWeek size={16} />,\n },\n }),\n DatePicker: DatePicker.extend({\n classNames: DatePickerClasses,\n }),\n Divider: Divider.extend({\n defaultProps: {\n color: 'var(--mantine-color-default-border)',\n },\n }),\n Image: Image.extend({\n defaultProps: {\n fallbackSrc: placeholderSvg,\n },\n }),\n Input: Input.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: (_theme, props) => {\n const anyProps = props as any;\n if (anyProps.readOnly && !props.disabled && !['Select'].includes(anyProps.__staticSelector)) {\n return deepMerge(InputClasses, ReadOnlyInputClasses);\n }\n return InputClasses;\n },\n }),\n InputWrapper: InputWrapper.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: InputWrapperClasses,\n vars: (theme, props) => {\n const anyProps = props as any;\n if (anyProps.disabled || (anyProps.readOnly && !['Select'].includes(anyProps.__staticSelector))) {\n return {\n root: {\n '--input-margin-top': props?.label || props?.description ? theme.spacing.xxs : undefined,\n },\n label: {'--input-asterisk-color': theme.colors.red[2]},\n error: {},\n description: {},\n };\n }\n return {\n root: {'--input-margin-top': props?.label || props?.description ? theme.spacing.xxs : undefined},\n label: {},\n error: {},\n description: {},\n };\n },\n }),\n PasswordInput: PasswordInput.extend({\n vars: () => ({\n root: {\n '--psi-button-size': 'var(--mantine-spacing-lg)',\n },\n }),\n }),\n Loader: Loader.extend({\n defaultProps: {\n loaders: {...Loader.defaultLoaders, circle: CircleLoader},\n type: 'circle',\n role: 'presentation',\n },\n }),\n List: List.extend({\n classNames: ListClasses,\n }),\n Modal: Modal.extend({\n classNames: ModalClasses,\n vars: () => {\n const sizes = {\n '--modal-size-xs': '432px',\n '--modal-size-sm': '664px',\n '--modal-size-md': '896px',\n '--modal-size-lg': '1120px',\n '--modal-size-xl': '88%',\n } as any;\n return {\n root: {\n ...sizes,\n },\n };\n },\n }),\n ModalOverlay: Modal.Overlay.extend({\n defaultProps: {\n color: PlasmaColors.indigo[8],\n backgroundOpacity: 0.7,\n blur: 2,\n },\n }),\n ModalRoot: Modal.Root.extend({\n defaultProps: {\n padding: 'lg',\n },\n }),\n MonthPicker: MonthPicker.extend({\n classNames: MonthPickerClasses,\n }),\n MultiSelect: MultiSelect.extend({defaultProps: {hidePickedOptions: true}}),\n NavLink: NavLink.extend({classNames: NavLinkClasses}),\n Notification: Notification.extend({\n classNames: NotificationClasses,\n defaultProps: {\n icon: <IconInfoCircleFilled height={20} />,\n },\n }),\n NumberInput: NumberInput.extend({\n classNames: NumberInputClasses,\n }),\n Pagination: Pagination.extend({\n classNames: PaginationClasses,\n defaultProps: {\n nextIcon: ArrowHeadRightSize16Px,\n previousIcon: ArrowHeadLeftSize16Px,\n },\n }),\n Paper: Paper.extend({\n classNames: PaperClasses,\n }),\n PickerInputBase: PickerInputBase.extend({\n defaultProps: {\n miw: 250,\n leftSection: <IconCalendarWeek size={16} />,\n },\n }),\n Pill: Pill.extend({\n classNames: PillClasses,\n }),\n Popover: Popover.extend({\n classNames: PopoverClasses,\n defaultProps: {\n middlewares: {inline: true},\n position: 'bottom-start',\n },\n }),\n Radio: Radio.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(RadioClasses, ReadOnlyStateClasses);\n }\n return RadioClasses;\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {\n '--radio-icon-color': theme.colors.gray[7],\n '--radio-color': theme.colors.gray[2],\n },\n };\n }\n return {root: {}};\n },\n }),\n RadioCard: Radio.Card.extend({\n classNames: RadioCardClasses,\n }),\n ScrollArea: ScrollArea.extend({\n classNames: ScrollAreaClasses,\n }),\n SegmentedControl: SegmentedControl.extend({\n classNames: SegmentedControlClasses,\n }),\n Select: Select.extend({\n defaultProps: {allowDeselect: false, withCheckIcon: false},\n classNames: SelectClasses,\n }),\n Skeleton: Skeleton.extend({\n classNames: SkeletonClasses,\n }),\n Slider: Slider.extend({\n defaultProps: {\n size: 'md',\n },\n classNames: SliderClasses,\n }),\n Stepper: Stepper.extend({\n defaultProps: {\n size: 'xs',\n completedIcon: <IconCheck size={16} />,\n },\n classNames: StepperClasses,\n }),\n Switch: Switch.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return ReadOnlyStateClasses;\n }\n return {};\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {},\n track: {\n '--switch-bg': theme.colors.gray[2],\n '--switch-bd': 'transparent',\n },\n thumb: {\n '--switch-thumb-bd': 'transparent',\n },\n };\n }\n return {root: {}, track: {}, thumb: {}};\n },\n defaultProps: {\n withThumbIndicator: false,\n },\n }),\n Table: Table.extend({\n classNames: TableClasses,\n vars: () => ({\n table: {\n '--table-border-color': 'var(--mantine-color-default-border)',\n },\n }),\n }),\n Tabs: Tabs.extend({\n classNames: TabsClasses,\n }),\n Text: Text.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: TextClasses,\n }),\n TimeInput: TimeInput.extend({\n defaultProps: {\n rightSection: <IconClock size={16} />,\n },\n }),\n TimePicker: TimePicker.extend({\n defaultProps: {\n withDropdown: true,\n format: '12h',\n },\n classNames: TimePickerClasses,\n }),\n Tooltip: Tooltip.extend({\n defaultProps: {\n maw: 280,\n multiline: true,\n withArrow: true,\n zIndex: 10000,\n color: PlasmaColors.violet[9],\n },\n classNames: TooltipClasses,\n }),\n YearPicker: YearPicker.extend({\n classNames: YearPickerClasses,\n }),\n },\n});\n"],"names":["ArrowHeadLeftSize16Px","ArrowHeadRightSize16Px","CrossSize16Px","FilterSize16Px","IconCalendarWeek","IconCheck","IconClock","IconInfoCircleFilled","IconSlash","color","ActionIcon","Alert","AppShell","Badge","Breadcrumbs","Button","Card","Checkbox","Chip","CloseButton","ColorSwatch","Combobox","ComboboxSearch","createTheme","deepMerge","Divider","Image","Input","InputWrapper","List","Loader","Modal","MultiSelect","NavLink","Notification","NumberInput","Pagination","Paper","PasswordInput","Pill","Popover","Radio","ScrollArea","SegmentedControl","Select","Skeleton","Slider","Stepper","Switch","Table","Tabs","Text","Tooltip","DateInput","DatePicker","MonthPicker","PickerInputBase","TimeInput","TimePicker","YearPicker","Accordion","CheckboxIcon","CircleLoader","InfoToken","AccordionClasses","ActionIconClasses","AlertClasses","BadgeClasses","BreadcrumbsClasses","ButtonClasses","CardClasses","CheckboxClasses","CheckboxIndicatorClasses","ChipClasses","ComboboxClasses","DatePickerClasses","InputClasses","InputWrapperClasses","ListClasses","ModalClasses","MonthPickerClasses","NavLinkClasses","NotificationClasses","NumberInputClasses","PaginationClasses","PaperClasses","PillClasses","PopoverClasses","RadioClasses","RadioCardClasses","ReadOnlyInputClasses","ReadOnlyStateClasses","ScrollAreaClasses","SegmentedControlClasses","SelectClasses","SkeletonClasses","SliderClasses","StepperClasses","TableClasses","TabsClasses","TextClasses","TimePickerClasses","TooltipClasses","YearPickerClasses","PlasmaColors","placeholderSvg","plasmaVariantColorResolver","plasmaTheme","variantColorResolver","fontFamily","black","primary","gray","defaultRadius","lineHeights","xxs","xs","sm","md","lg","xl","spacing","radius","none","xxl","primaryColor","headings","fontWeight","sizes","h1","fontSize","lineHeight","h2","h3","h4","h5","h6","fontSizes","shadows","primaryShade","colors","components","extend","classNames","defaultProps","size","vars","theme","root","icon","variant","p","tt","separator","separatorMargin","shadow","padding","withBorder","props","readOnly","disabled","CheckboxIndicator","Indicator","height","aria-label","withShadow","middlewares","inline","placeholder","rightSection","miw","leftSection","fallbackSrc","_theme","anyProps","includes","__staticSelector","label","description","undefined","red","error","loaders","defaultLoaders","circle","type","role","ModalOverlay","Overlay","indigo","backgroundOpacity","blur","ModalRoot","Root","hidePickedOptions","nextIcon","previousIcon","position","RadioCard","allowDeselect","withCheckIcon","completedIcon","track","thumb","withThumbIndicator","table","withDropdown","format","maw","multiline","withArrow","zIndex","violet"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/theme/Theme.tsx"],"sourcesContent":["import {\n ArrowHeadLeftSize16Px,\n ArrowHeadRightSize16Px,\n CrossSize16Px,\n FilterSize16Px,\n IconCalendarWeek,\n IconCheck,\n IconClock,\n IconInfoCircleFilled,\n IconSlash,\n} from '@coveord/plasma-react-icons';\nimport {color} from '@coveord/plasma-tokens';\nimport {\n ActionIcon,\n Alert,\n AppShell,\n Badge,\n Breadcrumbs,\n Button,\n Card,\n Checkbox,\n Chip,\n CloseButton,\n ColorSwatch,\n Combobox,\n ComboboxSearch,\n createTheme,\n deepMerge,\n Divider,\n Image,\n Input,\n InputWrapper,\n List,\n Loader,\n MantineThemeOverride,\n Modal,\n MultiSelect,\n NavLink,\n Notification,\n NumberInput,\n Pagination,\n Paper,\n PasswordInput,\n Pill,\n Popover,\n Radio,\n ScrollArea,\n SegmentedControl,\n Select,\n Skeleton,\n Slider,\n Stepper,\n Switch,\n Table,\n Tabs,\n Text,\n Tooltip,\n} from '@mantine/core';\nimport {\n DateInput,\n DatePicker,\n DateTimePicker,\n MonthPicker,\n PickerInputBase,\n TimeInput,\n TimePicker,\n YearPicker,\n} from '@mantine/dates';\nimport {Accordion, CheckboxIcon, CircleLoader, InfoToken} from '../components/index.js';\nimport AccordionClasses from '../styles/Accordion.module.css';\nimport ActionIconClasses from '../styles/ActionIcon.module.css';\nimport AlertClasses from '../styles/Alert.module.css';\nimport BadgeClasses from '../styles/Badge.module.css';\nimport BreadcrumbsClasses from '../styles/Breadcrumbs.module.css';\nimport ButtonClasses from '../styles/Button.module.css';\nimport CardClasses from '../styles/Card.module.css';\nimport CheckboxClasses from '../styles/Checkbox.module.css';\nimport CheckboxIndicatorClasses from '../styles/CheckboxIndicator.module.css';\nimport ChipClasses from '../styles/Chip.module.css';\nimport ComboboxClasses from '../styles/Combobox.module.css';\nimport DatePickerClasses from '../styles/DatePicker.module.css';\nimport DateTimePickerClasses from '../styles/DateTimePicker.module.css';\nimport InputClasses from '../styles/Input.module.css';\nimport InputWrapperClasses from '../styles/InputWrapper.module.css';\nimport ListClasses from '../styles/List.module.css';\nimport ModalClasses from '../styles/Modal.module.css';\nimport MonthPickerClasses from '../styles/MonthPicker.module.css';\nimport NavLinkClasses from '../styles/NavLink.module.css';\nimport NotificationClasses from '../styles/Notifications.module.css';\nimport NumberInputClasses from '../styles/NumberInput.module.css';\nimport PaginationClasses from '../styles/Pagination.module.css';\nimport PaperClasses from '../styles/Paper.module.css';\nimport PillClasses from '../styles/Pill.module.css';\nimport PopoverClasses from '../styles/Popover.module.css';\nimport RadioClasses from '../styles/Radio.module.css';\nimport RadioCardClasses from '../styles/RadioCard.module.css';\nimport ReadOnlyInputClasses from '../styles/ReadOnlyInput.module.css';\nimport ReadOnlyStateClasses from '../styles/ReadOnlyState.module.css';\nimport ScrollAreaClasses from '../styles/ScrollArea.module.css';\nimport SegmentedControlClasses from '../styles/SegmentedControl.module.css';\nimport SelectClasses from '../styles/Select.module.css';\nimport SkeletonClasses from '../styles/Skeleton.module.css';\nimport SliderClasses from '../styles/Slider.module.css';\nimport StepperClasses from '../styles/Stepper.module.css';\nimport TableClasses from '../styles/Table.module.css';\nimport TabsClasses from '../styles/Tabs.module.css';\nimport TextClasses from '../styles/Text.module.css';\nimport TimePickerClasses from '../styles/TimePicker.module.css';\nimport TooltipClasses from '../styles/Tooltip.module.css';\nimport YearPickerClasses from '../styles/YearPicker.module.css';\nimport {PlasmaColors} from './PlasmaColors.js';\n\nimport placeholderSvg from '../images/placeholder.svg';\nimport {plasmaVariantColorResolver} from './plasmaVariantColorResolver.js';\n\nexport const plasmaTheme: MantineThemeOverride = createTheme({\n variantColorResolver: plasmaVariantColorResolver,\n // These are overrides over https://github.com/mantinedev/mantine/blob/master/packages/%40mantine/core/src/core/MantineProvider/default-theme.ts\n fontFamily: 'canada-type-gibson, sans-serif',\n black: color.primary.gray[9],\n defaultRadius: 'md',\n lineHeights: {\n xxs: '1.2',\n xs: '1.16',\n sm: '1.14',\n md: '1.14',\n lg: '1.11',\n xl: '1.2',\n },\n spacing: {\n xxs: '4px',\n xs: '8px',\n sm: '16px',\n md: '24px',\n lg: '32px',\n xl: '40px',\n },\n radius: {\n none: '0px',\n xs: '2px',\n sm: '4px',\n md: '8px',\n lg: '16px',\n xl: '24px',\n xxl: '32px',\n },\n primaryColor: 'blue',\n headings: {\n fontFamily: 'canada-type-gibson, sans-serif',\n fontWeight: 'var(--coveo-fw-bold)',\n sizes: {\n h1: {fontSize: '40px', lineHeight: '1.2', fontWeight: 'var(--coveo-fw-bold)'},\n h2: {fontSize: '32px', lineHeight: '1.35', fontWeight: 'var(--coveo-fw-normal)'},\n h3: {fontSize: '24px', lineHeight: '1.33', fontWeight: 'var(--coveo-fw-bold)'},\n h4: {fontSize: '18px', lineHeight: '1.2', fontWeight: 'var(--coveo-fw-bold)'},\n h5: {fontSize: '16px', lineHeight: '1.25', fontWeight: 'var(--coveo-fw-bold)'},\n h6: {fontSize: '12px', lineHeight: '1.33', fontWeight: 'var(--coveo-fw-bold)'},\n },\n },\n fontSizes: {\n xxs: '10px',\n xs: '12px',\n sm: '14px',\n md: '16px',\n lg: '18px',\n xl: '20px',\n },\n shadows: {\n xs: '0px 1px 2px 0px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05), 0px -0.5px 1px 0px rgba(0, 0, 0, 0.02)',\n sm: '0px 7px 7px -5px rgba(0, 0, 0, 0.04), 0px 10px 15px -5px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n md: '0px 10px 10px -5px rgba(0, 0, 0, 0.04), 0px 20px 25px -5px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n lg: '0px 12px 12px -7px rgba(0, 0, 0, 0.04), 0px 28px 23px -7px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n xl: '0px 17px 17px -7px rgba(0, 0, 0, 0.04), 0px 36px 28px -7px rgba(0, 0, 0, 0.10), 0px 1px 3px 0px rgba(0, 0, 0, 0.05)',\n },\n primaryShade: 5,\n colors: PlasmaColors,\n components: {\n Accordion: Accordion.extend({\n classNames: AccordionClasses,\n }),\n ActionIcon: ActionIcon.extend({\n defaultProps: {\n size: 'lg',\n },\n classNames: ActionIconClasses,\n }),\n AppShell: AppShell.extend({\n vars: (theme) =>\n ({\n root: {'--app-shell-border-color': theme.colors.gray[2]},\n }) as any,\n }),\n Alert: Alert.extend({\n defaultProps: {\n icon: <InfoToken variant=\"advice\" />,\n p: 'sm',\n },\n classNames: AlertClasses,\n }),\n Badge: Badge.extend({\n classNames: BadgeClasses,\n defaultProps: {\n variant: 'light',\n tt: 'none',\n },\n }),\n Breadcrumbs: Breadcrumbs.extend({\n classNames: BreadcrumbsClasses,\n defaultProps: {\n separator: <IconSlash size={16} color=\"var(--mantine-color-dimmed)\" />,\n separatorMargin: 'xxs',\n },\n }),\n Button: Button.extend({\n defaultProps: {\n size: 'sm',\n vars: (theme) => ({\n root: {\n '--button-padding-x': theme.spacing.sm,\n },\n }),\n },\n classNames: ButtonClasses,\n }),\n Card: Card.extend({\n defaultProps: {\n radius: 'lg',\n shadow: 'xs',\n padding: 'sm',\n withBorder: true,\n },\n classNames: CardClasses,\n }),\n Checkbox: Checkbox.extend({\n defaultProps: {\n radius: 'sm',\n icon: CheckboxIcon,\n },\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(CheckboxClasses, ReadOnlyStateClasses);\n }\n return CheckboxClasses;\n },\n }),\n CheckboxIndicator: Checkbox.Indicator.extend({\n defaultProps: {\n radius: 'sm',\n icon: CheckboxIcon,\n },\n classNames: CheckboxIndicatorClasses,\n }),\n Chip: Chip.extend({\n defaultProps: {\n icon: <IconCheck size={16} />,\n },\n classNames: ChipClasses,\n }),\n CloseButton: CloseButton.extend({\n defaultProps: {\n icon: <CrossSize16Px height={16} aria-label=\"close\" />,\n },\n }),\n ColorSwatch: ColorSwatch.extend({\n defaultProps: {\n size: 8,\n withShadow: false,\n },\n }),\n Combobox: Combobox.extend({\n classNames: ComboboxClasses,\n defaultProps: {\n middlewares: {inline: true},\n },\n }),\n ComboboxSearch: ComboboxSearch.extend({\n defaultProps: {\n placeholder: 'Search',\n rightSection: <FilterSize16Px height={16} color=\"gray.5\" />,\n },\n }),\n DateInput: DateInput.extend({\n defaultProps: {\n miw: 250,\n leftSection: <IconCalendarWeek size={16} />,\n },\n }),\n DatePicker: DatePicker.extend({\n classNames: DatePickerClasses,\n }),\n DateTimePicker: DateTimePicker.extend({\n classNames: DateTimePickerClasses,\n }),\n Divider: Divider.extend({\n defaultProps: {\n color: 'var(--mantine-color-default-border)',\n },\n }),\n Image: Image.extend({\n defaultProps: {\n fallbackSrc: placeholderSvg,\n },\n }),\n Input: Input.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: (_theme, props) => {\n const anyProps = props as any;\n if (anyProps.readOnly && !props.disabled && !['Select'].includes(anyProps.__staticSelector)) {\n return deepMerge(InputClasses, ReadOnlyInputClasses);\n }\n return InputClasses;\n },\n }),\n InputWrapper: InputWrapper.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: InputWrapperClasses,\n vars: (theme, props) => {\n const anyProps = props as any;\n if (anyProps.disabled || (anyProps.readOnly && !['Select'].includes(anyProps.__staticSelector))) {\n return {\n root: {\n '--input-margin-top': props?.label || props?.description ? theme.spacing.xxs : undefined,\n },\n label: {'--input-asterisk-color': theme.colors.red[2]},\n error: {},\n description: {},\n };\n }\n return {\n root: {'--input-margin-top': props?.label || props?.description ? theme.spacing.xxs : undefined},\n label: {},\n error: {},\n description: {},\n };\n },\n }),\n PasswordInput: PasswordInput.extend({\n vars: () => ({\n root: {\n '--psi-button-size': 'var(--mantine-spacing-lg)',\n },\n }),\n }),\n Loader: Loader.extend({\n defaultProps: {\n loaders: {...Loader.defaultLoaders, circle: CircleLoader},\n type: 'circle',\n role: 'presentation',\n },\n }),\n List: List.extend({\n classNames: ListClasses,\n }),\n Modal: Modal.extend({\n classNames: ModalClasses,\n vars: () => {\n const sizes = {\n '--modal-size-xs': '432px',\n '--modal-size-sm': '664px',\n '--modal-size-md': '896px',\n '--modal-size-lg': '1120px',\n '--modal-size-xl': '88%',\n } as any;\n return {\n root: {\n ...sizes,\n },\n };\n },\n }),\n ModalOverlay: Modal.Overlay.extend({\n defaultProps: {\n color: PlasmaColors.indigo[8],\n backgroundOpacity: 0.7,\n blur: 2,\n },\n }),\n ModalRoot: Modal.Root.extend({\n defaultProps: {\n padding: 'lg',\n },\n }),\n MonthPicker: MonthPicker.extend({\n classNames: MonthPickerClasses,\n }),\n MultiSelect: MultiSelect.extend({defaultProps: {hidePickedOptions: true}}),\n NavLink: NavLink.extend({classNames: NavLinkClasses}),\n Notification: Notification.extend({\n classNames: NotificationClasses,\n defaultProps: {\n icon: <IconInfoCircleFilled height={20} />,\n },\n }),\n NumberInput: NumberInput.extend({\n classNames: NumberInputClasses,\n }),\n Pagination: Pagination.extend({\n classNames: PaginationClasses,\n defaultProps: {\n nextIcon: ArrowHeadRightSize16Px,\n previousIcon: ArrowHeadLeftSize16Px,\n },\n }),\n Paper: Paper.extend({\n classNames: PaperClasses,\n }),\n PickerInputBase: PickerInputBase.extend({\n defaultProps: {\n miw: 250,\n leftSection: <IconCalendarWeek size={16} />,\n },\n }),\n Pill: Pill.extend({\n classNames: PillClasses,\n }),\n Popover: Popover.extend({\n classNames: PopoverClasses,\n defaultProps: {\n middlewares: {inline: true},\n position: 'bottom-start',\n },\n }),\n Radio: Radio.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return deepMerge(RadioClasses, ReadOnlyStateClasses);\n }\n return RadioClasses;\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {\n '--radio-icon-color': theme.colors.gray[7],\n '--radio-color': theme.colors.gray[2],\n },\n };\n }\n return {root: {}};\n },\n }),\n RadioCard: Radio.Card.extend({\n classNames: RadioCardClasses,\n }),\n ScrollArea: ScrollArea.extend({\n classNames: ScrollAreaClasses,\n }),\n SegmentedControl: SegmentedControl.extend({\n classNames: SegmentedControlClasses,\n }),\n Select: Select.extend({\n defaultProps: {allowDeselect: false, withCheckIcon: false},\n classNames: SelectClasses,\n }),\n Skeleton: Skeleton.extend({\n classNames: SkeletonClasses,\n }),\n Slider: Slider.extend({\n defaultProps: {\n size: 'md',\n },\n classNames: SliderClasses,\n }),\n Stepper: Stepper.extend({\n defaultProps: {\n size: 'xs',\n completedIcon: <IconCheck size={16} />,\n },\n classNames: StepperClasses,\n }),\n Switch: Switch.extend({\n classNames: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return ReadOnlyStateClasses;\n }\n return {};\n },\n vars: (theme, props) => {\n if (props.readOnly && !props.disabled) {\n return {\n root: {},\n track: {\n '--switch-bg': theme.colors.gray[2],\n '--switch-bd': 'transparent',\n },\n thumb: {\n '--switch-thumb-bd': 'transparent',\n },\n };\n }\n return {root: {}, track: {}, thumb: {}};\n },\n defaultProps: {\n withThumbIndicator: false,\n },\n }),\n Table: Table.extend({\n classNames: TableClasses,\n vars: () => ({\n table: {\n '--table-border-color': 'var(--mantine-color-default-border)',\n },\n }),\n }),\n Tabs: Tabs.extend({\n classNames: TabsClasses,\n }),\n Text: Text.extend({\n defaultProps: {\n size: 'sm',\n },\n classNames: TextClasses,\n }),\n TimeInput: TimeInput.extend({\n defaultProps: {\n rightSection: <IconClock size={16} />,\n },\n }),\n TimePicker: TimePicker.extend({\n defaultProps: {\n withDropdown: true,\n format: '12h',\n },\n classNames: TimePickerClasses,\n }),\n Tooltip: Tooltip.extend({\n defaultProps: {\n maw: 280,\n multiline: true,\n withArrow: true,\n zIndex: 10000,\n color: PlasmaColors.violet[9],\n },\n classNames: TooltipClasses,\n }),\n YearPicker: YearPicker.extend({\n classNames: YearPickerClasses,\n }),\n },\n});\n"],"names":["ArrowHeadLeftSize16Px","ArrowHeadRightSize16Px","CrossSize16Px","FilterSize16Px","IconCalendarWeek","IconCheck","IconClock","IconInfoCircleFilled","IconSlash","color","ActionIcon","Alert","AppShell","Badge","Breadcrumbs","Button","Card","Checkbox","Chip","CloseButton","ColorSwatch","Combobox","ComboboxSearch","createTheme","deepMerge","Divider","Image","Input","InputWrapper","List","Loader","Modal","MultiSelect","NavLink","Notification","NumberInput","Pagination","Paper","PasswordInput","Pill","Popover","Radio","ScrollArea","SegmentedControl","Select","Skeleton","Slider","Stepper","Switch","Table","Tabs","Text","Tooltip","DateInput","DatePicker","DateTimePicker","MonthPicker","PickerInputBase","TimeInput","TimePicker","YearPicker","Accordion","CheckboxIcon","CircleLoader","InfoToken","AccordionClasses","ActionIconClasses","AlertClasses","BadgeClasses","BreadcrumbsClasses","ButtonClasses","CardClasses","CheckboxClasses","CheckboxIndicatorClasses","ChipClasses","ComboboxClasses","DatePickerClasses","DateTimePickerClasses","InputClasses","InputWrapperClasses","ListClasses","ModalClasses","MonthPickerClasses","NavLinkClasses","NotificationClasses","NumberInputClasses","PaginationClasses","PaperClasses","PillClasses","PopoverClasses","RadioClasses","RadioCardClasses","ReadOnlyInputClasses","ReadOnlyStateClasses","ScrollAreaClasses","SegmentedControlClasses","SelectClasses","SkeletonClasses","SliderClasses","StepperClasses","TableClasses","TabsClasses","TextClasses","TimePickerClasses","TooltipClasses","YearPickerClasses","PlasmaColors","placeholderSvg","plasmaVariantColorResolver","plasmaTheme","variantColorResolver","fontFamily","black","primary","gray","defaultRadius","lineHeights","xxs","xs","sm","md","lg","xl","spacing","radius","none","xxl","primaryColor","headings","fontWeight","sizes","h1","fontSize","lineHeight","h2","h3","h4","h5","h6","fontSizes","shadows","primaryShade","colors","components","extend","classNames","defaultProps","size","vars","theme","root","icon","variant","p","tt","separator","separatorMargin","shadow","padding","withBorder","props","readOnly","disabled","CheckboxIndicator","Indicator","height","aria-label","withShadow","middlewares","inline","placeholder","rightSection","miw","leftSection","fallbackSrc","_theme","anyProps","includes","__staticSelector","label","description","undefined","red","error","loaders","defaultLoaders","circle","type","role","ModalOverlay","Overlay","indigo","backgroundOpacity","blur","ModalRoot","Root","hidePickedOptions","nextIcon","previousIcon","position","RadioCard","allowDeselect","withCheckIcon","completedIcon","track","thumb","withThumbIndicator","table","withDropdown","format","maw","multiline","withArrow","zIndex","violet"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plasmaCSSVariablesResolver.d.ts","sourceRoot":"","sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,oBAAoB,EAKvB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,0BAA0B,EAAE,oBA+DxC,CAAC"}
1
+ {"version":3,"file":"plasmaCSSVariablesResolver.d.ts","sourceRoot":"","sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,oBAAoB,EAKvB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,0BAA0B,EAAE,oBA0FxC,CAAC"}
@@ -10,7 +10,29 @@ export const plasmaCSSVariablesResolver = (theme)=>{
10
10
  '--coveo-fw-bold': '500'
11
11
  },
12
12
  dark: {
13
- '--coveo-color-title': 'var(--mantine-color-white)'
13
+ // custom colors
14
+ '--coveo-color-title': 'var(--mantine-color-white)',
15
+ '--coveo-app-background': theme.colors.dark[8],
16
+ '--coveo-color-input-border': theme.colors.dark[4],
17
+ '--coveo-color-text-readonly': theme.colors.dark[0],
18
+ '--coveo-color-bg-readonly': theme.colors.dark[6],
19
+ '--coveo-color-text-primary': 'var(--mantine-primary-color-4)',
20
+ '--coveo-color-bg-dark-surface': 'var(--mantine-primary-color-3)',
21
+ // mantine overrides
22
+ '--mantine-primary-color-light': 'var(--mantine-primary-color-7)',
23
+ '--mantine-color-body': theme.colors.dark[8],
24
+ '--mantine-color-default': theme.colors.dark[7],
25
+ '--mantine-color-default-border': theme.colors.dark[6],
26
+ '--mantine-color-default-hover': theme.colors.dark[6],
27
+ '--mantine-color-error': theme.colors.red[4],
28
+ '--mantine-color-text': theme.colors.dark[0],
29
+ '--mantine-color-dimmed': theme.colors.dark[1],
30
+ '--mantine-color-gray-filled': theme.colors.dark[6],
31
+ '--mantine-color-warning-filled': theme.colors.yellow[2],
32
+ '--mantine-color-warning-light': theme.colors.yellow[6],
33
+ '--mantine-color-placeholder': theme.colors.dark[2],
34
+ '--mantine-color-disabled': theme.colors.dark[7],
35
+ '--mantine-color-disabled-color': theme.colors.dark[3]
14
36
  },
15
37
  light: {
16
38
  // custom colors
@@ -22,15 +44,17 @@ export const plasmaCSSVariablesResolver = (theme)=>{
22
44
  '--coveo-color-text-primary': 'var(--mantine-primary-color-filled)',
23
45
  '--coveo-color-bg-dark-surface': theme.colors.violet[9],
24
46
  // mantine overrides
47
+ '--mantine-color-body': theme.colors.gray[0],
48
+ '--mantine-color-default': 'var(--mantine-color-white)',
25
49
  '--mantine-color-default-border': theme.colors.gray[2],
50
+ '--mantine-color-default-hover': theme.colors.gray[1],
26
51
  '--mantine-color-error': theme.colors.red[5],
27
52
  '--mantine-color-text': theme.colors.gray[6],
28
53
  '--mantine-color-dimmed': theme.colors.gray[5],
29
54
  '--mantine-color-gray-filled': theme.colors.gray[4],
30
55
  '--mantine-color-warning-filled': theme.colors.yellow[4],
31
56
  '--mantine-color-placeholder': theme.colors.gray[4],
32
- '--mantine-color-default-hover': theme.colors.gray[1],
33
- '--mantine-color-disabled': alpha('var(--mantine-color-gray-4)', 0.1),
57
+ '--mantine-color-disabled': alpha(theme.colors.gray[4], 0.1),
34
58
  '--mantine-color-disabled-color': theme.colors.gray[3]
35
59
  }
36
60
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"sourcesContent":["import {\n alpha,\n ConvertCSSVariablesInput,\n CSSVariablesResolver,\n defaultCssVariablesResolver,\n getPrimaryShade,\n MantineColor,\n MantineTheme,\n} from '@mantine/core';\n\nexport const plasmaCSSVariablesResolver: CSSVariablesResolver = (theme) => {\n // Get the default Mantine CSS variables\n const mantineVariables = defaultCssVariablesResolver(theme);\n\n // Define your custom variables\n const customVariables: ConvertCSSVariablesInput = {\n variables: {\n '--coveo-fw-light': '300',\n '--coveo-fw-normal': '400',\n '--coveo-fw-bold': '500',\n },\n dark: {'--coveo-color-title': 'var(--mantine-color-white)'},\n light: {\n // custom colors\n '--coveo-app-background': theme.colors.gray[0],\n '--coveo-color-input-border': theme.colors.gray[3],\n '--coveo-color-title': theme.colors.gray[8],\n '--coveo-color-text-readonly': 'var(--mantine-color-text)',\n '--coveo-color-bg-readonly': theme.colors.gray[1],\n '--coveo-color-text-primary': 'var(--mantine-primary-color-filled)',\n '--coveo-color-bg-dark-surface': theme.colors.violet[9],\n\n // mantine overrides\n '--mantine-color-default-border': theme.colors.gray[2],\n '--mantine-color-error': theme.colors.red[5],\n '--mantine-color-text': theme.colors.gray[6],\n '--mantine-color-dimmed': theme.colors.gray[5],\n '--mantine-color-gray-filled': theme.colors.gray[4],\n '--mantine-color-warning-filled': theme.colors.yellow[4],\n '--mantine-color-placeholder': theme.colors.gray[4],\n '--mantine-color-default-hover': theme.colors.gray[1],\n '--mantine-color-disabled': alpha('var(--mantine-color-gray-4)', 0.1),\n '--mantine-color-disabled-color': theme.colors.gray[3],\n },\n };\n\n Object.keys(theme.colors).forEach((color) => {\n Object.assign(\n customVariables.light,\n getVariantLightVariables({\n theme,\n color,\n colorScheme: 'light',\n }),\n );\n });\n // Merge Mantine variables with custom variables\n const result: ConvertCSSVariablesInput = {\n variables: {\n ...mantineVariables.variables,\n ...customVariables.variables,\n },\n dark: {\n ...mantineVariables.dark,\n ...customVariables.dark,\n },\n light: {\n ...mantineVariables.light,\n ...customVariables.light,\n },\n };\n\n return result;\n};\n\ninterface GetColorVariablesInput {\n theme: MantineTheme;\n color: MantineColor;\n colorScheme: 'light' | 'dark';\n}\n\nconst getVariantLightVariables = ({theme, color, colorScheme}: GetColorVariablesInput) => {\n if (!theme.colors[color]) {\n return {};\n }\n\n if (colorScheme === 'light') {\n const primaryShade = getPrimaryShade(theme, 'light');\n return {\n [`--mantine-color-${color}-light`]: alpha(theme.colors[color][primaryShade], 0.1),\n [`--mantine-color-${color}-light-hover`]: alpha(theme.colors[color][primaryShade], 0.16),\n };\n }\n};\n"],"names":["alpha","defaultCssVariablesResolver","getPrimaryShade","plasmaCSSVariablesResolver","theme","mantineVariables","customVariables","variables","dark","light","colors","gray","violet","red","yellow","Object","keys","forEach","color","assign","getVariantLightVariables","colorScheme","result","primaryShade"],"mappings":"AAAA,SACIA,KAAK,EAGLC,2BAA2B,EAC3BC,eAAe,QAGZ,gBAAgB;AAEvB,OAAO,MAAMC,6BAAmD,CAACC;IAC7D,wCAAwC;IACxC,MAAMC,mBAAmBJ,4BAA4BG;IAErD,+BAA+B;IAC/B,MAAME,kBAA4C;QAC9CC,WAAW;YACP,oBAAoB;YACpB,qBAAqB;YACrB,mBAAmB;QACvB;QACAC,MAAM;YAAC,uBAAuB;QAA4B;QAC1DC,OAAO;YACH,gBAAgB;YAChB,0BAA0BL,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YAC9C,8BAA8BP,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YAClD,uBAAuBP,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YAC3C,+BAA+B;YAC/B,6BAA6BP,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YACjD,8BAA8B;YAC9B,iCAAiCP,MAAMM,MAAM,CAACE,MAAM,CAAC,EAAE;YAEvD,oBAAoB;YACpB,kCAAkCR,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YACtD,yBAAyBP,MAAMM,MAAM,CAACG,GAAG,CAAC,EAAE;YAC5C,wBAAwBT,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YAC5C,0BAA0BP,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YAC9C,+BAA+BP,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YACnD,kCAAkCP,MAAMM,MAAM,CAACI,MAAM,CAAC,EAAE;YACxD,+BAA+BV,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YACnD,iCAAiCP,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;YACrD,4BAA4BX,MAAM,+BAA+B;YACjE,kCAAkCI,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE;QAC1D;IACJ;IAEAI,OAAOC,IAAI,CAACZ,MAAMM,MAAM,EAAEO,OAAO,CAAC,CAACC;QAC/BH,OAAOI,MAAM,CACTb,gBAAgBG,KAAK,EACrBW,yBAAyB;YACrBhB;YACAc;YACAG,aAAa;QACjB;IAER;IACA,gDAAgD;IAChD,MAAMC,SAAmC;QACrCf,WAAW;YACP,GAAGF,iBAAiBE,SAAS;YAC7B,GAAGD,gBAAgBC,SAAS;QAChC;QACAC,MAAM;YACF,GAAGH,iBAAiBG,IAAI;YACxB,GAAGF,gBAAgBE,IAAI;QAC3B;QACAC,OAAO;YACH,GAAGJ,iBAAiBI,KAAK;YACzB,GAAGH,gBAAgBG,KAAK;QAC5B;IACJ;IAEA,OAAOa;AACX,EAAE;AAQF,MAAMF,2BAA2B,CAAC,EAAChB,KAAK,EAAEc,KAAK,EAAEG,WAAW,EAAyB;IACjF,IAAI,CAACjB,MAAMM,MAAM,CAACQ,MAAM,EAAE;QACtB,OAAO,CAAC;IACZ;IAEA,IAAIG,gBAAgB,SAAS;QACzB,MAAME,eAAerB,gBAAgBE,OAAO;QAC5C,OAAO;YACH,CAAC,CAAC,gBAAgB,EAAEc,MAAM,MAAM,CAAC,CAAC,EAAElB,MAAMI,MAAMM,MAAM,CAACQ,MAAM,CAACK,aAAa,EAAE;YAC7E,CAAC,CAAC,gBAAgB,EAAEL,MAAM,YAAY,CAAC,CAAC,EAAElB,MAAMI,MAAMM,MAAM,CAACQ,MAAM,CAACK,aAAa,EAAE;QACvF;IACJ;AACJ"}
1
+ {"version":3,"sources":["../../../src/theme/plasmaCSSVariablesResolver.ts"],"sourcesContent":["import {\n alpha,\n ConvertCSSVariablesInput,\n CSSVariablesResolver,\n defaultCssVariablesResolver,\n getPrimaryShade,\n MantineColor,\n MantineTheme,\n} from '@mantine/core';\n\nexport const plasmaCSSVariablesResolver: CSSVariablesResolver = (theme) => {\n // Get the default Mantine CSS variables\n const mantineVariables = defaultCssVariablesResolver(theme);\n\n // Define your custom variables\n const customVariables: ConvertCSSVariablesInput = {\n variables: {\n '--coveo-fw-light': '300',\n '--coveo-fw-normal': '400',\n '--coveo-fw-bold': '500',\n },\n dark: {\n // custom colors\n '--coveo-color-title': 'var(--mantine-color-white)',\n '--coveo-app-background': theme.colors.dark[8],\n '--coveo-color-input-border': theme.colors.dark[4],\n '--coveo-color-text-readonly': theme.colors.dark[0],\n '--coveo-color-bg-readonly': theme.colors.dark[6],\n '--coveo-color-text-primary': 'var(--mantine-primary-color-4)',\n '--coveo-color-bg-dark-surface': 'var(--mantine-primary-color-3)',\n\n // mantine overrides\n '--mantine-primary-color-light': 'var(--mantine-primary-color-7)',\n '--mantine-color-body': theme.colors.dark[8],\n '--mantine-color-default': theme.colors.dark[7],\n '--mantine-color-default-border': theme.colors.dark[6],\n '--mantine-color-default-hover': theme.colors.dark[6],\n '--mantine-color-error': theme.colors.red[4],\n '--mantine-color-text': theme.colors.dark[0],\n '--mantine-color-dimmed': theme.colors.dark[1],\n '--mantine-color-gray-filled': theme.colors.dark[6],\n '--mantine-color-warning-filled': theme.colors.yellow[2],\n '--mantine-color-warning-light': theme.colors.yellow[6],\n '--mantine-color-placeholder': theme.colors.dark[2],\n '--mantine-color-disabled': theme.colors.dark[7],\n '--mantine-color-disabled-color': theme.colors.dark[3],\n },\n light: {\n // custom colors\n '--coveo-app-background': theme.colors.gray[0],\n '--coveo-color-input-border': theme.colors.gray[3],\n '--coveo-color-title': theme.colors.gray[8],\n '--coveo-color-text-readonly': 'var(--mantine-color-text)',\n '--coveo-color-bg-readonly': theme.colors.gray[1],\n '--coveo-color-text-primary': 'var(--mantine-primary-color-filled)',\n '--coveo-color-bg-dark-surface': theme.colors.violet[9],\n\n // mantine overrides\n '--mantine-color-body': theme.colors.gray[0],\n '--mantine-color-default': 'var(--mantine-color-white)',\n '--mantine-color-default-border': theme.colors.gray[2],\n '--mantine-color-default-hover': theme.colors.gray[1],\n '--mantine-color-error': theme.colors.red[5],\n '--mantine-color-text': theme.colors.gray[6],\n '--mantine-color-dimmed': theme.colors.gray[5],\n '--mantine-color-gray-filled': theme.colors.gray[4],\n '--mantine-color-warning-filled': theme.colors.yellow[4],\n '--mantine-color-placeholder': theme.colors.gray[4],\n '--mantine-color-disabled': alpha(theme.colors.gray[4], 0.1),\n '--mantine-color-disabled-color': theme.colors.gray[3],\n },\n };\n\n Object.keys(theme.colors).forEach((color) => {\n Object.assign(\n customVariables.light,\n getVariantLightVariables({\n theme,\n color,\n colorScheme: 'light',\n }),\n );\n });\n // Merge Mantine variables with custom variables\n const result: ConvertCSSVariablesInput = {\n variables: {\n ...mantineVariables.variables,\n ...customVariables.variables,\n },\n dark: {\n ...mantineVariables.dark,\n ...customVariables.dark,\n },\n light: {\n ...mantineVariables.light,\n ...customVariables.light,\n },\n };\n\n return result;\n};\n\ninterface GetColorVariablesInput {\n theme: MantineTheme;\n color: MantineColor;\n colorScheme: 'light' | 'dark';\n}\n\nconst getVariantLightVariables = ({theme, color, colorScheme}: GetColorVariablesInput) => {\n if (!theme.colors[color]) {\n return {};\n }\n\n if (colorScheme === 'light') {\n const primaryShade = getPrimaryShade(theme, 'light');\n return {\n [`--mantine-color-${color}-light`]: alpha(theme.colors[color][primaryShade], 0.1),\n [`--mantine-color-${color}-light-hover`]: alpha(theme.colors[color][primaryShade], 0.16),\n };\n }\n};\n"],"names":["alpha","defaultCssVariablesResolver","getPrimaryShade","plasmaCSSVariablesResolver","theme","mantineVariables","customVariables","variables","dark","colors","red","yellow","light","gray","violet","Object","keys","forEach","color","assign","getVariantLightVariables","colorScheme","result","primaryShade"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coveord/plasma-mantine",
3
- "version": "56.2.6",
3
+ "version": "56.3.0",
4
4
  "description": "A Plasma flavoured Mantine theme",
5
5
  "keywords": [
6
6
  "plasma",
@@ -41,18 +41,18 @@
41
41
  "fast-deep-equal": "3.1.3",
42
42
  "lodash.defaultsdeep": "4.6.1",
43
43
  "monaco-editor": "0.54.0",
44
- "@coveord/plasma-react-icons": "56.2.6",
45
- "@coveord/plasma-tokens": "56.2.3"
44
+ "@coveord/plasma-tokens": "56.3.0",
45
+ "@coveord/plasma-react-icons": "56.3.0"
46
46
  },
47
47
  "devDependencies": {
48
- "@mantine/carousel": "8.3.3",
49
- "@mantine/code-highlight": "8.3.3",
50
- "@mantine/core": "8.3.3",
51
- "@mantine/dates": "8.3.3",
52
- "@mantine/form": "8.3.3",
53
- "@mantine/hooks": "8.3.3",
54
- "@mantine/modals": "8.3.3",
55
- "@mantine/notifications": "8.3.3",
48
+ "@mantine/carousel": "8.3.5",
49
+ "@mantine/code-highlight": "8.3.5",
50
+ "@mantine/core": "8.3.5",
51
+ "@mantine/dates": "8.3.5",
52
+ "@mantine/form": "8.3.5",
53
+ "@mantine/hooks": "8.3.5",
54
+ "@mantine/modals": "8.3.5",
55
+ "@mantine/notifications": "8.3.5",
56
56
  "@swc/cli": "0.7.8",
57
57
  "@swc/core": "1.13.5",
58
58
  "@testing-library/dom": "10.4.1",
@@ -62,8 +62,8 @@
62
62
  "@types/lodash.defaultsdeep": "4.6.9",
63
63
  "@types/react": "18.3.26",
64
64
  "@types/react-dom": "18.3.7",
65
- "@vitest/eslint-plugin": "1.3.16",
66
- "cross-env": "7.0.3",
65
+ "@vitest/eslint-plugin": "1.3.23",
66
+ "cross-env": "10.1.0",
67
67
  "embla-carousel": "8.6.0",
68
68
  "embla-carousel-react": "8.6.0",
69
69
  "eslint-plugin-testing-library": "6.5.0",
@@ -72,7 +72,7 @@
72
72
  "postcss": "8.5.6",
73
73
  "postcss-preset-mantine": "^1.11.0",
74
74
  "postcss-simple-vars": "^7.0.1",
75
- "publint": "0.3.14",
75
+ "publint": "0.3.15",
76
76
  "react": "18.3.1",
77
77
  "react-dom": "18.3.1",
78
78
  "rimraf": "6.0.1",
@@ -60,13 +60,21 @@ export const ActionIcon = polymorphicFactory<ActionIconOverloadFactory>(
60
60
  },
61
61
  );
62
62
 
63
- const ActionIconPrimary = ActionIcon.withProps({variant: 'filled'});
64
- const ActionIconSecondary = ActionIcon.withProps({variant: 'light'});
63
+ const ActionIconPrimary = ActionIcon.withProps({
64
+ variant: 'filled',
65
+ });
66
+ const ActionIconSecondary = ActionIcon.withProps({
67
+ variant: 'light',
68
+ color: 'var(--coveo-color-text-primary)',
69
+ });
65
70
  const ActionIconTertiary = ActionIcon.withProps({
66
71
  variant: 'default',
67
- vars: () => ({root: {'--ai-color': 'var(--mantine-primary-color-filled)'}}),
72
+ color: 'var(--coveo-color-text-primary)',
73
+ });
74
+ const ActionIconQuaternary = ActionIcon.withProps({
75
+ variant: 'subtle',
76
+ color: 'var(--coveo-color-text-primary)',
68
77
  });
69
- const ActionIconQuaternary = ActionIcon.withProps({variant: 'subtle'});
70
78
 
71
79
  const ActionIconDestructive = ActionIcon.withProps({variant: 'filled', color: 'var(--mantine-color-error)'});
72
80
  const ActionIconDestructiveSecondary = ActionIcon.withProps({variant: 'light', color: 'var(--mantine-color-error)'});
@@ -1,13 +1,14 @@
1
1
  import {
2
- Badge as MantineBadge,
2
+ alpha,
3
3
  BadgeCssVariables,
4
4
  BadgeProps,
5
5
  BadgeStylesNames,
6
6
  BadgeVariant,
7
+ Badge as MantineBadge,
7
8
  polymorphicFactory,
8
9
  PolymorphicFactory,
9
10
  PolymorphicComponentProps,
10
- alpha,
11
+ useComputedColorScheme,
11
12
  } from '@mantine/core';
12
13
  import {forwardRef, ForwardRefExoticComponent, ReactElement, ReactNode, RefAttributes} from 'react';
13
14
 
@@ -45,7 +46,7 @@ export interface SemanticBadgeProps
45
46
  size?: 'small' | 'large';
46
47
  /**
47
48
  * Whether the badge is displayed over a light or dark background.
48
- * @default 'light'
49
+ * @default Falls back to theme.
49
50
  */
50
51
  on?: 'light' | 'dark';
51
52
  /**
@@ -61,7 +62,8 @@ const enhanceBadge = (
61
62
  ComponentDark: <L = 'div'>(props: PolymorphicComponentProps<L, BadgeProps>) => ReactElement,
62
63
  ): SemanticBadge =>
63
64
  forwardRef<HTMLDivElement, SemanticBadgeProps>((props, ref) => {
64
- const Component = props.on === 'dark' ? ComponentDark : ComponentLight;
65
+ const computedColorScheme = useComputedColorScheme('light', {getInitialValueInEffect: true});
66
+ const Component = (props.on || computedColorScheme) === 'dark' ? ComponentDark : ComponentLight;
65
67
  return (
66
68
  <Component
67
69
  ref={ref}
@@ -102,6 +104,21 @@ const BadgeSecondary = enhanceBadge(
102
104
  bg: alpha('var(--mantine-color-gray-3)', 0.16),
103
105
  }),
104
106
  );
107
+ const BadgeSuccess = enhanceBadge(
108
+ MantineBadge.withProps({
109
+ variant: 'light',
110
+ color: 'green',
111
+ bd: '1px solid var(--badge-bg)',
112
+ c: 'green.6',
113
+ }),
114
+ MantineBadge.withProps({
115
+ variant: 'light',
116
+ color: 'green',
117
+ c: 'green.2',
118
+ bd: `1px solid ${alpha('var(--mantine-color-green-3)', 0.16)}`,
119
+ bg: alpha('var(--mantine-color-green-3)', 0.16),
120
+ }),
121
+ );
105
122
  const BadgeCritical = enhanceBadge(
106
123
  MantineBadge.withProps({
107
124
  variant: 'light',
@@ -157,6 +174,7 @@ export type BadgeOverloadFactory = PolymorphicFactory<{
157
174
  staticComponents: {
158
175
  Primary: SemanticBadge;
159
176
  Secondary: SemanticBadge;
177
+ Success: SemanticBadge;
160
178
  Critical: SemanticBadge;
161
179
  Warning: SemanticBadge;
162
180
  Disabled: SemanticBadge;
@@ -167,6 +185,7 @@ export const Badge = polymorphicFactory<BadgeOverloadFactory>((props, ref) => <M
167
185
 
168
186
  Badge.Primary = BadgePrimary;
169
187
  Badge.Secondary = BadgeSecondary;
188
+ Badge.Success = BadgeSuccess;
170
189
  Badge.Critical = BadgeCritical;
171
190
  Badge.Warning = BadgeWarning;
172
191
  Badge.Disabled = BadgeDisabled;
@@ -24,7 +24,13 @@ export const BrowserPreview = ({
24
24
  ...others
25
25
  }: PropsWithChildren<BrowserPreviewProps>) => (
26
26
  <Stack className={cx(BrowserPreviewClasses.root, className)} gap={0} maw={544} mih={0} {...others}>
27
- <Group className={BrowserPreviewClasses.header} justify="space-between" p="sm" bg="gray.1" wrap="nowrap">
27
+ <Group
28
+ className={BrowserPreviewClasses.header}
29
+ justify="space-between"
30
+ p="sm"
31
+ bg="var(--mantine-color-default-hover)"
32
+ wrap="nowrap"
33
+ >
28
34
  <Group gap="xs" wrap="nowrap">
29
35
  <Text c="dimmed" fz="md" lh="18px">
30
36
  Preview
@@ -64,17 +64,23 @@ export const Button = polymorphicFactory<ButtonOverloadFactory>(
64
64
  },
65
65
  );
66
66
  const ButtonPrimary = Button.withProps({variant: 'filled'});
67
- const ButtonSecondary = Button.withProps({variant: 'light'});
67
+ const ButtonSecondary = Button.withProps({
68
+ variant: 'light',
69
+ color: 'var(--coveo-color-text-primary)',
70
+ });
68
71
  const ButtonTertiary = Button.withProps({
69
72
  variant: 'default',
70
73
  vars: (theme) => ({
71
74
  root: {
72
- '--button-color': 'var(--mantine-primary-color-filled)',
75
+ '--button-color': 'var(--coveo-color-text-primary)',
73
76
  '--button-padding-x': theme.spacing.sm,
74
77
  },
75
78
  }),
76
79
  });
77
- const ButtonQuaternary = Button.withProps({variant: 'subtle'});
80
+ const ButtonQuaternary = Button.withProps({
81
+ variant: 'subtle',
82
+ color: 'var(--coveo-color-text-primary)',
83
+ });
78
84
 
79
85
  const ButtonDestructive = Button.withProps({variant: 'filled', color: 'var(--mantine-color-error)'});
80
86
  const ButtonDestructiveSecondary = Button.withProps({
@@ -242,7 +242,7 @@ export const Collection = <T,>(props: CollectionProps<T> & {ref?: ForwardedRef<H
242
242
  disabled={!canEdit}
243
243
  draggable={draggable}
244
244
  onRemove={() => onRemoveItem?.(index)}
245
- removable={!(required && hasOnlyOneItem)}
245
+ removable={!(isRequired && hasOnlyOneItem)}
246
246
  >
247
247
  {children(item.data, index)}
248
248
  </CollectionItem>
@@ -431,4 +431,45 @@ describe('Collection', () => {
431
431
  });
432
432
  });
433
433
  });
434
+
435
+ describe('form validation', () => {
436
+ it('triggers validation when items are removed and displays error', async () => {
437
+ const user = userEvent.setup();
438
+ const Fixture = () => {
439
+ const form = useForm({
440
+ validateInputOnChange: true,
441
+ initialValues: {fruits: ['banana', 'orange']},
442
+ validate: {
443
+ fruits: (value) => (value.length < 2 ? 'Need at least 2 items' : null),
444
+ },
445
+ enhanceGetInputProps: (payload) => ({
446
+ ...enhanceWithCollectionProps(payload, 'fruits', {validateInputOnChange: true}),
447
+ }),
448
+ });
449
+ return (
450
+ <>
451
+ <Collection newItem="new" {...form.getInputProps('fruits')}>
452
+ {(name) => <span>{name}</span>}
453
+ </Collection>
454
+ <div data-testid="form-errors">{JSON.stringify(form.errors)}</div>
455
+ </>
456
+ );
457
+ };
458
+
459
+ render(<Fixture />);
460
+
461
+ // Initially no errors
462
+ expect(screen.getByTestId('form-errors')).toHaveTextContent('{}');
463
+
464
+ // Remove one item to get below minimum
465
+ const removeBanana = await within(screen.getByTestId('item-0')).findByRole('button', {name: /remove/i});
466
+ await user.click(removeBanana);
467
+
468
+ // Should show validation error
469
+ expect(screen.getByTestId('form-errors')).toHaveTextContent('{"fruits":"Need at least 2 items"}');
470
+
471
+ // Error should also be displayed in the UI
472
+ expect(screen.getByText('Need at least 2 items')).toBeInTheDocument();
473
+ });
474
+ });
434
475
  });
@@ -7,14 +7,23 @@ export const enhanceWithCollectionProps = <
7
7
  >(
8
8
  payload: Parameters<UseFormInput<FormValues, TransformValues>['enhanceGetInputProps']>[0],
9
9
  field: (typeof payload)['field'],
10
+ options?: {validateInputOnChange?: boolean},
10
11
  ): Pick<CollectionProps<unknown>, 'onReorderItem' | 'onInsertItem' | 'onRemoveItem'> => {
11
12
  if (payload.field === field) {
13
+ const {validateInputOnChange = false} = options || {};
12
14
  return {
13
- onReorderItem: (reorderPayload: Record<'from' | 'to', number>) =>
14
- payload.form.reorderListItem(field, reorderPayload),
15
- onRemoveItem: (index: number) => payload.form.removeListItem(field, index),
16
- onInsertItem: (valueToInsert: unknown, index: number) =>
17
- payload.form.insertListItem(field, valueToInsert, index),
15
+ onReorderItem: (reorderPayload: Record<'from' | 'to', number>) => {
16
+ payload.form.reorderListItem(field, reorderPayload);
17
+ validateInputOnChange && payload.form.validate();
18
+ },
19
+ onRemoveItem: (index: number) => {
20
+ payload.form.removeListItem(field, index);
21
+ validateInputOnChange && payload.form.validate();
22
+ },
23
+ onInsertItem: (valueToInsert: unknown, index: number) => {
24
+ payload.form.insertListItem(field, valueToInsert, index);
25
+ validateInputOnChange && payload.form.validate();
26
+ },
18
27
  };
19
28
  }
20
29
 
@@ -12,6 +12,7 @@
12
12
 
13
13
  .title {
14
14
  word-break: break-word;
15
+ color: var(--coveo-color-title);
15
16
  }
16
17
 
17
18
  .docAnchor {
@@ -64,11 +64,10 @@ const colorResolver = (variant: InfoTokenVariant): string => {
64
64
  case 'error':
65
65
  return 'var(--mantine-color-error)';
66
66
  case 'advice':
67
- return 'var(--mantine-primary-color-filled)';
68
67
  case 'question':
69
- return 'var(--mantine-primary-color-filled)';
68
+ return 'var(--coveo-color-text-primary)';
70
69
  case 'warning':
71
- return 'var(--mantine-color-yellow-4)';
70
+ return 'var(--mantine-color-warning-filled)';
72
71
  case 'information':
73
72
  default:
74
73
  return 'var(--mantine-color-gray-3)';