@tamagui/radio-group 1.61.2 → 1.62.0

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.
@@ -7,22 +7,14 @@ import {
7
7
  withStaticProperties
8
8
  } from "@tamagui/core";
9
9
  import { createContextScope } from "@tamagui/create-context";
10
- import { registerFocusable } from "@tamagui/focusable";
10
+ import "@tamagui/focusable";
11
11
  import { getSize } from "@tamagui/get-token";
12
12
  import { useLabelContext } from "@tamagui/label";
13
13
  import { ThemeableStack } from "@tamagui/stacks";
14
14
  import { useControllableState } from "@tamagui/use-controllable-state";
15
15
  import { usePrevious } from "@tamagui/use-previous";
16
16
  import * as React from "react";
17
- const RADIO_GROUP_NAME = "RadioGroup";
18
- const ARROW_KEYS = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"];
19
- const [createRadioGroupContext, createRadioGroupScope] = createContextScope(RADIO_GROUP_NAME);
20
- const [RadioGroupProvider, useRadioGroupContext] = createRadioGroupContext(RADIO_GROUP_NAME);
21
- const getState = (checked) => {
22
- return checked ? "checked" : "unchecked";
23
- };
24
- const RADIO_GROUP_INDICATOR_NAME = "RadioGroupIndicator";
25
- const RadioIndicatorFrame = styled(ThemeableStack, {
17
+ const RADIO_GROUP_NAME = "RadioGroup", ARROW_KEYS = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"], [createRadioGroupContext, createRadioGroupScope] = createContextScope(RADIO_GROUP_NAME), [RadioGroupProvider, useRadioGroupContext] = createRadioGroupContext(RADIO_GROUP_NAME), getState = (checked) => checked ? "checked" : "unchecked", RADIO_GROUP_INDICATOR_NAME = "RadioGroupIndicator", RadioIndicatorFrame = styled(ThemeableStack, {
26
18
  name: RADIO_GROUP_INDICATOR_NAME,
27
19
  variants: {
28
20
  unstyled: {
@@ -31,38 +23,31 @@ const RadioIndicatorFrame = styled(ThemeableStack, {
31
23
  height: "33%",
32
24
  borderRadius: 1e3,
33
25
  backgroundColor: "$color",
34
- pressTheme: true
26
+ pressTheme: !0
35
27
  }
36
28
  }
37
29
  },
38
30
  defaultVariants: {
39
- unstyled: false
31
+ unstyled: !1
40
32
  }
41
- });
42
- const RadioIndicator = RadioIndicatorFrame.extractable(
33
+ }), RadioIndicator = RadioIndicatorFrame.extractable(
43
34
  React.forwardRef(
44
35
  (props, forwardedRef) => {
45
- const { __scopeRadioGroupItem, forceMount, disabled, ...indicatorProps } = props;
46
- const { checked } = useRadioGroupItemContext(
36
+ const { __scopeRadioGroupItem, forceMount, disabled, ...indicatorProps } = props, { checked } = useRadioGroupItemContext(
47
37
  RADIO_GROUP_INDICATOR_NAME,
48
38
  __scopeRadioGroupItem
49
39
  );
50
- if (forceMount || checked) {
51
- return <RadioIndicatorFrame
52
- data-state={getState(checked)}
53
- data-disabled={disabled ? "" : void 0}
54
- {...indicatorProps}
55
- ref={forwardedRef}
56
- />;
57
- }
58
- return null;
40
+ return forceMount || checked ? <RadioIndicatorFrame
41
+ data-state={getState(checked)}
42
+ data-disabled={disabled ? "" : void 0}
43
+ {...indicatorProps}
44
+ ref={forwardedRef}
45
+ /> : null;
59
46
  }
60
47
  )
61
48
  );
62
49
  RadioIndicator.displayName = RADIO_GROUP_INDICATOR_NAME;
63
- const RADIO_GROUP_ITEM_NAME = "RadioGroupItem";
64
- const [RadioGroupItemProvider, useRadioGroupItemContext] = createRadioGroupContext(RADIO_GROUP_NAME);
65
- const RadioGroupItemFrame = styled(ThemeableStack, {
50
+ const RADIO_GROUP_ITEM_NAME = "RadioGroupItem", [RadioGroupItemProvider, useRadioGroupItemContext] = createRadioGroupContext(RADIO_GROUP_NAME), RadioGroupItemFrame = styled(ThemeableStack, {
66
51
  name: RADIO_GROUP_ITEM_NAME,
67
52
  tag: "button",
68
53
  variants: {
@@ -93,7 +78,7 @@ const RadioGroupItemFrame = styled(ThemeableStack, {
93
78
  size: {
94
79
  "...size": (value, { props }) => {
95
80
  const size = Math.floor(
96
- getVariableValue(getSize(value)) * (props["scaleSize"] ?? 0.5)
81
+ getVariableValue(getSize(value)) * (props.scaleSize ?? 0.5)
97
82
  );
98
83
  return {
99
84
  width: size,
@@ -103,10 +88,9 @@ const RadioGroupItemFrame = styled(ThemeableStack, {
103
88
  }
104
89
  },
105
90
  defaultVariants: {
106
- unstyled: false
91
+ unstyled: !1
107
92
  }
108
- });
109
- const RadioGroupItem = RadioGroupItemFrame.extractable(
93
+ }), RadioGroupItem = RadioGroupItemFrame.extractable(
110
94
  React.forwardRef(
111
95
  (props, forwardedRef) => {
112
96
  const {
@@ -115,8 +99,7 @@ const RadioGroupItem = RadioGroupItemFrame.extractable(
115
99
  labelledBy: ariaLabelledby,
116
100
  disabled: itemDisabled,
117
101
  ...itemProps
118
- } = props;
119
- const {
102
+ } = props, {
120
103
  value: groupValue,
121
104
  disabled,
122
105
  required,
@@ -124,47 +107,19 @@ const RadioGroupItem = RadioGroupItemFrame.extractable(
124
107
  name,
125
108
  native,
126
109
  accentColor
127
- } = useRadioGroupContext(RADIO_GROUP_ITEM_NAME, __scopeRadioGroup);
128
- const [button, setButton] = React.useState(null);
129
- const hasConsumerStoppedPropagationRef = React.useRef(false);
130
- const ref = React.useRef(null);
131
- const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node), ref);
132
- const isArrowKeyPressedRef = React.useRef(false);
133
- const isFormControl = isWeb ? button ? Boolean(button.closest("form")) : true : false;
134
- const checked = groupValue === value;
135
- const labelId = useLabelContext(button);
136
- const labelledBy = ariaLabelledby || labelId;
110
+ } = useRadioGroupContext(RADIO_GROUP_ITEM_NAME, __scopeRadioGroup), [button, setButton] = React.useState(null), hasConsumerStoppedPropagationRef = React.useRef(!1), ref = React.useRef(null), composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node), ref), isArrowKeyPressedRef = React.useRef(!1), isFormControl = isWeb ? button ? !!button.closest("form") : !0 : !1, checked = groupValue === value, labelId = useLabelContext(button), labelledBy = ariaLabelledby || labelId;
137
111
  React.useEffect(() => {
138
112
  if (isWeb) {
139
113
  const handleKeyDown = (event) => {
140
- if (ARROW_KEYS.includes(event.key)) {
141
- isArrowKeyPressedRef.current = true;
142
- }
143
- };
144
- const handleKeyUp = () => {
145
- isArrowKeyPressedRef.current = false;
114
+ ARROW_KEYS.includes(event.key) && (isArrowKeyPressedRef.current = !0);
115
+ }, handleKeyUp = () => {
116
+ isArrowKeyPressedRef.current = !1;
146
117
  };
147
- document.addEventListener("keydown", handleKeyDown);
148
- document.addEventListener("keyup", handleKeyUp);
149
- return () => {
150
- document.removeEventListener("keydown", handleKeyDown);
151
- document.removeEventListener("keyup", handleKeyUp);
118
+ return document.addEventListener("keydown", handleKeyDown), document.addEventListener("keyup", handleKeyUp), () => {
119
+ document.removeEventListener("keydown", handleKeyDown), document.removeEventListener("keyup", handleKeyUp);
152
120
  };
153
121
  }
154
122
  }, []);
155
- if (process.env.TAMAGUI_TARGET === "native") {
156
- React.useEffect(() => {
157
- if (!props.id)
158
- return;
159
- return registerFocusable(props.id, {
160
- focusAndSelect: () => {
161
- onChange?.(value);
162
- },
163
- focus: () => {
164
- }
165
- });
166
- }, [props.id, value]);
167
- }
168
123
  const isDisabled = disabled || itemDisabled;
169
124
  return <RadioGroupItemProvider checked={checked} scope={__scopeRadioGroup}>{isWeb && native ? <BubbleInput
170
125
  control={button}
@@ -192,26 +147,17 @@ const RadioGroupItem = RadioGroupItemFrame.extractable(
192
147
  }}
193
148
  {...itemProps}
194
149
  onPress={composeEventHandlers(props.onPress, (event) => {
195
- if (!checked) {
196
- onChange?.(value);
197
- }
198
- if (isFormControl) {
199
- hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();
200
- if (!hasConsumerStoppedPropagationRef.current)
201
- event.stopPropagation();
202
- }
150
+ checked || onChange?.(value), isFormControl && (hasConsumerStoppedPropagationRef.current = event.isPropagationStopped(), hasConsumerStoppedPropagationRef.current || event.stopPropagation());
203
151
  })}
204
152
  {...isWeb && {
205
153
  onKeyDown: composeEventHandlers(
206
154
  props.onKeyDown,
207
155
  (event) => {
208
- if (event.key === "Enter")
209
- event.preventDefault();
156
+ event.key === "Enter" && event.preventDefault();
210
157
  }
211
158
  ),
212
159
  onFocus: composeEventHandlers(itemProps.onFocus, () => {
213
- if (isArrowKeyPressedRef.current)
214
- ref.current?.click();
160
+ isArrowKeyPressedRef.current && ref.current?.click();
215
161
  })
216
162
  }}
217
163
  />
@@ -228,26 +174,18 @@ const RadioGroupItem = RadioGroupItemFrame.extractable(
228
174
  </>}</RadioGroupItemProvider>;
229
175
  }
230
176
  )
231
- );
232
- const BubbleInput = (props) => {
233
- const { checked, bubbles = true, control, isHidden, accentColor, ...inputProps } = props;
234
- const ref = React.useRef(null);
235
- const prevChecked = usePrevious(checked);
236
- React.useEffect(() => {
237
- const input = ref.current;
238
- const inputProto = window.HTMLInputElement.prototype;
239
- const descriptor = Object.getOwnPropertyDescriptor(
177
+ ), BubbleInput = (props) => {
178
+ const { checked, bubbles = !0, control, isHidden, accentColor, ...inputProps } = props, ref = React.useRef(null), prevChecked = usePrevious(checked);
179
+ return React.useEffect(() => {
180
+ const input = ref.current, inputProto = window.HTMLInputElement.prototype, setChecked = Object.getOwnPropertyDescriptor(
240
181
  inputProto,
241
182
  "checked"
242
- );
243
- const setChecked = descriptor.set;
183
+ ).set;
244
184
  if (prevChecked !== checked && setChecked) {
245
185
  const event = new Event("click", { bubbles });
246
- setChecked.call(input, checked);
247
- input.dispatchEvent(event);
186
+ setChecked.call(input, checked), input.dispatchEvent(event);
248
187
  }
249
- }, [prevChecked, checked, bubbles]);
250
- return <input
188
+ }, [prevChecked, checked, bubbles]), <input
251
189
  type="radio"
252
190
  defaultChecked={checked}
253
191
  {...inputProps}
@@ -268,8 +206,7 @@ const BubbleInput = (props) => {
268
206
  ...props.style
269
207
  }}
270
208
  />;
271
- };
272
- const RadioGroupFrame = styled(ThemeableStack, {
209
+ }, RadioGroupFrame = styled(ThemeableStack, {
273
210
  name: RADIO_GROUP_NAME,
274
211
  variants: {
275
212
  orientation: {
@@ -283,8 +220,7 @@ const RadioGroupFrame = styled(ThemeableStack, {
283
220
  }
284
221
  }
285
222
  }
286
- });
287
- const RadioGroup = withStaticProperties(
223
+ }), RadioGroup = withStaticProperties(
288
224
  RadioGroupFrame.extractable(
289
225
  React.forwardRef(
290
226
  (props, forwardedRef) => {
@@ -293,15 +229,14 @@ const RadioGroup = withStaticProperties(
293
229
  value: valueProp,
294
230
  defaultValue,
295
231
  onValueChange,
296
- disabled = false,
297
- required = false,
232
+ disabled = !1,
233
+ required = !1,
298
234
  name,
299
235
  orientation,
300
236
  native,
301
237
  accentColor,
302
238
  ...radioGroupProps
303
- } = props;
304
- const [value, setValue] = useControllableState({
239
+ } = props, [value, setValue] = useControllableState({
305
240
  prop: valueProp,
306
241
  defaultProp: defaultValue,
307
242
  onChange: onValueChange
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/RadioGroup.tsx"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,284 @@
1
+ import {
2
+ composeEventHandlers,
3
+ getVariableValue,
4
+ isWeb,
5
+ styled,
6
+ useComposedRefs,
7
+ withStaticProperties
8
+ } from "@tamagui/core";
9
+ import { createContextScope } from "@tamagui/create-context";
10
+ import { registerFocusable } from "@tamagui/focusable";
11
+ import { getSize } from "@tamagui/get-token";
12
+ import { useLabelContext } from "@tamagui/label";
13
+ import { ThemeableStack } from "@tamagui/stacks";
14
+ import { useControllableState } from "@tamagui/use-controllable-state";
15
+ import { usePrevious } from "@tamagui/use-previous";
16
+ import * as React from "react";
17
+ const RADIO_GROUP_NAME = "RadioGroup", ARROW_KEYS = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"], [createRadioGroupContext, createRadioGroupScope] = createContextScope(RADIO_GROUP_NAME), [RadioGroupProvider, useRadioGroupContext] = createRadioGroupContext(RADIO_GROUP_NAME), getState = (checked) => checked ? "checked" : "unchecked", RADIO_GROUP_INDICATOR_NAME = "RadioGroupIndicator", RadioIndicatorFrame = styled(ThemeableStack, {
18
+ name: RADIO_GROUP_INDICATOR_NAME,
19
+ variants: {
20
+ unstyled: {
21
+ false: {
22
+ width: "33%",
23
+ height: "33%",
24
+ borderRadius: 1e3,
25
+ backgroundColor: "$color",
26
+ pressTheme: !0
27
+ }
28
+ }
29
+ },
30
+ defaultVariants: {
31
+ unstyled: !1
32
+ }
33
+ }), RadioIndicator = RadioIndicatorFrame.extractable(
34
+ React.forwardRef(
35
+ (props, forwardedRef) => {
36
+ const { __scopeRadioGroupItem, forceMount, disabled, ...indicatorProps } = props, { checked } = useRadioGroupItemContext(
37
+ RADIO_GROUP_INDICATOR_NAME,
38
+ __scopeRadioGroupItem
39
+ );
40
+ return forceMount || checked ? <RadioIndicatorFrame
41
+ data-state={getState(checked)}
42
+ data-disabled={disabled ? "" : void 0}
43
+ {...indicatorProps}
44
+ ref={forwardedRef}
45
+ /> : null;
46
+ }
47
+ )
48
+ );
49
+ RadioIndicator.displayName = RADIO_GROUP_INDICATOR_NAME;
50
+ const RADIO_GROUP_ITEM_NAME = "RadioGroupItem", [RadioGroupItemProvider, useRadioGroupItemContext] = createRadioGroupContext(RADIO_GROUP_NAME), RadioGroupItemFrame = styled(ThemeableStack, {
51
+ name: RADIO_GROUP_ITEM_NAME,
52
+ tag: "button",
53
+ variants: {
54
+ unstyled: {
55
+ false: {
56
+ size: "$true",
57
+ borderRadius: 1e3,
58
+ backgroundColor: "$background",
59
+ alignItems: "center",
60
+ justifyContent: "center",
61
+ borderWidth: 1,
62
+ borderColor: "$borderColor",
63
+ padding: 0,
64
+ hoverStyle: {
65
+ borderColor: "$borderColorHover",
66
+ backgroundColor: "$backgroundHover"
67
+ },
68
+ focusStyle: {
69
+ borderColor: "$borderColorHover",
70
+ backgroundColor: "$backgroundHover"
71
+ },
72
+ pressStyle: {
73
+ borderColor: "$borderColorFocus",
74
+ backgroundColor: "$backgroundFocus"
75
+ }
76
+ }
77
+ },
78
+ size: {
79
+ "...size": (value, { props }) => {
80
+ const size = Math.floor(
81
+ getVariableValue(getSize(value)) * (props.scaleSize ?? 0.5)
82
+ );
83
+ return {
84
+ width: size,
85
+ height: size
86
+ };
87
+ }
88
+ }
89
+ },
90
+ defaultVariants: {
91
+ unstyled: !1
92
+ }
93
+ }), RadioGroupItem = RadioGroupItemFrame.extractable(
94
+ React.forwardRef(
95
+ (props, forwardedRef) => {
96
+ const {
97
+ __scopeRadioGroup,
98
+ value,
99
+ labelledBy: ariaLabelledby,
100
+ disabled: itemDisabled,
101
+ ...itemProps
102
+ } = props, {
103
+ value: groupValue,
104
+ disabled,
105
+ required,
106
+ onChange,
107
+ name,
108
+ native,
109
+ accentColor
110
+ } = useRadioGroupContext(RADIO_GROUP_ITEM_NAME, __scopeRadioGroup), [button, setButton] = React.useState(null), hasConsumerStoppedPropagationRef = React.useRef(!1), ref = React.useRef(null), composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node), ref), isArrowKeyPressedRef = React.useRef(!1), isFormControl = isWeb ? button ? !!button.closest("form") : !0 : !1, checked = groupValue === value, labelId = useLabelContext(button), labelledBy = ariaLabelledby || labelId;
111
+ React.useEffect(() => {
112
+ if (isWeb) {
113
+ const handleKeyDown = (event) => {
114
+ ARROW_KEYS.includes(event.key) && (isArrowKeyPressedRef.current = !0);
115
+ }, handleKeyUp = () => {
116
+ isArrowKeyPressedRef.current = !1;
117
+ };
118
+ return document.addEventListener("keydown", handleKeyDown), document.addEventListener("keyup", handleKeyUp), () => {
119
+ document.removeEventListener("keydown", handleKeyDown), document.removeEventListener("keyup", handleKeyUp);
120
+ };
121
+ }
122
+ }, []), React.useEffect(() => {
123
+ if (props.id)
124
+ return registerFocusable(props.id, {
125
+ focusAndSelect: () => {
126
+ onChange?.(value);
127
+ },
128
+ focus: () => {
129
+ }
130
+ });
131
+ }, [props.id, value]);
132
+ const isDisabled = disabled || itemDisabled;
133
+ return <RadioGroupItemProvider checked={checked} scope={__scopeRadioGroup}>{isWeb && native ? <BubbleInput
134
+ control={button}
135
+ bubbles={!hasConsumerStoppedPropagationRef.current}
136
+ name={name}
137
+ value={value}
138
+ checked={checked}
139
+ required={required}
140
+ disabled={isDisabled}
141
+ id={props.id}
142
+ accentColor={accentColor}
143
+ /> : <>
144
+ <RadioGroupItemFrame
145
+ data-state={getState(checked)}
146
+ data-disabled={isDisabled ? "" : void 0}
147
+ role="radio"
148
+ aria-labelledby={labelledBy}
149
+ aria-checked={checked}
150
+ aria-required={required}
151
+ disabled={isDisabled}
152
+ ref={composedRefs}
153
+ {...isWeb && {
154
+ type: "button",
155
+ value
156
+ }}
157
+ {...itemProps}
158
+ onPress={composeEventHandlers(props.onPress, (event) => {
159
+ checked || onChange?.(value), isFormControl && (hasConsumerStoppedPropagationRef.current = event.isPropagationStopped(), hasConsumerStoppedPropagationRef.current || event.stopPropagation());
160
+ })}
161
+ {...isWeb && {
162
+ onKeyDown: composeEventHandlers(
163
+ props.onKeyDown,
164
+ (event) => {
165
+ event.key === "Enter" && event.preventDefault();
166
+ }
167
+ ),
168
+ onFocus: composeEventHandlers(itemProps.onFocus, () => {
169
+ isArrowKeyPressedRef.current && ref.current?.click();
170
+ })
171
+ }}
172
+ />
173
+ {isFormControl && <BubbleInput
174
+ isHidden
175
+ control={button}
176
+ bubbles={!hasConsumerStoppedPropagationRef.current}
177
+ name={name}
178
+ value={value}
179
+ checked={checked}
180
+ required={required}
181
+ disabled={isDisabled}
182
+ />}
183
+ </>}</RadioGroupItemProvider>;
184
+ }
185
+ )
186
+ ), BubbleInput = (props) => {
187
+ const { checked, bubbles = !0, control, isHidden, accentColor, ...inputProps } = props, ref = React.useRef(null), prevChecked = usePrevious(checked);
188
+ return React.useEffect(() => {
189
+ const input = ref.current, inputProto = window.HTMLInputElement.prototype, setChecked = Object.getOwnPropertyDescriptor(
190
+ inputProto,
191
+ "checked"
192
+ ).set;
193
+ if (prevChecked !== checked && setChecked) {
194
+ const event = new Event("click", { bubbles });
195
+ setChecked.call(input, checked), input.dispatchEvent(event);
196
+ }
197
+ }, [prevChecked, checked, bubbles]), <input
198
+ type="radio"
199
+ defaultChecked={checked}
200
+ {...inputProps}
201
+ tabIndex={-1}
202
+ ref={ref}
203
+ aria-hidden={isHidden}
204
+ style={{
205
+ ...isHidden ? {
206
+ // ...controlSize,
207
+ position: "absolute",
208
+ pointerEvents: "none",
209
+ opacity: 0,
210
+ margin: 0
211
+ } : {
212
+ appearance: "auto",
213
+ accentColor
214
+ },
215
+ ...props.style
216
+ }}
217
+ />;
218
+ }, RadioGroupFrame = styled(ThemeableStack, {
219
+ name: RADIO_GROUP_NAME,
220
+ variants: {
221
+ orientation: {
222
+ horizontal: {
223
+ flexDirection: "row",
224
+ spaceDirection: "horizontal"
225
+ },
226
+ vertical: {
227
+ flexDirection: "column",
228
+ spaceDirection: "vertical"
229
+ }
230
+ }
231
+ }
232
+ }), RadioGroup = withStaticProperties(
233
+ RadioGroupFrame.extractable(
234
+ React.forwardRef(
235
+ (props, forwardedRef) => {
236
+ const {
237
+ __scopeRadioGroup,
238
+ value: valueProp,
239
+ defaultValue,
240
+ onValueChange,
241
+ disabled = !1,
242
+ required = !1,
243
+ name,
244
+ orientation,
245
+ native,
246
+ accentColor,
247
+ ...radioGroupProps
248
+ } = props, [value, setValue] = useControllableState({
249
+ prop: valueProp,
250
+ defaultProp: defaultValue,
251
+ onChange: onValueChange
252
+ });
253
+ return <RadioGroupProvider
254
+ scope={__scopeRadioGroup}
255
+ value={value}
256
+ required={required}
257
+ onChange={setValue}
258
+ disabled={disabled}
259
+ name={name}
260
+ native={native}
261
+ accentColor={accentColor}
262
+ ><RadioGroupFrame
263
+ aria-valuetext={value}
264
+ role="radiogroup"
265
+ aria-orientation={orientation}
266
+ ref={forwardedRef}
267
+ orientation={orientation}
268
+ data-disabled={disabled ? "" : void 0}
269
+ {...radioGroupProps}
270
+ /></RadioGroupProvider>;
271
+ }
272
+ )
273
+ ),
274
+ {
275
+ Indicator: RadioIndicator,
276
+ Item: RadioGroupItem
277
+ }
278
+ );
279
+ RadioGroup.displayName = RADIO_GROUP_NAME;
280
+ export {
281
+ RadioGroup,
282
+ createRadioGroupScope
283
+ };
284
+ //# sourceMappingURL=RadioGroup.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/RadioGroup.tsx"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./RadioGroup";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/index.ts"],
4
+ "mappings": "AAAA,cAAc;",
5
+ "names": []
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/radio-group",
3
- "version": "1.61.2",
3
+ "version": "1.62.0",
4
4
  "sideEffects": [
5
5
  "*.css"
6
6
  ],
@@ -31,21 +31,21 @@
31
31
  }
32
32
  },
33
33
  "dependencies": {
34
- "@tamagui/compose-refs": "1.61.2",
35
- "@tamagui/core": "1.61.2",
36
- "@tamagui/create-context": "1.61.2",
37
- "@tamagui/focusable": "1.61.2",
38
- "@tamagui/get-token": "1.61.2",
39
- "@tamagui/label": "1.61.2",
40
- "@tamagui/stacks": "1.61.2",
41
- "@tamagui/use-controllable-state": "1.61.2",
42
- "@tamagui/use-previous": "1.61.2"
34
+ "@tamagui/compose-refs": "1.62.0",
35
+ "@tamagui/core": "1.62.0",
36
+ "@tamagui/create-context": "1.62.0",
37
+ "@tamagui/focusable": "1.62.0",
38
+ "@tamagui/get-token": "1.62.0",
39
+ "@tamagui/label": "1.62.0",
40
+ "@tamagui/stacks": "1.62.0",
41
+ "@tamagui/use-controllable-state": "1.62.0",
42
+ "@tamagui/use-previous": "1.62.0"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "react": "*"
46
46
  },
47
47
  "devDependencies": {
48
- "@tamagui/build": "1.61.2",
48
+ "@tamagui/build": "1.62.0",
49
49
  "react": "^18.2.0"
50
50
  },
51
51
  "publishConfig": {