@bigbinary/neeto-atoms 1.0.119 → 1.0.121
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.
- package/dist/{Alert-D5GO59Aj.js → Alert-DYROpfTf.js} +2 -2
- package/dist/{Alert-D5GO59Aj.js.map → Alert-DYROpfTf.js.map} +1 -1
- package/dist/{Button-DkIQvxAe.js → Button-ZssOVkG0.js} +4 -3
- package/dist/Button-ZssOVkG0.js.map +1 -0
- package/dist/{DataTable-Dd2QcXL-.js → DataTable-BNhOcmQ8.js} +16 -8
- package/dist/{DataTable-Dd2QcXL-.js.map → DataTable-BNhOcmQ8.js.map} +1 -1
- package/dist/{Empty-Rbdjvttt.js → Empty-XqdCD2dj.js} +2 -2
- package/dist/{Empty-Rbdjvttt.js.map → Empty-XqdCD2dj.js.map} +1 -1
- package/dist/{HelpIcon-EjtPpYCx.js → HelpIcon-CB6wsVSF.js} +2 -2
- package/dist/{HelpIcon-EjtPpYCx.js.map → HelpIcon-CB6wsVSF.js.map} +1 -1
- package/dist/{Label-Cr83bru_.js → Label-BUf6CzV9.js} +2 -2
- package/dist/{Label-Cr83bru_.js.map → Label-BUf6CzV9.js.map} +1 -1
- package/dist/cjs/{Alert-CXPGm6RG.js → Alert-D_2cJF7J.js} +2 -2
- package/dist/cjs/{Alert-CXPGm6RG.js.map → Alert-D_2cJF7J.js.map} +1 -1
- package/dist/cjs/{Button-CeSFPW-p.js → Button-BQ4rpzsl.js} +4 -3
- package/dist/cjs/Button-BQ4rpzsl.js.map +1 -0
- package/dist/cjs/{DataTable-DQXIJu3I.js → DataTable-CzMzW8tr.js} +16 -8
- package/dist/cjs/{DataTable-DQXIJu3I.js.map → DataTable-CzMzW8tr.js.map} +1 -1
- package/dist/cjs/{Empty-CPyvZsWq.js → Empty-DGvhPdiG.js} +2 -2
- package/dist/cjs/{Empty-CPyvZsWq.js.map → Empty-DGvhPdiG.js.map} +1 -1
- package/dist/cjs/{HelpIcon-CmaOmNLN.js → HelpIcon-fsWWgStQ.js} +2 -2
- package/dist/cjs/{HelpIcon-CmaOmNLN.js.map → HelpIcon-fsWWgStQ.js.map} +1 -1
- package/dist/cjs/{Label-BVVCdGCQ.js → Label-Dfq_eZzp.js} +2 -2
- package/dist/cjs/{Label-BVVCdGCQ.js.map → Label-Dfq_eZzp.js.map} +1 -1
- package/dist/cjs/components/Alert.js +2 -2
- package/dist/cjs/components/Button.js +1 -1
- package/dist/cjs/components/Checkbox.js +2 -2
- package/dist/cjs/components/DataTable.js +2 -2
- package/dist/cjs/components/DatePicker.js +2 -2
- package/dist/cjs/components/DropdownMenu.js +1 -1
- package/dist/cjs/components/Empty.js +2 -2
- package/dist/cjs/components/Input.js +2 -2
- package/dist/cjs/components/Label.js +3 -3
- package/dist/cjs/components/MultiEmailInput.js +2 -2
- package/dist/cjs/components/RadioGroup.js +2 -2
- package/dist/cjs/components/Select.js +2 -2
- package/dist/cjs/components/Slider.js +2 -2
- package/dist/cjs/components/Switch.js +3 -2
- package/dist/cjs/components/Switch.js.map +1 -1
- package/dist/cjs/components/Textarea.js +2 -2
- package/dist/cjs/components/TimePicker.js +2 -2
- package/dist/cjs/components/TreeSelect.js +2 -2
- package/dist/cjs/components/index.js +6 -6
- package/dist/cjs/formik/ActionBlock.js +1 -1
- package/dist/cjs/formik/BlockNavigation.js +1 -1
- package/dist/cjs/formik/Button.js +1 -1
- package/dist/cjs/formik/Checkbox.js +2 -2
- package/dist/cjs/formik/Input.js +2 -2
- package/dist/cjs/formik/MultiEmailInput.js +2 -2
- package/dist/cjs/formik/RadioGroup.js +2 -2
- package/dist/cjs/formik/Select.js +2 -2
- package/dist/cjs/formik/Slider.js +2 -2
- package/dist/cjs/formik/Switch.js +3 -2
- package/dist/cjs/formik/Switch.js.map +1 -1
- package/dist/cjs/formik/Textarea.js +2 -2
- package/dist/cjs/formik/TreeSelect.js +2 -2
- package/dist/cjs/formik/index.js +2 -2
- package/dist/cjs/index.js +6 -6
- package/dist/cjs/primitives/AlertDialog.js +39 -7
- package/dist/cjs/primitives/AlertDialog.js.map +1 -1
- package/dist/cjs/primitives/Button.js +28 -13
- package/dist/cjs/primitives/Button.js.map +1 -1
- package/dist/cjs/primitives/Checkbox.js +1 -0
- package/dist/cjs/primitives/Checkbox.js.map +1 -1
- package/dist/cjs/primitives/Dialog.js +4 -1
- package/dist/cjs/primitives/Dialog.js.map +1 -1
- package/dist/cjs/primitives/Field.js +2 -2
- package/dist/cjs/primitives/RadioGroup.js +2 -2
- package/dist/cjs/primitives/RadioGroup.js.map +1 -1
- package/dist/cjs/primitives/Switch.js +15 -2
- package/dist/cjs/primitives/Switch.js.map +1 -1
- package/dist/cjs/primitives/index.js +3 -3
- package/dist/components/Alert.js +2 -2
- package/dist/components/Button/Button.d.ts +9 -1
- package/dist/components/Button/index.d.ts +1 -1
- package/dist/components/Button.js +1 -1
- package/dist/components/Checkbox.js +2 -2
- package/dist/components/DataTable.js +2 -2
- package/dist/components/DatePicker.js +2 -2
- package/dist/components/DropdownMenu.js +1 -1
- package/dist/components/Empty.js +2 -2
- package/dist/components/Input.js +2 -2
- package/dist/components/Label.js +3 -3
- package/dist/components/MultiEmailInput.js +2 -2
- package/dist/components/RadioGroup.js +2 -2
- package/dist/components/Select.js +2 -2
- package/dist/components/Slider.js +2 -2
- package/dist/components/Switch.js +3 -2
- package/dist/components/Switch.js.map +1 -1
- package/dist/components/Textarea.js +2 -2
- package/dist/components/TimePicker.js +2 -2
- package/dist/components/TreeSelect.js +2 -2
- package/dist/components/index.js +6 -6
- package/dist/formik/ActionBlock.js +1 -1
- package/dist/formik/BlockNavigation.js +1 -1
- package/dist/formik/Button.js +1 -1
- package/dist/formik/Checkbox.js +2 -2
- package/dist/formik/Input.js +2 -2
- package/dist/formik/MultiEmailInput.js +2 -2
- package/dist/formik/RadioGroup.js +2 -2
- package/dist/formik/Select.js +2 -2
- package/dist/formik/Slider.js +2 -2
- package/dist/formik/Switch.js +3 -2
- package/dist/formik/Switch.js.map +1 -1
- package/dist/formik/Textarea.js +2 -2
- package/dist/formik/TreeSelect.js +2 -2
- package/dist/formik/index.js +2 -2
- package/dist/index.css +5 -2
- package/dist/index.js +6 -6
- package/dist/primitives/AlertDialog.js +39 -7
- package/dist/primitives/AlertDialog.js.map +1 -1
- package/dist/primitives/Button.d.ts +15 -6
- package/dist/primitives/Button.js +28 -13
- package/dist/primitives/Button.js.map +1 -1
- package/dist/primitives/Checkbox.js +1 -0
- package/dist/primitives/Checkbox.js.map +1 -1
- package/dist/primitives/Dialog.d.ts +1 -1
- package/dist/primitives/Dialog.js +4 -1
- package/dist/primitives/Dialog.js.map +1 -1
- package/dist/primitives/Field.js +2 -2
- package/dist/primitives/RadioGroup.js +2 -2
- package/dist/primitives/RadioGroup.js.map +1 -1
- package/dist/primitives/Switch.js +15 -2
- package/dist/primitives/Switch.js.map +1 -1
- package/dist/primitives/index.js +3 -3
- package/package.json +1 -1
- package/dist/Button-DkIQvxAe.js.map +0 -1
- package/dist/cjs/Button-CeSFPW-p.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","sources":["../../node_modules/@radix-ui/react-checkbox/dist/index.mjs","../../src/shadcn/components/checkbox.tsx","../../src/primitives/Checkbox.tsx"],"sourcesContent":["\"use client\";\n\n// src/checkbox.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar CHECKBOX_NAME = \"Checkbox\";\nvar [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);\nvar [CheckboxProviderImpl, useCheckboxContext] = createCheckboxContext(CHECKBOX_NAME);\nfunction CheckboxProvider(props) {\n const {\n __scopeCheckbox,\n checked: checkedProp,\n children,\n defaultChecked,\n disabled,\n form,\n name,\n onCheckedChange,\n required,\n value = \"on\",\n // @ts-expect-error\n internal_do_not_use_render\n } = props;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: CHECKBOX_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = control ? !!form || !!control.closest(\"form\") : (\n // We set this to true by default so that events bubble to forms without JS (SSR)\n true\n );\n const context = {\n checked,\n disabled,\n setChecked,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n required,\n defaultChecked: isIndeterminate(defaultChecked) ? false : defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(\n CheckboxProviderImpl,\n {\n scope: __scopeCheckbox,\n ...context,\n children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children\n }\n );\n}\nvar TRIGGER_NAME = \"CheckboxTrigger\";\nvar CheckboxTrigger = React.forwardRef(\n ({ __scopeCheckbox, onKeyDown, onClick, ...checkboxProps }, forwardedRef) => {\n const {\n control,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n isFormControl,\n bubbleInput\n } = useCheckboxContext(TRIGGER_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const form = control?.form;\n if (form) {\n const reset = () => setChecked(initialCheckedStateRef.current);\n form.addEventListener(\"reset\", reset);\n return () => form.removeEventListener(\"reset\", reset);\n }\n }, [control, setChecked]);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"checkbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...checkboxProps,\n ref: composedRefs,\n onKeyDown: composeEventHandlers(onKeyDown, (event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onClick: composeEventHandlers(onClick, (event) => {\n setChecked((prevChecked) => isIndeterminate(prevChecked) ? true : !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }\n);\nCheckboxTrigger.displayName = TRIGGER_NAME;\nvar Checkbox = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCheckbox,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...checkboxProps\n } = props;\n return /* @__PURE__ */ jsx(\n CheckboxProvider,\n {\n __scopeCheckbox,\n checked,\n defaultChecked,\n disabled,\n required,\n onCheckedChange,\n name,\n form,\n value,\n internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n CheckboxTrigger,\n {\n ...checkboxProps,\n ref: forwardedRef,\n __scopeCheckbox\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n CheckboxBubbleInput,\n {\n __scopeCheckbox\n }\n )\n ] })\n }\n );\n }\n);\nCheckbox.displayName = CHECKBOX_NAME;\nvar INDICATOR_NAME = \"CheckboxIndicator\";\nvar CheckboxIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCheckbox, forceMount, ...indicatorProps } = props;\n const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(context.checked) || context.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef,\n style: { pointerEvents: \"none\", ...props.style }\n }\n )\n }\n );\n }\n);\nCheckboxIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"CheckboxBubbleInput\";\nvar CheckboxBubbleInput = React.forwardRef(\n ({ __scopeCheckbox, ...props }, forwardedRef) => {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useCheckboxContext(BUBBLE_INPUT_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = bubbleInput;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n const bubbles = !hasConsumerStoppedPropagationRef.current;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n input.indeterminate = isIndeterminate(checked);\n setChecked.call(input, isIndeterminate(checked) ? false : checked);\n input.dispatchEvent(event);\n }\n }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);\n const defaultCheckedRef = React.useRef(isIndeterminate(checked) ? false : checked);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: defaultChecked ?? defaultCheckedRef.current,\n required,\n disabled,\n name,\n value,\n form,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0,\n // We transform because the input is absolutely positioned but we have\n // rendered it **after** the button. This pulls it back to sit on top\n // of the button.\n transform: \"translateX(-100%)\"\n }\n }\n );\n }\n);\nCheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nexport {\n Checkbox,\n CheckboxIndicator,\n CheckboxIndicator as Indicator,\n Checkbox as Root,\n createCheckboxScope,\n CheckboxBubbleInput as unstable_BubbleInput,\n CheckboxBubbleInput as unstable_CheckboxBubbleInput,\n CheckboxProvider as unstable_CheckboxProvider,\n CheckboxTrigger as unstable_CheckboxTrigger,\n CheckboxProvider as unstable_Provider,\n CheckboxTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\"\nimport { Checkbox as CheckboxPrimitive } from \"radix-ui\"\n\nimport { cn } from \"src/shadcn/lib/utils\"\nimport { CheckIcon } from \"lucide-react\"\n\nconst Checkbox = React.forwardRef<\n React.ElementRef<typeof CheckboxPrimitive.Root>,\n React.ComponentProps<typeof CheckboxPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <CheckboxPrimitive.Root\n ref={ref}\n data-slot=\"checkbox\"\n className={cn(\n \"peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary\",\n className\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"grid place-content-center text-current transition-none [&>svg]:size-3.5\"\n >\n <CheckIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n))\n\nCheckbox.displayName = \"Checkbox\"\n\nexport { Checkbox }\n","import * as React from \"react\";\nimport { Checkbox as ShadcnCheckbox } from \"src/shadcn/components/checkbox\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\nconst Checkbox = React.forwardRef<\n React.ElementRef<typeof ShadcnCheckbox>,\n React.ComponentProps<typeof ShadcnCheckbox>\n>(({ className, ...props }, ref) => (\n <ShadcnCheckbox\n ref={ref}\n className={cn(\n \"cursor-pointer border-neutral-400 dark:border-neutral-500\",\n className\n )}\n {...props}\n />\n));\n\nCheckbox.displayName = \"Checkbox\";\n\nexport { Checkbox };\n"],"names":["Checkbox","CheckboxPrimitive.Root","CheckboxPrimitive.Indicator","CheckIcon","ShadcnCheckbox"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"Checkbox.js","sources":["../../node_modules/@radix-ui/react-checkbox/dist/index.mjs","../../src/shadcn/components/checkbox.tsx","../../src/primitives/Checkbox.tsx"],"sourcesContent":["\"use client\";\n\n// src/checkbox.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar CHECKBOX_NAME = \"Checkbox\";\nvar [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);\nvar [CheckboxProviderImpl, useCheckboxContext] = createCheckboxContext(CHECKBOX_NAME);\nfunction CheckboxProvider(props) {\n const {\n __scopeCheckbox,\n checked: checkedProp,\n children,\n defaultChecked,\n disabled,\n form,\n name,\n onCheckedChange,\n required,\n value = \"on\",\n // @ts-expect-error\n internal_do_not_use_render\n } = props;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: CHECKBOX_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = control ? !!form || !!control.closest(\"form\") : (\n // We set this to true by default so that events bubble to forms without JS (SSR)\n true\n );\n const context = {\n checked,\n disabled,\n setChecked,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n required,\n defaultChecked: isIndeterminate(defaultChecked) ? false : defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(\n CheckboxProviderImpl,\n {\n scope: __scopeCheckbox,\n ...context,\n children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children\n }\n );\n}\nvar TRIGGER_NAME = \"CheckboxTrigger\";\nvar CheckboxTrigger = React.forwardRef(\n ({ __scopeCheckbox, onKeyDown, onClick, ...checkboxProps }, forwardedRef) => {\n const {\n control,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n isFormControl,\n bubbleInput\n } = useCheckboxContext(TRIGGER_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const form = control?.form;\n if (form) {\n const reset = () => setChecked(initialCheckedStateRef.current);\n form.addEventListener(\"reset\", reset);\n return () => form.removeEventListener(\"reset\", reset);\n }\n }, [control, setChecked]);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"checkbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...checkboxProps,\n ref: composedRefs,\n onKeyDown: composeEventHandlers(onKeyDown, (event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onClick: composeEventHandlers(onClick, (event) => {\n setChecked((prevChecked) => isIndeterminate(prevChecked) ? true : !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }\n);\nCheckboxTrigger.displayName = TRIGGER_NAME;\nvar Checkbox = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCheckbox,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...checkboxProps\n } = props;\n return /* @__PURE__ */ jsx(\n CheckboxProvider,\n {\n __scopeCheckbox,\n checked,\n defaultChecked,\n disabled,\n required,\n onCheckedChange,\n name,\n form,\n value,\n internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n CheckboxTrigger,\n {\n ...checkboxProps,\n ref: forwardedRef,\n __scopeCheckbox\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n CheckboxBubbleInput,\n {\n __scopeCheckbox\n }\n )\n ] })\n }\n );\n }\n);\nCheckbox.displayName = CHECKBOX_NAME;\nvar INDICATOR_NAME = \"CheckboxIndicator\";\nvar CheckboxIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCheckbox, forceMount, ...indicatorProps } = props;\n const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(context.checked) || context.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef,\n style: { pointerEvents: \"none\", ...props.style }\n }\n )\n }\n );\n }\n);\nCheckboxIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"CheckboxBubbleInput\";\nvar CheckboxBubbleInput = React.forwardRef(\n ({ __scopeCheckbox, ...props }, forwardedRef) => {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useCheckboxContext(BUBBLE_INPUT_NAME, __scopeCheckbox);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = bubbleInput;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n const bubbles = !hasConsumerStoppedPropagationRef.current;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n input.indeterminate = isIndeterminate(checked);\n setChecked.call(input, isIndeterminate(checked) ? false : checked);\n input.dispatchEvent(event);\n }\n }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);\n const defaultCheckedRef = React.useRef(isIndeterminate(checked) ? false : checked);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: defaultChecked ?? defaultCheckedRef.current,\n required,\n disabled,\n name,\n value,\n form,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0,\n // We transform because the input is absolutely positioned but we have\n // rendered it **after** the button. This pulls it back to sit on top\n // of the button.\n transform: \"translateX(-100%)\"\n }\n }\n );\n }\n);\nCheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nexport {\n Checkbox,\n CheckboxIndicator,\n CheckboxIndicator as Indicator,\n Checkbox as Root,\n createCheckboxScope,\n CheckboxBubbleInput as unstable_BubbleInput,\n CheckboxBubbleInput as unstable_CheckboxBubbleInput,\n CheckboxProvider as unstable_CheckboxProvider,\n CheckboxTrigger as unstable_CheckboxTrigger,\n CheckboxProvider as unstable_Provider,\n CheckboxTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\"\nimport { Checkbox as CheckboxPrimitive } from \"radix-ui\"\n\nimport { cn } from \"src/shadcn/lib/utils\"\nimport { CheckIcon } from \"lucide-react\"\n\nconst Checkbox = React.forwardRef<\n React.ElementRef<typeof CheckboxPrimitive.Root>,\n React.ComponentProps<typeof CheckboxPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <CheckboxPrimitive.Root\n ref={ref}\n data-slot=\"checkbox\"\n className={cn(\n \"peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary\",\n className\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"grid place-content-center text-current transition-none [&>svg]:size-3.5\"\n >\n <CheckIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n))\n\nCheckbox.displayName = \"Checkbox\"\n\nexport { Checkbox }\n","import * as React from \"react\";\nimport { Checkbox as ShadcnCheckbox } from \"src/shadcn/components/checkbox\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\nconst Checkbox = React.forwardRef<\n React.ElementRef<typeof ShadcnCheckbox>,\n React.ComponentProps<typeof ShadcnCheckbox>\n>(({ className, ...props }, ref) => (\n <ShadcnCheckbox\n ref={ref}\n className={cn(\n \"cursor-pointer border-neutral-400 dark:border-neutral-500\",\n \"data-checked:border-brand data-checked:bg-brand data-checked:text-brand-foreground dark:data-checked:bg-brand\",\n className\n )}\n {...props}\n />\n));\n\nCheckbox.displayName = \"Checkbox\";\n\nexport { Checkbox };\n"],"names":["Checkbox","CheckboxPrimitive.Root","CheckboxPrimitive.Indicator","CheckIcon","ShadcnCheckbox"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -13,7 +13,7 @@ declare const DialogContent: ({ className, children, showCloseButton, overlayCla
|
|
|
13
13
|
overlayClassName?: string;
|
|
14
14
|
keepMounted?: boolean;
|
|
15
15
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
-
declare const DialogDescription: (props: React.ComponentProps<typeof ShadcnDialogDescription>) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
declare const DialogDescription: ({ className, ...props }: React.ComponentProps<typeof ShadcnDialogDescription>) => import("react/jsx-runtime").JSX.Element;
|
|
17
17
|
declare const DialogFooter: ({ className, ...props }: React.ComponentProps<typeof ShadcnDialogFooter>) => import("react/jsx-runtime").JSX.Element;
|
|
18
18
|
declare const DialogHeader: ({ className, ...props }: React.ComponentProps<typeof ShadcnDialogHeader>) => import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
declare const DialogOverlay: ({ className, ...props }: React.ComponentProps<typeof ShadcnDialogOverlay>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -67,7 +67,10 @@ const DialogContent = ({
|
|
|
67
67
|
)
|
|
68
68
|
] });
|
|
69
69
|
};
|
|
70
|
-
const DialogDescription = (
|
|
70
|
+
const DialogDescription = ({
|
|
71
|
+
className,
|
|
72
|
+
...props
|
|
73
|
+
}) => /* @__PURE__ */ jsx(DialogDescription$1, { className: cn("text-base", className), ...props });
|
|
71
74
|
const DialogFooter = ({
|
|
72
75
|
className,
|
|
73
76
|
...props
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","sources":["../../src/primitives/Dialog.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Dialog as DialogPrimitive } from \"@base-ui/react/dialog\";\nimport { XIcon } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/shadcn/components/button\";\nimport { AriaHiddenCleanup } from \"src/hooks/useAriaHiddenCleanup\";\n\nimport {\n Dialog as ShadcnDialog,\n DialogClose as ShadcnDialogClose,\n DialogDescription as ShadcnDialogDescription,\n DialogFooter as ShadcnDialogFooter,\n DialogHeader as ShadcnDialogHeader,\n DialogOverlay as ShadcnDialogOverlay,\n DialogPortal as ShadcnDialogPortal,\n DialogTitle as ShadcnDialogTitle,\n DialogTrigger as ShadcnDialogTrigger,\n} from \"src/shadcn/components/dialog\";\n\nconst Dialog = (props: React.ComponentProps<typeof ShadcnDialog>) => (\n <ShadcnDialog {...props} />\n);\n\nconst DialogClose = (props: React.ComponentProps<typeof ShadcnDialogClose>) => (\n <ShadcnDialogClose {...props} />\n);\n\n/**\n * DialogContent composes Portal + Overlay + Base UI Popup so that\n * `overlayClassName` can be forwarded to the overlay element and\n * `keepMounted` to the portal.\n */\nconst DialogContent = ({\n className,\n children,\n showCloseButton = true,\n overlayClassName,\n keepMounted,\n ...props\n}: DialogPrimitive.Popup.Props & {\n showCloseButton?: boolean;\n overlayClassName?: string;\n keepMounted?: boolean;\n}) => {\n const { t } = useTranslation();\n\n return (\n <ShadcnDialogPortal keepMounted={keepMounted}>\n <AriaHiddenCleanup />\n <DialogOverlay forceRender className={overlayClassName} />\n <DialogPrimitive.Popup\n data-slot=\"dialog-content\"\n className={cn(\n \"fixed top-1/2 start-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 rtl:translate-x-1/2 -translate-y-1/2 gap-5 rounded-xl bg-popover p-6 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95\",\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n data-testid=\"dialog-close-button\"\n render={\n <Button\n variant=\"ghost\"\n className=\"absolute top-2 end-2\"\n size=\"icon-sm\"\n />\n }\n >\n <XIcon />\n <span className=\"sr-only\">\n {t(\"neetoatoms.dialog.close\", \"Close\")}\n </span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Popup>\n </ShadcnDialogPortal>\n );\n};\n\nconst DialogDescription = (\n props: React.ComponentProps<typeof ShadcnDialogDescription
|
|
1
|
+
{"version":3,"file":"Dialog.js","sources":["../../src/primitives/Dialog.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Dialog as DialogPrimitive } from \"@base-ui/react/dialog\";\nimport { XIcon } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { Button } from \"src/shadcn/components/button\";\nimport { AriaHiddenCleanup } from \"src/hooks/useAriaHiddenCleanup\";\n\nimport {\n Dialog as ShadcnDialog,\n DialogClose as ShadcnDialogClose,\n DialogDescription as ShadcnDialogDescription,\n DialogFooter as ShadcnDialogFooter,\n DialogHeader as ShadcnDialogHeader,\n DialogOverlay as ShadcnDialogOverlay,\n DialogPortal as ShadcnDialogPortal,\n DialogTitle as ShadcnDialogTitle,\n DialogTrigger as ShadcnDialogTrigger,\n} from \"src/shadcn/components/dialog\";\n\nconst Dialog = (props: React.ComponentProps<typeof ShadcnDialog>) => (\n <ShadcnDialog {...props} />\n);\n\nconst DialogClose = (props: React.ComponentProps<typeof ShadcnDialogClose>) => (\n <ShadcnDialogClose {...props} />\n);\n\n/**\n * DialogContent composes Portal + Overlay + Base UI Popup so that\n * `overlayClassName` can be forwarded to the overlay element and\n * `keepMounted` to the portal.\n */\nconst DialogContent = ({\n className,\n children,\n showCloseButton = true,\n overlayClassName,\n keepMounted,\n ...props\n}: DialogPrimitive.Popup.Props & {\n showCloseButton?: boolean;\n overlayClassName?: string;\n keepMounted?: boolean;\n}) => {\n const { t } = useTranslation();\n\n return (\n <ShadcnDialogPortal keepMounted={keepMounted}>\n <AriaHiddenCleanup />\n <DialogOverlay forceRender className={overlayClassName} />\n <DialogPrimitive.Popup\n data-slot=\"dialog-content\"\n className={cn(\n \"fixed top-1/2 start-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 rtl:translate-x-1/2 -translate-y-1/2 gap-5 rounded-xl bg-popover p-6 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95\",\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n data-testid=\"dialog-close-button\"\n render={\n <Button\n variant=\"ghost\"\n className=\"absolute top-2 end-2\"\n size=\"icon-sm\"\n />\n }\n >\n <XIcon />\n <span className=\"sr-only\">\n {t(\"neetoatoms.dialog.close\", \"Close\")}\n </span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Popup>\n </ShadcnDialogPortal>\n );\n};\n\nconst DialogDescription = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnDialogDescription>) => (\n <ShadcnDialogDescription className={cn(\"text-base\", className)} {...props} />\n);\n\nconst DialogFooter = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnDialogFooter>) => (\n <ShadcnDialogFooter\n className={cn(\"-mx-6 -mb-6 border-t-0 px-6 py-4\", className)}\n {...props}\n />\n);\n\nconst DialogHeader = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnDialogHeader>) => (\n <ShadcnDialogHeader className={cn(\"gap-3\", className)} {...props} />\n);\n\nconst DialogOverlay = ({\n className,\n ...props\n}: React.ComponentProps<typeof ShadcnDialogOverlay>) => (\n <ShadcnDialogOverlay\n className={cn(\"supports-backdrop-filter:backdrop-blur-none\", className)}\n {...props}\n />\n);\n\nconst DialogPortal = (\n props: React.ComponentProps<typeof ShadcnDialogPortal>\n) => <ShadcnDialogPortal {...props} />;\n\nconst DialogTitle = (props: React.ComponentProps<typeof ShadcnDialogTitle>) => (\n <ShadcnDialogTitle {...props} />\n);\n\nconst DialogTrigger = (\n props: React.ComponentProps<typeof ShadcnDialogTrigger>\n) => <ShadcnDialogTrigger {...props} />;\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"],"names":["ShadcnDialog","ShadcnDialogClose","ShadcnDialogPortal","DialogPrimitive.Popup","DialogPrimitive.Close","XIcon","ShadcnDialogDescription","ShadcnDialogFooter","ShadcnDialogHeader","ShadcnDialogOverlay","ShadcnDialogTitle","ShadcnDialogTrigger"],"mappings":"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"}
|
package/dist/primitives/Field.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { c as cn } from '../utils-BJnb9o5c.js';
|
|
3
|
-
import { H as HelpIcon } from '../HelpIcon-
|
|
3
|
+
import { H as HelpIcon } from '../HelpIcon-CB6wsVSF.js';
|
|
4
4
|
import { useMemo } from 'react';
|
|
5
5
|
import { c as cva } from '../index-Bo3AAQJp.js';
|
|
6
6
|
import { L as Label } from '../label-YEsizr2c.js';
|
|
@@ -30,7 +30,7 @@ import '../Popover-BHGvcdV2.js';
|
|
|
30
30
|
import './HoverCard.js';
|
|
31
31
|
import '../Typography-CmILccNh.js';
|
|
32
32
|
import '../index-CfriMyrd.js';
|
|
33
|
-
import '../Button-
|
|
33
|
+
import '../Button-ZssOVkG0.js';
|
|
34
34
|
import 'react-router-dom';
|
|
35
35
|
import './Button.js';
|
|
36
36
|
import '../button-DTkEk06V.js';
|
|
@@ -332,7 +332,7 @@ const RadioGroupItem = React.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
332
332
|
ref,
|
|
333
333
|
"data-slot": "radio-group-item",
|
|
334
334
|
className: cn(
|
|
335
|
-
"group/radio-group-item peer relative flex aspect-square size-4 shrink-0 cursor-pointer rounded-full border border-neutral-400 outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:border-neutral-500 dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-
|
|
335
|
+
"group/radio-group-item peer relative flex aspect-square size-4 shrink-0 cursor-pointer rounded-full border border-neutral-400 outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:border-neutral-500 dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-brand data-checked:bg-brand data-checked:text-brand-foreground dark:data-checked:bg-brand",
|
|
336
336
|
className
|
|
337
337
|
),
|
|
338
338
|
...props,
|
|
@@ -341,7 +341,7 @@ const RadioGroupItem = React.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
341
341
|
{
|
|
342
342
|
"data-slot": "radio-group-indicator",
|
|
343
343
|
className: "flex size-full items-center justify-center",
|
|
344
|
-
children: /* @__PURE__ */ jsx("span", { className: "size-2 rounded-full bg-
|
|
344
|
+
children: /* @__PURE__ */ jsx("span", { className: "size-2 rounded-full bg-brand-foreground" })
|
|
345
345
|
}
|
|
346
346
|
)
|
|
347
347
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.js","sources":["../../node_modules/@radix-ui/react-radio-group/dist/index.mjs","../../src/shadcn/components/radio-group.tsx","../../src/primitives/RadioGroup.tsx"],"sourcesContent":["\"use client\";\n\n// src/radio-group.tsx\nimport * as React2 from \"react\";\nimport { composeEventHandlers as composeEventHandlers2 } from \"@radix-ui/primitive\";\nimport { useComposedRefs as useComposedRefs2 } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope as createContextScope2 } from \"@radix-ui/react-context\";\nimport { Primitive as Primitive2 } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\n\n// src/radio.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar RADIO_NAME = \"Radio\";\nvar [createRadioContext, createRadioScope] = createContextScope(RADIO_NAME);\nvar [RadioProvider, useRadioContext] = createRadioContext(RADIO_NAME);\nvar Radio = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRadio,\n name,\n checked = false,\n required,\n disabled,\n value = \"on\",\n onCheck,\n form,\n ...radioProps\n } = props;\n const [button, setButton] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = button ? form || !!button.closest(\"form\") : true;\n return /* @__PURE__ */ jsxs(RadioProvider, { scope: __scopeRadio, checked, disabled, children: [\n /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"radio\",\n \"aria-checked\": checked,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...radioProps,\n ref: composedRefs,\n onClick: composeEventHandlers(props.onClick, (event) => {\n if (!checked) onCheck?.();\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n RadioBubbleInput,\n {\n control: button,\n bubbles: !hasConsumerStoppedPropagationRef.current,\n name,\n value,\n checked,\n required,\n disabled,\n form,\n style: { transform: \"translateX(-100%)\" }\n }\n )\n ] });\n }\n);\nRadio.displayName = RADIO_NAME;\nvar INDICATOR_NAME = \"RadioIndicator\";\nvar RadioIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeRadio, forceMount, ...indicatorProps } = props;\n const context = useRadioContext(INDICATOR_NAME, __scopeRadio);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.checked, children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nRadioIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"RadioBubbleInput\";\nvar RadioBubbleInput = React.forwardRef(\n ({\n __scopeRadio,\n control,\n checked,\n bubbles = true,\n ...props\n }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(ref, forwardedRef);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = ref.current;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [prevChecked, checked, bubbles]);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"radio\",\n \"aria-hidden\": true,\n defaultChecked: checked,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0\n }\n }\n );\n }\n);\nRadioBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\n\n// src/radio-group.tsx\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nvar ARROW_KEYS = [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"];\nvar RADIO_GROUP_NAME = \"RadioGroup\";\nvar [createRadioGroupContext, createRadioGroupScope] = createContextScope2(RADIO_GROUP_NAME, [\n createRovingFocusGroupScope,\n createRadioScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar useRadioScope = createRadioScope();\nvar [RadioGroupProvider, useRadioGroupContext] = createRadioGroupContext(RADIO_GROUP_NAME);\nvar RadioGroup = React2.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRadioGroup,\n name,\n defaultValue,\n value: valueProp,\n required = false,\n disabled = false,\n orientation,\n dir,\n loop = true,\n onValueChange,\n ...groupProps\n } = props;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? null,\n onChange: onValueChange,\n caller: RADIO_GROUP_NAME\n });\n return /* @__PURE__ */ jsx2(\n RadioGroupProvider,\n {\n scope: __scopeRadioGroup,\n name,\n required,\n disabled,\n value,\n onValueChange: setValue,\n children: /* @__PURE__ */ jsx2(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation,\n dir: direction,\n loop,\n children: /* @__PURE__ */ jsx2(\n Primitive2.div,\n {\n role: \"radiogroup\",\n \"aria-required\": required,\n \"aria-orientation\": orientation,\n \"data-disabled\": disabled ? \"\" : void 0,\n dir: direction,\n ...groupProps,\n ref: forwardedRef\n }\n )\n }\n )\n }\n );\n }\n);\nRadioGroup.displayName = RADIO_GROUP_NAME;\nvar ITEM_NAME = \"RadioGroupItem\";\nvar RadioGroupItem = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeRadioGroup, disabled, ...itemProps } = props;\n const context = useRadioGroupContext(ITEM_NAME, __scopeRadioGroup);\n const isDisabled = context.disabled || disabled;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const radioScope = useRadioScope(__scopeRadioGroup);\n const ref = React2.useRef(null);\n const composedRefs = useComposedRefs2(forwardedRef, ref);\n const checked = context.value === itemProps.value;\n const isArrowKeyPressedRef = React2.useRef(false);\n React2.useEffect(() => {\n const handleKeyDown = (event) => {\n if (ARROW_KEYS.includes(event.key)) {\n isArrowKeyPressedRef.current = true;\n }\n };\n const handleKeyUp = () => isArrowKeyPressedRef.current = false;\n document.addEventListener(\"keydown\", handleKeyDown);\n document.addEventListener(\"keyup\", handleKeyUp);\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n document.removeEventListener(\"keyup\", handleKeyUp);\n };\n }, []);\n return /* @__PURE__ */ jsx2(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !isDisabled,\n active: checked,\n children: /* @__PURE__ */ jsx2(\n Radio,\n {\n disabled: isDisabled,\n required: context.required,\n checked,\n ...radioScope,\n ...itemProps,\n name: context.name,\n ref: composedRefs,\n onCheck: () => context.onValueChange(itemProps.value),\n onKeyDown: composeEventHandlers2((event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onFocus: composeEventHandlers2(itemProps.onFocus, () => {\n if (isArrowKeyPressedRef.current) ref.current?.click();\n })\n }\n )\n }\n );\n }\n);\nRadioGroupItem.displayName = ITEM_NAME;\nvar INDICATOR_NAME2 = \"RadioGroupIndicator\";\nvar RadioGroupIndicator = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeRadioGroup, ...indicatorProps } = props;\n const radioScope = useRadioScope(__scopeRadioGroup);\n return /* @__PURE__ */ jsx2(RadioIndicator, { ...radioScope, ...indicatorProps, ref: forwardedRef });\n }\n);\nRadioGroupIndicator.displayName = INDICATOR_NAME2;\nvar Root2 = RadioGroup;\nvar Item2 = RadioGroupItem;\nvar Indicator = RadioGroupIndicator;\nexport {\n Indicator,\n Item2 as Item,\n RadioGroup,\n RadioGroupIndicator,\n RadioGroupItem,\n Root2 as Root,\n createRadioGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\"\n\nimport * as React from \"react\"\nimport { RadioGroup as RadioGroupPrimitive } from \"radix-ui\"\n\nimport { cn } from \"src/shadcn/lib/utils\"\n\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Root>,\n React.ComponentProps<typeof RadioGroupPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <RadioGroupPrimitive.Root\n ref={ref}\n data-slot=\"radio-group\"\n className={cn(\"grid w-full gap-2\", className)}\n {...props}\n />\n))\n\nRadioGroup.displayName = \"RadioGroup\"\n\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentProps<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <RadioGroupPrimitive.Item\n ref={ref}\n data-slot=\"radio-group-item\"\n className={cn(\n \"group/radio-group-item peer relative flex aspect-square size-4 shrink-0 rounded-full border border-input outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary\",\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"flex size-4 items-center justify-center\"\n >\n <span className=\"absolute top-1/2 start-1/2 size-2 -translate-x-1/2 rtl:translate-x-1/2 -translate-y-1/2 rounded-full bg-primary-foreground\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n))\n\nRadioGroupItem.displayName = \"RadioGroupItem\"\n\nexport { RadioGroup, RadioGroupItem }\n","import * as React from \"react\";\nimport { RadioGroup as RadioGroupPrimitive } from \"radix-ui\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\nimport { RadioGroup as ShadcnRadioGroup } from \"src/shadcn/components/radio-group\";\n\n// `relative` contains the items' hidden form inputs (Radix renders a\n// visually-hidden `position: absolute` input as a sibling of each item for\n// native form submission). The Field wrapper already does this when the group\n// has a label/error/helpText, but a bare group renders without one; making\n// the group root a positioning context covers that path too. Applied here\n// (not the CLI-generated shadcn component) so it survives shadcn CLI upgrades.\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof ShadcnRadioGroup>,\n React.ComponentProps<typeof ShadcnRadioGroup>\n>(({ className, ...props }, ref) => (\n <ShadcnRadioGroup\n ref={ref}\n className={cn(\"relative\", className)}\n {...props}\n />\n));\n\nRadioGroup.displayName = \"RadioGroup\";\n\n/**\n * RadioGroupItem re-composed from Radix primitives with the inner dot\n * using flex centering instead of absolute + translate, fixing RTL alignment.\n */\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentProps<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <RadioGroupPrimitive.Item\n ref={ref}\n data-slot=\"radio-group-item\"\n className={cn(\n \"group/radio-group-item peer relative flex aspect-square size-4 shrink-0 cursor-pointer rounded-full border border-neutral-400 outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:border-neutral-500 dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary\",\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"flex size-full items-center justify-center\"\n >\n <span className=\"size-2 rounded-full bg-primary-foreground\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n));\n\nRadioGroupItem.displayName = \"RadioGroupItem\";\n\nexport { RadioGroup, RadioGroupItem };\n"],"names":["createContextScope2","RadioGroup","React2","jsx2","RovingFocusGroup.Root","Primitive2","RadioGroupItem","useComposedRefs2","RovingFocusGroup.Item","composeEventHandlers2","RadioGroupPrimitive.Root","RadioGroupPrimitive.Item","RadioGroupPrimitive.Indicator","ShadcnRadioGroup"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"RadioGroup.js","sources":["../../node_modules/@radix-ui/react-radio-group/dist/index.mjs","../../src/shadcn/components/radio-group.tsx","../../src/primitives/RadioGroup.tsx"],"sourcesContent":["\"use client\";\n\n// src/radio-group.tsx\nimport * as React2 from \"react\";\nimport { composeEventHandlers as composeEventHandlers2 } from \"@radix-ui/primitive\";\nimport { useComposedRefs as useComposedRefs2 } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope as createContextScope2 } from \"@radix-ui/react-context\";\nimport { Primitive as Primitive2 } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\n\n// src/radio.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar RADIO_NAME = \"Radio\";\nvar [createRadioContext, createRadioScope] = createContextScope(RADIO_NAME);\nvar [RadioProvider, useRadioContext] = createRadioContext(RADIO_NAME);\nvar Radio = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRadio,\n name,\n checked = false,\n required,\n disabled,\n value = \"on\",\n onCheck,\n form,\n ...radioProps\n } = props;\n const [button, setButton] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = button ? form || !!button.closest(\"form\") : true;\n return /* @__PURE__ */ jsxs(RadioProvider, { scope: __scopeRadio, checked, disabled, children: [\n /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"radio\",\n \"aria-checked\": checked,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...radioProps,\n ref: composedRefs,\n onClick: composeEventHandlers(props.onClick, (event) => {\n if (!checked) onCheck?.();\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n RadioBubbleInput,\n {\n control: button,\n bubbles: !hasConsumerStoppedPropagationRef.current,\n name,\n value,\n checked,\n required,\n disabled,\n form,\n style: { transform: \"translateX(-100%)\" }\n }\n )\n ] });\n }\n);\nRadio.displayName = RADIO_NAME;\nvar INDICATOR_NAME = \"RadioIndicator\";\nvar RadioIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeRadio, forceMount, ...indicatorProps } = props;\n const context = useRadioContext(INDICATOR_NAME, __scopeRadio);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.checked, children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...indicatorProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nRadioIndicator.displayName = INDICATOR_NAME;\nvar BUBBLE_INPUT_NAME = \"RadioBubbleInput\";\nvar RadioBubbleInput = React.forwardRef(\n ({\n __scopeRadio,\n control,\n checked,\n bubbles = true,\n ...props\n }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(ref, forwardedRef);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = ref.current;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [prevChecked, checked, bubbles]);\n return /* @__PURE__ */ jsx(\n Primitive.input,\n {\n type: \"radio\",\n \"aria-hidden\": true,\n defaultChecked: checked,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0\n }\n }\n );\n }\n);\nRadioBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\n\n// src/radio-group.tsx\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nvar ARROW_KEYS = [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"];\nvar RADIO_GROUP_NAME = \"RadioGroup\";\nvar [createRadioGroupContext, createRadioGroupScope] = createContextScope2(RADIO_GROUP_NAME, [\n createRovingFocusGroupScope,\n createRadioScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar useRadioScope = createRadioScope();\nvar [RadioGroupProvider, useRadioGroupContext] = createRadioGroupContext(RADIO_GROUP_NAME);\nvar RadioGroup = React2.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRadioGroup,\n name,\n defaultValue,\n value: valueProp,\n required = false,\n disabled = false,\n orientation,\n dir,\n loop = true,\n onValueChange,\n ...groupProps\n } = props;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? null,\n onChange: onValueChange,\n caller: RADIO_GROUP_NAME\n });\n return /* @__PURE__ */ jsx2(\n RadioGroupProvider,\n {\n scope: __scopeRadioGroup,\n name,\n required,\n disabled,\n value,\n onValueChange: setValue,\n children: /* @__PURE__ */ jsx2(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation,\n dir: direction,\n loop,\n children: /* @__PURE__ */ jsx2(\n Primitive2.div,\n {\n role: \"radiogroup\",\n \"aria-required\": required,\n \"aria-orientation\": orientation,\n \"data-disabled\": disabled ? \"\" : void 0,\n dir: direction,\n ...groupProps,\n ref: forwardedRef\n }\n )\n }\n )\n }\n );\n }\n);\nRadioGroup.displayName = RADIO_GROUP_NAME;\nvar ITEM_NAME = \"RadioGroupItem\";\nvar RadioGroupItem = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeRadioGroup, disabled, ...itemProps } = props;\n const context = useRadioGroupContext(ITEM_NAME, __scopeRadioGroup);\n const isDisabled = context.disabled || disabled;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const radioScope = useRadioScope(__scopeRadioGroup);\n const ref = React2.useRef(null);\n const composedRefs = useComposedRefs2(forwardedRef, ref);\n const checked = context.value === itemProps.value;\n const isArrowKeyPressedRef = React2.useRef(false);\n React2.useEffect(() => {\n const handleKeyDown = (event) => {\n if (ARROW_KEYS.includes(event.key)) {\n isArrowKeyPressedRef.current = true;\n }\n };\n const handleKeyUp = () => isArrowKeyPressedRef.current = false;\n document.addEventListener(\"keydown\", handleKeyDown);\n document.addEventListener(\"keyup\", handleKeyUp);\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown);\n document.removeEventListener(\"keyup\", handleKeyUp);\n };\n }, []);\n return /* @__PURE__ */ jsx2(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !isDisabled,\n active: checked,\n children: /* @__PURE__ */ jsx2(\n Radio,\n {\n disabled: isDisabled,\n required: context.required,\n checked,\n ...radioScope,\n ...itemProps,\n name: context.name,\n ref: composedRefs,\n onCheck: () => context.onValueChange(itemProps.value),\n onKeyDown: composeEventHandlers2((event) => {\n if (event.key === \"Enter\") event.preventDefault();\n }),\n onFocus: composeEventHandlers2(itemProps.onFocus, () => {\n if (isArrowKeyPressedRef.current) ref.current?.click();\n })\n }\n )\n }\n );\n }\n);\nRadioGroupItem.displayName = ITEM_NAME;\nvar INDICATOR_NAME2 = \"RadioGroupIndicator\";\nvar RadioGroupIndicator = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeRadioGroup, ...indicatorProps } = props;\n const radioScope = useRadioScope(__scopeRadioGroup);\n return /* @__PURE__ */ jsx2(RadioIndicator, { ...radioScope, ...indicatorProps, ref: forwardedRef });\n }\n);\nRadioGroupIndicator.displayName = INDICATOR_NAME2;\nvar Root2 = RadioGroup;\nvar Item2 = RadioGroupItem;\nvar Indicator = RadioGroupIndicator;\nexport {\n Indicator,\n Item2 as Item,\n RadioGroup,\n RadioGroupIndicator,\n RadioGroupItem,\n Root2 as Root,\n createRadioGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\"\n\nimport * as React from \"react\"\nimport { RadioGroup as RadioGroupPrimitive } from \"radix-ui\"\n\nimport { cn } from \"src/shadcn/lib/utils\"\n\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Root>,\n React.ComponentProps<typeof RadioGroupPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <RadioGroupPrimitive.Root\n ref={ref}\n data-slot=\"radio-group\"\n className={cn(\"grid w-full gap-2\", className)}\n {...props}\n />\n))\n\nRadioGroup.displayName = \"RadioGroup\"\n\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentProps<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <RadioGroupPrimitive.Item\n ref={ref}\n data-slot=\"radio-group-item\"\n className={cn(\n \"group/radio-group-item peer relative flex aspect-square size-4 shrink-0 rounded-full border border-input outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary\",\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"flex size-4 items-center justify-center\"\n >\n <span className=\"absolute top-1/2 start-1/2 size-2 -translate-x-1/2 rtl:translate-x-1/2 -translate-y-1/2 rounded-full bg-primary-foreground\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n))\n\nRadioGroupItem.displayName = \"RadioGroupItem\"\n\nexport { RadioGroup, RadioGroupItem }\n","import * as React from \"react\";\nimport { RadioGroup as RadioGroupPrimitive } from \"radix-ui\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\nimport { RadioGroup as ShadcnRadioGroup } from \"src/shadcn/components/radio-group\";\n\n// `relative` contains the items' hidden form inputs (Radix renders a\n// visually-hidden `position: absolute` input as a sibling of each item for\n// native form submission). The Field wrapper already does this when the group\n// has a label/error/helpText, but a bare group renders without one; making\n// the group root a positioning context covers that path too. Applied here\n// (not the CLI-generated shadcn component) so it survives shadcn CLI upgrades.\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof ShadcnRadioGroup>,\n React.ComponentProps<typeof ShadcnRadioGroup>\n>(({ className, ...props }, ref) => (\n <ShadcnRadioGroup\n ref={ref}\n className={cn(\"relative\", className)}\n {...props}\n />\n));\n\nRadioGroup.displayName = \"RadioGroup\";\n\n/**\n * RadioGroupItem re-composed from Radix primitives with the inner dot\n * using flex centering instead of absolute + translate, fixing RTL alignment.\n */\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentProps<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <RadioGroupPrimitive.Item\n ref={ref}\n data-slot=\"radio-group-item\"\n className={cn(\n \"group/radio-group-item peer relative flex aspect-square size-4 shrink-0 cursor-pointer rounded-full border border-neutral-400 outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:border-neutral-500 dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-brand data-checked:bg-brand data-checked:text-brand-foreground dark:data-checked:bg-brand\",\n className\n )}\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n data-slot=\"radio-group-indicator\"\n className=\"flex size-full items-center justify-center\"\n >\n <span className=\"size-2 rounded-full bg-brand-foreground\" />\n </RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n));\n\nRadioGroupItem.displayName = \"RadioGroupItem\";\n\nexport { RadioGroup, RadioGroupItem };\n"],"names":["createContextScope2","RadioGroup","React2","jsx2","RovingFocusGroup.Root","Primitive2","RadioGroupItem","useComposedRefs2","RovingFocusGroup.Item","composeEventHandlers2","RadioGroupPrimitive.Root","RadioGroupPrimitive.Item","RadioGroupPrimitive.Indicator","ShadcnRadioGroup"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { c as cn } from '../utils-BJnb9o5c.js';
|
|
4
|
+
import { C as Check } from '../check-Cpkv29p1.js';
|
|
4
5
|
import { c as composeEventHandlers } from '../index-DNzunGHb.js';
|
|
5
6
|
import { u as useComposedRefs } from '../index-BtkPdosV.js';
|
|
6
7
|
import { c as createContextScope } from '../index-CiyxEyB0.js';
|
|
@@ -8,6 +9,7 @@ import { u as useControllableState } from '../index-Cor698lu.js';
|
|
|
8
9
|
import { u as usePrevious } from '../index-30QpKM0j.js';
|
|
9
10
|
import { u as useSize } from '../index-BYZaLNq1.js';
|
|
10
11
|
import { P as Primitive } from '../index-DhnfW8wQ.js';
|
|
12
|
+
import '../createLucideIcon-C8ycilSN.js';
|
|
11
13
|
import '../index-DOzu5J1s.js';
|
|
12
14
|
import 'react-dom';
|
|
13
15
|
|
|
@@ -152,6 +154,7 @@ function getState(checked) {
|
|
|
152
154
|
var Root = Switch$1;
|
|
153
155
|
var Thumb = SwitchThumb;
|
|
154
156
|
|
|
157
|
+
const ICON_SIZE_CLASSES = "group-data-[size=sm]/switch:size-2 group-data-[size=default]/switch:size-2.5 group-data-[size=lg]/switch:size-3";
|
|
155
158
|
const Switch = React.forwardRef(({ className, size = "default", ...props }, ref) => /* @__PURE__ */ jsx(
|
|
156
159
|
Root,
|
|
157
160
|
{
|
|
@@ -159,7 +162,7 @@ const Switch = React.forwardRef(({ className, size = "default", ...props }, ref)
|
|
|
159
162
|
"data-slot": "switch",
|
|
160
163
|
"data-size": size,
|
|
161
164
|
className: cn(
|
|
162
|
-
"peer group/switch relative inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-
|
|
165
|
+
"peer group/switch relative inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-brand data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50",
|
|
163
166
|
"data-[size=sm]:h-[14px] data-[size=sm]:w-[24px]",
|
|
164
167
|
"data-[size=default]:h-[18.4px] data-[size=default]:w-[32px]",
|
|
165
168
|
"data-[size=lg]:h-[24px] data-[size=lg]:w-[44px]",
|
|
@@ -171,10 +174,20 @@ const Switch = React.forwardRef(({ className, size = "default", ...props }, ref)
|
|
|
171
174
|
{
|
|
172
175
|
"data-slot": "switch-thumb",
|
|
173
176
|
className: cn(
|
|
174
|
-
"pointer-events-none
|
|
177
|
+
"pointer-events-none flex items-center justify-center rounded-full bg-background ring-0 transition-transform dark:data-checked:bg-primary-foreground dark:data-unchecked:bg-foreground",
|
|
175
178
|
"group-data-[size=sm]/switch:size-3 group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] rtl:group-data-[size=sm]/switch:data-checked:-translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-unchecked:translate-x-0 rtl:group-data-[size=sm]/switch:data-unchecked:-translate-x-0",
|
|
176
179
|
"group-data-[size=default]/switch:size-4 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] rtl:group-data-[size=default]/switch:data-checked:-translate-x-[calc(100%-2px)] group-data-[size=default]/switch:data-unchecked:translate-x-0 rtl:group-data-[size=default]/switch:data-unchecked:-translate-x-0",
|
|
177
180
|
"group-data-[size=lg]/switch:size-5 group-data-[size=lg]/switch:data-checked:translate-x-[22px] rtl:group-data-[size=lg]/switch:data-checked:-translate-x-[22px] group-data-[size=lg]/switch:data-unchecked:translate-x-0.5 rtl:group-data-[size=lg]/switch:data-unchecked:-translate-x-0.5"
|
|
181
|
+
),
|
|
182
|
+
children: /* @__PURE__ */ jsx(
|
|
183
|
+
Check,
|
|
184
|
+
{
|
|
185
|
+
strokeWidth: 4,
|
|
186
|
+
className: cn(
|
|
187
|
+
"hidden text-brand group-data-[state=checked]/switch:block",
|
|
188
|
+
ICON_SIZE_CLASSES
|
|
189
|
+
)
|
|
190
|
+
}
|
|
178
191
|
)
|
|
179
192
|
}
|
|
180
193
|
)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Switch.js","sources":["../../node_modules/@radix-ui/react-switch/dist/index.mjs","../../src/primitives/Switch.tsx"],"sourcesContent":["\"use client\";\n\n// src/switch.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar SWITCH_NAME = \"Switch\";\nvar [createSwitchContext, createSwitchScope] = createContextScope(SWITCH_NAME);\nvar [SwitchProvider, useSwitchContext] = createSwitchContext(SWITCH_NAME);\nvar Switch = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSwitch,\n name,\n checked: checkedProp,\n defaultChecked,\n required,\n disabled,\n value = \"on\",\n onCheckedChange,\n form,\n ...switchProps\n } = props;\n const [button, setButton] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = button ? form || !!button.closest(\"form\") : true;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: SWITCH_NAME\n });\n return /* @__PURE__ */ jsxs(SwitchProvider, { scope: __scopeSwitch, checked, disabled, children: [\n /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"switch\",\n \"aria-checked\": checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...switchProps,\n ref: composedRefs,\n onClick: composeEventHandlers(props.onClick, (event) => {\n setChecked((prevChecked) => !prevChecked);\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n SwitchBubbleInput,\n {\n control: button,\n bubbles: !hasConsumerStoppedPropagationRef.current,\n name,\n value,\n checked,\n required,\n disabled,\n form,\n style: { transform: \"translateX(-100%)\" }\n }\n )\n ] });\n }\n);\nSwitch.displayName = SWITCH_NAME;\nvar THUMB_NAME = \"SwitchThumb\";\nvar SwitchThumb = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSwitch, ...thumbProps } = props;\n const context = useSwitchContext(THUMB_NAME, __scopeSwitch);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...thumbProps,\n ref: forwardedRef\n }\n );\n }\n);\nSwitchThumb.displayName = THUMB_NAME;\nvar BUBBLE_INPUT_NAME = \"SwitchBubbleInput\";\nvar SwitchBubbleInput = React.forwardRef(\n ({\n __scopeSwitch,\n control,\n checked,\n bubbles = true,\n ...props\n }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(ref, forwardedRef);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = ref.current;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [prevChecked, checked, bubbles]);\n return /* @__PURE__ */ jsx(\n \"input\",\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: checked,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0\n }\n }\n );\n }\n);\nSwitchBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\nvar Root = Switch;\nvar Thumb = SwitchThumb;\nexport {\n Root,\n Switch,\n SwitchThumb,\n Thumb,\n createSwitchScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\nimport { Switch as SwitchPrimitive } from \"radix-ui\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\ntype SwitchSize = \"sm\" | \"default\" | \"lg\";\n\nconst Switch = React.forwardRef<\n React.ElementRef<typeof SwitchPrimitive.Root>,\n React.ComponentProps<typeof SwitchPrimitive.Root> & {\n size?: SwitchSize;\n }\n>(({ className, size = \"default\", ...props }, ref) => (\n <SwitchPrimitive.Root\n ref={ref}\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n \"peer group/switch relative inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50\",\n \"data-[size=sm]:h-[14px] data-[size=sm]:w-[24px]\",\n \"data-[size=default]:h-[18.4px] data-[size=default]:w-[32px]\",\n \"data-[size=lg]:h-[24px] data-[size=lg]:w-[44px]\",\n className\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"pointer-events-none block rounded-full bg-background ring-0 transition-transform dark:data-checked:bg-primary-foreground dark:data-unchecked:bg-foreground\",\n \"group-data-[size=sm]/switch:size-3 group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] rtl:group-data-[size=sm]/switch:data-checked:-translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-unchecked:translate-x-0 rtl:group-data-[size=sm]/switch:data-unchecked:-translate-x-0\",\n \"group-data-[size=default]/switch:size-4 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] rtl:group-data-[size=default]/switch:data-checked:-translate-x-[calc(100%-2px)] group-data-[size=default]/switch:data-unchecked:translate-x-0 rtl:group-data-[size=default]/switch:data-unchecked:-translate-x-0\",\n \"group-data-[size=lg]/switch:size-5 group-data-[size=lg]/switch:data-checked:translate-x-[22px] rtl:group-data-[size=lg]/switch:data-checked:-translate-x-[22px] group-data-[size=lg]/switch:data-unchecked:translate-x-0.5 rtl:group-data-[size=lg]/switch:data-unchecked:-translate-x-0.5\"\n )}\n />\n </SwitchPrimitive.Root>\n));\n\nSwitch.displayName = \"Switch\";\n\nexport { Switch };\n"],"names":["Switch","SwitchPrimitive.Root","SwitchPrimitive.Thumb"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"Switch.js","sources":["../../node_modules/@radix-ui/react-switch/dist/index.mjs","../../src/primitives/Switch.tsx"],"sourcesContent":["\"use client\";\n\n// src/switch.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar SWITCH_NAME = \"Switch\";\nvar [createSwitchContext, createSwitchScope] = createContextScope(SWITCH_NAME);\nvar [SwitchProvider, useSwitchContext] = createSwitchContext(SWITCH_NAME);\nvar Switch = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSwitch,\n name,\n checked: checkedProp,\n defaultChecked,\n required,\n disabled,\n value = \"on\",\n onCheckedChange,\n form,\n ...switchProps\n } = props;\n const [button, setButton] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const isFormControl = button ? form || !!button.closest(\"form\") : true;\n const [checked, setChecked] = useControllableState({\n prop: checkedProp,\n defaultProp: defaultChecked ?? false,\n onChange: onCheckedChange,\n caller: SWITCH_NAME\n });\n return /* @__PURE__ */ jsxs(SwitchProvider, { scope: __scopeSwitch, checked, disabled, children: [\n /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"switch\",\n \"aria-checked\": checked,\n \"aria-required\": required,\n \"data-state\": getState(checked),\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n value,\n ...switchProps,\n ref: composedRefs,\n onClick: composeEventHandlers(props.onClick, (event) => {\n setChecked((prevChecked) => !prevChecked);\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n SwitchBubbleInput,\n {\n control: button,\n bubbles: !hasConsumerStoppedPropagationRef.current,\n name,\n value,\n checked,\n required,\n disabled,\n form,\n style: { transform: \"translateX(-100%)\" }\n }\n )\n ] });\n }\n);\nSwitch.displayName = SWITCH_NAME;\nvar THUMB_NAME = \"SwitchThumb\";\nvar SwitchThumb = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSwitch, ...thumbProps } = props;\n const context = useSwitchContext(THUMB_NAME, __scopeSwitch);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-state\": getState(context.checked),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...thumbProps,\n ref: forwardedRef\n }\n );\n }\n);\nSwitchThumb.displayName = THUMB_NAME;\nvar BUBBLE_INPUT_NAME = \"SwitchBubbleInput\";\nvar SwitchBubbleInput = React.forwardRef(\n ({\n __scopeSwitch,\n control,\n checked,\n bubbles = true,\n ...props\n }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(ref, forwardedRef);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n React.useEffect(() => {\n const input = ref.current;\n if (!input) return;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n inputProto,\n \"checked\"\n );\n const setChecked = descriptor.set;\n if (prevChecked !== checked && setChecked) {\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n }\n }, [prevChecked, checked, bubbles]);\n return /* @__PURE__ */ jsx(\n \"input\",\n {\n type: \"checkbox\",\n \"aria-hidden\": true,\n defaultChecked: checked,\n ...props,\n tabIndex: -1,\n ref: composedRefs,\n style: {\n ...props.style,\n ...controlSize,\n position: \"absolute\",\n pointerEvents: \"none\",\n opacity: 0,\n margin: 0\n }\n }\n );\n }\n);\nSwitchBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\nvar Root = Switch;\nvar Thumb = SwitchThumb;\nexport {\n Root,\n Switch,\n SwitchThumb,\n Thumb,\n createSwitchScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\nimport { Switch as SwitchPrimitive } from \"radix-ui\";\nimport { Check as CheckIcon } from \"lucide-react\";\nimport { cn } from \"src/shadcn/lib/utils\";\n\ntype SwitchSize = \"sm\" | \"default\" | \"lg\";\n\n// Icon size per switch size, keyed off the Root's data-size group.\nconst ICON_SIZE_CLASSES =\n \"group-data-[size=sm]/switch:size-2 group-data-[size=default]/switch:size-2.5 group-data-[size=lg]/switch:size-3\";\n\nconst Switch = React.forwardRef<\n React.ElementRef<typeof SwitchPrimitive.Root>,\n React.ComponentProps<typeof SwitchPrimitive.Root> & {\n size?: SwitchSize;\n }\n>(({ className, size = \"default\", ...props }, ref) => (\n <SwitchPrimitive.Root\n ref={ref}\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n \"peer group/switch relative inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-brand data-unchecked:bg-input dark:data-unchecked:bg-input/80 data-disabled:cursor-not-allowed data-disabled:opacity-50\",\n \"data-[size=sm]:h-[14px] data-[size=sm]:w-[24px]\",\n \"data-[size=default]:h-[18.4px] data-[size=default]:w-[32px]\",\n \"data-[size=lg]:h-[24px] data-[size=lg]:w-[44px]\",\n className\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"pointer-events-none flex items-center justify-center rounded-full bg-background ring-0 transition-transform dark:data-checked:bg-primary-foreground dark:data-unchecked:bg-foreground\",\n \"group-data-[size=sm]/switch:size-3 group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] rtl:group-data-[size=sm]/switch:data-checked:-translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-unchecked:translate-x-0 rtl:group-data-[size=sm]/switch:data-unchecked:-translate-x-0\",\n \"group-data-[size=default]/switch:size-4 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] rtl:group-data-[size=default]/switch:data-checked:-translate-x-[calc(100%-2px)] group-data-[size=default]/switch:data-unchecked:translate-x-0 rtl:group-data-[size=default]/switch:data-unchecked:-translate-x-0\",\n \"group-data-[size=lg]/switch:size-5 group-data-[size=lg]/switch:data-checked:translate-x-[22px] rtl:group-data-[size=lg]/switch:data-checked:-translate-x-[22px] group-data-[size=lg]/switch:data-unchecked:translate-x-0.5 rtl:group-data-[size=lg]/switch:data-unchecked:-translate-x-0.5\"\n )}\n >\n <CheckIcon\n strokeWidth={4}\n className={cn(\n \"hidden text-brand group-data-[state=checked]/switch:block\",\n ICON_SIZE_CLASSES\n )}\n />\n </SwitchPrimitive.Thumb>\n </SwitchPrimitive.Root>\n));\n\nSwitch.displayName = \"Switch\";\n\nexport { Switch };\n"],"names":["Switch","SwitchPrimitive.Root","SwitchPrimitive.Thumb","CheckIcon"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/primitives/index.js
CHANGED
|
@@ -73,13 +73,13 @@ import '../index-yFgkK_AM.js';
|
|
|
73
73
|
import '../index-zW4GjM5L.js';
|
|
74
74
|
import '../index-d0BBQf5t.js';
|
|
75
75
|
import '../index-Bo3AAQJp.js';
|
|
76
|
-
import '../useAriaHiddenCleanup-BIUbPJ6V.js';
|
|
77
76
|
import '../DialogTrigger-a3diAOif.js';
|
|
78
77
|
import '../useOpenInteractionType-CVfxIsuz.js';
|
|
79
78
|
import '../floating-ui.utils.dom-Bw_Rc4bg.js';
|
|
80
79
|
import '../index-DZXbzIgC.js';
|
|
81
80
|
import '../index-CSMSzzKM.js';
|
|
82
81
|
import '../with-selector-Dv0G_V_o.js';
|
|
82
|
+
import '../useAriaHiddenCleanup-BIUbPJ6V.js';
|
|
83
83
|
import '../index-CSUSJzOJ.js';
|
|
84
84
|
import '../index-CfriMyrd.js';
|
|
85
85
|
import 'react-i18next';
|
|
@@ -104,11 +104,11 @@ import '../dialog-BG8Tjl78.js';
|
|
|
104
104
|
import '../index-BQtGUR27.js';
|
|
105
105
|
import '../index-XvwNqU74.js';
|
|
106
106
|
import '../index-DT56XkyA.js';
|
|
107
|
-
import '../HelpIcon-
|
|
107
|
+
import '../HelpIcon-CB6wsVSF.js';
|
|
108
108
|
import '../renderIcon-C6twJSqH.js';
|
|
109
109
|
import '../Popover-BHGvcdV2.js';
|
|
110
110
|
import '../Typography-CmILccNh.js';
|
|
111
|
-
import '../Button-
|
|
111
|
+
import '../Button-ZssOVkG0.js';
|
|
112
112
|
import 'react-router-dom';
|
|
113
113
|
import '../label-YEsizr2c.js';
|
|
114
114
|
import '../index-CSggBaQF.js';
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button-DkIQvxAe.js","sources":["../src/components/Button/constants.ts","../src/components/Button/Button.tsx"],"sourcesContent":["type ButtonSize =\n | \"default\"\n | \"xs\"\n | \"sm\"\n | \"lg\"\n | \"icon\"\n | \"icon-xs\"\n | \"icon-sm\"\n | \"icon-lg\";\n\nexport const ICON_ONLY_SIZE_MAP: Partial<Record<ButtonSize, ButtonSize>> = {\n xs: \"icon-xs\",\n sm: \"icon-sm\",\n default: \"icon\",\n lg: \"icon-lg\",\n};\n\nexport const SPINNER_SIZE_MAP: Record<ButtonSize, string> = {\n xs: \"size-3\",\n sm: \"size-3.5\",\n default: \"size-3.5\",\n lg: \"size-4\",\n icon: \"size-3.5\",\n \"icon-xs\": \"size-3\",\n \"icon-sm\": \"size-3.5\",\n \"icon-lg\": \"size-4\",\n};\n\n// Map NeetoUI tooltip `position` values to Radix side values\nexport const TOOLTIP_SIDE_MAP: Record<\n string,\n \"top\" | \"right\" | \"bottom\" | \"left\"\n> = {\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};\n","import React, { forwardRef, type ReactNode, type MouseEvent } from \"react\";\n\nimport { Link } from \"react-router-dom\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { renderIcon, type IconProp } from \"src/shared/renderIcon\";\nimport { Button as PrimitiveButton } from \"src/primitives/Button\";\nimport { Spinner } from \"src/primitives/Spinner\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"src/primitives/Tooltip\";\n\nimport {\n ICON_ONLY_SIZE_MAP,\n SPINNER_SIZE_MAP,\n TOOLTIP_SIDE_MAP,\n} from \"./constants\";\n\nexport const BUTTON_VARIANTS = [\n \"default\",\n \"brand\",\n \"secondary\",\n \"destructive\",\n \"destructive-soft\",\n \"outline\",\n \"ghost\",\n \"link\",\n] as const;\n\nexport const BUTTON_SIZES = [\n \"default\",\n \"xs\",\n \"sm\",\n \"lg\",\n \"icon\",\n \"icon-xs\",\n \"icon-sm\",\n \"icon-lg\",\n] as const;\n\nexport type ButtonVariant = (typeof BUTTON_VARIANTS)[number];\nexport type ButtonSize = (typeof BUTTON_SIZES)[number];\n\ntype IconPosition = \"left\" | \"right\";\n\ntype ButtonType = \"button\" | \"reset\" | \"submit\";\n\ninterface ButtonTooltipProps {\n content?: ReactNode;\n position?: string;\n disabled?: boolean;\n}\n\nexport interface ButtonProps extends Omit<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n \"type\" | \"disabled\" | \"className\" | \"children\" | \"onClick\"\n> {\n /** Visual variant of the button. */\n variant?: ButtonVariant;\n /** Size of the button. */\n size?: ButtonSize;\n /** Text label rendered inside the button. */\n label?: string;\n /** Icon component, element, or class-name string. */\n icon?: IconProp;\n /** Placement of the icon relative to the label. */\n iconPosition?: IconPosition;\n /** Show a loading spinner and prevent clicks. */\n loading?: boolean;\n /** Disable the button. */\n disabled?: boolean;\n /** Click handler. */\n onClick?: (e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;\n /** Internal route (react-router `Link`). */\n to?: string;\n /** External URL (renders an anchor tag). */\n href?: string;\n /** HTML button type attribute. */\n type?: ButtonType;\n /** Stretch the button to fill its container. */\n fullWidth?: boolean;\n /** Additional CSS class names. */\n className?: string;\n /** Props forwarded to a wrapping Tooltip. */\n tooltipProps?: ButtonTooltipProps | null;\n /** Render as a custom element (polymorphic). */\n asChild?: boolean;\n /**\n * Content rendered after the label and any right-side icon (e.g., a trailing\n * chevron, badge, or shortcut indicator). Auto-wrapped with\n * `data-icon=\"inline-end\"` so the button's compact end-padding kicks in.\n */\n trailing?: ReactNode;\n /** Children rendered inside the button (fallback for `label`). */\n children?: ReactNode;\n}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n variant = \"default\",\n size = \"default\",\n label,\n icon = null,\n iconPosition = \"right\",\n loading = false,\n disabled = false,\n onClick,\n to,\n href,\n type = \"button\",\n fullWidth = false,\n className,\n tooltipProps = null,\n asChild = false,\n trailing,\n children,\n ...otherProps\n },\n ref\n ) => {\n const isIconSize = size.startsWith(\"icon\");\n const renderLabel = isIconSize ? null : label || children;\n const isIconOnly = !renderLabel && !!icon;\n const resolvedSize = isIconOnly ? (ICON_ONLY_SIZE_MAP[size] ?? size) : size;\n\n // --- Loading / disabled state ---\n const isDisabled = disabled || loading;\n\n // --- Click handler ---\n const handleClick = (\n e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n ) => {\n if (loading || disabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e);\n };\n\n // --- Icon elements ---\n const iconElement = icon ? renderIcon(icon) : null;\n\n // --- Build the inner content ---\n const buttonContent = (\n <>\n {loading && (\n <span className=\"absolute inset-0 flex items-center justify-center\">\n <Spinner\n aria-hidden=\"true\"\n className={SPINNER_SIZE_MAP[resolvedSize]}\n />\n </span>\n )}\n <span\n className={cn(\n \"inline-flex items-center gap-1.5\",\n loading && \"invisible\"\n )}\n >\n {iconPosition === \"left\" && iconElement && (\n <span data-icon=\"inline-start\">{iconElement}</span>\n )}\n {renderLabel && <span>{renderLabel}</span>}\n {iconPosition === \"right\" && iconElement && (\n <span data-icon=\"inline-end\">{iconElement}</span>\n )}\n {trailing && <span data-icon=\"inline-end\">{trailing}</span>}\n </span>\n </>\n );\n\n // --- Merged className ---\n const mergedClassName = cn(\n fullWidth && \"w-full\",\n loading && \"relative pointer-events-none\",\n variant === \"link\" && \"[table_&]:max-w-full [table_&]:whitespace-normal\",\n className\n );\n\n // --- Determine render element ---\n let buttonElement: ReactNode;\n\n if (asChild) {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n {children}\n </PrimitiveButton>\n );\n } else if (!disabled && to) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <Link\n innerRef={ref as React.Ref<HTMLAnchorElement>}\n to={to}\n onClick={handleClick}\n >\n {buttonContent}\n </Link>\n </PrimitiveButton>\n );\n } else if (!disabled && href) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <a\n ref={ref as React.Ref<HTMLAnchorElement>}\n href={href}\n onClick={handleClick}\n >\n {buttonContent}\n </a>\n </PrimitiveButton>\n );\n } else {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n type={type}\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n onClick={handleClick}\n {...otherProps}\n >\n {buttonContent}\n </PrimitiveButton>\n );\n }\n\n // --- Tooltip wrapper ---\n if (tooltipProps) {\n const { content, position, disabled: tooltipDisabled } = tooltipProps;\n\n if (tooltipDisabled || !content) {\n return <>{buttonElement}</>;\n }\n\n const side = position ? TOOLTIP_SIDE_MAP[position] : undefined;\n\n // Wrap disabled buttons in a span so tooltip still triggers\n const triggerContent = isDisabled ? (\n <span className=\"inline-flex\">{buttonElement}</span>\n ) : (\n buttonElement\n );\n\n return (\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>{triggerContent}</TooltipTrigger>\n <TooltipContent data-testid=\"tooltip-box\" side={side}>\n {content}\n </TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n }\n\n return <>{buttonElement}</>;\n }\n);\n\nButton.displayName = \"Button\";\n\nexport { Button };\n"],"names":["PrimitiveButton"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Button-CeSFPW-p.js","sources":["../../src/components/Button/constants.ts","../../src/components/Button/Button.tsx"],"sourcesContent":["type ButtonSize =\n | \"default\"\n | \"xs\"\n | \"sm\"\n | \"lg\"\n | \"icon\"\n | \"icon-xs\"\n | \"icon-sm\"\n | \"icon-lg\";\n\nexport const ICON_ONLY_SIZE_MAP: Partial<Record<ButtonSize, ButtonSize>> = {\n xs: \"icon-xs\",\n sm: \"icon-sm\",\n default: \"icon\",\n lg: \"icon-lg\",\n};\n\nexport const SPINNER_SIZE_MAP: Record<ButtonSize, string> = {\n xs: \"size-3\",\n sm: \"size-3.5\",\n default: \"size-3.5\",\n lg: \"size-4\",\n icon: \"size-3.5\",\n \"icon-xs\": \"size-3\",\n \"icon-sm\": \"size-3.5\",\n \"icon-lg\": \"size-4\",\n};\n\n// Map NeetoUI tooltip `position` values to Radix side values\nexport const TOOLTIP_SIDE_MAP: Record<\n string,\n \"top\" | \"right\" | \"bottom\" | \"left\"\n> = {\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};\n","import React, { forwardRef, type ReactNode, type MouseEvent } from \"react\";\n\nimport { Link } from \"react-router-dom\";\nimport { cn } from \"src/shadcn/lib/utils\";\nimport { renderIcon, type IconProp } from \"src/shared/renderIcon\";\nimport { Button as PrimitiveButton } from \"src/primitives/Button\";\nimport { Spinner } from \"src/primitives/Spinner\";\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"src/primitives/Tooltip\";\n\nimport {\n ICON_ONLY_SIZE_MAP,\n SPINNER_SIZE_MAP,\n TOOLTIP_SIDE_MAP,\n} from \"./constants\";\n\nexport const BUTTON_VARIANTS = [\n \"default\",\n \"brand\",\n \"secondary\",\n \"destructive\",\n \"destructive-soft\",\n \"outline\",\n \"ghost\",\n \"link\",\n] as const;\n\nexport const BUTTON_SIZES = [\n \"default\",\n \"xs\",\n \"sm\",\n \"lg\",\n \"icon\",\n \"icon-xs\",\n \"icon-sm\",\n \"icon-lg\",\n] as const;\n\nexport type ButtonVariant = (typeof BUTTON_VARIANTS)[number];\nexport type ButtonSize = (typeof BUTTON_SIZES)[number];\n\ntype IconPosition = \"left\" | \"right\";\n\ntype ButtonType = \"button\" | \"reset\" | \"submit\";\n\ninterface ButtonTooltipProps {\n content?: ReactNode;\n position?: string;\n disabled?: boolean;\n}\n\nexport interface ButtonProps extends Omit<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n \"type\" | \"disabled\" | \"className\" | \"children\" | \"onClick\"\n> {\n /** Visual variant of the button. */\n variant?: ButtonVariant;\n /** Size of the button. */\n size?: ButtonSize;\n /** Text label rendered inside the button. */\n label?: string;\n /** Icon component, element, or class-name string. */\n icon?: IconProp;\n /** Placement of the icon relative to the label. */\n iconPosition?: IconPosition;\n /** Show a loading spinner and prevent clicks. */\n loading?: boolean;\n /** Disable the button. */\n disabled?: boolean;\n /** Click handler. */\n onClick?: (e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => void;\n /** Internal route (react-router `Link`). */\n to?: string;\n /** External URL (renders an anchor tag). */\n href?: string;\n /** HTML button type attribute. */\n type?: ButtonType;\n /** Stretch the button to fill its container. */\n fullWidth?: boolean;\n /** Additional CSS class names. */\n className?: string;\n /** Props forwarded to a wrapping Tooltip. */\n tooltipProps?: ButtonTooltipProps | null;\n /** Render as a custom element (polymorphic). */\n asChild?: boolean;\n /**\n * Content rendered after the label and any right-side icon (e.g., a trailing\n * chevron, badge, or shortcut indicator). Auto-wrapped with\n * `data-icon=\"inline-end\"` so the button's compact end-padding kicks in.\n */\n trailing?: ReactNode;\n /** Children rendered inside the button (fallback for `label`). */\n children?: ReactNode;\n}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n variant = \"default\",\n size = \"default\",\n label,\n icon = null,\n iconPosition = \"right\",\n loading = false,\n disabled = false,\n onClick,\n to,\n href,\n type = \"button\",\n fullWidth = false,\n className,\n tooltipProps = null,\n asChild = false,\n trailing,\n children,\n ...otherProps\n },\n ref\n ) => {\n const isIconSize = size.startsWith(\"icon\");\n const renderLabel = isIconSize ? null : label || children;\n const isIconOnly = !renderLabel && !!icon;\n const resolvedSize = isIconOnly ? (ICON_ONLY_SIZE_MAP[size] ?? size) : size;\n\n // --- Loading / disabled state ---\n const isDisabled = disabled || loading;\n\n // --- Click handler ---\n const handleClick = (\n e: MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n ) => {\n if (loading || disabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e);\n };\n\n // --- Icon elements ---\n const iconElement = icon ? renderIcon(icon) : null;\n\n // --- Build the inner content ---\n const buttonContent = (\n <>\n {loading && (\n <span className=\"absolute inset-0 flex items-center justify-center\">\n <Spinner\n aria-hidden=\"true\"\n className={SPINNER_SIZE_MAP[resolvedSize]}\n />\n </span>\n )}\n <span\n className={cn(\n \"inline-flex items-center gap-1.5\",\n loading && \"invisible\"\n )}\n >\n {iconPosition === \"left\" && iconElement && (\n <span data-icon=\"inline-start\">{iconElement}</span>\n )}\n {renderLabel && <span>{renderLabel}</span>}\n {iconPosition === \"right\" && iconElement && (\n <span data-icon=\"inline-end\">{iconElement}</span>\n )}\n {trailing && <span data-icon=\"inline-end\">{trailing}</span>}\n </span>\n </>\n );\n\n // --- Merged className ---\n const mergedClassName = cn(\n fullWidth && \"w-full\",\n loading && \"relative pointer-events-none\",\n variant === \"link\" && \"[table_&]:max-w-full [table_&]:whitespace-normal\",\n className\n );\n\n // --- Determine render element ---\n let buttonElement: ReactNode;\n\n if (asChild) {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n {children}\n </PrimitiveButton>\n );\n } else if (!disabled && to) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <Link\n innerRef={ref as React.Ref<HTMLAnchorElement>}\n to={to}\n onClick={handleClick}\n >\n {buttonContent}\n </Link>\n </PrimitiveButton>\n );\n } else if (!disabled && href) {\n buttonElement = (\n <PrimitiveButton\n asChild\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n {...otherProps}\n >\n <a\n ref={ref as React.Ref<HTMLAnchorElement>}\n href={href}\n onClick={handleClick}\n >\n {buttonContent}\n </a>\n </PrimitiveButton>\n );\n } else {\n buttonElement = (\n <PrimitiveButton\n ref={ref}\n type={type}\n variant={variant}\n size={resolvedSize}\n className={mergedClassName}\n disabled={isDisabled}\n onClick={handleClick}\n {...otherProps}\n >\n {buttonContent}\n </PrimitiveButton>\n );\n }\n\n // --- Tooltip wrapper ---\n if (tooltipProps) {\n const { content, position, disabled: tooltipDisabled } = tooltipProps;\n\n if (tooltipDisabled || !content) {\n return <>{buttonElement}</>;\n }\n\n const side = position ? TOOLTIP_SIDE_MAP[position] : undefined;\n\n // Wrap disabled buttons in a span so tooltip still triggers\n const triggerContent = isDisabled ? (\n <span className=\"inline-flex\">{buttonElement}</span>\n ) : (\n buttonElement\n );\n\n return (\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>{triggerContent}</TooltipTrigger>\n <TooltipContent data-testid=\"tooltip-box\" side={side}>\n {content}\n </TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n }\n\n return <>{buttonElement}</>;\n }\n);\n\nButton.displayName = \"Button\";\n\nexport { Button };\n"],"names":["forwardRef","renderIcon","jsxs","Fragment","jsx","Spinner","cn","PrimitiveButton","Link","TooltipProvider","Tooltip","TooltipTrigger","TooltipContent"],"mappings":"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"}
|