@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
@@ -1,8 +1,11 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Badge as MantineBadge, polymorphicFactory, alpha } from '@mantine/core';
2
+ import { alpha, Badge as MantineBadge, polymorphicFactory, useComputedColorScheme } from '@mantine/core';
3
3
  import { forwardRef } from 'react';
4
4
  const enhanceBadge = (ComponentLight, ComponentDark)=>/*#__PURE__*/ forwardRef((props, ref)=>{
5
- const Component = props.on === 'dark' ? ComponentDark : ComponentLight;
5
+ const computedColorScheme = useComputedColorScheme('light', {
6
+ getInitialValueInEffect: true
7
+ });
8
+ const Component = (props.on || computedColorScheme) === 'dark' ? ComponentDark : ComponentLight;
6
9
  return /*#__PURE__*/ _jsx(Component, {
7
10
  ref: ref,
8
11
  ...props,
@@ -34,6 +37,18 @@ const BadgeSecondary = enhanceBadge(MantineBadge.withProps({
34
37
  bd: `1px solid ${alpha('var(--mantine-color-gray-3)', 0.16)}`,
35
38
  bg: alpha('var(--mantine-color-gray-3)', 0.16)
36
39
  }));
40
+ const BadgeSuccess = enhanceBadge(MantineBadge.withProps({
41
+ variant: 'light',
42
+ color: 'green',
43
+ bd: '1px solid var(--badge-bg)',
44
+ c: 'green.6'
45
+ }), MantineBadge.withProps({
46
+ variant: 'light',
47
+ color: 'green',
48
+ c: 'green.2',
49
+ bd: `1px solid ${alpha('var(--mantine-color-green-3)', 0.16)}`,
50
+ bg: alpha('var(--mantine-color-green-3)', 0.16)
51
+ }));
37
52
  const BadgeCritical = enhanceBadge(MantineBadge.withProps({
38
53
  variant: 'light',
39
54
  color: 'critical',
@@ -75,6 +90,7 @@ export const Badge = polymorphicFactory((props, ref)=>/*#__PURE__*/ _jsx(Mantine
75
90
  }));
76
91
  Badge.Primary = BadgePrimary;
77
92
  Badge.Secondary = BadgeSecondary;
93
+ Badge.Success = BadgeSuccess;
78
94
  Badge.Critical = BadgeCritical;
79
95
  Badge.Warning = BadgeWarning;
80
96
  Badge.Disabled = BadgeDisabled;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/badge/Badge.tsx"],"sourcesContent":["import {\n Badge as MantineBadge,\n BadgeCssVariables,\n BadgeProps,\n BadgeStylesNames,\n BadgeVariant,\n polymorphicFactory,\n PolymorphicFactory,\n PolymorphicComponentProps,\n alpha,\n} from '@mantine/core';\nimport {forwardRef, ForwardRefExoticComponent, ReactElement, ReactNode, RefAttributes} from 'react';\n\nexport interface SemanticBadgeProps\n extends Pick<\n BadgeProps,\n | 'm'\n | 'mt'\n | 'mb'\n | 'ml'\n | 'mr'\n | 'ms'\n | 'me'\n | 'mx'\n | 'my'\n | 'miw'\n | 'maw'\n | 'pos'\n | 'top'\n | 'left'\n | 'right'\n | 'bottom'\n | 'inset'\n | 'display'\n | 'flex'\n | 'leftSection'\n | 'rightSection'\n | 'fullWidth'\n | 'circle'\n > {\n /**\n * The size of the badge.\n * @default 'small'\n */\n size?: 'small' | 'large';\n /**\n * Whether the badge is displayed over a light or dark background.\n * @default 'light'\n */\n on?: 'light' | 'dark';\n /**\n * The content of the badge.\n */\n children?: ReactNode;\n}\n\nexport type SemanticBadge = ForwardRefExoticComponent<SemanticBadgeProps & RefAttributes<HTMLDivElement>>;\n\nconst enhanceBadge = (\n ComponentLight: <L = 'div'>(props: PolymorphicComponentProps<L, BadgeProps>) => ReactElement,\n ComponentDark: <L = 'div'>(props: PolymorphicComponentProps<L, BadgeProps>) => ReactElement,\n): SemanticBadge =>\n forwardRef<HTMLDivElement, SemanticBadgeProps>((props, ref) => {\n const Component = props.on === 'dark' ? ComponentDark : ComponentLight;\n return (\n <Component\n ref={ref}\n {...props}\n py={2}\n px={12}\n size={props.size === 'large' ? 'lg' : 'md'}\n h={props.size === 'large' ? 22 : 20}\n />\n );\n });\n\nconst BadgePrimary = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n bd: '1px solid var(--badge-bg)',\n c: 'var(--mantine-primary-color-6)',\n }),\n MantineBadge.withProps({\n variant: 'light',\n bd: `1px solid ${alpha('var(--mantine-primary-color-3)', 0.32)}`,\n c: 'var(--mantine-primary-color-2)',\n bg: alpha('var(--mantine-primary-color-3)', 0.32),\n }),\n);\nconst BadgeSecondary = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n bd: '1px solid var(--badge-bg)',\n c: 'gray.7',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n c: 'var(--mantine-color-white)',\n bd: `1px solid ${alpha('var(--mantine-color-gray-3)', 0.16)}`,\n bg: alpha('var(--mantine-color-gray-3)', 0.16),\n }),\n);\nconst BadgeCritical = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'critical',\n bd: '1px solid var(--badge-bg)',\n c: 'red.6',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'critical',\n c: 'red.2',\n bd: `1px solid ${alpha('var(--mantine-color-red-3)', 0.16)}`,\n bg: alpha('var(--mantine-color-red-3)', 0.16),\n }),\n);\nconst BadgeWarning = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'warning',\n bd: '1px solid var(--badge-bg)',\n c: 'yellow.6',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'warning',\n c: 'yellow.2',\n bd: `1px solid ${alpha('var(--mantine-color-yellow-3)', 0.16)}`,\n bg: alpha('var(--mantine-color-yellow-3)', 0.16),\n }),\n);\nconst BadgeDisabled = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n c: 'var(--coveo-color-text-disabled)',\n bg: 'var(--coveo-color-bg-disabled)',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n c: 'dark.3',\n bg: alpha('var(--mantine-color-gray-3)', 0.16),\n }),\n);\n\nexport type BadgeOverloadFactory = PolymorphicFactory<{\n props: BadgeProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: BadgeStylesNames;\n vars: BadgeCssVariables;\n variant: BadgeVariant;\n staticComponents: {\n Primary: SemanticBadge;\n Secondary: SemanticBadge;\n Critical: SemanticBadge;\n Warning: SemanticBadge;\n Disabled: SemanticBadge;\n };\n}>;\n\nexport const Badge = polymorphicFactory<BadgeOverloadFactory>((props, ref) => <MantineBadge ref={ref} {...props} />);\n\nBadge.Primary = BadgePrimary;\nBadge.Secondary = BadgeSecondary;\nBadge.Critical = BadgeCritical;\nBadge.Warning = BadgeWarning;\nBadge.Disabled = BadgeDisabled;\n"],"names":["Badge","MantineBadge","polymorphicFactory","alpha","forwardRef","enhanceBadge","ComponentLight","ComponentDark","props","ref","Component","on","py","px","size","h","BadgePrimary","withProps","variant","bd","c","bg","BadgeSecondary","color","BadgeCritical","BadgeWarning","BadgeDisabled","Primary","Secondary","Critical","Warning","Disabled"],"mappings":";AAAA,SACIA,SAASC,YAAY,EAKrBC,kBAAkB,EAGlBC,KAAK,QACF,gBAAgB;AACvB,SAAQC,UAAU,QAA0E,QAAQ;AA+CpG,MAAMC,eAAe,CACjBC,gBACAC,8BAEAH,WAA+C,CAACI,OAAOC;QACnD,MAAMC,YAAYF,MAAMG,EAAE,KAAK,SAASJ,gBAAgBD;QACxD,qBACI,KAACI;YACGD,KAAKA;YACJ,GAAGD,KAAK;YACTI,IAAI;YACJC,IAAI;YACJC,MAAMN,MAAMM,IAAI,KAAK,UAAU,OAAO;YACtCC,GAAGP,MAAMM,IAAI,KAAK,UAAU,KAAK;;IAG7C;AAEJ,MAAME,eAAeX,aACjBJ,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTC,IAAI;IACJC,GAAG;AACP,IACAnB,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTC,IAAI,CAAC,UAAU,EAAEhB,MAAM,kCAAkC,OAAO;IAChEiB,GAAG;IACHC,IAAIlB,MAAM,kCAAkC;AAChD;AAEJ,MAAMmB,iBAAiBjB,aACnBJ,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPJ,IAAI;IACJC,GAAG;AACP,IACAnB,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHD,IAAI,CAAC,UAAU,EAAEhB,MAAM,+BAA+B,OAAO;IAC7DkB,IAAIlB,MAAM,+BAA+B;AAC7C;AAEJ,MAAMqB,gBAAgBnB,aAClBJ,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPJ,IAAI;IACJC,GAAG;AACP,IACAnB,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHD,IAAI,CAAC,UAAU,EAAEhB,MAAM,8BAA8B,OAAO;IAC5DkB,IAAIlB,MAAM,8BAA8B;AAC5C;AAEJ,MAAMsB,eAAepB,aACjBJ,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPJ,IAAI;IACJC,GAAG;AACP,IACAnB,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHD,IAAI,CAAC,UAAU,EAAEhB,MAAM,iCAAiC,OAAO;IAC/DkB,IAAIlB,MAAM,iCAAiC;AAC/C;AAEJ,MAAMuB,gBAAgBrB,aAClBJ,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHC,IAAI;AACR,IACApB,aAAagB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHC,IAAIlB,MAAM,+BAA+B;AAC7C;AAmBJ,OAAO,MAAMH,QAAQE,mBAAyC,CAACM,OAAOC,oBAAQ,KAACR;QAAaQ,KAAKA;QAAM,GAAGD,KAAK;QAAM;AAErHR,MAAM2B,OAAO,GAAGX;AAChBhB,MAAM4B,SAAS,GAAGN;AAClBtB,MAAM6B,QAAQ,GAAGL;AACjBxB,MAAM8B,OAAO,GAAGL;AAChBzB,MAAM+B,QAAQ,GAAGL"}
1
+ {"version":3,"sources":["../../../../src/components/badge/Badge.tsx"],"sourcesContent":["import {\n alpha,\n BadgeCssVariables,\n BadgeProps,\n BadgeStylesNames,\n BadgeVariant,\n Badge as MantineBadge,\n polymorphicFactory,\n PolymorphicFactory,\n PolymorphicComponentProps,\n useComputedColorScheme,\n} from '@mantine/core';\nimport {forwardRef, ForwardRefExoticComponent, ReactElement, ReactNode, RefAttributes} from 'react';\n\nexport interface SemanticBadgeProps\n extends Pick<\n BadgeProps,\n | 'm'\n | 'mt'\n | 'mb'\n | 'ml'\n | 'mr'\n | 'ms'\n | 'me'\n | 'mx'\n | 'my'\n | 'miw'\n | 'maw'\n | 'pos'\n | 'top'\n | 'left'\n | 'right'\n | 'bottom'\n | 'inset'\n | 'display'\n | 'flex'\n | 'leftSection'\n | 'rightSection'\n | 'fullWidth'\n | 'circle'\n > {\n /**\n * The size of the badge.\n * @default 'small'\n */\n size?: 'small' | 'large';\n /**\n * Whether the badge is displayed over a light or dark background.\n * @default Falls back to theme.\n */\n on?: 'light' | 'dark';\n /**\n * The content of the badge.\n */\n children?: ReactNode;\n}\n\nexport type SemanticBadge = ForwardRefExoticComponent<SemanticBadgeProps & RefAttributes<HTMLDivElement>>;\n\nconst enhanceBadge = (\n ComponentLight: <L = 'div'>(props: PolymorphicComponentProps<L, BadgeProps>) => ReactElement,\n ComponentDark: <L = 'div'>(props: PolymorphicComponentProps<L, BadgeProps>) => ReactElement,\n): SemanticBadge =>\n forwardRef<HTMLDivElement, SemanticBadgeProps>((props, ref) => {\n const computedColorScheme = useComputedColorScheme('light', {getInitialValueInEffect: true});\n const Component = (props.on || computedColorScheme) === 'dark' ? ComponentDark : ComponentLight;\n return (\n <Component\n ref={ref}\n {...props}\n py={2}\n px={12}\n size={props.size === 'large' ? 'lg' : 'md'}\n h={props.size === 'large' ? 22 : 20}\n />\n );\n });\n\nconst BadgePrimary = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n bd: '1px solid var(--badge-bg)',\n c: 'var(--mantine-primary-color-6)',\n }),\n MantineBadge.withProps({\n variant: 'light',\n bd: `1px solid ${alpha('var(--mantine-primary-color-3)', 0.32)}`,\n c: 'var(--mantine-primary-color-2)',\n bg: alpha('var(--mantine-primary-color-3)', 0.32),\n }),\n);\nconst BadgeSecondary = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n bd: '1px solid var(--badge-bg)',\n c: 'gray.7',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n c: 'var(--mantine-color-white)',\n bd: `1px solid ${alpha('var(--mantine-color-gray-3)', 0.16)}`,\n bg: alpha('var(--mantine-color-gray-3)', 0.16),\n }),\n);\nconst BadgeSuccess = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'green',\n bd: '1px solid var(--badge-bg)',\n c: 'green.6',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'green',\n c: 'green.2',\n bd: `1px solid ${alpha('var(--mantine-color-green-3)', 0.16)}`,\n bg: alpha('var(--mantine-color-green-3)', 0.16),\n }),\n);\nconst BadgeCritical = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'critical',\n bd: '1px solid var(--badge-bg)',\n c: 'red.6',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'critical',\n c: 'red.2',\n bd: `1px solid ${alpha('var(--mantine-color-red-3)', 0.16)}`,\n bg: alpha('var(--mantine-color-red-3)', 0.16),\n }),\n);\nconst BadgeWarning = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'warning',\n bd: '1px solid var(--badge-bg)',\n c: 'yellow.6',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'warning',\n c: 'yellow.2',\n bd: `1px solid ${alpha('var(--mantine-color-yellow-3)', 0.16)}`,\n bg: alpha('var(--mantine-color-yellow-3)', 0.16),\n }),\n);\nconst BadgeDisabled = enhanceBadge(\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n c: 'var(--coveo-color-text-disabled)',\n bg: 'var(--coveo-color-bg-disabled)',\n }),\n MantineBadge.withProps({\n variant: 'light',\n color: 'gray',\n c: 'dark.3',\n bg: alpha('var(--mantine-color-gray-3)', 0.16),\n }),\n);\n\nexport type BadgeOverloadFactory = PolymorphicFactory<{\n props: BadgeProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: BadgeStylesNames;\n vars: BadgeCssVariables;\n variant: BadgeVariant;\n staticComponents: {\n Primary: SemanticBadge;\n Secondary: SemanticBadge;\n Success: SemanticBadge;\n Critical: SemanticBadge;\n Warning: SemanticBadge;\n Disabled: SemanticBadge;\n };\n}>;\n\nexport const Badge = polymorphicFactory<BadgeOverloadFactory>((props, ref) => <MantineBadge ref={ref} {...props} />);\n\nBadge.Primary = BadgePrimary;\nBadge.Secondary = BadgeSecondary;\nBadge.Success = BadgeSuccess;\nBadge.Critical = BadgeCritical;\nBadge.Warning = BadgeWarning;\nBadge.Disabled = BadgeDisabled;\n"],"names":["alpha","Badge","MantineBadge","polymorphicFactory","useComputedColorScheme","forwardRef","enhanceBadge","ComponentLight","ComponentDark","props","ref","computedColorScheme","getInitialValueInEffect","Component","on","py","px","size","h","BadgePrimary","withProps","variant","bd","c","bg","BadgeSecondary","color","BadgeSuccess","BadgeCritical","BadgeWarning","BadgeDisabled","Primary","Secondary","Success","Critical","Warning","Disabled"],"mappings":";AAAA,SACIA,KAAK,EAKLC,SAASC,YAAY,EACrBC,kBAAkB,EAGlBC,sBAAsB,QACnB,gBAAgB;AACvB,SAAQC,UAAU,QAA0E,QAAQ;AA+CpG,MAAMC,eAAe,CACjBC,gBACAC,8BAEAH,WAA+C,CAACI,OAAOC;QACnD,MAAMC,sBAAsBP,uBAAuB,SAAS;YAACQ,yBAAyB;QAAI;QAC1F,MAAMC,YAAY,AAACJ,CAAAA,MAAMK,EAAE,IAAIH,mBAAkB,MAAO,SAASH,gBAAgBD;QACjF,qBACI,KAACM;YACGH,KAAKA;YACJ,GAAGD,KAAK;YACTM,IAAI;YACJC,IAAI;YACJC,MAAMR,MAAMQ,IAAI,KAAK,UAAU,OAAO;YACtCC,GAAGT,MAAMQ,IAAI,KAAK,UAAU,KAAK;;IAG7C;AAEJ,MAAME,eAAeb,aACjBJ,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTC,IAAI;IACJC,GAAG;AACP,IACArB,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTC,IAAI,CAAC,UAAU,EAAEtB,MAAM,kCAAkC,OAAO;IAChEuB,GAAG;IACHC,IAAIxB,MAAM,kCAAkC;AAChD;AAEJ,MAAMyB,iBAAiBnB,aACnBJ,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPJ,IAAI;IACJC,GAAG;AACP,IACArB,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHD,IAAI,CAAC,UAAU,EAAEtB,MAAM,+BAA+B,OAAO;IAC7DwB,IAAIxB,MAAM,+BAA+B;AAC7C;AAEJ,MAAM2B,eAAerB,aACjBJ,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPJ,IAAI;IACJC,GAAG;AACP,IACArB,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHD,IAAI,CAAC,UAAU,EAAEtB,MAAM,gCAAgC,OAAO;IAC9DwB,IAAIxB,MAAM,gCAAgC;AAC9C;AAEJ,MAAM4B,gBAAgBtB,aAClBJ,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPJ,IAAI;IACJC,GAAG;AACP,IACArB,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHD,IAAI,CAAC,UAAU,EAAEtB,MAAM,8BAA8B,OAAO;IAC5DwB,IAAIxB,MAAM,8BAA8B;AAC5C;AAEJ,MAAM6B,eAAevB,aACjBJ,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPJ,IAAI;IACJC,GAAG;AACP,IACArB,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHD,IAAI,CAAC,UAAU,EAAEtB,MAAM,iCAAiC,OAAO;IAC/DwB,IAAIxB,MAAM,iCAAiC;AAC/C;AAEJ,MAAM8B,gBAAgBxB,aAClBJ,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHC,IAAI;AACR,IACAtB,aAAakB,SAAS,CAAC;IACnBC,SAAS;IACTK,OAAO;IACPH,GAAG;IACHC,IAAIxB,MAAM,+BAA+B;AAC7C;AAoBJ,OAAO,MAAMC,QAAQE,mBAAyC,CAACM,OAAOC,oBAAQ,KAACR;QAAaQ,KAAKA;QAAM,GAAGD,KAAK;QAAM;AAErHR,MAAM8B,OAAO,GAAGZ;AAChBlB,MAAM+B,SAAS,GAAGP;AAClBxB,MAAMgC,OAAO,GAAGN;AAChB1B,MAAMiC,QAAQ,GAAGN;AACjB3B,MAAMkC,OAAO,GAAGN;AAChB5B,MAAMmC,QAAQ,GAAGN"}
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserPreview.d.ts","sourceRoot":"","sources":["../../../../src/components/browser-preview/BrowserPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqB,UAAU,EAAgB,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAIxC,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACnD;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,cAAc,GAAI,0DAM5B,iBAAiB,CAAC,mBAAmB,CAAC,4CAuBxC,CAAC"}
1
+ {"version":3,"file":"BrowserPreview.d.ts","sourceRoot":"","sources":["../../../../src/components/browser-preview/BrowserPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqB,UAAU,EAAgB,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAIxC,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACnD;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,cAAc,GAAI,0DAM5B,iBAAiB,CAAC,mBAAmB,CAAC,4CA6BxC,CAAC"}
@@ -14,7 +14,7 @@ export const BrowserPreview = ({ children, headerTooltip, title, className, ...o
14
14
  className: BrowserPreviewClasses.header,
15
15
  justify: "space-between",
16
16
  p: "sm",
17
- bg: "gray.1",
17
+ bg: "var(--mantine-color-default-hover)",
18
18
  wrap: "nowrap",
19
19
  children: [
20
20
  /*#__PURE__*/ _jsxs(Group, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/browser-preview/BrowserPreview.tsx"],"sourcesContent":["import {Flex, Group, Stack, StackProps, Text, Tooltip} from '@mantine/core';\nimport cx from 'clsx';\nimport {PropsWithChildren} from 'react';\nimport {InfoToken} from '../info-token/index.js';\nimport BrowserPreviewClasses from './BrowserPreview.module.css';\n\nexport interface BrowserPreviewProps extends StackProps {\n /**\n * Text to display in a tooltip in the header.\n *\n */\n headerTooltip?: string;\n /**\n * Custom title to be displayed at the center of the header.\n */\n title?: string;\n}\n\nexport const BrowserPreview = ({\n children,\n headerTooltip,\n title,\n className,\n ...others\n}: PropsWithChildren<BrowserPreviewProps>) => (\n <Stack className={cx(BrowserPreviewClasses.root, className)} gap={0} maw={544} mih={0} {...others}>\n <Group className={BrowserPreviewClasses.header} justify=\"space-between\" p=\"sm\" bg=\"gray.1\" wrap=\"nowrap\">\n <Group gap=\"xs\" wrap=\"nowrap\">\n <Text c=\"dimmed\" fz=\"md\" lh=\"18px\">\n Preview\n </Text>\n {!!headerTooltip && (\n <Tooltip label={headerTooltip} position=\"right\" maw={400}>\n <InfoToken variant=\"information\" className={BrowserPreviewClasses.infoIcon} />\n </Tooltip>\n )}\n </Group>\n {title && (\n <Text lineClamp={1} c=\"dimmed\" fz=\"md\" lh=\"18px\">\n {title}\n </Text>\n )}\n </Group>\n <Flex className={BrowserPreviewClasses.content} p=\"lg\" direction=\"column\">\n {children}\n </Flex>\n </Stack>\n);\n"],"names":["Flex","Group","Stack","Text","Tooltip","cx","InfoToken","BrowserPreviewClasses","BrowserPreview","children","headerTooltip","title","className","others","root","gap","maw","mih","header","justify","p","bg","wrap","c","fz","lh","label","position","variant","infoIcon","lineClamp","content","direction"],"mappings":";AAAA,SAAQA,IAAI,EAAEC,KAAK,EAAEC,KAAK,EAAcC,IAAI,EAAEC,OAAO,QAAO,gBAAgB;AAC5E,OAAOC,QAAQ,OAAO;AAEtB,SAAQC,SAAS,QAAO,yBAAyB;AACjD,OAAOC,2BAA2B,8BAA8B;AAchE,OAAO,MAAMC,iBAAiB,CAAC,EAC3BC,QAAQ,EACRC,aAAa,EACbC,KAAK,EACLC,SAAS,EACT,GAAGC,QACkC,iBACrC,MAACX;QAAMU,WAAWP,GAAGE,sBAAsBO,IAAI,EAAEF;QAAYG,KAAK;QAAGC,KAAK;QAAKC,KAAK;QAAI,GAAGJ,MAAM;;0BAC7F,MAACZ;gBAAMW,WAAWL,sBAAsBW,MAAM;gBAAEC,SAAQ;gBAAgBC,GAAE;gBAAKC,IAAG;gBAASC,MAAK;;kCAC5F,MAACrB;wBAAMc,KAAI;wBAAKO,MAAK;;0CACjB,KAACnB;gCAAKoB,GAAE;gCAASC,IAAG;gCAAKC,IAAG;0CAAO;;4BAGlC,CAAC,CAACf,+BACC,KAACN;gCAAQsB,OAAOhB;gCAAeiB,UAAS;gCAAQX,KAAK;0CACjD,cAAA,KAACV;oCAAUsB,SAAQ;oCAAchB,WAAWL,sBAAsBsB,QAAQ;;;;;oBAIrFlB,uBACG,KAACR;wBAAK2B,WAAW;wBAAGP,GAAE;wBAASC,IAAG;wBAAKC,IAAG;kCACrCd;;;;0BAIb,KAACX;gBAAKY,WAAWL,sBAAsBwB,OAAO;gBAAEX,GAAE;gBAAKY,WAAU;0BAC5DvB;;;OAGX"}
1
+ {"version":3,"sources":["../../../../src/components/browser-preview/BrowserPreview.tsx"],"sourcesContent":["import {Flex, Group, Stack, StackProps, Text, Tooltip} from '@mantine/core';\nimport cx from 'clsx';\nimport {PropsWithChildren} from 'react';\nimport {InfoToken} from '../info-token/index.js';\nimport BrowserPreviewClasses from './BrowserPreview.module.css';\n\nexport interface BrowserPreviewProps extends StackProps {\n /**\n * Text to display in a tooltip in the header.\n *\n */\n headerTooltip?: string;\n /**\n * Custom title to be displayed at the center of the header.\n */\n title?: string;\n}\n\nexport const BrowserPreview = ({\n children,\n headerTooltip,\n title,\n className,\n ...others\n}: PropsWithChildren<BrowserPreviewProps>) => (\n <Stack className={cx(BrowserPreviewClasses.root, className)} gap={0} maw={544} mih={0} {...others}>\n <Group\n className={BrowserPreviewClasses.header}\n justify=\"space-between\"\n p=\"sm\"\n bg=\"var(--mantine-color-default-hover)\"\n wrap=\"nowrap\"\n >\n <Group gap=\"xs\" wrap=\"nowrap\">\n <Text c=\"dimmed\" fz=\"md\" lh=\"18px\">\n Preview\n </Text>\n {!!headerTooltip && (\n <Tooltip label={headerTooltip} position=\"right\" maw={400}>\n <InfoToken variant=\"information\" className={BrowserPreviewClasses.infoIcon} />\n </Tooltip>\n )}\n </Group>\n {title && (\n <Text lineClamp={1} c=\"dimmed\" fz=\"md\" lh=\"18px\">\n {title}\n </Text>\n )}\n </Group>\n <Flex className={BrowserPreviewClasses.content} p=\"lg\" direction=\"column\">\n {children}\n </Flex>\n </Stack>\n);\n"],"names":["Flex","Group","Stack","Text","Tooltip","cx","InfoToken","BrowserPreviewClasses","BrowserPreview","children","headerTooltip","title","className","others","root","gap","maw","mih","header","justify","p","bg","wrap","c","fz","lh","label","position","variant","infoIcon","lineClamp","content","direction"],"mappings":";AAAA,SAAQA,IAAI,EAAEC,KAAK,EAAEC,KAAK,EAAcC,IAAI,EAAEC,OAAO,QAAO,gBAAgB;AAC5E,OAAOC,QAAQ,OAAO;AAEtB,SAAQC,SAAS,QAAO,yBAAyB;AACjD,OAAOC,2BAA2B,8BAA8B;AAchE,OAAO,MAAMC,iBAAiB,CAAC,EAC3BC,QAAQ,EACRC,aAAa,EACbC,KAAK,EACLC,SAAS,EACT,GAAGC,QACkC,iBACrC,MAACX;QAAMU,WAAWP,GAAGE,sBAAsBO,IAAI,EAAEF;QAAYG,KAAK;QAAGC,KAAK;QAAKC,KAAK;QAAI,GAAGJ,MAAM;;0BAC7F,MAACZ;gBACGW,WAAWL,sBAAsBW,MAAM;gBACvCC,SAAQ;gBACRC,GAAE;gBACFC,IAAG;gBACHC,MAAK;;kCAEL,MAACrB;wBAAMc,KAAI;wBAAKO,MAAK;;0CACjB,KAACnB;gCAAKoB,GAAE;gCAASC,IAAG;gCAAKC,IAAG;0CAAO;;4BAGlC,CAAC,CAACf,+BACC,KAACN;gCAAQsB,OAAOhB;gCAAeiB,UAAS;gCAAQX,KAAK;0CACjD,cAAA,KAACV;oCAAUsB,SAAQ;oCAAchB,WAAWL,sBAAsBsB,QAAQ;;;;;oBAIrFlB,uBACG,KAACR;wBAAK2B,WAAW;wBAAGP,GAAE;wBAASC,IAAG;wBAAKC,IAAG;kCACrCd;;;;0BAIb,KAACX;gBAAKY,WAAWL,sBAAsBwB,OAAO;gBAAEX,GAAE;gBAAKY,WAAU;0BAC5DvB;;;OAGX"}
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,kBAAkB,EAClB,KAAK,WAAW,EAChB,iBAAiB,EACjB,aAAa,EAGb,WAAW,IAAI,kBAAkB,EAEpC,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAExC,OAAO,EAA4B,8BAA8B,EAAC,MAAM,gCAAgC,CAAC;AAEzG,MAAM,WAAW,WAAY,SAAQ,kBAAkB,EAAE,8BAA8B;IAEnF,OAAO,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CAClD;AAsBD,eAAO,MAAM,MAAM;;;;;;;;;WAnBR,WAAW;gBACN,iBAAiB;sBACX,QAAQ;iBACb,iBAAiB;UACxB,kBAAkB;aACf,aAAa;sBACJ;QACd,KAAK,EAAE,OAAO,WAAW,CAAC;QAC1B,OAAO,EAAE,OAAO,aAAa,CAAC;QAC9B,SAAS,EAAE,OAAO,eAAe,CAAC;QAClC,QAAQ,EAAE,OAAO,cAAc,CAAC;QAChC,UAAU,EAAE,OAAO,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,OAAO,iBAAiB,CAAC;QAC7C,oBAAoB,EAAE,OAAO,0BAA0B,CAAC;QACxD,mBAAmB,EAAE,OAAO,yBAAyB,CAAC;QACtD,qBAAqB,EAAE,OAAO,2BAA2B,CAAC;KAC7D;;WAhBM,WAAW;gBACN,iBAAiB;sBACX,QAAQ;iBACb,iBAAiB;UACxB,kBAAkB;aACf,aAAa;sBACJ;QACd,KAAK,EAAE,OAAO,WAAW,CAAC;QAC1B,OAAO,EAAE,OAAO,aAAa,CAAC;QAC9B,SAAS,EAAE,OAAO,eAAe,CAAC;QAClC,QAAQ,EAAE,OAAO,cAAc,CAAC;QAChC,UAAU,EAAE,OAAO,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,OAAO,iBAAiB,CAAC;QAC7C,oBAAoB,EAAE,OAAO,0BAA0B,CAAC;QACxD,mBAAmB,EAAE,OAAO,yBAAyB,CAAC;QACtD,qBAAqB,EAAE,OAAO,2BAA2B,CAAC;KAC7D;;WAhBM,WAAW;gBACN,iBAAiB;sBACX,QAAQ;iBACb,iBAAiB;UACxB,kBAAkB;aACf,aAAa;sBACJ;QACd,KAAK,EAAE,OAAO,WAAW,CAAC;QAC1B,OAAO,EAAE,OAAO,aAAa,CAAC;QAC9B,SAAS,EAAE,OAAO,eAAe,CAAC;QAClC,QAAQ,EAAE,OAAO,cAAc,CAAC;QAChC,UAAU,EAAE,OAAO,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,OAAO,iBAAiB,CAAC;QAC7C,oBAAoB,EAAE,OAAO,0BAA0B,CAAC;QACxD,mBAAmB,EAAE,OAAO,yBAAyB,CAAC;QACtD,qBAAqB,EAAE,OAAO,2BAA2B,CAAC;KAC7D;;WATU,OAAO,WAAW;aAChB,OAAO,aAAa;eAClB,OAAO,eAAe;cACvB,OAAO,cAAc;gBACnB,OAAO,gBAAgB;wBACf,OAAO,iBAAiB;0BACtB,OAAO,0BAA0B;yBAClC,OAAO,yBAAyB;2BAC9B,OAAO,2BAA2B;CA6BhE,CAAC;AACF,QAAA,MAAM,aAAa,gHAAwC,CAAC;AAC5D,QAAA,MAAM,eAAe,gHAAuC,CAAC;AAC7D,QAAA,MAAM,cAAc,gHAQlB,CAAC;AACH,QAAA,MAAM,gBAAgB,gHAAwC,CAAC;AAE/D,QAAA,MAAM,iBAAiB,gHAA6E,CAAC;AACrG,QAAA,MAAM,0BAA0B,gHAG9B,CAAC;AACH,QAAA,MAAM,yBAAyB,gHAQ7B,CAAC;AACH,QAAA,MAAM,2BAA2B,gHAA6E,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,kBAAkB,EAClB,KAAK,WAAW,EAChB,iBAAiB,EACjB,aAAa,EAGb,WAAW,IAAI,kBAAkB,EAEpC,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAExC,OAAO,EAA4B,8BAA8B,EAAC,MAAM,gCAAgC,CAAC;AAEzG,MAAM,WAAW,WAAY,SAAQ,kBAAkB,EAAE,8BAA8B;IAEnF,OAAO,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;CAClD;AAsBD,eAAO,MAAM,MAAM;;;;;;;;;WAnBR,WAAW;gBACN,iBAAiB;sBACX,QAAQ;iBACb,iBAAiB;UACxB,kBAAkB;aACf,aAAa;sBACJ;QACd,KAAK,EAAE,OAAO,WAAW,CAAC;QAC1B,OAAO,EAAE,OAAO,aAAa,CAAC;QAC9B,SAAS,EAAE,OAAO,eAAe,CAAC;QAClC,QAAQ,EAAE,OAAO,cAAc,CAAC;QAChC,UAAU,EAAE,OAAO,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,OAAO,iBAAiB,CAAC;QAC7C,oBAAoB,EAAE,OAAO,0BAA0B,CAAC;QACxD,mBAAmB,EAAE,OAAO,yBAAyB,CAAC;QACtD,qBAAqB,EAAE,OAAO,2BAA2B,CAAC;KAC7D;;WAhBM,WAAW;gBACN,iBAAiB;sBACX,QAAQ;iBACb,iBAAiB;UACxB,kBAAkB;aACf,aAAa;sBACJ;QACd,KAAK,EAAE,OAAO,WAAW,CAAC;QAC1B,OAAO,EAAE,OAAO,aAAa,CAAC;QAC9B,SAAS,EAAE,OAAO,eAAe,CAAC;QAClC,QAAQ,EAAE,OAAO,cAAc,CAAC;QAChC,UAAU,EAAE,OAAO,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,OAAO,iBAAiB,CAAC;QAC7C,oBAAoB,EAAE,OAAO,0BAA0B,CAAC;QACxD,mBAAmB,EAAE,OAAO,yBAAyB,CAAC;QACtD,qBAAqB,EAAE,OAAO,2BAA2B,CAAC;KAC7D;;WAhBM,WAAW;gBACN,iBAAiB;sBACX,QAAQ;iBACb,iBAAiB;UACxB,kBAAkB;aACf,aAAa;sBACJ;QACd,KAAK,EAAE,OAAO,WAAW,CAAC;QAC1B,OAAO,EAAE,OAAO,aAAa,CAAC;QAC9B,SAAS,EAAE,OAAO,eAAe,CAAC;QAClC,QAAQ,EAAE,OAAO,cAAc,CAAC;QAChC,UAAU,EAAE,OAAO,gBAAgB,CAAC;QACpC,kBAAkB,EAAE,OAAO,iBAAiB,CAAC;QAC7C,oBAAoB,EAAE,OAAO,0BAA0B,CAAC;QACxD,mBAAmB,EAAE,OAAO,yBAAyB,CAAC;QACtD,qBAAqB,EAAE,OAAO,2BAA2B,CAAC;KAC7D;;WATU,OAAO,WAAW;aAChB,OAAO,aAAa;eAClB,OAAO,eAAe;cACvB,OAAO,cAAc;gBACnB,OAAO,gBAAgB;wBACf,OAAO,iBAAiB;0BACtB,OAAO,0BAA0B;yBAClC,OAAO,yBAAyB;2BAC9B,OAAO,2BAA2B;CA6BhE,CAAC;AACF,QAAA,MAAM,aAAa,gHAAwC,CAAC;AAC5D,QAAA,MAAM,eAAe,gHAGnB,CAAC;AACH,QAAA,MAAM,cAAc,gHAQlB,CAAC;AACH,QAAA,MAAM,gBAAgB,gHAGpB,CAAC;AAEH,QAAA,MAAM,iBAAiB,gHAA6E,CAAC;AACrG,QAAA,MAAM,0BAA0B,gHAG9B,CAAC;AACH,QAAA,MAAM,yBAAyB,gHAQ7B,CAAC;AACH,QAAA,MAAM,2BAA2B,gHAA6E,CAAC"}
@@ -26,19 +26,21 @@ const ButtonPrimary = Button.withProps({
26
26
  variant: 'filled'
27
27
  });
28
28
  const ButtonSecondary = Button.withProps({
29
- variant: 'light'
29
+ variant: 'light',
30
+ color: 'var(--coveo-color-text-primary)'
30
31
  });
31
32
  const ButtonTertiary = Button.withProps({
32
33
  variant: 'default',
33
34
  vars: (theme)=>({
34
35
  root: {
35
- '--button-color': 'var(--mantine-primary-color-filled)',
36
+ '--button-color': 'var(--coveo-color-text-primary)',
36
37
  '--button-padding-x': theme.spacing.sm
37
38
  }
38
39
  })
39
40
  });
40
41
  const ButtonQuaternary = Button.withProps({
41
- variant: 'subtle'
42
+ variant: 'subtle',
43
+ color: 'var(--coveo-color-text-primary)'
42
44
  });
43
45
  const ButtonDestructive = Button.withProps({
44
46
  variant: 'filled',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import {\n ButtonCssVariables,\n type ButtonGroup,\n ButtonStylesNames,\n ButtonVariant,\n Factory,\n Button as MantineButton,\n ButtonProps as MantineButtonProps,\n polymorphicFactory,\n} from '@mantine/core';\nimport {MouseEventHandler} from 'react';\nimport {useClickWithLoading} from '../../hooks/useClickWithLoading.js';\nimport {ButtonWithDisabledTooltip, ButtonWithDisabledTooltipProps} from './ButtonWithDisabledTooltip.js';\n\nexport interface ButtonProps extends MantineButtonProps, ButtonWithDisabledTooltipProps {\n /* Handler executed on click */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\n\ntype ButtonOverloadFactory = Factory<{\n props: ButtonProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ButtonStylesNames;\n vars: ButtonCssVariables;\n variant: ButtonVariant;\n staticComponents: {\n Group: typeof ButtonGroup;\n Primary: typeof ButtonPrimary;\n Secondary: typeof ButtonSecondary;\n Tertiary: typeof ButtonTertiary;\n Quaternary: typeof ButtonQuaternary;\n DestructivePrimary: typeof ButtonDestructive;\n DestructiveSecondary: typeof ButtonDestructiveSecondary;\n DestructiveTertiary: typeof ButtonDestructiveTertiary;\n DestructiveQuaternary: typeof ButtonDestructiveQuaternary;\n };\n}>;\n\nexport const Button = polymorphicFactory<ButtonOverloadFactory>(\n (\n {disabledTooltip, disabled, disabledTooltipProps, loading, onClick, 'data-disabled': dataDisabled, ...others},\n ref,\n ) => {\n const {isLoading, handleClick} = useClickWithLoading(onClick);\n return (\n <ButtonWithDisabledTooltip\n disabled={disabled || dataDisabled}\n disabledTooltip={disabledTooltip}\n disabledTooltipProps={disabledTooltipProps}\n fullWidth={others.fullWidth}\n >\n <MantineButton\n loaderProps={{variant: 'oval'}}\n ref={ref}\n loading={isLoading || loading}\n onClick={dataDisabled ? (e) => e.preventDefault() : handleClick}\n disabled={disabled || dataDisabled}\n data-loading={isLoading || loading || undefined}\n {...others}\n />\n </ButtonWithDisabledTooltip>\n );\n },\n);\nconst ButtonPrimary = Button.withProps({variant: 'filled'});\nconst ButtonSecondary = Button.withProps({variant: 'light'});\nconst ButtonTertiary = Button.withProps({\n variant: 'default',\n vars: (theme) => ({\n root: {\n '--button-color': 'var(--mantine-primary-color-filled)',\n '--button-padding-x': theme.spacing.sm,\n },\n }),\n});\nconst ButtonQuaternary = Button.withProps({variant: 'subtle'});\n\nconst ButtonDestructive = Button.withProps({variant: 'filled', color: 'var(--mantine-color-error)'});\nconst ButtonDestructiveSecondary = Button.withProps({\n variant: 'light',\n color: 'var(--mantine-color-error)',\n});\nconst ButtonDestructiveTertiary = Button.withProps({\n variant: 'default',\n vars: (theme) => ({\n root: {\n '--button-color': 'var(--mantine-color-error)',\n '--button-padding-x': theme.spacing.sm,\n },\n }),\n});\nconst ButtonDestructiveQuaternary = Button.withProps({variant: 'subtle', color: 'var(--mantine-color-error)'});\n\nButton.Group = MantineButton.Group;\nButton.Primary = ButtonPrimary;\nButton.Secondary = ButtonSecondary;\nButton.Tertiary = ButtonTertiary;\nButton.Quaternary = ButtonQuaternary;\nButton.DestructivePrimary = ButtonDestructive;\nButton.DestructiveSecondary = ButtonDestructiveSecondary;\nButton.DestructiveTertiary = ButtonDestructiveTertiary;\nButton.DestructiveQuaternary = ButtonDestructiveQuaternary;\n"],"names":["Button","MantineButton","polymorphicFactory","useClickWithLoading","ButtonWithDisabledTooltip","disabledTooltip","disabled","disabledTooltipProps","loading","onClick","dataDisabled","others","ref","isLoading","handleClick","fullWidth","loaderProps","variant","e","preventDefault","data-loading","undefined","ButtonPrimary","withProps","ButtonSecondary","ButtonTertiary","vars","theme","root","spacing","sm","ButtonQuaternary","ButtonDestructive","color","ButtonDestructiveSecondary","ButtonDestructiveTertiary","ButtonDestructiveQuaternary","Group","Primary","Secondary","Tertiary","Quaternary","DestructivePrimary","DestructiveSecondary","DestructiveTertiary","DestructiveQuaternary"],"mappings":";AAAA,SAMIA,UAAUC,aAAa,EAEvBC,kBAAkB,QACf,gBAAgB;AAEvB,SAAQC,mBAAmB,QAAO,qCAAqC;AACvE,SAAQC,yBAAyB,QAAuC,iCAAiC;AA2BzG,OAAO,MAAMJ,SAASE,mBAClB,CACI,EAACG,eAAe,EAAEC,QAAQ,EAAEC,oBAAoB,EAAEC,OAAO,EAAEC,OAAO,EAAE,iBAAiBC,YAAY,EAAE,GAAGC,QAAO,EAC7GC;IAEA,MAAM,EAACC,SAAS,EAAEC,WAAW,EAAC,GAAGX,oBAAoBM;IACrD,qBACI,KAACL;QACGE,UAAUA,YAAYI;QACtBL,iBAAiBA;QACjBE,sBAAsBA;QACtBQ,WAAWJ,OAAOI,SAAS;kBAE3B,cAAA,KAACd;YACGe,aAAa;gBAACC,SAAS;YAAM;YAC7BL,KAAKA;YACLJ,SAASK,aAAaL;YACtBC,SAASC,eAAe,CAACQ,IAAMA,EAAEC,cAAc,KAAKL;YACpDR,UAAUA,YAAYI;YACtBU,gBAAcP,aAAaL,WAAWa;YACrC,GAAGV,MAAM;;;AAI1B,GACF;AACF,MAAMW,gBAAgBtB,OAAOuB,SAAS,CAAC;IAACN,SAAS;AAAQ;AACzD,MAAMO,kBAAkBxB,OAAOuB,SAAS,CAAC;IAACN,SAAS;AAAO;AAC1D,MAAMQ,iBAAiBzB,OAAOuB,SAAS,CAAC;IACpCN,SAAS;IACTS,MAAM,CAACC,QAAW,CAAA;YACdC,MAAM;gBACF,kBAAkB;gBAClB,sBAAsBD,MAAME,OAAO,CAACC,EAAE;YAC1C;QACJ,CAAA;AACJ;AACA,MAAMC,mBAAmB/B,OAAOuB,SAAS,CAAC;IAACN,SAAS;AAAQ;AAE5D,MAAMe,oBAAoBhC,OAAOuB,SAAS,CAAC;IAACN,SAAS;IAAUgB,OAAO;AAA4B;AAClG,MAAMC,6BAA6BlC,OAAOuB,SAAS,CAAC;IAChDN,SAAS;IACTgB,OAAO;AACX;AACA,MAAME,4BAA4BnC,OAAOuB,SAAS,CAAC;IAC/CN,SAAS;IACTS,MAAM,CAACC,QAAW,CAAA;YACdC,MAAM;gBACF,kBAAkB;gBAClB,sBAAsBD,MAAME,OAAO,CAACC,EAAE;YAC1C;QACJ,CAAA;AACJ;AACA,MAAMM,8BAA8BpC,OAAOuB,SAAS,CAAC;IAACN,SAAS;IAAUgB,OAAO;AAA4B;AAE5GjC,OAAOqC,KAAK,GAAGpC,cAAcoC,KAAK;AAClCrC,OAAOsC,OAAO,GAAGhB;AACjBtB,OAAOuC,SAAS,GAAGf;AACnBxB,OAAOwC,QAAQ,GAAGf;AAClBzB,OAAOyC,UAAU,GAAGV;AACpB/B,OAAO0C,kBAAkB,GAAGV;AAC5BhC,OAAO2C,oBAAoB,GAAGT;AAC9BlC,OAAO4C,mBAAmB,GAAGT;AAC7BnC,OAAO6C,qBAAqB,GAAGT"}
1
+ {"version":3,"sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import {\n ButtonCssVariables,\n type ButtonGroup,\n ButtonStylesNames,\n ButtonVariant,\n Factory,\n Button as MantineButton,\n ButtonProps as MantineButtonProps,\n polymorphicFactory,\n} from '@mantine/core';\nimport {MouseEventHandler} from 'react';\nimport {useClickWithLoading} from '../../hooks/useClickWithLoading.js';\nimport {ButtonWithDisabledTooltip, ButtonWithDisabledTooltipProps} from './ButtonWithDisabledTooltip.js';\n\nexport interface ButtonProps extends MantineButtonProps, ButtonWithDisabledTooltipProps {\n /* Handler executed on click */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\n\ntype ButtonOverloadFactory = Factory<{\n props: ButtonProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ButtonStylesNames;\n vars: ButtonCssVariables;\n variant: ButtonVariant;\n staticComponents: {\n Group: typeof ButtonGroup;\n Primary: typeof ButtonPrimary;\n Secondary: typeof ButtonSecondary;\n Tertiary: typeof ButtonTertiary;\n Quaternary: typeof ButtonQuaternary;\n DestructivePrimary: typeof ButtonDestructive;\n DestructiveSecondary: typeof ButtonDestructiveSecondary;\n DestructiveTertiary: typeof ButtonDestructiveTertiary;\n DestructiveQuaternary: typeof ButtonDestructiveQuaternary;\n };\n}>;\n\nexport const Button = polymorphicFactory<ButtonOverloadFactory>(\n (\n {disabledTooltip, disabled, disabledTooltipProps, loading, onClick, 'data-disabled': dataDisabled, ...others},\n ref,\n ) => {\n const {isLoading, handleClick} = useClickWithLoading(onClick);\n return (\n <ButtonWithDisabledTooltip\n disabled={disabled || dataDisabled}\n disabledTooltip={disabledTooltip}\n disabledTooltipProps={disabledTooltipProps}\n fullWidth={others.fullWidth}\n >\n <MantineButton\n loaderProps={{variant: 'oval'}}\n ref={ref}\n loading={isLoading || loading}\n onClick={dataDisabled ? (e) => e.preventDefault() : handleClick}\n disabled={disabled || dataDisabled}\n data-loading={isLoading || loading || undefined}\n {...others}\n />\n </ButtonWithDisabledTooltip>\n );\n },\n);\nconst ButtonPrimary = Button.withProps({variant: 'filled'});\nconst ButtonSecondary = Button.withProps({\n variant: 'light',\n color: 'var(--coveo-color-text-primary)',\n});\nconst ButtonTertiary = Button.withProps({\n variant: 'default',\n vars: (theme) => ({\n root: {\n '--button-color': 'var(--coveo-color-text-primary)',\n '--button-padding-x': theme.spacing.sm,\n },\n }),\n});\nconst ButtonQuaternary = Button.withProps({\n variant: 'subtle',\n color: 'var(--coveo-color-text-primary)',\n});\n\nconst ButtonDestructive = Button.withProps({variant: 'filled', color: 'var(--mantine-color-error)'});\nconst ButtonDestructiveSecondary = Button.withProps({\n variant: 'light',\n color: 'var(--mantine-color-error)',\n});\nconst ButtonDestructiveTertiary = Button.withProps({\n variant: 'default',\n vars: (theme) => ({\n root: {\n '--button-color': 'var(--mantine-color-error)',\n '--button-padding-x': theme.spacing.sm,\n },\n }),\n});\nconst ButtonDestructiveQuaternary = Button.withProps({variant: 'subtle', color: 'var(--mantine-color-error)'});\n\nButton.Group = MantineButton.Group;\nButton.Primary = ButtonPrimary;\nButton.Secondary = ButtonSecondary;\nButton.Tertiary = ButtonTertiary;\nButton.Quaternary = ButtonQuaternary;\nButton.DestructivePrimary = ButtonDestructive;\nButton.DestructiveSecondary = ButtonDestructiveSecondary;\nButton.DestructiveTertiary = ButtonDestructiveTertiary;\nButton.DestructiveQuaternary = ButtonDestructiveQuaternary;\n"],"names":["Button","MantineButton","polymorphicFactory","useClickWithLoading","ButtonWithDisabledTooltip","disabledTooltip","disabled","disabledTooltipProps","loading","onClick","dataDisabled","others","ref","isLoading","handleClick","fullWidth","loaderProps","variant","e","preventDefault","data-loading","undefined","ButtonPrimary","withProps","ButtonSecondary","color","ButtonTertiary","vars","theme","root","spacing","sm","ButtonQuaternary","ButtonDestructive","ButtonDestructiveSecondary","ButtonDestructiveTertiary","ButtonDestructiveQuaternary","Group","Primary","Secondary","Tertiary","Quaternary","DestructivePrimary","DestructiveSecondary","DestructiveTertiary","DestructiveQuaternary"],"mappings":";AAAA,SAMIA,UAAUC,aAAa,EAEvBC,kBAAkB,QACf,gBAAgB;AAEvB,SAAQC,mBAAmB,QAAO,qCAAqC;AACvE,SAAQC,yBAAyB,QAAuC,iCAAiC;AA2BzG,OAAO,MAAMJ,SAASE,mBAClB,CACI,EAACG,eAAe,EAAEC,QAAQ,EAAEC,oBAAoB,EAAEC,OAAO,EAAEC,OAAO,EAAE,iBAAiBC,YAAY,EAAE,GAAGC,QAAO,EAC7GC;IAEA,MAAM,EAACC,SAAS,EAAEC,WAAW,EAAC,GAAGX,oBAAoBM;IACrD,qBACI,KAACL;QACGE,UAAUA,YAAYI;QACtBL,iBAAiBA;QACjBE,sBAAsBA;QACtBQ,WAAWJ,OAAOI,SAAS;kBAE3B,cAAA,KAACd;YACGe,aAAa;gBAACC,SAAS;YAAM;YAC7BL,KAAKA;YACLJ,SAASK,aAAaL;YACtBC,SAASC,eAAe,CAACQ,IAAMA,EAAEC,cAAc,KAAKL;YACpDR,UAAUA,YAAYI;YACtBU,gBAAcP,aAAaL,WAAWa;YACrC,GAAGV,MAAM;;;AAI1B,GACF;AACF,MAAMW,gBAAgBtB,OAAOuB,SAAS,CAAC;IAACN,SAAS;AAAQ;AACzD,MAAMO,kBAAkBxB,OAAOuB,SAAS,CAAC;IACrCN,SAAS;IACTQ,OAAO;AACX;AACA,MAAMC,iBAAiB1B,OAAOuB,SAAS,CAAC;IACpCN,SAAS;IACTU,MAAM,CAACC,QAAW,CAAA;YACdC,MAAM;gBACF,kBAAkB;gBAClB,sBAAsBD,MAAME,OAAO,CAACC,EAAE;YAC1C;QACJ,CAAA;AACJ;AACA,MAAMC,mBAAmBhC,OAAOuB,SAAS,CAAC;IACtCN,SAAS;IACTQ,OAAO;AACX;AAEA,MAAMQ,oBAAoBjC,OAAOuB,SAAS,CAAC;IAACN,SAAS;IAAUQ,OAAO;AAA4B;AAClG,MAAMS,6BAA6BlC,OAAOuB,SAAS,CAAC;IAChDN,SAAS;IACTQ,OAAO;AACX;AACA,MAAMU,4BAA4BnC,OAAOuB,SAAS,CAAC;IAC/CN,SAAS;IACTU,MAAM,CAACC,QAAW,CAAA;YACdC,MAAM;gBACF,kBAAkB;gBAClB,sBAAsBD,MAAME,OAAO,CAACC,EAAE;YAC1C;QACJ,CAAA;AACJ;AACA,MAAMK,8BAA8BpC,OAAOuB,SAAS,CAAC;IAACN,SAAS;IAAUQ,OAAO;AAA4B;AAE5GzB,OAAOqC,KAAK,GAAGpC,cAAcoC,KAAK;AAClCrC,OAAOsC,OAAO,GAAGhB;AACjBtB,OAAOuC,SAAS,GAAGf;AACnBxB,OAAOwC,QAAQ,GAAGd;AAClB1B,OAAOyC,UAAU,GAAGT;AACpBhC,OAAO0C,kBAAkB,GAAGT;AAC5BjC,OAAO2C,oBAAoB,GAAGT;AAC9BlC,OAAO4C,mBAAmB,GAAGT;AAC7BnC,OAAO6C,qBAAqB,GAAGT"}
@@ -76,7 +76,7 @@ export const Collection = (props)=>{
76
76
  disabled: !canEdit,
77
77
  draggable: draggable,
78
78
  onRemove: ()=>onRemoveItem?.(index),
79
- removable: !(required && hasOnlyOneItem),
79
+ removable: !(isRequired && hasOnlyOneItem),
80
80
  children: children(item.data, index)
81
81
  }, item.id));
82
82
  const addAllowed = allowAdd?.(value) ?? true;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/collection/Collection.tsx"],"sourcesContent":["import {IconPlus} from '@coveord/plasma-react-icons';\nimport {DndContext, DragEndEvent, KeyboardSensor, PointerSensor, useSensor, useSensors} from '@dnd-kit/core';\nimport {restrictToParentElement, restrictToVerticalAxis} from '@dnd-kit/modifiers';\nimport {SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy} from '@dnd-kit/sortable';\nimport {\n __InputWrapperProps,\n Box,\n BoxProps,\n Factory,\n Input,\n MantineSpacing,\n Stack,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {useDidUpdate} from '@mantine/hooks';\nimport {ForwardedRef, ReactNode} from 'react';\n\nimport {CustomComponentThemeExtend, identity} from '../../utils/index.js';\nimport {Button} from '../button/index.js';\nimport classes from './Collection.module.css';\nimport {CollectionProvider} from './CollectionContext.js';\nimport {CollectionItem} from './CollectionItem.js';\n\nexport interface CollectionProps<T> extends __InputWrapperProps, BoxProps, StylesApiProps<CollectionFactory> {\n /**\n * The default value each new item should have\n */\n newItem: T;\n /**\n * A render function called for each item passed in the `value` prop.\n *\n * @param item The current item's value\n * @param index The current item's index\n */\n children: (item: T, index: number) => ReactNode;\n /**\n * The list of items to display inside the collection\n *\n * @default []\n */\n value?: T[];\n /**\n * Defines how each item is uniquely identified. It is highly recommended that you specify this prop to an ID that makes sense.\n *\n * This method is required when using this component with ReactHookForm.\n *\n * @see {@link https://react-hook-form.com/api/usefieldarray/} for using a collection with ReactHookForm.\n *\n * @param originalItem The original item\n * @param itemIndex The index of the original item\n */\n getItemId?: (originalItem: T, itemIndex: number) => string;\n /**\n * Unused, has no effect\n */\n onFocus?: () => void;\n /**\n * Function called whenever the value needs to be updated\n *\n * @param value The whole list of items after the change\n */\n onChange?: (value: T[]) => void;\n /**\n * Function called after an item is removed from the collection using the remove button\n *\n * @param itemIndex The index of the item that was removed\n */\n onRemoveItem?: (itemIndex: number) => void;\n /**\n * Function that gets called whenever a collection item needs to be reordered\n *\n * @param payload The origin and destination index of the item to reorder\n */\n onReorderItem?: (payload: {from: number; to: number}) => void;\n /**\n * Function that gets called when a new item needs to be added to the collection\n *\n * @param value The value of the item to insert\n * @param index The index of the new item to insert\n */\n onInsertItem?: (value: T, index: number) => void;\n /**\n * Whether the collection should have drag and drop behavior enabled\n *\n * @default false\n */\n draggable?: boolean;\n /**\n * Whether the collection is disabled, or in other words in read only mode\n *\n * @default false\n */\n disabled?: boolean;\n /**\n * Whether the collection is readOnly. If true, the collection will not allow adding or removing items\n *\n * @default false\n */\n readOnly?: boolean;\n /**\n * Function that determines if the add item button should be enabled given the current items of the collection.\n * The button is always enabled if this props remains undefined\n *\n * @param values The current items of the collection\n */\n allowAdd?: (values: T[]) => boolean;\n /**\n * The label of the add item button\n *\n * @default \"Add item\"\n */\n addLabel?: string;\n /**\n * The tooltip text displayed when hovering over the disabled add item button\n *\n * @default 'There is already an empty item'\n */\n addDisabledTooltip?: string;\n /**\n * The gap between the colleciton items\n *\n * @default 'xs'\n */\n gap?: MantineSpacing;\n /**\n * Whether the collection is required. When required is true, the collection will hide the remove button if there is only one item\n *\n * @default false\n */\n required?: boolean;\n}\n\nexport type CollectionStylesNames = 'root' | 'item' | 'items' | 'itemDragging' | 'dragHandle';\n\nexport type CollectionFactory = Factory<{\n props: CollectionProps<unknown>;\n ref: HTMLDivElement;\n stylesNames: CollectionStylesNames;\n}>;\n\nconst defaultProps: Partial<CollectionProps<unknown>> = {\n draggable: false,\n addLabel: 'Add item',\n addDisabledTooltip: 'There is already an empty item',\n disabled: false,\n readOnly: false,\n gap: 'md',\n required: false,\n getItemId: ({id}: any) => id,\n};\n\nexport const Collection = <T,>(props: CollectionProps<T> & {ref?: ForwardedRef<HTMLDivElement>}) => {\n const {\n value,\n onChange,\n onRemoveItem,\n onReorderItem,\n onInsertItem,\n disabled,\n readOnly,\n draggable,\n children,\n gap,\n required,\n newItem,\n addLabel,\n addDisabledTooltip,\n allowAdd,\n label,\n labelProps,\n withAsterisk,\n description,\n descriptionProps,\n error,\n errorProps,\n getItemId,\n ref,\n\n // Style props\n style,\n className,\n classNames,\n styles,\n unstyled,\n ...others\n } = useProps('Collection', defaultProps as CollectionProps<T>, props);\n\n const getStyles = useStyles<CollectionFactory>({\n name: 'Collection',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n }),\n );\n\n const canEdit = !disabled && !readOnly;\n const hasOnlyOneItem = value.length === 1;\n\n /**\n * Enforcing onChange when the value is modified will make sure the errors are carried through.\n */\n useDidUpdate(() => {\n onChange?.(value);\n }, [JSON.stringify(value)]);\n\n const isRequired = typeof withAsterisk === 'boolean' ? withAsterisk : required;\n const _label = label ? (\n <Input.Label required={isRequired} {...labelProps}>\n {label}\n </Input.Label>\n ) : null;\n\n const _description = description ? (\n <Input.Description {...descriptionProps}>{description}</Input.Description>\n ) : null;\n const _error = error ? <Input.Error {...errorProps}>{error}</Input.Error> : null;\n const _header =\n _label || _description ? (\n <Stack gap=\"xxs\" pb=\"xs\">\n {_label}\n {_description}\n </Stack>\n ) : null;\n\n const standardizedItems = value.map((item, index) => ({id: getItemId?.(item, index) ?? String(index), data: item}));\n\n const items = standardizedItems.map((item, index) => (\n <CollectionItem\n key={item.id}\n id={item.id}\n disabled={!canEdit}\n draggable={draggable}\n onRemove={() => onRemoveItem?.(index)}\n removable={!(required && hasOnlyOneItem)}\n >\n {children(item.data, index)}\n </CollectionItem>\n ));\n\n const addAllowed = allowAdd?.(value) ?? true;\n\n const _addButton = canEdit ? (\n <Box className={classes.addButtonContainer}>\n <Button.Quaternary\n leftSection={<IconPlus size={16} />}\n onClick={() => onInsertItem(newItem, value?.length ?? 0)}\n disabled={!addAllowed}\n disabledTooltip={addDisabledTooltip}\n >\n {addLabel}\n </Button.Quaternary>\n </Box>\n ) : null;\n\n const getIndex = (id: string) => standardizedItems.findIndex((item) => item.id === id);\n\n const handleDragEnd = ({over, active}: DragEndEvent): void => {\n if (over) {\n const activeIndex = getIndex(String(active.id));\n const overIndex = getIndex(String(over.id));\n if (activeIndex !== overIndex) {\n onReorderItem?.({from: activeIndex, to: overIndex});\n }\n }\n };\n\n return (\n <CollectionProvider value={{getStyles}}>\n <DndContext\n onDragEnd={handleDragEnd}\n sensors={sensors}\n modifiers={[restrictToVerticalAxis, restrictToParentElement]}\n >\n <SortableContext items={standardizedItems} strategy={verticalListSortingStrategy}>\n <Box ref={ref} {...others} {...getStyles('root')}>\n {_header}\n <Stack gap={gap} {...getStyles('items')}>\n {items}\n {_addButton}\n {_error}\n </Stack>\n </Box>\n </SortableContext>\n </DndContext>\n </CollectionProvider>\n );\n};\n\nCollection.extend = identity as CustomComponentThemeExtend<CollectionFactory>;\n"],"names":["IconPlus","DndContext","KeyboardSensor","PointerSensor","useSensor","useSensors","restrictToParentElement","restrictToVerticalAxis","SortableContext","sortableKeyboardCoordinates","verticalListSortingStrategy","Box","Input","Stack","useProps","useStyles","useDidUpdate","identity","Button","classes","CollectionProvider","CollectionItem","defaultProps","draggable","addLabel","addDisabledTooltip","disabled","readOnly","gap","required","getItemId","id","Collection","props","value","onChange","onRemoveItem","onReorderItem","onInsertItem","children","newItem","allowAdd","label","labelProps","withAsterisk","description","descriptionProps","error","errorProps","ref","style","className","classNames","styles","unstyled","others","getStyles","name","sensors","coordinateGetter","canEdit","hasOnlyOneItem","length","JSON","stringify","isRequired","_label","Label","_description","Description","_error","Error","_header","pb","standardizedItems","map","item","index","String","data","items","onRemove","removable","addAllowed","_addButton","addButtonContainer","Quaternary","leftSection","size","onClick","disabledTooltip","getIndex","findIndex","handleDragEnd","over","active","activeIndex","overIndex","from","to","onDragEnd","modifiers","strategy","extend"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/collection/Collection.tsx"],"sourcesContent":["import {IconPlus} from '@coveord/plasma-react-icons';\nimport {DndContext, DragEndEvent, KeyboardSensor, PointerSensor, useSensor, useSensors} from '@dnd-kit/core';\nimport {restrictToParentElement, restrictToVerticalAxis} from '@dnd-kit/modifiers';\nimport {SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy} from '@dnd-kit/sortable';\nimport {\n __InputWrapperProps,\n Box,\n BoxProps,\n Factory,\n Input,\n MantineSpacing,\n Stack,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {useDidUpdate} from '@mantine/hooks';\nimport {ForwardedRef, ReactNode} from 'react';\n\nimport {CustomComponentThemeExtend, identity} from '../../utils/index.js';\nimport {Button} from '../button/index.js';\nimport classes from './Collection.module.css';\nimport {CollectionProvider} from './CollectionContext.js';\nimport {CollectionItem} from './CollectionItem.js';\n\nexport interface CollectionProps<T> extends __InputWrapperProps, BoxProps, StylesApiProps<CollectionFactory> {\n /**\n * The default value each new item should have\n */\n newItem: T;\n /**\n * A render function called for each item passed in the `value` prop.\n *\n * @param item The current item's value\n * @param index The current item's index\n */\n children: (item: T, index: number) => ReactNode;\n /**\n * The list of items to display inside the collection\n *\n * @default []\n */\n value?: T[];\n /**\n * Defines how each item is uniquely identified. It is highly recommended that you specify this prop to an ID that makes sense.\n *\n * This method is required when using this component with ReactHookForm.\n *\n * @see {@link https://react-hook-form.com/api/usefieldarray/} for using a collection with ReactHookForm.\n *\n * @param originalItem The original item\n * @param itemIndex The index of the original item\n */\n getItemId?: (originalItem: T, itemIndex: number) => string;\n /**\n * Unused, has no effect\n */\n onFocus?: () => void;\n /**\n * Function called whenever the value needs to be updated\n *\n * @param value The whole list of items after the change\n */\n onChange?: (value: T[]) => void;\n /**\n * Function called after an item is removed from the collection using the remove button\n *\n * @param itemIndex The index of the item that was removed\n */\n onRemoveItem?: (itemIndex: number) => void;\n /**\n * Function that gets called whenever a collection item needs to be reordered\n *\n * @param payload The origin and destination index of the item to reorder\n */\n onReorderItem?: (payload: {from: number; to: number}) => void;\n /**\n * Function that gets called when a new item needs to be added to the collection\n *\n * @param value The value of the item to insert\n * @param index The index of the new item to insert\n */\n onInsertItem?: (value: T, index: number) => void;\n /**\n * Whether the collection should have drag and drop behavior enabled\n *\n * @default false\n */\n draggable?: boolean;\n /**\n * Whether the collection is disabled, or in other words in read only mode\n *\n * @default false\n */\n disabled?: boolean;\n /**\n * Whether the collection is readOnly. If true, the collection will not allow adding or removing items\n *\n * @default false\n */\n readOnly?: boolean;\n /**\n * Function that determines if the add item button should be enabled given the current items of the collection.\n * The button is always enabled if this props remains undefined\n *\n * @param values The current items of the collection\n */\n allowAdd?: (values: T[]) => boolean;\n /**\n * The label of the add item button\n *\n * @default \"Add item\"\n */\n addLabel?: string;\n /**\n * The tooltip text displayed when hovering over the disabled add item button\n *\n * @default 'There is already an empty item'\n */\n addDisabledTooltip?: string;\n /**\n * The gap between the colleciton items\n *\n * @default 'xs'\n */\n gap?: MantineSpacing;\n /**\n * Whether the collection is required. When required is true, the collection will hide the remove button if there is only one item\n *\n * @default false\n */\n required?: boolean;\n}\n\nexport type CollectionStylesNames = 'root' | 'item' | 'items' | 'itemDragging' | 'dragHandle';\n\nexport type CollectionFactory = Factory<{\n props: CollectionProps<unknown>;\n ref: HTMLDivElement;\n stylesNames: CollectionStylesNames;\n}>;\n\nconst defaultProps: Partial<CollectionProps<unknown>> = {\n draggable: false,\n addLabel: 'Add item',\n addDisabledTooltip: 'There is already an empty item',\n disabled: false,\n readOnly: false,\n gap: 'md',\n required: false,\n getItemId: ({id}: any) => id,\n};\n\nexport const Collection = <T,>(props: CollectionProps<T> & {ref?: ForwardedRef<HTMLDivElement>}) => {\n const {\n value,\n onChange,\n onRemoveItem,\n onReorderItem,\n onInsertItem,\n disabled,\n readOnly,\n draggable,\n children,\n gap,\n required,\n newItem,\n addLabel,\n addDisabledTooltip,\n allowAdd,\n label,\n labelProps,\n withAsterisk,\n description,\n descriptionProps,\n error,\n errorProps,\n getItemId,\n ref,\n\n // Style props\n style,\n className,\n classNames,\n styles,\n unstyled,\n ...others\n } = useProps('Collection', defaultProps as CollectionProps<T>, props);\n\n const getStyles = useStyles<CollectionFactory>({\n name: 'Collection',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n }),\n );\n\n const canEdit = !disabled && !readOnly;\n const hasOnlyOneItem = value.length === 1;\n\n /**\n * Enforcing onChange when the value is modified will make sure the errors are carried through.\n */\n useDidUpdate(() => {\n onChange?.(value);\n }, [JSON.stringify(value)]);\n\n const isRequired = typeof withAsterisk === 'boolean' ? withAsterisk : required;\n const _label = label ? (\n <Input.Label required={isRequired} {...labelProps}>\n {label}\n </Input.Label>\n ) : null;\n\n const _description = description ? (\n <Input.Description {...descriptionProps}>{description}</Input.Description>\n ) : null;\n const _error = error ? <Input.Error {...errorProps}>{error}</Input.Error> : null;\n const _header =\n _label || _description ? (\n <Stack gap=\"xxs\" pb=\"xs\">\n {_label}\n {_description}\n </Stack>\n ) : null;\n\n const standardizedItems = value.map((item, index) => ({id: getItemId?.(item, index) ?? String(index), data: item}));\n\n const items = standardizedItems.map((item, index) => (\n <CollectionItem\n key={item.id}\n id={item.id}\n disabled={!canEdit}\n draggable={draggable}\n onRemove={() => onRemoveItem?.(index)}\n removable={!(isRequired && hasOnlyOneItem)}\n >\n {children(item.data, index)}\n </CollectionItem>\n ));\n\n const addAllowed = allowAdd?.(value) ?? true;\n\n const _addButton = canEdit ? (\n <Box className={classes.addButtonContainer}>\n <Button.Quaternary\n leftSection={<IconPlus size={16} />}\n onClick={() => onInsertItem(newItem, value?.length ?? 0)}\n disabled={!addAllowed}\n disabledTooltip={addDisabledTooltip}\n >\n {addLabel}\n </Button.Quaternary>\n </Box>\n ) : null;\n\n const getIndex = (id: string) => standardizedItems.findIndex((item) => item.id === id);\n\n const handleDragEnd = ({over, active}: DragEndEvent): void => {\n if (over) {\n const activeIndex = getIndex(String(active.id));\n const overIndex = getIndex(String(over.id));\n if (activeIndex !== overIndex) {\n onReorderItem?.({from: activeIndex, to: overIndex});\n }\n }\n };\n\n return (\n <CollectionProvider value={{getStyles}}>\n <DndContext\n onDragEnd={handleDragEnd}\n sensors={sensors}\n modifiers={[restrictToVerticalAxis, restrictToParentElement]}\n >\n <SortableContext items={standardizedItems} strategy={verticalListSortingStrategy}>\n <Box ref={ref} {...others} {...getStyles('root')}>\n {_header}\n <Stack gap={gap} {...getStyles('items')}>\n {items}\n {_addButton}\n {_error}\n </Stack>\n </Box>\n </SortableContext>\n </DndContext>\n </CollectionProvider>\n );\n};\n\nCollection.extend = identity as CustomComponentThemeExtend<CollectionFactory>;\n"],"names":["IconPlus","DndContext","KeyboardSensor","PointerSensor","useSensor","useSensors","restrictToParentElement","restrictToVerticalAxis","SortableContext","sortableKeyboardCoordinates","verticalListSortingStrategy","Box","Input","Stack","useProps","useStyles","useDidUpdate","identity","Button","classes","CollectionProvider","CollectionItem","defaultProps","draggable","addLabel","addDisabledTooltip","disabled","readOnly","gap","required","getItemId","id","Collection","props","value","onChange","onRemoveItem","onReorderItem","onInsertItem","children","newItem","allowAdd","label","labelProps","withAsterisk","description","descriptionProps","error","errorProps","ref","style","className","classNames","styles","unstyled","others","getStyles","name","sensors","coordinateGetter","canEdit","hasOnlyOneItem","length","JSON","stringify","isRequired","_label","Label","_description","Description","_error","Error","_header","pb","standardizedItems","map","item","index","String","data","items","onRemove","removable","addAllowed","_addButton","addButtonContainer","Quaternary","leftSection","size","onClick","disabledTooltip","getIndex","findIndex","handleDragEnd","over","active","activeIndex","overIndex","from","to","onDragEnd","modifiers","strategy","extend"],"mappings":";AAAA,SAAQA,QAAQ,QAAO,8BAA8B;AACrD,SAAQC,UAAU,EAAgBC,cAAc,EAAEC,aAAa,EAAEC,SAAS,EAAEC,UAAU,QAAO,gBAAgB;AAC7G,SAAQC,uBAAuB,EAAEC,sBAAsB,QAAO,qBAAqB;AACnF,SAAQC,eAAe,EAAEC,2BAA2B,EAAEC,2BAA2B,QAAO,oBAAoB;AAC5G,SAEIC,GAAG,EAGHC,KAAK,EAELC,KAAK,EAELC,QAAQ,EACRC,SAAS,QACN,gBAAgB;AACvB,SAAQC,YAAY,QAAO,iBAAiB;AAG5C,SAAoCC,QAAQ,QAAO,uBAAuB;AAC1E,SAAQC,MAAM,QAAO,qBAAqB;AAC1C,OAAOC,aAAa,0BAA0B;AAC9C,SAAQC,kBAAkB,QAAO,yBAAyB;AAC1D,SAAQC,cAAc,QAAO,sBAAsB;AAuHnD,MAAMC,eAAkD;IACpDC,WAAW;IACXC,UAAU;IACVC,oBAAoB;IACpBC,UAAU;IACVC,UAAU;IACVC,KAAK;IACLC,UAAU;IACVC,WAAW,CAAC,EAACC,EAAE,EAAM,GAAKA;AAC9B;AAEA,OAAO,MAAMC,aAAa,CAAKC;IAC3B,MAAM,EACFC,KAAK,EACLC,QAAQ,EACRC,YAAY,EACZC,aAAa,EACbC,YAAY,EACZZ,QAAQ,EACRC,QAAQ,EACRJ,SAAS,EACTgB,QAAQ,EACRX,GAAG,EACHC,QAAQ,EACRW,OAAO,EACPhB,QAAQ,EACRC,kBAAkB,EAClBgB,QAAQ,EACRC,KAAK,EACLC,UAAU,EACVC,YAAY,EACZC,WAAW,EACXC,gBAAgB,EAChBC,KAAK,EACLC,UAAU,EACVlB,SAAS,EACTmB,GAAG,EAEH,cAAc;IACdC,KAAK,EACLC,SAAS,EACTC,UAAU,EACVC,MAAM,EACNC,QAAQ,EACR,GAAGC,QACN,GAAGzC,SAAS,cAAcQ,cAAoCW;IAE/D,MAAMuB,YAAYzC,UAA6B;QAC3C0C,MAAM;QACNtC;QACAc;QACAkB;QACAD;QACAE;QACAC;QACAC;IACJ;IACA,MAAMI,UAAUrD,WACZD,UAAUD,gBACVC,UAAUF,gBAAgB;QACtByD,kBAAkBlD;IACtB;IAGJ,MAAMmD,UAAU,CAAClC,YAAY,CAACC;IAC9B,MAAMkC,iBAAiB3B,MAAM4B,MAAM,KAAK;IAExC;;KAEC,GACD9C,aAAa;QACTmB,WAAWD;IACf,GAAG;QAAC6B,KAAKC,SAAS,CAAC9B;KAAO;IAE1B,MAAM+B,aAAa,OAAOrB,iBAAiB,YAAYA,eAAef;IACtE,MAAMqC,SAASxB,sBACX,KAAC9B,MAAMuD,KAAK;QAACtC,UAAUoC;QAAa,GAAGtB,UAAU;kBAC5CD;SAEL;IAEJ,MAAM0B,eAAevB,4BACjB,KAACjC,MAAMyD,WAAW;QAAE,GAAGvB,gBAAgB;kBAAGD;SAC1C;IACJ,MAAMyB,SAASvB,sBAAQ,KAACnC,MAAM2D,KAAK;QAAE,GAAGvB,UAAU;kBAAGD;SAAuB;IAC5E,MAAMyB,UACFN,UAAUE,6BACN,MAACvD;QAAMe,KAAI;QAAM6C,IAAG;;YACfP;YACAE;;SAEL;IAER,MAAMM,oBAAoBxC,MAAMyC,GAAG,CAAC,CAACC,MAAMC,QAAW,CAAA;YAAC9C,IAAID,YAAY8C,MAAMC,UAAUC,OAAOD;YAAQE,MAAMH;QAAI,CAAA;IAEhH,MAAMI,QAAQN,kBAAkBC,GAAG,CAAC,CAACC,MAAMC,sBACvC,KAACxD;YAEGU,IAAI6C,KAAK7C,EAAE;YACXL,UAAU,CAACkC;YACXrC,WAAWA;YACX0D,UAAU,IAAM7C,eAAeyC;YAC/BK,WAAW,CAAEjB,CAAAA,cAAcJ,cAAa;sBAEvCtB,SAASqC,KAAKG,IAAI,EAAEF;WAPhBD,KAAK7C,EAAE;IAWpB,MAAMoD,aAAa1C,WAAWP,UAAU;IAExC,MAAMkD,aAAaxB,wBACf,KAACjD;QAAIwC,WAAWhC,QAAQkE,kBAAkB;kBACtC,cAAA,KAACnE,OAAOoE,UAAU;YACdC,2BAAa,KAACvF;gBAASwF,MAAM;;YAC7BC,SAAS,IAAMnD,aAAaE,SAASN,OAAO4B,UAAU;YACtDpC,UAAU,CAACyD;YACXO,iBAAiBjE;sBAEhBD;;SAGT;IAEJ,MAAMmE,WAAW,CAAC5D,KAAe2C,kBAAkBkB,SAAS,CAAC,CAAChB,OAASA,KAAK7C,EAAE,KAAKA;IAEnF,MAAM8D,gBAAgB,CAAC,EAACC,IAAI,EAAEC,MAAM,EAAe;QAC/C,IAAID,MAAM;YACN,MAAME,cAAcL,SAASb,OAAOiB,OAAOhE,EAAE;YAC7C,MAAMkE,YAAYN,SAASb,OAAOgB,KAAK/D,EAAE;YACzC,IAAIiE,gBAAgBC,WAAW;gBAC3B5D,gBAAgB;oBAAC6D,MAAMF;oBAAaG,IAAIF;gBAAS;YACrD;QACJ;IACJ;IAEA,qBACI,KAAC7E;QAAmBc,OAAO;YAACsB;QAAS;kBACjC,cAAA,KAACvD;YACGmG,WAAWP;YACXnC,SAASA;YACT2C,WAAW;gBAAC9F;gBAAwBD;aAAwB;sBAE5D,cAAA,KAACE;gBAAgBwE,OAAON;gBAAmB4B,UAAU5F;0BACjD,cAAA,MAACC;oBAAIsC,KAAKA;oBAAM,GAAGM,MAAM;oBAAG,GAAGC,UAAU,OAAO;;wBAC3CgB;sCACD,MAAC3D;4BAAMe,KAAKA;4BAAM,GAAG4B,UAAU,QAAQ;;gCAClCwB;gCACAI;gCACAd;;;;;;;;AAO7B,EAAE;AAEFtC,WAAWuE,MAAM,GAAGtF"}
@@ -1,4 +1,6 @@
1
1
  import { UseFormInput } from '@mantine/form';
2
2
  import { CollectionProps } from './Collection.js';
3
- export declare const enhanceWithCollectionProps: <FormValues, TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues>(payload: Parameters<UseFormInput<FormValues, TransformValues>["enhanceGetInputProps"]>[0], field: (typeof payload)["field"]) => Pick<CollectionProps<unknown>, "onReorderItem" | "onInsertItem" | "onRemoveItem">;
3
+ export declare const enhanceWithCollectionProps: <FormValues, TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues>(payload: Parameters<UseFormInput<FormValues, TransformValues>["enhanceGetInputProps"]>[0], field: (typeof payload)["field"], options?: {
4
+ validateInputOnChange?: boolean;
5
+ }) => Pick<CollectionProps<unknown>, "onReorderItem" | "onInsertItem" | "onRemoveItem">;
4
6
  //# sourceMappingURL=enhanceWithCollectionProps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enhanceWithCollectionProps.d.ts","sourceRoot":"","sources":["../../../../src/components/collection/enhanceWithCollectionProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,0BAA0B,GACnC,UAAU,EACV,eAAe,SAAS,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,EAE5F,SAAS,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,OAAO,CAAC,OAAO,OAAO,EAAE,OAAO,CAAC,KACjC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,GAAG,cAAc,CAYlF,CAAC"}
1
+ {"version":3,"file":"enhanceWithCollectionProps.d.ts","sourceRoot":"","sources":["../../../../src/components/collection/enhanceWithCollectionProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,0BAA0B,GACnC,UAAU,EACV,eAAe,SAAS,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,EAE5F,SAAS,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,OAAO,CAAC,OAAO,OAAO,EAAE,OAAO,CAAC,EAChC,UAAU;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAC,KAC5C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,GAAG,cAAc,CAoBlF,CAAC"}
@@ -1,9 +1,19 @@
1
- export const enhanceWithCollectionProps = (payload, field)=>{
1
+ export const enhanceWithCollectionProps = (payload, field, options)=>{
2
2
  if (payload.field === field) {
3
+ const { validateInputOnChange = false } = options || {};
3
4
  return {
4
- onReorderItem: (reorderPayload)=>payload.form.reorderListItem(field, reorderPayload),
5
- onRemoveItem: (index)=>payload.form.removeListItem(field, index),
6
- onInsertItem: (valueToInsert, index)=>payload.form.insertListItem(field, valueToInsert, index)
5
+ onReorderItem: (reorderPayload)=>{
6
+ payload.form.reorderListItem(field, reorderPayload);
7
+ validateInputOnChange && payload.form.validate();
8
+ },
9
+ onRemoveItem: (index)=>{
10
+ payload.form.removeListItem(field, index);
11
+ validateInputOnChange && payload.form.validate();
12
+ },
13
+ onInsertItem: (valueToInsert, index)=>{
14
+ payload.form.insertListItem(field, valueToInsert, index);
15
+ validateInputOnChange && payload.form.validate();
16
+ }
7
17
  };
8
18
  }
9
19
  return {};
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/collection/enhanceWithCollectionProps.ts"],"sourcesContent":["import {UseFormInput} from '@mantine/form';\nimport {CollectionProps} from './Collection.js';\n\nexport const enhanceWithCollectionProps = <\n FormValues,\n TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues,\n>(\n payload: Parameters<UseFormInput<FormValues, TransformValues>['enhanceGetInputProps']>[0],\n field: (typeof payload)['field'],\n): Pick<CollectionProps<unknown>, 'onReorderItem' | 'onInsertItem' | 'onRemoveItem'> => {\n if (payload.field === field) {\n return {\n onReorderItem: (reorderPayload: Record<'from' | 'to', number>) =>\n payload.form.reorderListItem(field, reorderPayload),\n onRemoveItem: (index: number) => payload.form.removeListItem(field, index),\n onInsertItem: (valueToInsert: unknown, index: number) =>\n payload.form.insertListItem(field, valueToInsert, index),\n };\n }\n\n return {};\n};\n"],"names":["enhanceWithCollectionProps","payload","field","onReorderItem","reorderPayload","form","reorderListItem","onRemoveItem","index","removeListItem","onInsertItem","valueToInsert","insertListItem"],"mappings":"AAGA,OAAO,MAAMA,6BAA6B,CAItCC,SACAC;IAEA,IAAID,QAAQC,KAAK,KAAKA,OAAO;QACzB,OAAO;YACHC,eAAe,CAACC,iBACZH,QAAQI,IAAI,CAACC,eAAe,CAACJ,OAAOE;YACxCG,cAAc,CAACC,QAAkBP,QAAQI,IAAI,CAACI,cAAc,CAACP,OAAOM;YACpEE,cAAc,CAACC,eAAwBH,QACnCP,QAAQI,IAAI,CAACO,cAAc,CAACV,OAAOS,eAAeH;QAC1D;IACJ;IAEA,OAAO,CAAC;AACZ,EAAE"}
1
+ {"version":3,"sources":["../../../../src/components/collection/enhanceWithCollectionProps.ts"],"sourcesContent":["import {UseFormInput} from '@mantine/form';\nimport {CollectionProps} from './Collection.js';\n\nexport const enhanceWithCollectionProps = <\n FormValues,\n TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues,\n>(\n payload: Parameters<UseFormInput<FormValues, TransformValues>['enhanceGetInputProps']>[0],\n field: (typeof payload)['field'],\n options?: {validateInputOnChange?: boolean},\n): Pick<CollectionProps<unknown>, 'onReorderItem' | 'onInsertItem' | 'onRemoveItem'> => {\n if (payload.field === field) {\n const {validateInputOnChange = false} = options || {};\n return {\n onReorderItem: (reorderPayload: Record<'from' | 'to', number>) => {\n payload.form.reorderListItem(field, reorderPayload);\n validateInputOnChange && payload.form.validate();\n },\n onRemoveItem: (index: number) => {\n payload.form.removeListItem(field, index);\n validateInputOnChange && payload.form.validate();\n },\n onInsertItem: (valueToInsert: unknown, index: number) => {\n payload.form.insertListItem(field, valueToInsert, index);\n validateInputOnChange && payload.form.validate();\n },\n };\n }\n\n return {};\n};\n"],"names":["enhanceWithCollectionProps","payload","field","options","validateInputOnChange","onReorderItem","reorderPayload","form","reorderListItem","validate","onRemoveItem","index","removeListItem","onInsertItem","valueToInsert","insertListItem"],"mappings":"AAGA,OAAO,MAAMA,6BAA6B,CAItCC,SACAC,OACAC;IAEA,IAAIF,QAAQC,KAAK,KAAKA,OAAO;QACzB,MAAM,EAACE,wBAAwB,KAAK,EAAC,GAAGD,WAAW,CAAC;QACpD,OAAO;YACHE,eAAe,CAACC;gBACZL,QAAQM,IAAI,CAACC,eAAe,CAACN,OAAOI;gBACpCF,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAC,cAAc,CAACC;gBACXV,QAAQM,IAAI,CAACK,cAAc,CAACV,OAAOS;gBACnCP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAI,cAAc,CAACC,eAAwBH;gBACnCV,QAAQM,IAAI,CAACQ,cAAc,CAACb,OAAOY,eAAeH;gBAClDP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;QACJ;IACJ;IAEA,OAAO,CAAC;AACZ,EAAE"}
@@ -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 {
@@ -1 +1 @@
1
- {"version":3,"file":"InfoToken.d.ts","sourceRoot":"","sources":["../../../../src/components/info-token/InfoToken.tsx"],"names":[],"mappings":"AASA,OAAO,EAEH,QAAQ,EAER,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,cAAc,EAGjB,MAAM,eAAe,CAAC;AAGvB,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC;IACnC,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE,cAAc,CAAC;IAC3B,gBAAgB,EAAE,KAAK,CAAC;IACxB,WAAW,EAAE,6BAA6B,CAAC;IAC3C,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,gBAAgB,CAAC;IAC1B,gBAAgB,EAAE;QACd,WAAW,EAAE,OAAO,gBAAgB,CAAC;QACrC,kBAAkB,EAAE,OAAO,uBAAuB,CAAC;QACnD,MAAM,EAAE,OAAO,WAAW,CAAC;QAC3B,OAAO,EAAE,OAAO,YAAY,CAAC;QAC7B,KAAK,EAAE,OAAO,UAAU,CAAC;QACzB,QAAQ,EAAE,OAAO,aAAa,CAAC;KAClC,CAAC;CACL,CAAC,CAAC;AACH,MAAM,MAAM,6BAA6B,GAAG,MAAM,CAAC;AACnD,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,qBAAqB,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AACnH,MAAM,MAAM,qBAAqB,GAAG;IAChC,IAAI,EAAE,oBAAoB,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,QAAQ,EAAE,cAAc,CAAC,gBAAgB,CAAC;IAC9E;;;;OAIG;IACH,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACtB;AAkED,eAAO,MAAM,SAAS,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,gBAAgB,CAAC,CAmC7E,CAAC;AAEF,QAAA,MAAM,gBAAgB,gHAEpB,CAAC;AACH,QAAA,MAAM,uBAAuB,gHAE3B,CAAC;AACH,QAAA,MAAM,WAAW,gHAA2C,CAAC;AAC7D,QAAA,MAAM,YAAY,gHAA4C,CAAC;AAC/D,QAAA,MAAM,UAAU,gHAA0C,CAAC;AAC3D,QAAA,MAAM,aAAa,gHAA6C,CAAC"}
1
+ {"version":3,"file":"InfoToken.d.ts","sourceRoot":"","sources":["../../../../src/components/info-token/InfoToken.tsx"],"names":[],"mappings":"AASA,OAAO,EAEH,QAAQ,EAER,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,cAAc,EAGjB,MAAM,eAAe,CAAC;AAGvB,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC;IACnC,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE,cAAc,CAAC;IAC3B,gBAAgB,EAAE,KAAK,CAAC;IACxB,WAAW,EAAE,6BAA6B,CAAC;IAC3C,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,gBAAgB,CAAC;IAC1B,gBAAgB,EAAE;QACd,WAAW,EAAE,OAAO,gBAAgB,CAAC;QACrC,kBAAkB,EAAE,OAAO,uBAAuB,CAAC;QACnD,MAAM,EAAE,OAAO,WAAW,CAAC;QAC3B,OAAO,EAAE,OAAO,YAAY,CAAC;QAC7B,KAAK,EAAE,OAAO,UAAU,CAAC;QACzB,QAAQ,EAAE,OAAO,aAAa,CAAC;KAClC,CAAC;CACL,CAAC,CAAC;AACH,MAAM,MAAM,6BAA6B,GAAG,MAAM,CAAC;AACnD,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,qBAAqB,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AACnH,MAAM,MAAM,qBAAqB,GAAG;IAChC,IAAI,EAAE,oBAAoB,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,QAAQ,EAAE,cAAc,CAAC,gBAAgB,CAAC;IAC9E;;;;OAIG;IACH,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACtB;AAiED,eAAO,MAAM,SAAS,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,gBAAgB,CAAC,CAmC7E,CAAC;AAEF,QAAA,MAAM,gBAAgB,gHAEpB,CAAC;AACH,QAAA,MAAM,uBAAuB,gHAE3B,CAAC;AACH,QAAA,MAAM,WAAW,gHAA2C,CAAC;AAC7D,QAAA,MAAM,YAAY,gHAA4C,CAAC;AAC/D,QAAA,MAAM,UAAU,gHAA0C,CAAC;AAC3D,QAAA,MAAM,aAAa,gHAA6C,CAAC"}
@@ -11,11 +11,10 @@ const colorResolver = (variant)=>{
11
11
  case 'error':
12
12
  return 'var(--mantine-color-error)';
13
13
  case 'advice':
14
- return 'var(--mantine-primary-color-filled)';
15
14
  case 'question':
16
- return 'var(--mantine-primary-color-filled)';
15
+ return 'var(--coveo-color-text-primary)';
17
16
  case 'warning':
18
- return 'var(--mantine-color-yellow-4)';
17
+ return 'var(--mantine-color-warning-filled)';
19
18
  case 'information':
20
19
  default:
21
20
  return 'var(--mantine-color-gray-3)';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/info-token/InfoToken.tsx"],"sourcesContent":["import {\n IconAlertSquareFilled,\n IconAlertTriangleFilled,\n IconBulbFilled,\n IconHelpCircle,\n IconInfoCircle,\n IconInfoCircleFilled,\n TablerIcon,\n} from '@coveord/plasma-react-icons';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n Factory,\n MantineSize,\n polymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport classes from './InfoToken.module.css';\n\nexport type InfoTokenFactory = Factory<{\n props: InfoTokenProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: InfoTokenComponentStylesNames;\n vars: InfoTokenCssVariables;\n variant: InfoTokenVariant;\n staticComponents: {\n Information: typeof TokenInformation;\n InformationOutline: typeof TokenInformationOutline;\n Advice: typeof TokenAdvice;\n Warning: typeof TokenWarning;\n Error: typeof TokenError;\n Question: typeof TokenQuestion;\n };\n}>;\nexport type InfoTokenComponentStylesNames = 'root';\nexport type InfoTokenVariant = 'information' | 'information-outline' | 'advice' | 'warning' | 'error' | 'question';\nexport type InfoTokenCssVariables = {\n root: '--info-token-color';\n};\n\nexport interface InfoTokenProps extends BoxProps, StylesApiProps<InfoTokenFactory> {\n /**\n * The variant of the token.\n *\n * @default 'information'\n */\n variant?: InfoTokenVariant;\n /**\n * The size of the info token.\n *\n * @default 'sm'\n */\n size?: MantineSize;\n}\n\nconst defaultProps: Partial<InfoTokenProps> = {variant: 'information', size: 'xs'};\n\nconst colorResolver = (variant: InfoTokenVariant): string => {\n switch (variant) {\n case 'error':\n return 'var(--mantine-color-error)';\n case 'advice':\n return 'var(--mantine-primary-color-filled)';\n case 'question':\n return 'var(--mantine-primary-color-filled)';\n case 'warning':\n return 'var(--mantine-color-yellow-4)';\n case 'information':\n default:\n return 'var(--mantine-color-gray-3)';\n }\n};\n\nconst sizeResolver = (size: MantineSize): number => {\n if (typeof size === 'number') {\n return size;\n }\n switch (size) {\n case 'sm':\n return 20;\n case 'md':\n return 24;\n case 'lg':\n return 32;\n case 'xl':\n return 40;\n case 'xs':\n default:\n return 16;\n }\n};\n\nconst iconResolver = (variant: InfoTokenVariant): TablerIcon => {\n switch (variant) {\n case 'error':\n return IconAlertSquareFilled;\n case 'information':\n return IconInfoCircleFilled;\n case 'information-outline':\n return IconInfoCircle;\n case 'question':\n return IconHelpCircle;\n case 'warning':\n return IconAlertTriangleFilled;\n case 'advice':\n default:\n return IconBulbFilled;\n }\n};\n\nconst varsResolver = createVarsResolver<InfoTokenFactory>((_theme, {variant}) => {\n const color = colorResolver(variant);\n return {\n root: {\n '--info-token-color': color,\n },\n };\n});\n\nexport const InfoToken: ReturnType<typeof polymorphicFactory<InfoTokenFactory>> = polymorphicFactory<InfoTokenFactory>(\n (_props, ref) => {\n const props = useProps('InfoToken', defaultProps, _props);\n const {variant, vars, className, style, unstyled, styles, classNames, size, ...others} = props;\n const getStyles = useStyles<InfoTokenFactory>({\n name: 'InfoToken',\n classes,\n className,\n props,\n style,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n const IconComponent = iconResolver(variant);\n return (\n <Box\n ref={ref}\n variant={variant}\n role=\"img\"\n aria-label={variant}\n size={size}\n {...getStyles('root', {\n className,\n style,\n styles,\n classNames,\n })}\n {...others}\n >\n <IconComponent size={sizeResolver(size)} />\n </Box>\n );\n },\n);\n\nconst TokenInformation = InfoToken.withProps({\n variant: 'information',\n});\nconst TokenInformationOutline = InfoToken.withProps({\n variant: 'information-outline',\n});\nconst TokenAdvice = InfoToken.withProps({variant: 'advice'});\nconst TokenWarning = InfoToken.withProps({variant: 'warning'});\nconst TokenError = InfoToken.withProps({variant: 'error'});\nconst TokenQuestion = InfoToken.withProps({variant: 'question'});\n\nInfoToken.Information = TokenInformation;\nInfoToken.InformationOutline = TokenInformationOutline;\nInfoToken.Advice = TokenAdvice;\nInfoToken.Warning = TokenWarning;\nInfoToken.Error = TokenError;\nInfoToken.Question = TokenQuestion;\n"],"names":["IconAlertSquareFilled","IconAlertTriangleFilled","IconBulbFilled","IconHelpCircle","IconInfoCircle","IconInfoCircleFilled","Box","createVarsResolver","polymorphicFactory","useProps","useStyles","classes","defaultProps","variant","size","colorResolver","sizeResolver","iconResolver","varsResolver","_theme","color","root","InfoToken","_props","ref","props","vars","className","style","unstyled","styles","classNames","others","getStyles","name","IconComponent","role","aria-label","TokenInformation","withProps","TokenInformationOutline","TokenAdvice","TokenWarning","TokenError","TokenQuestion","Information","InformationOutline","Advice","Warning","Error","Question"],"mappings":";AAAA,SACIA,qBAAqB,EACrBC,uBAAuB,EACvBC,cAAc,EACdC,cAAc,EACdC,cAAc,EACdC,oBAAoB,QAEjB,8BAA8B;AACrC,SACIC,GAAG,EAEHC,kBAAkB,EAGlBC,kBAAkB,EAElBC,QAAQ,EACRC,SAAS,QACN,gBAAgB;AACvB,OAAOC,aAAa,yBAAyB;AAuC7C,MAAMC,eAAwC;IAACC,SAAS;IAAeC,MAAM;AAAI;AAEjF,MAAMC,gBAAgB,CAACF;IACnB,OAAQA;QACJ,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;QACL;YACI,OAAO;IACf;AACJ;AAEA,MAAMG,eAAe,CAACF;IAClB,IAAI,OAAOA,SAAS,UAAU;QAC1B,OAAOA;IACX;IACA,OAAQA;QACJ,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;QACL;YACI,OAAO;IACf;AACJ;AAEA,MAAMG,eAAe,CAACJ;IAClB,OAAQA;QACJ,KAAK;YACD,OAAOb;QACX,KAAK;YACD,OAAOK;QACX,KAAK;YACD,OAAOD;QACX,KAAK;YACD,OAAOD;QACX,KAAK;YACD,OAAOF;QACX,KAAK;QACL;YACI,OAAOC;IACf;AACJ;AAEA,MAAMgB,eAAeX,mBAAqC,CAACY,QAAQ,EAACN,OAAO,EAAC;IACxE,MAAMO,QAAQL,cAAcF;IAC5B,OAAO;QACHQ,MAAM;YACF,sBAAsBD;QAC1B;IACJ;AACJ;AAEA,OAAO,MAAME,YAAqEd,mBAC9E,CAACe,QAAQC;IACL,MAAMC,QAAQhB,SAAS,aAAaG,cAAcW;IAClD,MAAM,EAACV,OAAO,EAAEa,IAAI,EAAEC,SAAS,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,UAAU,EAAEjB,IAAI,EAAE,GAAGkB,QAAO,GAAGP;IACzF,MAAMQ,YAAYvB,UAA4B;QAC1CwB,MAAM;QACNvB;QACAgB;QACAF;QACAG;QACAE;QACAD;QACAH;QACAR;IACJ;IACA,MAAMiB,gBAAgBlB,aAAaJ;IACnC,qBACI,KAACP;QACGkB,KAAKA;QACLX,SAASA;QACTuB,MAAK;QACLC,cAAYxB;QACZC,MAAMA;QACL,GAAGmB,UAAU,QAAQ;YAClBN;YACAC;YACAE;YACAC;QACJ,EAAE;QACD,GAAGC,MAAM;kBAEV,cAAA,KAACG;YAAcrB,MAAME,aAAaF;;;AAG9C,GACF;AAEF,MAAMwB,mBAAmBhB,UAAUiB,SAAS,CAAC;IACzC1B,SAAS;AACb;AACA,MAAM2B,0BAA0BlB,UAAUiB,SAAS,CAAC;IAChD1B,SAAS;AACb;AACA,MAAM4B,cAAcnB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAQ;AAC1D,MAAM6B,eAAepB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAS;AAC5D,MAAM8B,aAAarB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAO;AACxD,MAAM+B,gBAAgBtB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAU;AAE9DS,UAAUuB,WAAW,GAAGP;AACxBhB,UAAUwB,kBAAkB,GAAGN;AAC/BlB,UAAUyB,MAAM,GAAGN;AACnBnB,UAAU0B,OAAO,GAAGN;AACpBpB,UAAU2B,KAAK,GAAGN;AAClBrB,UAAU4B,QAAQ,GAAGN"}
1
+ {"version":3,"sources":["../../../../src/components/info-token/InfoToken.tsx"],"sourcesContent":["import {\n IconAlertSquareFilled,\n IconAlertTriangleFilled,\n IconBulbFilled,\n IconHelpCircle,\n IconInfoCircle,\n IconInfoCircleFilled,\n TablerIcon,\n} from '@coveord/plasma-react-icons';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n Factory,\n MantineSize,\n polymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport classes from './InfoToken.module.css';\n\nexport type InfoTokenFactory = Factory<{\n props: InfoTokenProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: InfoTokenComponentStylesNames;\n vars: InfoTokenCssVariables;\n variant: InfoTokenVariant;\n staticComponents: {\n Information: typeof TokenInformation;\n InformationOutline: typeof TokenInformationOutline;\n Advice: typeof TokenAdvice;\n Warning: typeof TokenWarning;\n Error: typeof TokenError;\n Question: typeof TokenQuestion;\n };\n}>;\nexport type InfoTokenComponentStylesNames = 'root';\nexport type InfoTokenVariant = 'information' | 'information-outline' | 'advice' | 'warning' | 'error' | 'question';\nexport type InfoTokenCssVariables = {\n root: '--info-token-color';\n};\n\nexport interface InfoTokenProps extends BoxProps, StylesApiProps<InfoTokenFactory> {\n /**\n * The variant of the token.\n *\n * @default 'information'\n */\n variant?: InfoTokenVariant;\n /**\n * The size of the info token.\n *\n * @default 'sm'\n */\n size?: MantineSize;\n}\n\nconst defaultProps: Partial<InfoTokenProps> = {variant: 'information', size: 'xs'};\n\nconst colorResolver = (variant: InfoTokenVariant): string => {\n switch (variant) {\n case 'error':\n return 'var(--mantine-color-error)';\n case 'advice':\n case 'question':\n return 'var(--coveo-color-text-primary)';\n case 'warning':\n return 'var(--mantine-color-warning-filled)';\n case 'information':\n default:\n return 'var(--mantine-color-gray-3)';\n }\n};\n\nconst sizeResolver = (size: MantineSize): number => {\n if (typeof size === 'number') {\n return size;\n }\n switch (size) {\n case 'sm':\n return 20;\n case 'md':\n return 24;\n case 'lg':\n return 32;\n case 'xl':\n return 40;\n case 'xs':\n default:\n return 16;\n }\n};\n\nconst iconResolver = (variant: InfoTokenVariant): TablerIcon => {\n switch (variant) {\n case 'error':\n return IconAlertSquareFilled;\n case 'information':\n return IconInfoCircleFilled;\n case 'information-outline':\n return IconInfoCircle;\n case 'question':\n return IconHelpCircle;\n case 'warning':\n return IconAlertTriangleFilled;\n case 'advice':\n default:\n return IconBulbFilled;\n }\n};\n\nconst varsResolver = createVarsResolver<InfoTokenFactory>((_theme, {variant}) => {\n const color = colorResolver(variant);\n return {\n root: {\n '--info-token-color': color,\n },\n };\n});\n\nexport const InfoToken: ReturnType<typeof polymorphicFactory<InfoTokenFactory>> = polymorphicFactory<InfoTokenFactory>(\n (_props, ref) => {\n const props = useProps('InfoToken', defaultProps, _props);\n const {variant, vars, className, style, unstyled, styles, classNames, size, ...others} = props;\n const getStyles = useStyles<InfoTokenFactory>({\n name: 'InfoToken',\n classes,\n className,\n props,\n style,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n const IconComponent = iconResolver(variant);\n return (\n <Box\n ref={ref}\n variant={variant}\n role=\"img\"\n aria-label={variant}\n size={size}\n {...getStyles('root', {\n className,\n style,\n styles,\n classNames,\n })}\n {...others}\n >\n <IconComponent size={sizeResolver(size)} />\n </Box>\n );\n },\n);\n\nconst TokenInformation = InfoToken.withProps({\n variant: 'information',\n});\nconst TokenInformationOutline = InfoToken.withProps({\n variant: 'information-outline',\n});\nconst TokenAdvice = InfoToken.withProps({variant: 'advice'});\nconst TokenWarning = InfoToken.withProps({variant: 'warning'});\nconst TokenError = InfoToken.withProps({variant: 'error'});\nconst TokenQuestion = InfoToken.withProps({variant: 'question'});\n\nInfoToken.Information = TokenInformation;\nInfoToken.InformationOutline = TokenInformationOutline;\nInfoToken.Advice = TokenAdvice;\nInfoToken.Warning = TokenWarning;\nInfoToken.Error = TokenError;\nInfoToken.Question = TokenQuestion;\n"],"names":["IconAlertSquareFilled","IconAlertTriangleFilled","IconBulbFilled","IconHelpCircle","IconInfoCircle","IconInfoCircleFilled","Box","createVarsResolver","polymorphicFactory","useProps","useStyles","classes","defaultProps","variant","size","colorResolver","sizeResolver","iconResolver","varsResolver","_theme","color","root","InfoToken","_props","ref","props","vars","className","style","unstyled","styles","classNames","others","getStyles","name","IconComponent","role","aria-label","TokenInformation","withProps","TokenInformationOutline","TokenAdvice","TokenWarning","TokenError","TokenQuestion","Information","InformationOutline","Advice","Warning","Error","Question"],"mappings":";AAAA,SACIA,qBAAqB,EACrBC,uBAAuB,EACvBC,cAAc,EACdC,cAAc,EACdC,cAAc,EACdC,oBAAoB,QAEjB,8BAA8B;AACrC,SACIC,GAAG,EAEHC,kBAAkB,EAGlBC,kBAAkB,EAElBC,QAAQ,EACRC,SAAS,QACN,gBAAgB;AACvB,OAAOC,aAAa,yBAAyB;AAuC7C,MAAMC,eAAwC;IAACC,SAAS;IAAeC,MAAM;AAAI;AAEjF,MAAMC,gBAAgB,CAACF;IACnB,OAAQA;QACJ,KAAK;YACD,OAAO;QACX,KAAK;QACL,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;QACL;YACI,OAAO;IACf;AACJ;AAEA,MAAMG,eAAe,CAACF;IAClB,IAAI,OAAOA,SAAS,UAAU;QAC1B,OAAOA;IACX;IACA,OAAQA;QACJ,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;YACD,OAAO;QACX,KAAK;QACL;YACI,OAAO;IACf;AACJ;AAEA,MAAMG,eAAe,CAACJ;IAClB,OAAQA;QACJ,KAAK;YACD,OAAOb;QACX,KAAK;YACD,OAAOK;QACX,KAAK;YACD,OAAOD;QACX,KAAK;YACD,OAAOD;QACX,KAAK;YACD,OAAOF;QACX,KAAK;QACL;YACI,OAAOC;IACf;AACJ;AAEA,MAAMgB,eAAeX,mBAAqC,CAACY,QAAQ,EAACN,OAAO,EAAC;IACxE,MAAMO,QAAQL,cAAcF;IAC5B,OAAO;QACHQ,MAAM;YACF,sBAAsBD;QAC1B;IACJ;AACJ;AAEA,OAAO,MAAME,YAAqEd,mBAC9E,CAACe,QAAQC;IACL,MAAMC,QAAQhB,SAAS,aAAaG,cAAcW;IAClD,MAAM,EAACV,OAAO,EAAEa,IAAI,EAAEC,SAAS,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,UAAU,EAAEjB,IAAI,EAAE,GAAGkB,QAAO,GAAGP;IACzF,MAAMQ,YAAYvB,UAA4B;QAC1CwB,MAAM;QACNvB;QACAgB;QACAF;QACAG;QACAE;QACAD;QACAH;QACAR;IACJ;IACA,MAAMiB,gBAAgBlB,aAAaJ;IACnC,qBACI,KAACP;QACGkB,KAAKA;QACLX,SAASA;QACTuB,MAAK;QACLC,cAAYxB;QACZC,MAAMA;QACL,GAAGmB,UAAU,QAAQ;YAClBN;YACAC;YACAE;YACAC;QACJ,EAAE;QACD,GAAGC,MAAM;kBAEV,cAAA,KAACG;YAAcrB,MAAME,aAAaF;;;AAG9C,GACF;AAEF,MAAMwB,mBAAmBhB,UAAUiB,SAAS,CAAC;IACzC1B,SAAS;AACb;AACA,MAAM2B,0BAA0BlB,UAAUiB,SAAS,CAAC;IAChD1B,SAAS;AACb;AACA,MAAM4B,cAAcnB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAQ;AAC1D,MAAM6B,eAAepB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAS;AAC5D,MAAM8B,aAAarB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAO;AACxD,MAAM+B,gBAAgBtB,UAAUiB,SAAS,CAAC;IAAC1B,SAAS;AAAU;AAE9DS,UAAUuB,WAAW,GAAGP;AACxBhB,UAAUwB,kBAAkB,GAAGN;AAC/BlB,UAAUyB,MAAM,GAAGN;AACnBnB,UAAU0B,OAAO,GAAGN;AACpBpB,UAAU2B,KAAK,GAAGN;AAClBrB,UAAU4B,QAAQ,GAAGN"}
@@ -67,7 +67,7 @@
67
67
  /* Table.Header */
68
68
  .headerRoot {
69
69
  border-bottom: 1px solid var(--mantine-color-default-border);
70
- background-color: var(--mantine-color-gray-0);
70
+ background-color: var(--mantine-color-body);
71
71
  padding: var(--mantine-spacing-sm) var(--mantine-spacing-xl);
72
72
  position: relative;
73
73
  min-height: 69px;
@@ -90,7 +90,7 @@
90
90
  vertical-align: middle;
91
91
  white-space: nowrap;
92
92
  text-align: left;
93
- color: var(--mantine-color-gray-6);
93
+ color: var(--mantine-color-text);
94
94
  height: var(--mantine-spacing-xl);
95
95
  font-weight: var(--coveo-fw-bold);
96
96
  font-size: var(--mantine-font-size-sm);
@@ -103,11 +103,11 @@
103
103
  padding-right: var(--mantine-spacing-xl);
104
104
  }
105
105
 
106
- background-color: var(--mantine-color-gray-0);
106
+ background-color: var(--mantine-color-body);
107
107
 
108
108
  &[data-control='true'] {
109
109
  @mixin hover {
110
- background-color: var(--mantine-color-gray-1);
110
+ background-color: var(--mantine-color-default-hover);
111
111
  }
112
112
  }
113
113
  }
@@ -117,7 +117,7 @@
117
117
  }
118
118
 
119
119
  .lastUpdatedLabel {
120
- color: var(--mantine-color-gray-6);
120
+ color: var(--mantine-color-text);
121
121
  }
122
122
 
123
123
  /* Table.Predicate */
@@ -1,6 +1,4 @@
1
1
  .day {
2
- border-radius: var(--mantine-radius-default);
3
-
4
2
  @mixin hover {
5
3
  &:where(:not([data-static], [data-disabled], [data-selected], [data-in-range])) {
6
4
  @mixin light {
@@ -10,6 +8,10 @@
10
8
  }
11
9
 
12
10
  &:where([data-weekend]) {
13
- color: var(--mantine-color-error);
11
+ color: var(--mantine-color-text);
12
+
13
+ &:where([data-selected]) {
14
+ color: var(--mantine-primary-color-contrast);
15
+ }
14
16
  }
15
17
  }
@@ -0,0 +1,17 @@
1
+ .day {
2
+ @mixin hover {
3
+ &:where(:not([data-static], [data-disabled], [data-selected], [data-in-range])) {
4
+ @mixin light {
5
+ background-color: var(--mantine-color-default-hover);
6
+ }
7
+ }
8
+ }
9
+
10
+ &:where([data-weekend]) {
11
+ color: var(--mantine-color-text);
12
+
13
+ &:where([data-selected]) {
14
+ color: var(--mantine-primary-color-contrast);
15
+ }
16
+ }
17
+ }
@@ -31,6 +31,12 @@
31
31
  }
32
32
  }
33
33
 
34
+ .input {
35
+ @mixin dark {
36
+ --input-bg: var(--mantine-color-default);
37
+ }
38
+ }
39
+
34
40
  .section {
35
41
  > svg {
36
42
  color: var(--mantine-color-gray-3);
@@ -1,43 +1,38 @@
1
1
  .labelWrapper {
2
2
  display: flex;
3
3
  align-items: flex-start;
4
+ color: var(--coveo-color-title);
4
5
 
5
- @mixin light {
6
- color: var(--coveo-color-title);
7
-
8
- &[data-disabled] {
9
- .label,
10
- .description {
11
- color: var(--mantine-color-disabled-color);
12
- }
6
+ &[data-disabled] {
7
+ .label,
8
+ .description {
9
+ color: var(--mantine-color-disabled-color);
13
10
  }
14
11
  }
15
12
  }
16
13
 
17
14
  .radio {
18
- @mixin light {
19
- &:not(:checked, [readonly], :disabled, [data-error='true']) {
20
- border-color: var(--coveo-color-input-border);
21
- }
15
+ &:not(:checked, [readonly], :disabled, [data-error='true']) {
16
+ border-color: var(--coveo-color-input-border);
17
+ }
22
18
 
23
- &:disabled {
24
- background-color: var(--mantine-color-disabled);
25
- border-color: var(--mantine-color-default-border);
19
+ &:disabled {
20
+ background-color: var(--mantine-color-disabled);
21
+ border-color: var(--mantine-color-default-border);
26
22
 
27
- & + .icon {
28
- color: var(--mantine-color-placeholder);
29
- }
23
+ & + .icon {
24
+ color: var(--mantine-color-placeholder);
30
25
  }
26
+ }
31
27
 
32
- /* mantine hardcodes disabled styles so we need to write custom styles */
33
- &[readonly] {
34
- border-color: var(--mantine-color-default-border);
35
- background-color: var(--coveo-color-bg-readonly);
36
- color: var(--coveo-color-text-readonly);
28
+ /* mantine hardcodes disabled styles so we need to write custom styles */
29
+ &[readonly] {
30
+ border-color: var(--mantine-color-default-border);
31
+ background-color: var(--coveo-color-bg-readonly);
32
+ color: var(--coveo-color-text-readonly);
37
33
 
38
- & + .icon {
39
- color: var(--coveo-color-text-readonly);
40
- }
34
+ & + .icon {
35
+ color: var(--coveo-color-text-readonly);
41
36
  }
42
37
  }
43
38
  }
@@ -2,7 +2,7 @@
2
2
  cursor: text;
3
3
 
4
4
  --input-bd: var(--mantine-color-default-border);
5
- --input-bg: var(--mantine-color-gray-1);
5
+ --input-bg: var(--coveo-color-bg-readonly);
6
6
  --input-color: var(--mantine-color-text);
7
7
  --input-placeholder-color: var(--mantine-color-text);
8
8
  }
@@ -5,7 +5,14 @@
5
5
  }
6
6
 
7
7
  &::after {
8
- background-color: var(--mantine-color-gray-2);
8
+ @mixin where-light {
9
+ background-color: var(--mantine-color-gray-2);
10
+ }
11
+
12
+ @mixin where-dark {
13
+ background-color: var(--mantine-color-dark-5);
14
+ }
15
+
9
16
  z-index: calc(var(--mantine-z-index-overlay) + 1);
10
17
  }
11
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../../src/theme/Theme.tsx"],"names":[],"mappings":"AAYA,OAAO,EAsBH,oBAAoB,EAuBvB,MAAM,eAAe,CAAC;AAgDvB,eAAO,MAAM,WAAW,EAAE,oBAyaxB,CAAC"}
1
+ {"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../../src/theme/Theme.tsx"],"names":[],"mappings":"AAYA,OAAO,EAsBH,oBAAoB,EAuBvB,MAAM,eAAe,CAAC;AA0DvB,eAAO,MAAM,WAAW,EAAE,oBA4axB,CAAC"}