@clickhouse/click-ui 0.6.2-rc3 → 0.7.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 (212) hide show
  1. package/dist/cjs/click-ui.css +1872 -59
  2. package/dist/cjs/components/Alert/index.cjs +2 -2
  3. package/dist/cjs/components/Alert/index.cjs.map +1 -1
  4. package/dist/cjs/components/Assets/Logos/Polaris.cjs +22 -0
  5. package/dist/cjs/components/Assets/Logos/Polaris.cjs.map +1 -0
  6. package/dist/cjs/components/Assets/Logos/system/LogosDark.cjs +2 -0
  7. package/dist/cjs/components/Assets/Logos/system/LogosDark.cjs.map +1 -1
  8. package/dist/cjs/components/Assets/Logos/system/LogosLight.cjs +2 -0
  9. package/dist/cjs/components/Assets/Logos/system/LogosLight.cjs.map +1 -1
  10. package/dist/cjs/components/BigStat/BigStat.css +77 -0
  11. package/dist/cjs/components/BigStat/BigStat.module.css.cjs +22 -0
  12. package/dist/cjs/components/BigStat/BigStat.module.css.cjs.map +1 -0
  13. package/dist/cjs/components/BigStat/index.cjs +60 -52
  14. package/dist/cjs/components/BigStat/index.cjs.map +1 -1
  15. package/dist/cjs/components/ButtonGroup/index.cjs +1 -1
  16. package/dist/cjs/components/ButtonGroup/index.cjs.map +1 -1
  17. package/dist/cjs/components/CardPromotion/index.cjs +1 -1
  18. package/dist/cjs/components/CardPromotion/index.cjs.map +1 -1
  19. package/dist/cjs/components/CardSecondary/CardSecondary.css +99 -0
  20. package/dist/cjs/components/CardSecondary/CardSecondary.module.css.cjs +39 -0
  21. package/dist/cjs/components/CardSecondary/CardSecondary.module.css.cjs.map +1 -0
  22. package/dist/cjs/components/CardSecondary/index.cjs +35 -84
  23. package/dist/cjs/components/CardSecondary/index.cjs.map +1 -1
  24. package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.css +20 -0
  25. package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.module.css.cjs +15 -0
  26. package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.module.css.cjs.map +1 -0
  27. package/dist/cjs/components/ConfirmationDialog/index.cjs +6 -11
  28. package/dist/cjs/components/ConfirmationDialog/index.cjs.map +1 -1
  29. package/dist/cjs/components/ContextMenu/ContextMenu.css +28 -0
  30. package/dist/cjs/components/ContextMenu/ContextMenu.module.css.cjs +10 -0
  31. package/dist/cjs/components/ContextMenu/ContextMenu.module.css.cjs.map +1 -0
  32. package/dist/cjs/components/ContextMenu/index.cjs +27 -29
  33. package/dist/cjs/components/ContextMenu/index.cjs.map +1 -1
  34. package/dist/cjs/components/CrossButton/index.cjs +5 -1
  35. package/dist/cjs/components/CrossButton/index.cjs.map +1 -1
  36. package/dist/cjs/components/DatePicker/Common.cjs +1 -1
  37. package/dist/cjs/components/DatePicker/Common.cjs.map +1 -1
  38. package/dist/cjs/components/Dropdown/Dropdown.css +13 -0
  39. package/dist/cjs/components/Dropdown/Dropdown.module.css.cjs +11 -0
  40. package/dist/cjs/components/Dropdown/Dropdown.module.css.cjs.map +1 -0
  41. package/dist/cjs/components/Dropdown/index.cjs +19 -13
  42. package/dist/cjs/components/Dropdown/index.cjs.map +1 -1
  43. package/dist/cjs/components/FileTabs/index.cjs +1 -1
  44. package/dist/cjs/components/FileTabs/index.cjs.map +1 -1
  45. package/dist/cjs/components/Flyout/Flyout.css +231 -0
  46. package/dist/cjs/components/Flyout/Flyout.module.css.cjs +93 -0
  47. package/dist/cjs/components/Flyout/Flyout.module.css.cjs.map +1 -0
  48. package/dist/cjs/components/Flyout/index.cjs +148 -126
  49. package/dist/cjs/components/Flyout/index.cjs.map +1 -1
  50. package/dist/cjs/components/GenericMenu/GenericMenu.css +176 -0
  51. package/dist/cjs/components/GenericMenu/GenericMenu.module.css.cjs +23 -0
  52. package/dist/cjs/components/GenericMenu/GenericMenu.module.css.cjs.map +1 -0
  53. package/dist/cjs/components/GenericMenu/index.cjs +93 -99
  54. package/dist/cjs/components/GenericMenu/index.cjs.map +1 -1
  55. package/dist/cjs/components/HoverCard/index.cjs +1 -1
  56. package/dist/cjs/components/HoverCard/index.cjs.map +1 -1
  57. package/dist/cjs/components/IconButton/index.cjs +2 -1
  58. package/dist/cjs/components/IconButton/index.cjs.map +1 -1
  59. package/dist/cjs/components/InputWrapper/InputWrapper.css +221 -0
  60. package/dist/cjs/components/InputWrapper/InputWrapper.module.css.cjs +39 -0
  61. package/dist/cjs/components/InputWrapper/InputWrapper.module.css.cjs.map +1 -0
  62. package/dist/cjs/components/InputWrapper/index.cjs +84 -185
  63. package/dist/cjs/components/InputWrapper/index.cjs.map +1 -1
  64. package/dist/cjs/components/Popover/Popover.css +12 -0
  65. package/dist/cjs/components/Popover/Popover.module.css.cjs +11 -0
  66. package/dist/cjs/components/Popover/Popover.module.css.cjs.map +1 -0
  67. package/dist/cjs/components/Popover/index.cjs +26 -19
  68. package/dist/cjs/components/Popover/index.cjs.map +1 -1
  69. package/dist/cjs/components/RadioGroup/RadioGroup.css +99 -0
  70. package/dist/cjs/components/RadioGroup/RadioGroup.module.css.cjs +18 -0
  71. package/dist/cjs/components/RadioGroup/RadioGroup.module.css.cjs.map +1 -0
  72. package/dist/cjs/components/RadioGroup/index.cjs +28 -77
  73. package/dist/cjs/components/RadioGroup/index.cjs.map +1 -1
  74. package/dist/cjs/components/Select/common/InternalSelect.cjs +1 -1
  75. package/dist/cjs/components/Select/common/InternalSelect.cjs.map +1 -1
  76. package/dist/cjs/components/SplitButton/index.cjs +2 -1
  77. package/dist/cjs/components/SplitButton/index.cjs.map +1 -1
  78. package/dist/cjs/components/Table/Table.css +376 -0
  79. package/dist/cjs/components/Table/Table.module.css.cjs +86 -0
  80. package/dist/cjs/components/Table/Table.module.css.cjs.map +1 -0
  81. package/dist/cjs/components/Table/index.cjs +132 -214
  82. package/dist/cjs/components/Table/index.cjs.map +1 -1
  83. package/dist/cjs/components/Toast/Toast.css +142 -0
  84. package/dist/cjs/components/Toast/Toast.module.css.cjs +38 -0
  85. package/dist/cjs/components/Toast/Toast.module.css.cjs.map +1 -0
  86. package/dist/cjs/components/Toast/index.cjs +43 -96
  87. package/dist/cjs/components/Toast/index.cjs.map +1 -1
  88. package/dist/cjs/components/Tooltip/Tooltip.css +17 -0
  89. package/dist/cjs/components/Tooltip/Tooltip.module.css.cjs +15 -0
  90. package/dist/cjs/components/Tooltip/Tooltip.module.css.cjs.map +1 -0
  91. package/dist/cjs/components/Tooltip/index.cjs +12 -24
  92. package/dist/cjs/components/Tooltip/index.cjs.map +1 -1
  93. package/dist/cjs/components/VerticalStepper/VerticalStepper.css +302 -0
  94. package/dist/cjs/components/VerticalStepper/VerticalStepper.module.css.cjs +84 -0
  95. package/dist/cjs/components/VerticalStepper/VerticalStepper.module.css.cjs.map +1 -0
  96. package/dist/cjs/components/VerticalStepper/index.cjs +85 -110
  97. package/dist/cjs/components/VerticalStepper/index.cjs.map +1 -1
  98. package/dist/esm/click-ui.css +1872 -59
  99. package/dist/esm/components/Alert/index.js +2 -2
  100. package/dist/esm/components/Alert/index.js.map +1 -1
  101. package/dist/esm/components/Assets/Logos/Polaris.js +18 -0
  102. package/dist/esm/components/Assets/Logos/Polaris.js.map +1 -0
  103. package/dist/esm/components/Assets/Logos/system/LogosDark.js +2 -0
  104. package/dist/esm/components/Assets/Logos/system/LogosDark.js.map +1 -1
  105. package/dist/esm/components/Assets/Logos/system/LogosLight.js +2 -0
  106. package/dist/esm/components/Assets/Logos/system/LogosLight.js.map +1 -1
  107. package/dist/esm/components/BigStat/BigStat.css +77 -0
  108. package/dist/esm/components/BigStat/BigStat.module.css.js +18 -0
  109. package/dist/esm/components/BigStat/BigStat.module.css.js.map +1 -0
  110. package/dist/esm/components/BigStat/index.js +60 -52
  111. package/dist/esm/components/BigStat/index.js.map +1 -1
  112. package/dist/esm/components/ButtonGroup/index.js +1 -1
  113. package/dist/esm/components/ButtonGroup/index.js.map +1 -1
  114. package/dist/esm/components/CardPromotion/index.js +1 -1
  115. package/dist/esm/components/CardPromotion/index.js.map +1 -1
  116. package/dist/esm/components/CardSecondary/CardSecondary.css +99 -0
  117. package/dist/esm/components/CardSecondary/CardSecondary.module.css.js +25 -0
  118. package/dist/esm/components/CardSecondary/CardSecondary.module.css.js.map +1 -0
  119. package/dist/esm/components/CardSecondary/index.js +35 -84
  120. package/dist/esm/components/CardSecondary/index.js.map +1 -1
  121. package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.css +20 -0
  122. package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.module.css.js +9 -0
  123. package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.module.css.js.map +1 -0
  124. package/dist/esm/components/ConfirmationDialog/index.js +6 -11
  125. package/dist/esm/components/ConfirmationDialog/index.js.map +1 -1
  126. package/dist/esm/components/ContextMenu/ContextMenu.css +28 -0
  127. package/dist/esm/components/ContextMenu/ContextMenu.module.css.js +6 -0
  128. package/dist/esm/components/ContextMenu/ContextMenu.module.css.js.map +1 -0
  129. package/dist/esm/components/ContextMenu/index.js +28 -30
  130. package/dist/esm/components/ContextMenu/index.js.map +1 -1
  131. package/dist/esm/components/CrossButton/index.js +5 -1
  132. package/dist/esm/components/CrossButton/index.js.map +1 -1
  133. package/dist/esm/components/DatePicker/Common.js +1 -1
  134. package/dist/esm/components/DatePicker/Common.js.map +1 -1
  135. package/dist/esm/components/Dropdown/Dropdown.css +13 -0
  136. package/dist/esm/components/Dropdown/Dropdown.module.css.js +7 -0
  137. package/dist/esm/components/Dropdown/Dropdown.module.css.js.map +1 -0
  138. package/dist/esm/components/Dropdown/index.js +19 -13
  139. package/dist/esm/components/Dropdown/index.js.map +1 -1
  140. package/dist/esm/components/FileTabs/index.js +1 -1
  141. package/dist/esm/components/FileTabs/index.js.map +1 -1
  142. package/dist/esm/components/Flyout/Flyout.css +231 -0
  143. package/dist/esm/components/Flyout/Flyout.module.css.js +62 -0
  144. package/dist/esm/components/Flyout/Flyout.module.css.js.map +1 -0
  145. package/dist/esm/components/Flyout/index.js +149 -127
  146. package/dist/esm/components/Flyout/index.js.map +1 -1
  147. package/dist/esm/components/GenericMenu/GenericMenu.css +176 -0
  148. package/dist/esm/components/GenericMenu/GenericMenu.module.css.js +18 -0
  149. package/dist/esm/components/GenericMenu/GenericMenu.module.css.js.map +1 -0
  150. package/dist/esm/components/GenericMenu/index.js +93 -99
  151. package/dist/esm/components/GenericMenu/index.js.map +1 -1
  152. package/dist/esm/components/HoverCard/index.js +1 -1
  153. package/dist/esm/components/HoverCard/index.js.map +1 -1
  154. package/dist/esm/components/IconButton/index.js +2 -1
  155. package/dist/esm/components/IconButton/index.js.map +1 -1
  156. package/dist/esm/components/InputWrapper/InputWrapper.css +221 -0
  157. package/dist/esm/components/InputWrapper/InputWrapper.module.css.js +27 -0
  158. package/dist/esm/components/InputWrapper/InputWrapper.module.css.js.map +1 -0
  159. package/dist/esm/components/InputWrapper/index.js +84 -185
  160. package/dist/esm/components/InputWrapper/index.js.map +1 -1
  161. package/dist/esm/components/Popover/Popover.css +12 -0
  162. package/dist/esm/components/Popover/Popover.module.css.js +7 -0
  163. package/dist/esm/components/Popover/Popover.module.css.js.map +1 -0
  164. package/dist/esm/components/Popover/index.js +26 -19
  165. package/dist/esm/components/Popover/index.js.map +1 -1
  166. package/dist/esm/components/RadioGroup/RadioGroup.css +99 -0
  167. package/dist/esm/components/RadioGroup/RadioGroup.module.css.js +13 -0
  168. package/dist/esm/components/RadioGroup/RadioGroup.module.css.js.map +1 -0
  169. package/dist/esm/components/RadioGroup/index.js +28 -77
  170. package/dist/esm/components/RadioGroup/index.js.map +1 -1
  171. package/dist/esm/components/Select/common/InternalSelect.js +1 -1
  172. package/dist/esm/components/Select/common/InternalSelect.js.map +1 -1
  173. package/dist/esm/components/SplitButton/index.js +2 -1
  174. package/dist/esm/components/SplitButton/index.js.map +1 -1
  175. package/dist/esm/components/Table/Table.css +376 -0
  176. package/dist/esm/components/Table/Table.module.css.js +63 -0
  177. package/dist/esm/components/Table/Table.module.css.js.map +1 -0
  178. package/dist/esm/components/Table/index.js +132 -214
  179. package/dist/esm/components/Table/index.js.map +1 -1
  180. package/dist/esm/components/Toast/Toast.css +142 -0
  181. package/dist/esm/components/Toast/Toast.module.css.js +26 -0
  182. package/dist/esm/components/Toast/Toast.module.css.js.map +1 -0
  183. package/dist/esm/components/Toast/index.js +43 -96
  184. package/dist/esm/components/Toast/index.js.map +1 -1
  185. package/dist/esm/components/Tooltip/Tooltip.css +17 -0
  186. package/dist/esm/components/Tooltip/Tooltip.module.css.js +9 -0
  187. package/dist/esm/components/Tooltip/Tooltip.module.css.js.map +1 -0
  188. package/dist/esm/components/Tooltip/index.js +12 -24
  189. package/dist/esm/components/Tooltip/index.js.map +1 -1
  190. package/dist/esm/components/VerticalStepper/VerticalStepper.css +302 -0
  191. package/dist/esm/components/VerticalStepper/VerticalStepper.module.css.js +55 -0
  192. package/dist/esm/components/VerticalStepper/VerticalStepper.module.css.js.map +1 -0
  193. package/dist/esm/components/VerticalStepper/index.js +85 -110
  194. package/dist/esm/components/VerticalStepper/index.js.map +1 -1
  195. package/dist/types/components/Assets/Logos/Polaris.d.ts +3 -0
  196. package/dist/types/components/Assets/Logos/system/types.d.ts +1 -1
  197. package/dist/types/components/BigStat/BigStat.d.ts +1 -1
  198. package/dist/types/components/CardSecondary/CardSecondary.d.ts +1 -1
  199. package/dist/types/components/ConfirmationDialog/ConfirmationDialog.d.ts +1 -1
  200. package/dist/types/components/CrossButton/CrossButton.d.ts +6 -2
  201. package/dist/types/components/Flyout/Flyout.d.ts +8 -6
  202. package/dist/types/components/Flyout/Flyout.types.d.ts +3 -0
  203. package/dist/types/components/GenericMenu/GenericMenu.d.ts +29 -12
  204. package/dist/types/components/IconButton/IconButton.types.d.ts +3 -0
  205. package/dist/types/components/InputWrapper/InputWrapper.d.ts +17 -13
  206. package/dist/types/components/RadioGroup/RadioGroup.d.ts +2 -2
  207. package/dist/types/components/SplitButton/SplitButton.d.ts +1 -1
  208. package/dist/types/components/SplitButton/SplitButton.types.d.ts +3 -0
  209. package/dist/types/components/Toast/Toast.d.ts +1 -1
  210. package/dist/types/components/Tooltip/Tooltip.d.ts +1 -1
  211. package/dist/types/components/VerticalStepper/VerticalStepper.d.ts +2 -2
  212. package/package.json +1 -1
@@ -1,3 +1,4 @@
1
+ require("./Popover.css");
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
@@ -6,10 +7,14 @@ const jsxRuntime = require('react/jsx-runtime');
6
7
  const RadixPopover = require('@radix-ui/react-popover');
7
8
  const GenericMenu = require('../GenericMenu/index.cjs');
8
9
  const styledComponents = require('styled-components');
10
+ const react = require('react');
11
+ const cva = require('../../lib/cva.cjs');
9
12
  const EmptyButton = require('../EmptyButton/index.cjs');
10
13
  const PopoverArrow = require('../Assets/Icons/Popover-Arrow.cjs');
11
14
  const PortalContext = require('../../providers/PortalContext.cjs');
15
+ const Popover_module = require('./Popover.module.css.cjs');
12
16
  const Icon = require('../Icon/index.cjs');
17
+ const classVarianceAuthority = require('class-variance-authority');
13
18
 
14
19
  function _interopNamespace(e) {
15
20
  if (e && e.__esModule) return e;
@@ -52,25 +57,27 @@ const PopoverTrigger = ({
52
57
  };
53
58
  PopoverTrigger.displayName = "PopoverTrigger";
54
59
  Popover.Trigger = PopoverTrigger;
55
- const MenuPanel = styledComponents.styled(GenericMenu.GenericMenuPanel).withConfig({
56
- componentId: "sc-1dii14g-1"
57
- })(["display:block;padding:", " ", ";background-color:", ";border:1px solid ", ";border-radius:", ";box-shadow:", ";", ";"], ({
58
- theme
59
- }) => theme.click.popover.space.y, ({
60
- theme
61
- }) => theme.click.popover.space.x, ({
62
- theme
63
- }) => theme.click.popover.color.panel.background.default, ({
64
- theme
65
- }) => theme.click.popover.color.panel.stroke.default, ({
66
- theme
67
- }) => theme.click.popover.radii.all, ({
68
- theme
69
- }) => theme.click.popover.shadow.default, ({
70
- $showClose
71
- }) => $showClose ? "padding-top: 1rem;" : "");
60
+ const menuPanelVariants = classVarianceAuthority.cva(Popover_module.default["menu-panel"], {
61
+ variants: {
62
+ showClose: {
63
+ true: Popover_module.default["menu-panel_show-close"],
64
+ false: ""
65
+ }
66
+ },
67
+ defaultVariants: {
68
+ showClose: false
69
+ }
70
+ });
71
+ const _MenuPanel = ({
72
+ showClose,
73
+ className,
74
+ ...props
75
+ }, ref) => /* @__PURE__ */ jsxRuntime.jsx(GenericMenu.GenericMenuPanel, { ref, ...props, className: cva.cn(menuPanelVariants({
76
+ showClose
77
+ }), className) });
78
+ const MenuPanel = react.forwardRef(_MenuPanel);
72
79
  const CloseButton = styledComponents.styled(EmptyButton.EmptyButton).withConfig({
73
- componentId: "sc-1dii14g-2"
80
+ componentId: "sc-1dii14g-1"
74
81
  })(["position:absolute;top:", ";right:", ";width:", ";height:", ";"], ({
75
82
  theme
76
83
  }) => theme.click.popover.space.y, ({
@@ -89,7 +96,7 @@ const PopoverContent = ({
89
96
  ...props
90
97
  }) => {
91
98
  const portalContainer = PortalContext.useResolvedPortalContainer(container);
92
- return /* @__PURE__ */ jsxRuntime.jsx(RadixPopover__namespace.Portal, { forceMount, container: portalContainer, children: /* @__PURE__ */ jsxRuntime.jsxs(MenuPanel, { as: RadixPopover__namespace.Content, $type: "popover", $showClose: showClose, $showArrow: showArrow, sideOffset: 4, ...props, children: [
99
+ return /* @__PURE__ */ jsxRuntime.jsx(RadixPopover__namespace.Portal, { forceMount, container: portalContainer, children: /* @__PURE__ */ jsxRuntime.jsxs(MenuPanel, { as: RadixPopover__namespace.Content, type: "popover", showClose, showArrow, sideOffset: 4, ...props, children: [
93
100
  showClose && /* @__PURE__ */ jsxRuntime.jsx(CloseButton, { as: RadixPopover__namespace.Close, asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { name: "cross" }) }),
94
101
  showArrow && /* @__PURE__ */ jsxRuntime.jsx(GenericMenu.Arrow, { asChild: true, as: RadixPopover__namespace.Arrow, width: 20, height: 10, children: /* @__PURE__ */ jsxRuntime.jsx(PopoverArrow.default, {}) }),
95
102
  children
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import * as RadixPopover from '@radix-ui/react-popover';\nimport { Arrow, GenericMenuPanel } from '@/components/GenericMenu';\nimport { styled } from 'styled-components';\nimport { ReactNode } from 'react';\nimport { Icon } from '@/components/Icon';\nimport { EmptyButton } from '@/components/EmptyButton';\nimport Popover_Arrow from '@/components/Assets/Icons/Popover-Arrow';\nimport { useResolvedPortalContainer } from '@/providers/PortalContext';\n\nexport const Popover = ({ children, ...props }: RadixPopover.PopoverProps) => {\n return <RadixPopover.Root {...props}>{children}</RadixPopover.Root>;\n};\n\nconst Trigger = styled(RadixPopover.Trigger)`\n background: inherit;\n border: none;\n color: inherit;\n cursor: pointer;\n font: inherit;\n width: fit-content;\n`;\ninterface TriggerProps extends RadixPopover.PopoverTriggerProps {\n anchor?: ReactNode;\n}\n\nconst PopoverTrigger = ({ anchor, children, ...props }: TriggerProps) => {\n return (\n <>\n <Trigger\n asChild\n {...props}\n >\n <div>{children}</div>\n </Trigger>\n {anchor && <RadixPopover.Anchor asChild>{anchor}</RadixPopover.Anchor>}\n </>\n );\n};\nPopoverTrigger.displayName = 'PopoverTrigger';\nPopover.Trigger = PopoverTrigger;\n\ninterface PopoverContentProps extends RadixPopover.PopoverContentProps {\n /** Whether to show an arrow pointing to the trigger element */\n showArrow?: boolean;\n /** Whether to show a close button in the popover */\n showClose?: boolean;\n /** Forces the popover to mount in the DOM even when closed */\n forceMount?: true;\n /** Custom container element for the popover portal */\n container?: HTMLElement | null;\n}\n\nconst MenuPanel = styled(GenericMenuPanel)<{ $showClose?: boolean }>`\n display: block;\n padding: ${({ theme }) => theme.click.popover.space.y}\n ${({ theme }) => theme.click.popover.space.x};\n background-color: ${({ theme }) => theme.click.popover.color.panel.background.default};\n border: 1px solid ${({ theme }) => theme.click.popover.color.panel.stroke.default};\n border-radius: ${({ theme }) => theme.click.popover.radii.all};\n box-shadow: ${({ theme }) => theme.click.popover.shadow.default};\n\n ${({ $showClose }) => ($showClose ? 'padding-top: 1rem;' : '')};\n`;\n\nconst CloseButton = styled(EmptyButton)`\n position: absolute;\n top: ${({ theme }) => theme.click.popover.space.y};\n right: ${({ theme }) => theme.click.popover.space.x};\n width: ${({ theme }) => theme.click.popover.icon.size.width};\n height: ${({ theme }) => theme.click.popover.icon.size.height};\n`;\n\nconst PopoverContent = ({\n children,\n showArrow,\n showClose,\n forceMount,\n container,\n ...props\n}: PopoverContentProps) => {\n const portalContainer = useResolvedPortalContainer(container);\n\n return (\n <RadixPopover.Portal\n forceMount={forceMount}\n container={portalContainer}\n >\n <MenuPanel\n as={RadixPopover.Content}\n $type=\"popover\"\n $showClose={showClose}\n $showArrow={showArrow}\n sideOffset={4}\n {...props}\n >\n {showClose && (\n <CloseButton\n as={RadixPopover.Close}\n asChild\n >\n <Icon name=\"cross\" />\n </CloseButton>\n )}\n {showArrow && (\n <Arrow\n asChild\n as={RadixPopover.Arrow}\n width={20}\n height={10}\n >\n <Popover_Arrow />\n </Arrow>\n )}\n {children}\n </MenuPanel>\n </RadixPopover.Portal>\n );\n};\nPopoverContent.displayName = 'PopoverContent';\nPopover.Content = PopoverContent;\n"],"names":["Popover","children","props","RadixPopover","Trigger","styled","withConfig","componentId","PopoverTrigger","anchor","jsxs","Fragment","jsx","displayName","MenuPanel","GenericMenuPanel","theme","click","popover","space","y","x","color","panel","background","default","stroke","radii","all","shadow","$showClose","CloseButton","EmptyButton","icon","size","width","height","PopoverContent","showArrow","showClose","forceMount","container","portalContainer","useResolvedPortalContainer","Content","Close","Icon","Arrow","Popover_Arrow"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/Popover/Popover.tsx"],"sourcesContent":["import * as RadixPopover from '@radix-ui/react-popover';\nimport { Arrow, GenericMenuPanel } from '@/components/GenericMenu';\nimport { styled } from 'styled-components';\nimport {\n ComponentProps,\n ComponentPropsWithRef,\n ElementType,\n ReactNode,\n forwardRef,\n} from 'react';\nimport { cn, cva } from '@/lib/cva';\nimport { Icon } from '@/components/Icon';\nimport { EmptyButton } from '@/components/EmptyButton';\nimport Popover_Arrow from '@/components/Assets/Icons/Popover-Arrow';\nimport { useResolvedPortalContainer } from '@/providers/PortalContext';\nimport styles from './Popover.module.css';\n\nexport const Popover = ({ children, ...props }: RadixPopover.PopoverProps) => {\n return <RadixPopover.Root {...props}>{children}</RadixPopover.Root>;\n};\n\nconst Trigger = styled(RadixPopover.Trigger)`\n background: inherit;\n border: none;\n color: inherit;\n cursor: pointer;\n font: inherit;\n width: fit-content;\n`;\ninterface TriggerProps extends RadixPopover.PopoverTriggerProps {\n anchor?: ReactNode;\n}\n\nconst PopoverTrigger = ({ anchor, children, ...props }: TriggerProps) => {\n return (\n <>\n <Trigger\n asChild\n {...props}\n >\n <div>{children}</div>\n </Trigger>\n {anchor && <RadixPopover.Anchor asChild>{anchor}</RadixPopover.Anchor>}\n </>\n );\n};\nPopoverTrigger.displayName = 'PopoverTrigger';\nPopover.Trigger = PopoverTrigger;\n\ninterface PopoverContentProps extends RadixPopover.PopoverContentProps {\n /** Whether to show an arrow pointing to the trigger element */\n showArrow?: boolean;\n /** Whether to show a close button in the popover */\n showClose?: boolean;\n /** Forces the popover to mount in the DOM even when closed */\n forceMount?: true;\n /** Custom container element for the popover portal */\n container?: HTMLElement | null;\n}\n\nconst menuPanelVariants = cva(styles['menu-panel'], {\n variants: {\n showClose: {\n true: styles['menu-panel_show-close'],\n false: '',\n },\n },\n defaultVariants: {\n showClose: false,\n },\n});\n\ntype MenuPanelComponent = <T extends ElementType = 'div'>(\n props: ComponentProps<typeof GenericMenuPanel<T>> & { showClose?: boolean }\n) => ReactNode;\n\nconst _MenuPanel = <T extends ElementType = 'div'>(\n {\n showClose,\n className,\n ...props\n }: ComponentProps<typeof GenericMenuPanel<T>> & { showClose?: boolean },\n ref: ComponentPropsWithRef<T>['ref']\n) => (\n <GenericMenuPanel\n ref={ref}\n {...(props as ComponentProps<typeof GenericMenuPanel>)}\n className={cn(menuPanelVariants({ showClose }), className)}\n />\n);\n\nconst MenuPanel: MenuPanelComponent = forwardRef(_MenuPanel);\n\nconst CloseButton = styled(EmptyButton)`\n position: absolute;\n top: ${({ theme }) => theme.click.popover.space.y};\n right: ${({ theme }) => theme.click.popover.space.x};\n width: ${({ theme }) => theme.click.popover.icon.size.width};\n height: ${({ theme }) => theme.click.popover.icon.size.height};\n`;\n\nconst PopoverContent = ({\n children,\n showArrow,\n showClose,\n forceMount,\n container,\n ...props\n}: PopoverContentProps) => {\n const portalContainer = useResolvedPortalContainer(container);\n\n return (\n <RadixPopover.Portal\n forceMount={forceMount}\n container={portalContainer}\n >\n <MenuPanel\n as={RadixPopover.Content}\n type=\"popover\"\n showClose={showClose}\n showArrow={showArrow}\n sideOffset={4}\n {...props}\n >\n {showClose && (\n <CloseButton\n as={RadixPopover.Close}\n asChild\n >\n <Icon name=\"cross\" />\n </CloseButton>\n )}\n {showArrow && (\n <Arrow\n asChild\n as={RadixPopover.Arrow}\n width={20}\n height={10}\n >\n <Popover_Arrow />\n </Arrow>\n )}\n {children}\n </MenuPanel>\n </RadixPopover.Portal>\n );\n};\nPopoverContent.displayName = 'PopoverContent';\nPopover.Content = PopoverContent;\n"],"names":["Popover","children","props","RadixPopover","Trigger","styled","withConfig","componentId","PopoverTrigger","anchor","jsxs","Fragment","jsx","displayName","menuPanelVariants","cva","styles","variants","showClose","true","false","defaultVariants","_MenuPanel","className","ref","GenericMenuPanel","cn","MenuPanel","forwardRef","CloseButton","EmptyButton","theme","click","popover","space","y","x","icon","size","width","height","PopoverContent","showArrow","forceMount","container","portalContainer","useResolvedPortalContainer","Content","Close","Icon","Arrow","Popover_Arrow"],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ .radio-group__RXgmX {
2
+ display: flex;
3
+ flex-wrap: wrap;
4
+ gap: var(--click-checkbox-space-gap);
5
+ }
6
+
7
+ .radio-group_inline__Bn4-S {
8
+ flex-direction: row;
9
+ }
10
+
11
+ .radio-group_inline_false__OXI3T {
12
+ flex-direction: column;
13
+ }
14
+
15
+ .radio-group_error__cijEQ label {
16
+ color: var(--click-field-color-label-error);
17
+ }
18
+
19
+ /* The item class is applied alongside FormRoot's styled-components class.
20
+ The .item.item double-class boost matches the specificity behavior of the
21
+ original `styled(FormRoot)` chain so these overrides reliably beat FormRoot's
22
+ own declarations regardless of stylesheet insertion order between CSS Modules
23
+ and the runtime-injected styled-components. */
24
+ .item__W9-K2.item__W9-K2 {
25
+ display: flex;
26
+ width: auto;
27
+ padding: var(--click-checkbox-space-all);
28
+ align-items: center;
29
+ gap: var(--click-checkbox-space-gap);
30
+ }
31
+
32
+ .radio-input__KMmKv {
33
+ display: flex;
34
+ width: 1rem;
35
+ height: 1rem;
36
+ justify-content: center;
37
+ align-items: center;
38
+ border: 1px solid var(--click-radio-color-stroke-default);
39
+ border-radius: var(--click-radio-radii-all);
40
+ background: var(--click-radio-color-background-default);
41
+ outline: none;
42
+ cursor: pointer;
43
+ }
44
+
45
+ .radio-input__KMmKv:hover {
46
+ background: var(--click-radio-color-background-hover);
47
+ }
48
+
49
+ .radio-input__KMmKv[data-state='checked'] {
50
+ border-color: var(--click-radio-color-stroke-active);
51
+ background: var(--click-radio-color-background-active);
52
+ }
53
+
54
+ /* stylelint-disable no-descending-specificity -- disabled state intentionally
55
+ defined after the checked state to mirror the source cascade order; matches
56
+ the styled-components rule which used a nested `&[data-disabled]` block placed
57
+ after `&[data-state="checked"]`. */
58
+ .radio-input__KMmKv[data-disabled] {
59
+ border-color: var(--click-radio-color-stroke-disabled);
60
+ background: var(--click-radio-color-background-disabled);
61
+ }
62
+
63
+ .radio-indicator__rrk6W {
64
+ background: var(--click-radio-color-background-default);
65
+ }
66
+
67
+ .radio-indicator__rrk6W::after {
68
+ content: '';
69
+ display: block;
70
+ width: 6px;
71
+ height: 6px;
72
+ border-radius: 50%;
73
+ background-color: var(--click-radio-color-indicator-default);
74
+ }
75
+
76
+ .radio-indicator__rrk6W::after:hover {
77
+ background: var(--click-radio-color-indicator-hover);
78
+ }
79
+
80
+ .radio-indicator__rrk6W[data-state='checked'] {
81
+ background: var(--click-radio-color-background-active);
82
+ }
83
+
84
+ .radio-indicator__rrk6W[data-state='checked']::after {
85
+ background: var(--click-radio-color-indicator-active);
86
+ }
87
+
88
+ .radio-indicator__rrk6W:hover {
89
+ background: var(--click-radio-color-background-hover);
90
+ }
91
+
92
+ .radio-indicator__rrk6W[data-disabled] {
93
+ background: var(--click-radio-color-background-disabled);
94
+ }
95
+
96
+ .radio-indicator__rrk6W[data-disabled]::after {
97
+ background: var(--click-radio-color-indicator-disabled);
98
+ }
99
+ /* stylelint-enable no-descending-specificity */
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const item = "item__W9-K2";
6
+ const styles = {
7
+ "radio-group": "radio-group__RXgmX",
8
+ "radio-group_inline": "radio-group_inline__Bn4-S",
9
+ "radio-group_inline_false": "radio-group_inline_false__OXI3T",
10
+ "radio-group_error": "radio-group_error__cijEQ",
11
+ item: item,
12
+ "radio-input": "radio-input__KMmKv",
13
+ "radio-indicator": "radio-indicator__rrk6W"
14
+ };
15
+
16
+ exports.default = styles;
17
+ exports.item = item;
18
+ //# sourceMappingURL=RadioGroup.module.css.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioGroup.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
@@ -1,3 +1,4 @@
1
+ require("./RadioGroup.css");
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
@@ -5,12 +6,14 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
6
  const jsxRuntime = require('react/jsx-runtime');
6
7
  const RadixRadioGroup = require('@radix-ui/react-radio-group');
7
8
  const react = require('react');
8
- const styledComponents = require('styled-components');
9
+ const cva = require('../../lib/cva.cjs');
10
+ const RadioGroup_module = require('./RadioGroup.module.css.cjs');
9
11
  const FormRoot = require('../FormContainer/FormRoot.cjs');
10
12
  const FormElementContainer = require('../FormContainer/FormElementContainer.cjs');
11
13
  const Error = require('../FormContainer/Error.cjs');
12
14
  const Label = require('../Label/index.cjs');
13
15
  const GenericLabel = require('../GenericLabel/index.cjs');
16
+ const classVarianceAuthority = require('class-variance-authority');
14
17
 
15
18
  function _interopNamespace(e) {
16
19
  if (e && e.__esModule) return e;
@@ -32,16 +35,22 @@ function _interopNamespace(e) {
32
35
 
33
36
  const RadixRadioGroup__namespace = /*#__PURE__*/_interopNamespace(RadixRadioGroup);
34
37
 
35
- const RadioGroupRoot = styledComponents.styled(RadixRadioGroup__namespace.Root).withConfig({
36
- componentId: "sc-p6cydr-0"
37
- })(["display:flex;flex-wrap:wrap;gap:", ";flex-direction:", ";label{", "}"], ({
38
- theme
39
- }) => theme.click.checkbox.space.gap, ({
40
- $inline = true
41
- }) => $inline === true ? "row" : "column", ({
42
- $error,
43
- theme
44
- }) => $error ? `color: ${theme.click.field.color.label.error};` : "");
38
+ const radioGroupVariants = classVarianceAuthority.cva(RadioGroup_module.default["radio-group"], {
39
+ variants: {
40
+ inline: {
41
+ true: RadioGroup_module.default["radio-group_inline"],
42
+ false: RadioGroup_module.default["radio-group_inline_false"]
43
+ },
44
+ error: {
45
+ true: RadioGroup_module.default["radio-group_error"],
46
+ false: ""
47
+ }
48
+ },
49
+ defaultVariants: {
50
+ inline: true,
51
+ error: false
52
+ }
53
+ });
45
54
  const RadioGroup = ({
46
55
  children,
47
56
  inline,
@@ -52,11 +61,15 @@ const RadioGroup = ({
52
61
  label,
53
62
  disabled,
54
63
  id,
64
+ className,
55
65
  ...props
56
66
  }) => {
57
67
  return /* @__PURE__ */ jsxRuntime.jsxs(FormRoot.FormRoot, { $orientation: orientation, $dir: dir, $addLabelPadding: true, children: [
58
68
  /* @__PURE__ */ jsxRuntime.jsxs(FormElementContainer.FormElementContainer, { children: [
59
- /* @__PURE__ */ jsxRuntime.jsx(RadioGroupRoot, { orientation: inline ? "horizontal" : "vertical", disabled, id, $error: !!error, dir: itemDir, $inline: inline, ...props, children }),
69
+ /* @__PURE__ */ jsxRuntime.jsx(RadixRadioGroup__namespace.Root, { orientation: inline ? "horizontal" : "vertical", disabled, id, dir: itemDir, ...props, className: cva.cn(radioGroupVariants({
70
+ inline: inline === false ? false : true,
71
+ error: !!error
72
+ }), className), children }),
60
73
  !!error && error !== true && /* @__PURE__ */ jsxRuntime.jsx(Error.Error, { children: error })
61
74
  ] }),
62
75
  label && /* @__PURE__ */ jsxRuntime.jsx(Label.Label, { htmlFor: id, disabled, error: !!error, children: label })
@@ -68,79 +81,17 @@ const RadioGroupItem = ({
68
81
  value,
69
82
  disabled,
70
83
  required,
84
+ className,
71
85
  ...props
72
86
  }) => {
73
87
  const defaultId = react.useId();
74
- return /* @__PURE__ */ jsxRuntime.jsxs(Wrapper, { $orientation: "horizontal", $dir: "end", $addLabelPadding: false, ...props, children: [
75
- /* @__PURE__ */ jsxRuntime.jsx(RadioInput, { value, id: id ?? defaultId, disabled, required, "aria-label": `${label}`, children: /* @__PURE__ */ jsxRuntime.jsx(RadioGroupIndicator, {}) }),
88
+ return /* @__PURE__ */ jsxRuntime.jsxs(FormRoot.FormRoot, { $orientation: "horizontal", $dir: "end", $addLabelPadding: false, ...props, className: cva.cn(RadioGroup_module.default.item, className), children: [
89
+ /* @__PURE__ */ jsxRuntime.jsx(RadixRadioGroup__namespace.Item, { value, id: id ?? defaultId, disabled, required, "aria-label": `${label}`, className: RadioGroup_module.default["radio-input"], children: /* @__PURE__ */ jsxRuntime.jsx(RadixRadioGroup__namespace.Indicator, { className: RadioGroup_module.default["radio-indicator"] }) }),
76
90
  label && /* @__PURE__ */ jsxRuntime.jsx(GenericLabel.GenericLabel, { htmlFor: id ?? defaultId, disabled, children: label })
77
91
  ] });
78
92
  };
79
93
  RadioGroupItem.displayName = "RadioGroupItem";
80
94
  RadioGroup.Item = RadioGroupItem;
81
- const Wrapper = styledComponents.styled(FormRoot.FormRoot).withConfig({
82
- componentId: "sc-p6cydr-1"
83
- })(["padding:", ";display:flex;align-items:center;gap:", ";width:auto;"], ({
84
- theme
85
- }) => theme.click.checkbox.space.all, ({
86
- theme
87
- }) => theme.click.checkbox.space.gap);
88
- const RadioInput = styledComponents.styled(RadixRadioGroup__namespace.Item).withConfig({
89
- componentId: "sc-p6cydr-2"
90
- })(["display:flex;align-items:center;justify-content:center;outline:none;cursor:pointer;", ";"], ({
91
- theme
92
- }) => `
93
- border-radius: ${theme.click.radio.radii.all};
94
- width: 1rem;
95
- height: 1rem;
96
- background: ${theme.click.radio.color.background.default};
97
- border: 1px solid ${theme.click.radio.color.stroke.default};
98
-
99
- &:hover {
100
- background: ${theme.click.radio.color.background.hover};
101
- }
102
- &[data-state="checked"] {
103
- border-color: ${theme.click.radio.color.stroke.active};
104
- background: ${theme.click.radio.color.background.active};
105
- }
106
- &[data-disabled] {
107
- background: ${theme.click.radio.color.background.disabled};
108
- border-color: ${theme.click.radio.color.stroke.disabled};
109
- }
110
- `);
111
- const RadioGroupIndicator = styledComponents.styled(RadixRadioGroup__namespace.Indicator).withConfig({
112
- componentId: "sc-p6cydr-3"
113
- })(["", ""], ({
114
- theme
115
- }) => `
116
- background: ${theme.click.radio.color.background.default};
117
- &::after {
118
- content: '';
119
- display: block;
120
- width: 6px;
121
- height: 6px;
122
- border-radius: 50%;
123
- background-color: ${theme.click.radio.color.indicator.default};
124
- &:hover {
125
- background: ${theme.click.radio.color.indicator.hover};
126
- }
127
- }
128
- &[data-state="checked"] {
129
- background: ${theme.click.radio.color.background.active};
130
- &::after {
131
- background: ${theme.click.radio.color.indicator.active};
132
- }
133
- }
134
- &:hover {
135
- background: ${theme.click.radio.color.background.hover};
136
- }
137
- &[data-disabled] {
138
- background: ${theme.click.radio.color.background.disabled};
139
- &::after {
140
- background: ${theme.click.radio.color.indicator.disabled};
141
- }
142
- }
143
- `);
144
95
 
145
96
  exports.RadioGroup = RadioGroup;
146
97
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import * as RadixRadioGroup from '@radix-ui/react-radio-group';\nimport { HTMLAttributes, ReactNode, useId } from 'react';\nimport { styled } from 'styled-components';\nimport { GenericLabel } from '@/components/GenericLabel';\nimport { Label } from '@/components/Label';\nimport { Error, FormElementContainer, FormRoot } from '@/components/FormContainer';\n\nexport interface RadioGroupProps extends Omit<RadixRadioGroup.RadioGroupProps, 'dir'> {\n /** Whether to display radio items inline (horizontally) */\n inline?: boolean;\n /** The orientation of the label relative to the radio group */\n orientation?: 'vertical' | 'horizontal';\n /** The direction/position of the label - start places label before, end places label after */\n dir?: 'start' | 'end';\n /** Text direction for radio items - ltr or rtl */\n itemDir?: 'rtl' | 'ltr';\n /** The label text displayed next to the radio group */\n label?: ReactNode;\n /** Error message to display below the radio group */\n error?: ReactNode;\n}\n\nconst RadioGroupRoot = styled(RadixRadioGroup.Root)<{\n $error: boolean;\n $inline?: boolean;\n}>`\n display: flex;\n flex-wrap: wrap;\n gap: ${({ theme }) => theme.click.checkbox.space.gap};\n flex-direction: ${({ $inline = true }) => ($inline === true ? 'row' : 'column')};\n label {\n ${({ $error, theme }) =>\n $error ? `color: ${theme.click.field.color.label.error};` : ''}\n }\n`;\n\nexport const RadioGroup = ({\n children,\n inline,\n orientation,\n dir,\n error,\n itemDir,\n label,\n disabled,\n id,\n ...props\n}: RadioGroupProps) => {\n return (\n <FormRoot\n $orientation={orientation}\n $dir={dir}\n $addLabelPadding\n >\n <FormElementContainer>\n <RadioGroupRoot\n orientation={inline ? 'horizontal' : 'vertical'}\n disabled={disabled}\n id={id}\n $error={!!error}\n dir={itemDir}\n $inline={inline}\n {...props}\n >\n {children}\n </RadioGroupRoot>\n {!!error && error !== true && <Error>{error}</Error>}\n </FormElementContainer>\n {label && (\n <Label\n htmlFor={id}\n disabled={disabled}\n error={!!error}\n >\n {label}\n </Label>\n )}\n </FormRoot>\n );\n};\n\ninterface RadioGroupInputProps extends RadixRadioGroup.RadioGroupItemProps {\n /** The label text displayed next to the radio item */\n label?: ReactNode;\n}\n\nexport type RadioGroupItemProps = RadioGroupInputProps & HTMLAttributes<HTMLDivElement>;\n\nconst RadioGroupItem = ({\n id,\n label,\n value,\n disabled,\n required,\n ...props\n}: RadioGroupItemProps) => {\n const defaultId = useId();\n return (\n <Wrapper\n $orientation=\"horizontal\"\n $dir=\"end\"\n $addLabelPadding={false}\n {...props}\n >\n <RadioInput\n value={value}\n id={id ?? defaultId}\n disabled={disabled}\n required={required}\n aria-label={`${label}`}\n >\n <RadioGroupIndicator />\n </RadioInput>\n {label && (\n <GenericLabel\n htmlFor={id ?? defaultId}\n disabled={disabled}\n >\n {label}\n </GenericLabel>\n )}\n </Wrapper>\n );\n};\n\nRadioGroupItem.displayName = 'RadioGroupItem';\nRadioGroup.Item = RadioGroupItem;\n\nconst Wrapper = styled(FormRoot)`\n padding: ${({ theme }) => theme.click.checkbox.space.all};\n\n display: flex;\n align-items: center;\n gap: ${({ theme }) => theme.click.checkbox.space.gap};\n width: auto;\n`;\n\nconst RadioInput = styled(RadixRadioGroup.Item)`\n display: flex;\n align-items: center;\n justify-content: center;\n outline: none;\n cursor: pointer;\n ${({ theme }) => `\n border-radius: ${theme.click.radio.radii.all};\n width: 1rem;\n height: 1rem;\n background: ${theme.click.radio.color.background.default};\n border: 1px solid ${theme.click.radio.color.stroke.default};\n\n &:hover {\n background: ${theme.click.radio.color.background.hover};\n }\n &[data-state=\"checked\"] {\n border-color: ${theme.click.radio.color.stroke.active};\n background: ${theme.click.radio.color.background.active};\n }\n &[data-disabled] {\n background: ${theme.click.radio.color.background.disabled};\n border-color: ${theme.click.radio.color.stroke.disabled};\n }\n `};\n`;\n\nconst RadioGroupIndicator = styled(RadixRadioGroup.Indicator)`\n ${({ theme }) => `\n background: ${theme.click.radio.color.background.default};\n &::after {\n content: '';\n display: block;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background-color: ${theme.click.radio.color.indicator.default};\n &:hover {\n background: ${theme.click.radio.color.indicator.hover};\n }\n }\n &[data-state=\"checked\"] {\n background: ${theme.click.radio.color.background.active};\n &::after {\n background: ${theme.click.radio.color.indicator.active};\n }\n }\n &:hover {\n background: ${theme.click.radio.color.background.hover};\n }\n &[data-disabled] {\n background: ${theme.click.radio.color.background.disabled};\n &::after {\n background: ${theme.click.radio.color.indicator.disabled};\n }\n }\n `}\n`;\n"],"names":["RadioGroupRoot","styled","RadixRadioGroup","Root","withConfig","componentId","theme","click","checkbox","space","gap","$inline","$error","field","color","label","error","RadioGroup","children","inline","orientation","dir","itemDir","disabled","id","props","FormRoot","jsxs","FormElementContainer","jsx","Error","Label","RadioGroupItem","value","required","defaultId","useId","GenericLabel","displayName","Item","Wrapper","all","RadioInput","radio","radii","background","default","stroke","hover","active","RadioGroupIndicator","Indicator","indicator"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import * as RadixRadioGroup from '@radix-ui/react-radio-group';\nimport { HTMLAttributes, ReactNode, useId } from 'react';\nimport { GenericLabel } from '@/components/GenericLabel';\nimport { Label } from '@/components/Label';\nimport { Error, FormElementContainer, FormRoot } from '@/components/FormContainer';\nimport { cn, cva } from '@/lib/cva';\nimport styles from './RadioGroup.module.css';\n\nexport interface RadioGroupProps extends Omit<RadixRadioGroup.RadioGroupProps, 'dir'> {\n /** Whether to display radio items inline (horizontally) */\n inline?: boolean;\n /** The orientation of the label relative to the radio group */\n orientation?: 'vertical' | 'horizontal';\n /** The direction/position of the label - start places label before, end places label after */\n dir?: 'start' | 'end';\n /** Text direction for radio items - ltr or rtl */\n itemDir?: 'rtl' | 'ltr';\n /** The label text displayed next to the radio group */\n label?: ReactNode;\n /** Error message to display below the radio group */\n error?: ReactNode;\n}\n\nconst radioGroupVariants = cva(styles['radio-group'], {\n variants: {\n inline: {\n true: styles['radio-group_inline'],\n false: styles['radio-group_inline_false'],\n },\n error: {\n true: styles['radio-group_error'],\n false: '',\n },\n },\n defaultVariants: {\n inline: true,\n error: false,\n },\n});\n\nexport const RadioGroup = ({\n children,\n inline,\n orientation,\n dir,\n error,\n itemDir,\n label,\n disabled,\n id,\n className,\n ...props\n}: RadioGroupProps) => {\n return (\n <FormRoot\n $orientation={orientation}\n $dir={dir}\n $addLabelPadding\n >\n <FormElementContainer>\n <RadixRadioGroup.Root\n orientation={inline ? 'horizontal' : 'vertical'}\n disabled={disabled}\n id={id}\n dir={itemDir}\n {...props}\n className={cn(\n radioGroupVariants({\n inline: inline === false ? false : true,\n error: !!error,\n }),\n className\n )}\n >\n {children}\n </RadixRadioGroup.Root>\n {!!error && error !== true && <Error>{error}</Error>}\n </FormElementContainer>\n {label && (\n <Label\n htmlFor={id}\n disabled={disabled}\n error={!!error}\n >\n {label}\n </Label>\n )}\n </FormRoot>\n );\n};\n\ninterface RadioGroupInputProps extends RadixRadioGroup.RadioGroupItemProps {\n /** The label text displayed next to the radio item */\n label?: ReactNode;\n}\n\nexport type RadioGroupItemProps = RadioGroupInputProps & HTMLAttributes<HTMLDivElement>;\n\nconst RadioGroupItem = ({\n id,\n label,\n value,\n disabled,\n required,\n className,\n ...props\n}: RadioGroupItemProps) => {\n const defaultId = useId();\n return (\n <FormRoot\n $orientation=\"horizontal\"\n $dir=\"end\"\n $addLabelPadding={false}\n {...props}\n className={cn(styles.item, className)}\n >\n <RadixRadioGroup.Item\n value={value}\n id={id ?? defaultId}\n disabled={disabled}\n required={required}\n aria-label={`${label}`}\n className={styles['radio-input']}\n >\n <RadixRadioGroup.Indicator className={styles['radio-indicator']} />\n </RadixRadioGroup.Item>\n {label && (\n <GenericLabel\n htmlFor={id ?? defaultId}\n disabled={disabled}\n >\n {label}\n </GenericLabel>\n )}\n </FormRoot>\n );\n};\n\nRadioGroupItem.displayName = 'RadioGroupItem';\nRadioGroup.Item = RadioGroupItem;\n"],"names":["radioGroupVariants","cva","styles","variants","inline","true","false","error","defaultVariants","RadioGroup","children","orientation","dir","itemDir","label","disabled","id","className","props","FormRoot","jsxs","FormElementContainer","jsx","RadixRadioGroup","cn","Error","Label","RadioGroupItem","value","required","defaultId","useId","item","GenericLabel","displayName","Item"],"mappings":"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"}
@@ -313,7 +313,7 @@ const InternalSelect = ({
313
313
  }, align: "start", $useFullWidthItems: useFullWidthItems, $itemCharacterLimit: itemCharacterLimit, children: /* @__PURE__ */ jsxRuntime.jsxs(SelectStyled.SelectList, { children: [
314
314
  /* @__PURE__ */ jsxRuntime.jsxs(SelectStyled.SearchBarContainer, { $showSearch: showSearch, children: [
315
315
  /* @__PURE__ */ jsxRuntime.jsx(SelectStyled.SearchBar, { ref: inputRef, value: search, onChange: (e) => onUpdateSearch(e.target.value), "data-testid": "select-search-input", onKeyDown, $showSearch: showSearch }),
316
- /* @__PURE__ */ jsxRuntime.jsx(SelectStyled.SearchClose, { as: IconButton.IconButton, icon: "cross", onClick: clearSearch, "data-testid": "select-search-close", $showClose: search.length > 0, size: "xs" })
316
+ /* @__PURE__ */ jsxRuntime.jsx(SelectStyled.SearchClose, { as: IconButton.IconButton, htmlType: "button", icon: "cross", onClick: clearSearch, "data-testid": "select-search-close", $showClose: search.length > 0, size: "xs" })
317
317
  ] }),
318
318
  /* @__PURE__ */ jsxRuntime.jsx(SelectStyled.SelectListContent, { $maxHeight: maxHeight, children: /* @__PURE__ */ jsxRuntime.jsx(OptionContext.OptionContext.Provider, { value: optionContextValue, children: options && options.length > 0 ? options.map((props2, index) => {
319
319
  if ("options" in props2) {