@bigbinary/neeto-atoms 1.0.58 → 1.0.59

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 (163) hide show
  1. package/dist/Badge-DC6zxOwS.js.map +1 -1
  2. package/dist/Button-DV9xCqlc.js.map +1 -1
  3. package/dist/Callout-NVYmCwJL.js.map +1 -1
  4. package/dist/{Checkbox-C_Rd2-8Z.js → Checkbox-m4rEnxUz.js} +3 -2
  5. package/dist/Checkbox-m4rEnxUz.js.map +1 -0
  6. package/dist/Empty-Bfido_mq.js.map +1 -1
  7. package/dist/HelpIcon-Cm3ZgoCx.js +73 -0
  8. package/dist/HelpIcon-Cm3ZgoCx.js.map +1 -0
  9. package/dist/Label-mrNM2drW.js +17 -0
  10. package/dist/Label-mrNM2drW.js.map +1 -0
  11. package/dist/{RadioGroup-BTemSonO.js → RadioGroup-BRAVPPc3.js} +3 -2
  12. package/dist/RadioGroup-BRAVPPc3.js.map +1 -0
  13. package/dist/{Switch-OAB7pfNn.js → Switch-b4ZAjhRy.js} +7 -4
  14. package/dist/Switch-b4ZAjhRy.js.map +1 -0
  15. package/dist/Tabs-DTbbJITd.js.map +1 -1
  16. package/dist/cjs/Badge-Dz_Kb49L.js.map +1 -1
  17. package/dist/cjs/Button-8VH9p9RB.js.map +1 -1
  18. package/dist/cjs/Callout-CYIrflF1.js.map +1 -1
  19. package/dist/cjs/{Checkbox-CxqWOvFN.js → Checkbox-CymHP7QE.js} +3 -2
  20. package/dist/cjs/Checkbox-CymHP7QE.js.map +1 -0
  21. package/dist/cjs/Empty-aQaWK0p4.js.map +1 -1
  22. package/dist/cjs/HelpIcon-CIkKt2uy.js +75 -0
  23. package/dist/cjs/HelpIcon-CIkKt2uy.js.map +1 -0
  24. package/dist/cjs/Label-Dt7K54Ly.js +19 -0
  25. package/dist/cjs/Label-Dt7K54Ly.js.map +1 -0
  26. package/dist/cjs/{RadioGroup-CkKlLHnR.js → RadioGroup-6mpFVQr8.js} +3 -2
  27. package/dist/cjs/RadioGroup-6mpFVQr8.js.map +1 -0
  28. package/dist/cjs/{Switch-BTkncHw2.js → Switch-bY6bZw78.js} +7 -4
  29. package/dist/cjs/Switch-bY6bZw78.js.map +1 -0
  30. package/dist/cjs/Tabs-YPRmLtUM.js.map +1 -1
  31. package/dist/cjs/components/Checkbox.js +23 -1
  32. package/dist/cjs/components/Checkbox.js.map +1 -1
  33. package/dist/cjs/components/DatePicker.js +14 -1
  34. package/dist/cjs/components/DatePicker.js.map +1 -1
  35. package/dist/cjs/components/DropdownMenu.js.map +1 -1
  36. package/dist/cjs/components/Input.js +32 -5
  37. package/dist/cjs/components/Input.js.map +1 -1
  38. package/dist/cjs/components/Label.js +9 -8
  39. package/dist/cjs/components/Label.js.map +1 -1
  40. package/dist/cjs/components/MultiEmailInput.js +32 -4
  41. package/dist/cjs/components/MultiEmailInput.js.map +1 -1
  42. package/dist/cjs/components/RadioGroup.js +22 -1
  43. package/dist/cjs/components/RadioGroup.js.map +1 -1
  44. package/dist/cjs/components/Select.js +32 -10
  45. package/dist/cjs/components/Select.js.map +1 -1
  46. package/dist/cjs/components/Slider.js +24 -0
  47. package/dist/cjs/components/Slider.js.map +1 -1
  48. package/dist/cjs/components/Switch.js +33 -7
  49. package/dist/cjs/components/Switch.js.map +1 -1
  50. package/dist/cjs/components/Textarea.js +32 -3
  51. package/dist/cjs/components/Textarea.js.map +1 -1
  52. package/dist/cjs/components/TimePicker.js +17 -4
  53. package/dist/cjs/components/TimePicker.js.map +1 -1
  54. package/dist/cjs/components/TreeSelect.js +17 -2
  55. package/dist/cjs/components/TreeSelect.js.map +1 -1
  56. package/dist/cjs/components/index.js +14 -13
  57. package/dist/cjs/components/index.js.map +1 -1
  58. package/dist/cjs/formik/Checkbox.js +23 -1
  59. package/dist/cjs/formik/Checkbox.js.map +1 -1
  60. package/dist/cjs/formik/Input.js +32 -5
  61. package/dist/cjs/formik/Input.js.map +1 -1
  62. package/dist/cjs/formik/MultiEmailInput.js +32 -4
  63. package/dist/cjs/formik/MultiEmailInput.js.map +1 -1
  64. package/dist/cjs/formik/RadioGroup.js +22 -1
  65. package/dist/cjs/formik/RadioGroup.js.map +1 -1
  66. package/dist/cjs/formik/Select.js +32 -10
  67. package/dist/cjs/formik/Select.js.map +1 -1
  68. package/dist/cjs/formik/Slider.js +24 -0
  69. package/dist/cjs/formik/Slider.js.map +1 -1
  70. package/dist/cjs/formik/Switch.js +33 -7
  71. package/dist/cjs/formik/Switch.js.map +1 -1
  72. package/dist/cjs/formik/Textarea.js +32 -3
  73. package/dist/cjs/formik/Textarea.js.map +1 -1
  74. package/dist/cjs/formik/TreeSelect.js +17 -2
  75. package/dist/cjs/formik/TreeSelect.js.map +1 -1
  76. package/dist/cjs/formik/index.js +35 -31
  77. package/dist/cjs/formik/index.js.map +1 -1
  78. package/dist/cjs/index.js +14 -13
  79. package/dist/cjs/index.js.map +1 -1
  80. package/dist/cjs/primitives/Field.js +34 -2
  81. package/dist/cjs/primitives/Field.js.map +1 -1
  82. package/dist/cjs/primitives/index.js +6 -0
  83. package/dist/cjs/primitives/index.js.map +1 -1
  84. package/dist/cjs/renderIcon-BRrpZu9a.js.map +1 -1
  85. package/dist/components/Badge/Badge.d.ts +1 -1
  86. package/dist/components/Button/Button.d.ts +1 -1
  87. package/dist/components/Callout/Callout.d.ts +1 -1
  88. package/dist/components/Checkbox/Checkbox.d.ts +3 -0
  89. package/dist/components/Checkbox.js +23 -1
  90. package/dist/components/Checkbox.js.map +1 -1
  91. package/dist/components/DatePicker.js +14 -1
  92. package/dist/components/DatePicker.js.map +1 -1
  93. package/dist/components/DropdownMenu/SubMenu.d.ts +1 -1
  94. package/dist/components/DropdownMenu/types.d.ts +1 -1
  95. package/dist/components/DropdownMenu.js.map +1 -1
  96. package/dist/components/Empty/Empty.d.ts +1 -1
  97. package/dist/components/Input.js +32 -5
  98. package/dist/components/Input.js.map +1 -1
  99. package/dist/components/Label/Label.d.ts +2 -28
  100. package/dist/components/Label.js +9 -8
  101. package/dist/components/Label.js.map +1 -1
  102. package/dist/components/MultiEmailInput.js +32 -4
  103. package/dist/components/MultiEmailInput.js.map +1 -1
  104. package/dist/components/RadioGroup/RadioGroup.d.ts +3 -0
  105. package/dist/components/RadioGroup.js +22 -1
  106. package/dist/components/RadioGroup.js.map +1 -1
  107. package/dist/components/Select.js +32 -10
  108. package/dist/components/Select.js.map +1 -1
  109. package/dist/components/Slider.js +24 -0
  110. package/dist/components/Slider.js.map +1 -1
  111. package/dist/components/Switch/Switch.d.ts +3 -0
  112. package/dist/components/Switch.js +33 -7
  113. package/dist/components/Switch.js.map +1 -1
  114. package/dist/components/Tabs/Tabs.d.ts +1 -1
  115. package/dist/components/Textarea.js +32 -3
  116. package/dist/components/Textarea.js.map +1 -1
  117. package/dist/components/TimePicker.js +17 -4
  118. package/dist/components/TimePicker.js.map +1 -1
  119. package/dist/components/TreeSelect.js +17 -2
  120. package/dist/components/TreeSelect.js.map +1 -1
  121. package/dist/components/index.js +5 -4
  122. package/dist/components/index.js.map +1 -1
  123. package/dist/formik/Checkbox.js +23 -1
  124. package/dist/formik/Checkbox.js.map +1 -1
  125. package/dist/formik/Input.js +32 -5
  126. package/dist/formik/Input.js.map +1 -1
  127. package/dist/formik/MultiEmailInput.js +32 -4
  128. package/dist/formik/MultiEmailInput.js.map +1 -1
  129. package/dist/formik/RadioGroup.js +22 -1
  130. package/dist/formik/RadioGroup.js.map +1 -1
  131. package/dist/formik/Select.js +32 -10
  132. package/dist/formik/Select.js.map +1 -1
  133. package/dist/formik/Slider.js +24 -0
  134. package/dist/formik/Slider.js.map +1 -1
  135. package/dist/formik/Switch.js +33 -7
  136. package/dist/formik/Switch.js.map +1 -1
  137. package/dist/formik/Textarea.js +32 -3
  138. package/dist/formik/Textarea.js.map +1 -1
  139. package/dist/formik/TreeSelect.js +17 -2
  140. package/dist/formik/TreeSelect.js.map +1 -1
  141. package/dist/formik/index.js +35 -31
  142. package/dist/formik/index.js.map +1 -1
  143. package/dist/index.js +5 -4
  144. package/dist/index.js.map +1 -1
  145. package/dist/primitives/Field.d.ts +6 -1
  146. package/dist/primitives/Field.js +34 -2
  147. package/dist/primitives/Field.js.map +1 -1
  148. package/dist/primitives/index.js +6 -0
  149. package/dist/primitives/index.js.map +1 -1
  150. package/dist/renderIcon-C6twJSqH.js.map +1 -1
  151. package/dist/shared/HelpIcon.d.ts +30 -0
  152. package/package.json +1 -1
  153. package/dist/Checkbox-C_Rd2-8Z.js.map +0 -1
  154. package/dist/Label-DndePzSD.js +0 -87
  155. package/dist/Label-DndePzSD.js.map +0 -1
  156. package/dist/RadioGroup-BTemSonO.js.map +0 -1
  157. package/dist/Switch-OAB7pfNn.js.map +0 -1
  158. package/dist/cjs/Checkbox-CxqWOvFN.js.map +0 -1
  159. package/dist/cjs/Label-vpiQQn2A.js +0 -89
  160. package/dist/cjs/Label-vpiQQn2A.js.map +0 -1
  161. package/dist/cjs/RadioGroup-CkKlLHnR.js.map +0 -1
  162. package/dist/cjs/Switch-BTkncHw2.js.map +0 -1
  163. /package/dist/{lib → shared}/renderIcon.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMenu.js","sources":["../../src/components/DropdownMenu/constants.ts","../../src/components/DropdownMenu/SplitTrigger.tsx","../../src/components/DropdownMenu/TriggerButton.tsx","../../src/components/DropdownMenu/types.ts","../../src/components/DropdownMenu/DropdownBase.tsx","../../src/components/DropdownMenu/Divider.tsx","../../src/components/DropdownMenu/Label.tsx","../../src/components/DropdownMenu/Menu.tsx","../../src/components/DropdownMenu/MenuItem.tsx","../../src/components/DropdownMenu/SubMenu.tsx","../../src/components/DropdownMenu/index.tsx"],"sourcesContent":["export const SIDE_MAP: Record<string, \"top\" | \"right\" | \"bottom\" | \"left\"> = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"left\",\n right: \"right\",\n \"top-start\": \"top\",\n \"top-end\": \"top\",\n \"bottom-start\": \"bottom\",\n \"bottom-end\": \"bottom\",\n \"left-start\": \"left\",\n \"left-end\": \"left\",\n \"right-start\": \"right\",\n \"right-end\": \"right\",\n auto: \"bottom\",\n};\n\nexport const ALIGN_MAP: Record<string, \"start\" | \"center\" | \"end\"> = {\n top: \"center\",\n bottom: \"center\",\n left: \"center\",\n right: \"center\",\n \"top-start\": \"start\",\n \"top-end\": \"end\",\n \"bottom-start\": \"start\",\n \"bottom-end\": \"end\",\n \"left-start\": \"start\",\n \"left-end\": \"end\",\n \"right-start\": \"start\",\n \"right-end\": \"end\",\n auto: \"end\",\n};\n\n","import React, { forwardRef } from \"react\";\n\nimport { ChevronDown } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/components/Button\";\nimport { Button as PrimitiveButton } from \"src/primitives/Button\";\nimport { ButtonGroup } from \"src/primitives/ButtonGroup\";\nimport { DropdownMenuTrigger } from \"src/primitives/DropdownMenu\";\n\nimport type { BaseTriggerProps } from \"./types\";\n\ninterface SplitTriggerOwnProps extends BaseTriggerProps {\n /** Ref forwarded to the action button (left side). */\n actionButtonRef?: React.Ref<HTMLButtonElement>;\n}\n\n/**\n * Radix injects extra props (aria-expanded, data-state, …) via Slot on the\n * DropdownMenuTrigger child. We capture them with a rest-spread.\n */\ntype SplitTriggerProps = SplitTriggerOwnProps &\n Omit<React.ComponentProps<\"div\">, keyof SplitTriggerOwnProps>;\n\nconst SplitTrigger = forwardRef<HTMLDivElement, SplitTriggerProps>(\n (\n {\n label,\n icon,\n buttonProps,\n disabled,\n isOpen,\n onClick,\n actionButtonRef,\n className,\n ...otherProps\n },\n ref\n ) => {\n const { t } = useTranslation();\n const variant = buttonProps?.variant;\n const size = buttonProps?.size;\n\n return (\n <ButtonGroup\n ref={ref}\n className={cn(\"neeto-ui-action-dropdown\", className)}\n {...otherProps}\n >\n {/* Action button — fires the primary onClick */}\n <Button\n ref={actionButtonRef}\n type=\"button\"\n label={label}\n icon={icon}\n iconPosition=\"left\"\n disabled={disabled}\n {...buttonProps}\n onClick={onClick}\n data-testid=\"action-dropdown-btn\"\n />\n\n {/* Chevron trigger — opens the dropdown menu */}\n <DropdownMenuTrigger asChild disabled={disabled}>\n <PrimitiveButton\n type=\"button\"\n variant={variant}\n size={size}\n disabled={disabled}\n aria-label={t(\n \"neetoatoms.dropdownMenu.openMenu\",\n \"Open dropdown menu\"\n )}\n className=\"px-1.5\"\n >\n <ChevronDown\n aria-hidden=\"true\"\n className={cn(\n \"shrink-0 transition-transform duration-200\",\n isOpen && \"rotate-180\"\n )}\n />\n </PrimitiveButton>\n </DropdownMenuTrigger>\n </ButtonGroup>\n );\n }\n);\nSplitTrigger.displayName = \"Dropdown.SplitTrigger\";\n\nexport { SplitTrigger };\n","import React, { forwardRef } from \"react\";\n\nimport { ChevronDown } from \"lucide-react\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/components/Button\";\n\nimport type { BaseTriggerProps } from \"./types\";\n\n/**\n * Extra props that Radix's Slot injects when the parent Trigger uses\n * `asChild` (aria-expanded, aria-haspopup, data-state, id, …).\n * We capture them with a rest-spread so they reach the DOM button.\n */\ntype TriggerButtonProps = BaseTriggerProps &\n Omit<React.ComponentProps<\"button\">, keyof BaseTriggerProps>;\n\nconst TriggerButton = forwardRef<HTMLButtonElement, TriggerButtonProps>(\n (\n {\n label,\n icon,\n buttonProps,\n disabled,\n isOpen,\n onClick,\n className,\n ...otherProps\n },\n ref\n ) => (\n <Button\n ref={ref}\n type=\"button\"\n label={label}\n icon={icon}\n iconPosition=\"left\"\n trailing={\n <ChevronDown\n aria-hidden=\"true\"\n className={cn(\n \"shrink-0 transition-transform duration-200\",\n isOpen && \"rotate-180\"\n )}\n />\n }\n disabled={disabled}\n {...otherProps}\n {...buttonProps}\n onClick={onClick}\n className={cn(className, buttonProps?.className)}\n />\n )\n);\nTriggerButton.displayName = \"Dropdown.TriggerButton\";\n\nexport { TriggerButton };\n","import { createContext, type ReactNode, type Ref } from \"react\";\n\nimport {\n DropdownMenuContent,\n DropdownMenuItem as PrimitiveDropdownMenuItem,\n} from \"src/primitives/DropdownMenu\";\nimport type { ButtonProps } from \"src/components/Button\";\nimport type { IconProp } from \"src/lib/renderIcon\";\n\nexport type DropdownPosition =\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\"\n | \"top-start\"\n | \"top-end\"\n | \"bottom-start\"\n | \"bottom-end\"\n | \"left-start\"\n | \"left-end\"\n | \"right-start\"\n | \"right-end\"\n | \"auto\";\n\n/**\n * Mirrors the primitive `DropdownMenuItem`'s `variant` vocabulary so the\n * wrapper speaks the same language. Keep in sync with Radix primitive.\n */\nexport type MenuItemVariant = \"default\" | \"destructive\";\n\n/**\n * Props forwarded to the trigger button. Sourced from the `Button` wrapper,\n * so consumers can pass `variant`, `size`, `loading`, `tooltipProps`,\n * `fullWidth`, `iconPosition`, etc.\n *\n * The dropdown owns these and so they are excluded:\n * - `label`/`icon`: top-level props on `DropdownMenu`\n * - `trailing`: the chevron\n * - `disabled`: `DropdownMenu`'s own `disabled` prop is authoritative\n * - `onClick`: use `DropdownMenu`'s `onClick` (drives split-button mode)\n * - `to`/`href`: a navigating trigger doesn't open a menu\n * - `asChild`/`children`: use `customTarget` / `label` instead\n */\nexport type DropdownButtonProps = Omit<\n ButtonProps,\n | \"label\"\n | \"icon\"\n | \"trailing\"\n | \"disabled\"\n | \"onClick\"\n | \"to\"\n | \"href\"\n | \"asChild\"\n | \"children\"\n>;\n\nexport interface BaseTriggerProps {\n label?: string;\n icon?: IconProp;\n buttonProps?: DropdownButtonProps;\n disabled: boolean;\n isOpen: boolean;\n onClick?: (e: React.MouseEvent) => void;\n}\n\nexport interface DropdownProps {\n /** Text label displayed inside the trigger button. */\n label?: string;\n /** Icon rendered inside the trigger button. */\n icon?: IconProp;\n /**\n * Props forwarded to the trigger button (variant, size, className,\n * loading, tooltipProps, fullWidth, iconPosition, …). In split-button\n * mode, forwarded to the action button; the chevron half visually mirrors\n * `variant`/`size`. Accepts the full `Button` prop type minus the props\n * the dropdown controls.\n */\n buttonProps?: DropdownButtonProps;\n /** Custom trigger element. Overrides the default button trigger. */\n customTarget?: ReactNode | ((props: { isOpen: boolean }) => ReactNode);\n /** Whether the dropdown is disabled. */\n disabled?: boolean;\n /** Dropdown menu content. */\n children?: ReactNode;\n /** Position of the dropdown menu relative to the trigger. */\n position?: DropdownPosition;\n /** Whether pressing Escape closes the dropdown. */\n closeOnEsc?: boolean;\n /** Whether selecting an item closes the dropdown. */\n closeOnSelect?: boolean;\n /** Whether clicking outside closes the dropdown. */\n closeOnOutsideClick?: boolean;\n /** Controlled open state. */\n isOpen?: boolean;\n /** Callback fired when the dropdown closes. */\n onClose?: () => void;\n /**\n * Callback fired when the trigger button is clicked.\n * When provided (without `customTarget`), renders a **split-button**:\n * a primary action button (fires `onClick`) paired with a separate\n * chevron that opens the dropdown menu.\n */\n onClick?: (e: React.MouseEvent) => void;\n /** Additional CSS class names for the trigger wrapper. */\n className?: string;\n /** Ref forwarded to the trigger button. In split-button mode, forwarded to the action button. */\n triggerRef?: Ref<HTMLButtonElement>;\n /** Extra props forwarded to the DropdownMenuContent. */\n dropdownProps?: Omit<\n React.ComponentProps<typeof DropdownMenuContent>,\n \"side\" | \"align\"\n >;\n}\n\nexport interface MenuItemProps extends Omit<\n React.ComponentProps<typeof PrimitiveDropdownMenuItem>,\n \"prefix\" | \"variant\" | \"onClick\"\n> {\n /** Highlight as active. */\n isActive?: boolean;\n /** Disable the menu item. */\n isDisabled?: boolean;\n /** Visual variant of the menu item. */\n variant?: MenuItemVariant;\n /** Content rendered before the label. */\n prefix?: ReactNode;\n /** Content rendered after the label. */\n suffix?: ReactNode;\n /** Internal route (renders as anchor). */\n to?: string;\n /** External link (renders as anchor). */\n href?: string;\n /** Callback fired when the item is selected. */\n onClick?: (e: Event) => void;\n /** Children / label text. */\n children?: ReactNode;\n /** Additional CSS class names. */\n className?: string;\n}\n\nexport const DropdownContext = createContext({ closeOnSelect: true });\n","import { useCallback, useState } from \"react\";\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuTrigger,\n} from \"src/primitives/DropdownMenu\";\n\nimport { ALIGN_MAP, SIDE_MAP } from \"./constants\";\nimport { SplitTrigger } from \"./SplitTrigger\";\nimport { TriggerButton } from \"./TriggerButton\";\nimport { DropdownContext, type DropdownProps } from \"./types\";\n\nconst DropdownBase = ({\n label,\n icon,\n buttonProps,\n customTarget,\n disabled = false,\n children,\n position = \"bottom-end\",\n closeOnEsc = true,\n closeOnSelect = true,\n closeOnOutsideClick = true,\n isOpen: isOpenProp,\n onClose,\n onClick,\n className,\n triggerRef,\n dropdownProps,\n}: DropdownProps) => {\n const [internalOpen, setInternalOpen] = useState(false);\n const isControlled = isOpenProp !== undefined;\n const open = isControlled ? isOpenProp : internalOpen;\n const handleOpenChange = useCallback(\n (isOpen: boolean) => {\n if (!isControlled) setInternalOpen(isOpen);\n if (!isOpen) onClose?.();\n },\n [isControlled, onClose]\n );\n\n const side = SIDE_MAP[position] ?? \"bottom\";\n const align = ALIGN_MAP[position] ?? \"end\";\n\n // Split-button mode: onClick provided without a customTarget.\n const isSplit = !!onClick && !customTarget;\n\n const sharedTriggerProps = {\n label,\n icon,\n buttonProps,\n disabled,\n isOpen: open,\n onClick,\n };\n\n const triggerNode = isSplit ? (\n <SplitTrigger\n {...sharedTriggerProps}\n actionButtonRef={triggerRef}\n className={className}\n />\n ) : (\n <DropdownMenuTrigger asChild disabled={disabled} className={className}>\n {customTarget ? (\n typeof customTarget === \"function\" ? (\n customTarget({ isOpen: open })\n ) : (\n customTarget\n )\n ) : (\n <TriggerButton ref={triggerRef} {...sharedTriggerProps} />\n )}\n </DropdownMenuTrigger>\n );\n\n return (\n <DropdownContext.Provider value={{ closeOnSelect }}>\n <DropdownMenu\n open={open}\n onOpenChange={handleOpenChange}\n modal={closeOnOutsideClick}\n >\n {triggerNode}\n <DropdownMenuContent\n side={side}\n align={align}\n onEscapeKeyDown={closeOnEsc ? undefined : e => e.preventDefault()}\n onInteractOutside={\n closeOnOutsideClick ? undefined : e => e.preventDefault()\n }\n {...dropdownProps}\n >\n {children}\n </DropdownMenuContent>\n </DropdownMenu>\n </DropdownContext.Provider>\n );\n};\n\nexport { DropdownBase };\n","import React, { forwardRef } from \"react\";\n\nimport { DropdownMenuSeparator } from \"src/primitives/DropdownMenu\";\n\nconst Divider = forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof DropdownMenuSeparator>\n>((props, ref) => <DropdownMenuSeparator ref={ref} {...props} />);\nDivider.displayName = \"Dropdown.Divider\";\n\nexport { Divider };\n","import React, { forwardRef, type ReactNode } from \"react\";\n\nimport { DropdownMenuLabel } from \"src/primitives/DropdownMenu\";\n\ninterface MenuLabelProps extends React.ComponentProps<\"div\"> {\n children?: ReactNode;\n className?: string;\n}\n\nconst Label = forwardRef<HTMLDivElement, MenuLabelProps>(\n ({ children, className, ...otherProps }, ref) => (\n <DropdownMenuLabel ref={ref} className={className} {...otherProps}>\n {children}\n </DropdownMenuLabel>\n )\n);\nLabel.displayName = \"Dropdown.Label\";\n\nexport { Label };\n","import React, { forwardRef, type ReactNode } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { DropdownMenuGroup } from \"src/primitives/DropdownMenu\";\n\ninterface MenuProps extends React.ComponentProps<\"div\"> {\n children?: ReactNode;\n className?: string;\n}\n\nconst Menu = forwardRef<HTMLDivElement, MenuProps>(\n ({ children, className, ...otherProps }, ref) => (\n <DropdownMenuGroup\n ref={ref}\n className={cn(\"flex flex-col\", className)}\n {...otherProps}\n >\n {children}\n </DropdownMenuGroup>\n )\n);\nMenu.displayName = \"Dropdown.Menu\";\n\nexport { Menu };\n","import { forwardRef, useCallback, useContext, useMemo } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { DropdownMenuItem as PrimitiveDropdownMenuItem } from \"src/primitives/DropdownMenu\";\n\nimport { DropdownContext, type MenuItemProps } from \"./types\";\n\nconst MenuItem = forwardRef<HTMLDivElement, MenuItemProps>(\n (\n {\n children,\n isActive = false,\n isDisabled = false,\n variant = \"default\",\n prefix,\n suffix,\n to,\n href,\n className,\n onClick,\n disabled: _disabled,\n asChild: _asChild,\n onSelect: _onSelect,\n ...otherProps\n },\n ref\n ) => {\n const { closeOnSelect } = useContext(DropdownContext);\n const linkHref = to ?? href;\n\n const handleSelect = useCallback(\n (e: Event) => {\n if (!closeOnSelect) e.preventDefault();\n onClick?.(e);\n },\n [closeOnSelect, onClick]\n );\n\n const itemContent = useMemo(\n () => (\n <>\n {prefix && (\n <span data-slot=\"menu-item-prefix\" className=\"shrink-0\">\n {prefix}\n </span>\n )}\n <span className=\"flex-1 truncate\">{children}</span>\n {suffix && (\n <span\n data-slot=\"menu-item-suffix\"\n className=\"ms-auto shrink-0 text-muted-foreground\"\n >\n {suffix}\n </span>\n )}\n </>\n ),\n [prefix, children, suffix]\n );\n\n return (\n <PrimitiveDropdownMenuItem\n ref={ref}\n variant={variant}\n disabled={isDisabled}\n data-active={isActive || undefined}\n className={cn(\n isActive && \"bg-accent text-accent-foreground\",\n className\n )}\n asChild={!!linkHref}\n onSelect={handleSelect}\n {...otherProps}\n >\n {linkHref ? <a href={linkHref}>{itemContent}</a> : itemContent}\n </PrimitiveDropdownMenuItem>\n );\n }\n);\nMenuItem.displayName = \"Dropdown.MenuItem\";\n\nexport { MenuItem };\n","import React, { forwardRef, type ReactNode } from \"react\";\n\nimport { renderIcon, type IconProp } from \"src/lib/renderIcon\";\nimport {\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n} from \"src/primitives/DropdownMenu\";\n\ninterface SubMenuProps {\n label?: string;\n icon?: IconProp;\n children?: ReactNode;\n className?: string;\n triggerProps?: Omit<\n React.ComponentProps<typeof DropdownMenuSubTrigger>,\n \"ref\" | \"className\" | \"children\"\n >;\n contentProps?: Omit<\n React.ComponentProps<typeof DropdownMenuSubContent>,\n \"children\"\n >;\n}\n\nconst SubMenu = forwardRef<HTMLDivElement, SubMenuProps>(\n ({ label, icon, children, className, triggerProps, contentProps }, ref) => (\n <DropdownMenuSub>\n <DropdownMenuSubTrigger ref={ref} className={className} {...triggerProps}>\n {icon && <span className=\"shrink-0\">{renderIcon(icon, \"size-4\")}</span>}\n {label && <span>{label}</span>}\n </DropdownMenuSubTrigger>\n <DropdownMenuSubContent {...contentProps}>\n {children}\n </DropdownMenuSubContent>\n </DropdownMenuSub>\n )\n);\nSubMenu.displayName = \"Dropdown.SubMenu\";\n\nexport { SubMenu };\n","import { DropdownBase } from \"./DropdownBase\";\nimport { Divider } from \"./Divider\";\nimport { Label } from \"./Label\";\nimport { Menu } from \"./Menu\";\nimport { MenuItem } from \"./MenuItem\";\nimport { SubMenu } from \"./SubMenu\";\n\nexport type { DropdownProps, DropdownPosition } from \"./types\";\n\ntype DropdownComponent = typeof DropdownBase & {\n displayName?: string;\n Menu: typeof Menu;\n MenuItem: typeof MenuItem;\n Divider: typeof Divider;\n Label: typeof Label;\n SubMenu: typeof SubMenu;\n};\n\nconst DropdownMenu = DropdownBase as DropdownComponent;\nDropdownMenu.displayName = \"DropdownMenu\";\nDropdownMenu.Menu = Menu;\nDropdownMenu.MenuItem = MenuItem;\nDropdownMenu.Divider = Divider;\nDropdownMenu.Label = Label;\nDropdownMenu.SubMenu = SubMenu;\n\nexport { DropdownMenu };\n"],"names":["PrimitiveButton","DropdownMenu","PrimitiveDropdownMenuItem"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,MAAM,QAAA,GAAgE;AAAA,EAC3E,GAAA,EAAK,KAAA;AAAA,EACL,MAAA,EAAQ,QAAA;AAAA,EACR,IAAA,EAAM,MAAA;AAAA,EACN,KAAA,EAAO,OAAA;AAAA,EACP,WAAA,EAAa,KAAA;AAAA,EACb,SAAA,EAAW,KAAA;AAAA,EACX,cAAA,EAAgB,QAAA;AAAA,EAChB,YAAA,EAAc,QAAA;AAAA,EACd,YAAA,EAAc,MAAA;AAAA,EACd,UAAA,EAAY,MAAA;AAAA,EACZ,aAAA,EAAe,OAAA;AAAA,EACf,WAAA,EAAa,OAAA;AAAA,EACb,IAAA,EAAM;AACR,CAAA;AAEO,MAAM,SAAA,GAAwD;AAAA,EACnE,GAAA,EAAK,QAAA;AAAA,EACL,MAAA,EAAQ,QAAA;AAAA,EACR,IAAA,EAAM,QAAA;AAAA,EACN,KAAA,EAAO,QAAA;AAAA,EACP,WAAA,EAAa,OAAA;AAAA,EACb,SAAA,EAAW,KAAA;AAAA,EACX,cAAA,EAAgB,OAAA;AAAA,EAChB,YAAA,EAAc,KAAA;AAAA,EACd,YAAA,EAAc,OAAA;AAAA,EACd,UAAA,EAAY,KAAA;AAAA,EACZ,aAAA,EAAe,OAAA;AAAA,EACf,WAAA,EAAa,KAAA;AAAA,EACb,IAAA,EAAM;AACR,CAAA;;ACNA,MAAM,YAAA,GAAe,UAAA;AAAA,EACnB,CACE;AAAA,IACE,KAAA;AAAA,IACA,IAAA;AAAA,IACA,WAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,eAAA;AAAA,IACA,SAAA;AAAA,IACA,GAAG;AAAA,KAEL,GAAA,KACG;AACH,IAAA,MAAM,EAAE,CAAA,EAAE,GAAI,cAAA,EAAe;AAC7B,IAAA,MAAM,UAAU,WAAA,EAAa,OAAA;AAC7B,IAAA,MAAM,OAAO,WAAA,EAAa,IAAA;AAE1B,IAAA,uBACE,IAAA;AAAA,MAAC,WAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAA,EAAW,EAAA,CAAG,0BAAA,EAA4B,SAAS,CAAA;AAAA,QAClD,GAAG,UAAA;AAAA,QAGJ,QAAA,EAAA;AAAA,0BAAA,GAAA;AAAA,YAAC,MAAA;AAAA,YAAA;AAAA,cACC,GAAA,EAAK,eAAA;AAAA,cACL,IAAA,EAAK,QAAA;AAAA,cACL,KAAA;AAAA,cACA,IAAA;AAAA,cACA,YAAA,EAAa,MAAA;AAAA,cACb,QAAA;AAAA,cACC,GAAG,WAAA;AAAA,cACJ,OAAA;AAAA,cACA,aAAA,EAAY;AAAA;AAAA,WACd;AAAA,0BAGA,GAAA,CAAC,mBAAA,EAAA,EAAoB,OAAA,EAAO,IAAA,EAAC,QAAA,EAC3B,QAAA,kBAAA,GAAA;AAAA,YAACA,QAAA;AAAA,YAAA;AAAA,cACC,IAAA,EAAK,QAAA;AAAA,cACL,OAAA;AAAA,cACA,IAAA;AAAA,cACA,QAAA;AAAA,cACA,YAAA,EAAY,CAAA;AAAA,gBACV,kCAAA;AAAA,gBACA;AAAA,eACF;AAAA,cACA,SAAA,EAAU,QAAA;AAAA,cAEV,QAAA,kBAAA,GAAA;AAAA,gBAAC,WAAA;AAAA,gBAAA;AAAA,kBACC,aAAA,EAAY,MAAA;AAAA,kBACZ,SAAA,EAAW,EAAA;AAAA,oBACT,4CAAA;AAAA,oBACA,MAAA,IAAU;AAAA;AACZ;AAAA;AACF;AAAA,WACF,EACF;AAAA;AAAA;AAAA,KACF;AAAA,EAEJ;AACF,CAAA;AACA,YAAA,CAAa,WAAA,GAAc,uBAAA;;ACxE3B,MAAM,aAAA,GAAgB,UAAA;AAAA,EACpB,CACE;AAAA,IACE,KAAA;AAAA,IACA,IAAA;AAAA,IACA,WAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA;AAAA,IACA,OAAA;AAAA,IACA,SAAA;AAAA,IACA,GAAG;AAAA,KAEL,GAAA,qBAEA,GAAA;AAAA,IAAC,MAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,IAAA,EAAK,QAAA;AAAA,MACL,KAAA;AAAA,MACA,IAAA;AAAA,MACA,YAAA,EAAa,MAAA;AAAA,MACb,QAAA,kBACE,GAAA;AAAA,QAAC,WAAA;AAAA,QAAA;AAAA,UACC,aAAA,EAAY,MAAA;AAAA,UACZ,SAAA,EAAW,EAAA;AAAA,YACT,4CAAA;AAAA,YACA,MAAA,IAAU;AAAA;AACZ;AAAA,OACF;AAAA,MAEF,QAAA;AAAA,MACC,GAAG,UAAA;AAAA,MACH,GAAG,WAAA;AAAA,MACJ,OAAA;AAAA,MACA,SAAA,EAAW,EAAA,CAAG,SAAA,EAAW,WAAA,EAAa,SAAS;AAAA;AAAA;AAGrD,CAAA;AACA,aAAA,CAAc,WAAA,GAAc,wBAAA;;ACuFrB,MAAM,eAAA,GAAkB,aAAA,CAAc,EAAE,aAAA,EAAe,MAAM,CAAA;;AC/HpE,MAAM,eAAe,CAAC;AAAA,EACpB,KAAA;AAAA,EACA,IAAA;AAAA,EACA,WAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,QAAA;AAAA,EACA,QAAA,GAAW,YAAA;AAAA,EACX,UAAA,GAAa,IAAA;AAAA,EACb,aAAA,GAAgB,IAAA;AAAA,EAChB,mBAAA,GAAsB,IAAA;AAAA,EACtB,MAAA,EAAQ,UAAA;AAAA,EACR,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA;AACF,CAAA,KAAqB;AACnB,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAS,KAAK,CAAA;AACtD,EAAA,MAAM,eAAe,UAAA,KAAe,MAAA;AACpC,EAAA,MAAM,IAAA,GAAO,eAAe,UAAA,GAAa,YAAA;AACzC,EAAA,MAAM,gBAAA,GAAmB,WAAA;AAAA,IACvB,CAAC,MAAA,KAAoB;AACnB,MAAA,IAAI,CAAC,YAAA,EAAc,eAAA,CAAgB,MAAM,CAAA;AACzC,MAAA,IAAI,CAAC,QAAQ,OAAA,IAAU;AAAA,IACzB,CAAA;AAAA,IACA,CAAC,cAAc,OAAO;AAAA,GACxB;AAEA,EAAA,MAAM,IAAA,GAAO,QAAA,CAAS,QAAQ,CAAA,IAAK,QAAA;AACnC,EAAA,MAAM,KAAA,GAAQ,SAAA,CAAU,QAAQ,CAAA,IAAK,KAAA;AAGrC,EAAA,MAAM,OAAA,GAAU,CAAC,CAAC,OAAA,IAAW,CAAC,YAAA;AAE9B,EAAA,MAAM,kBAAA,GAAqB;AAAA,IACzB,KAAA;AAAA,IACA,IAAA;AAAA,IACA,WAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA,EAAQ,IAAA;AAAA,IACR;AAAA,GACF;AAEA,EAAA,MAAM,cAAc,OAAA,mBAClB,GAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACE,GAAG,kBAAA;AAAA,MACJ,eAAA,EAAiB,UAAA;AAAA,MACjB;AAAA;AAAA,GACF,mBAEA,GAAA,CAAC,mBAAA,EAAA,EAAoB,OAAA,EAAO,IAAA,EAAC,UAAoB,SAAA,EAC9C,QAAA,EAAA,YAAA,GACC,OAAO,YAAA,KAAiB,UAAA,GACtB,YAAA,CAAa,EAAE,MAAA,EAAQ,IAAA,EAAM,CAAA,GAE7B,YAAA,mBAGF,GAAA,CAAC,iBAAc,GAAA,EAAK,UAAA,EAAa,GAAG,kBAAA,EAAoB,CAAA,EAE5D,CAAA;AAGF,EAAA,2BACG,eAAA,CAAgB,QAAA,EAAhB,EAAyB,KAAA,EAAO,EAAE,eAAc,EAC/C,QAAA,kBAAA,IAAA;AAAA,IAACC,cAAA;AAAA,IAAA;AAAA,MACC,IAAA;AAAA,MACA,YAAA,EAAc,gBAAA;AAAA,MACd,KAAA,EAAO,mBAAA;AAAA,MAEN,QAAA,EAAA;AAAA,QAAA,WAAA;AAAA,wBACD,GAAA;AAAA,UAAC,mBAAA;AAAA,UAAA;AAAA,YACC,IAAA;AAAA,YACA,KAAA;AAAA,YACA,eAAA,EAAiB,UAAA,GAAa,MAAA,GAAY,CAAA,CAAA,KAAK,EAAE,cAAA,EAAe;AAAA,YAChE,iBAAA,EACE,mBAAA,GAAsB,MAAA,GAAY,CAAA,CAAA,KAAK,EAAE,cAAA,EAAe;AAAA,YAEzD,GAAG,aAAA;AAAA,YAEH;AAAA;AAAA;AACH;AAAA;AAAA,GACF,EACF,CAAA;AAEJ,CAAA;;AC/FA,MAAM,OAAA,GAAU,UAAA,CAGd,CAAC,KAAA,EAAO,GAAA,yBAAS,qBAAA,EAAA,EAAsB,GAAA,EAAW,GAAG,KAAA,EAAO,CAAE,CAAA;AAChE,OAAA,CAAQ,WAAA,GAAc,kBAAA;;ACCtB,MAAM,KAAA,GAAQ,UAAA;AAAA,EACZ,CAAC,EAAE,QAAA,EAAU,SAAA,EAAW,GAAG,UAAA,EAAW,EAAG,GAAA,qBACvC,GAAA,CAAC,iBAAA,EAAA,EAAkB,GAAA,EAAU,SAAA,EAAuB,GAAG,YACpD,QAAA,EACH;AAEJ,CAAA;AACA,KAAA,CAAM,WAAA,GAAc,gBAAA;;ACNpB,MAAM,IAAA,GAAO,UAAA;AAAA,EACX,CAAC,EAAE,QAAA,EAAU,WAAW,GAAG,UAAA,IAAc,GAAA,qBACvC,GAAA;AAAA,IAAC,iBAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,SAAA,EAAW,EAAA,CAAG,eAAA,EAAiB,SAAS,CAAA;AAAA,MACvC,GAAG,UAAA;AAAA,MAEH;AAAA;AAAA;AAGP,CAAA;AACA,IAAA,CAAK,WAAA,GAAc,eAAA;;ACdnB,MAAM,QAAA,GAAW,UAAA;AAAA,EACf,CACE;AAAA,IACE,QAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX,UAAA,GAAa,KAAA;AAAA,IACb,OAAA,GAAU,SAAA;AAAA,IACV,MAAA;AAAA,IACA,MAAA;AAAA,IACA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,SAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA,EAAU,SAAA;AAAA,IACV,OAAA,EAAS,QAAA;AAAA,IACT,QAAA,EAAU,SAAA;AAAA,IACV,GAAG;AAAA,KAEL,GAAA,KACG;AACH,IAAA,MAAM,EAAE,aAAA,EAAc,GAAI,UAAA,CAAW,eAAe,CAAA;AACpD,IAAA,MAAM,WAAW,EAAA,IAAM,IAAA;AAEvB,IAAA,MAAM,YAAA,GAAe,WAAA;AAAA,MACnB,CAAC,CAAA,KAAa;AACZ,QAAA,IAAI,CAAC,aAAA,EAAe,CAAA,CAAE,cAAA,EAAe;AACrC,QAAA,OAAA,GAAU,CAAC,CAAA;AAAA,MACb,CAAA;AAAA,MACA,CAAC,eAAe,OAAO;AAAA,KACzB;AAEA,IAAA,MAAM,WAAA,GAAc,OAAA;AAAA,MAClB,sBACE,IAAA,CAAA,QAAA,EAAA,EACG,QAAA,EAAA;AAAA,QAAA,MAAA,wBACE,MAAA,EAAA,EAAK,WAAA,EAAU,kBAAA,EAAmB,SAAA,EAAU,YAC1C,QAAA,EAAA,MAAA,EACH,CAAA;AAAA,wBAEF,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,iBAAA,EAAmB,QAAA,EAAS,CAAA;AAAA,QAC3C,MAAA,oBACC,GAAA;AAAA,UAAC,MAAA;AAAA,UAAA;AAAA,YACC,WAAA,EAAU,kBAAA;AAAA,YACV,SAAA,EAAU,wCAAA;AAAA,YAET,QAAA,EAAA;AAAA;AAAA;AACH,OAAA,EAEJ,CAAA;AAAA,MAEF,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAM;AAAA,KAC3B;AAEA,IAAA,uBACE,GAAA;AAAA,MAACC,gBAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,OAAA;AAAA,QACA,QAAA,EAAU,UAAA;AAAA,QACV,eAAa,QAAA,IAAY,MAAA;AAAA,QACzB,SAAA,EAAW,EAAA;AAAA,UACT,QAAA,IAAY,kCAAA;AAAA,UACZ;AAAA,SACF;AAAA,QACA,OAAA,EAAS,CAAC,CAAC,QAAA;AAAA,QACX,QAAA,EAAU,YAAA;AAAA,QACT,GAAG,UAAA;AAAA,QAEH,qCAAW,GAAA,CAAC,GAAA,EAAA,EAAE,IAAA,EAAM,QAAA,EAAW,uBAAY,CAAA,GAAO;AAAA;AAAA,KACrD;AAAA,EAEJ;AACF,CAAA;AACA,QAAA,CAAS,WAAA,GAAc,mBAAA;;ACvDvB,MAAM,OAAA,GAAU,UAAA;AAAA,EACd,CAAC,EAAE,KAAA,EAAO,IAAA,EAAM,QAAA,EAAU,SAAA,EAAW,YAAA,EAAc,YAAA,EAAa,EAAG,GAAA,qBACjE,IAAA,CAAC,eAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,sBAAA,EAAA,EAAuB,GAAA,EAAU,SAAA,EAAuB,GAAG,YAAA,EACzD,QAAA,EAAA;AAAA,MAAA,IAAA,wBAAS,MAAA,EAAA,EAAK,SAAA,EAAU,YAAY,QAAA,EAAA,UAAA,CAAW,IAAA,EAAM,QAAQ,CAAA,EAAE,CAAA;AAAA,MAC/D,KAAA,oBAAS,GAAA,CAAC,MAAA,EAAA,EAAM,QAAA,EAAA,KAAA,EAAM;AAAA,KAAA,EACzB,CAAA;AAAA,oBACA,GAAA,CAAC,sBAAA,EAAA,EAAwB,GAAG,YAAA,EACzB,QAAA,EACH;AAAA,GAAA,EACF;AAEJ,CAAA;AACA,OAAA,CAAQ,WAAA,GAAc,kBAAA;;ACnBtB,MAAM,YAAA,GAAe;AACrB,YAAA,CAAa,WAAA,GAAc,cAAA;AAC3B,YAAA,CAAa,IAAA,GAAO,IAAA;AACpB,YAAA,CAAa,QAAA,GAAW,QAAA;AACxB,YAAA,CAAa,OAAA,GAAU,OAAA;AACvB,YAAA,CAAa,KAAA,GAAQ,KAAA;AACrB,YAAA,CAAa,OAAA,GAAU,OAAA;;;;"}
1
+ {"version":3,"file":"DropdownMenu.js","sources":["../../src/components/DropdownMenu/constants.ts","../../src/components/DropdownMenu/SplitTrigger.tsx","../../src/components/DropdownMenu/TriggerButton.tsx","../../src/components/DropdownMenu/types.ts","../../src/components/DropdownMenu/DropdownBase.tsx","../../src/components/DropdownMenu/Divider.tsx","../../src/components/DropdownMenu/Label.tsx","../../src/components/DropdownMenu/Menu.tsx","../../src/components/DropdownMenu/MenuItem.tsx","../../src/components/DropdownMenu/SubMenu.tsx","../../src/components/DropdownMenu/index.tsx"],"sourcesContent":["export const SIDE_MAP: Record<string, \"top\" | \"right\" | \"bottom\" | \"left\"> = {\n top: \"top\",\n bottom: \"bottom\",\n left: \"left\",\n right: \"right\",\n \"top-start\": \"top\",\n \"top-end\": \"top\",\n \"bottom-start\": \"bottom\",\n \"bottom-end\": \"bottom\",\n \"left-start\": \"left\",\n \"left-end\": \"left\",\n \"right-start\": \"right\",\n \"right-end\": \"right\",\n auto: \"bottom\",\n};\n\nexport const ALIGN_MAP: Record<string, \"start\" | \"center\" | \"end\"> = {\n top: \"center\",\n bottom: \"center\",\n left: \"center\",\n right: \"center\",\n \"top-start\": \"start\",\n \"top-end\": \"end\",\n \"bottom-start\": \"start\",\n \"bottom-end\": \"end\",\n \"left-start\": \"start\",\n \"left-end\": \"end\",\n \"right-start\": \"start\",\n \"right-end\": \"end\",\n auto: \"end\",\n};\n\n","import React, { forwardRef } from \"react\";\n\nimport { ChevronDown } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/components/Button\";\nimport { Button as PrimitiveButton } from \"src/primitives/Button\";\nimport { ButtonGroup } from \"src/primitives/ButtonGroup\";\nimport { DropdownMenuTrigger } from \"src/primitives/DropdownMenu\";\n\nimport type { BaseTriggerProps } from \"./types\";\n\ninterface SplitTriggerOwnProps extends BaseTriggerProps {\n /** Ref forwarded to the action button (left side). */\n actionButtonRef?: React.Ref<HTMLButtonElement>;\n}\n\n/**\n * Radix injects extra props (aria-expanded, data-state, …) via Slot on the\n * DropdownMenuTrigger child. We capture them with a rest-spread.\n */\ntype SplitTriggerProps = SplitTriggerOwnProps &\n Omit<React.ComponentProps<\"div\">, keyof SplitTriggerOwnProps>;\n\nconst SplitTrigger = forwardRef<HTMLDivElement, SplitTriggerProps>(\n (\n {\n label,\n icon,\n buttonProps,\n disabled,\n isOpen,\n onClick,\n actionButtonRef,\n className,\n ...otherProps\n },\n ref\n ) => {\n const { t } = useTranslation();\n const variant = buttonProps?.variant;\n const size = buttonProps?.size;\n\n return (\n <ButtonGroup\n ref={ref}\n className={cn(\"neeto-ui-action-dropdown\", className)}\n {...otherProps}\n >\n {/* Action button — fires the primary onClick */}\n <Button\n ref={actionButtonRef}\n type=\"button\"\n label={label}\n icon={icon}\n iconPosition=\"left\"\n disabled={disabled}\n {...buttonProps}\n onClick={onClick}\n data-testid=\"action-dropdown-btn\"\n />\n\n {/* Chevron trigger — opens the dropdown menu */}\n <DropdownMenuTrigger asChild disabled={disabled}>\n <PrimitiveButton\n type=\"button\"\n variant={variant}\n size={size}\n disabled={disabled}\n aria-label={t(\n \"neetoatoms.dropdownMenu.openMenu\",\n \"Open dropdown menu\"\n )}\n className=\"px-1.5\"\n >\n <ChevronDown\n aria-hidden=\"true\"\n className={cn(\n \"shrink-0 transition-transform duration-200\",\n isOpen && \"rotate-180\"\n )}\n />\n </PrimitiveButton>\n </DropdownMenuTrigger>\n </ButtonGroup>\n );\n }\n);\nSplitTrigger.displayName = \"Dropdown.SplitTrigger\";\n\nexport { SplitTrigger };\n","import React, { forwardRef } from \"react\";\n\nimport { ChevronDown } from \"lucide-react\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/components/Button\";\n\nimport type { BaseTriggerProps } from \"./types\";\n\n/**\n * Extra props that Radix's Slot injects when the parent Trigger uses\n * `asChild` (aria-expanded, aria-haspopup, data-state, id, …).\n * We capture them with a rest-spread so they reach the DOM button.\n */\ntype TriggerButtonProps = BaseTriggerProps &\n Omit<React.ComponentProps<\"button\">, keyof BaseTriggerProps>;\n\nconst TriggerButton = forwardRef<HTMLButtonElement, TriggerButtonProps>(\n (\n {\n label,\n icon,\n buttonProps,\n disabled,\n isOpen,\n onClick,\n className,\n ...otherProps\n },\n ref\n ) => (\n <Button\n ref={ref}\n type=\"button\"\n label={label}\n icon={icon}\n iconPosition=\"left\"\n trailing={\n <ChevronDown\n aria-hidden=\"true\"\n className={cn(\n \"shrink-0 transition-transform duration-200\",\n isOpen && \"rotate-180\"\n )}\n />\n }\n disabled={disabled}\n {...otherProps}\n {...buttonProps}\n onClick={onClick}\n className={cn(className, buttonProps?.className)}\n />\n )\n);\nTriggerButton.displayName = \"Dropdown.TriggerButton\";\n\nexport { TriggerButton };\n","import { createContext, type ReactNode, type Ref } from \"react\";\n\nimport {\n DropdownMenuContent,\n DropdownMenuItem as PrimitiveDropdownMenuItem,\n} from \"src/primitives/DropdownMenu\";\nimport type { ButtonProps } from \"src/components/Button\";\nimport type { IconProp } from \"src/shared/renderIcon\";\n\nexport type DropdownPosition =\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\"\n | \"top-start\"\n | \"top-end\"\n | \"bottom-start\"\n | \"bottom-end\"\n | \"left-start\"\n | \"left-end\"\n | \"right-start\"\n | \"right-end\"\n | \"auto\";\n\n/**\n * Mirrors the primitive `DropdownMenuItem`'s `variant` vocabulary so the\n * wrapper speaks the same language. Keep in sync with Radix primitive.\n */\nexport type MenuItemVariant = \"default\" | \"destructive\";\n\n/**\n * Props forwarded to the trigger button. Sourced from the `Button` wrapper,\n * so consumers can pass `variant`, `size`, `loading`, `tooltipProps`,\n * `fullWidth`, `iconPosition`, etc.\n *\n * The dropdown owns these and so they are excluded:\n * - `label`/`icon`: top-level props on `DropdownMenu`\n * - `trailing`: the chevron\n * - `disabled`: `DropdownMenu`'s own `disabled` prop is authoritative\n * - `onClick`: use `DropdownMenu`'s `onClick` (drives split-button mode)\n * - `to`/`href`: a navigating trigger doesn't open a menu\n * - `asChild`/`children`: use `customTarget` / `label` instead\n */\nexport type DropdownButtonProps = Omit<\n ButtonProps,\n | \"label\"\n | \"icon\"\n | \"trailing\"\n | \"disabled\"\n | \"onClick\"\n | \"to\"\n | \"href\"\n | \"asChild\"\n | \"children\"\n>;\n\nexport interface BaseTriggerProps {\n label?: string;\n icon?: IconProp;\n buttonProps?: DropdownButtonProps;\n disabled: boolean;\n isOpen: boolean;\n onClick?: (e: React.MouseEvent) => void;\n}\n\nexport interface DropdownProps {\n /** Text label displayed inside the trigger button. */\n label?: string;\n /** Icon rendered inside the trigger button. */\n icon?: IconProp;\n /**\n * Props forwarded to the trigger button (variant, size, className,\n * loading, tooltipProps, fullWidth, iconPosition, …). In split-button\n * mode, forwarded to the action button; the chevron half visually mirrors\n * `variant`/`size`. Accepts the full `Button` prop type minus the props\n * the dropdown controls.\n */\n buttonProps?: DropdownButtonProps;\n /** Custom trigger element. Overrides the default button trigger. */\n customTarget?: ReactNode | ((props: { isOpen: boolean }) => ReactNode);\n /** Whether the dropdown is disabled. */\n disabled?: boolean;\n /** Dropdown menu content. */\n children?: ReactNode;\n /** Position of the dropdown menu relative to the trigger. */\n position?: DropdownPosition;\n /** Whether pressing Escape closes the dropdown. */\n closeOnEsc?: boolean;\n /** Whether selecting an item closes the dropdown. */\n closeOnSelect?: boolean;\n /** Whether clicking outside closes the dropdown. */\n closeOnOutsideClick?: boolean;\n /** Controlled open state. */\n isOpen?: boolean;\n /** Callback fired when the dropdown closes. */\n onClose?: () => void;\n /**\n * Callback fired when the trigger button is clicked.\n * When provided (without `customTarget`), renders a **split-button**:\n * a primary action button (fires `onClick`) paired with a separate\n * chevron that opens the dropdown menu.\n */\n onClick?: (e: React.MouseEvent) => void;\n /** Additional CSS class names for the trigger wrapper. */\n className?: string;\n /** Ref forwarded to the trigger button. In split-button mode, forwarded to the action button. */\n triggerRef?: Ref<HTMLButtonElement>;\n /** Extra props forwarded to the DropdownMenuContent. */\n dropdownProps?: Omit<\n React.ComponentProps<typeof DropdownMenuContent>,\n \"side\" | \"align\"\n >;\n}\n\nexport interface MenuItemProps extends Omit<\n React.ComponentProps<typeof PrimitiveDropdownMenuItem>,\n \"prefix\" | \"variant\" | \"onClick\"\n> {\n /** Highlight as active. */\n isActive?: boolean;\n /** Disable the menu item. */\n isDisabled?: boolean;\n /** Visual variant of the menu item. */\n variant?: MenuItemVariant;\n /** Content rendered before the label. */\n prefix?: ReactNode;\n /** Content rendered after the label. */\n suffix?: ReactNode;\n /** Internal route (renders as anchor). */\n to?: string;\n /** External link (renders as anchor). */\n href?: string;\n /** Callback fired when the item is selected. */\n onClick?: (e: Event) => void;\n /** Children / label text. */\n children?: ReactNode;\n /** Additional CSS class names. */\n className?: string;\n}\n\nexport const DropdownContext = createContext({ closeOnSelect: true });\n","import { useCallback, useState } from \"react\";\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuTrigger,\n} from \"src/primitives/DropdownMenu\";\n\nimport { ALIGN_MAP, SIDE_MAP } from \"./constants\";\nimport { SplitTrigger } from \"./SplitTrigger\";\nimport { TriggerButton } from \"./TriggerButton\";\nimport { DropdownContext, type DropdownProps } from \"./types\";\n\nconst DropdownBase = ({\n label,\n icon,\n buttonProps,\n customTarget,\n disabled = false,\n children,\n position = \"bottom-end\",\n closeOnEsc = true,\n closeOnSelect = true,\n closeOnOutsideClick = true,\n isOpen: isOpenProp,\n onClose,\n onClick,\n className,\n triggerRef,\n dropdownProps,\n}: DropdownProps) => {\n const [internalOpen, setInternalOpen] = useState(false);\n const isControlled = isOpenProp !== undefined;\n const open = isControlled ? isOpenProp : internalOpen;\n const handleOpenChange = useCallback(\n (isOpen: boolean) => {\n if (!isControlled) setInternalOpen(isOpen);\n if (!isOpen) onClose?.();\n },\n [isControlled, onClose]\n );\n\n const side = SIDE_MAP[position] ?? \"bottom\";\n const align = ALIGN_MAP[position] ?? \"end\";\n\n // Split-button mode: onClick provided without a customTarget.\n const isSplit = !!onClick && !customTarget;\n\n const sharedTriggerProps = {\n label,\n icon,\n buttonProps,\n disabled,\n isOpen: open,\n onClick,\n };\n\n const triggerNode = isSplit ? (\n <SplitTrigger\n {...sharedTriggerProps}\n actionButtonRef={triggerRef}\n className={className}\n />\n ) : (\n <DropdownMenuTrigger asChild disabled={disabled} className={className}>\n {customTarget ? (\n typeof customTarget === \"function\" ? (\n customTarget({ isOpen: open })\n ) : (\n customTarget\n )\n ) : (\n <TriggerButton ref={triggerRef} {...sharedTriggerProps} />\n )}\n </DropdownMenuTrigger>\n );\n\n return (\n <DropdownContext.Provider value={{ closeOnSelect }}>\n <DropdownMenu\n open={open}\n onOpenChange={handleOpenChange}\n modal={closeOnOutsideClick}\n >\n {triggerNode}\n <DropdownMenuContent\n side={side}\n align={align}\n onEscapeKeyDown={closeOnEsc ? undefined : e => e.preventDefault()}\n onInteractOutside={\n closeOnOutsideClick ? undefined : e => e.preventDefault()\n }\n {...dropdownProps}\n >\n {children}\n </DropdownMenuContent>\n </DropdownMenu>\n </DropdownContext.Provider>\n );\n};\n\nexport { DropdownBase };\n","import React, { forwardRef } from \"react\";\n\nimport { DropdownMenuSeparator } from \"src/primitives/DropdownMenu\";\n\nconst Divider = forwardRef<\n HTMLDivElement,\n React.ComponentProps<typeof DropdownMenuSeparator>\n>((props, ref) => <DropdownMenuSeparator ref={ref} {...props} />);\nDivider.displayName = \"Dropdown.Divider\";\n\nexport { Divider };\n","import React, { forwardRef, type ReactNode } from \"react\";\n\nimport { DropdownMenuLabel } from \"src/primitives/DropdownMenu\";\n\ninterface MenuLabelProps extends React.ComponentProps<\"div\"> {\n children?: ReactNode;\n className?: string;\n}\n\nconst Label = forwardRef<HTMLDivElement, MenuLabelProps>(\n ({ children, className, ...otherProps }, ref) => (\n <DropdownMenuLabel ref={ref} className={className} {...otherProps}>\n {children}\n </DropdownMenuLabel>\n )\n);\nLabel.displayName = \"Dropdown.Label\";\n\nexport { Label };\n","import React, { forwardRef, type ReactNode } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { DropdownMenuGroup } from \"src/primitives/DropdownMenu\";\n\ninterface MenuProps extends React.ComponentProps<\"div\"> {\n children?: ReactNode;\n className?: string;\n}\n\nconst Menu = forwardRef<HTMLDivElement, MenuProps>(\n ({ children, className, ...otherProps }, ref) => (\n <DropdownMenuGroup\n ref={ref}\n className={cn(\"flex flex-col\", className)}\n {...otherProps}\n >\n {children}\n </DropdownMenuGroup>\n )\n);\nMenu.displayName = \"Dropdown.Menu\";\n\nexport { Menu };\n","import { forwardRef, useCallback, useContext, useMemo } from \"react\";\n\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { DropdownMenuItem as PrimitiveDropdownMenuItem } from \"src/primitives/DropdownMenu\";\n\nimport { DropdownContext, type MenuItemProps } from \"./types\";\n\nconst MenuItem = forwardRef<HTMLDivElement, MenuItemProps>(\n (\n {\n children,\n isActive = false,\n isDisabled = false,\n variant = \"default\",\n prefix,\n suffix,\n to,\n href,\n className,\n onClick,\n disabled: _disabled,\n asChild: _asChild,\n onSelect: _onSelect,\n ...otherProps\n },\n ref\n ) => {\n const { closeOnSelect } = useContext(DropdownContext);\n const linkHref = to ?? href;\n\n const handleSelect = useCallback(\n (e: Event) => {\n if (!closeOnSelect) e.preventDefault();\n onClick?.(e);\n },\n [closeOnSelect, onClick]\n );\n\n const itemContent = useMemo(\n () => (\n <>\n {prefix && (\n <span data-slot=\"menu-item-prefix\" className=\"shrink-0\">\n {prefix}\n </span>\n )}\n <span className=\"flex-1 truncate\">{children}</span>\n {suffix && (\n <span\n data-slot=\"menu-item-suffix\"\n className=\"ms-auto shrink-0 text-muted-foreground\"\n >\n {suffix}\n </span>\n )}\n </>\n ),\n [prefix, children, suffix]\n );\n\n return (\n <PrimitiveDropdownMenuItem\n ref={ref}\n variant={variant}\n disabled={isDisabled}\n data-active={isActive || undefined}\n className={cn(\n isActive && \"bg-accent text-accent-foreground\",\n className\n )}\n asChild={!!linkHref}\n onSelect={handleSelect}\n {...otherProps}\n >\n {linkHref ? <a href={linkHref}>{itemContent}</a> : itemContent}\n </PrimitiveDropdownMenuItem>\n );\n }\n);\nMenuItem.displayName = \"Dropdown.MenuItem\";\n\nexport { MenuItem };\n","import React, { forwardRef, type ReactNode } from \"react\";\n\nimport { renderIcon, type IconProp } from \"src/shared/renderIcon\";\nimport {\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n} from \"src/primitives/DropdownMenu\";\n\ninterface SubMenuProps {\n label?: string;\n icon?: IconProp;\n children?: ReactNode;\n className?: string;\n triggerProps?: Omit<\n React.ComponentProps<typeof DropdownMenuSubTrigger>,\n \"ref\" | \"className\" | \"children\"\n >;\n contentProps?: Omit<\n React.ComponentProps<typeof DropdownMenuSubContent>,\n \"children\"\n >;\n}\n\nconst SubMenu = forwardRef<HTMLDivElement, SubMenuProps>(\n ({ label, icon, children, className, triggerProps, contentProps }, ref) => (\n <DropdownMenuSub>\n <DropdownMenuSubTrigger ref={ref} className={className} {...triggerProps}>\n {icon && <span className=\"shrink-0\">{renderIcon(icon, \"size-4\")}</span>}\n {label && <span>{label}</span>}\n </DropdownMenuSubTrigger>\n <DropdownMenuSubContent {...contentProps}>\n {children}\n </DropdownMenuSubContent>\n </DropdownMenuSub>\n )\n);\nSubMenu.displayName = \"Dropdown.SubMenu\";\n\nexport { SubMenu };\n","import { DropdownBase } from \"./DropdownBase\";\nimport { Divider } from \"./Divider\";\nimport { Label } from \"./Label\";\nimport { Menu } from \"./Menu\";\nimport { MenuItem } from \"./MenuItem\";\nimport { SubMenu } from \"./SubMenu\";\n\nexport type { DropdownProps, DropdownPosition } from \"./types\";\n\ntype DropdownComponent = typeof DropdownBase & {\n displayName?: string;\n Menu: typeof Menu;\n MenuItem: typeof MenuItem;\n Divider: typeof Divider;\n Label: typeof Label;\n SubMenu: typeof SubMenu;\n};\n\nconst DropdownMenu = DropdownBase as DropdownComponent;\nDropdownMenu.displayName = \"DropdownMenu\";\nDropdownMenu.Menu = Menu;\nDropdownMenu.MenuItem = MenuItem;\nDropdownMenu.Divider = Divider;\nDropdownMenu.Label = Label;\nDropdownMenu.SubMenu = SubMenu;\n\nexport { DropdownMenu };\n"],"names":["PrimitiveButton","DropdownMenu","PrimitiveDropdownMenuItem"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
2
  import { Button } from "src/components/Button";
3
- import { type IconProp } from "src/lib/renderIcon";
3
+ import { type IconProp } from "src/shared/renderIcon";
4
4
  export interface EmptyProps extends React.ComponentProps<"div"> {
5
5
  /** Image URL or JSX for the media area. */
6
6
  image?: string | React.ReactNode;
@@ -3,16 +3,43 @@ import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import '../utils-BJnb9o5c.js';
5
5
  import '../primitives/Field.js';
6
- import '../index-Bo3AAQJp.js';
7
- import '../label-BgLSVt4u.js';
6
+ import '../HelpIcon-Cm3ZgoCx.js';
7
+ import '../primitives/Tooltip.js';
8
+ import '../tooltip-ChQ9xD1j.js';
9
+ import '../index-DNzunGHb.js';
10
+ import '../index-BtkPdosV.js';
11
+ import '../index-CiyxEyB0.js';
12
+ import '../index-BNPynZWM.js';
8
13
  import '../index-DhnfW8wQ.js';
9
14
  import 'react-dom';
10
- import '../index-BtkPdosV.js';
15
+ import '../index-CSUSJzOJ.js';
16
+ import '../index-zW4GjM5L.js';
17
+ import '../index-DOzu5J1s.js';
18
+ import '../index-C3hByjk3.js';
19
+ import '../floating-ui.react-dom-D8_f_WWh.js';
20
+ import '../index-BYZaLNq1.js';
21
+ import '../index-fV_U4ZJM.js';
22
+ import '../index-yFgkK_AM.js';
23
+ import '../index-Cor698lu.js';
24
+ import '../index-CSggBaQF.js';
25
+ import '../renderIcon-C6twJSqH.js';
26
+ import '../createLucideIcon-C8ycilSN.js';
27
+ import '../Popover-C1FNlRtU.js';
28
+ import '../index-Bo3AAQJp.js';
29
+ import '../primitives/HoverCard.js';
30
+ import '../Typography-CmILccNh.js';
31
+ import '../index-CfriMyrd.js';
32
+ import '../Button-DV9xCqlc.js';
33
+ import 'react-router-dom';
34
+ import '../primitives/Button.js';
35
+ import '../button-CrEMzWKw.js';
36
+ import '../primitives/Spinner.js';
37
+ import 'react-i18next';
38
+ import '../loader-circle-DycHUAWN.js';
39
+ import '../label-BgLSVt4u.js';
11
40
  import '../separator-ByRsc-y-.js';
12
41
  import '../primitives/InputGroup.js';
13
42
  import '../input-group-BKkj65Uq.js';
14
- import '../button-CrEMzWKw.js';
15
- import '../index-CfriMyrd.js';
16
43
  import '../input-1J5oQa1u.js';
17
44
  import '../textarea-B0vzA497.js';
18
45
  import '../withIconSize-BonoFXeH.js';
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Input.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,33 +1,7 @@
1
1
  import React from "react";
2
- import { type IconProp } from "src/lib/renderIcon";
2
+ import { type HelpIconProps } from "src/shared/HelpIcon";
3
3
  import { Label as PrimitiveLabel } from "src/primitives/Label";
4
- import { type ButtonProps } from "src/components/Button";
5
- interface HelpIconTooltipProps {
6
- /** Tooltip content. */
7
- content?: React.ReactNode;
8
- /** Tooltip position. */
9
- position?: string;
10
- }
11
- interface HelpIconPopoverProps {
12
- /** Popover title. */
13
- title?: React.ReactNode;
14
- /** Popover description. */
15
- description?: React.ReactNode;
16
- /** Props for an optional help link button inside the popover. */
17
- helpLinkProps?: ButtonProps;
18
- }
19
- interface HelpIconProps {
20
- /** Click handler on the help icon. */
21
- onClick?: () => void;
22
- /** Custom icon. Defaults to CircleHelpIcon. */
23
- icon?: IconProp;
24
- /** Show a tooltip on hover. */
25
- tooltipProps?: HelpIconTooltipProps;
26
- /** Show a popover on hover with title, description, and optional link. */
27
- popoverProps?: HelpIconPopoverProps;
28
- /** Additional class name for the help icon. */
29
- className?: string;
30
- }
4
+ export type { HelpIconProps };
31
5
  export interface LabelProps extends React.ComponentProps<typeof PrimitiveLabel> {
32
6
  /** Shows a red asterisk after the label text. */
33
7
  required?: boolean;
@@ -1,18 +1,16 @@
1
- export { L as Label } from '../Label-DndePzSD.js';
1
+ export { L as Label } from '../Label-mrNM2drW.js';
2
2
  import 'react/jsx-runtime';
3
3
  import 'react';
4
- import '../utils-BJnb9o5c.js';
5
- import '../renderIcon-C6twJSqH.js';
6
- import '../primitives/Label.js';
7
- import '../label-BgLSVt4u.js';
8
- import '../index-DhnfW8wQ.js';
9
- import 'react-dom';
10
- import '../index-BtkPdosV.js';
4
+ import '../HelpIcon-Cm3ZgoCx.js';
11
5
  import '../primitives/Tooltip.js';
12
6
  import '../tooltip-ChQ9xD1j.js';
7
+ import '../utils-BJnb9o5c.js';
13
8
  import '../index-DNzunGHb.js';
9
+ import '../index-BtkPdosV.js';
14
10
  import '../index-CiyxEyB0.js';
15
11
  import '../index-BNPynZWM.js';
12
+ import '../index-DhnfW8wQ.js';
13
+ import 'react-dom';
16
14
  import '../index-CSUSJzOJ.js';
17
15
  import '../index-zW4GjM5L.js';
18
16
  import '../index-DOzu5J1s.js';
@@ -23,6 +21,7 @@ import '../index-fV_U4ZJM.js';
23
21
  import '../index-yFgkK_AM.js';
24
22
  import '../index-Cor698lu.js';
25
23
  import '../index-CSggBaQF.js';
24
+ import '../renderIcon-C6twJSqH.js';
26
25
  import '../createLucideIcon-C8ycilSN.js';
27
26
  import '../Popover-C1FNlRtU.js';
28
27
  import '../index-Bo3AAQJp.js';
@@ -36,4 +35,6 @@ import '../button-CrEMzWKw.js';
36
35
  import '../primitives/Spinner.js';
37
36
  import 'react-i18next';
38
37
  import '../loader-circle-DycHUAWN.js';
38
+ import '../primitives/Label.js';
39
+ import '../label-BgLSVt4u.js';
39
40
  //# sourceMappingURL=Label.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Label.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,13 +3,41 @@ import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import '../utils-BJnb9o5c.js';
5
5
  import '../primitives/Field.js';
6
- import '../index-Bo3AAQJp.js';
7
- import '../label-BgLSVt4u.js';
6
+ import '../HelpIcon-Cm3ZgoCx.js';
7
+ import '../primitives/Tooltip.js';
8
+ import '../tooltip-ChQ9xD1j.js';
9
+ import '../index-DNzunGHb.js';
10
+ import '../index-BtkPdosV.js';
11
+ import '../index-CiyxEyB0.js';
12
+ import '../index-BNPynZWM.js';
8
13
  import '../index-DhnfW8wQ.js';
9
14
  import 'react-dom';
10
- import '../index-BtkPdosV.js';
15
+ import '../index-CSUSJzOJ.js';
16
+ import '../index-zW4GjM5L.js';
17
+ import '../index-DOzu5J1s.js';
18
+ import '../index-C3hByjk3.js';
19
+ import '../floating-ui.react-dom-D8_f_WWh.js';
20
+ import '../index-BYZaLNq1.js';
21
+ import '../index-fV_U4ZJM.js';
22
+ import '../index-yFgkK_AM.js';
23
+ import '../index-Cor698lu.js';
24
+ import '../index-CSggBaQF.js';
25
+ import '../renderIcon-C6twJSqH.js';
26
+ import '../createLucideIcon-C8ycilSN.js';
27
+ import '../Popover-C1FNlRtU.js';
28
+ import '../index-Bo3AAQJp.js';
29
+ import '../primitives/HoverCard.js';
30
+ import '../Typography-CmILccNh.js';
31
+ import '../index-CfriMyrd.js';
32
+ import '../Button-DV9xCqlc.js';
33
+ import 'react-router-dom';
34
+ import '../primitives/Button.js';
35
+ import '../button-CrEMzWKw.js';
36
+ import '../primitives/Spinner.js';
37
+ import 'react-i18next';
38
+ import '../loader-circle-DycHUAWN.js';
39
+ import '../label-BgLSVt4u.js';
11
40
  import '../separator-ByRsc-y-.js';
12
41
  import '../withIconSize-BonoFXeH.js';
13
42
  import '../x-_o2T3n6D.js';
14
- import '../createLucideIcon-C8ycilSN.js';
15
43
  //# sourceMappingURL=MultiEmailInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MultiEmailInput.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MultiEmailInput.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,6 @@
1
1
  import React from "react";
2
2
  import { RadioGroup as PrimitiveRadioGroup, RadioGroupItem as PrimitiveRadioGroupItem } from "src/primitives/RadioGroup";
3
+ import { FieldLabel } from "src/primitives/Field";
3
4
  export interface RadioGroupProps extends Omit<React.ComponentProps<typeof PrimitiveRadioGroup>, "children"> {
4
5
  /** Group label displayed above the radio items. */
5
6
  label?: string;
@@ -13,6 +14,8 @@ export interface RadioGroupProps extends Omit<React.ComponentProps<typeof Primit
13
14
  className?: string;
14
15
  /** RadioGroup.Item children. */
15
16
  children?: React.ReactNode;
17
+ /** Props forwarded to the group Label element. */
18
+ labelProps?: React.ComponentProps<typeof FieldLabel>;
16
19
  }
17
20
  export interface RadioGroupItemProps extends React.ComponentProps<typeof PrimitiveRadioGroupItem> {
18
21
  /** Label displayed next to the radio. */
@@ -1,4 +1,4 @@
1
- export { R as RadioGroup } from '../RadioGroup-BTemSonO.js';
1
+ export { R as RadioGroup } from '../RadioGroup-BRAVPPc3.js';
2
2
  import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import '../utils-BJnb9o5c.js';
@@ -21,6 +21,27 @@ import '../index-yFgkK_AM.js';
21
21
  import '../primitives/Label.js';
22
22
  import '../label-BgLSVt4u.js';
23
23
  import '../primitives/Field.js';
24
+ import '../HelpIcon-Cm3ZgoCx.js';
25
+ import '../primitives/Tooltip.js';
26
+ import '../tooltip-ChQ9xD1j.js';
27
+ import '../index-BNPynZWM.js';
28
+ import '../index-C3hByjk3.js';
29
+ import '../floating-ui.react-dom-D8_f_WWh.js';
30
+ import '../index-fV_U4ZJM.js';
31
+ import '../index-CSggBaQF.js';
32
+ import '../renderIcon-C6twJSqH.js';
33
+ import '../createLucideIcon-C8ycilSN.js';
34
+ import '../Popover-C1FNlRtU.js';
24
35
  import '../index-Bo3AAQJp.js';
36
+ import '../primitives/HoverCard.js';
37
+ import '../Typography-CmILccNh.js';
38
+ import '../index-CfriMyrd.js';
39
+ import '../Button-DV9xCqlc.js';
40
+ import 'react-router-dom';
41
+ import '../primitives/Button.js';
42
+ import '../button-CrEMzWKw.js';
43
+ import '../primitives/Spinner.js';
44
+ import 'react-i18next';
45
+ import '../loader-circle-DycHUAWN.js';
25
46
  import '../separator-ByRsc-y-.js';
26
47
  //# sourceMappingURL=RadioGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"RadioGroup.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,28 +3,50 @@ import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import '../SelectFieldWrapper-CiBARDsn.js';
5
5
  import '../primitives/Field.js';
6
- import '../index-Bo3AAQJp.js';
6
+ import '../HelpIcon-Cm3ZgoCx.js';
7
+ import '../primitives/Tooltip.js';
8
+ import '../tooltip-ChQ9xD1j.js';
7
9
  import '../utils-BJnb9o5c.js';
8
- import '../label-BgLSVt4u.js';
10
+ import '../index-DNzunGHb.js';
11
+ import '../index-BtkPdosV.js';
12
+ import '../index-CiyxEyB0.js';
13
+ import '../index-BNPynZWM.js';
9
14
  import '../index-DhnfW8wQ.js';
10
15
  import 'react-dom';
11
- import '../index-BtkPdosV.js';
16
+ import '../index-CSUSJzOJ.js';
17
+ import '../index-zW4GjM5L.js';
18
+ import '../index-DOzu5J1s.js';
19
+ import '../index-C3hByjk3.js';
20
+ import '../floating-ui.react-dom-D8_f_WWh.js';
21
+ import '../index-BYZaLNq1.js';
22
+ import '../index-fV_U4ZJM.js';
23
+ import '../index-yFgkK_AM.js';
24
+ import '../index-Cor698lu.js';
25
+ import '../index-CSggBaQF.js';
26
+ import '../renderIcon-C6twJSqH.js';
27
+ import '../createLucideIcon-C8ycilSN.js';
28
+ import '../Popover-C1FNlRtU.js';
29
+ import '../index-Bo3AAQJp.js';
30
+ import '../primitives/HoverCard.js';
31
+ import '../Typography-CmILccNh.js';
32
+ import '../index-CfriMyrd.js';
33
+ import '../Button-DV9xCqlc.js';
34
+ import 'react-router-dom';
35
+ import '../primitives/Button.js';
36
+ import '../button-CrEMzWKw.js';
37
+ import '../primitives/Spinner.js';
38
+ import 'react-i18next';
39
+ import '../loader-circle-DycHUAWN.js';
40
+ import '../label-BgLSVt4u.js';
12
41
  import '../separator-ByRsc-y-.js';
13
42
  import '../primitives/Combobox.js';
14
- import '../button-CrEMzWKw.js';
15
- import '../index-CfriMyrd.js';
16
43
  import '../input-group-BKkj65Uq.js';
17
44
  import '../input-1J5oQa1u.js';
18
45
  import '../textarea-B0vzA497.js';
19
46
  import '../check-Cpkv29p1.js';
20
- import '../createLucideIcon-C8ycilSN.js';
21
47
  import '../x-_o2T3n6D.js';
22
48
  import '../chevron-down-BNi0ntys.js';
23
- import '../floating-ui.react-dom-D8_f_WWh.js';
24
49
  import '../index-DZXbzIgC.js';
25
50
  import '../index-CSMSzzKM.js';
26
51
  import '../with-selector-Dv0G_V_o.js';
27
- import '../primitives/Spinner.js';
28
- import 'react-i18next';
29
- import '../loader-circle-DycHUAWN.js';
30
52
  //# sourceMappingURL=Select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Select.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -16,7 +16,31 @@ import '../index-DhnfW8wQ.js';
16
16
  import 'react-dom';
17
17
  import '../index-Dd1i1d2M.js';
18
18
  import '../primitives/Field.js';
19
+ import '../HelpIcon-Cm3ZgoCx.js';
20
+ import '../primitives/Tooltip.js';
21
+ import '../tooltip-ChQ9xD1j.js';
22
+ import '../index-BNPynZWM.js';
23
+ import '../index-CSUSJzOJ.js';
24
+ import '../index-zW4GjM5L.js';
25
+ import '../index-C3hByjk3.js';
26
+ import '../floating-ui.react-dom-D8_f_WWh.js';
27
+ import '../index-fV_U4ZJM.js';
28
+ import '../index-yFgkK_AM.js';
29
+ import '../index-CSggBaQF.js';
30
+ import '../renderIcon-C6twJSqH.js';
31
+ import '../createLucideIcon-C8ycilSN.js';
32
+ import '../Popover-C1FNlRtU.js';
19
33
  import '../index-Bo3AAQJp.js';
34
+ import '../primitives/HoverCard.js';
35
+ import '../Typography-CmILccNh.js';
36
+ import '../index-CfriMyrd.js';
37
+ import '../Button-DV9xCqlc.js';
38
+ import 'react-router-dom';
39
+ import '../primitives/Button.js';
40
+ import '../button-CrEMzWKw.js';
41
+ import '../primitives/Spinner.js';
42
+ import 'react-i18next';
43
+ import '../loader-circle-DycHUAWN.js';
20
44
  import '../label-BgLSVt4u.js';
21
45
  import '../separator-ByRsc-y-.js';
22
46
  //# sourceMappingURL=Slider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Slider.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,5 @@
1
1
  import React from "react";
2
+ import { FieldLabel } from "src/primitives/Field";
2
3
  import { Switch as PrimitiveSwitch } from "src/primitives/Switch";
3
4
  export interface SwitchProps extends Omit<React.ComponentProps<typeof PrimitiveSwitch>, "children"> {
4
5
  /** Text label displayed next to the switch. */
@@ -13,6 +14,8 @@ export interface SwitchProps extends Omit<React.ComponentProps<typeof PrimitiveS
13
14
  className?: string;
14
15
  /** Size of the switch. */
15
16
  size?: "sm" | "default" | "lg";
17
+ /** Props forwarded to the Label element. */
18
+ labelProps?: React.ComponentProps<typeof FieldLabel>;
16
19
  }
17
20
  declare const Switch: React.ForwardRefExoticComponent<Omit<SwitchProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
18
21
  export { Switch };
@@ -1,17 +1,43 @@
1
- export { S as Switch } from '../Switch-OAB7pfNn.js';
1
+ export { S as Switch } from '../Switch-b4ZAjhRy.js';
2
2
  import 'react/jsx-runtime';
3
3
  import 'react';
4
- import '../primitives/Switch.js';
4
+ import '../primitives/Field.js';
5
+ import '../HelpIcon-Cm3ZgoCx.js';
6
+ import '../primitives/Tooltip.js';
7
+ import '../tooltip-ChQ9xD1j.js';
5
8
  import '../utils-BJnb9o5c.js';
6
9
  import '../index-DNzunGHb.js';
7
10
  import '../index-BtkPdosV.js';
8
11
  import '../index-CiyxEyB0.js';
9
- import '../index-Cor698lu.js';
10
- import '../index-DOzu5J1s.js';
11
- import '../index-30QpKM0j.js';
12
- import '../index-BYZaLNq1.js';
12
+ import '../index-BNPynZWM.js';
13
13
  import '../index-DhnfW8wQ.js';
14
14
  import 'react-dom';
15
- import '../primitives/Label.js';
15
+ import '../index-CSUSJzOJ.js';
16
+ import '../index-zW4GjM5L.js';
17
+ import '../index-DOzu5J1s.js';
18
+ import '../index-C3hByjk3.js';
19
+ import '../floating-ui.react-dom-D8_f_WWh.js';
20
+ import '../index-BYZaLNq1.js';
21
+ import '../index-fV_U4ZJM.js';
22
+ import '../index-yFgkK_AM.js';
23
+ import '../index-Cor698lu.js';
24
+ import '../index-CSggBaQF.js';
25
+ import '../renderIcon-C6twJSqH.js';
26
+ import '../createLucideIcon-C8ycilSN.js';
27
+ import '../Popover-C1FNlRtU.js';
28
+ import '../index-Bo3AAQJp.js';
29
+ import '../primitives/HoverCard.js';
30
+ import '../Typography-CmILccNh.js';
31
+ import '../index-CfriMyrd.js';
32
+ import '../Button-DV9xCqlc.js';
33
+ import 'react-router-dom';
34
+ import '../primitives/Button.js';
35
+ import '../button-CrEMzWKw.js';
36
+ import '../primitives/Spinner.js';
37
+ import 'react-i18next';
38
+ import '../loader-circle-DycHUAWN.js';
16
39
  import '../label-BgLSVt4u.js';
40
+ import '../separator-ByRsc-y-.js';
41
+ import '../primitives/Switch.js';
42
+ import '../index-30QpKM0j.js';
17
43
  //# sourceMappingURL=Switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Switch.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { type IconProp } from "src/lib/renderIcon";
2
+ import { type IconProp } from "src/shared/renderIcon";
3
3
  import { Tabs as PrimitiveTabs, TabsTrigger as PrimitiveTabsTrigger } from "src/primitives/Tabs";
4
4
  type TabsSize = "default" | "lg";
5
5
  export interface TabsProps extends React.ComponentProps<typeof PrimitiveTabs> {
@@ -3,11 +3,40 @@ import 'react/jsx-runtime';
3
3
  import 'react';
4
4
  import '../utils-BJnb9o5c.js';
5
5
  import '../primitives/Field.js';
6
- import '../index-Bo3AAQJp.js';
7
- import '../label-BgLSVt4u.js';
6
+ import '../HelpIcon-Cm3ZgoCx.js';
7
+ import '../primitives/Tooltip.js';
8
+ import '../tooltip-ChQ9xD1j.js';
9
+ import '../index-DNzunGHb.js';
10
+ import '../index-BtkPdosV.js';
11
+ import '../index-CiyxEyB0.js';
12
+ import '../index-BNPynZWM.js';
8
13
  import '../index-DhnfW8wQ.js';
9
14
  import 'react-dom';
10
- import '../index-BtkPdosV.js';
15
+ import '../index-CSUSJzOJ.js';
16
+ import '../index-zW4GjM5L.js';
17
+ import '../index-DOzu5J1s.js';
18
+ import '../index-C3hByjk3.js';
19
+ import '../floating-ui.react-dom-D8_f_WWh.js';
20
+ import '../index-BYZaLNq1.js';
21
+ import '../index-fV_U4ZJM.js';
22
+ import '../index-yFgkK_AM.js';
23
+ import '../index-Cor698lu.js';
24
+ import '../index-CSggBaQF.js';
25
+ import '../renderIcon-C6twJSqH.js';
26
+ import '../createLucideIcon-C8ycilSN.js';
27
+ import '../Popover-C1FNlRtU.js';
28
+ import '../index-Bo3AAQJp.js';
29
+ import '../primitives/HoverCard.js';
30
+ import '../Typography-CmILccNh.js';
31
+ import '../index-CfriMyrd.js';
32
+ import '../Button-DV9xCqlc.js';
33
+ import 'react-router-dom';
34
+ import '../primitives/Button.js';
35
+ import '../button-CrEMzWKw.js';
36
+ import '../primitives/Spinner.js';
37
+ import 'react-i18next';
38
+ import '../loader-circle-DycHUAWN.js';
39
+ import '../label-BgLSVt4u.js';
11
40
  import '../separator-ByRsc-y-.js';
12
41
  import '../primitives/Textarea.js';
13
42
  import '../textarea-B0vzA497.js';
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"Textarea.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}