@hanzogui/toggle-group 3.0.1 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/package.json +20 -19
  2. package/src/Toggle.tsx +3 -3
  3. package/src/ToggleGroup.tsx +6 -6
  4. package/types/Toggle.d.ts +18 -18
  5. package/types/ToggleGroup.d.ts +41 -41
  6. package/types/context.d.ts +1 -1
  7. package/types/types.d.ts +1 -1
  8. package/dist/cjs/Toggle.cjs +0 -145
  9. package/dist/cjs/Toggle.native.js +0 -154
  10. package/dist/cjs/Toggle.native.js.map +0 -1
  11. package/dist/cjs/ToggleGroup.cjs +0 -229
  12. package/dist/cjs/ToggleGroup.native.js +0 -252
  13. package/dist/cjs/ToggleGroup.native.js.map +0 -1
  14. package/dist/cjs/context.cjs +0 -32
  15. package/dist/cjs/context.native.js +0 -37
  16. package/dist/cjs/context.native.js.map +0 -1
  17. package/dist/cjs/index.cjs +0 -28
  18. package/dist/cjs/index.native.js +0 -31
  19. package/dist/cjs/index.native.js.map +0 -1
  20. package/dist/cjs/types.cjs +0 -16
  21. package/dist/cjs/types.native.js +0 -19
  22. package/dist/cjs/types.native.js.map +0 -1
  23. package/dist/esm/Toggle.mjs +0 -110
  24. package/dist/esm/Toggle.mjs.map +0 -1
  25. package/dist/esm/Toggle.native.js +0 -116
  26. package/dist/esm/Toggle.native.js.map +0 -1
  27. package/dist/esm/ToggleGroup.mjs +0 -195
  28. package/dist/esm/ToggleGroup.mjs.map +0 -1
  29. package/dist/esm/ToggleGroup.native.js +0 -215
  30. package/dist/esm/ToggleGroup.native.js.map +0 -1
  31. package/dist/esm/context.mjs +0 -8
  32. package/dist/esm/context.mjs.map +0 -1
  33. package/dist/esm/context.native.js +0 -10
  34. package/dist/esm/context.native.js.map +0 -1
  35. package/dist/esm/index.js +0 -4
  36. package/dist/esm/index.js.map +0 -1
  37. package/dist/esm/index.mjs +0 -4
  38. package/dist/esm/index.mjs.map +0 -1
  39. package/dist/esm/index.native.js +0 -4
  40. package/dist/esm/index.native.js.map +0 -1
  41. package/dist/esm/types.mjs +0 -2
  42. package/dist/esm/types.mjs.map +0 -1
  43. package/dist/esm/types.native.js +0 -2
  44. package/dist/esm/types.native.js.map +0 -1
  45. package/dist/jsx/Toggle.mjs +0 -110
  46. package/dist/jsx/Toggle.mjs.map +0 -1
  47. package/dist/jsx/Toggle.native.js +0 -154
  48. package/dist/jsx/Toggle.native.js.map +0 -1
  49. package/dist/jsx/ToggleGroup.mjs +0 -195
  50. package/dist/jsx/ToggleGroup.mjs.map +0 -1
  51. package/dist/jsx/ToggleGroup.native.js +0 -252
  52. package/dist/jsx/ToggleGroup.native.js.map +0 -1
  53. package/dist/jsx/context.mjs +0 -8
  54. package/dist/jsx/context.mjs.map +0 -1
  55. package/dist/jsx/context.native.js +0 -37
  56. package/dist/jsx/context.native.js.map +0 -1
  57. package/dist/jsx/index.js +0 -4
  58. package/dist/jsx/index.js.map +0 -1
  59. package/dist/jsx/index.mjs +0 -4
  60. package/dist/jsx/index.mjs.map +0 -1
  61. package/dist/jsx/index.native.js +0 -31
  62. package/dist/jsx/index.native.js.map +0 -1
  63. package/dist/jsx/types.mjs +0 -2
  64. package/dist/jsx/types.mjs.map +0 -1
  65. package/dist/jsx/types.native.js +0 -19
  66. package/dist/jsx/types.native.js.map +0 -1
@@ -1,154 +0,0 @@
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
- __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __export = (target, all) => {
10
- for (var name in all) __defProp(target, name, {
11
- get: all[name],
12
- enumerable: !0
13
- });
14
- },
15
- __copyProps = (to, from, except, desc) => {
16
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
17
- get: () => from[key],
18
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
- });
20
- return to;
21
- };
22
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
- // If the importer is in node compatibility mode or this is not an ESM
24
- // file that has been converted to a CommonJS file using a Babel-
25
- // compatible transform (i.e. "__esModule" has not been set), then set
26
- // "default" to the CommonJS "module.exports" for node compatibility.
27
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
- value: mod,
29
- enumerable: !0
30
- }) : target, mod)),
31
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
- value: !0
33
- }), mod);
34
- var Toggle_exports = {};
35
- __export(Toggle_exports, {
36
- Toggle: () => Toggle,
37
- ToggleFrame: () => ToggleFrame
38
- });
39
- module.exports = __toCommonJS(Toggle_exports);
40
- var import_jsx_runtime = require("react/jsx-runtime"),
41
- import_gui_helpers = require("@hanzogui/helpers"),
42
- import_gui_use_controllable_state = require("@hanzogui/use-controllable-state"),
43
- import_gui_web = require("@hanzogui/web"),
44
- React = __toESM(require("react"), 1),
45
- import_context = require("./context.native.js"),
46
- NAME = "Toggle",
47
- ToggleFrame = (0, import_gui_web.styled)(import_gui_web.View, {
48
- name: NAME,
49
- render: "button",
50
- context: import_context.context,
51
- variants: {
52
- unstyled: {
53
- false: {
54
- size: "$true",
55
- alignItems: "center",
56
- justifyContent: "center",
57
- display: "flex",
58
- backgroundColor: "$background",
59
- borderColor: "$borderColor",
60
- borderWidth: 1,
61
- margin: -1,
62
- hoverStyle: {
63
- backgroundColor: "$backgroundHover",
64
- borderColor: "$borderColorHover"
65
- },
66
- pressStyle: {
67
- backgroundColor: "$backgroundPress",
68
- borderColor: "$borderColorPress"
69
- },
70
- focusVisibleStyle: {
71
- outlineColor: "$outlineColor",
72
- outlineWidth: 2,
73
- outlineStyle: "solid",
74
- zIndex: 10
75
- }
76
- }
77
- },
78
- size: {
79
- "...size": function (val, param) {
80
- var {
81
- tokens
82
- } = param;
83
- if (val) return {
84
- width: tokens.size[val],
85
- height: tokens.size[val]
86
- };
87
- },
88
- ":number": function (val) {
89
- return {
90
- width: val,
91
- height: val
92
- };
93
- }
94
- },
95
- defaultActiveStyle: {
96
- true: {
97
- backgroundColor: "$backgroundActive",
98
- hoverStyle: {
99
- backgroundColor: "$backgroundActive"
100
- },
101
- focusStyle: {
102
- backgroundColor: "$backgroundActive"
103
- }
104
- }
105
- }
106
- },
107
- defaultVariants: {
108
- unstyled: process.env.HANZO_GUI_HEADLESS === "1"
109
- }
110
- }, {
111
- accept: {
112
- activeStyle: "style"
113
- }
114
- }),
115
- Toggle = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
116
- var {
117
- active: activeProp,
118
- activeStyle,
119
- defaultActive = !1,
120
- onActiveChange,
121
- activeTheme,
122
- unstyled = !1,
123
- ...buttonProps
124
- } = props,
125
- [active = !1, setActive] = (0, import_gui_use_controllable_state.useControllableState)({
126
- prop: activeProp,
127
- onChange: onActiveChange,
128
- defaultProp: defaultActive
129
- }),
130
- _props_onPress;
131
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleFrame, {
132
- theme: activeTheme ?? null,
133
- "aria-pressed": active,
134
- "data-state": active ? "on" : "off",
135
- "data-disabled": props.disabled ? "" : void 0,
136
- unstyled,
137
- ...(active && !activeStyle && !unstyled && {
138
- defaultActiveStyle: !0
139
- }),
140
- ...(active && activeStyle && {
141
- ...activeStyle,
142
- hoverStyle: activeStyle,
143
- focusStyle: activeStyle
144
- }),
145
- ...buttonProps,
146
- ref: forwardedRef,
147
- onPress: (0, import_gui_helpers.composeEventHandlers)((_props_onPress = props.onPress) !== null && _props_onPress !== void 0 ? _props_onPress : void 0, function () {
148
- props.disabled || setActive(function (prev) {
149
- return !prev;
150
- });
151
- })
152
- });
153
- });
154
- //# sourceMappingURL=Toggle.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","Toggle_exports","__export","Toggle","ToggleFrame","module","exports","import_jsx_runtime","require","import_gui_helpers","import_gui_use_controllable_state","import_gui_web","React","__toESM","import_context","NAME","styled","View","name","render","context","variants","unstyled","false","size","alignItems","justifyContent","display","backgroundColor","borderColor","borderWidth","margin","hoverStyle","pressStyle","focusVisibleStyle","outlineColor","outlineWidth","outlineStyle","zIndex","...size","val","param","tokens","width","height",":number","defaultActiveStyle","true","focusStyle","defaultVariants","process","env","HANZO_GUI_HEADLESS","accept","activeStyle","forwardRef","props","forwardedRef","active","activeProp","defaultActive","onActiveChange","activeTheme","buttonProps","setActive","useControllableState","prop","onChange","defaultProp","_props_onPress","jsx","theme","disabled","ref","onPress","composeEventHandlers","prev"],"sources":["../../src/Toggle.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,229 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf,
6
- __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: !0
11
- });
12
- },
13
- __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
- get: () => from[key],
16
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
- });
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: !0
28
- }) : target, mod)),
29
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
- value: !0
31
- }), mod);
32
- var ToggleGroup_exports = {};
33
- __export(ToggleGroup_exports, {
34
- ToggleGroup: () => ToggleGroup
35
- });
36
- module.exports = __toCommonJS(ToggleGroup_exports);
37
- var import_gui_constants = require("@hanzogui/constants"),
38
- import_gui_focusable = require("@hanzogui/focusable"),
39
- import_gui_helpers = require("@hanzogui/helpers"),
40
- import_gui_roving_focus = require("@hanzogui/roving-focus"),
41
- import_gui_use_controllable_state = require("@hanzogui/use-controllable-state"),
42
- import_gui_use_direction = require("@hanzogui/use-direction"),
43
- import_gui_web = require("@hanzogui/web"),
44
- import_react = __toESM(require("react"), 1),
45
- import_Toggle = require("./Toggle.cjs"),
46
- import_context = require("./context.cjs"),
47
- import_jsx_runtime = require("react/jsx-runtime");
48
- const TOGGLE_GROUP_NAME = "ToggleGroup",
49
- TOGGLE_GROUP_ITEM_NAME = "ToggleGroupItem",
50
- TOGGLE_GROUP_CONTEXT = "ToggleGroup",
51
- {
52
- Provider: ToggleGroupItemProvider
53
- } = (0, import_gui_web.createStyledContext)(),
54
- {
55
- Provider: ToggleGroupContext,
56
- useStyledContext: useToggleGroupContext
57
- } = (0, import_gui_web.createStyledContext)({}),
58
- ToggleGroupItem = import_Toggle.ToggleFrame.styleable((props, forwardedRef) => {
59
- const valueContext = useToggleGroupValueContext(props.__scopeToggleGroup),
60
- context = useToggleGroupContext(props.__scopeToggleGroup),
61
- toggleContext = import_context.context.useStyledContext(props.__scopeToggleGroup),
62
- active = valueContext?.value.includes(props.value),
63
- color = props.color || toggleContext.color,
64
- disabled = context.disabled || props.disabled || !1,
65
- inner = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupItemImpl, {
66
- ref: forwardedRef,
67
- tabIndex: disabled ? -1 : 0,
68
- ...props,
69
- active,
70
- disabled
71
- });
72
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupItemProvider, {
73
- scope: props.__scopeToggleGroup,
74
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_context.context.Provider, {
75
- color,
76
- active,
77
- children: context.rovingFocus ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui_roving_focus.RovingFocusGroup.Item, {
78
- asChild: "except-style",
79
- __scopeRovingFocusGroup: props.__scopeToggleGroup || TOGGLE_GROUP_CONTEXT,
80
- focusable: !disabled,
81
- active,
82
- children: inner
83
- }) : inner
84
- })
85
- });
86
- });
87
- ToggleGroupItem.displayName = TOGGLE_GROUP_ITEM_NAME;
88
- const ToggleGroupItemImpl = import_react.default.forwardRef((props, forwardedRef) => {
89
- const {
90
- __scopeToggleGroup,
91
- value,
92
- ...itemProps
93
- } = props,
94
- valueContext = useToggleGroupValueContext(__scopeToggleGroup),
95
- singleProps = {
96
- "aria-pressed": void 0
97
- },
98
- typeProps = valueContext.type === "single" ? singleProps : void 0;
99
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Toggle.Toggle, {
100
- ...typeProps,
101
- ...itemProps,
102
- ref: forwardedRef,
103
- onActiveChange: pressed => {
104
- pressed ? valueContext.onItemActivate(value) : valueContext.onItemDeactivate(value);
105
- }
106
- });
107
- }),
108
- ToggleGroup = (0, import_gui_helpers.withStaticProperties)(import_react.default.forwardRef((props, forwardedRef) => {
109
- const {
110
- type,
111
- ...toggleGroupProps
112
- } = props;
113
- if (import_gui_constants.isWeb || import_react.default.useEffect(() => {
114
- if (props.id) return (0, import_gui_focusable.registerFocusable)(props.id, {
115
- focus: () => {}
116
- });
117
- }, [props.id]), type === "single") return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImplSingle, {
118
- ...toggleGroupProps,
119
- ref: forwardedRef
120
- });
121
- if (type === "multiple") return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImplMultiple, {
122
- ...toggleGroupProps,
123
- ref: forwardedRef
124
- });
125
- throw new Error(`Missing prop \`type\` expected on \`${TOGGLE_GROUP_NAME}\``);
126
- }), {
127
- Item: ToggleGroupItem
128
- });
129
- ToggleGroup.displayName = TOGGLE_GROUP_NAME;
130
- const {
131
- Provider: ToggleGroupValueProvider,
132
- useStyledContext: useToggleGroupValueContext
133
- } = (0, import_gui_web.createStyledContext)(),
134
- ToggleGroupImplSingle = import_react.default.forwardRef((props, forwardedRef) => {
135
- const {
136
- value: valueProp,
137
- defaultValue,
138
- onValueChange = () => {},
139
- disableDeactivation = !1,
140
- children,
141
- ...toggleGroupSingleProps
142
- } = props,
143
- [value, setValue] = (0, import_gui_use_controllable_state.useControllableState)({
144
- prop: valueProp,
145
- defaultProp: defaultValue,
146
- onChange: onValueChange
147
- });
148
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupValueProvider, {
149
- scope: props.__scopeToggleGroup,
150
- type: "single",
151
- value: value ? [value] : [],
152
- defaultValue: value,
153
- onItemActivate: setValue,
154
- onItemDeactivate: import_react.default.useCallback(() => disableDeactivation ? null : setValue(""), [setValue, disableDeactivation]),
155
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImpl, {
156
- ...toggleGroupSingleProps,
157
- ref: forwardedRef,
158
- children
159
- })
160
- });
161
- }),
162
- ToggleGroupImplMultiple = import_react.default.forwardRef((props, forwardedRef) => {
163
- const {
164
- value: valueProp,
165
- defaultValue,
166
- onValueChange = () => {},
167
- disableDeactivation,
168
- children,
169
- ...toggleGroupMultipleProps
170
- } = props,
171
- [value = [], setValue] = (0, import_gui_use_controllable_state.useControllableState)({
172
- prop: valueProp,
173
- defaultProp: defaultValue,
174
- onChange: onValueChange
175
- }),
176
- handleButtonActivate = import_react.default.useCallback(itemValue => setValue((prevValue = []) => [...prevValue, itemValue]), [setValue]),
177
- handleButtonDeactivate = import_react.default.useCallback(itemValue => setValue((prevValue = []) => prevValue.filter(value2 => value2 !== itemValue)), [setValue]);
178
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupValueProvider, {
179
- scope: props.__scopeToggleGroup,
180
- type: "multiple",
181
- value,
182
- defaultValue: value,
183
- onItemActivate: handleButtonActivate,
184
- onItemDeactivate: handleButtonDeactivate,
185
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImpl, {
186
- ...toggleGroupMultipleProps,
187
- ref: forwardedRef,
188
- children
189
- })
190
- });
191
- }),
192
- ToggleGroupFrame = (0, import_gui_web.styled)(import_gui_web.View, {
193
- name: TOGGLE_GROUP_NAME
194
- }),
195
- ToggleGroupImpl = ToggleGroupFrame.styleable((props, forwardedRef) => {
196
- const {
197
- __scopeToggleGroup,
198
- disabled = !1,
199
- orientation = "horizontal",
200
- dir,
201
- rovingFocus = !0,
202
- loop = !0,
203
- color,
204
- ...toggleGroupProps
205
- } = props,
206
- direction = (0, import_gui_use_direction.useDirection)(dir),
207
- content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupFrame, {
208
- role: "group",
209
- ref: forwardedRef,
210
- "data-disabled": disabled ? "" : void 0,
211
- ...toggleGroupProps
212
- });
213
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupContext, {
214
- scope: __scopeToggleGroup,
215
- rovingFocus,
216
- disabled,
217
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_context.context.Provider, {
218
- color,
219
- children: rovingFocus ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui_roving_focus.RovingFocusGroup, {
220
- asChild: "except-style",
221
- __scopeRovingFocusGroup: __scopeToggleGroup || TOGGLE_GROUP_CONTEXT,
222
- orientation,
223
- dir: direction,
224
- loop,
225
- children: content
226
- }) : content
227
- })
228
- });
229
- });
@@ -1,252 +0,0 @@
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
- __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __export = (target, all) => {
10
- for (var name in all) __defProp(target, name, {
11
- get: all[name],
12
- enumerable: !0
13
- });
14
- },
15
- __copyProps = (to, from, except, desc) => {
16
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
17
- get: () => from[key],
18
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
- });
20
- return to;
21
- };
22
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
- // If the importer is in node compatibility mode or this is not an ESM
24
- // file that has been converted to a CommonJS file using a Babel-
25
- // compatible transform (i.e. "__esModule" has not been set), then set
26
- // "default" to the CommonJS "module.exports" for node compatibility.
27
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
- value: mod,
29
- enumerable: !0
30
- }) : target, mod)),
31
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
- value: !0
33
- }), mod);
34
- var ToggleGroup_exports = {};
35
- __export(ToggleGroup_exports, {
36
- ToggleGroup: () => ToggleGroup
37
- });
38
- module.exports = __toCommonJS(ToggleGroup_exports);
39
- var import_jsx_runtime = require("react/jsx-runtime"),
40
- import_gui_constants = require("@hanzogui/constants"),
41
- import_gui_focusable = require("@hanzogui/focusable"),
42
- import_gui_helpers = require("@hanzogui/helpers"),
43
- import_gui_roving_focus = require("@hanzogui/roving-focus"),
44
- import_gui_use_controllable_state = require("@hanzogui/use-controllable-state"),
45
- import_gui_use_direction = require("@hanzogui/use-direction"),
46
- import_gui_web = require("@hanzogui/web"),
47
- import_react = __toESM(require("react"), 1),
48
- import_Toggle = require("./Toggle.native.js"),
49
- import_context = require("./context.native.js"),
50
- TOGGLE_GROUP_NAME = "ToggleGroup",
51
- TOGGLE_GROUP_ITEM_NAME = "ToggleGroupItem",
52
- TOGGLE_GROUP_CONTEXT = "ToggleGroup",
53
- {
54
- Provider: ToggleGroupItemProvider
55
- } = (0, import_gui_web.createStyledContext)(),
56
- {
57
- Provider: ToggleGroupContext,
58
- useStyledContext: useToggleGroupContext
59
- } = (0, import_gui_web.createStyledContext)({}),
60
- ToggleGroupItem = import_Toggle.ToggleFrame.styleable(function (props, forwardedRef) {
61
- var valueContext = useToggleGroupValueContext(props.__scopeToggleGroup),
62
- context = useToggleGroupContext(props.__scopeToggleGroup),
63
- toggleContext = import_context.context.useStyledContext(props.__scopeToggleGroup),
64
- active = valueContext?.value.includes(props.value),
65
- color = props.color || toggleContext.color,
66
- disabled = context.disabled || props.disabled || !1,
67
- inner = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupItemImpl, {
68
- ref: forwardedRef,
69
- tabIndex: disabled ? -1 : 0,
70
- ...props,
71
- active,
72
- disabled
73
- });
74
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupItemProvider, {
75
- scope: props.__scopeToggleGroup,
76
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_context.context.Provider, {
77
- color,
78
- active,
79
- children: context.rovingFocus ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui_roving_focus.RovingFocusGroup.Item, {
80
- asChild: "except-style",
81
- __scopeRovingFocusGroup: props.__scopeToggleGroup || TOGGLE_GROUP_CONTEXT,
82
- focusable: !disabled,
83
- active,
84
- children: inner
85
- }) : inner
86
- })
87
- });
88
- });
89
- ToggleGroupItem.displayName = TOGGLE_GROUP_ITEM_NAME;
90
- var ToggleGroupItemImpl = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
91
- var {
92
- __scopeToggleGroup,
93
- value,
94
- ...itemProps
95
- } = props,
96
- valueContext = useToggleGroupValueContext(__scopeToggleGroup),
97
- singleProps = {
98
- "aria-pressed": void 0
99
- },
100
- typeProps = valueContext.type === "single" ? singleProps : void 0;
101
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Toggle.Toggle, {
102
- ...typeProps,
103
- ...itemProps,
104
- ref: forwardedRef,
105
- onActiveChange: function (pressed) {
106
- pressed ? valueContext.onItemActivate(value) : valueContext.onItemDeactivate(value);
107
- }
108
- });
109
- }),
110
- ToggleGroup = (0, import_gui_helpers.withStaticProperties)(/* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
111
- var {
112
- type,
113
- ...toggleGroupProps
114
- } = props;
115
- if (import_gui_constants.isWeb || import_react.default.useEffect(function () {
116
- if (props.id) return (0, import_gui_focusable.registerFocusable)(props.id, {
117
- focus: function () {}
118
- });
119
- }, [props.id]), type === "single") {
120
- var singleProps = toggleGroupProps;
121
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImplSingle, {
122
- ...singleProps,
123
- ref: forwardedRef
124
- });
125
- }
126
- if (type === "multiple") {
127
- var multipleProps = toggleGroupProps;
128
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImplMultiple, {
129
- ...multipleProps,
130
- ref: forwardedRef
131
- });
132
- }
133
- throw new Error(`Missing prop \`type\` expected on \`${TOGGLE_GROUP_NAME}\``);
134
- }), {
135
- Item: ToggleGroupItem
136
- });
137
- ToggleGroup.displayName = TOGGLE_GROUP_NAME;
138
- var {
139
- Provider: ToggleGroupValueProvider,
140
- useStyledContext: useToggleGroupValueContext
141
- } = (0, import_gui_web.createStyledContext)(),
142
- ToggleGroupImplSingle = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
143
- var {
144
- value: valueProp,
145
- defaultValue,
146
- onValueChange = function () {},
147
- disableDeactivation = !1,
148
- children,
149
- ...toggleGroupSingleProps
150
- } = props,
151
- [value, setValue] = (0, import_gui_use_controllable_state.useControllableState)({
152
- prop: valueProp,
153
- defaultProp: defaultValue,
154
- onChange: onValueChange
155
- });
156
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupValueProvider, {
157
- scope: props.__scopeToggleGroup,
158
- type: "single",
159
- value: value ? [value] : [],
160
- defaultValue: value,
161
- onItemActivate: setValue,
162
- onItemDeactivate: import_react.default.useCallback(function () {
163
- return disableDeactivation ? null : setValue("");
164
- }, [setValue, disableDeactivation]),
165
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImpl, {
166
- ...toggleGroupSingleProps,
167
- ref: forwardedRef,
168
- children
169
- })
170
- });
171
- }),
172
- ToggleGroupImplMultiple = /* @__PURE__ */import_react.default.forwardRef(function (props, forwardedRef) {
173
- var {
174
- value: valueProp,
175
- defaultValue,
176
- onValueChange = function () {},
177
- disableDeactivation,
178
- children,
179
- ...toggleGroupMultipleProps
180
- } = props,
181
- [value = [], setValue] = (0, import_gui_use_controllable_state.useControllableState)({
182
- prop: valueProp,
183
- defaultProp: defaultValue,
184
- onChange: onValueChange
185
- }),
186
- handleButtonActivate = import_react.default.useCallback(function (itemValue) {
187
- return setValue(function () {
188
- var prevValue = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [];
189
- return [...prevValue, itemValue];
190
- });
191
- }, [setValue]),
192
- handleButtonDeactivate = import_react.default.useCallback(function (itemValue) {
193
- return setValue(function () {
194
- var prevValue = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [];
195
- return prevValue.filter(function (value2) {
196
- return value2 !== itemValue;
197
- });
198
- });
199
- }, [setValue]);
200
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupValueProvider, {
201
- scope: props.__scopeToggleGroup,
202
- type: "multiple",
203
- value,
204
- defaultValue: value,
205
- onItemActivate: handleButtonActivate,
206
- onItemDeactivate: handleButtonDeactivate,
207
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupImpl, {
208
- ...toggleGroupMultipleProps,
209
- ref: forwardedRef,
210
- children
211
- })
212
- });
213
- }),
214
- ToggleGroupFrame = (0, import_gui_web.styled)(import_gui_web.View, {
215
- name: TOGGLE_GROUP_NAME
216
- }),
217
- ToggleGroupImpl = ToggleGroupFrame.styleable(function (props, forwardedRef) {
218
- var {
219
- __scopeToggleGroup,
220
- disabled = !1,
221
- orientation = "horizontal",
222
- dir,
223
- rovingFocus = !0,
224
- loop = !0,
225
- color,
226
- ...toggleGroupProps
227
- } = props,
228
- direction = (0, import_gui_use_direction.useDirection)(dir),
229
- content = /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupFrame, {
230
- role: "group",
231
- ref: forwardedRef,
232
- "data-disabled": disabled ? "" : void 0,
233
- ...toggleGroupProps
234
- });
235
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleGroupContext, {
236
- scope: __scopeToggleGroup,
237
- rovingFocus,
238
- disabled,
239
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_context.context.Provider, {
240
- color,
241
- children: rovingFocus ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui_roving_focus.RovingFocusGroup, {
242
- asChild: "except-style",
243
- __scopeRovingFocusGroup: __scopeToggleGroup || TOGGLE_GROUP_CONTEXT,
244
- orientation,
245
- dir: direction,
246
- loop,
247
- children: content
248
- }) : content
249
- })
250
- });
251
- });
252
- //# sourceMappingURL=ToggleGroup.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","ToggleGroup_exports","__export","ToggleGroup","module","exports","import_jsx_runtime","require","import_gui_constants","import_gui_focusable","import_gui_helpers","import_gui_roving_focus","import_gui_use_controllable_state","import_gui_use_direction","import_gui_web","import_react","__toESM","import_Toggle","import_context","TOGGLE_GROUP_NAME","TOGGLE_GROUP_ITEM_NAME","TOGGLE_GROUP_CONTEXT","Provider","ToggleGroupItemProvider","createStyledContext","ToggleGroupContext","useStyledContext","useToggleGroupContext","ToggleGroupItem","ToggleFrame","styleable","props","forwardedRef","valueContext","useToggleGroupValueContext","__scopeToggleGroup","context","toggleContext","active","includes","color","disabled","inner","jsx","ToggleGroupItemImpl","ref","tabIndex","scope","children","rovingFocus","RovingFocusGroup","Item","asChild","__scopeRovingFocusGroup","focusable","displayName","default","forwardRef","itemProps","singleProps","typeProps","type","Toggle","onActiveChange","pressed","onItemActivate","onItemDeactivate","withStaticProperties","toggleGroupProps","isWeb","useEffect","id","registerFocusable","focus","ToggleGroupImplSingle","multipleProps","ToggleGroupImplMultiple","Error","ToggleGroupValueProvider","valueProp","defaultValue","onValueChange","disableDeactivation","toggleGroupSingleProps","setValue","useControllableState","prop","defaultProp","onChange","useCallback","ToggleGroupImpl","toggleGroupMultipleProps","handleButtonActivate","itemValue","prevValue","arguments","length","handleButtonDeactivate","filter","value2","ToggleGroupFrame","styled","View","name","orientation","dir","loop","direction","useDirection","content","role"],"sources":["../../src/ToggleGroup.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAA;EAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;IAAAC,KAAA;EAAA,IAAAH,GAAA;AAAA,IAAAI,mBAAA;AAAAC,QAAA,CAAAD,mBAAA;EAAAE,WAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAsB,CAAAK,mBAAA;AActB,IAAAK,kBAAM,GAAAC,OAAoB,oBACpB;EAAAC,oBAAyB,GAAAD,OACzB,uBAAuB;EAAAE,oBAQrB,GAAAF,OAAU,uBAAwB;EACxCG,kBAAA,GAAAH,OAAA,qBAEM;EAAUI,uBAAoB,GAAAJ,OAAA,0BAAwC;EAAAK,iCAC5E,GAAAL,OAA+C,oCAQzB;EAAAM,wBAAY,GAAAN,OAAA;EAAAO,cAAA,GAAAP,OAAA;EAAAQ,YAAA,GAAAC,OAAA,CAAAT,OAAA;EAAAU,aAAA,GAAAV,OAAA;EAAAW,cAAA,GAAAX,OAAA;EAAAY,iBAAA;EAAAC,sBAAA;EAAAC,oBAAA;EAAA;IAAAC,QAAA,EAAAC;EAAA,QAAAT,cAAA,CAAAU,mBAAA;EAAA;IAAAF,QAAA,EAAAG,kBAAA;IAAAC,gBAAA,EAAAC;EAAA,QAAAb,cAAA,CAAAU,mBAAA;EAAAI,eAAA,GAAAX,aAAA,CAAAY,WAAA,CAAAC,SAAA,WAAAC,KAAA,EAAAC,YAAA;IAClC,IAACC,YAAO,GAAAC,0BAAiB,CAAAH,KAAA,CAAAI,kBAAA;MAAAC,OAAA,GAAAT,qBAAA,CAAAI,KAAA,CAAAI,kBAAA;MAAAE,aAAA,GAAAnB,cAAA,CAAAkB,OAAA,CAAAV,gBAAA,CAAAK,KAAA,CAAAI,kBAAA;MAAAG,MAAA,GAAAL,YAAA,EAAAjC,KAAA,CAAAuC,QAAA,CAAAR,KAAA,CAAA/B,KAAA;MAAAwC,KAAA,GAAAT,KAAA,CAAAS,KAAA,IAAAH,aAAA,CAAAG,KAAA;MAAAC,QAAA,GAAAL,OAAA,CAAAK,QAAA,IAAAV,KAAA,CAAAU,QAAA;MAAAC,KAAA,sBAAApC,kBAAA,CAAAqC,GAAA,EAAAC,mBAAA;QACvBC,GAAA,EAAAb,YAAM;QAQJc,QAAC,EAAAL,QAAA;QAAA,GAAAV,KAAA;QAAAO,MACC;QAAKG;MACqB;IACrB,OACL,mBAAAnC,kBAAA,CAAAqC,GAAA,EAAApB,uBAAA;MAAAwB,KACA,EAAAhB,KAAA,CAAAI,kBAAA;MAAAa,QAAA,qBAAA1C,kBAAA,CAAAqC,GAAA,EAAAzB,cAAA,CAAAkB,OAAA,CAAAd,QAAA;QACFkB,KAAA;QAGFF,MACE;QAGOU,QAAA,EAAAZ,OAAA,CAAAa,WAAA,kBAAiB,IAAA3C,kBAAA,CAAAqC,GAAA,EAAAhC,uBAAA,CAAAuC,gBAAA,CAAAC,IAAA;UAAjBC,OAAA;UACCC,uBAAQ,EAAAtB,KAAA,CAAAI,kBAAA,IAAAd,oBAAA;UACRiC,SAAA,GAAAb,QAAA;UACAH,MAAA;UACAU,QAAA,EAAAN;QAAA,EAEC,GAAAA;MAAA;IAAA,EACH;EAKN,EAEJ;AACFd,eAAA,CAAA2B,WAAA,GAAAnC,sBAAA;AACA,IAAAwB,mBAAgB,kBAAc7B,YAAA,CAAAyC,OAAA,CAAAC,UAAA,WAAA1B,KAAA,EAAAC,YAAA;IAQ9B,IAAM;QAAAG,kBAAA;QAAsBnC,KAAA;QAAA,GAAA0D;MAAA,CAAM,GAAA3B,KAAA;MAAAE,YAGxB,GAAAC,0BAAiB,CAAAC,kBAAA;MAAAwB,WAAA;QACzB,cAAQ;MAKR;MAAAC,SACE,GAAA3B,YAAA,CAAA4B,IAAA,gBAAAF,WAAA;IAAA,OAAC,mBAAArD,kBAAA,CAAAqC,GAAA,EAAA1B,aAAA,CAAA6C,MAAA;MAAA,GAAAF,SAAA;MAAA,GACEF,SAAG;MAAAb,GACH,EAAGb,YAAA;MAAA+B,cACC,WAAAA,CAAAC,OAAA;QACLA,OAAA,GAAA/B,YAAiB,CAAAgC,cAAY,CAAAjE,KAAA,IAAAiC,YAAA,CAAAiC,gBAAA,CAAAlE,KAAA;MAC3B;IAGqC;EAEvC;EAAAG,WAAA,OAAAO,kBAAA,CAAAyD,oBAAA,iBAAApD,YAAA,CAAAyC,OAAA,CAAAC,UAAA,WAAA1B,KAAA,EAAAC,YAAA;IACF;MAAA6B,IAAA;MAAA,GAAAO;IAAA,IAAArC,KAAA;IAEH,IAkBKvB,oBAAc,CAAA6D,KAAA,IAAAtD,YAAA,CAAAyC,OAAA,CAAAc,SAAA;MAClB,IAAAvC,KAAA,CAAAwC,EAAA,EACG,OAAO,IAAA9D,oBAAiB,CAAA+D,iBAAA,EAAAzC,KAAA,CAAAwC,EAAA;QACvBE,KAAM,EAAE,SAAAA,CAAA,EAAS,CAWjB;MAPI;IACA,IAAmC1C,KAAA,CAAAwC,EACjC,CAAa,GAAAV,IAAA,KAAC;MAAA,IAAAF,WACf,GAAAS,gBAAA;MAAA,OACC,eAGF,IAAS9D,kBAAA,CAAAqC,GAAA,EAAA+B,qBAAA;QAEX,GAAAf,WAAO;QAGTd,GAAA,EAAIb;MAEF;IAGF;IAA4E,IAC9E6B,IAAA;MACF,IAAAc,aAAA,GAAAP,gBAAA;MACA,0BAAA9D,kBAAA,CAAAqC,GAAA,EAAAiC,uBAAA;QACE,GAAAD,aAAM;QACR9B,GAAA,EAAAb;MACF;IAEA;IAYA,MAAM,IAAA6C,KAAA,wCAAA1D,iBAAA;EAAA,EACJ;IACAgC,IAAA,EAAAvB;EACF;AAiBEzB,WAAM,CAAAoD,WAAA,GAAApC,iBAAA;AAAA,IACJ;IAAAG,QAAO,EAAAwD,wBAAA;IAAApD,gBAAA,EAAAQ;EAAA,QAAApB,cAAA,CAAAU,mBAAA;EAAAkD,qBAAA,kBAAA3D,YAAA,CAAAyC,OAAA,CAAAC,UAAA,WAAA1B,KAAA,EAAAC,YAAA;IAAA,IACP;QAAAhC,KAAA,EAAA+E,SAAA;QAAAC,YAAA;QAAAC,aAAA,YAAAA,CAAA;QACAC,mBAAgB,GAAM;QAAAlC,QAAA;QAAA,GAAAmC;MAAA,IAAApD,KAAA;MAAA,CAAA/B,KAAA,EAAAoF,QAAA,QAAAxE,iCAAA,CAAAyE,oBAAA;QAACC,IAAA,EAAAP,SAAA;QACvBQ,WAAA,EAAAP,YAAsB;QACtBQ,QAAA,EAAAP;MAAA,EACA;IACF,OAAI,eAEU,IAAQ3E,kBAAI,CAAAqC,GAAA,EAAAmC,wBAAA;MACxB/B,KAAA,EAAMhB,KAAA,CAAAI,kBAAA;MACN0B,IAAA,UAAa;MACb7D,KAAA,EAAAA,KAAU,IACXA,KAAA,CAED,KACE;MAACgF,YAAA,EAAAhF,KAAA;MAAAiE,cAAA,EAAAmB,QAAA;MAAAlB,gBACc,EAAAnD,YAAA,CAAAyC,OAAA,CAAAiC,WAAA;QACb,OAAKP,mBAAA,UAAAE,QAAA;MAAA,GACL,CACAA,QAAA,EACAF,mBAAgB,EAChB;MAAwBlC,QACtB,EAAO,mBAAA1C,kBAAsC,CAAAqC,GAAE,EAAA+C,eAAA;QAAA,GAC9CP,sBAAU;QACbtC,GAAA,EAAAb,YAAA;QAEAgB;MAEA;IACF;EAEJ,CAAC;EAYK4B,uBAAA,GAA0B,eAAA7D,YAAM,CAAAyC,OAGnC,CAAAC,UAAkD,WAAiB1B,KAAA,EAAAC,YAAA;IACpE;QAAMhC,KAAA,EAAA+E,SAAA;QAAAC,YAAA;QAAAC,aAAA,YAAAA,CAAA;QACJC,mBAAO;QAAAlC,QAAA;QAAA,GAAA2C;MAAA,IAAA5D,KAAA;MAAA,CAAA/B,KAAA,OAAAoF,QAAA,QAAAxE,iCAAA,CAAAyE,oBAAA;QACPC,IAAA,EAAAP,SAAA;QACAQ,WAAA,EAAAP,YAAsB;QAACQ,QAAA,EAAAP;MAAA,EACvB;MAAAW,oBAAA,GAAA7E,YAAA,CAAAyC,OAAA,CAAAiC,WAAA,WAAAI,SAAA;QACA,OAAAT,QAAA;UACA,IAAGU,SAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;UACD,OAEE,CACJ,GAAMD,SAAA,EACND,SAAa,CACb;QACD,EAEK;MAA6B,GAChC,CACDT,QAAC,CACH;MAEMa,sBAAA,GAAyBlF,YAAA,CAAAyC,OAAM,CAAAiC,WAAA,WAAAI,SAAA;QACnC,OAACT,QACC,aAAU;UACX,IAAAU,SAAQ,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;UACX,OAAAD,SAAA,CAAAI,MAAA,WAAAC,MAAA;YAEA,OACEA,MAAA,KAAAN,SAAA;UAAC;QAAA;MAAA,IACcT,QACR;IACL,OACA,eAAc,IAAA9E,kBAAA,CAAAqC,GAAA,EAAAmC,wBAAA;MAAA/B,KACd,EAAAhB,KAAA,CAAAI,kBAAgB;MAAA0B,IAChB;MAAkB7D,KAElB;MAEAgF,YAAA,EAAAhF,KAAA;MACFiE,cAAA,EAAA2B,oBAAA;MAaE1B,gBAAA,EAAA+B,sBAAmB;MACvBjD,QAAM,qBAAA1C,kBAAA,CAAAqC,GAAA,EAAA+C,eAAA;QAWF,GAAAC,wBAAkB;QACrB9C,GAAA,EAA0Cb,YAAA;QACzCgB;MAAM;IACJ;EACW;EAAAoD,gBACG,OAAAtF,cAAA,CAAAuF,MAAA,EAAAvF,cAAA,CAAAwF,IAAA;IAAAC,IACd,EAAApF;EAAA;EAAAuE,eACA,GAAcU,gBAAA,CAAAtE,SAAA,WAAAC,KAAA,EAAAC,YAAA;IAAA,IACd;QAAAG,kBAAO;QAAAM,QAAA;QAAA+D,WAAA;QAAAC,GAAA;QAAAxD,WAAA;QAAAyD,IAAA;QAAAlE,KAAA;QAAA,GAAA4B;MAAA,IAAArC,KAAA;MAAA4E,SAAA,OAAA9F,wBAAA,CAAA+F,YAAA,EAAAH,GAAA;MAAAI,OAAA,sBAAAvG,kBAAA,CAAAqC,GAAA,EAAAyD,gBAAA;QAAAU,IACP;QAAAjE,GACA,EAAGb,YAAA;QACL,eACM,EAAAS,QAAA,GAAY;QAGhB,GAAC2B;MAAA;IAAA,OACC,eAAK,IAAA9D,kBAAA,CAAAqC,GAAA,EAAAlB,kBAAA;MAAAsB,KACL,EAAAZ,kBAAK;MAAAc,WACL;MAA+BR,QAC3B;MAAAO,QAAA,qBAAA1C,kBAAA,CAAAqC,GAAA,EAAAzB,cAAA,CAAAkB,OAAA,CAAAd,QAAA;QACNkB,KAAA;QAGFQ,QACE,EAAAC,WAAA,sBAAA3C,kBAAA,CAAAqC,GAAA,EAAAhC,uBAAA,CAAAuC,gBAAA;UAACE,OAAA;UAAAC,uBAAA,EAAAlB,kBAAA,IAAAd,oBAAA;UACCmF,WAAO;UACPC,GAAA,EAAAE,SAAA;UACAD,IAAA;UAEA1D,QAAA,EAAA6D;QAEI,KAACA;MAAA;IAAA;EACS","ignoreList":[]}