@cytario/design 1.6.1 → 1.8.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 (180) hide show
  1. package/dist/index.d.ts +611 -58
  2. package/dist/index.js +2361 -32
  3. package/dist/index.js.map +1 -0
  4. package/package.json +10 -5
  5. package/src/tokens/variables-dark.css +148 -0
  6. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +0 -11
  7. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +0 -1
  8. package/dist/components/Breadcrumbs/Breadcrumbs.js +0 -9
  9. package/dist/components/Breadcrumbs/index.d.ts +0 -3
  10. package/dist/components/Breadcrumbs/index.d.ts.map +0 -1
  11. package/dist/components/Breadcrumbs/index.js +0 -1
  12. package/dist/components/Button/Button.d.ts +0 -18
  13. package/dist/components/Button/Button.d.ts.map +0 -1
  14. package/dist/components/Button/Button.js +0 -51
  15. package/dist/components/Button/index.d.ts +0 -3
  16. package/dist/components/Button/index.d.ts.map +0 -1
  17. package/dist/components/Button/index.js +0 -1
  18. package/dist/components/ButtonLink/ButtonLink.d.ts +0 -35
  19. package/dist/components/ButtonLink/ButtonLink.d.ts.map +0 -1
  20. package/dist/components/ButtonLink/ButtonLink.js +0 -47
  21. package/dist/components/ButtonLink/index.d.ts +0 -3
  22. package/dist/components/ButtonLink/index.d.ts.map +0 -1
  23. package/dist/components/ButtonLink/index.js +0 -1
  24. package/dist/components/Checkbox/Checkbox.d.ts +0 -8
  25. package/dist/components/Checkbox/Checkbox.d.ts.map +0 -1
  26. package/dist/components/Checkbox/Checkbox.js +0 -19
  27. package/dist/components/Checkbox/index.d.ts +0 -3
  28. package/dist/components/Checkbox/index.d.ts.map +0 -1
  29. package/dist/components/Checkbox/index.js +0 -1
  30. package/dist/components/Dialog/Dialog.d.ts +0 -11
  31. package/dist/components/Dialog/Dialog.d.ts.map +0 -1
  32. package/dist/components/Dialog/Dialog.js +0 -31
  33. package/dist/components/Dialog/index.d.ts +0 -3
  34. package/dist/components/Dialog/index.d.ts.map +0 -1
  35. package/dist/components/Dialog/index.js +0 -1
  36. package/dist/components/EmptyState/EmptyState.d.ts +0 -11
  37. package/dist/components/EmptyState/EmptyState.d.ts.map +0 -1
  38. package/dist/components/EmptyState/EmptyState.js +0 -10
  39. package/dist/components/EmptyState/index.d.ts +0 -3
  40. package/dist/components/EmptyState/index.d.ts.map +0 -1
  41. package/dist/components/EmptyState/index.js +0 -1
  42. package/dist/components/Field/Field.d.ts +0 -13
  43. package/dist/components/Field/Field.d.ts.map +0 -1
  44. package/dist/components/Field/Field.js +0 -15
  45. package/dist/components/Field/index.d.ts +0 -3
  46. package/dist/components/Field/index.d.ts.map +0 -1
  47. package/dist/components/Field/index.js +0 -1
  48. package/dist/components/Fieldset/Fieldset.d.ts +0 -8
  49. package/dist/components/Fieldset/Fieldset.d.ts.map +0 -1
  50. package/dist/components/Fieldset/Fieldset.js +0 -15
  51. package/dist/components/Fieldset/index.d.ts +0 -3
  52. package/dist/components/Fieldset/index.d.ts.map +0 -1
  53. package/dist/components/Fieldset/index.js +0 -1
  54. package/dist/components/Heading/Heading.d.ts +0 -19
  55. package/dist/components/Heading/Heading.d.ts.map +0 -1
  56. package/dist/components/Heading/Heading.js +0 -39
  57. package/dist/components/Heading/index.d.ts +0 -3
  58. package/dist/components/Heading/index.d.ts.map +0 -1
  59. package/dist/components/Heading/index.js +0 -1
  60. package/dist/components/Icon/Icon.d.ts +0 -15
  61. package/dist/components/Icon/Icon.d.ts.map +0 -1
  62. package/dist/components/Icon/Icon.js +0 -11
  63. package/dist/components/Icon/index.d.ts +0 -3
  64. package/dist/components/Icon/index.d.ts.map +0 -1
  65. package/dist/components/Icon/index.js +0 -1
  66. package/dist/components/IconButton/IconButton.d.ts +0 -23
  67. package/dist/components/IconButton/IconButton.d.ts.map +0 -1
  68. package/dist/components/IconButton/IconButton.js +0 -59
  69. package/dist/components/IconButton/index.d.ts +0 -3
  70. package/dist/components/IconButton/index.d.ts.map +0 -1
  71. package/dist/components/IconButton/index.js +0 -1
  72. package/dist/components/Input/Input.d.ts +0 -23
  73. package/dist/components/Input/Input.d.ts.map +0 -1
  74. package/dist/components/Input/Input.js +0 -97
  75. package/dist/components/Input/index.d.ts +0 -3
  76. package/dist/components/Input/index.d.ts.map +0 -1
  77. package/dist/components/Input/index.js +0 -1
  78. package/dist/components/InputAddon/InputAddon.d.ts +0 -7
  79. package/dist/components/InputAddon/InputAddon.d.ts.map +0 -1
  80. package/dist/components/InputAddon/InputAddon.js +0 -35
  81. package/dist/components/InputAddon/index.d.ts +0 -3
  82. package/dist/components/InputAddon/index.d.ts.map +0 -1
  83. package/dist/components/InputAddon/index.js +0 -1
  84. package/dist/components/InputGroup/InputGroup.d.ts +0 -7
  85. package/dist/components/InputGroup/InputGroup.d.ts.map +0 -1
  86. package/dist/components/InputGroup/InputGroup.js +0 -16
  87. package/dist/components/InputGroup/InputGroupContext.d.ts +0 -9
  88. package/dist/components/InputGroup/InputGroupContext.d.ts.map +0 -1
  89. package/dist/components/InputGroup/InputGroupContext.js +0 -8
  90. package/dist/components/InputGroup/index.d.ts +0 -5
  91. package/dist/components/InputGroup/index.d.ts.map +0 -1
  92. package/dist/components/InputGroup/index.js +0 -2
  93. package/dist/components/Label/Label.d.ts +0 -7
  94. package/dist/components/Label/Label.d.ts.map +0 -1
  95. package/dist/components/Label/Label.js +0 -12
  96. package/dist/components/Label/index.d.ts +0 -3
  97. package/dist/components/Label/index.d.ts.map +0 -1
  98. package/dist/components/Label/index.js +0 -1
  99. package/dist/components/Link/Link.d.ts +0 -10
  100. package/dist/components/Link/Link.d.ts.map +0 -1
  101. package/dist/components/Link/Link.js +0 -22
  102. package/dist/components/Link/index.d.ts +0 -3
  103. package/dist/components/Link/index.d.ts.map +0 -1
  104. package/dist/components/Link/index.js +0 -1
  105. package/dist/components/Menu/Menu.d.ts +0 -24
  106. package/dist/components/Menu/Menu.d.ts.map +0 -1
  107. package/dist/components/Menu/Menu.js +0 -29
  108. package/dist/components/Menu/index.d.ts +0 -3
  109. package/dist/components/Menu/index.d.ts.map +0 -1
  110. package/dist/components/Menu/index.js +0 -1
  111. package/dist/components/Popover/Popover.d.ts +0 -44
  112. package/dist/components/Popover/Popover.d.ts.map +0 -1
  113. package/dist/components/Popover/Popover.js +0 -46
  114. package/dist/components/Popover/index.d.ts +0 -3
  115. package/dist/components/Popover/index.d.ts.map +0 -1
  116. package/dist/components/Popover/index.js +0 -1
  117. package/dist/components/Radio/Radio.d.ts +0 -18
  118. package/dist/components/Radio/Radio.d.ts.map +0 -1
  119. package/dist/components/Radio/Radio.js +0 -43
  120. package/dist/components/Radio/index.d.ts +0 -3
  121. package/dist/components/Radio/index.d.ts.map +0 -1
  122. package/dist/components/Radio/index.js +0 -1
  123. package/dist/components/Select/Select.d.ts +0 -17
  124. package/dist/components/Select/Select.d.ts.map +0 -1
  125. package/dist/components/Select/Select.js +0 -42
  126. package/dist/components/Select/index.d.ts +0 -3
  127. package/dist/components/Select/index.d.ts.map +0 -1
  128. package/dist/components/Select/index.js +0 -1
  129. package/dist/components/Spinner/Spinner.d.ts +0 -10
  130. package/dist/components/Spinner/Spinner.d.ts.map +0 -1
  131. package/dist/components/Spinner/Spinner.js +0 -12
  132. package/dist/components/Spinner/index.d.ts +0 -3
  133. package/dist/components/Spinner/index.d.ts.map +0 -1
  134. package/dist/components/Spinner/index.js +0 -1
  135. package/dist/components/Switch/Switch.d.ts +0 -12
  136. package/dist/components/Switch/Switch.d.ts.map +0 -1
  137. package/dist/components/Switch/Switch.js +0 -34
  138. package/dist/components/Switch/index.d.ts +0 -3
  139. package/dist/components/Switch/index.d.ts.map +0 -1
  140. package/dist/components/Switch/index.js +0 -1
  141. package/dist/components/Table/Table.d.ts +0 -13
  142. package/dist/components/Table/Table.d.ts.map +0 -1
  143. package/dist/components/Table/Table.js +0 -61
  144. package/dist/components/Table/index.d.ts +0 -3
  145. package/dist/components/Table/index.d.ts.map +0 -1
  146. package/dist/components/Table/index.js +0 -1
  147. package/dist/components/Tabs/Tabs.d.ts +0 -32
  148. package/dist/components/Tabs/Tabs.d.ts.map +0 -1
  149. package/dist/components/Tabs/Tabs.js +0 -100
  150. package/dist/components/Tabs/index.d.ts +0 -3
  151. package/dist/components/Tabs/index.d.ts.map +0 -1
  152. package/dist/components/Tabs/index.js +0 -1
  153. package/dist/components/Toast/Toast.d.ts +0 -33
  154. package/dist/components/Toast/Toast.d.ts.map +0 -1
  155. package/dist/components/Toast/Toast.js +0 -102
  156. package/dist/components/Toast/index.d.ts +0 -3
  157. package/dist/components/Toast/index.d.ts.map +0 -1
  158. package/dist/components/Toast/index.js +0 -1
  159. package/dist/components/ToggleButton/ToggleButton.d.ts +0 -13
  160. package/dist/components/ToggleButton/ToggleButton.d.ts.map +0 -1
  161. package/dist/components/ToggleButton/ToggleButton.js +0 -42
  162. package/dist/components/ToggleButton/index.d.ts +0 -3
  163. package/dist/components/ToggleButton/index.d.ts.map +0 -1
  164. package/dist/components/ToggleButton/index.js +0 -1
  165. package/dist/components/Tooltip/Tooltip.d.ts +0 -15
  166. package/dist/components/Tooltip/Tooltip.d.ts.map +0 -1
  167. package/dist/components/Tooltip/Tooltip.js +0 -20
  168. package/dist/components/Tooltip/index.d.ts +0 -3
  169. package/dist/components/Tooltip/index.d.ts.map +0 -1
  170. package/dist/components/Tooltip/index.js +0 -1
  171. package/dist/components/_shared/styles.d.ts +0 -5
  172. package/dist/components/_shared/styles.d.ts.map +0 -1
  173. package/dist/components/_shared/styles.js +0 -43
  174. package/dist/index.d.ts.map +0 -1
  175. package/dist/test-setup.d.ts +0 -2
  176. package/dist/test-setup.d.ts.map +0 -1
  177. package/dist/test-setup.js +0 -1
  178. package/dist/tokens/tokens.d.ts +0 -144
  179. package/dist/tokens/tokens.d.ts.map +0 -1
  180. package/dist/tokens/tokens.js +0 -143
@@ -1,51 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Button as AriaButton, } from "react-aria-components";
3
- import { variantStyles, sizeStyles, } from "../_shared/styles";
4
- import { Icon } from "../Icon";
5
- import { Spinner } from "../Spinner";
6
- import { useInputGroup } from "../InputGroup/InputGroupContext";
7
- const iconSizeMap = {
8
- sm: "sm",
9
- md: "sm",
10
- lg: "md",
11
- };
12
- function groupRadiusClass(position) {
13
- switch (position) {
14
- case "start":
15
- return "rounded-l-[var(--border-radius-md)] rounded-r-none";
16
- case "middle":
17
- return "rounded-none";
18
- case "end":
19
- return "rounded-r-[var(--border-radius-md)] rounded-l-none";
20
- default:
21
- return "rounded-[var(--border-radius-md)]";
22
- }
23
- }
24
- export function Button({ variant = "primary", size = "md", isLoading = false, isDisabled, iconLeft, iconRight, className, children, ...props }) {
25
- const { inGroup, position } = useInputGroup();
26
- const radiusClass = inGroup
27
- ? groupRadiusClass(position)
28
- : "rounded-[var(--border-radius-md)]";
29
- const marginClass = inGroup && position !== "start" && position !== "standalone"
30
- ? "-ml-px"
31
- : "";
32
- const focusRing = inGroup
33
- ? "focus-visible:ring-2 focus-visible:ring-[var(--color-border-focus)] focus-visible:ring-offset-0 focus-visible:z-10"
34
- : "focus-visible:ring-2 focus-visible:ring-[var(--color-border-focus)] focus-visible:ring-offset-2";
35
- return (_jsxs(AriaButton, { ...props, isDisabled: isDisabled || isLoading, className: [
36
- "inline-flex items-center justify-center gap-2 shrink-0",
37
- radiusClass,
38
- "font-[var(--font-weight-medium)]",
39
- "leading-[var(--line-height-tight)]",
40
- "outline-none transition-colors",
41
- focusRing,
42
- "disabled:opacity-50 disabled:pointer-events-none",
43
- isLoading ? "pointer-events-none" : "",
44
- variantStyles[variant],
45
- sizeStyles[size],
46
- marginClass,
47
- className,
48
- ]
49
- .filter(Boolean)
50
- .join(" "), children: [isLoading && _jsx(Spinner, { size: iconSizeMap[size] }), !isLoading && iconLeft && (_jsx(Icon, { icon: iconLeft, size: iconSizeMap[size] })), children, !isLoading && iconRight && (_jsx(Icon, { icon: iconRight, size: iconSizeMap[size] }))] }));
51
- }
@@ -1,3 +0,0 @@
1
- export { Button } from "./Button";
2
- export type { ButtonProps, ButtonVariant, ButtonSize } from "./Button";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
@@ -1 +0,0 @@
1
- export { Button } from "./Button";
@@ -1,35 +0,0 @@
1
- import type { LucideIcon } from "lucide-react";
2
- import { type LinkProps as AriaLinkProps } from "react-aria-components";
3
- import { type ButtonVariant, type ButtonSize } from "../_shared/styles";
4
- export type { ButtonVariant, ButtonSize };
5
- export interface ButtonLinkProps extends Omit<AriaLinkProps, "className"> {
6
- /** Visual style variant */
7
- variant?: ButtonVariant;
8
- /** Size preset */
9
- size?: ButtonSize;
10
- /** Lucide icon rendered before children */
11
- iconLeft?: LucideIcon;
12
- /** Lucide icon rendered after children */
13
- iconRight?: LucideIcon;
14
- /** Additional CSS classes */
15
- className?: string;
16
- }
17
- export declare function ButtonLink({ variant, size, iconLeft, iconRight, className, children, ...props }: ButtonLinkProps): import("react/jsx-runtime").JSX.Element;
18
- export interface IconButtonLinkProps extends Omit<AriaLinkProps, "className"> {
19
- /** Lucide icon to render */
20
- icon: LucideIcon;
21
- /** Required for accessibility — also used as tooltip content */
22
- "aria-label": string;
23
- /** Visual style variant */
24
- variant?: ButtonVariant;
25
- /** Size preset */
26
- size?: "sm" | "md" | "lg";
27
- /** Show tooltip on hover (default true) */
28
- showTooltip?: boolean;
29
- /** Tooltip placement */
30
- tooltipPlacement?: "top" | "bottom" | "left" | "right";
31
- /** Additional CSS classes */
32
- className?: string;
33
- }
34
- export declare function IconButtonLink({ icon, "aria-label": ariaLabel, variant, size, showTooltip, tooltipPlacement, className, ...props }: IconButtonLinkProps): import("react/jsx-runtime").JSX.Element;
35
- //# sourceMappingURL=ButtonLink.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ButtonLink.d.ts","sourceRoot":"","sources":["../../../src/components/ButtonLink/ButtonLink.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAEL,KAAK,SAAS,IAAI,aAAa,EAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,UAAU,EAGhB,MAAM,mBAAmB,CAAC;AAI3B,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AAE1C,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC;IACvE,2BAA2B;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,kBAAkB;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,wBAAgB,UAAU,CAAC,EACzB,OAAmB,EACnB,IAAW,EACX,QAAQ,EACR,SAAS,EACT,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,eAAe,2CAuBjB;AAID,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC;IAC3E,4BAA4B;IAC5B,IAAI,EAAE,UAAU,CAAC;IACjB,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,kBAAkB;IAClB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACvD,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,wBAAgB,cAAc,CAAC,EAC7B,IAAI,EACJ,YAAY,EAAE,SAAS,EACvB,OAAiB,EACjB,IAAW,EACX,WAAkB,EAClB,gBAAwB,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,mBAAmB,2CA8BrB"}
@@ -1,47 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Link as AriaLink, } from "react-aria-components";
3
- import { variantStyles, sizeStyles, } from "../_shared/styles";
4
- import { Icon } from "../Icon";
5
- import { Tooltip } from "../Tooltip";
6
- const iconSizeMap = {
7
- sm: "sm",
8
- md: "sm",
9
- lg: "md",
10
- };
11
- export function ButtonLink({ variant = "primary", size = "md", iconLeft, iconRight, className, children, ...props }) {
12
- return (_jsxs(AriaLink, { ...props, className: [
13
- "inline-flex items-center justify-center gap-2",
14
- "rounded-[var(--border-radius-md)]",
15
- "font-[var(--font-weight-medium)]",
16
- "leading-[var(--line-height-tight)]",
17
- "outline-none transition-colors no-underline",
18
- "focus-visible:ring-2 focus-visible:ring-[var(--color-border-focus)] focus-visible:ring-offset-2",
19
- variantStyles[variant],
20
- sizeStyles[size],
21
- className,
22
- ]
23
- .filter(Boolean)
24
- .join(" "), children: [iconLeft && _jsx(Icon, { icon: iconLeft, size: iconSizeMap[size] }), children, iconRight && _jsx(Icon, { icon: iconRight, size: iconSizeMap[size] })] }));
25
- }
26
- const squareSizeStyles = {
27
- sm: "h-8 w-8",
28
- md: "h-10 w-10",
29
- lg: "h-12 w-12",
30
- };
31
- export function IconButtonLink({ icon, "aria-label": ariaLabel, variant = "ghost", size = "md", showTooltip = true, tooltipPlacement = "top", className, ...props }) {
32
- const link = (_jsx(AriaLink, { ...props, "aria-label": ariaLabel, className: [
33
- "inline-flex items-center justify-center",
34
- "rounded-[var(--border-radius-md)]",
35
- "outline-none transition-colors no-underline",
36
- "focus-visible:ring-2 focus-visible:ring-[var(--color-border-focus)] focus-visible:ring-offset-2",
37
- variantStyles[variant],
38
- squareSizeStyles[size],
39
- className,
40
- ]
41
- .filter(Boolean)
42
- .join(" "), children: _jsx(Icon, { icon: icon, size: iconSizeMap[size] }) }));
43
- if (showTooltip) {
44
- return (_jsx(Tooltip, { content: ariaLabel, placement: tooltipPlacement, children: link }));
45
- }
46
- return link;
47
- }
@@ -1,3 +0,0 @@
1
- export { ButtonLink, IconButtonLink } from "./ButtonLink";
2
- export type { ButtonLinkProps, IconButtonLinkProps } from "./ButtonLink";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ButtonLink/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC1D,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +0,0 @@
1
- export { ButtonLink, IconButtonLink } from "./ButtonLink";
@@ -1,8 +0,0 @@
1
- import type React from "react";
2
- import { type CheckboxProps as AriaCheckboxProps } from "react-aria-components";
3
- export interface CheckboxProps extends Omit<AriaCheckboxProps, "children" | "className"> {
4
- children?: React.ReactNode;
5
- className?: string;
6
- }
7
- export declare function Checkbox({ children, className, ...props }: CheckboxProps): import("react/jsx-runtime").JSX.Element;
8
- //# sourceMappingURL=Checkbox.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAEL,KAAK,aAAa,IAAI,iBAAiB,EACxC,MAAM,uBAAuB,CAAC;AAG/B,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,WAAW,CAAC;IACzD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,aAAa,2CAoCxE"}
@@ -1,19 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Checkbox as AriaCheckbox, } from "react-aria-components";
3
- import { Check } from "lucide-react";
4
- export function Checkbox({ children, className, ...props }) {
5
- return (_jsx(AriaCheckbox, { ...props, className: [
6
- "group flex items-center gap-2 text-[length:var(--font-size-sm)] text-[var(--color-text-primary)] cursor-pointer",
7
- "disabled:opacity-50 disabled:cursor-default",
8
- className,
9
- ]
10
- .filter(Boolean)
11
- .join(" "), children: ({ isSelected, isIndeterminate }) => (_jsxs(_Fragment, { children: [_jsxs("div", { className: [
12
- "flex items-center justify-center w-6 h-6 shrink-0",
13
- "rounded-[var(--border-radius-sm)] border transition-colors",
14
- "group-focus-visible:ring-2 group-focus-visible:ring-[var(--color-border-focus)] group-focus-visible:ring-offset-2",
15
- isSelected || isIndeterminate
16
- ? "bg-[var(--color-action-primary)] border-[var(--color-action-primary)]"
17
- : "bg-[var(--color-surface-default)] border-[var(--color-border-default)] group-hover:border-[var(--color-border-strong)]",
18
- ].join(" "), children: [isSelected && (_jsx(Check, { className: "w-4 h-4 text-[var(--color-text-inverse)]", strokeWidth: 3 })), isIndeterminate && (_jsx("div", { className: "w-3 h-0.5 bg-[var(--color-text-inverse)] rounded-full" }))] }), children && _jsx("span", { children: children })] })) }));
19
- }
@@ -1,3 +0,0 @@
1
- export { Checkbox } from "./Checkbox";
2
- export type { CheckboxProps } from "./Checkbox";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- export { Checkbox } from "./Checkbox";
@@ -1,11 +0,0 @@
1
- import type React from "react";
2
- export interface DialogProps {
3
- isOpen: boolean;
4
- onOpenChange: (isOpen: boolean) => void;
5
- title: string;
6
- size?: "sm" | "md" | "lg" | "xl";
7
- children: React.ReactNode;
8
- className?: string;
9
- }
10
- export declare function Dialog({ isOpen, onOpenChange, title, size, children, className, }: DialogProps): import("react/jsx-runtime").JSX.Element;
11
- //# sourceMappingURL=Dialog.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/components/Dialog/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AASD,wBAAgB,MAAM,CAAC,EACrB,MAAM,EACN,YAAY,EACZ,KAAK,EACL,IAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,WAAW,2CAwDb"}
@@ -1,31 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Modal, ModalOverlay, Dialog as AriaDialog, Heading, } from "react-aria-components";
3
- import { X } from "lucide-react";
4
- const sizeStyles = {
5
- sm: "max-w-md",
6
- md: "max-w-lg",
7
- lg: "max-w-2xl",
8
- xl: "max-w-4xl",
9
- };
10
- export function Dialog({ isOpen, onOpenChange, title, size = "md", children, className, }) {
11
- return (_jsx(ModalOverlay, { isOpen: isOpen, onOpenChange: onOpenChange, isDismissable: true, className: [
12
- "fixed inset-0 z-50 bg-[var(--color-overlay-backdrop)] backdrop-blur-sm",
13
- "flex items-center justify-center",
14
- "data-[entering]:animate-in data-[entering]:fade-in",
15
- "data-[exiting]:animate-out data-[exiting]:fade-out",
16
- ].join(" "), children: _jsx(Modal, { className: [
17
- "w-full mx-4",
18
- sizeStyles[size],
19
- "bg-[var(--color-surface-default)] rounded-lg shadow-xl max-h-[85vh] flex flex-col",
20
- "data-[entering]:animate-in data-[entering]:zoom-in-95 data-[entering]:fade-in",
21
- "data-[exiting]:animate-out data-[exiting]:zoom-out-95 data-[exiting]:fade-out",
22
- className,
23
- ]
24
- .filter(Boolean)
25
- .join(" "), children: _jsx(AriaDialog, { className: "outline-none flex flex-col max-h-[85vh]", children: ({ close }) => (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between px-6 py-4 border-b border-[var(--color-border-default)]", children: [_jsx(Heading, { slot: "title", className: "text-lg font-semibold text-[var(--color-text-primary)]", children: title }), _jsx("button", { type: "button", onClick: close, className: [
26
- "inline-flex items-center justify-center rounded-md p-1",
27
- "text-[var(--color-text-secondary)] hover:text-[var(--color-text-primary)] hover:bg-[var(--color-surface-muted)]",
28
- "outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-border-focus)] focus-visible:ring-offset-2",
29
- "transition-colors",
30
- ].join(" "), "aria-label": "Close", children: _jsx(X, { size: 20, "aria-hidden": "true" }) })] }), _jsx("div", { className: "px-6 py-4 overflow-y-auto", children: children })] })) }) }) }));
31
- }
@@ -1,3 +0,0 @@
1
- export { Dialog } from "./Dialog";
2
- export type { DialogProps } from "./Dialog";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Dialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -1 +0,0 @@
1
- export { Dialog } from "./Dialog";
@@ -1,11 +0,0 @@
1
- import type React from "react";
2
- import type { LucideIcon } from "lucide-react";
3
- export interface EmptyStateProps {
4
- icon?: LucideIcon;
5
- title: string;
6
- description?: string;
7
- action?: React.ReactNode;
8
- className?: string;
9
- }
10
- export declare function EmptyState({ icon, title, description, action, className, }: EmptyStateProps): import("react/jsx-runtime").JSX.Element;
11
- //# sourceMappingURL=EmptyState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/EmptyState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,KAAK,EACL,WAAW,EACX,MAAM,EACN,SAAS,GACV,EAAE,eAAe,2CAwBjB"}
@@ -1,10 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Icon } from "../Icon";
3
- export function EmptyState({ icon, title, description, action, className, }) {
4
- return (_jsxs("div", { className: [
5
- "flex flex-col items-center text-center py-12 px-6",
6
- className,
7
- ]
8
- .filter(Boolean)
9
- .join(" "), children: [icon && (_jsx(Icon, { icon: icon, size: "xl", className: "text-[var(--color-text-tertiary)]" })), _jsx("h3", { className: "text-lg font-semibold text-[var(--color-text-primary)] mt-4", children: title }), description && (_jsx("p", { className: "text-sm text-[var(--color-text-secondary)] mt-2 max-w-sm", children: description })), action && _jsx("div", { className: "mt-6", children: action })] }));
10
- }
@@ -1,3 +0,0 @@
1
- export { EmptyState } from "./EmptyState";
2
- export type { EmptyStateProps } from "./EmptyState";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +0,0 @@
1
- export { EmptyState } from "./EmptyState";
@@ -1,13 +0,0 @@
1
- import type React from "react";
2
- export interface FieldProps {
3
- label?: string;
4
- isRequired?: boolean;
5
- description?: string;
6
- error?: string | {
7
- message?: string;
8
- };
9
- children: React.ReactNode;
10
- className?: string;
11
- }
12
- export declare function Field({ label, isRequired, description, error, children, className, }: FieldProps): import("react/jsx-runtime").JSX.Element;
13
- //# sourceMappingURL=Field.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../../src/components/Field/Field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAQD,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,UAAU,EACV,WAAW,EACX,KAAK,EACL,QAAQ,EACR,SAAS,GACV,EAAE,UAAU,2CAuBZ"}
@@ -1,15 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Label } from "../Label";
3
- function getErrorMessage(error) {
4
- if (!error)
5
- return undefined;
6
- if (typeof error === "string")
7
- return error;
8
- return error.message;
9
- }
10
- export function Field({ label, isRequired, description, error, children, className, }) {
11
- const errorMessage = getErrorMessage(error);
12
- return (_jsxs("div", { className: ["flex flex-col gap-[var(--spacing-1)]", className]
13
- .filter(Boolean)
14
- .join(" "), children: [label && _jsx(Label, { isRequired: isRequired, children: label }), children, description && !errorMessage && (_jsx("p", { className: "text-[length:var(--font-size-sm)] text-[var(--color-text-secondary)]", children: description })), errorMessage && (_jsx("p", { className: "text-[length:var(--font-size-sm)] text-[var(--color-text-danger)]", children: errorMessage }))] }));
15
- }
@@ -1,3 +0,0 @@
1
- export { Field } from "./Field";
2
- export type { FieldProps } from "./Field";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Field/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
@@ -1 +0,0 @@
1
- export { Field } from "./Field";
@@ -1,8 +0,0 @@
1
- import type React from "react";
2
- export interface FieldsetProps {
3
- legend?: string;
4
- children: React.ReactNode;
5
- className?: string;
6
- }
7
- export declare function Fieldset({ legend, children, className }: FieldsetProps): import("react/jsx-runtime").JSX.Element;
8
- //# sourceMappingURL=Fieldset.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Fieldset.d.ts","sourceRoot":"","sources":["../../../src/components/Fieldset/Fieldset.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,aAAa,2CA0BtE"}
@@ -1,15 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- export function Fieldset({ legend, children, className }) {
3
- return (_jsxs("fieldset", { className: [
4
- "flex flex-col gap-[var(--spacing-8)]",
5
- "border-none p-0 m-0",
6
- className,
7
- ]
8
- .filter(Boolean)
9
- .join(" "), children: [legend && (_jsx("legend", { className: [
10
- "text-[length:var(--font-size-lg)]",
11
- "font-[number:var(--font-weight-semibold)]",
12
- "text-[var(--color-text-primary)]",
13
- "p-0",
14
- ].join(" "), children: legend })), children] }));
15
- }
@@ -1,3 +0,0 @@
1
- export { Fieldset } from "./Fieldset";
2
- export type { FieldsetProps } from "./Fieldset";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Fieldset/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- export { Fieldset } from "./Fieldset";
@@ -1,19 +0,0 @@
1
- import type React from "react";
2
- export type HeadingLevel = "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
3
- export type HeadingSize = "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
4
- export interface HeadingProps {
5
- /** HTML heading element to render */
6
- as?: HeadingLevel;
7
- /** Visual size (defaults to match the `as` level) */
8
- size?: HeadingSize;
9
- children: React.ReactNode;
10
- className?: string;
11
- }
12
- export declare function Heading({ as: Tag, size, className, children, }: HeadingProps): import("react/jsx-runtime").JSX.Element;
13
- /** Convenience: renders `<h1>` at 2xl size */
14
- export declare function H1(props: Omit<HeadingProps, "as">): import("react/jsx-runtime").JSX.Element;
15
- /** Convenience: renders `<h2>` at xl size */
16
- export declare function H2(props: Omit<HeadingProps, "as">): import("react/jsx-runtime").JSX.Element;
17
- /** Convenience: renders `<h3>` at lg size */
18
- export declare function H3(props: Omit<HeadingProps, "as">): import("react/jsx-runtime").JSX.Element;
19
- //# sourceMappingURL=Heading.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Heading.d.ts","sourceRoot":"","sources":["../../../src/components/Heading/Heading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACnE,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAEnE,MAAM,WAAW,YAAY;IAC3B,qCAAqC;IACrC,EAAE,CAAC,EAAE,YAAY,CAAC;IAClB,qDAAqD;IACrD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoBD,wBAAgB,OAAO,CAAC,EACtB,EAAE,EAAE,GAAU,EACd,IAAI,EACJ,SAAS,EACT,QAAQ,GACT,EAAE,YAAY,2CAgBd;AAED,8CAA8C;AAC9C,wBAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,2CAEjD;AAED,6CAA6C;AAC7C,wBAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,2CAEjD;AAED,6CAA6C;AAC7C,wBAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,2CAEjD"}
@@ -1,39 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- const defaultSizeMap = {
3
- h1: "2xl",
4
- h2: "xl",
5
- h3: "lg",
6
- h4: "md",
7
- h5: "sm",
8
- h6: "xs",
9
- };
10
- const sizeStyles = {
11
- xs: "text-sm",
12
- sm: "text-base",
13
- md: "text-lg",
14
- lg: "text-xl",
15
- xl: "text-2xl",
16
- "2xl": "text-3xl",
17
- };
18
- export function Heading({ as: Tag = "h2", size, className, children, }) {
19
- const resolvedSize = size ?? defaultSizeMap[Tag];
20
- return (_jsx(Tag, { className: [
21
- "font-semibold text-[var(--color-text-primary)]",
22
- sizeStyles[resolvedSize],
23
- className,
24
- ]
25
- .filter(Boolean)
26
- .join(" "), children: children }));
27
- }
28
- /** Convenience: renders `<h1>` at 2xl size */
29
- export function H1(props) {
30
- return _jsx(Heading, { ...props, as: "h1", size: props.size ?? "2xl" });
31
- }
32
- /** Convenience: renders `<h2>` at xl size */
33
- export function H2(props) {
34
- return _jsx(Heading, { ...props, as: "h2", size: props.size ?? "xl" });
35
- }
36
- /** Convenience: renders `<h3>` at lg size */
37
- export function H3(props) {
38
- return _jsx(Heading, { ...props, as: "h3", size: props.size ?? "lg" });
39
- }
@@ -1,3 +0,0 @@
1
- export { Heading, H1, H2, H3 } from "./Heading";
2
- export type { HeadingProps, HeadingLevel, HeadingSize } from "./Heading";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Heading/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAChD,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +0,0 @@
1
- export { Heading, H1, H2, H3 } from "./Heading";
@@ -1,15 +0,0 @@
1
- import type { LucideIcon } from "lucide-react";
2
- export interface IconProps {
3
- /** A Lucide icon component */
4
- icon: LucideIcon;
5
- /** Size preset */
6
- size?: "sm" | "md" | "lg" | "xl";
7
- /** SVG stroke width */
8
- strokeWidth?: number;
9
- /** Accessible label — when provided, the icon is treated as meaningful */
10
- "aria-label"?: string;
11
- /** Additional CSS classes */
12
- className?: string;
13
- }
14
- export declare function Icon({ icon: LucideComponent, size, strokeWidth, "aria-label": ariaLabel, className, }: IconProps): import("react/jsx-runtime").JSX.Element;
15
- //# sourceMappingURL=Icon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../src/components/Icon/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,SAAS;IACxB,8BAA8B;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,kBAAkB;IAClB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACjC,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AASD,wBAAgB,IAAI,CAAC,EACnB,IAAI,EAAE,eAAe,EACrB,IAAW,EACX,WAAW,EACX,YAAY,EAAE,SAAS,EACvB,SAAS,GACV,EAAE,SAAS,2CAaX"}
@@ -1,11 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- const sizeMap = {
3
- sm: 16,
4
- md: 20,
5
- lg: 24,
6
- xl: 32,
7
- };
8
- export function Icon({ icon: LucideComponent, size = "md", strokeWidth, "aria-label": ariaLabel, className, }) {
9
- const isDecorative = !ariaLabel;
10
- return (_jsx(LucideComponent, { size: sizeMap[size], strokeWidth: strokeWidth, role: isDecorative ? undefined : "img", "aria-label": ariaLabel, "aria-hidden": isDecorative ? "true" : undefined, className: className }));
11
- }
@@ -1,3 +0,0 @@
1
- export { Icon } from "./Icon";
2
- export type { IconProps } from "./Icon";
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Icon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC"}
@@ -1 +0,0 @@
1
- export { Icon } from "./Icon";
@@ -1,23 +0,0 @@
1
- import type { LucideIcon } from "lucide-react";
2
- import { type ButtonProps as AriaButtonProps } from "react-aria-components";
3
- import { type ButtonVariant } from "../_shared/styles";
4
- export interface IconButtonProps extends Omit<AriaButtonProps, "className"> {
5
- /** Lucide icon to render */
6
- icon: LucideIcon;
7
- /** Required for accessibility — also used as tooltip content */
8
- "aria-label": string;
9
- /** Visual style variant */
10
- variant?: ButtonVariant;
11
- /** Size preset */
12
- size?: "sm" | "md" | "lg";
13
- /** Show tooltip on hover (default true) */
14
- showTooltip?: boolean;
15
- /** Tooltip placement */
16
- tooltipPlacement?: "top" | "bottom" | "left" | "right";
17
- /** Shows a spinner and disables interaction */
18
- isLoading?: boolean;
19
- /** Additional CSS classes */
20
- className?: string;
21
- }
22
- export declare function IconButton({ icon, "aria-label": ariaLabel, variant, size, showTooltip, tooltipPlacement, isLoading, isDisabled, className, ...props }: IconButtonProps): import("react/jsx-runtime").JSX.Element;
23
- //# sourceMappingURL=IconButton.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../src/components/IconButton/IconButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAEL,KAAK,WAAW,IAAI,eAAe,EACpC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,mBAAmB,CAAC;AAMtE,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC;IACzE,4BAA4B;IAC5B,IAAI,EAAE,UAAU,CAAC;IACjB,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,kBAAkB;IAClB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACvD,+CAA+C;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,YAAY,EAAE,SAAS,EACvB,OAAiB,EACjB,IAAW,EACX,WAAkB,EAClB,gBAAwB,EACxB,SAAiB,EACjB,UAAU,EACV,SAAS,EACT,GAAG,KAAK,EACT,EAAE,eAAe,2CAqDjB"}