@radix-ui/react-toggle-group 1.0.5-rc.8 → 1.1.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,16 +1,29 @@
1
- import React from "react";
2
- import * as Radix from "@radix-ui/react-primitive";
3
- import { Primitive } from "@radix-ui/react-primitive";
4
- import * as RovingFocusGroup from "@radix-ui/react-roving-focus";
5
- import { Toggle } from "@radix-ui/react-toggle";
6
- export const createToggleGroupScope: import("@radix-ui/react-context").CreateScope;
7
- export interface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {
1
+ import * as React from 'react';
2
+ import React__default from 'react';
3
+ import * as Radix from '@radix-ui/react-primitive';
4
+ import { Primitive } from '@radix-ui/react-primitive';
5
+ import * as RovingFocusGroup from '@radix-ui/react-roving-focus';
6
+ import { Toggle } from '@radix-ui/react-toggle';
7
+
8
+ declare type Scope<C = any> = {
9
+ [scopeName: string]: React.Context<C>[];
10
+ } | undefined;
11
+ declare type ScopeHook = (scope: Scope) => {
12
+ [__scopeProp: string]: Scope;
13
+ };
14
+ interface CreateScope {
15
+ scopeName: string;
16
+ (): ScopeHook;
17
+ }
18
+
19
+ declare const createToggleGroupScope: CreateScope;
20
+ interface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {
8
21
  type: 'single';
9
22
  }
10
- export interface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {
23
+ interface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {
11
24
  type: 'multiple';
12
25
  }
13
- export const ToggleGroup: React.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React.RefAttributes<HTMLDivElement>>;
26
+ declare const ToggleGroup: React__default.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React__default.RefAttributes<HTMLDivElement>>;
14
27
  interface ToggleGroupImplSingleProps extends ToggleGroupImplProps {
15
28
  /**
16
29
  * The controlled stateful value of the item that is pressed.
@@ -41,8 +54,8 @@ interface ToggleGroupImplMultipleProps extends ToggleGroupImplProps {
41
54
  */
42
55
  onValueChange?(value: string[]): void;
43
56
  }
44
- type RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;
45
- type PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;
57
+ declare type RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;
58
+ declare type PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;
46
59
  interface ToggleGroupImplProps extends PrimitiveDivProps {
47
60
  /**
48
61
  * Whether the group is disabled from user interaction.
@@ -58,17 +71,17 @@ interface ToggleGroupImplProps extends PrimitiveDivProps {
58
71
  orientation?: RovingFocusGroupProps['orientation'];
59
72
  dir?: RovingFocusGroupProps['dir'];
60
73
  }
61
- export interface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {
74
+ interface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {
62
75
  }
63
- export const ToggleGroupItem: React.ForwardRefExoticComponent<ToggleGroupItemProps & React.RefAttributes<HTMLButtonElement>>;
64
- type ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;
76
+ declare const ToggleGroupItem: React__default.ForwardRefExoticComponent<ToggleGroupItemProps & React__default.RefAttributes<HTMLButtonElement>>;
77
+ declare type ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;
65
78
  interface ToggleGroupItemImplProps extends Omit<ToggleProps, 'defaultPressed' | 'onPressedChange'> {
66
79
  /**
67
80
  * A string value for the toggle group item. All items within a toggle group should use a unique value.
68
81
  */
69
82
  value: string;
70
83
  }
71
- export const Root: React.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React.RefAttributes<HTMLDivElement>>;
72
- export const Item: React.ForwardRefExoticComponent<ToggleGroupItemProps & React.RefAttributes<HTMLButtonElement>>;
84
+ declare const Root: React__default.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React__default.RefAttributes<HTMLDivElement>>;
85
+ declare const Item: React__default.ForwardRefExoticComponent<ToggleGroupItemProps & React__default.RefAttributes<HTMLButtonElement>>;
73
86
 
74
- //# sourceMappingURL=index.d.ts.map
87
+ export { Item, Root, ToggleGroup, ToggleGroupItem, type ToggleGroupItemProps, type ToggleGroupMultipleProps, type ToggleGroupSingleProps, createToggleGroupScope };
package/dist/index.d.ts CHANGED
@@ -1,16 +1,29 @@
1
- import React from "react";
2
- import * as Radix from "@radix-ui/react-primitive";
3
- import { Primitive } from "@radix-ui/react-primitive";
4
- import * as RovingFocusGroup from "@radix-ui/react-roving-focus";
5
- import { Toggle } from "@radix-ui/react-toggle";
6
- export const createToggleGroupScope: import("@radix-ui/react-context").CreateScope;
7
- export interface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {
1
+ import * as React from 'react';
2
+ import React__default from 'react';
3
+ import * as Radix from '@radix-ui/react-primitive';
4
+ import { Primitive } from '@radix-ui/react-primitive';
5
+ import * as RovingFocusGroup from '@radix-ui/react-roving-focus';
6
+ import { Toggle } from '@radix-ui/react-toggle';
7
+
8
+ declare type Scope<C = any> = {
9
+ [scopeName: string]: React.Context<C>[];
10
+ } | undefined;
11
+ declare type ScopeHook = (scope: Scope) => {
12
+ [__scopeProp: string]: Scope;
13
+ };
14
+ interface CreateScope {
15
+ scopeName: string;
16
+ (): ScopeHook;
17
+ }
18
+
19
+ declare const createToggleGroupScope: CreateScope;
20
+ interface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {
8
21
  type: 'single';
9
22
  }
10
- export interface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {
23
+ interface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {
11
24
  type: 'multiple';
12
25
  }
13
- export const ToggleGroup: React.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React.RefAttributes<HTMLDivElement>>;
26
+ declare const ToggleGroup: React__default.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React__default.RefAttributes<HTMLDivElement>>;
14
27
  interface ToggleGroupImplSingleProps extends ToggleGroupImplProps {
15
28
  /**
16
29
  * The controlled stateful value of the item that is pressed.
@@ -41,8 +54,8 @@ interface ToggleGroupImplMultipleProps extends ToggleGroupImplProps {
41
54
  */
42
55
  onValueChange?(value: string[]): void;
43
56
  }
44
- type RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;
45
- type PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;
57
+ declare type RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;
58
+ declare type PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;
46
59
  interface ToggleGroupImplProps extends PrimitiveDivProps {
47
60
  /**
48
61
  * Whether the group is disabled from user interaction.
@@ -58,17 +71,17 @@ interface ToggleGroupImplProps extends PrimitiveDivProps {
58
71
  orientation?: RovingFocusGroupProps['orientation'];
59
72
  dir?: RovingFocusGroupProps['dir'];
60
73
  }
61
- export interface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {
74
+ interface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {
62
75
  }
63
- export const ToggleGroupItem: React.ForwardRefExoticComponent<ToggleGroupItemProps & React.RefAttributes<HTMLButtonElement>>;
64
- type ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;
76
+ declare const ToggleGroupItem: React__default.ForwardRefExoticComponent<ToggleGroupItemProps & React__default.RefAttributes<HTMLButtonElement>>;
77
+ declare type ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;
65
78
  interface ToggleGroupItemImplProps extends Omit<ToggleProps, 'defaultPressed' | 'onPressedChange'> {
66
79
  /**
67
80
  * A string value for the toggle group item. All items within a toggle group should use a unique value.
68
81
  */
69
82
  value: string;
70
83
  }
71
- export const Root: React.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React.RefAttributes<HTMLDivElement>>;
72
- export const Item: React.ForwardRefExoticComponent<ToggleGroupItemProps & React.RefAttributes<HTMLButtonElement>>;
84
+ declare const Root: React__default.ForwardRefExoticComponent<(ToggleGroupSingleProps | ToggleGroupMultipleProps) & React__default.RefAttributes<HTMLDivElement>>;
85
+ declare const Item: React__default.ForwardRefExoticComponent<ToggleGroupItemProps & React__default.RefAttributes<HTMLButtonElement>>;
73
86
 
74
- //# sourceMappingURL=index.d.ts.map
87
+ export { Item, Root, ToggleGroup, ToggleGroupItem, type ToggleGroupItemProps, type ToggleGroupMultipleProps, type ToggleGroupSingleProps, createToggleGroupScope };
package/dist/index.js CHANGED
@@ -1,193 +1,198 @@
1
- var $1z6X1$babelruntimehelpersextends = require("@babel/runtime/helpers/extends");
2
- var $1z6X1$react = require("react");
3
- var $1z6X1$radixuireactcontext = require("@radix-ui/react-context");
4
- var $1z6X1$radixuireactprimitive = require("@radix-ui/react-primitive");
5
- var $1z6X1$radixuireactrovingfocus = require("@radix-ui/react-roving-focus");
6
- var $1z6X1$radixuireacttoggle = require("@radix-ui/react-toggle");
7
- var $1z6X1$radixuireactusecontrollablestate = require("@radix-ui/react-use-controllable-state");
8
- var $1z6X1$radixuireactdirection = require("@radix-ui/react-direction");
9
-
10
- function $parcel$export(e, n, v, s) {
11
- Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
12
- }
13
- function $parcel$interopDefault(a) {
14
- return a && a.__esModule ? a.default : a;
15
- }
16
-
17
- $parcel$export(module.exports, "createToggleGroupScope", () => $14b404ddd46c8376$export$d1c7c4bcd9f26dd4);
18
- $parcel$export(module.exports, "ToggleGroup", () => $14b404ddd46c8376$export$af3ec21f6cfb5e30);
19
- $parcel$export(module.exports, "ToggleGroupItem", () => $14b404ddd46c8376$export$b453109e13abe10b);
20
- $parcel$export(module.exports, "Root", () => $14b404ddd46c8376$export$be92b6f5f03c0fe9);
21
- $parcel$export(module.exports, "Item", () => $14b404ddd46c8376$export$6d08773d2e66f8f2);
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
1
+ "use strict";
2
+ (() => {
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
10
+ get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
11
+ }) : x)(function(x) {
12
+ if (typeof require !== "undefined") return require.apply(this, arguments);
13
+ throw Error('Dynamic require of "' + x + '" is not supported');
14
+ });
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from))
18
+ if (!__hasOwnProp.call(to, key) && key !== except)
19
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
20
+ }
21
+ return to;
22
+ };
23
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
24
+ // If the importer is in node compatibility mode or this is not an ESM
25
+ // file that has been converted to a CommonJS file using a Babel-
26
+ // compatible transform (i.e. "__esModule" has not been set), then set
27
+ // "default" to the CommonJS "module.exports" for node compatibility.
28
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
29
+ mod
30
+ ));
30
31
 
31
- /* -------------------------------------------------------------------------------------------------
32
- * ToggleGroup
33
- * -----------------------------------------------------------------------------------------------*/ const $14b404ddd46c8376$var$TOGGLE_GROUP_NAME = 'ToggleGroup';
34
- const [$14b404ddd46c8376$var$createToggleGroupContext, $14b404ddd46c8376$export$d1c7c4bcd9f26dd4] = $1z6X1$radixuireactcontext.createContextScope($14b404ddd46c8376$var$TOGGLE_GROUP_NAME, [
35
- $1z6X1$radixuireactrovingfocus.createRovingFocusGroupScope
36
- ]);
37
- const $14b404ddd46c8376$var$useRovingFocusGroupScope = $1z6X1$radixuireactrovingfocus.createRovingFocusGroupScope();
38
- const $14b404ddd46c8376$export$af3ec21f6cfb5e30 = /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).forwardRef((props, forwardedRef)=>{
39
- const { type: type , ...toggleGroupProps } = props;
40
- if (type === 'single') {
41
- const singleProps = toggleGroupProps;
42
- return /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupImplSingle, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, singleProps, {
43
- ref: forwardedRef
44
- }));
32
+ // packages/react/toggle-group/src/ToggleGroup.tsx
33
+ var import_react = __toESM(__require("react"));
34
+ var import_react_context = __require("@radix-ui/react-context");
35
+ var import_react_primitive = __require("@radix-ui/react-primitive");
36
+ var RovingFocusGroup = __toESM(__require("@radix-ui/react-roving-focus"));
37
+ var import_react_roving_focus = __require("@radix-ui/react-roving-focus");
38
+ var import_react_toggle = __require("@radix-ui/react-toggle");
39
+ var import_react_use_controllable_state = __require("@radix-ui/react-use-controllable-state");
40
+ var import_react_direction = __require("@radix-ui/react-direction");
41
+ var import_jsx_runtime = __require("react/jsx-runtime");
42
+ var TOGGLE_GROUP_NAME = "ToggleGroup";
43
+ var [createToggleGroupContext, createToggleGroupScope] = (0, import_react_context.createContextScope)(TOGGLE_GROUP_NAME, [
44
+ import_react_roving_focus.createRovingFocusGroupScope
45
+ ]);
46
+ var useRovingFocusGroupScope = (0, import_react_roving_focus.createRovingFocusGroupScope)();
47
+ var ToggleGroup = import_react.default.forwardRef((props, forwardedRef) => {
48
+ const { type, ...toggleGroupProps } = props;
49
+ if (type === "single") {
50
+ const singleProps = toggleGroupProps;
51
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupImplSingle, { ...singleProps, ref: forwardedRef });
45
52
  }
46
- if (type === 'multiple') {
47
- const multipleProps = toggleGroupProps;
48
- return /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupImplMultiple, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, multipleProps, {
49
- ref: forwardedRef
50
- }));
53
+ if (type === "multiple") {
54
+ const multipleProps = toggleGroupProps;
55
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupImplMultiple, { ...multipleProps, ref: forwardedRef });
51
56
  }
52
- throw new Error(`Missing prop \`type\` expected on \`${$14b404ddd46c8376$var$TOGGLE_GROUP_NAME}\``);
53
- });
54
- /*#__PURE__*/ Object.assign($14b404ddd46c8376$export$af3ec21f6cfb5e30, {
55
- displayName: $14b404ddd46c8376$var$TOGGLE_GROUP_NAME
56
- });
57
- /* -----------------------------------------------------------------------------------------------*/ const [$14b404ddd46c8376$var$ToggleGroupValueProvider, $14b404ddd46c8376$var$useToggleGroupValueContext] = $14b404ddd46c8376$var$createToggleGroupContext($14b404ddd46c8376$var$TOGGLE_GROUP_NAME);
58
- const $14b404ddd46c8376$var$ToggleGroupImplSingle = /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).forwardRef((props, forwardedRef)=>{
59
- const { value: valueProp , defaultValue: defaultValue , onValueChange: onValueChange = ()=>{} , ...toggleGroupSingleProps } = props;
60
- const [value, setValue] = $1z6X1$radixuireactusecontrollablestate.useControllableState({
61
- prop: valueProp,
62
- defaultProp: defaultValue,
63
- onChange: onValueChange
57
+ throw new Error(`Missing prop \`type\` expected on \`${TOGGLE_GROUP_NAME}\``);
58
+ });
59
+ ToggleGroup.displayName = TOGGLE_GROUP_NAME;
60
+ var [ToggleGroupValueProvider, useToggleGroupValueContext] = createToggleGroupContext(TOGGLE_GROUP_NAME);
61
+ var ToggleGroupImplSingle = import_react.default.forwardRef((props, forwardedRef) => {
62
+ const {
63
+ value: valueProp,
64
+ defaultValue,
65
+ onValueChange = () => {
66
+ },
67
+ ...toggleGroupSingleProps
68
+ } = props;
69
+ const [value, setValue] = (0, import_react_use_controllable_state.useControllableState)({
70
+ prop: valueProp,
71
+ defaultProp: defaultValue,
72
+ onChange: onValueChange
64
73
  });
65
- return /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupValueProvider, {
74
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
75
+ ToggleGroupValueProvider,
76
+ {
66
77
  scope: props.__scopeToggleGroup,
67
78
  type: "single",
68
- value: value ? [
69
- value
70
- ] : [],
79
+ value: value ? [value] : [],
71
80
  onItemActivate: setValue,
72
- onItemDeactivate: ($parcel$interopDefault($1z6X1$react)).useCallback(()=>setValue('')
73
- , [
74
- setValue
75
- ])
76
- }, /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupImpl, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, toggleGroupSingleProps, {
77
- ref: forwardedRef
78
- })));
79
- });
80
- const $14b404ddd46c8376$var$ToggleGroupImplMultiple = /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).forwardRef((props, forwardedRef)=>{
81
- const { value: valueProp , defaultValue: defaultValue , onValueChange: onValueChange = ()=>{} , ...toggleGroupMultipleProps } = props;
82
- const [value1 = [], setValue] = $1z6X1$radixuireactusecontrollablestate.useControllableState({
83
- prop: valueProp,
84
- defaultProp: defaultValue,
85
- onChange: onValueChange
81
+ onItemDeactivate: import_react.default.useCallback(() => setValue(""), [setValue]),
82
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupImpl, { ...toggleGroupSingleProps, ref: forwardedRef })
83
+ }
84
+ );
85
+ });
86
+ var ToggleGroupImplMultiple = import_react.default.forwardRef((props, forwardedRef) => {
87
+ const {
88
+ value: valueProp,
89
+ defaultValue,
90
+ onValueChange = () => {
91
+ },
92
+ ...toggleGroupMultipleProps
93
+ } = props;
94
+ const [value = [], setValue] = (0, import_react_use_controllable_state.useControllableState)({
95
+ prop: valueProp,
96
+ defaultProp: defaultValue,
97
+ onChange: onValueChange
86
98
  });
87
- const handleButtonActivate = ($parcel$interopDefault($1z6X1$react)).useCallback((itemValue)=>setValue((prevValue = [])=>[
88
- ...prevValue,
89
- itemValue
90
- ]
91
- )
92
- , [
93
- setValue
94
- ]);
95
- const handleButtonDeactivate = ($parcel$interopDefault($1z6X1$react)).useCallback((itemValue)=>setValue((prevValue = [])=>prevValue.filter((value)=>value !== itemValue
96
- )
97
- )
98
- , [
99
- setValue
100
- ]);
101
- return /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupValueProvider, {
99
+ const handleButtonActivate = import_react.default.useCallback(
100
+ (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),
101
+ [setValue]
102
+ );
103
+ const handleButtonDeactivate = import_react.default.useCallback(
104
+ (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),
105
+ [setValue]
106
+ );
107
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
108
+ ToggleGroupValueProvider,
109
+ {
102
110
  scope: props.__scopeToggleGroup,
103
111
  type: "multiple",
104
- value: value1,
112
+ value,
105
113
  onItemActivate: handleButtonActivate,
106
- onItemDeactivate: handleButtonDeactivate
107
- }, /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupImpl, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, toggleGroupMultipleProps, {
108
- ref: forwardedRef
109
- })));
110
- });
111
- /*#__PURE__*/ Object.assign($14b404ddd46c8376$export$af3ec21f6cfb5e30, {
112
- displayName: $14b404ddd46c8376$var$TOGGLE_GROUP_NAME
113
- });
114
- /* -----------------------------------------------------------------------------------------------*/ const [$14b404ddd46c8376$var$ToggleGroupContext, $14b404ddd46c8376$var$useToggleGroupContext] = $14b404ddd46c8376$var$createToggleGroupContext($14b404ddd46c8376$var$TOGGLE_GROUP_NAME);
115
- const $14b404ddd46c8376$var$ToggleGroupImpl = /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).forwardRef((props, forwardedRef)=>{
116
- const { __scopeToggleGroup: __scopeToggleGroup , disabled: disabled = false , rovingFocus: rovingFocus = true , orientation: orientation , dir: dir , loop: loop = true , ...toggleGroupProps } = props;
117
- const rovingFocusGroupScope = $14b404ddd46c8376$var$useRovingFocusGroupScope(__scopeToggleGroup);
118
- const direction = $1z6X1$radixuireactdirection.useDirection(dir);
119
- const commonProps = {
120
- role: 'group',
121
- dir: direction,
114
+ onItemDeactivate: handleButtonDeactivate,
115
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupImpl, { ...toggleGroupMultipleProps, ref: forwardedRef })
116
+ }
117
+ );
118
+ });
119
+ ToggleGroup.displayName = TOGGLE_GROUP_NAME;
120
+ var [ToggleGroupContext, useToggleGroupContext] = createToggleGroupContext(TOGGLE_GROUP_NAME);
121
+ var ToggleGroupImpl = import_react.default.forwardRef(
122
+ (props, forwardedRef) => {
123
+ const {
124
+ __scopeToggleGroup,
125
+ disabled = false,
126
+ rovingFocus = true,
127
+ orientation,
128
+ dir,
129
+ loop = true,
122
130
  ...toggleGroupProps
123
- };
124
- return /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupContext, {
125
- scope: __scopeToggleGroup,
126
- rovingFocus: rovingFocus,
127
- disabled: disabled
128
- }, rovingFocus ? /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($1z6X1$radixuireactrovingfocus.Root, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({
129
- asChild: true
130
- }, rovingFocusGroupScope, {
131
- orientation: orientation,
132
- dir: direction,
133
- loop: loop
134
- }), /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($1z6X1$radixuireactprimitive.Primitive.div, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, commonProps, {
135
- ref: forwardedRef
136
- }))) : /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($1z6X1$radixuireactprimitive.Primitive.div, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, commonProps, {
137
- ref: forwardedRef
138
- })));
139
- });
140
- /* -------------------------------------------------------------------------------------------------
141
- * ToggleGroupItem
142
- * -----------------------------------------------------------------------------------------------*/ const $14b404ddd46c8376$var$ITEM_NAME = 'ToggleGroupItem';
143
- const $14b404ddd46c8376$export$b453109e13abe10b = /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).forwardRef((props, forwardedRef)=>{
144
- const valueContext = $14b404ddd46c8376$var$useToggleGroupValueContext($14b404ddd46c8376$var$ITEM_NAME, props.__scopeToggleGroup);
145
- const context = $14b404ddd46c8376$var$useToggleGroupContext($14b404ddd46c8376$var$ITEM_NAME, props.__scopeToggleGroup);
146
- const rovingFocusGroupScope = $14b404ddd46c8376$var$useRovingFocusGroupScope(props.__scopeToggleGroup);
147
- const pressed = valueContext.value.includes(props.value);
148
- const disabled = context.disabled || props.disabled;
149
- const commonProps = {
150
- ...props,
151
- pressed: pressed,
152
- disabled: disabled
153
- };
154
- const ref = ($parcel$interopDefault($1z6X1$react)).useRef(null);
155
- return context.rovingFocus ? /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($1z6X1$radixuireactrovingfocus.Item, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({
156
- asChild: true
157
- }, rovingFocusGroupScope, {
158
- focusable: !disabled,
159
- active: pressed,
160
- ref: ref
161
- }), /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupItemImpl, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, commonProps, {
162
- ref: forwardedRef
163
- }))) : /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($14b404ddd46c8376$var$ToggleGroupItemImpl, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, commonProps, {
164
- ref: forwardedRef
165
- }));
166
- });
167
- /*#__PURE__*/ Object.assign($14b404ddd46c8376$export$b453109e13abe10b, {
168
- displayName: $14b404ddd46c8376$var$ITEM_NAME
169
- });
170
- /* -----------------------------------------------------------------------------------------------*/ const $14b404ddd46c8376$var$ToggleGroupItemImpl = /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).forwardRef((props, forwardedRef)=>{
171
- const { __scopeToggleGroup: __scopeToggleGroup , value: value , ...itemProps } = props;
172
- const valueContext = $14b404ddd46c8376$var$useToggleGroupValueContext($14b404ddd46c8376$var$ITEM_NAME, __scopeToggleGroup);
173
- const singleProps = {
174
- role: 'radio',
175
- 'aria-checked': props.pressed,
176
- 'aria-pressed': undefined
177
- };
178
- const typeProps = valueContext.type === 'single' ? singleProps : undefined;
179
- return /*#__PURE__*/ ($parcel$interopDefault($1z6X1$react)).createElement($1z6X1$radixuireacttoggle.Toggle, ($parcel$interopDefault($1z6X1$babelruntimehelpersextends))({}, typeProps, itemProps, {
180
- ref: forwardedRef,
181
- onPressedChange: (pressed)=>{
182
- if (pressed) valueContext.onItemActivate(value);
183
- else valueContext.onItemDeactivate(value);
131
+ } = props;
132
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeToggleGroup);
133
+ const direction = (0, import_react_direction.useDirection)(dir);
134
+ const commonProps = { role: "group", dir: direction, ...toggleGroupProps };
135
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupContext, { scope: __scopeToggleGroup, rovingFocus, disabled, children: rovingFocus ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
136
+ RovingFocusGroup.Root,
137
+ {
138
+ asChild: true,
139
+ ...rovingFocusGroupScope,
140
+ orientation,
141
+ dir: direction,
142
+ loop,
143
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_primitive.Primitive.div, { ...commonProps, ref: forwardedRef })
184
144
  }
185
- }));
186
- });
187
- /* -----------------------------------------------------------------------------------------------*/ const $14b404ddd46c8376$export$be92b6f5f03c0fe9 = $14b404ddd46c8376$export$af3ec21f6cfb5e30;
188
- const $14b404ddd46c8376$export$6d08773d2e66f8f2 = $14b404ddd46c8376$export$b453109e13abe10b;
189
-
190
-
191
-
192
-
145
+ ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_primitive.Primitive.div, { ...commonProps, ref: forwardedRef }) });
146
+ }
147
+ );
148
+ var ITEM_NAME = "ToggleGroupItem";
149
+ var ToggleGroupItem = import_react.default.forwardRef(
150
+ (props, forwardedRef) => {
151
+ const valueContext = useToggleGroupValueContext(ITEM_NAME, props.__scopeToggleGroup);
152
+ const context = useToggleGroupContext(ITEM_NAME, props.__scopeToggleGroup);
153
+ const rovingFocusGroupScope = useRovingFocusGroupScope(props.__scopeToggleGroup);
154
+ const pressed = valueContext.value.includes(props.value);
155
+ const disabled = context.disabled || props.disabled;
156
+ const commonProps = { ...props, pressed, disabled };
157
+ const ref = import_react.default.useRef(null);
158
+ return context.rovingFocus ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
159
+ RovingFocusGroup.Item,
160
+ {
161
+ asChild: true,
162
+ ...rovingFocusGroupScope,
163
+ focusable: !disabled,
164
+ active: pressed,
165
+ ref,
166
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupItemImpl, { ...commonProps, ref: forwardedRef })
167
+ }
168
+ ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToggleGroupItemImpl, { ...commonProps, ref: forwardedRef });
169
+ }
170
+ );
171
+ ToggleGroupItem.displayName = ITEM_NAME;
172
+ var ToggleGroupItemImpl = import_react.default.forwardRef(
173
+ (props, forwardedRef) => {
174
+ const { __scopeToggleGroup, value, ...itemProps } = props;
175
+ const valueContext = useToggleGroupValueContext(ITEM_NAME, __scopeToggleGroup);
176
+ const singleProps = { role: "radio", "aria-checked": props.pressed, "aria-pressed": void 0 };
177
+ const typeProps = valueContext.type === "single" ? singleProps : void 0;
178
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
179
+ import_react_toggle.Toggle,
180
+ {
181
+ ...typeProps,
182
+ ...itemProps,
183
+ ref: forwardedRef,
184
+ onPressedChange: (pressed) => {
185
+ if (pressed) {
186
+ valueContext.onItemActivate(value);
187
+ } else {
188
+ valueContext.onItemDeactivate(value);
189
+ }
190
+ }
191
+ }
192
+ );
193
+ }
194
+ );
195
+ var Root2 = ToggleGroup;
196
+ var Item2 = ToggleGroupItem;
197
+ })();
193
198
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1,7 @@
1
- {"mappings":"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","sources":["packages/react/toggle-group/src/index.ts","packages/react/toggle-group/src/ToggleGroup.tsx"],"sourcesContent":["export {\n createToggleGroupScope,\n //\n ToggleGroup,\n ToggleGroupItem,\n //\n Root,\n Item,\n} from './ToggleGroup';\nexport type {\n ToggleGroupSingleProps,\n ToggleGroupMultipleProps,\n ToggleGroupItemProps,\n} from './ToggleGroup';\n","import React from 'react';\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 { Toggle } from '@radix-ui/react-toggle';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useDirection } from '@radix-ui/react-direction';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst TOGGLE_GROUP_NAME = 'ToggleGroup';\n\ntype ScopedProps<P> = P & { __scopeToggleGroup?: Scope };\nconst [createToggleGroupContext, createToggleGroupScope] = createContextScope(TOGGLE_GROUP_NAME, [\n createRovingFocusGroupScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\n\ntype ToggleGroupElement = ToggleGroupImplSingleElement | ToggleGroupImplMultipleElement;\ninterface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {\n type: 'single';\n}\ninterface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {\n type: 'multiple';\n}\n\nconst ToggleGroup = React.forwardRef<\n ToggleGroupElement,\n ToggleGroupSingleProps | ToggleGroupMultipleProps\n>((props, forwardedRef) => {\n const { type, ...toggleGroupProps } = props;\n\n if (type === 'single') {\n const singleProps = toggleGroupProps as ToggleGroupImplSingleProps;\n return <ToggleGroupImplSingle {...singleProps} ref={forwardedRef} />;\n }\n\n if (type === 'multiple') {\n const multipleProps = toggleGroupProps as ToggleGroupImplMultipleProps;\n return <ToggleGroupImplMultiple {...multipleProps} ref={forwardedRef} />;\n }\n\n throw new Error(`Missing prop \\`type\\` expected on \\`${TOGGLE_GROUP_NAME}\\``);\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupValueContextValue = {\n type: 'single' | 'multiple';\n value: string[];\n onItemActivate(value: string): void;\n onItemDeactivate(value: string): void;\n};\n\nconst [ToggleGroupValueProvider, useToggleGroupValueContext] =\n createToggleGroupContext<ToggleGroupValueContextValue>(TOGGLE_GROUP_NAME);\n\ntype ToggleGroupImplSingleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplSingleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the item that is pressed.\n */\n value?: string;\n /**\n * The value of the item that is pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string;\n /**\n * The callback that fires when the value of the toggle group changes.\n */\n onValueChange?(value: string): void;\n}\n\nconst ToggleGroupImplSingle = React.forwardRef<\n ToggleGroupImplSingleElement,\n ToggleGroupImplSingleProps\n>((props: ScopedProps<ToggleGroupImplSingleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupSingleProps\n } = props;\n\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"single\"\n value={value ? [value] : []}\n onItemActivate={setValue}\n onItemDeactivate={React.useCallback(() => setValue(''), [setValue])}\n >\n <ToggleGroupImpl {...toggleGroupSingleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\ntype ToggleGroupImplMultipleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplMultipleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the items that are pressed.\n */\n value?: string[];\n /**\n * The value of the items that are pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string[];\n /**\n * The callback that fires when the state of the toggle group changes.\n */\n onValueChange?(value: string[]): void;\n}\n\nconst ToggleGroupImplMultiple = React.forwardRef<\n ToggleGroupImplMultipleElement,\n ToggleGroupImplMultipleProps\n>((props: ScopedProps<ToggleGroupImplMultipleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupMultipleProps\n } = props;\n\n const [value = [], setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n const handleButtonActivate = React.useCallback(\n (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n\n const handleButtonDeactivate = React.useCallback(\n (itemValue: string) =>\n setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n [setValue]\n );\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"multiple\"\n value={value}\n onItemActivate={handleButtonActivate}\n onItemDeactivate={handleButtonDeactivate}\n >\n <ToggleGroupImpl {...toggleGroupMultipleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupContextValue = { rovingFocus: boolean; disabled: boolean };\n\nconst [ToggleGroupContext, useToggleGroupContext] =\n createToggleGroupContext<ToggleGroupContextValue>(TOGGLE_GROUP_NAME);\n\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype ToggleGroupImplElement = React.ElementRef<typeof Primitive.div>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface ToggleGroupImplProps extends PrimitiveDivProps {\n /**\n * Whether the group is disabled from user interaction.\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * Whether the group should maintain roving focus of its buttons.\n * @defaultValue true\n */\n rovingFocus?: boolean;\n loop?: RovingFocusGroupProps['loop'];\n orientation?: RovingFocusGroupProps['orientation'];\n dir?: RovingFocusGroupProps['dir'];\n}\n\nconst ToggleGroupImpl = React.forwardRef<ToggleGroupImplElement, ToggleGroupImplProps>(\n (props: ScopedProps<ToggleGroupImplProps>, forwardedRef) => {\n const {\n __scopeToggleGroup,\n disabled = false,\n rovingFocus = true,\n orientation,\n dir,\n loop = true,\n ...toggleGroupProps\n } = props;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeToggleGroup);\n const direction = useDirection(dir);\n const commonProps = { role: 'group', dir: direction, ...toggleGroupProps };\n return (\n <ToggleGroupContext scope={__scopeToggleGroup} rovingFocus={rovingFocus} disabled={disabled}>\n {rovingFocus ? (\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Root>\n ) : (\n <Primitive.div {...commonProps} ref={forwardedRef} />\n )}\n </ToggleGroupContext>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'ToggleGroupItem';\n\ntype ToggleGroupItemElement = ToggleGroupItemImplElement;\ninterface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {}\n\nconst ToggleGroupItem = React.forwardRef<ToggleGroupItemElement, ToggleGroupItemProps>(\n (props: ScopedProps<ToggleGroupItemProps>, forwardedRef) => {\n const valueContext = useToggleGroupValueContext(ITEM_NAME, props.__scopeToggleGroup);\n const context = useToggleGroupContext(ITEM_NAME, props.__scopeToggleGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(props.__scopeToggleGroup);\n const pressed = valueContext.value.includes(props.value);\n const disabled = context.disabled || props.disabled;\n const commonProps = { ...props, pressed, disabled };\n const ref = React.useRef<HTMLDivElement>(null);\n return context.rovingFocus ? (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={pressed}\n ref={ref}\n >\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Item>\n ) : (\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n );\n }\n);\n\nToggleGroupItem.displayName = ITEM_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupItemImplElement = React.ElementRef<typeof Toggle>;\ntype ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;\ninterface ToggleGroupItemImplProps extends Omit<ToggleProps, 'defaultPressed' | 'onPressedChange'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: string;\n}\n\nconst ToggleGroupItemImpl = React.forwardRef<ToggleGroupItemImplElement, ToggleGroupItemImplProps>(\n (props: ScopedProps<ToggleGroupItemImplProps>, forwardedRef) => {\n const { __scopeToggleGroup, value, ...itemProps } = props;\n const valueContext = useToggleGroupValueContext(ITEM_NAME, __scopeToggleGroup);\n const singleProps = { role: 'radio', 'aria-checked': props.pressed, 'aria-pressed': undefined };\n const typeProps = valueContext.type === 'single' ? singleProps : undefined;\n return (\n <Toggle\n {...typeProps}\n {...itemProps}\n ref={forwardedRef}\n onPressedChange={(pressed) => {\n if (pressed) {\n valueContext.onItemActivate(value);\n } else {\n valueContext.onItemDeactivate(value);\n }\n }}\n />\n );\n }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = ToggleGroup;\nconst Item = ToggleGroupItem;\n\nexport {\n createToggleGroupScope,\n //\n ToggleGroup,\n ToggleGroupItem,\n //\n Root,\n Item,\n};\nexport type { ToggleGroupSingleProps, ToggleGroupMultipleProps, ToggleGroupItemProps };\n"],"names":["createToggleGroupScope","ToggleGroup","ToggleGroupItem","Root","Item","React","createContextScope","Primitive","RovingFocusGroup","createRovingFocusGroupScope","Toggle","useControllableState","useDirection","TOGGLE_GROUP_NAME","createToggleGroupContext","useRovingFocusGroupScope","forwardRef","props","forwardedRef","type","toggleGroupProps","singleProps","multipleProps","Error","ToggleGroupValueProvider","useToggleGroupValueContext","ToggleGroupImplSingle","value","valueProp","defaultValue","onValueChange","toggleGroupSingleProps","setValue","prop","defaultProp","onChange","__scopeToggleGroup","useCallback","ToggleGroupImplMultiple","toggleGroupMultipleProps","handleButtonActivate","itemValue","prevValue","handleButtonDeactivate","filter","ToggleGroupContext","useToggleGroupContext","ToggleGroupImpl","disabled","rovingFocus","orientation","dir","loop","rovingFocusGroupScope","direction","commonProps","role","ITEM_NAME","valueContext","context","pressed","includes","ref","useRef","ToggleGroupItemImpl","itemProps","undefined","typeProps","onItemActivate","onItemDeactivate"],"version":3,"file":"index.js.map"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/ToggleGroup.tsx"],
4
+ "sourcesContent": ["import React from 'react';\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 { Toggle } from '@radix-ui/react-toggle';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useDirection } from '@radix-ui/react-direction';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst TOGGLE_GROUP_NAME = 'ToggleGroup';\n\ntype ScopedProps<P> = P & { __scopeToggleGroup?: Scope };\nconst [createToggleGroupContext, createToggleGroupScope] = createContextScope(TOGGLE_GROUP_NAME, [\n createRovingFocusGroupScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\n\ntype ToggleGroupElement = ToggleGroupImplSingleElement | ToggleGroupImplMultipleElement;\ninterface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {\n type: 'single';\n}\ninterface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {\n type: 'multiple';\n}\n\nconst ToggleGroup = React.forwardRef<\n ToggleGroupElement,\n ToggleGroupSingleProps | ToggleGroupMultipleProps\n>((props, forwardedRef) => {\n const { type, ...toggleGroupProps } = props;\n\n if (type === 'single') {\n const singleProps = toggleGroupProps as ToggleGroupImplSingleProps;\n return <ToggleGroupImplSingle {...singleProps} ref={forwardedRef} />;\n }\n\n if (type === 'multiple') {\n const multipleProps = toggleGroupProps as ToggleGroupImplMultipleProps;\n return <ToggleGroupImplMultiple {...multipleProps} ref={forwardedRef} />;\n }\n\n throw new Error(`Missing prop \\`type\\` expected on \\`${TOGGLE_GROUP_NAME}\\``);\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupValueContextValue = {\n type: 'single' | 'multiple';\n value: string[];\n onItemActivate(value: string): void;\n onItemDeactivate(value: string): void;\n};\n\nconst [ToggleGroupValueProvider, useToggleGroupValueContext] =\n createToggleGroupContext<ToggleGroupValueContextValue>(TOGGLE_GROUP_NAME);\n\ntype ToggleGroupImplSingleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplSingleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the item that is pressed.\n */\n value?: string;\n /**\n * The value of the item that is pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string;\n /**\n * The callback that fires when the value of the toggle group changes.\n */\n onValueChange?(value: string): void;\n}\n\nconst ToggleGroupImplSingle = React.forwardRef<\n ToggleGroupImplSingleElement,\n ToggleGroupImplSingleProps\n>((props: ScopedProps<ToggleGroupImplSingleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupSingleProps\n } = props;\n\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"single\"\n value={value ? [value] : []}\n onItemActivate={setValue}\n onItemDeactivate={React.useCallback(() => setValue(''), [setValue])}\n >\n <ToggleGroupImpl {...toggleGroupSingleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\ntype ToggleGroupImplMultipleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplMultipleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the items that are pressed.\n */\n value?: string[];\n /**\n * The value of the items that are pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string[];\n /**\n * The callback that fires when the state of the toggle group changes.\n */\n onValueChange?(value: string[]): void;\n}\n\nconst ToggleGroupImplMultiple = React.forwardRef<\n ToggleGroupImplMultipleElement,\n ToggleGroupImplMultipleProps\n>((props: ScopedProps<ToggleGroupImplMultipleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupMultipleProps\n } = props;\n\n const [value = [], setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n const handleButtonActivate = React.useCallback(\n (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n\n const handleButtonDeactivate = React.useCallback(\n (itemValue: string) =>\n setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n [setValue]\n );\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"multiple\"\n value={value}\n onItemActivate={handleButtonActivate}\n onItemDeactivate={handleButtonDeactivate}\n >\n <ToggleGroupImpl {...toggleGroupMultipleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupContextValue = { rovingFocus: boolean; disabled: boolean };\n\nconst [ToggleGroupContext, useToggleGroupContext] =\n createToggleGroupContext<ToggleGroupContextValue>(TOGGLE_GROUP_NAME);\n\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype ToggleGroupImplElement = React.ElementRef<typeof Primitive.div>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface ToggleGroupImplProps extends PrimitiveDivProps {\n /**\n * Whether the group is disabled from user interaction.\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * Whether the group should maintain roving focus of its buttons.\n * @defaultValue true\n */\n rovingFocus?: boolean;\n loop?: RovingFocusGroupProps['loop'];\n orientation?: RovingFocusGroupProps['orientation'];\n dir?: RovingFocusGroupProps['dir'];\n}\n\nconst ToggleGroupImpl = React.forwardRef<ToggleGroupImplElement, ToggleGroupImplProps>(\n (props: ScopedProps<ToggleGroupImplProps>, forwardedRef) => {\n const {\n __scopeToggleGroup,\n disabled = false,\n rovingFocus = true,\n orientation,\n dir,\n loop = true,\n ...toggleGroupProps\n } = props;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeToggleGroup);\n const direction = useDirection(dir);\n const commonProps = { role: 'group', dir: direction, ...toggleGroupProps };\n return (\n <ToggleGroupContext scope={__scopeToggleGroup} rovingFocus={rovingFocus} disabled={disabled}>\n {rovingFocus ? (\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Root>\n ) : (\n <Primitive.div {...commonProps} ref={forwardedRef} />\n )}\n </ToggleGroupContext>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'ToggleGroupItem';\n\ntype ToggleGroupItemElement = ToggleGroupItemImplElement;\ninterface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {}\n\nconst ToggleGroupItem = React.forwardRef<ToggleGroupItemElement, ToggleGroupItemProps>(\n (props: ScopedProps<ToggleGroupItemProps>, forwardedRef) => {\n const valueContext = useToggleGroupValueContext(ITEM_NAME, props.__scopeToggleGroup);\n const context = useToggleGroupContext(ITEM_NAME, props.__scopeToggleGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(props.__scopeToggleGroup);\n const pressed = valueContext.value.includes(props.value);\n const disabled = context.disabled || props.disabled;\n const commonProps = { ...props, pressed, disabled };\n const ref = React.useRef<HTMLDivElement>(null);\n return context.rovingFocus ? (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={pressed}\n ref={ref}\n >\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Item>\n ) : (\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n );\n }\n);\n\nToggleGroupItem.displayName = ITEM_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupItemImplElement = React.ElementRef<typeof Toggle>;\ntype ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;\ninterface ToggleGroupItemImplProps extends Omit<ToggleProps, 'defaultPressed' | 'onPressedChange'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: string;\n}\n\nconst ToggleGroupItemImpl = React.forwardRef<ToggleGroupItemImplElement, ToggleGroupItemImplProps>(\n (props: ScopedProps<ToggleGroupItemImplProps>, forwardedRef) => {\n const { __scopeToggleGroup, value, ...itemProps } = props;\n const valueContext = useToggleGroupValueContext(ITEM_NAME, __scopeToggleGroup);\n const singleProps = { role: 'radio', 'aria-checked': props.pressed, 'aria-pressed': undefined };\n const typeProps = valueContext.type === 'single' ? singleProps : undefined;\n return (\n <Toggle\n {...typeProps}\n {...itemProps}\n ref={forwardedRef}\n onPressedChange={(pressed) => {\n if (pressed) {\n valueContext.onItemActivate(value);\n } else {\n valueContext.onItemDeactivate(value);\n }\n }}\n />\n );\n }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = ToggleGroup;\nconst Item = ToggleGroupItem;\n\nexport {\n createToggleGroupScope,\n //\n ToggleGroup,\n ToggleGroupItem,\n //\n Root,\n Item,\n};\nexport type { ToggleGroupSingleProps, ToggleGroupMultipleProps, ToggleGroupItemProps };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qBAAkB;AAClB,6BAAmC;AACnC,+BAA0B;AAC1B,yBAAkC;AAClC,kCAA4C;AAC5C,4BAAuB;AACvB,4CAAqC;AACrC,+BAA6B;AAiClB;AAxBX,MAAM,oBAAoB;AAG1B,MAAM,CAAC,0BAA0B,sBAAsB,QAAI,yCAAmB,mBAAmB;AAAA,IAC/F;AAAA,EACF,CAAC;AACD,MAAM,+BAA2B,uDAA4B;AAU7D,MAAM,cAAc,aAAAA,QAAM,WAGxB,CAAC,OAAO,iBAAiB;AACzB,UAAM,EAAE,MAAM,GAAG,iBAAiB,IAAI;AAEtC,QAAI,SAAS,UAAU;AACrB,YAAM,cAAc;AACpB,aAAO,4CAAC,yBAAuB,GAAG,aAAa,KAAK,cAAc;AAAA,IACpE;AAEA,QAAI,SAAS,YAAY;AACvB,YAAM,gBAAgB;AACtB,aAAO,4CAAC,2BAAyB,GAAG,eAAe,KAAK,cAAc;AAAA,IACxE;AAEA,UAAM,IAAI,MAAM,uCAAuC,iBAAiB,IAAI;AAAA,EAC9E,CAAC;AAED,cAAY,cAAc;AAW1B,MAAM,CAAC,0BAA0B,0BAA0B,IACzD,yBAAuD,iBAAiB;AAmB1E,MAAM,wBAAwB,aAAAA,QAAM,WAGlC,CAAC,OAAgD,iBAAiB;AAClE,UAAM;AAAA,MACJ,OAAO;AAAA,MACP;AAAA,MACA,gBAAgB,MAAM;AAAA,MAAC;AAAA,MACvB,GAAG;AAAA,IACL,IAAI;AAEJ,UAAM,CAAC,OAAO,QAAQ,QAAI,0DAAqB;AAAA,MAC7C,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ,CAAC;AAED,WACE;AAAA,MAAC;AAAA;AAAA,QACC,OAAO,MAAM;AAAA,QACb,MAAK;AAAA,QACL,OAAO,QAAQ,CAAC,KAAK,IAAI,CAAC;AAAA,QAC1B,gBAAgB;AAAA,QAChB,kBAAkB,aAAAA,QAAM,YAAY,MAAM,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC;AAAA,QAElE,sDAAC,mBAAiB,GAAG,wBAAwB,KAAK,cAAc;AAAA;AAAA,IAClE;AAAA,EAEJ,CAAC;AAmBD,MAAM,0BAA0B,aAAAA,QAAM,WAGpC,CAAC,OAAkD,iBAAiB;AACpE,UAAM;AAAA,MACJ,OAAO;AAAA,MACP;AAAA,MACA,gBAAgB,MAAM;AAAA,MAAC;AAAA,MACvB,GAAG;AAAA,IACL,IAAI;AAEJ,UAAM,CAAC,QAAQ,CAAC,GAAG,QAAQ,QAAI,0DAAqB;AAAA,MAClD,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ,CAAC;AAED,UAAM,uBAAuB,aAAAA,QAAM;AAAA,MACjC,CAAC,cAAsB,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,WAAW,SAAS,CAAC;AAAA,MAC7E,CAAC,QAAQ;AAAA,IACX;AAEA,UAAM,yBAAyB,aAAAA,QAAM;AAAA,MACnC,CAAC,cACC,SAAS,CAAC,YAAY,CAAC,MAAM,UAAU,OAAO,CAACC,WAAUA,WAAU,SAAS,CAAC;AAAA,MAC/E,CAAC,QAAQ;AAAA,IACX;AAEA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,OAAO,MAAM;AAAA,QACb,MAAK;AAAA,QACL;AAAA,QACA,gBAAgB;AAAA,QAChB,kBAAkB;AAAA,QAElB,sDAAC,mBAAiB,GAAG,0BAA0B,KAAK,cAAc;AAAA;AAAA,IACpE;AAAA,EAEJ,CAAC;AAED,cAAY,cAAc;AAM1B,MAAM,CAAC,oBAAoB,qBAAqB,IAC9C,yBAAkD,iBAAiB;AAqBrE,MAAM,kBAAkB,aAAAD,QAAM;AAAA,IAC5B,CAAC,OAA0C,iBAAiB;AAC1D,YAAM;AAAA,QACJ;AAAA,QACA,WAAW;AAAA,QACX,cAAc;AAAA,QACd;AAAA,QACA;AAAA,QACA,OAAO;AAAA,QACP,GAAG;AAAA,MACL,IAAI;AACJ,YAAM,wBAAwB,yBAAyB,kBAAkB;AACzE,YAAM,gBAAY,qCAAa,GAAG;AAClC,YAAM,cAAc,EAAE,MAAM,SAAS,KAAK,WAAW,GAAG,iBAAiB;AACzE,aACE,4CAAC,sBAAmB,OAAO,oBAAoB,aAA0B,UACtE,wBACC;AAAA,QAAkB;AAAA,QAAjB;AAAA,UACC,SAAO;AAAA,UACN,GAAG;AAAA,UACJ;AAAA,UACA,KAAK;AAAA,UACL;AAAA,UAEA,sDAAC,iCAAU,KAAV,EAAe,GAAG,aAAa,KAAK,cAAc;AAAA;AAAA,MACrD,IAEA,4CAAC,iCAAU,KAAV,EAAe,GAAG,aAAa,KAAK,cAAc,GAEvD;AAAA,IAEJ;AAAA,EACF;AAMA,MAAM,YAAY;AAKlB,MAAM,kBAAkB,aAAAA,QAAM;AAAA,IAC5B,CAAC,OAA0C,iBAAiB;AAC1D,YAAM,eAAe,2BAA2B,WAAW,MAAM,kBAAkB;AACnF,YAAM,UAAU,sBAAsB,WAAW,MAAM,kBAAkB;AACzE,YAAM,wBAAwB,yBAAyB,MAAM,kBAAkB;AAC/E,YAAM,UAAU,aAAa,MAAM,SAAS,MAAM,KAAK;AACvD,YAAM,WAAW,QAAQ,YAAY,MAAM;AAC3C,YAAM,cAAc,EAAE,GAAG,OAAO,SAAS,SAAS;AAClD,YAAM,MAAM,aAAAA,QAAM,OAAuB,IAAI;AAC7C,aAAO,QAAQ,cACb;AAAA,QAAkB;AAAA,QAAjB;AAAA,UACC,SAAO;AAAA,UACN,GAAG;AAAA,UACJ,WAAW,CAAC;AAAA,UACZ,QAAQ;AAAA,UACR;AAAA,UAEA,sDAAC,uBAAqB,GAAG,aAAa,KAAK,cAAc;AAAA;AAAA,MAC3D,IAEA,4CAAC,uBAAqB,GAAG,aAAa,KAAK,cAAc;AAAA,IAE7D;AAAA,EACF;AAEA,kBAAgB,cAAc;AAa9B,MAAM,sBAAsB,aAAAA,QAAM;AAAA,IAChC,CAAC,OAA8C,iBAAiB;AAC9D,YAAM,EAAE,oBAAoB,OAAO,GAAG,UAAU,IAAI;AACpD,YAAM,eAAe,2BAA2B,WAAW,kBAAkB;AAC7E,YAAM,cAAc,EAAE,MAAM,SAAS,gBAAgB,MAAM,SAAS,gBAAgB,OAAU;AAC9F,YAAM,YAAY,aAAa,SAAS,WAAW,cAAc;AACjE,aACE;AAAA,QAAC;AAAA;AAAA,UACE,GAAG;AAAA,UACH,GAAG;AAAA,UACJ,KAAK;AAAA,UACL,iBAAiB,CAAC,YAAY;AAC5B,gBAAI,SAAS;AACX,2BAAa,eAAe,KAAK;AAAA,YACnC,OAAO;AACL,2BAAa,iBAAiB,KAAK;AAAA,YACrC;AAAA,UACF;AAAA;AAAA,MACF;AAAA,IAEJ;AAAA,EACF;AAIA,MAAME,QAAO;AACb,MAAMC,QAAO;",
6
+ "names": ["React", "value", "Root", "Item"]
7
+ }
package/dist/index.mjs CHANGED
@@ -1,182 +1,173 @@
1
- import $jFibJ$babelruntimehelpersesmextends from "@babel/runtime/helpers/esm/extends";
2
- import $jFibJ$react from "react";
3
- import {createContextScope as $jFibJ$createContextScope} from "@radix-ui/react-context";
4
- import {Primitive as $jFibJ$Primitive} from "@radix-ui/react-primitive";
5
- import {createRovingFocusGroupScope as $jFibJ$createRovingFocusGroupScope, Root as $jFibJ$Root, Item as $jFibJ$Item} from "@radix-ui/react-roving-focus";
6
- import {Toggle as $jFibJ$Toggle} from "@radix-ui/react-toggle";
7
- import {useControllableState as $jFibJ$useControllableState} from "@radix-ui/react-use-controllable-state";
8
- import {useDirection as $jFibJ$useDirection} from "@radix-ui/react-direction";
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
- /* -------------------------------------------------------------------------------------------------
20
- * ToggleGroup
21
- * -----------------------------------------------------------------------------------------------*/ const $6c1fd9e6a8969628$var$TOGGLE_GROUP_NAME = 'ToggleGroup';
22
- const [$6c1fd9e6a8969628$var$createToggleGroupContext, $6c1fd9e6a8969628$export$d1c7c4bcd9f26dd4] = $jFibJ$createContextScope($6c1fd9e6a8969628$var$TOGGLE_GROUP_NAME, [
23
- $jFibJ$createRovingFocusGroupScope
1
+ // packages/react/toggle-group/src/ToggleGroup.tsx
2
+ import React from "react";
3
+ import { createContextScope } from "@radix-ui/react-context";
4
+ import { Primitive } from "@radix-ui/react-primitive";
5
+ import * as RovingFocusGroup from "@radix-ui/react-roving-focus";
6
+ import { createRovingFocusGroupScope } from "@radix-ui/react-roving-focus";
7
+ import { Toggle } from "@radix-ui/react-toggle";
8
+ import { useControllableState } from "@radix-ui/react-use-controllable-state";
9
+ import { useDirection } from "@radix-ui/react-direction";
10
+ import { jsx } from "react/jsx-runtime";
11
+ var TOGGLE_GROUP_NAME = "ToggleGroup";
12
+ var [createToggleGroupContext, createToggleGroupScope] = createContextScope(TOGGLE_GROUP_NAME, [
13
+ createRovingFocusGroupScope
24
14
  ]);
25
- const $6c1fd9e6a8969628$var$useRovingFocusGroupScope = $jFibJ$createRovingFocusGroupScope();
26
- const $6c1fd9e6a8969628$export$af3ec21f6cfb5e30 = /*#__PURE__*/ $jFibJ$react.forwardRef((props, forwardedRef)=>{
27
- const { type: type , ...toggleGroupProps } = props;
28
- if (type === 'single') {
29
- const singleProps = toggleGroupProps;
30
- return /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupImplSingle, $jFibJ$babelruntimehelpersesmextends({}, singleProps, {
31
- ref: forwardedRef
32
- }));
33
- }
34
- if (type === 'multiple') {
35
- const multipleProps = toggleGroupProps;
36
- return /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupImplMultiple, $jFibJ$babelruntimehelpersesmextends({}, multipleProps, {
37
- ref: forwardedRef
38
- }));
39
- }
40
- throw new Error(`Missing prop \`type\` expected on \`${$6c1fd9e6a8969628$var$TOGGLE_GROUP_NAME}\``);
41
- });
42
- /*#__PURE__*/ Object.assign($6c1fd9e6a8969628$export$af3ec21f6cfb5e30, {
43
- displayName: $6c1fd9e6a8969628$var$TOGGLE_GROUP_NAME
15
+ var useRovingFocusGroupScope = createRovingFocusGroupScope();
16
+ var ToggleGroup = React.forwardRef((props, forwardedRef) => {
17
+ const { type, ...toggleGroupProps } = props;
18
+ if (type === "single") {
19
+ const singleProps = toggleGroupProps;
20
+ return /* @__PURE__ */ jsx(ToggleGroupImplSingle, { ...singleProps, ref: forwardedRef });
21
+ }
22
+ if (type === "multiple") {
23
+ const multipleProps = toggleGroupProps;
24
+ return /* @__PURE__ */ jsx(ToggleGroupImplMultiple, { ...multipleProps, ref: forwardedRef });
25
+ }
26
+ throw new Error(`Missing prop \`type\` expected on \`${TOGGLE_GROUP_NAME}\``);
44
27
  });
45
- /* -----------------------------------------------------------------------------------------------*/ const [$6c1fd9e6a8969628$var$ToggleGroupValueProvider, $6c1fd9e6a8969628$var$useToggleGroupValueContext] = $6c1fd9e6a8969628$var$createToggleGroupContext($6c1fd9e6a8969628$var$TOGGLE_GROUP_NAME);
46
- const $6c1fd9e6a8969628$var$ToggleGroupImplSingle = /*#__PURE__*/ $jFibJ$react.forwardRef((props, forwardedRef)=>{
47
- const { value: valueProp , defaultValue: defaultValue , onValueChange: onValueChange = ()=>{} , ...toggleGroupSingleProps } = props;
48
- const [value, setValue] = $jFibJ$useControllableState({
49
- prop: valueProp,
50
- defaultProp: defaultValue,
51
- onChange: onValueChange
52
- });
53
- return /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupValueProvider, {
54
- scope: props.__scopeToggleGroup,
55
- type: "single",
56
- value: value ? [
57
- value
58
- ] : [],
59
- onItemActivate: setValue,
60
- onItemDeactivate: $jFibJ$react.useCallback(()=>setValue('')
61
- , [
62
- setValue
63
- ])
64
- }, /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupImpl, $jFibJ$babelruntimehelpersesmextends({}, toggleGroupSingleProps, {
65
- ref: forwardedRef
66
- })));
67
- });
68
- const $6c1fd9e6a8969628$var$ToggleGroupImplMultiple = /*#__PURE__*/ $jFibJ$react.forwardRef((props, forwardedRef)=>{
69
- const { value: valueProp , defaultValue: defaultValue , onValueChange: onValueChange = ()=>{} , ...toggleGroupMultipleProps } = props;
70
- const [value1 = [], setValue] = $jFibJ$useControllableState({
71
- prop: valueProp,
72
- defaultProp: defaultValue,
73
- onChange: onValueChange
74
- });
75
- const handleButtonActivate = $jFibJ$react.useCallback((itemValue)=>setValue((prevValue = [])=>[
76
- ...prevValue,
77
- itemValue
78
- ]
79
- )
80
- , [
81
- setValue
82
- ]);
83
- const handleButtonDeactivate = $jFibJ$react.useCallback((itemValue)=>setValue((prevValue = [])=>prevValue.filter((value)=>value !== itemValue
84
- )
85
- )
86
- , [
87
- setValue
88
- ]);
89
- return /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupValueProvider, {
90
- scope: props.__scopeToggleGroup,
91
- type: "multiple",
92
- value: value1,
93
- onItemActivate: handleButtonActivate,
94
- onItemDeactivate: handleButtonDeactivate
95
- }, /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupImpl, $jFibJ$babelruntimehelpersesmextends({}, toggleGroupMultipleProps, {
96
- ref: forwardedRef
97
- })));
28
+ ToggleGroup.displayName = TOGGLE_GROUP_NAME;
29
+ var [ToggleGroupValueProvider, useToggleGroupValueContext] = createToggleGroupContext(TOGGLE_GROUP_NAME);
30
+ var ToggleGroupImplSingle = React.forwardRef((props, forwardedRef) => {
31
+ const {
32
+ value: valueProp,
33
+ defaultValue,
34
+ onValueChange = () => {
35
+ },
36
+ ...toggleGroupSingleProps
37
+ } = props;
38
+ const [value, setValue] = useControllableState({
39
+ prop: valueProp,
40
+ defaultProp: defaultValue,
41
+ onChange: onValueChange
42
+ });
43
+ return /* @__PURE__ */ jsx(
44
+ ToggleGroupValueProvider,
45
+ {
46
+ scope: props.__scopeToggleGroup,
47
+ type: "single",
48
+ value: value ? [value] : [],
49
+ onItemActivate: setValue,
50
+ onItemDeactivate: React.useCallback(() => setValue(""), [setValue]),
51
+ children: /* @__PURE__ */ jsx(ToggleGroupImpl, { ...toggleGroupSingleProps, ref: forwardedRef })
52
+ }
53
+ );
98
54
  });
99
- /*#__PURE__*/ Object.assign($6c1fd9e6a8969628$export$af3ec21f6cfb5e30, {
100
- displayName: $6c1fd9e6a8969628$var$TOGGLE_GROUP_NAME
55
+ var ToggleGroupImplMultiple = React.forwardRef((props, forwardedRef) => {
56
+ const {
57
+ value: valueProp,
58
+ defaultValue,
59
+ onValueChange = () => {
60
+ },
61
+ ...toggleGroupMultipleProps
62
+ } = props;
63
+ const [value = [], setValue] = useControllableState({
64
+ prop: valueProp,
65
+ defaultProp: defaultValue,
66
+ onChange: onValueChange
67
+ });
68
+ const handleButtonActivate = React.useCallback(
69
+ (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),
70
+ [setValue]
71
+ );
72
+ const handleButtonDeactivate = React.useCallback(
73
+ (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),
74
+ [setValue]
75
+ );
76
+ return /* @__PURE__ */ jsx(
77
+ ToggleGroupValueProvider,
78
+ {
79
+ scope: props.__scopeToggleGroup,
80
+ type: "multiple",
81
+ value,
82
+ onItemActivate: handleButtonActivate,
83
+ onItemDeactivate: handleButtonDeactivate,
84
+ children: /* @__PURE__ */ jsx(ToggleGroupImpl, { ...toggleGroupMultipleProps, ref: forwardedRef })
85
+ }
86
+ );
101
87
  });
102
- /* -----------------------------------------------------------------------------------------------*/ const [$6c1fd9e6a8969628$var$ToggleGroupContext, $6c1fd9e6a8969628$var$useToggleGroupContext] = $6c1fd9e6a8969628$var$createToggleGroupContext($6c1fd9e6a8969628$var$TOGGLE_GROUP_NAME);
103
- const $6c1fd9e6a8969628$var$ToggleGroupImpl = /*#__PURE__*/ $jFibJ$react.forwardRef((props, forwardedRef)=>{
104
- const { __scopeToggleGroup: __scopeToggleGroup , disabled: disabled = false , rovingFocus: rovingFocus = true , orientation: orientation , dir: dir , loop: loop = true , ...toggleGroupProps } = props;
105
- const rovingFocusGroupScope = $6c1fd9e6a8969628$var$useRovingFocusGroupScope(__scopeToggleGroup);
106
- const direction = $jFibJ$useDirection(dir);
107
- const commonProps = {
108
- role: 'group',
88
+ ToggleGroup.displayName = TOGGLE_GROUP_NAME;
89
+ var [ToggleGroupContext, useToggleGroupContext] = createToggleGroupContext(TOGGLE_GROUP_NAME);
90
+ var ToggleGroupImpl = React.forwardRef(
91
+ (props, forwardedRef) => {
92
+ const {
93
+ __scopeToggleGroup,
94
+ disabled = false,
95
+ rovingFocus = true,
96
+ orientation,
97
+ dir,
98
+ loop = true,
99
+ ...toggleGroupProps
100
+ } = props;
101
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeToggleGroup);
102
+ const direction = useDirection(dir);
103
+ const commonProps = { role: "group", dir: direction, ...toggleGroupProps };
104
+ return /* @__PURE__ */ jsx(ToggleGroupContext, { scope: __scopeToggleGroup, rovingFocus, disabled, children: rovingFocus ? /* @__PURE__ */ jsx(
105
+ RovingFocusGroup.Root,
106
+ {
107
+ asChild: true,
108
+ ...rovingFocusGroupScope,
109
+ orientation,
109
110
  dir: direction,
110
- ...toggleGroupProps
111
- };
112
- return /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupContext, {
113
- scope: __scopeToggleGroup,
114
- rovingFocus: rovingFocus,
115
- disabled: disabled
116
- }, rovingFocus ? /*#__PURE__*/ $jFibJ$react.createElement($jFibJ$Root, $jFibJ$babelruntimehelpersesmextends({
117
- asChild: true
118
- }, rovingFocusGroupScope, {
119
- orientation: orientation,
120
- dir: direction,
121
- loop: loop
122
- }), /*#__PURE__*/ $jFibJ$react.createElement($jFibJ$Primitive.div, $jFibJ$babelruntimehelpersesmextends({}, commonProps, {
123
- ref: forwardedRef
124
- }))) : /*#__PURE__*/ $jFibJ$react.createElement($jFibJ$Primitive.div, $jFibJ$babelruntimehelpersesmextends({}, commonProps, {
125
- ref: forwardedRef
126
- })));
127
- });
128
- /* -------------------------------------------------------------------------------------------------
129
- * ToggleGroupItem
130
- * -----------------------------------------------------------------------------------------------*/ const $6c1fd9e6a8969628$var$ITEM_NAME = 'ToggleGroupItem';
131
- const $6c1fd9e6a8969628$export$b453109e13abe10b = /*#__PURE__*/ $jFibJ$react.forwardRef((props, forwardedRef)=>{
132
- const valueContext = $6c1fd9e6a8969628$var$useToggleGroupValueContext($6c1fd9e6a8969628$var$ITEM_NAME, props.__scopeToggleGroup);
133
- const context = $6c1fd9e6a8969628$var$useToggleGroupContext($6c1fd9e6a8969628$var$ITEM_NAME, props.__scopeToggleGroup);
134
- const rovingFocusGroupScope = $6c1fd9e6a8969628$var$useRovingFocusGroupScope(props.__scopeToggleGroup);
111
+ loop,
112
+ children: /* @__PURE__ */ jsx(Primitive.div, { ...commonProps, ref: forwardedRef })
113
+ }
114
+ ) : /* @__PURE__ */ jsx(Primitive.div, { ...commonProps, ref: forwardedRef }) });
115
+ }
116
+ );
117
+ var ITEM_NAME = "ToggleGroupItem";
118
+ var ToggleGroupItem = React.forwardRef(
119
+ (props, forwardedRef) => {
120
+ const valueContext = useToggleGroupValueContext(ITEM_NAME, props.__scopeToggleGroup);
121
+ const context = useToggleGroupContext(ITEM_NAME, props.__scopeToggleGroup);
122
+ const rovingFocusGroupScope = useRovingFocusGroupScope(props.__scopeToggleGroup);
135
123
  const pressed = valueContext.value.includes(props.value);
136
124
  const disabled = context.disabled || props.disabled;
137
- const commonProps = {
138
- ...props,
139
- pressed: pressed,
140
- disabled: disabled
141
- };
142
- const ref = $jFibJ$react.useRef(null);
143
- return context.rovingFocus ? /*#__PURE__*/ $jFibJ$react.createElement($jFibJ$Item, $jFibJ$babelruntimehelpersesmextends({
144
- asChild: true
145
- }, rovingFocusGroupScope, {
125
+ const commonProps = { ...props, pressed, disabled };
126
+ const ref = React.useRef(null);
127
+ return context.rovingFocus ? /* @__PURE__ */ jsx(
128
+ RovingFocusGroup.Item,
129
+ {
130
+ asChild: true,
131
+ ...rovingFocusGroupScope,
146
132
  focusable: !disabled,
147
133
  active: pressed,
148
- ref: ref
149
- }), /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupItemImpl, $jFibJ$babelruntimehelpersesmextends({}, commonProps, {
150
- ref: forwardedRef
151
- }))) : /*#__PURE__*/ $jFibJ$react.createElement($6c1fd9e6a8969628$var$ToggleGroupItemImpl, $jFibJ$babelruntimehelpersesmextends({}, commonProps, {
152
- ref: forwardedRef
153
- }));
154
- });
155
- /*#__PURE__*/ Object.assign($6c1fd9e6a8969628$export$b453109e13abe10b, {
156
- displayName: $6c1fd9e6a8969628$var$ITEM_NAME
157
- });
158
- /* -----------------------------------------------------------------------------------------------*/ const $6c1fd9e6a8969628$var$ToggleGroupItemImpl = /*#__PURE__*/ $jFibJ$react.forwardRef((props, forwardedRef)=>{
159
- const { __scopeToggleGroup: __scopeToggleGroup , value: value , ...itemProps } = props;
160
- const valueContext = $6c1fd9e6a8969628$var$useToggleGroupValueContext($6c1fd9e6a8969628$var$ITEM_NAME, __scopeToggleGroup);
161
- const singleProps = {
162
- role: 'radio',
163
- 'aria-checked': props.pressed,
164
- 'aria-pressed': undefined
165
- };
166
- const typeProps = valueContext.type === 'single' ? singleProps : undefined;
167
- return /*#__PURE__*/ $jFibJ$react.createElement($jFibJ$Toggle, $jFibJ$babelruntimehelpersesmextends({}, typeProps, itemProps, {
134
+ ref,
135
+ children: /* @__PURE__ */ jsx(ToggleGroupItemImpl, { ...commonProps, ref: forwardedRef })
136
+ }
137
+ ) : /* @__PURE__ */ jsx(ToggleGroupItemImpl, { ...commonProps, ref: forwardedRef });
138
+ }
139
+ );
140
+ ToggleGroupItem.displayName = ITEM_NAME;
141
+ var ToggleGroupItemImpl = React.forwardRef(
142
+ (props, forwardedRef) => {
143
+ const { __scopeToggleGroup, value, ...itemProps } = props;
144
+ const valueContext = useToggleGroupValueContext(ITEM_NAME, __scopeToggleGroup);
145
+ const singleProps = { role: "radio", "aria-checked": props.pressed, "aria-pressed": void 0 };
146
+ const typeProps = valueContext.type === "single" ? singleProps : void 0;
147
+ return /* @__PURE__ */ jsx(
148
+ Toggle,
149
+ {
150
+ ...typeProps,
151
+ ...itemProps,
168
152
  ref: forwardedRef,
169
- onPressedChange: (pressed)=>{
170
- if (pressed) valueContext.onItemActivate(value);
171
- else valueContext.onItemDeactivate(value);
153
+ onPressedChange: (pressed) => {
154
+ if (pressed) {
155
+ valueContext.onItemActivate(value);
156
+ } else {
157
+ valueContext.onItemDeactivate(value);
158
+ }
172
159
  }
173
- }));
174
- });
175
- /* -----------------------------------------------------------------------------------------------*/ const $6c1fd9e6a8969628$export$be92b6f5f03c0fe9 = $6c1fd9e6a8969628$export$af3ec21f6cfb5e30;
176
- const $6c1fd9e6a8969628$export$6d08773d2e66f8f2 = $6c1fd9e6a8969628$export$b453109e13abe10b;
177
-
178
-
179
-
180
-
181
- export {$6c1fd9e6a8969628$export$d1c7c4bcd9f26dd4 as createToggleGroupScope, $6c1fd9e6a8969628$export$af3ec21f6cfb5e30 as ToggleGroup, $6c1fd9e6a8969628$export$b453109e13abe10b as ToggleGroupItem, $6c1fd9e6a8969628$export$be92b6f5f03c0fe9 as Root, $6c1fd9e6a8969628$export$6d08773d2e66f8f2 as Item};
160
+ }
161
+ );
162
+ }
163
+ );
164
+ var Root2 = ToggleGroup;
165
+ var Item2 = ToggleGroupItem;
166
+ export {
167
+ Item2 as Item,
168
+ Root2 as Root,
169
+ ToggleGroup,
170
+ ToggleGroupItem,
171
+ createToggleGroupScope
172
+ };
182
173
  //# sourceMappingURL=index.mjs.map
@@ -1 +1,7 @@
1
- {"mappings":"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","sources":["packages/react/toggle-group/src/index.ts","packages/react/toggle-group/src/ToggleGroup.tsx"],"sourcesContent":["export {\n createToggleGroupScope,\n //\n ToggleGroup,\n ToggleGroupItem,\n //\n Root,\n Item,\n} from './ToggleGroup';\nexport type {\n ToggleGroupSingleProps,\n ToggleGroupMultipleProps,\n ToggleGroupItemProps,\n} from './ToggleGroup';\n","import React from 'react';\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 { Toggle } from '@radix-ui/react-toggle';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useDirection } from '@radix-ui/react-direction';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst TOGGLE_GROUP_NAME = 'ToggleGroup';\n\ntype ScopedProps<P> = P & { __scopeToggleGroup?: Scope };\nconst [createToggleGroupContext, createToggleGroupScope] = createContextScope(TOGGLE_GROUP_NAME, [\n createRovingFocusGroupScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\n\ntype ToggleGroupElement = ToggleGroupImplSingleElement | ToggleGroupImplMultipleElement;\ninterface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {\n type: 'single';\n}\ninterface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {\n type: 'multiple';\n}\n\nconst ToggleGroup = React.forwardRef<\n ToggleGroupElement,\n ToggleGroupSingleProps | ToggleGroupMultipleProps\n>((props, forwardedRef) => {\n const { type, ...toggleGroupProps } = props;\n\n if (type === 'single') {\n const singleProps = toggleGroupProps as ToggleGroupImplSingleProps;\n return <ToggleGroupImplSingle {...singleProps} ref={forwardedRef} />;\n }\n\n if (type === 'multiple') {\n const multipleProps = toggleGroupProps as ToggleGroupImplMultipleProps;\n return <ToggleGroupImplMultiple {...multipleProps} ref={forwardedRef} />;\n }\n\n throw new Error(`Missing prop \\`type\\` expected on \\`${TOGGLE_GROUP_NAME}\\``);\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupValueContextValue = {\n type: 'single' | 'multiple';\n value: string[];\n onItemActivate(value: string): void;\n onItemDeactivate(value: string): void;\n};\n\nconst [ToggleGroupValueProvider, useToggleGroupValueContext] =\n createToggleGroupContext<ToggleGroupValueContextValue>(TOGGLE_GROUP_NAME);\n\ntype ToggleGroupImplSingleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplSingleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the item that is pressed.\n */\n value?: string;\n /**\n * The value of the item that is pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string;\n /**\n * The callback that fires when the value of the toggle group changes.\n */\n onValueChange?(value: string): void;\n}\n\nconst ToggleGroupImplSingle = React.forwardRef<\n ToggleGroupImplSingleElement,\n ToggleGroupImplSingleProps\n>((props: ScopedProps<ToggleGroupImplSingleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupSingleProps\n } = props;\n\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"single\"\n value={value ? [value] : []}\n onItemActivate={setValue}\n onItemDeactivate={React.useCallback(() => setValue(''), [setValue])}\n >\n <ToggleGroupImpl {...toggleGroupSingleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\ntype ToggleGroupImplMultipleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplMultipleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the items that are pressed.\n */\n value?: string[];\n /**\n * The value of the items that are pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string[];\n /**\n * The callback that fires when the state of the toggle group changes.\n */\n onValueChange?(value: string[]): void;\n}\n\nconst ToggleGroupImplMultiple = React.forwardRef<\n ToggleGroupImplMultipleElement,\n ToggleGroupImplMultipleProps\n>((props: ScopedProps<ToggleGroupImplMultipleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupMultipleProps\n } = props;\n\n const [value = [], setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n const handleButtonActivate = React.useCallback(\n (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n\n const handleButtonDeactivate = React.useCallback(\n (itemValue: string) =>\n setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n [setValue]\n );\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"multiple\"\n value={value}\n onItemActivate={handleButtonActivate}\n onItemDeactivate={handleButtonDeactivate}\n >\n <ToggleGroupImpl {...toggleGroupMultipleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupContextValue = { rovingFocus: boolean; disabled: boolean };\n\nconst [ToggleGroupContext, useToggleGroupContext] =\n createToggleGroupContext<ToggleGroupContextValue>(TOGGLE_GROUP_NAME);\n\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype ToggleGroupImplElement = React.ElementRef<typeof Primitive.div>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface ToggleGroupImplProps extends PrimitiveDivProps {\n /**\n * Whether the group is disabled from user interaction.\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * Whether the group should maintain roving focus of its buttons.\n * @defaultValue true\n */\n rovingFocus?: boolean;\n loop?: RovingFocusGroupProps['loop'];\n orientation?: RovingFocusGroupProps['orientation'];\n dir?: RovingFocusGroupProps['dir'];\n}\n\nconst ToggleGroupImpl = React.forwardRef<ToggleGroupImplElement, ToggleGroupImplProps>(\n (props: ScopedProps<ToggleGroupImplProps>, forwardedRef) => {\n const {\n __scopeToggleGroup,\n disabled = false,\n rovingFocus = true,\n orientation,\n dir,\n loop = true,\n ...toggleGroupProps\n } = props;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeToggleGroup);\n const direction = useDirection(dir);\n const commonProps = { role: 'group', dir: direction, ...toggleGroupProps };\n return (\n <ToggleGroupContext scope={__scopeToggleGroup} rovingFocus={rovingFocus} disabled={disabled}>\n {rovingFocus ? (\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Root>\n ) : (\n <Primitive.div {...commonProps} ref={forwardedRef} />\n )}\n </ToggleGroupContext>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'ToggleGroupItem';\n\ntype ToggleGroupItemElement = ToggleGroupItemImplElement;\ninterface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {}\n\nconst ToggleGroupItem = React.forwardRef<ToggleGroupItemElement, ToggleGroupItemProps>(\n (props: ScopedProps<ToggleGroupItemProps>, forwardedRef) => {\n const valueContext = useToggleGroupValueContext(ITEM_NAME, props.__scopeToggleGroup);\n const context = useToggleGroupContext(ITEM_NAME, props.__scopeToggleGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(props.__scopeToggleGroup);\n const pressed = valueContext.value.includes(props.value);\n const disabled = context.disabled || props.disabled;\n const commonProps = { ...props, pressed, disabled };\n const ref = React.useRef<HTMLDivElement>(null);\n return context.rovingFocus ? (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={pressed}\n ref={ref}\n >\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Item>\n ) : (\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n );\n }\n);\n\nToggleGroupItem.displayName = ITEM_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupItemImplElement = React.ElementRef<typeof Toggle>;\ntype ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;\ninterface ToggleGroupItemImplProps extends Omit<ToggleProps, 'defaultPressed' | 'onPressedChange'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: string;\n}\n\nconst ToggleGroupItemImpl = React.forwardRef<ToggleGroupItemImplElement, ToggleGroupItemImplProps>(\n (props: ScopedProps<ToggleGroupItemImplProps>, forwardedRef) => {\n const { __scopeToggleGroup, value, ...itemProps } = props;\n const valueContext = useToggleGroupValueContext(ITEM_NAME, __scopeToggleGroup);\n const singleProps = { role: 'radio', 'aria-checked': props.pressed, 'aria-pressed': undefined };\n const typeProps = valueContext.type === 'single' ? singleProps : undefined;\n return (\n <Toggle\n {...typeProps}\n {...itemProps}\n ref={forwardedRef}\n onPressedChange={(pressed) => {\n if (pressed) {\n valueContext.onItemActivate(value);\n } else {\n valueContext.onItemDeactivate(value);\n }\n }}\n />\n );\n }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = ToggleGroup;\nconst Item = ToggleGroupItem;\n\nexport {\n createToggleGroupScope,\n //\n ToggleGroup,\n ToggleGroupItem,\n //\n Root,\n Item,\n};\nexport type { ToggleGroupSingleProps, ToggleGroupMultipleProps, ToggleGroupItemProps };\n"],"names":["createToggleGroupScope","ToggleGroup","ToggleGroupItem","Root","Item","React","createContextScope","Primitive","RovingFocusGroup","createRovingFocusGroupScope","Toggle","useControllableState","useDirection","TOGGLE_GROUP_NAME","createToggleGroupContext","useRovingFocusGroupScope","forwardRef","props","forwardedRef","type","toggleGroupProps","singleProps","multipleProps","Error","ToggleGroupValueProvider","useToggleGroupValueContext","ToggleGroupImplSingle","value","valueProp","defaultValue","onValueChange","toggleGroupSingleProps","setValue","prop","defaultProp","onChange","__scopeToggleGroup","useCallback","ToggleGroupImplMultiple","toggleGroupMultipleProps","handleButtonActivate","itemValue","prevValue","handleButtonDeactivate","filter","ToggleGroupContext","useToggleGroupContext","ToggleGroupImpl","disabled","rovingFocus","orientation","dir","loop","rovingFocusGroupScope","direction","commonProps","role","ITEM_NAME","valueContext","context","pressed","includes","ref","useRef","ToggleGroupItemImpl","itemProps","undefined","typeProps","onItemActivate","onItemDeactivate"],"version":3,"file":"index.mjs.map"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/ToggleGroup.tsx"],
4
+ "sourcesContent": ["import React from 'react';\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 { Toggle } from '@radix-ui/react-toggle';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useDirection } from '@radix-ui/react-direction';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroup\n * -----------------------------------------------------------------------------------------------*/\n\nconst TOGGLE_GROUP_NAME = 'ToggleGroup';\n\ntype ScopedProps<P> = P & { __scopeToggleGroup?: Scope };\nconst [createToggleGroupContext, createToggleGroupScope] = createContextScope(TOGGLE_GROUP_NAME, [\n createRovingFocusGroupScope,\n]);\nconst useRovingFocusGroupScope = createRovingFocusGroupScope();\n\ntype ToggleGroupElement = ToggleGroupImplSingleElement | ToggleGroupImplMultipleElement;\ninterface ToggleGroupSingleProps extends ToggleGroupImplSingleProps {\n type: 'single';\n}\ninterface ToggleGroupMultipleProps extends ToggleGroupImplMultipleProps {\n type: 'multiple';\n}\n\nconst ToggleGroup = React.forwardRef<\n ToggleGroupElement,\n ToggleGroupSingleProps | ToggleGroupMultipleProps\n>((props, forwardedRef) => {\n const { type, ...toggleGroupProps } = props;\n\n if (type === 'single') {\n const singleProps = toggleGroupProps as ToggleGroupImplSingleProps;\n return <ToggleGroupImplSingle {...singleProps} ref={forwardedRef} />;\n }\n\n if (type === 'multiple') {\n const multipleProps = toggleGroupProps as ToggleGroupImplMultipleProps;\n return <ToggleGroupImplMultiple {...multipleProps} ref={forwardedRef} />;\n }\n\n throw new Error(`Missing prop \\`type\\` expected on \\`${TOGGLE_GROUP_NAME}\\``);\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupValueContextValue = {\n type: 'single' | 'multiple';\n value: string[];\n onItemActivate(value: string): void;\n onItemDeactivate(value: string): void;\n};\n\nconst [ToggleGroupValueProvider, useToggleGroupValueContext] =\n createToggleGroupContext<ToggleGroupValueContextValue>(TOGGLE_GROUP_NAME);\n\ntype ToggleGroupImplSingleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplSingleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the item that is pressed.\n */\n value?: string;\n /**\n * The value of the item that is pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string;\n /**\n * The callback that fires when the value of the toggle group changes.\n */\n onValueChange?(value: string): void;\n}\n\nconst ToggleGroupImplSingle = React.forwardRef<\n ToggleGroupImplSingleElement,\n ToggleGroupImplSingleProps\n>((props: ScopedProps<ToggleGroupImplSingleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupSingleProps\n } = props;\n\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"single\"\n value={value ? [value] : []}\n onItemActivate={setValue}\n onItemDeactivate={React.useCallback(() => setValue(''), [setValue])}\n >\n <ToggleGroupImpl {...toggleGroupSingleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\ntype ToggleGroupImplMultipleElement = ToggleGroupImplElement;\ninterface ToggleGroupImplMultipleProps extends ToggleGroupImplProps {\n /**\n * The controlled stateful value of the items that are pressed.\n */\n value?: string[];\n /**\n * The value of the items that are pressed when initially rendered. Use\n * `defaultValue` if you do not need to control the state of a toggle group.\n */\n defaultValue?: string[];\n /**\n * The callback that fires when the state of the toggle group changes.\n */\n onValueChange?(value: string[]): void;\n}\n\nconst ToggleGroupImplMultiple = React.forwardRef<\n ToggleGroupImplMultipleElement,\n ToggleGroupImplMultipleProps\n>((props: ScopedProps<ToggleGroupImplMultipleProps>, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {},\n ...toggleGroupMultipleProps\n } = props;\n\n const [value = [], setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n const handleButtonActivate = React.useCallback(\n (itemValue: string) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n\n const handleButtonDeactivate = React.useCallback(\n (itemValue: string) =>\n setValue((prevValue = []) => prevValue.filter((value) => value !== itemValue)),\n [setValue]\n );\n\n return (\n <ToggleGroupValueProvider\n scope={props.__scopeToggleGroup}\n type=\"multiple\"\n value={value}\n onItemActivate={handleButtonActivate}\n onItemDeactivate={handleButtonDeactivate}\n >\n <ToggleGroupImpl {...toggleGroupMultipleProps} ref={forwardedRef} />\n </ToggleGroupValueProvider>\n );\n});\n\nToggleGroup.displayName = TOGGLE_GROUP_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupContextValue = { rovingFocus: boolean; disabled: boolean };\n\nconst [ToggleGroupContext, useToggleGroupContext] =\n createToggleGroupContext<ToggleGroupContextValue>(TOGGLE_GROUP_NAME);\n\ntype RovingFocusGroupProps = Radix.ComponentPropsWithoutRef<typeof RovingFocusGroup.Root>;\ntype ToggleGroupImplElement = React.ElementRef<typeof Primitive.div>;\ntype PrimitiveDivProps = Radix.ComponentPropsWithoutRef<typeof Primitive.div>;\ninterface ToggleGroupImplProps extends PrimitiveDivProps {\n /**\n * Whether the group is disabled from user interaction.\n * @defaultValue false\n */\n disabled?: boolean;\n /**\n * Whether the group should maintain roving focus of its buttons.\n * @defaultValue true\n */\n rovingFocus?: boolean;\n loop?: RovingFocusGroupProps['loop'];\n orientation?: RovingFocusGroupProps['orientation'];\n dir?: RovingFocusGroupProps['dir'];\n}\n\nconst ToggleGroupImpl = React.forwardRef<ToggleGroupImplElement, ToggleGroupImplProps>(\n (props: ScopedProps<ToggleGroupImplProps>, forwardedRef) => {\n const {\n __scopeToggleGroup,\n disabled = false,\n rovingFocus = true,\n orientation,\n dir,\n loop = true,\n ...toggleGroupProps\n } = props;\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeToggleGroup);\n const direction = useDirection(dir);\n const commonProps = { role: 'group', dir: direction, ...toggleGroupProps };\n return (\n <ToggleGroupContext scope={__scopeToggleGroup} rovingFocus={rovingFocus} disabled={disabled}>\n {rovingFocus ? (\n <RovingFocusGroup.Root\n asChild\n {...rovingFocusGroupScope}\n orientation={orientation}\n dir={direction}\n loop={loop}\n >\n <Primitive.div {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Root>\n ) : (\n <Primitive.div {...commonProps} ref={forwardedRef} />\n )}\n </ToggleGroupContext>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * ToggleGroupItem\n * -----------------------------------------------------------------------------------------------*/\n\nconst ITEM_NAME = 'ToggleGroupItem';\n\ntype ToggleGroupItemElement = ToggleGroupItemImplElement;\ninterface ToggleGroupItemProps extends Omit<ToggleGroupItemImplProps, 'pressed'> {}\n\nconst ToggleGroupItem = React.forwardRef<ToggleGroupItemElement, ToggleGroupItemProps>(\n (props: ScopedProps<ToggleGroupItemProps>, forwardedRef) => {\n const valueContext = useToggleGroupValueContext(ITEM_NAME, props.__scopeToggleGroup);\n const context = useToggleGroupContext(ITEM_NAME, props.__scopeToggleGroup);\n const rovingFocusGroupScope = useRovingFocusGroupScope(props.__scopeToggleGroup);\n const pressed = valueContext.value.includes(props.value);\n const disabled = context.disabled || props.disabled;\n const commonProps = { ...props, pressed, disabled };\n const ref = React.useRef<HTMLDivElement>(null);\n return context.rovingFocus ? (\n <RovingFocusGroup.Item\n asChild\n {...rovingFocusGroupScope}\n focusable={!disabled}\n active={pressed}\n ref={ref}\n >\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n </RovingFocusGroup.Item>\n ) : (\n <ToggleGroupItemImpl {...commonProps} ref={forwardedRef} />\n );\n }\n);\n\nToggleGroupItem.displayName = ITEM_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype ToggleGroupItemImplElement = React.ElementRef<typeof Toggle>;\ntype ToggleProps = Radix.ComponentPropsWithoutRef<typeof Toggle>;\ninterface ToggleGroupItemImplProps extends Omit<ToggleProps, 'defaultPressed' | 'onPressedChange'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: string;\n}\n\nconst ToggleGroupItemImpl = React.forwardRef<ToggleGroupItemImplElement, ToggleGroupItemImplProps>(\n (props: ScopedProps<ToggleGroupItemImplProps>, forwardedRef) => {\n const { __scopeToggleGroup, value, ...itemProps } = props;\n const valueContext = useToggleGroupValueContext(ITEM_NAME, __scopeToggleGroup);\n const singleProps = { role: 'radio', 'aria-checked': props.pressed, 'aria-pressed': undefined };\n const typeProps = valueContext.type === 'single' ? singleProps : undefined;\n return (\n <Toggle\n {...typeProps}\n {...itemProps}\n ref={forwardedRef}\n onPressedChange={(pressed) => {\n if (pressed) {\n valueContext.onItemActivate(value);\n } else {\n valueContext.onItemDeactivate(value);\n }\n }}\n />\n );\n }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = ToggleGroup;\nconst Item = ToggleGroupItem;\n\nexport {\n createToggleGroupScope,\n //\n ToggleGroup,\n ToggleGroupItem,\n //\n Root,\n Item,\n};\nexport type { ToggleGroupSingleProps, ToggleGroupMultipleProps, ToggleGroupItemProps };\n"],
5
+ "mappings": "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",
6
+ "names": ["value", "Root", "Item"]
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@radix-ui/react-toggle-group",
3
- "version": "1.0.5-rc.8",
3
+ "version": "1.1.0-rc.1",
4
4
  "license": "MIT",
5
5
  "exports": {
6
6
  ".": {
@@ -28,14 +28,13 @@
28
28
  "version": "yarn version"
29
29
  },
30
30
  "dependencies": {
31
- "@babel/runtime": "^7.13.10",
32
- "@radix-ui/primitive": "1.0.1",
33
- "@radix-ui/react-context": "1.0.1",
34
- "@radix-ui/react-direction": "1.0.1",
35
- "@radix-ui/react-primitive": "1.0.3",
36
- "@radix-ui/react-roving-focus": "1.0.5-rc.8",
37
- "@radix-ui/react-toggle": "1.0.3",
38
- "@radix-ui/react-use-controllable-state": "1.0.1"
31
+ "@radix-ui/primitive": "1.1.0-rc.1",
32
+ "@radix-ui/react-context": "1.1.0-rc.1",
33
+ "@radix-ui/react-direction": "1.1.0-rc.1",
34
+ "@radix-ui/react-primitive": "1.1.0-rc.1",
35
+ "@radix-ui/react-roving-focus": "1.1.0-rc.1",
36
+ "@radix-ui/react-toggle": "1.1.0-rc.1",
37
+ "@radix-ui/react-use-controllable-state": "1.1.0-rc.1"
39
38
  },
40
39
  "peerDependencies": {
41
40
  "@types/react": "*",
@@ -1 +0,0 @@
1
- {"mappings":";;;;;AAmBA,OAAA,6FAEE,CAAC;AAIH,uCAAiC,SAAQ,0BAA0B;IACjE,IAAI,EAAE,QAAQ,CAAC;CAChB;AACD,yCAAmC,SAAQ,4BAA4B;IACrE,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,OAAA,MAAM,uIAiBJ,CAAC;AAiBH,oCAAqC,SAAQ,oBAAoB;IAC/D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAiCD,sCAAuC,SAAQ,oBAAoB;IACjE;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;OAEG;IACH,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACvC;AAoDD,6BAA6B,MAAM,wBAAwB,CAAC,OAAO,iBAAiB,IAAI,CAAC,CAAC;AAE1F,yBAAyB,MAAM,wBAAwB,CAAC,OAAO,UAAU,GAAG,CAAC,CAAC;AAC9E,8BAA+B,SAAQ,iBAAiB;IACtD;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;IACnD,GAAG,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC;CACpC;AA2CD,qCAA+B,SAAQ,IAAI,CAAC,wBAAwB,EAAE,SAAS,CAAC;CAAG;AAEnF,OAAA,MAAM,+GAuBL,CAAC;AAOF,mBAAmB,MAAM,wBAAwB,CAAC,aAAa,CAAC,CAAC;AACjE,kCAAmC,SAAQ,IAAI,CAAC,WAAW,EAAE,gBAAgB,GAAG,iBAAiB,CAAC;IAChG;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AA2BD,OAAA,MAAM,gIAAkB,CAAC;AACzB,OAAA,MAAM,oGAAsB,CAAC","sources":["packages/react/toggle-group/src/packages/react/toggle-group/src/ToggleGroup.tsx","packages/react/toggle-group/src/packages/react/toggle-group/src/index.ts","packages/react/toggle-group/src/index.ts"],"sourcesContent":[null,null,"export {\n createToggleGroupScope,\n //\n ToggleGroup,\n ToggleGroupItem,\n //\n Root,\n Item,\n} from './ToggleGroup';\nexport type {\n ToggleGroupSingleProps,\n ToggleGroupMultipleProps,\n ToggleGroupItemProps,\n} from './ToggleGroup';\n"],"names":[],"version":3,"file":"index.d.ts.map"}