ivt
Version:
Ivt Components Library
1 lines • 10.4 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../node_modules/@radix-ui/react-switch/dist/index.mjs","../../src/components/ui/switch/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","\"use client\";\n\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Switch({ className, ...props }: React.ComponentProps<typeof SwitchPrimitive.Root>) {\n\treturn (\n\t\t<SwitchPrimitive.Root\n\t\t\tdata-slot=\"switch\"\n\t\t\tclassName={cn(\n\t\t\t\t\"peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<SwitchPrimitive.Thumb\n\t\t\t\tdata-slot=\"switch-thumb\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0\",\n\t\t\t\t)}\n\t\t\t/>\n\t\t</SwitchPrimitive.Root>\n\t);\n}\n\nexport { Switch };\n"],"names":["Switch","className","props","SwitchPrimitive","data-slot","cn"],"mappings":"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","x_google_ignoreList":[0]}