@radix-ui/react-radio-group 1.0.0 → 1.0.1-rc.2

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.
@@ -1 +1 @@
1
- {"mappings":";;;;AA0BA,4BAA4B,MAAM,wBAAwB,CAAC,OAAO,UAAU,MAAM,CAAC,CAAC;AACpF,oBAAqB,SAAQ,oBAAoB;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,IAAI,IAAI,CAAC;CAClB;AAED,QAAA,MAAM,2FAgEL,CAAC;AAWF,0BAA0B,MAAM,wBAAwB,CAAC,OAAO,UAAU,IAAI,CAAC,CAAC;AAChF,6BAAqC,SAAQ,kBAAkB;IAC7D;;;OAGG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAED,QAAA,MAAM,2GAeL,CAAC;AC7GF,OAAA,4FAGE,CAAC;AAIH,8BAA8B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC,CAAC;AAMF,6BAA6B,MAAM,wBAAwB,CAAC,OAAO,iBAAiB,IAAI,CAAC,CAAC;AAC1F,yBAAyB,MAAM,wBAAwB,CAAC,OAAO,UAAU,GAAG,CAAC,CAAC;AAC9E,gCAA0B,SAAQ,iBAAiB;IACjD,IAAI,CAAC,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,CAAC;IACpE,GAAG,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACxC,aAAa,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAC;CACzD;AAED,OAAA,MAAM,kGAqDL,CAAC;AAWF,oBAAkB,MAAM,wBAAwB,CAAC,YAAY,CAAC,CAAC;AAC/D,oCAA8B,SAAQ,IAAI,CAAC,YAAU,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,KAAK,EAAE,MAAM,CAAC;CACf;AAED,OAAA,MAAM,6GA0DL,CAAC;AAWF,6BAA2B,MAAM,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;AACjF,yCAAmC,SAAQ,qBAAmB;CAAG;AAEjE,OAAA,MAAM,qHAML,CAAC;AAMF,OAAA,MAAM,4FAAiB,CAAC;AACxB,OAAA,MAAM,mGAAqB,CAAC;AAC5B,OAAA,MAAM,2GAA+B,CAAC","sources":["packages/react/radio-group/src/packages/react/radio-group/src/Radio.tsx","packages/react/radio-group/src/packages/react/radio-group/src/RadioGroup.tsx","packages/react/radio-group/src/packages/react/radio-group/src/index.ts","packages/react/radio-group/src/index.ts"],"sourcesContent":[null,null,null,"export {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n} from './RadioGroup';\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps } from './RadioGroup';\n"],"names":[],"version":3,"file":"index.d.ts.map"}
1
+ {"mappings":";;;;AAyBA,4BAA4B,MAAM,wBAAwB,CAAC,OAAO,UAAU,MAAM,CAAC,CAAC;AACpF,oBAAqB,SAAQ,oBAAoB;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,IAAI,IAAI,CAAC;CAClB;AAED,QAAA,MAAM,2FA4DL,CAAC;AAWF,0BAA0B,MAAM,wBAAwB,CAAC,OAAO,UAAU,IAAI,CAAC,CAAC;AAChF,6BAAqC,SAAQ,kBAAkB;IAC7D;;;OAGG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAED,QAAA,MAAM,2GAeL,CAAC;ACzGF,OAAA,4FAGE,CAAC;AAIH,8BAA8B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC,CAAC;AAMF,6BAA6B,MAAM,wBAAwB,CAAC,OAAO,iBAAiB,IAAI,CAAC,CAAC;AAC1F,yBAAyB,MAAM,wBAAwB,CAAC,OAAO,UAAU,GAAG,CAAC,CAAC;AAC9E,gCAA0B,SAAQ,iBAAiB;IACjD,IAAI,CAAC,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,CAAC;IACpE,GAAG,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACxC,aAAa,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAC;CACzD;AAED,OAAA,MAAM,kGAiDL,CAAC;AAWF,oBAAkB,MAAM,wBAAwB,CAAC,YAAY,CAAC,CAAC;AAC/D,oCAA8B,SAAQ,IAAI,CAAC,YAAU,EAAE,SAAS,GAAG,MAAM,CAAC;IACxE,KAAK,EAAE,MAAM,CAAC;CACf;AAED,OAAA,MAAM,6GA0DL,CAAC;AAWF,6BAA2B,MAAM,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;AACjF,yCAAmC,SAAQ,qBAAmB;CAAG;AAEjE,OAAA,MAAM,qHAML,CAAC;AAMF,OAAA,MAAM,4FAAiB,CAAC;AACxB,OAAA,MAAM,mGAAqB,CAAC;AAC5B,OAAA,MAAM,2GAA+B,CAAC","sources":["packages/react/radio-group/src/packages/react/radio-group/src/Radio.tsx","packages/react/radio-group/src/packages/react/radio-group/src/RadioGroup.tsx","packages/react/radio-group/src/packages/react/radio-group/src/index.ts","packages/react/radio-group/src/index.ts"],"sourcesContent":[null,null,null,"export {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n} from './RadioGroup';\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps } from './RadioGroup';\n"],"names":[],"version":3,"file":"index.d.ts.map"}
package/dist/index.js CHANGED
@@ -1,7 +1,6 @@
1
1
  var $9yYIj$babelruntimehelpersextends = require("@babel/runtime/helpers/extends");
2
2
  var $9yYIj$react = require("react");
3
3
  var $9yYIj$radixuiprimitive = require("@radix-ui/primitive");
4
- var $9yYIj$radixuireactlabel = require("@radix-ui/react-label");
5
4
  var $9yYIj$radixuireactcomposerefs = require("@radix-ui/react-compose-refs");
6
5
  var $9yYIj$radixuireactcontext = require("@radix-ui/react-context");
7
6
  var $9yYIj$radixuireactprimitive = require("@radix-ui/react-primitive");
@@ -44,8 +43,6 @@ $parcel$export(module.exports, "Indicator", () => $240483839a8a76fd$export$adb58
44
43
 
45
44
 
46
45
 
47
-
48
-
49
46
 
50
47
  /* -------------------------------------------------------------------------------------------------
51
48
  * Radio
@@ -53,12 +50,10 @@ $parcel$export(module.exports, "Indicator", () => $240483839a8a76fd$export$adb58
53
50
  const [$ce74a64c62457efb$var$createRadioContext, $ce74a64c62457efb$export$67d2296460f1b002] = $9yYIj$radixuireactcontext.createContextScope($ce74a64c62457efb$var$RADIO_NAME);
54
51
  const [$ce74a64c62457efb$var$RadioProvider, $ce74a64c62457efb$var$useRadioContext] = $ce74a64c62457efb$var$createRadioContext($ce74a64c62457efb$var$RADIO_NAME);
55
52
  const $ce74a64c62457efb$export$d7b12c4107be0d61 = /*#__PURE__*/ $9yYIj$react.forwardRef((props, forwardedRef)=>{
56
- const { __scopeRadio: __scopeRadio , 'aria-labelledby': ariaLabelledby , name: name , checked: checked = false , required: required , disabled: disabled , value: value = 'on' , onCheck: onCheck , ...radioProps } = props;
53
+ const { __scopeRadio: __scopeRadio , name: name , checked: checked = false , required: required , disabled: disabled , value: value = 'on' , onCheck: onCheck , ...radioProps } = props;
57
54
  const [button, setButton] = $9yYIj$react.useState(null);
58
55
  const composedRefs = $9yYIj$radixuireactcomposerefs.useComposedRefs(forwardedRef, (node)=>setButton(node)
59
56
  );
60
- const labelId = $9yYIj$radixuireactlabel.useLabelContext(button);
61
- const labelledBy = ariaLabelledby || labelId;
62
57
  const hasConsumerStoppedPropagationRef = $9yYIj$react.useRef(false); // We set this to true by default so that events bubble to forms without JS (SSR)
63
58
  const isFormControl = button ? Boolean(button.closest('form')) : true;
64
59
  return /*#__PURE__*/ $9yYIj$react.createElement($ce74a64c62457efb$var$RadioProvider, {
@@ -69,7 +64,6 @@ const $ce74a64c62457efb$export$d7b12c4107be0d61 = /*#__PURE__*/ $9yYIj$react.for
69
64
  type: "button",
70
65
  role: "radio",
71
66
  "aria-checked": checked,
72
- "aria-labelledby": labelledBy,
73
67
  "data-state": $ce74a64c62457efb$var$getState(checked),
74
68
  "data-disabled": disabled ? '' : undefined,
75
69
  disabled: disabled,
@@ -182,9 +176,7 @@ const $240483839a8a76fd$var$useRovingFocusGroupScope = $9yYIj$radixuireactroving
182
176
  const $240483839a8a76fd$var$useRadioScope = $ce74a64c62457efb$export$67d2296460f1b002();
183
177
  const [$240483839a8a76fd$var$RadioGroupProvider, $240483839a8a76fd$var$useRadioGroupContext] = $240483839a8a76fd$var$createRadioGroupContet($240483839a8a76fd$var$RADIO_GROUP_NAME);
184
178
  const $240483839a8a76fd$export$a98f0dcb43a68a25 = /*#__PURE__*/ $9yYIj$react.forwardRef((props, forwardedRef)=>{
185
- const { __scopeRadioGroup: __scopeRadioGroup , name: name , 'aria-labelledby': ariaLabelledby , defaultValue: defaultValue , value: valueProp , required: required = false , orientation: orientation , dir: dir , loop: loop = true , onValueChange: onValueChange , ...groupProps } = props;
186
- const labelId = $9yYIj$radixuireactlabel.useLabelContext();
187
- const labelledBy = ariaLabelledby || labelId;
179
+ const { __scopeRadioGroup: __scopeRadioGroup , name: name , defaultValue: defaultValue , value: valueProp , required: required = false , orientation: orientation , dir: dir , loop: loop = true , onValueChange: onValueChange , ...groupProps } = props;
188
180
  const rovingFocusGroupScope = $240483839a8a76fd$var$useRovingFocusGroupScope(__scopeRadioGroup);
189
181
  const direction = $9yYIj$radixuireactdirection.useDirection(dir);
190
182
  const [value, setValue] = $9yYIj$radixuireactusecontrollablestate.useControllableState({
@@ -208,7 +200,6 @@ const $240483839a8a76fd$export$a98f0dcb43a68a25 = /*#__PURE__*/ $9yYIj$react.for
208
200
  role: "radiogroup",
209
201
  "aria-required": required,
210
202
  "aria-orientation": orientation,
211
- "aria-labelledby": labelledBy,
212
203
  dir: direction
213
204
  }, groupProps, {
214
205
  ref: forwardedRef
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/react/radio-group/src/index.ts","packages/react/radio-group/src/RadioGroup.tsx","packages/react/radio-group/src/Radio.tsx"],"sourcesContent":["export {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n} from './RadioGroup';\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps } from './RadioGroup';\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { useLabelContext } from '@radix-ui/react-label';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { Primitive } 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';\nimport { Radio, RadioIndicator, createRadioScope } from './Radio';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\nconst ARROW_KEYS = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroup\n * -----------------------------------------------------------------------------------------------*/\nconst RADIO_GROUP_NAME = 'RadioGroup';\n\ntype ScopedProps<P> = P & { __scopeRadioGroup?: Scope };\nconst [createRadioGroupContet, createRadioGroupScope] = createContextScope(RADIO_GROUP_NAME, [\n createRovingFocusGroupScope,\n createRadioScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\nconst useRadioScope = createRadioScope();\n\ntype RadioGroupContextValue = {\n name?: string;\n required: boolean;\n value?: string;\n onValueChange(value: string): void;\n};\n\nconst [RadioGroupProvider, useRadioGroupContext] =\n createRadioGroupContet<RadioGroupContextValue>(RADIO_GROUP_NAME);\n\ntype RadioGroupElement = React.ElementRef<typeof Primitive.div>;\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface RadioGroupProps extends PrimitiveDivProps {\n name?: RadioGroupContextValue['name'];\n required?: Radix.ComponentPropsWithoutRef<typeof Radio>['required'];\n dir?: RovingFocusGroupProps['dir'];\n orientation?: RovingFocusGroupProps['orientation'];\n loop?: RovingFocusGroupProps['loop'];\n defaultValue?: string;\n value?: RadioGroupContextValue['value'];\n onValueChange?: RadioGroupContextValue['onValueChange'];\n}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>(\n (props: ScopedProps<RadioGroupProps>, forwardedRef) => {\n const {\n __scopeRadioGroup,\n name,\n 'aria-labelledby': ariaLabelledby,\n defaultValue,\n value: valueProp,\n required = false,\n orientation,\n dir,\n loop = true,\n onValueChange,\n ...groupProps\n } = props;\n const labelId = useLabelContext();\n const labelledBy = ariaLabelledby || labelId;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n return (\n <RadioGroupProvider\n scope={__scopeRadioGroup}\n name={name}\n required={required}\n value={value}\n onValueChange={setValue}\n >\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div\n role=\"radiogroup\"\n aria-required={required}\n aria-orientation={orientation}\n aria-labelledby={labelledBy}\n dir={direction}\n {...groupProps}\n ref={forwardedRef}\n />\n </RovingFocusGroup.Root>\n </RadioGroupProvider>\n );\n }\n);\n\nRadioGroup.displayName = RADIO_GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'RadioGroupItem';\n\ntype RadioGroupItemElement = React.ElementRef<typeof Radio>;\ntype RadioProps = Radix.ComponentPropsWithoutRef<typeof Radio>;\ninterface RadioGroupItemProps extends Omit<RadioProps, 'onCheck' | 'name'> {\n value: string;\n}\n\nconst RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(\n (props: ScopedProps<RadioGroupItemProps>, forwardedRef) => {\n const { __scopeRadioGroup, disabled, ...itemProps } = props;\n const context = useRadioGroupContext(ITEM_NAME, __scopeRadioGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const radioScope = useRadioScope(__scopeRadioGroup);\n const ref = React.useRef<React.ElementRef<typeof Radio>>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const checked = context.value === itemProps.value;\n const isArrowKeyPressedRef = React.useRef(false);\n\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\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\n return (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={checked}\n >\n <Radio\n disabled={disabled}\n required={context.required}\n checked={checked}\n {...radioScope}\n {...itemProps}\n name={context.name}\n ref={composedRefs}\n onCheck={() => context.onValueChange(itemProps.value)}\n onKeyDown={composeEventHandlers((event) => {\n // According to WAI ARIA, radio groups don't activate items on enter keypress\n if (event.key === 'Enter') event.preventDefault();\n })}\n onFocus={composeEventHandlers(itemProps.onFocus, () => {\n /**\n * Our `RovingFocusGroup` will focus the radio when navigating with arrow keys\n * and we need to \"check\" it in that case. We click it to \"check\" it (instead\n * of updating `context.value`) so that the radio change event fires.\n */\n if (isArrowKeyPressedRef.current) ref.current?.click();\n })}\n />\n </RovingFocusGroup.Item>\n );\n }\n);\n\nRadioGroupItem.displayName = ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioGroupIndicator';\n\ntype RadioGroupIndicatorElement = React.ElementRef<typeof RadioIndicator>;\ntype RadioIndicatorProps = Radix.ComponentPropsWithoutRef<typeof RadioIndicator>;\ninterface RadioGroupIndicatorProps extends RadioIndicatorProps {}\n\nconst RadioGroupIndicator = React.forwardRef<RadioGroupIndicatorElement, RadioGroupIndicatorProps>(\n (props: ScopedProps<RadioGroupIndicatorProps>, forwardedRef) => {\n const { __scopeRadioGroup, ...indicatorProps } = props;\n const radioScope = useRadioScope(__scopeRadioGroup);\n return <RadioIndicator {...radioScope} {...indicatorProps} ref={forwardedRef} />;\n }\n);\n\nRadioGroupIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\nconst Root = RadioGroup;\nconst Item = RadioGroupItem;\nconst Indicator = RadioGroupIndicator;\n\nexport {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n};\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps };\n","import * 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 { useLabelContext } from '@radix-ui/react-label';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Radio\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_NAME = 'Radio';\n\ntype ScopedProps<P> = P & { __scopeRadio?: Scope };\nconst [createRadioContext, createRadioScope] = createContextScope(RADIO_NAME);\n\ntype RadioContextValue = { checked: boolean; disabled?: boolean };\nconst [RadioProvider, useRadioContext] = createRadioContext<RadioContextValue>(RADIO_NAME);\n\ntype RadioElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface RadioProps extends PrimitiveButtonProps {\n checked?: boolean;\n required?: boolean;\n onCheck?(): void;\n}\n\nconst Radio = React.forwardRef<RadioElement, RadioProps>(\n (props: ScopedProps<RadioProps>, forwardedRef) => {\n const {\n __scopeRadio,\n 'aria-labelledby': ariaLabelledby,\n name,\n checked = false,\n required,\n disabled,\n value = 'on',\n onCheck,\n ...radioProps\n } = props;\n const [button, setButton] = React.useState<HTMLButtonElement | null>(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const labelId = useLabelContext(button);\n const labelledBy = ariaLabelledby || labelId;\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n // We set this to true by default so that events bubble to forms without JS (SSR)\n const isFormControl = button ? Boolean(button.closest('form')) : true;\n\n return (\n <RadioProvider scope={__scopeRadio} checked={checked} disabled={disabled}>\n <Primitive.button\n type=\"button\"\n role=\"radio\"\n aria-checked={checked}\n aria-labelledby={labelledBy}\n data-state={getState(checked)}\n data-disabled={disabled ? '' : undefined}\n disabled={disabled}\n value={value}\n {...radioProps}\n ref={composedRefs}\n onClick={composeEventHandlers(props.onClick, (event) => {\n // radios cannot be unchecked so we only communicate a checked state\n if (!checked) onCheck?.();\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n // if radio is in a form, stop propagation from the button so that we only propagate\n // one click event (from the input). We propagate changes from an input so that native\n // form validation works and form events reflect radio updates.\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })}\n />\n {isFormControl && (\n <BubbleInput\n control={button}\n bubbles={!hasConsumerStoppedPropagationRef.current}\n name={name}\n value={value}\n checked={checked}\n required={required}\n disabled={disabled}\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 style={{ transform: 'translateX(-100%)' }}\n />\n )}\n </RadioProvider>\n );\n }\n);\n\nRadio.displayName = RADIO_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioIndicator';\n\ntype RadioIndicatorElement = React.ElementRef<typeof Primitive.span>;\ntype PrimitiveSpanProps = Radix.ComponentPropsWithoutRef<typeof Primitive.span>;\nexport interface RadioIndicatorProps extends PrimitiveSpanProps {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst RadioIndicator = React.forwardRef<RadioIndicatorElement, RadioIndicatorProps>(\n (props: ScopedProps<RadioIndicatorProps>, forwardedRef) => {\n const { __scopeRadio, forceMount, ...indicatorProps } = props;\n const context = useRadioContext(INDICATOR_NAME, __scopeRadio);\n return (\n <Presence present={forceMount || context.checked}>\n <Primitive.span\n data-state={getState(context.checked)}\n data-disabled={context.disabled ? '' : undefined}\n {...indicatorProps}\n ref={forwardedRef}\n />\n </Presence>\n );\n }\n);\n\nRadioIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype InputProps = Radix.ComponentPropsWithoutRef<'input'>;\ninterface BubbleInputProps extends Omit<InputProps, 'checked'> {\n checked: boolean;\n control: HTMLElement | null;\n bubbles: boolean;\n}\n\nconst BubbleInput = (props: BubbleInputProps) => {\n const { control, checked, bubbles = true, ...inputProps } = props;\n const ref = React.useRef<HTMLInputElement>(null);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n\n // Bubble checked change to parents (e.g form change event)\n React.useEffect(() => {\n const input = ref.current!;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(inputProto, 'checked') as PropertyDescriptor;\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\n return (\n <input\n type=\"radio\"\n aria-hidden\n defaultChecked={checked}\n {...inputProps}\n tabIndex={-1}\n ref={ref}\n style={{\n ...props.style,\n ...controlSize,\n position: 'absolute',\n pointerEvents: 'none',\n opacity: 0,\n margin: 0,\n }}\n />\n );\n};\n\nfunction getState(checked: boolean) {\n return checked ? 'checked' : 'unchecked';\n}\n\nexport {\n createRadioScope,\n //\n Radio,\n RadioIndicator,\n};\nexport type { RadioProps };\n"],"names":["createRadioGroupScope","RadioGroup","RadioGroupItem","RadioGroupIndicator","Root","Item","Indicator","React","composeEventHandlers","useLabelContext","useComposedRefs","createContextScope","Primitive","RovingFocusGroup","createRovingFocusGroupScope","useControllableState","useDirection","Radio","RadioIndicator","createRadioScope","ARROW_KEYS","RADIO_GROUP_NAME","createRadioGroupContet","useRovingFocusGroupScope","useRadioScope","RadioGroupProvider","useRadioGroupContext","forwardRef","props","forwardedRef","__scopeRadioGroup","name","ariaLabelledby","defaultValue","value","valueProp","required","orientation","dir","loop","onValueChange","groupProps","labelId","labelledBy","rovingFocusGroupScope","direction","setValue","prop","defaultProp","onChange","ITEM_NAME","disabled","itemProps","context","radioScope","ref","useRef","composedRefs","checked","isArrowKeyPressedRef","useEffect","handleKeyDown","event","includes","key","current","handleKeyUp","document","addEventListener","removeEventListener","preventDefault","onFocus","click","INDICATOR_NAME","indicatorProps","useSize","usePrevious","Presence","RADIO_NAME","createRadioContext","RadioProvider","useRadioContext","__scopeRadio","onCheck","radioProps","button","setButton","useState","node","hasConsumerStoppedPropagationRef","isFormControl","Boolean","closest","getState","undefined","onClick","isPropagationStopped","stopPropagation","transform","forceMount","BubbleInput","control","bubbles","inputProps","prevChecked","controlSize","input","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","Event","call","dispatchEvent","style","position","pointerEvents","opacity","margin"],"version":3,"file":"index.js.map"}
1
+ {"mappings":"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","sources":["packages/react/radio-group/src/index.ts","packages/react/radio-group/src/RadioGroup.tsx","packages/react/radio-group/src/Radio.tsx"],"sourcesContent":["export {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n} from './RadioGroup';\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps } from './RadioGroup';\n","import * 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 { Primitive } 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';\nimport { Radio, RadioIndicator, createRadioScope } from './Radio';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\nconst ARROW_KEYS = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroup\n * -----------------------------------------------------------------------------------------------*/\nconst RADIO_GROUP_NAME = 'RadioGroup';\n\ntype ScopedProps<P> = P & { __scopeRadioGroup?: Scope };\nconst [createRadioGroupContet, createRadioGroupScope] = createContextScope(RADIO_GROUP_NAME, [\n createRovingFocusGroupScope,\n createRadioScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\nconst useRadioScope = createRadioScope();\n\ntype RadioGroupContextValue = {\n name?: string;\n required: boolean;\n value?: string;\n onValueChange(value: string): void;\n};\n\nconst [RadioGroupProvider, useRadioGroupContext] =\n createRadioGroupContet<RadioGroupContextValue>(RADIO_GROUP_NAME);\n\ntype RadioGroupElement = React.ElementRef<typeof Primitive.div>;\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface RadioGroupProps extends PrimitiveDivProps {\n name?: RadioGroupContextValue['name'];\n required?: Radix.ComponentPropsWithoutRef<typeof Radio>['required'];\n dir?: RovingFocusGroupProps['dir'];\n orientation?: RovingFocusGroupProps['orientation'];\n loop?: RovingFocusGroupProps['loop'];\n defaultValue?: string;\n value?: RadioGroupContextValue['value'];\n onValueChange?: RadioGroupContextValue['onValueChange'];\n}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>(\n (props: ScopedProps<RadioGroupProps>, forwardedRef) => {\n const {\n __scopeRadioGroup,\n name,\n defaultValue,\n value: valueProp,\n required = 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,\n onChange: onValueChange,\n });\n\n return (\n <RadioGroupProvider\n scope={__scopeRadioGroup}\n name={name}\n required={required}\n value={value}\n onValueChange={setValue}\n >\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div\n role=\"radiogroup\"\n aria-required={required}\n aria-orientation={orientation}\n dir={direction}\n {...groupProps}\n ref={forwardedRef}\n />\n </RovingFocusGroup.Root>\n </RadioGroupProvider>\n );\n }\n);\n\nRadioGroup.displayName = RADIO_GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'RadioGroupItem';\n\ntype RadioGroupItemElement = React.ElementRef<typeof Radio>;\ntype RadioProps = Radix.ComponentPropsWithoutRef<typeof Radio>;\ninterface RadioGroupItemProps extends Omit<RadioProps, 'onCheck' | 'name'> {\n value: string;\n}\n\nconst RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(\n (props: ScopedProps<RadioGroupItemProps>, forwardedRef) => {\n const { __scopeRadioGroup, disabled, ...itemProps } = props;\n const context = useRadioGroupContext(ITEM_NAME, __scopeRadioGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const radioScope = useRadioScope(__scopeRadioGroup);\n const ref = React.useRef<React.ElementRef<typeof Radio>>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const checked = context.value === itemProps.value;\n const isArrowKeyPressedRef = React.useRef(false);\n\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\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\n return (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={checked}\n >\n <Radio\n disabled={disabled}\n required={context.required}\n checked={checked}\n {...radioScope}\n {...itemProps}\n name={context.name}\n ref={composedRefs}\n onCheck={() => context.onValueChange(itemProps.value)}\n onKeyDown={composeEventHandlers((event) => {\n // According to WAI ARIA, radio groups don't activate items on enter keypress\n if (event.key === 'Enter') event.preventDefault();\n })}\n onFocus={composeEventHandlers(itemProps.onFocus, () => {\n /**\n * Our `RovingFocusGroup` will focus the radio when navigating with arrow keys\n * and we need to \"check\" it in that case. We click it to \"check\" it (instead\n * of updating `context.value`) so that the radio change event fires.\n */\n if (isArrowKeyPressedRef.current) ref.current?.click();\n })}\n />\n </RovingFocusGroup.Item>\n );\n }\n);\n\nRadioGroupItem.displayName = ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioGroupIndicator';\n\ntype RadioGroupIndicatorElement = React.ElementRef<typeof RadioIndicator>;\ntype RadioIndicatorProps = Radix.ComponentPropsWithoutRef<typeof RadioIndicator>;\ninterface RadioGroupIndicatorProps extends RadioIndicatorProps {}\n\nconst RadioGroupIndicator = React.forwardRef<RadioGroupIndicatorElement, RadioGroupIndicatorProps>(\n (props: ScopedProps<RadioGroupIndicatorProps>, forwardedRef) => {\n const { __scopeRadioGroup, ...indicatorProps } = props;\n const radioScope = useRadioScope(__scopeRadioGroup);\n return <RadioIndicator {...radioScope} {...indicatorProps} ref={forwardedRef} />;\n }\n);\n\nRadioGroupIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\nconst Root = RadioGroup;\nconst Item = RadioGroupItem;\nconst Indicator = RadioGroupIndicator;\n\nexport {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n};\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps };\n","import * 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';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Radio\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_NAME = 'Radio';\n\ntype ScopedProps<P> = P & { __scopeRadio?: Scope };\nconst [createRadioContext, createRadioScope] = createContextScope(RADIO_NAME);\n\ntype RadioContextValue = { checked: boolean; disabled?: boolean };\nconst [RadioProvider, useRadioContext] = createRadioContext<RadioContextValue>(RADIO_NAME);\n\ntype RadioElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface RadioProps extends PrimitiveButtonProps {\n checked?: boolean;\n required?: boolean;\n onCheck?(): void;\n}\n\nconst Radio = React.forwardRef<RadioElement, RadioProps>(\n (props: ScopedProps<RadioProps>, forwardedRef) => {\n const {\n __scopeRadio,\n name,\n checked = false,\n required,\n disabled,\n value = 'on',\n onCheck,\n ...radioProps\n } = props;\n const [button, setButton] = React.useState<HTMLButtonElement | null>(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n // We set this to true by default so that events bubble to forms without JS (SSR)\n const isFormControl = button ? Boolean(button.closest('form')) : true;\n\n return (\n <RadioProvider scope={__scopeRadio} checked={checked} disabled={disabled}>\n <Primitive.button\n type=\"button\"\n role=\"radio\"\n aria-checked={checked}\n data-state={getState(checked)}\n data-disabled={disabled ? '' : undefined}\n disabled={disabled}\n value={value}\n {...radioProps}\n ref={composedRefs}\n onClick={composeEventHandlers(props.onClick, (event) => {\n // radios cannot be unchecked so we only communicate a checked state\n if (!checked) onCheck?.();\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n // if radio is in a form, stop propagation from the button so that we only propagate\n // one click event (from the input). We propagate changes from an input so that native\n // form validation works and form events reflect radio updates.\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })}\n />\n {isFormControl && (\n <BubbleInput\n control={button}\n bubbles={!hasConsumerStoppedPropagationRef.current}\n name={name}\n value={value}\n checked={checked}\n required={required}\n disabled={disabled}\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 style={{ transform: 'translateX(-100%)' }}\n />\n )}\n </RadioProvider>\n );\n }\n);\n\nRadio.displayName = RADIO_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioIndicator';\n\ntype RadioIndicatorElement = React.ElementRef<typeof Primitive.span>;\ntype PrimitiveSpanProps = Radix.ComponentPropsWithoutRef<typeof Primitive.span>;\nexport interface RadioIndicatorProps extends PrimitiveSpanProps {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst RadioIndicator = React.forwardRef<RadioIndicatorElement, RadioIndicatorProps>(\n (props: ScopedProps<RadioIndicatorProps>, forwardedRef) => {\n const { __scopeRadio, forceMount, ...indicatorProps } = props;\n const context = useRadioContext(INDICATOR_NAME, __scopeRadio);\n return (\n <Presence present={forceMount || context.checked}>\n <Primitive.span\n data-state={getState(context.checked)}\n data-disabled={context.disabled ? '' : undefined}\n {...indicatorProps}\n ref={forwardedRef}\n />\n </Presence>\n );\n }\n);\n\nRadioIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype InputProps = Radix.ComponentPropsWithoutRef<'input'>;\ninterface BubbleInputProps extends Omit<InputProps, 'checked'> {\n checked: boolean;\n control: HTMLElement | null;\n bubbles: boolean;\n}\n\nconst BubbleInput = (props: BubbleInputProps) => {\n const { control, checked, bubbles = true, ...inputProps } = props;\n const ref = React.useRef<HTMLInputElement>(null);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n\n // Bubble checked change to parents (e.g form change event)\n React.useEffect(() => {\n const input = ref.current!;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(inputProto, 'checked') as PropertyDescriptor;\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\n return (\n <input\n type=\"radio\"\n aria-hidden\n defaultChecked={checked}\n {...inputProps}\n tabIndex={-1}\n ref={ref}\n style={{\n ...props.style,\n ...controlSize,\n position: 'absolute',\n pointerEvents: 'none',\n opacity: 0,\n margin: 0,\n }}\n />\n );\n};\n\nfunction getState(checked: boolean) {\n return checked ? 'checked' : 'unchecked';\n}\n\nexport {\n createRadioScope,\n //\n Radio,\n RadioIndicator,\n};\nexport type { RadioProps };\n"],"names":["createRadioGroupScope","RadioGroup","RadioGroupItem","RadioGroupIndicator","Root","Item","Indicator","React","composeEventHandlers","useComposedRefs","createContextScope","Primitive","RovingFocusGroup","createRovingFocusGroupScope","useControllableState","useDirection","Radio","RadioIndicator","createRadioScope","ARROW_KEYS","RADIO_GROUP_NAME","createRadioGroupContet","useRovingFocusGroupScope","useRadioScope","RadioGroupProvider","useRadioGroupContext","forwardRef","props","forwardedRef","__scopeRadioGroup","name","defaultValue","value","valueProp","required","orientation","dir","loop","onValueChange","groupProps","rovingFocusGroupScope","direction","setValue","prop","defaultProp","onChange","ITEM_NAME","disabled","itemProps","context","radioScope","ref","useRef","composedRefs","checked","isArrowKeyPressedRef","useEffect","handleKeyDown","event","includes","key","current","handleKeyUp","document","addEventListener","removeEventListener","preventDefault","onFocus","click","INDICATOR_NAME","indicatorProps","useSize","usePrevious","Presence","RADIO_NAME","createRadioContext","RadioProvider","useRadioContext","__scopeRadio","onCheck","radioProps","button","setButton","useState","node","hasConsumerStoppedPropagationRef","isFormControl","Boolean","closest","getState","undefined","onClick","isPropagationStopped","stopPropagation","transform","forceMount","BubbleInput","control","bubbles","inputProps","prevChecked","controlSize","input","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","Event","call","dispatchEvent","style","position","pointerEvents","opacity","margin"],"version":3,"file":"index.js.map"}
@@ -1,7 +1,6 @@
1
1
  import $8Wolv$babelruntimehelpersesmextends from "@babel/runtime/helpers/esm/extends";
2
2
  import {forwardRef as $8Wolv$forwardRef, createElement as $8Wolv$createElement, useRef as $8Wolv$useRef, useEffect as $8Wolv$useEffect, useState as $8Wolv$useState} from "react";
3
3
  import {composeEventHandlers as $8Wolv$composeEventHandlers} from "@radix-ui/primitive";
4
- import {useLabelContext as $8Wolv$useLabelContext} from "@radix-ui/react-label";
5
4
  import {useComposedRefs as $8Wolv$useComposedRefs} from "@radix-ui/react-compose-refs";
6
5
  import {createContextScope as $8Wolv$createContextScope} from "@radix-ui/react-context";
7
6
  import {Primitive as $8Wolv$Primitive} from "@radix-ui/react-primitive";
@@ -29,8 +28,6 @@ import {Presence as $8Wolv$Presence} from "@radix-ui/react-presence";
29
28
 
30
29
 
31
30
 
32
-
33
-
34
31
 
35
32
 
36
33
  /* -------------------------------------------------------------------------------------------------
@@ -39,12 +36,10 @@ import {Presence as $8Wolv$Presence} from "@radix-ui/react-presence";
39
36
  const [$ce77a8961b41be9e$var$createRadioContext, $ce77a8961b41be9e$export$67d2296460f1b002] = $8Wolv$createContextScope($ce77a8961b41be9e$var$RADIO_NAME);
40
37
  const [$ce77a8961b41be9e$var$RadioProvider, $ce77a8961b41be9e$var$useRadioContext] = $ce77a8961b41be9e$var$createRadioContext($ce77a8961b41be9e$var$RADIO_NAME);
41
38
  const $ce77a8961b41be9e$export$d7b12c4107be0d61 = /*#__PURE__*/ $8Wolv$forwardRef((props, forwardedRef)=>{
42
- const { __scopeRadio: __scopeRadio , 'aria-labelledby': ariaLabelledby , name: name , checked: checked = false , required: required , disabled: disabled , value: value = 'on' , onCheck: onCheck , ...radioProps } = props;
39
+ const { __scopeRadio: __scopeRadio , name: name , checked: checked = false , required: required , disabled: disabled , value: value = 'on' , onCheck: onCheck , ...radioProps } = props;
43
40
  const [button, setButton] = $8Wolv$useState(null);
44
41
  const composedRefs = $8Wolv$useComposedRefs(forwardedRef, (node)=>setButton(node)
45
42
  );
46
- const labelId = $8Wolv$useLabelContext(button);
47
- const labelledBy = ariaLabelledby || labelId;
48
43
  const hasConsumerStoppedPropagationRef = $8Wolv$useRef(false); // We set this to true by default so that events bubble to forms without JS (SSR)
49
44
  const isFormControl = button ? Boolean(button.closest('form')) : true;
50
45
  return /*#__PURE__*/ $8Wolv$createElement($ce77a8961b41be9e$var$RadioProvider, {
@@ -55,7 +50,6 @@ const $ce77a8961b41be9e$export$d7b12c4107be0d61 = /*#__PURE__*/ $8Wolv$forwardRe
55
50
  type: "button",
56
51
  role: "radio",
57
52
  "aria-checked": checked,
58
- "aria-labelledby": labelledBy,
59
53
  "data-state": $ce77a8961b41be9e$var$getState(checked),
60
54
  "data-disabled": disabled ? '' : undefined,
61
55
  disabled: disabled,
@@ -168,9 +162,7 @@ const $f99a8c78507165f7$var$useRovingFocusGroupScope = $8Wolv$createRovingFocusG
168
162
  const $f99a8c78507165f7$var$useRadioScope = $ce77a8961b41be9e$export$67d2296460f1b002();
169
163
  const [$f99a8c78507165f7$var$RadioGroupProvider, $f99a8c78507165f7$var$useRadioGroupContext] = $f99a8c78507165f7$var$createRadioGroupContet($f99a8c78507165f7$var$RADIO_GROUP_NAME);
170
164
  const $f99a8c78507165f7$export$a98f0dcb43a68a25 = /*#__PURE__*/ $8Wolv$forwardRef((props, forwardedRef)=>{
171
- const { __scopeRadioGroup: __scopeRadioGroup , name: name , 'aria-labelledby': ariaLabelledby , defaultValue: defaultValue , value: valueProp , required: required = false , orientation: orientation , dir: dir , loop: loop = true , onValueChange: onValueChange , ...groupProps } = props;
172
- const labelId = $8Wolv$useLabelContext();
173
- const labelledBy = ariaLabelledby || labelId;
165
+ const { __scopeRadioGroup: __scopeRadioGroup , name: name , defaultValue: defaultValue , value: valueProp , required: required = false , orientation: orientation , dir: dir , loop: loop = true , onValueChange: onValueChange , ...groupProps } = props;
174
166
  const rovingFocusGroupScope = $f99a8c78507165f7$var$useRovingFocusGroupScope(__scopeRadioGroup);
175
167
  const direction = $8Wolv$useDirection(dir);
176
168
  const [value, setValue] = $8Wolv$useControllableState({
@@ -194,7 +186,6 @@ const $f99a8c78507165f7$export$a98f0dcb43a68a25 = /*#__PURE__*/ $8Wolv$forwardRe
194
186
  role: "radiogroup",
195
187
  "aria-required": required,
196
188
  "aria-orientation": orientation,
197
- "aria-labelledby": labelledBy,
198
189
  dir: direction
199
190
  }, groupProps, {
200
191
  ref: forwardedRef
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/react/radio-group/src/index.ts","packages/react/radio-group/src/RadioGroup.tsx","packages/react/radio-group/src/Radio.tsx"],"sourcesContent":["export {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n} from './RadioGroup';\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps } from './RadioGroup';\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { useLabelContext } from '@radix-ui/react-label';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { Primitive } 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';\nimport { Radio, RadioIndicator, createRadioScope } from './Radio';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\nconst ARROW_KEYS = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroup\n * -----------------------------------------------------------------------------------------------*/\nconst RADIO_GROUP_NAME = 'RadioGroup';\n\ntype ScopedProps<P> = P & { __scopeRadioGroup?: Scope };\nconst [createRadioGroupContet, createRadioGroupScope] = createContextScope(RADIO_GROUP_NAME, [\n createRovingFocusGroupScope,\n createRadioScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\nconst useRadioScope = createRadioScope();\n\ntype RadioGroupContextValue = {\n name?: string;\n required: boolean;\n value?: string;\n onValueChange(value: string): void;\n};\n\nconst [RadioGroupProvider, useRadioGroupContext] =\n createRadioGroupContet<RadioGroupContextValue>(RADIO_GROUP_NAME);\n\ntype RadioGroupElement = React.ElementRef<typeof Primitive.div>;\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface RadioGroupProps extends PrimitiveDivProps {\n name?: RadioGroupContextValue['name'];\n required?: Radix.ComponentPropsWithoutRef<typeof Radio>['required'];\n dir?: RovingFocusGroupProps['dir'];\n orientation?: RovingFocusGroupProps['orientation'];\n loop?: RovingFocusGroupProps['loop'];\n defaultValue?: string;\n value?: RadioGroupContextValue['value'];\n onValueChange?: RadioGroupContextValue['onValueChange'];\n}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>(\n (props: ScopedProps<RadioGroupProps>, forwardedRef) => {\n const {\n __scopeRadioGroup,\n name,\n 'aria-labelledby': ariaLabelledby,\n defaultValue,\n value: valueProp,\n required = false,\n orientation,\n dir,\n loop = true,\n onValueChange,\n ...groupProps\n } = props;\n const labelId = useLabelContext();\n const labelledBy = ariaLabelledby || labelId;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n return (\n <RadioGroupProvider\n scope={__scopeRadioGroup}\n name={name}\n required={required}\n value={value}\n onValueChange={setValue}\n >\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div\n role=\"radiogroup\"\n aria-required={required}\n aria-orientation={orientation}\n aria-labelledby={labelledBy}\n dir={direction}\n {...groupProps}\n ref={forwardedRef}\n />\n </RovingFocusGroup.Root>\n </RadioGroupProvider>\n );\n }\n);\n\nRadioGroup.displayName = RADIO_GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'RadioGroupItem';\n\ntype RadioGroupItemElement = React.ElementRef<typeof Radio>;\ntype RadioProps = Radix.ComponentPropsWithoutRef<typeof Radio>;\ninterface RadioGroupItemProps extends Omit<RadioProps, 'onCheck' | 'name'> {\n value: string;\n}\n\nconst RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(\n (props: ScopedProps<RadioGroupItemProps>, forwardedRef) => {\n const { __scopeRadioGroup, disabled, ...itemProps } = props;\n const context = useRadioGroupContext(ITEM_NAME, __scopeRadioGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const radioScope = useRadioScope(__scopeRadioGroup);\n const ref = React.useRef<React.ElementRef<typeof Radio>>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const checked = context.value === itemProps.value;\n const isArrowKeyPressedRef = React.useRef(false);\n\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\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\n return (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={checked}\n >\n <Radio\n disabled={disabled}\n required={context.required}\n checked={checked}\n {...radioScope}\n {...itemProps}\n name={context.name}\n ref={composedRefs}\n onCheck={() => context.onValueChange(itemProps.value)}\n onKeyDown={composeEventHandlers((event) => {\n // According to WAI ARIA, radio groups don't activate items on enter keypress\n if (event.key === 'Enter') event.preventDefault();\n })}\n onFocus={composeEventHandlers(itemProps.onFocus, () => {\n /**\n * Our `RovingFocusGroup` will focus the radio when navigating with arrow keys\n * and we need to \"check\" it in that case. We click it to \"check\" it (instead\n * of updating `context.value`) so that the radio change event fires.\n */\n if (isArrowKeyPressedRef.current) ref.current?.click();\n })}\n />\n </RovingFocusGroup.Item>\n );\n }\n);\n\nRadioGroupItem.displayName = ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioGroupIndicator';\n\ntype RadioGroupIndicatorElement = React.ElementRef<typeof RadioIndicator>;\ntype RadioIndicatorProps = Radix.ComponentPropsWithoutRef<typeof RadioIndicator>;\ninterface RadioGroupIndicatorProps extends RadioIndicatorProps {}\n\nconst RadioGroupIndicator = React.forwardRef<RadioGroupIndicatorElement, RadioGroupIndicatorProps>(\n (props: ScopedProps<RadioGroupIndicatorProps>, forwardedRef) => {\n const { __scopeRadioGroup, ...indicatorProps } = props;\n const radioScope = useRadioScope(__scopeRadioGroup);\n return <RadioIndicator {...radioScope} {...indicatorProps} ref={forwardedRef} />;\n }\n);\n\nRadioGroupIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\nconst Root = RadioGroup;\nconst Item = RadioGroupItem;\nconst Indicator = RadioGroupIndicator;\n\nexport {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n};\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps };\n","import * 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 { useLabelContext } from '@radix-ui/react-label';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Radio\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_NAME = 'Radio';\n\ntype ScopedProps<P> = P & { __scopeRadio?: Scope };\nconst [createRadioContext, createRadioScope] = createContextScope(RADIO_NAME);\n\ntype RadioContextValue = { checked: boolean; disabled?: boolean };\nconst [RadioProvider, useRadioContext] = createRadioContext<RadioContextValue>(RADIO_NAME);\n\ntype RadioElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface RadioProps extends PrimitiveButtonProps {\n checked?: boolean;\n required?: boolean;\n onCheck?(): void;\n}\n\nconst Radio = React.forwardRef<RadioElement, RadioProps>(\n (props: ScopedProps<RadioProps>, forwardedRef) => {\n const {\n __scopeRadio,\n 'aria-labelledby': ariaLabelledby,\n name,\n checked = false,\n required,\n disabled,\n value = 'on',\n onCheck,\n ...radioProps\n } = props;\n const [button, setButton] = React.useState<HTMLButtonElement | null>(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const labelId = useLabelContext(button);\n const labelledBy = ariaLabelledby || labelId;\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n // We set this to true by default so that events bubble to forms without JS (SSR)\n const isFormControl = button ? Boolean(button.closest('form')) : true;\n\n return (\n <RadioProvider scope={__scopeRadio} checked={checked} disabled={disabled}>\n <Primitive.button\n type=\"button\"\n role=\"radio\"\n aria-checked={checked}\n aria-labelledby={labelledBy}\n data-state={getState(checked)}\n data-disabled={disabled ? '' : undefined}\n disabled={disabled}\n value={value}\n {...radioProps}\n ref={composedRefs}\n onClick={composeEventHandlers(props.onClick, (event) => {\n // radios cannot be unchecked so we only communicate a checked state\n if (!checked) onCheck?.();\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n // if radio is in a form, stop propagation from the button so that we only propagate\n // one click event (from the input). We propagate changes from an input so that native\n // form validation works and form events reflect radio updates.\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })}\n />\n {isFormControl && (\n <BubbleInput\n control={button}\n bubbles={!hasConsumerStoppedPropagationRef.current}\n name={name}\n value={value}\n checked={checked}\n required={required}\n disabled={disabled}\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 style={{ transform: 'translateX(-100%)' }}\n />\n )}\n </RadioProvider>\n );\n }\n);\n\nRadio.displayName = RADIO_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioIndicator';\n\ntype RadioIndicatorElement = React.ElementRef<typeof Primitive.span>;\ntype PrimitiveSpanProps = Radix.ComponentPropsWithoutRef<typeof Primitive.span>;\nexport interface RadioIndicatorProps extends PrimitiveSpanProps {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst RadioIndicator = React.forwardRef<RadioIndicatorElement, RadioIndicatorProps>(\n (props: ScopedProps<RadioIndicatorProps>, forwardedRef) => {\n const { __scopeRadio, forceMount, ...indicatorProps } = props;\n const context = useRadioContext(INDICATOR_NAME, __scopeRadio);\n return (\n <Presence present={forceMount || context.checked}>\n <Primitive.span\n data-state={getState(context.checked)}\n data-disabled={context.disabled ? '' : undefined}\n {...indicatorProps}\n ref={forwardedRef}\n />\n </Presence>\n );\n }\n);\n\nRadioIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype InputProps = Radix.ComponentPropsWithoutRef<'input'>;\ninterface BubbleInputProps extends Omit<InputProps, 'checked'> {\n checked: boolean;\n control: HTMLElement | null;\n bubbles: boolean;\n}\n\nconst BubbleInput = (props: BubbleInputProps) => {\n const { control, checked, bubbles = true, ...inputProps } = props;\n const ref = React.useRef<HTMLInputElement>(null);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n\n // Bubble checked change to parents (e.g form change event)\n React.useEffect(() => {\n const input = ref.current!;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(inputProto, 'checked') as PropertyDescriptor;\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\n return (\n <input\n type=\"radio\"\n aria-hidden\n defaultChecked={checked}\n {...inputProps}\n tabIndex={-1}\n ref={ref}\n style={{\n ...props.style,\n ...controlSize,\n position: 'absolute',\n pointerEvents: 'none',\n opacity: 0,\n margin: 0,\n }}\n />\n );\n};\n\nfunction getState(checked: boolean) {\n return checked ? 'checked' : 'unchecked';\n}\n\nexport {\n createRadioScope,\n //\n Radio,\n RadioIndicator,\n};\nexport type { RadioProps };\n"],"names":["createRadioGroupScope","RadioGroup","RadioGroupItem","RadioGroupIndicator","Root","Item","Indicator","React","composeEventHandlers","useLabelContext","useComposedRefs","createContextScope","Primitive","RovingFocusGroup","createRovingFocusGroupScope","useControllableState","useDirection","Radio","RadioIndicator","createRadioScope","ARROW_KEYS","RADIO_GROUP_NAME","createRadioGroupContet","useRovingFocusGroupScope","useRadioScope","RadioGroupProvider","useRadioGroupContext","forwardRef","props","forwardedRef","__scopeRadioGroup","name","ariaLabelledby","defaultValue","value","valueProp","required","orientation","dir","loop","onValueChange","groupProps","labelId","labelledBy","rovingFocusGroupScope","direction","setValue","prop","defaultProp","onChange","ITEM_NAME","disabled","itemProps","context","radioScope","ref","useRef","composedRefs","checked","isArrowKeyPressedRef","useEffect","handleKeyDown","event","includes","key","current","handleKeyUp","document","addEventListener","removeEventListener","preventDefault","onFocus","click","INDICATOR_NAME","indicatorProps","useSize","usePrevious","Presence","RADIO_NAME","createRadioContext","RadioProvider","useRadioContext","__scopeRadio","onCheck","radioProps","button","setButton","useState","node","hasConsumerStoppedPropagationRef","isFormControl","Boolean","closest","getState","undefined","onClick","isPropagationStopped","stopPropagation","transform","forceMount","BubbleInput","control","bubbles","inputProps","prevChecked","controlSize","input","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","Event","call","dispatchEvent","style","position","pointerEvents","opacity","margin"],"version":3,"file":"index.module.js.map"}
1
+ {"mappings":"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","sources":["packages/react/radio-group/src/index.ts","packages/react/radio-group/src/RadioGroup.tsx","packages/react/radio-group/src/Radio.tsx"],"sourcesContent":["export {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n} from './RadioGroup';\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps } from './RadioGroup';\n","import * 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 { Primitive } 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';\nimport { Radio, RadioIndicator, createRadioScope } from './Radio';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\nconst ARROW_KEYS = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroup\n * -----------------------------------------------------------------------------------------------*/\nconst RADIO_GROUP_NAME = 'RadioGroup';\n\ntype ScopedProps<P> = P & { __scopeRadioGroup?: Scope };\nconst [createRadioGroupContet, createRadioGroupScope] = createContextScope(RADIO_GROUP_NAME, [\n createRovingFocusGroupScope,\n createRadioScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\nconst useRadioScope = createRadioScope();\n\ntype RadioGroupContextValue = {\n name?: string;\n required: boolean;\n value?: string;\n onValueChange(value: string): void;\n};\n\nconst [RadioGroupProvider, useRadioGroupContext] =\n createRadioGroupContet<RadioGroupContextValue>(RADIO_GROUP_NAME);\n\ntype RadioGroupElement = React.ElementRef<typeof Primitive.div>;\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface RadioGroupProps extends PrimitiveDivProps {\n name?: RadioGroupContextValue['name'];\n required?: Radix.ComponentPropsWithoutRef<typeof Radio>['required'];\n dir?: RovingFocusGroupProps['dir'];\n orientation?: RovingFocusGroupProps['orientation'];\n loop?: RovingFocusGroupProps['loop'];\n defaultValue?: string;\n value?: RadioGroupContextValue['value'];\n onValueChange?: RadioGroupContextValue['onValueChange'];\n}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>(\n (props: ScopedProps<RadioGroupProps>, forwardedRef) => {\n const {\n __scopeRadioGroup,\n name,\n defaultValue,\n value: valueProp,\n required = 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,\n onChange: onValueChange,\n });\n\n return (\n <RadioGroupProvider\n scope={__scopeRadioGroup}\n name={name}\n required={required}\n value={value}\n onValueChange={setValue}\n >\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div\n role=\"radiogroup\"\n aria-required={required}\n aria-orientation={orientation}\n dir={direction}\n {...groupProps}\n ref={forwardedRef}\n />\n </RovingFocusGroup.Root>\n </RadioGroupProvider>\n );\n }\n);\n\nRadioGroup.displayName = RADIO_GROUP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'RadioGroupItem';\n\ntype RadioGroupItemElement = React.ElementRef<typeof Radio>;\ntype RadioProps = Radix.ComponentPropsWithoutRef<typeof Radio>;\ninterface RadioGroupItemProps extends Omit<RadioProps, 'onCheck' | 'name'> {\n value: string;\n}\n\nconst RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(\n (props: ScopedProps<RadioGroupItemProps>, forwardedRef) => {\n const { __scopeRadioGroup, disabled, ...itemProps } = props;\n const context = useRadioGroupContext(ITEM_NAME, __scopeRadioGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeRadioGroup);\n const radioScope = useRadioScope(__scopeRadioGroup);\n const ref = React.useRef<React.ElementRef<typeof Radio>>(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const checked = context.value === itemProps.value;\n const isArrowKeyPressedRef = React.useRef(false);\n\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\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\n return (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={checked}\n >\n <Radio\n disabled={disabled}\n required={context.required}\n checked={checked}\n {...radioScope}\n {...itemProps}\n name={context.name}\n ref={composedRefs}\n onCheck={() => context.onValueChange(itemProps.value)}\n onKeyDown={composeEventHandlers((event) => {\n // According to WAI ARIA, radio groups don't activate items on enter keypress\n if (event.key === 'Enter') event.preventDefault();\n })}\n onFocus={composeEventHandlers(itemProps.onFocus, () => {\n /**\n * Our `RovingFocusGroup` will focus the radio when navigating with arrow keys\n * and we need to \"check\" it in that case. We click it to \"check\" it (instead\n * of updating `context.value`) so that the radio change event fires.\n */\n if (isArrowKeyPressedRef.current) ref.current?.click();\n })}\n />\n </RovingFocusGroup.Item>\n );\n }\n);\n\nRadioGroupItem.displayName = ITEM_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioGroupIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioGroupIndicator';\n\ntype RadioGroupIndicatorElement = React.ElementRef<typeof RadioIndicator>;\ntype RadioIndicatorProps = Radix.ComponentPropsWithoutRef<typeof RadioIndicator>;\ninterface RadioGroupIndicatorProps extends RadioIndicatorProps {}\n\nconst RadioGroupIndicator = React.forwardRef<RadioGroupIndicatorElement, RadioGroupIndicatorProps>(\n (props: ScopedProps<RadioGroupIndicatorProps>, forwardedRef) => {\n const { __scopeRadioGroup, ...indicatorProps } = props;\n const radioScope = useRadioScope(__scopeRadioGroup);\n return <RadioIndicator {...radioScope} {...indicatorProps} ref={forwardedRef} />;\n }\n);\n\nRadioGroupIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\nconst Root = RadioGroup;\nconst Item = RadioGroupItem;\nconst Indicator = RadioGroupIndicator;\n\nexport {\n createRadioGroupScope,\n //\n RadioGroup,\n RadioGroupItem,\n RadioGroupIndicator,\n //\n Root,\n Item,\n Indicator,\n};\nexport type { RadioGroupProps, RadioGroupItemProps, RadioGroupIndicatorProps };\n","import * 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';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Radio\n * -----------------------------------------------------------------------------------------------*/\n\nconst RADIO_NAME = 'Radio';\n\ntype ScopedProps<P> = P & { __scopeRadio?: Scope };\nconst [createRadioContext, createRadioScope] = createContextScope(RADIO_NAME);\n\ntype RadioContextValue = { checked: boolean; disabled?: boolean };\nconst [RadioProvider, useRadioContext] = createRadioContext<RadioContextValue>(RADIO_NAME);\n\ntype RadioElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface RadioProps extends PrimitiveButtonProps {\n checked?: boolean;\n required?: boolean;\n onCheck?(): void;\n}\n\nconst Radio = React.forwardRef<RadioElement, RadioProps>(\n (props: ScopedProps<RadioProps>, forwardedRef) => {\n const {\n __scopeRadio,\n name,\n checked = false,\n required,\n disabled,\n value = 'on',\n onCheck,\n ...radioProps\n } = props;\n const [button, setButton] = React.useState<HTMLButtonElement | null>(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n const hasConsumerStoppedPropagationRef = React.useRef(false);\n // We set this to true by default so that events bubble to forms without JS (SSR)\n const isFormControl = button ? Boolean(button.closest('form')) : true;\n\n return (\n <RadioProvider scope={__scopeRadio} checked={checked} disabled={disabled}>\n <Primitive.button\n type=\"button\"\n role=\"radio\"\n aria-checked={checked}\n data-state={getState(checked)}\n data-disabled={disabled ? '' : undefined}\n disabled={disabled}\n value={value}\n {...radioProps}\n ref={composedRefs}\n onClick={composeEventHandlers(props.onClick, (event) => {\n // radios cannot be unchecked so we only communicate a checked state\n if (!checked) onCheck?.();\n if (isFormControl) {\n hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n // if radio is in a form, stop propagation from the button so that we only propagate\n // one click event (from the input). We propagate changes from an input so that native\n // form validation works and form events reflect radio updates.\n if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n }\n })}\n />\n {isFormControl && (\n <BubbleInput\n control={button}\n bubbles={!hasConsumerStoppedPropagationRef.current}\n name={name}\n value={value}\n checked={checked}\n required={required}\n disabled={disabled}\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 style={{ transform: 'translateX(-100%)' }}\n />\n )}\n </RadioProvider>\n );\n }\n);\n\nRadio.displayName = RADIO_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * RadioIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'RadioIndicator';\n\ntype RadioIndicatorElement = React.ElementRef<typeof Primitive.span>;\ntype PrimitiveSpanProps = Radix.ComponentPropsWithoutRef<typeof Primitive.span>;\nexport interface RadioIndicatorProps extends PrimitiveSpanProps {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with React animation libraries.\n */\n forceMount?: true;\n}\n\nconst RadioIndicator = React.forwardRef<RadioIndicatorElement, RadioIndicatorProps>(\n (props: ScopedProps<RadioIndicatorProps>, forwardedRef) => {\n const { __scopeRadio, forceMount, ...indicatorProps } = props;\n const context = useRadioContext(INDICATOR_NAME, __scopeRadio);\n return (\n <Presence present={forceMount || context.checked}>\n <Primitive.span\n data-state={getState(context.checked)}\n data-disabled={context.disabled ? '' : undefined}\n {...indicatorProps}\n ref={forwardedRef}\n />\n </Presence>\n );\n }\n);\n\nRadioIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype InputProps = Radix.ComponentPropsWithoutRef<'input'>;\ninterface BubbleInputProps extends Omit<InputProps, 'checked'> {\n checked: boolean;\n control: HTMLElement | null;\n bubbles: boolean;\n}\n\nconst BubbleInput = (props: BubbleInputProps) => {\n const { control, checked, bubbles = true, ...inputProps } = props;\n const ref = React.useRef<HTMLInputElement>(null);\n const prevChecked = usePrevious(checked);\n const controlSize = useSize(control);\n\n // Bubble checked change to parents (e.g form change event)\n React.useEffect(() => {\n const input = ref.current!;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(inputProto, 'checked') as PropertyDescriptor;\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\n return (\n <input\n type=\"radio\"\n aria-hidden\n defaultChecked={checked}\n {...inputProps}\n tabIndex={-1}\n ref={ref}\n style={{\n ...props.style,\n ...controlSize,\n position: 'absolute',\n pointerEvents: 'none',\n opacity: 0,\n margin: 0,\n }}\n />\n );\n};\n\nfunction getState(checked: boolean) {\n return checked ? 'checked' : 'unchecked';\n}\n\nexport {\n createRadioScope,\n //\n Radio,\n RadioIndicator,\n};\nexport type { RadioProps };\n"],"names":["createRadioGroupScope","RadioGroup","RadioGroupItem","RadioGroupIndicator","Root","Item","Indicator","React","composeEventHandlers","useComposedRefs","createContextScope","Primitive","RovingFocusGroup","createRovingFocusGroupScope","useControllableState","useDirection","Radio","RadioIndicator","createRadioScope","ARROW_KEYS","RADIO_GROUP_NAME","createRadioGroupContet","useRovingFocusGroupScope","useRadioScope","RadioGroupProvider","useRadioGroupContext","forwardRef","props","forwardedRef","__scopeRadioGroup","name","defaultValue","value","valueProp","required","orientation","dir","loop","onValueChange","groupProps","rovingFocusGroupScope","direction","setValue","prop","defaultProp","onChange","ITEM_NAME","disabled","itemProps","context","radioScope","ref","useRef","composedRefs","checked","isArrowKeyPressedRef","useEffect","handleKeyDown","event","includes","key","current","handleKeyUp","document","addEventListener","removeEventListener","preventDefault","onFocus","click","INDICATOR_NAME","indicatorProps","useSize","usePrevious","Presence","RADIO_NAME","createRadioContext","RadioProvider","useRadioContext","__scopeRadio","onCheck","radioProps","button","setButton","useState","node","hasConsumerStoppedPropagationRef","isFormControl","Boolean","closest","getState","undefined","onClick","isPropagationStopped","stopPropagation","transform","forceMount","BubbleInput","control","bubbles","inputProps","prevChecked","controlSize","input","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","Event","call","dispatchEvent","style","position","pointerEvents","opacity","margin"],"version":3,"file":"index.module.js.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@radix-ui/react-radio-group",
3
- "version": "1.0.0",
3
+ "version": "1.0.1-rc.2",
4
4
  "license": "MIT",
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/index.js",
@@ -21,10 +21,9 @@
21
21
  "@radix-ui/react-compose-refs": "1.0.0",
22
22
  "@radix-ui/react-context": "1.0.0",
23
23
  "@radix-ui/react-direction": "1.0.0",
24
- "@radix-ui/react-label": "1.0.0",
25
24
  "@radix-ui/react-presence": "1.0.0",
26
- "@radix-ui/react-primitive": "1.0.0",
27
- "@radix-ui/react-roving-focus": "1.0.0",
25
+ "@radix-ui/react-primitive": "1.0.1-rc.2",
26
+ "@radix-ui/react-roving-focus": "1.0.1-rc.2",
28
27
  "@radix-ui/react-use-controllable-state": "1.0.0",
29
28
  "@radix-ui/react-use-previous": "1.0.0",
30
29
  "@radix-ui/react-use-size": "1.0.0"
@@ -40,5 +39,6 @@
40
39
  },
41
40
  "bugs": {
42
41
  "url": "https://github.com/radix-ui/primitives/issues"
43
- }
42
+ },
43
+ "stableVersion": "1.0.0"
44
44
  }