UNPKG

@undp/design-system-react

Version:

React based design system for UNDP

1 lines 19.2 kB
{"version":3,"file":"switch-Ye5_hj0W.cjs","names":["createContextScope","useControllableState","React","useComposedRefs","Primitive","composeEventHandlers","Switch","Fragment","useSize"],"sources":["../node_modules/@radix-ui/react-switch/dist/index.mjs","../src/components/ui/switch.tsx"],"sourcesContent":["\"use client\";\nvar __defProp = Object.defineProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\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 { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar SWITCH_NAME = \"Switch\";\nvar [createSwitchContext, createSwitchScope] = createContextScope(SWITCH_NAME);\nvar [SwitchProviderImpl, useSwitchContext] = createSwitchContext(SWITCH_NAME);\nfunction SwitchProvider(props) {\n const {\n __scopeSwitch,\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: SWITCH_NAME\n });\n const [control, setControl] = React.useState(null);\n const [bubbleInput, setBubbleInput] = React.useState(null);\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n const [userInteractionCount, onUserInteraction] = React.useReducer(\n (count) => count + 1,\n 0\n );\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 setChecked,\n disabled,\n control,\n setControl,\n name,\n form,\n value,\n hasConsumerStoppedPropagationRef,\n userInteractionCount,\n onUserInteraction,\n required,\n defaultChecked,\n isFormControl,\n bubbleInput,\n setBubbleInput\n };\n return /* @__PURE__ */ jsx(SwitchProviderImpl, { scope: __scopeSwitch, ...context, children: isFunction(internal_do_not_use_render) ? internal_do_not_use_render(context) : children });\n}\n__name(SwitchProvider, \"SwitchProvider\");\nvar TRIGGER_NAME = \"SwitchTrigger\";\nvar SwitchTrigger = /* @__PURE__ */ React.forwardRef(\n /* @__PURE__ */ __name(function SwitchTrigger2({ __scopeSwitch, onClick, ...switchProps }, forwardedRef) {\n const {\n control,\n form,\n value,\n disabled,\n checked,\n required,\n setControl,\n setChecked,\n hasConsumerStoppedPropagationRef,\n onUserInteraction,\n isFormControl,\n bubbleInput\n } = useSwitchContext(TRIGGER_NAME, __scopeSwitch);\n const composedRefs = useComposedRefs(forwardedRef, setControl);\n const initialCheckedStateRef = React.useRef(checked);\n React.useEffect(() => {\n const associatedForm = form ? control?.ownerDocument.getElementById(form) : control?.form;\n if (associatedForm instanceof HTMLFormElement) {\n const reset = /* @__PURE__ */ __name(() => setChecked(initialCheckedStateRef.current), \"reset\");\n associatedForm.addEventListener(\"reset\", reset);\n return () => associatedForm.removeEventListener(\"reset\", reset);\n }\n }, [control, form, setChecked]);\n return /* @__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(onClick, (event) => {\n onUserInteraction();\n setChecked((prevChecked) => !prevChecked);\n if (bubbleInput && isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })\n }\n );\n }, \"SwitchTrigger\")\n);\nvar Switch = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function Switch2(props, forwardedRef) {\n const {\n __scopeSwitch,\n name,\n checked,\n defaultChecked,\n required,\n disabled,\n value,\n onCheckedChange,\n form,\n ...switchProps\n } = props;\n return /* @__PURE__ */ jsx(\n SwitchProvider,\n {\n __scopeSwitch,\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 SwitchTrigger,\n {\n ...switchProps,\n ref: forwardedRef,\n __scopeSwitch\n }\n ),\n isFormControl && /* @__PURE__ */ jsx(\n SwitchBubbleInput,\n {\n __scopeSwitch\n }\n )\n ] })\n }\n );\n }, \"Switch\")\n);\nvar THUMB_NAME = \"SwitchThumb\";\nvar SwitchThumb = /* @__PURE__ */ React.forwardRef(\n /* @__PURE__ */ __name(function SwitchThumb2(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 }, \"SwitchThumb\")\n);\nvar BUBBLE_INPUT_NAME = \"SwitchBubbleInput\";\nvar SwitchBubbleInput = /* @__PURE__ */ React.forwardRef(\n // blank line to reduce diff noise\n /* @__PURE__ */ __name(function SwitchBubbleInput2({ __scopeSwitch, onClick, ...props }, forwardedRef) {\n const {\n control,\n hasConsumerStoppedPropagationRef,\n userInteractionCount,\n checked,\n defaultChecked,\n required,\n disabled,\n name,\n value,\n form,\n bubbleInput,\n setBubbleInput\n } = useSwitchContext(BUBBLE_INPUT_NAME, __scopeSwitch);\n const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);\n const controlSize = useSize(control);\n const shouldStopClickPropagationRef = React.useRef(false);\n const prevCheckedRef = React.useRef(checked);\n const prevUserInteractionCountRef = React.useRef(userInteractionCount);\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 isUserInteraction = userInteractionCount !== prevUserInteractionCountRef.current;\n prevUserInteractionCountRef.current = userInteractionCount;\n const checkedChanged = prevCheckedRef.current !== checked;\n prevCheckedRef.current = checked;\n const bubbles = !(isUserInteraction && hasConsumerStoppedPropagationRef.current);\n if (checkedChanged && setChecked) {\n shouldStopClickPropagationRef.current = !isUserInteraction;\n const event = new Event(\"click\", { bubbles });\n setChecked.call(input, checked);\n input.dispatchEvent(event);\n shouldStopClickPropagationRef.current = false;\n }\n }, [bubbleInput, checked, hasConsumerStoppedPropagationRef, userInteractionCount]);\n const defaultCheckedRef = React.useRef(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 onClick: composeEventHandlers(onClick, (event) => {\n if (shouldStopClickPropagationRef.current) {\n event.stopPropagation();\n }\n }),\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 }, \"SwitchBubbleInput\")\n);\nfunction isFunction(value) {\n return typeof value === \"function\";\n}\n__name(isFunction, \"isFunction\");\nfunction getState(checked) {\n return checked ? \"checked\" : \"unchecked\";\n}\n__name(getState, \"getState\");\nexport {\n Switch as Root,\n Switch,\n SwitchThumb,\n SwitchThumb as Thumb,\n createSwitchScope,\n SwitchBubbleInput as unstable_BubbleInput,\n SwitchProvider as unstable_Provider,\n SwitchBubbleInput as unstable_SwitchBubbleInput,\n SwitchProvider as unstable_SwitchProvider,\n SwitchTrigger as unstable_SwitchTrigger,\n SwitchTrigger as unstable_Trigger\n};\n//# sourceMappingURL=index.mjs.map\n","import { cva, type VariantProps } from 'class-variance-authority';\nimport { Check, X } from 'lucide-react';\nimport { Switch as SwitchPrimitives } from 'radix-ui';\nimport React, { useState } from 'react';\nimport { cn } from '@/lib/utils';\nimport { P } from './typography';\n\nconst switchVariants = cva(\n 'peer inline-flex h-[30px] w-[60px] shrink-0 cursor-pointer items-center rounded-full transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-offset-ring disabled:cursor-not-allowed disabled:opacity-disabled',\n {\n variants: {\n color: {\n primary: 'bg-surface-hard data-[state=checked]:bg-primary',\n secondary: 'bg-surface-hard data-[state=checked]:bg-secondary',\n tertiary: 'bg-surface-hard data-[state=checked]:bg-tertiary',\n quaternary: 'bg-surface-hard data-[state=checked]:bg-quaternary',\n foreground: 'bg-surface-hard data-[state=checked]:bg-foreground',\n },\n size: {\n small: 'h-[20px] w-[40px]',\n normal: 'h-[30px] w-[60px]',\n },\n },\n defaultVariants: {\n color: 'primary',\n size: 'normal',\n },\n },\n);\n\nconst thumbVariant = cva(\n 'bg-background pointer-events-none block rounded-full shadow-lg ring-0 transition-transform data-[state=unchecked]:translate-x-[4px] data-[state=unchecked]:rtl:translate-x-[-2px]',\n {\n variants: {\n size: {\n small: 'h-[14px] w-[14px] ',\n normal: 'h-[22px] w-[22px] ',\n },\n showIconWithSize: {\n yes_with_small:\n 'data-[state=checked]:translate-x-[8px] data-[state=checked]:rtl:translate-x-[-8px]',\n no_with_small:\n 'data-[state=checked]:translate-x-[22px] data-[state=checked]:rtl:translate-x-[-22px]',\n yes_with_normal:\n 'data-[state=checked]:translate-x-[12px] data-[state=checked]:rtl:translate-x-[-12px]',\n no_with_normal:\n 'data-[state=checked]:translate-x-[32px] data-[state=checked]:rtl:translate-x-[-32px]',\n },\n },\n defaultVariants: { size: 'normal', showIconWithSize: 'no_with_normal' },\n },\n);\n\nconst Switch = React.forwardRef<\n React.ComponentRef<typeof SwitchPrimitives.Root>,\n React.ComponentPropsWithoutRef<typeof SwitchPrimitives.Root> &\n VariantProps<typeof switchVariants> & {\n showValue?: boolean;\n showIcon?: boolean;\n values?: [string, string];\n }\n>(\n (\n {\n className,\n showValue = false,\n showIcon = true,\n values = ['On', 'Off'],\n onCheckedChange,\n color,\n size = 'normal',\n ...props\n },\n ref,\n ) => {\n const [value, setValue] = useState(props.defaultChecked || false);\n return (\n <div className='flex items-center gap-2'>\n <SwitchPrimitives.Root\n {...props}\n className={cn(switchVariants({ color, size }), className)}\n ref={ref}\n onCheckedChange={(d) => {\n setValue(d);\n onCheckedChange?.(d);\n }}\n >\n {showIcon && value ? (\n <Check\n size={size === 'normal' ? 14 : 10}\n className={\n size === 'normal'\n ? 'ml-2 text-content-reverse rtl:mr-2 rtl:ml-0'\n : 'ml-1 text-content-reverse rtl:mr-1 rtl:ml-0'\n }\n />\n ) : null}\n <SwitchPrimitives.Thumb\n className={cn(\n thumbVariant({\n size,\n showIconWithSize: showIcon\n ? `yes_with_${size as 'small' | 'normal'}`\n : `no_with_${size as 'small' | 'normal'}`,\n }),\n )}\n />\n {showIcon && !value ? (\n <X\n size={size === 'normal' ? 14 : 10}\n className={size === 'normal' ? 'ml-3 rtl:mr-3 rtl:ml-0' : 'ml-2 rtl:mr-2 rtl:ml-0'}\n />\n ) : null}\n </SwitchPrimitives.Root>\n {showValue ? (\n <P size='base' marginBottom='none' leading='none'>\n {value ? values[0] : values[1]}\n </P>\n ) : null}\n </div>\n );\n },\n);\nSwitch.displayName = SwitchPrimitives.Root.displayName;\n\nexport { Switch };\n"],"x_google_ignoreList":[0],"mappings":"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"}