@tamagui/toggle-group 2.0.0-1768741592663 → 2.0.0-1768782502458

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 (140) hide show
  1. package/dist/cjs/Toggle.cjs +61 -61
  2. package/dist/cjs/Toggle.js +87 -80
  3. package/dist/cjs/Toggle.js.map +2 -2
  4. package/dist/cjs/Toggle.native.js +61 -61
  5. package/dist/cjs/Toggle.native.js.map +1 -1
  6. package/dist/cjs/ToggleGroup.cjs +44 -66
  7. package/dist/cjs/ToggleGroup.js +18 -32
  8. package/dist/cjs/ToggleGroup.js.map +1 -1
  9. package/dist/cjs/ToggleGroup.native.js +44 -71
  10. package/dist/cjs/ToggleGroup.native.js.map +1 -1
  11. package/dist/cjs/ToggleStylesBase.cjs +16 -0
  12. package/dist/cjs/ToggleStylesBase.js +14 -0
  13. package/dist/cjs/ToggleStylesBase.js.map +6 -0
  14. package/dist/cjs/ToggleStylesBase.native.js +19 -0
  15. package/dist/cjs/ToggleStylesBase.native.js.map +1 -0
  16. package/dist/cjs/context.cjs +31 -0
  17. package/dist/cjs/context.js +26 -0
  18. package/dist/cjs/context.js.map +6 -0
  19. package/dist/cjs/context.native.js +34 -0
  20. package/dist/cjs/context.native.js.map +1 -0
  21. package/dist/cjs/index.cjs +12 -2
  22. package/dist/cjs/index.js +8 -1
  23. package/dist/cjs/index.js.map +1 -1
  24. package/dist/cjs/index.native.js +11 -1
  25. package/dist/cjs/index.native.js.map +1 -1
  26. package/dist/cjs/types.cjs +16 -0
  27. package/dist/cjs/types.js +14 -0
  28. package/dist/cjs/types.js.map +6 -0
  29. package/dist/cjs/types.native.js +19 -0
  30. package/dist/cjs/types.native.js.map +1 -0
  31. package/dist/cjs/useToggleGroupItem.cjs +27 -0
  32. package/dist/cjs/useToggleGroupItem.js +22 -0
  33. package/dist/cjs/useToggleGroupItem.js.map +6 -0
  34. package/dist/cjs/useToggleGroupItem.native.js +30 -0
  35. package/dist/cjs/useToggleGroupItem.native.js.map +1 -0
  36. package/dist/esm/Toggle.js +88 -81
  37. package/dist/esm/Toggle.js.map +2 -2
  38. package/dist/esm/Toggle.mjs +61 -60
  39. package/dist/esm/Toggle.mjs.map +1 -1
  40. package/dist/esm/Toggle.native.js +62 -61
  41. package/dist/esm/Toggle.native.js.map +1 -1
  42. package/dist/esm/ToggleGroup.js +21 -36
  43. package/dist/esm/ToggleGroup.js.map +1 -1
  44. package/dist/esm/ToggleGroup.mjs +44 -66
  45. package/dist/esm/ToggleGroup.mjs.map +1 -1
  46. package/dist/esm/ToggleGroup.native.js +44 -71
  47. package/dist/esm/ToggleGroup.native.js.map +1 -1
  48. package/dist/esm/ToggleStylesBase.js +1 -0
  49. package/dist/esm/ToggleStylesBase.js.map +6 -0
  50. package/dist/esm/ToggleStylesBase.mjs +2 -0
  51. package/dist/esm/ToggleStylesBase.mjs.map +1 -0
  52. package/dist/esm/ToggleStylesBase.native.js +2 -0
  53. package/dist/esm/ToggleStylesBase.native.js.map +1 -0
  54. package/dist/esm/context.js +10 -0
  55. package/dist/esm/context.js.map +6 -0
  56. package/dist/esm/context.mjs +8 -0
  57. package/dist/esm/context.mjs.map +1 -0
  58. package/dist/esm/context.native.js +8 -0
  59. package/dist/esm/context.native.js.map +1 -0
  60. package/dist/esm/index.js +4 -0
  61. package/dist/esm/index.js.map +1 -1
  62. package/dist/esm/index.mjs +2 -0
  63. package/dist/esm/index.mjs.map +1 -1
  64. package/dist/esm/index.native.js +2 -0
  65. package/dist/esm/index.native.js.map +1 -1
  66. package/dist/esm/types.js +1 -0
  67. package/dist/esm/types.js.map +6 -0
  68. package/dist/esm/types.mjs +2 -0
  69. package/dist/esm/types.mjs.map +1 -0
  70. package/dist/esm/types.native.js +2 -0
  71. package/dist/esm/types.native.js.map +1 -0
  72. package/dist/esm/useToggleGroupItem.js +6 -0
  73. package/dist/esm/useToggleGroupItem.js.map +6 -0
  74. package/dist/esm/useToggleGroupItem.mjs +4 -0
  75. package/dist/esm/useToggleGroupItem.mjs.map +1 -0
  76. package/dist/esm/useToggleGroupItem.native.js +4 -0
  77. package/dist/esm/useToggleGroupItem.native.js.map +1 -0
  78. package/dist/jsx/Toggle.js +88 -81
  79. package/dist/jsx/Toggle.js.map +2 -2
  80. package/dist/jsx/Toggle.mjs +61 -60
  81. package/dist/jsx/Toggle.mjs.map +1 -1
  82. package/dist/jsx/Toggle.native.js +61 -61
  83. package/dist/jsx/Toggle.native.js.map +1 -1
  84. package/dist/jsx/ToggleGroup.js +21 -36
  85. package/dist/jsx/ToggleGroup.js.map +1 -1
  86. package/dist/jsx/ToggleGroup.mjs +44 -66
  87. package/dist/jsx/ToggleGroup.mjs.map +1 -1
  88. package/dist/jsx/ToggleGroup.native.js +44 -71
  89. package/dist/jsx/ToggleGroup.native.js.map +1 -1
  90. package/dist/jsx/ToggleStylesBase.js +1 -0
  91. package/dist/jsx/ToggleStylesBase.js.map +6 -0
  92. package/dist/jsx/ToggleStylesBase.mjs +2 -0
  93. package/dist/jsx/ToggleStylesBase.mjs.map +1 -0
  94. package/dist/jsx/ToggleStylesBase.native.js +19 -0
  95. package/dist/jsx/ToggleStylesBase.native.js.map +1 -0
  96. package/dist/jsx/context.js +10 -0
  97. package/dist/jsx/context.js.map +6 -0
  98. package/dist/jsx/context.mjs +8 -0
  99. package/dist/jsx/context.mjs.map +1 -0
  100. package/dist/jsx/context.native.js +34 -0
  101. package/dist/jsx/context.native.js.map +1 -0
  102. package/dist/jsx/index.js +4 -0
  103. package/dist/jsx/index.js.map +1 -1
  104. package/dist/jsx/index.mjs +2 -0
  105. package/dist/jsx/index.mjs.map +1 -1
  106. package/dist/jsx/index.native.js +11 -1
  107. package/dist/jsx/index.native.js.map +1 -1
  108. package/dist/jsx/types.js +1 -0
  109. package/dist/jsx/types.js.map +6 -0
  110. package/dist/jsx/types.mjs +2 -0
  111. package/dist/jsx/types.mjs.map +1 -0
  112. package/dist/jsx/types.native.js +19 -0
  113. package/dist/jsx/types.native.js.map +1 -0
  114. package/dist/jsx/useToggleGroupItem.js +6 -0
  115. package/dist/jsx/useToggleGroupItem.js.map +6 -0
  116. package/dist/jsx/useToggleGroupItem.mjs +4 -0
  117. package/dist/jsx/useToggleGroupItem.mjs.map +1 -0
  118. package/dist/jsx/useToggleGroupItem.native.js +30 -0
  119. package/dist/jsx/useToggleGroupItem.native.js.map +1 -0
  120. package/package.json +16 -15
  121. package/src/Toggle.tsx +99 -93
  122. package/src/ToggleGroup.tsx +56 -94
  123. package/src/context.tsx +7 -0
  124. package/src/index.ts +1 -0
  125. package/src/types.tsx +3 -0
  126. package/src/useToggleGroupItem.ts +3 -0
  127. package/types/Toggle.d.ts +59 -81
  128. package/types/Toggle.d.ts.map +1 -1
  129. package/types/ToggleGroup.d.ts +123 -161
  130. package/types/ToggleGroup.d.ts.map +1 -1
  131. package/types/ToggleStylesBase.d.ts +5 -0
  132. package/types/ToggleStylesBase.d.ts.map +1 -0
  133. package/types/context.d.ts +7 -0
  134. package/types/context.d.ts.map +1 -0
  135. package/types/index.d.ts +1 -0
  136. package/types/index.d.ts.map +1 -1
  137. package/types/types.d.ts +5 -0
  138. package/types/types.d.ts.map +1 -0
  139. package/types/useToggleGroupItem.d.ts +6 -0
  140. package/types/useToggleGroupItem.d.ts.map +1 -0
@@ -32,115 +32,115 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
32
32
  var Toggle_exports = {};
33
33
  __export(Toggle_exports, {
34
34
  Toggle: () => Toggle,
35
- ToggleFrame: () => ToggleFrame,
36
- context: () => context
35
+ ToggleFrame: () => ToggleFrame
37
36
  });
38
37
  module.exports = __toCommonJS(Toggle_exports);
39
38
  var import_helpers = require("@tamagui/helpers"),
40
- import_stacks = require("@tamagui/stacks"),
41
39
  import_use_controllable_state = require("@tamagui/use-controllable-state"),
42
40
  import_web = require("@tamagui/web"),
43
41
  React = __toESM(require("react"), 1),
42
+ import_context = require("./context.cjs"),
44
43
  import_jsx_runtime = require("react/jsx-runtime");
45
- const context = (0, import_web.createStyledContext)({
46
- color: "",
47
- toggledStyle: null
48
- }),
49
- NAME = "Toggle",
50
- ToggleFrame = (0, import_web.styled)(import_stacks.ThemeableStack, {
44
+ const NAME = "Toggle",
45
+ ToggleFrame = (0, import_web.styled)(import_web.View, {
51
46
  name: NAME,
52
47
  render: "button",
53
- context,
48
+ context: import_context.context,
54
49
  variants: {
55
50
  unstyled: {
56
51
  false: {
57
- pressTheme: !0,
58
- backgroundColor: "$background",
52
+ size: "$true",
59
53
  alignItems: "center",
60
54
  justifyContent: "center",
61
55
  display: "flex",
56
+ backgroundColor: "$background",
62
57
  borderColor: "$borderColor",
63
58
  borderWidth: 1,
64
59
  margin: -1,
65
60
  hoverStyle: {
66
- backgroundColor: "$backgroundHover"
61
+ backgroundColor: "$backgroundHover",
62
+ borderColor: "$borderColorHover"
67
63
  },
68
64
  pressStyle: {
69
- backgroundColor: "$backgroundPress"
70
- },
71
- focusStyle: {
72
- borderColor: "$borderColorFocus"
65
+ backgroundColor: "$backgroundPress",
66
+ borderColor: "$borderColorPress"
73
67
  },
74
68
  focusVisibleStyle: {
75
69
  outlineColor: "$outlineColor",
76
70
  outlineWidth: 2,
77
- outlineStyle: "solid"
71
+ outlineStyle: "solid",
72
+ zIndex: 10
78
73
  }
79
74
  }
80
75
  },
81
- toggledStyle: val => ({}),
82
- active: {
83
- true: (_, {
84
- props,
85
- context: context2
76
+ size: {
77
+ "...size": (val, {
78
+ tokens
86
79
  }) => {
87
- const toggledStyle = props.toggledStyle || context2?.toggledStyle;
88
- return {
89
- zIndex: 1,
90
- ...(!props.unstyled && !toggledStyle && {
91
- backgroundColor: "$background",
92
- hoverStyle: {
93
- backgroundColor: "$background"
94
- },
95
- focusStyle: {
96
- backgroundColor: "$background",
97
- borderColor: "$borderColor"
98
- }
99
- }),
100
- ...toggledStyle
80
+ if (val) return {
81
+ width: tokens.size[val],
82
+ height: tokens.size[val]
101
83
  };
102
- }
103
- },
104
- orientation: {
105
- horizontal: {
106
- flexDirection: "row",
107
- spaceDirection: "horizontal"
108
84
  },
109
- vertical: {
110
- flexDirection: "column",
111
- spaceDirection: "vertical"
85
+ ":number": val => ({
86
+ width: val,
87
+ height: val
88
+ })
89
+ },
90
+ defaultActiveStyle: {
91
+ true: {
92
+ backgroundColor: "$backgroundActive",
93
+ hoverStyle: {
94
+ backgroundColor: "$backgroundActive"
95
+ },
96
+ focusStyle: {
97
+ backgroundColor: "$backgroundActive",
98
+ borderColor: "$borderColorActive"
99
+ }
112
100
  }
113
101
  }
114
102
  },
115
103
  defaultVariants: {
116
104
  unstyled: process.env.TAMAGUI_HEADLESS === "1"
117
105
  }
106
+ }, {
107
+ accept: {
108
+ activeStyle: "style"
109
+ }
118
110
  }),
119
111
  Toggle = React.forwardRef(function (props, forwardedRef) {
120
112
  const {
121
- pressed: pressedProp,
122
- defaultPressed = !1,
123
- onPressedChange,
113
+ active: activeProp,
114
+ activeStyle,
115
+ defaultActive = !1,
116
+ onActiveChange,
117
+ activeTheme,
118
+ unstyled = !1,
124
119
  ...buttonProps
125
120
  } = props,
126
- [pressed = !1, setPressed] = (0, import_use_controllable_state.useControllableState)({
127
- prop: pressedProp,
128
- onChange: onPressedChange,
129
- defaultProp: defaultPressed
121
+ [active = !1, setActive] = (0, import_use_controllable_state.useControllableState)({
122
+ prop: activeProp,
123
+ onChange: onActiveChange,
124
+ defaultProp: defaultActive
130
125
  });
131
126
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleFrame, {
132
- ...(!props.unstyled && {
133
- theme: pressed ? "accent" : null,
134
- themeShallow: !0
135
- }),
136
- active: pressed,
137
- "aria-pressed": pressed,
138
- "data-state": pressed ? "on" : "off",
127
+ theme: activeTheme ?? null,
128
+ "aria-pressed": active,
129
+ "data-state": active ? "on" : "off",
139
130
  "data-disabled": props.disabled ? "" : void 0,
131
+ unstyled,
132
+ ...(active && !activeStyle && !unstyled && {
133
+ defaultActiveStyle: !0
134
+ }),
135
+ ...(active && activeStyle && {
136
+ ...activeStyle,
137
+ hoverStyle: activeStyle,
138
+ focusStyle: activeStyle
139
+ }),
140
140
  ...buttonProps,
141
141
  ref: forwardedRef,
142
142
  onPress: (0, import_helpers.composeEventHandlers)(props.onPress ?? void 0, () => {
143
- props.disabled || setPressed(prev => !prev);
143
+ props.disabled || setActive(prev => !prev);
144
144
  })
145
145
  });
146
146
  });
@@ -23,106 +23,113 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
23
23
  var Toggle_exports = {};
24
24
  __export(Toggle_exports, {
25
25
  Toggle: () => Toggle,
26
- ToggleFrame: () => ToggleFrame,
27
- context: () => context
26
+ ToggleFrame: () => ToggleFrame
28
27
  });
29
28
  module.exports = __toCommonJS(Toggle_exports);
30
- var import_helpers = require("@tamagui/helpers"), import_stacks = require("@tamagui/stacks"), import_use_controllable_state = require("@tamagui/use-controllable-state"), import_web = require("@tamagui/web"), React = __toESM(require("react"), 1), import_jsx_runtime = require("react/jsx-runtime");
31
- const context = (0, import_web.createStyledContext)({
32
- color: "",
33
- toggledStyle: null
34
- }), NAME = "Toggle", ToggleFrame = (0, import_web.styled)(import_stacks.ThemeableStack, {
35
- name: NAME,
36
- render: "button",
37
- context,
38
- variants: {
39
- unstyled: {
40
- false: {
41
- pressTheme: !0,
42
- backgroundColor: "$background",
43
- alignItems: "center",
44
- justifyContent: "center",
45
- display: "flex",
46
- borderColor: "$borderColor",
47
- borderWidth: 1,
48
- margin: -1,
49
- hoverStyle: {
50
- backgroundColor: "$backgroundHover"
51
- },
52
- pressStyle: {
53
- backgroundColor: "$backgroundPress"
54
- },
55
- focusStyle: {
56
- borderColor: "$borderColorFocus"
57
- },
58
- focusVisibleStyle: {
59
- outlineColor: "$outlineColor",
60
- outlineWidth: 2,
61
- outlineStyle: "solid"
29
+ var import_helpers = require("@tamagui/helpers"), import_use_controllable_state = require("@tamagui/use-controllable-state"), import_web = require("@tamagui/web"), React = __toESM(require("react"), 1), import_context = require("./context"), import_jsx_runtime = require("react/jsx-runtime");
30
+ const NAME = "Toggle", ToggleFrame = (0, import_web.styled)(
31
+ import_web.View,
32
+ {
33
+ name: NAME,
34
+ render: "button",
35
+ context: import_context.context,
36
+ variants: {
37
+ unstyled: {
38
+ false: {
39
+ size: "$true",
40
+ alignItems: "center",
41
+ justifyContent: "center",
42
+ display: "flex",
43
+ backgroundColor: "$background",
44
+ borderColor: "$borderColor",
45
+ borderWidth: 1,
46
+ margin: -1,
47
+ hoverStyle: {
48
+ backgroundColor: "$backgroundHover",
49
+ borderColor: "$borderColorHover"
50
+ },
51
+ pressStyle: {
52
+ backgroundColor: "$backgroundPress",
53
+ borderColor: "$borderColorPress"
54
+ },
55
+ focusVisibleStyle: {
56
+ outlineColor: "$outlineColor",
57
+ outlineWidth: 2,
58
+ outlineStyle: "solid",
59
+ zIndex: 10
60
+ }
62
61
  }
63
- }
64
- },
65
- toggledStyle: (val) => ({}),
66
- active: {
67
- true: (_, { props, context: context2 }) => {
68
- const toggledStyle = props.toggledStyle || context2?.toggledStyle;
69
- return {
70
- zIndex: 1,
71
- ...!props.unstyled && !toggledStyle && {
72
- backgroundColor: "$background",
73
- hoverStyle: {
74
- backgroundColor: "$background"
75
- },
76
- focusStyle: {
77
- backgroundColor: "$background",
78
- borderColor: "$borderColor"
79
- }
62
+ },
63
+ size: {
64
+ "...size": (val, { tokens }) => {
65
+ if (val)
66
+ return {
67
+ width: tokens.size[val],
68
+ height: tokens.size[val]
69
+ };
70
+ },
71
+ ":number": (val) => ({
72
+ width: val,
73
+ height: val
74
+ })
75
+ },
76
+ defaultActiveStyle: {
77
+ true: {
78
+ backgroundColor: "$backgroundActive",
79
+ hoverStyle: {
80
+ backgroundColor: "$backgroundActive"
80
81
  },
81
- ...toggledStyle
82
- };
82
+ focusStyle: {
83
+ backgroundColor: "$backgroundActive",
84
+ borderColor: "$borderColorActive"
85
+ }
86
+ }
83
87
  }
84
88
  },
85
- orientation: {
86
- horizontal: {
87
- flexDirection: "row",
88
- spaceDirection: "horizontal"
89
- },
90
- vertical: {
91
- flexDirection: "column",
92
- spaceDirection: "vertical"
93
- }
89
+ defaultVariants: {
90
+ unstyled: process.env.TAMAGUI_HEADLESS === "1"
94
91
  }
95
92
  },
96
- defaultVariants: {
97
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
93
+ {
94
+ accept: {
95
+ activeStyle: "style"
96
+ }
98
97
  }
99
- }), Toggle = React.forwardRef(
98
+ ), Toggle = React.forwardRef(
100
99
  function(props, forwardedRef) {
101
100
  const {
102
- pressed: pressedProp,
103
- defaultPressed = !1,
104
- onPressedChange,
101
+ active: activeProp,
102
+ activeStyle,
103
+ defaultActive = !1,
104
+ onActiveChange,
105
+ activeTheme,
106
+ unstyled = !1,
105
107
  ...buttonProps
106
- } = props, [pressed = !1, setPressed] = (0, import_use_controllable_state.useControllableState)({
107
- prop: pressedProp,
108
- onChange: onPressedChange,
109
- defaultProp: defaultPressed
108
+ } = props, [active = !1, setActive] = (0, import_use_controllable_state.useControllableState)({
109
+ prop: activeProp,
110
+ onChange: onActiveChange,
111
+ defaultProp: defaultActive
110
112
  });
111
113
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
112
114
  ToggleFrame,
113
115
  {
114
- ...!props.unstyled && {
115
- theme: pressed ? "accent" : null,
116
- themeShallow: !0
117
- },
118
- active: pressed,
119
- "aria-pressed": pressed,
120
- "data-state": pressed ? "on" : "off",
116
+ theme: activeTheme ?? null,
117
+ "aria-pressed": active,
118
+ "data-state": active ? "on" : "off",
121
119
  "data-disabled": props.disabled ? "" : void 0,
120
+ unstyled,
121
+ ...active && !activeStyle && !unstyled && {
122
+ defaultActiveStyle: !0
123
+ },
124
+ ...active && activeStyle && {
125
+ ...activeStyle,
126
+ hoverStyle: activeStyle,
127
+ focusStyle: activeStyle
128
+ },
122
129
  ...buttonProps,
123
130
  ref: forwardedRef,
124
131
  onPress: (0, import_helpers.composeEventHandlers)(props.onPress ?? void 0, () => {
125
- props.disabled || setPressed((prev) => !prev);
132
+ props.disabled || setActive((prev) => !prev);
126
133
  })
127
134
  }
128
135
  );
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Toggle.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAqC,6BACrC,gBAA+B,4BAC/B,gCAAqC,4CAErC,aAAkD,yBAClD,QAAuB,8BAqHjB;AAjHC,MAAM,cAAU,gCAAoB;AAAA,EACzC,OAAO;AAAA,EACP,cAAc;AAChB,CAAC,GAMK,OAAO,UAEA,kBAAc,mBAAO,8BAAgB;AAAA,EAChD,MAAM;AAAA,EACN,QAAQ;AAAA,EACR;AAAA,EAEA,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,iBAAiB;AAAA,QACjB,YAAY;AAAA,QACZ,gBAAgB;AAAA,QAChB,SAAS;AAAA,QACT,aAAa;AAAA,QACb,aAAa;AAAA,QACb,QAAQ;AAAA,QACR,YAAY;AAAA,UACV,iBAAiB;AAAA,QACnB;AAAA,QACA,YAAY;AAAA,UACV,iBAAiB;AAAA,QACnB;AAAA,QACA,YAAY;AAAA,UACV,aAAa;AAAA,QACf;AAAA,QACA,mBAAmB;AAAA,UACjB,cAAc;AAAA,UACd,cAAc;AAAA,UACd,cAAc;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,cAAc,CAAC,SAAkC,CAAC;AAAA,IAElD,QAAQ;AAAA,MACN,MAAM,CAAC,GAAG,EAAE,OAAO,SAAAA,SAAQ,MAAW;AACpC,cAAM,eAAe,MAAM,gBAAgBA,UAAS;AACpD,eAAO;AAAA,UACL,QAAQ;AAAA,UACR,GAAI,CAAC,MAAM,YACT,CAAC,gBAAgB;AAAA,YACf,iBAAiB;AAAA,YACjB,YAAY;AAAA,cACV,iBAAiB;AAAA,YACnB;AAAA,YACA,YAAY;AAAA,cACV,iBAAiB;AAAA,cACjB,aAAa;AAAA,YACf;AAAA,UACF;AAAA,UACF,GAAG;AAAA,QACL;AAAA,MACF;AAAA,IACF;AAAA,IAEA,aAAa;AAAA,MACX,YAAY;AAAA,QACV,eAAe;AAAA,QACf,gBAAgB;AAAA,MAClB;AAAA,MACA,UAAU;AAAA,QACR,eAAe;AAAA,QACf,gBAAgB;AAAA,MAClB;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU,QAAQ,IAAI,qBAAqB;AAAA,EAC7C;AACF,CAAC,GAeY,SAAS,MAAM;AAAA,EAC1B,SAAgB,OAAO,cAAc;AACnC,UAAM;AAAA,MACJ,SAAS;AAAA,MACT,iBAAiB;AAAA,MACjB;AAAA,MACA,GAAG;AAAA,IACL,IAAI,OAEE,CAAC,UAAU,IAAO,UAAU,QAAI,oDAAqB;AAAA,MACzD,MAAM;AAAA,MACN,UAAU;AAAA,MACV,aAAa;AAAA,IACf,CAAC;AAED,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAI,CAAC,MAAM,YAAY;AAAA,UACtB,OAAO,UAAU,WAAW;AAAA,UAC5B,cAAc;AAAA,QAChB;AAAA,QACA,QAAQ;AAAA,QACR,gBAAc;AAAA,QACd,cAAY,UAAU,OAAO;AAAA,QAC7B,iBAAe,MAAM,WAAW,KAAK;AAAA,QACpC,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,aAAS,qCAAqB,MAAM,WAAW,QAAW,MAAM;AAC9D,UAAK,MAAM,YACT,WAAW,CAAC,SAAS,CAAC,IAAI;AAAA,QAE9B,CAAC;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;",
5
- "names": ["context"]
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAqC,6BACrC,gCAAqC,4CAErC,aAA6B,yBAC7B,QAAuB,8BACvB,iBAAwB,sBAmHlB;AA7GN,MAAM,OAAO,UAEA,kBAAc;AAAA,EACzB;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ;AAAA,IACR;AAAA,IAEA,UAAU;AAAA,MACR,UAAU;AAAA,QACR,OAAO;AAAA,UACL,MAAM;AAAA,UACN,YAAY;AAAA,UACZ,gBAAgB;AAAA,UAChB,SAAS;AAAA,UACT,iBAAiB;AAAA,UACjB,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,UACR,YAAY;AAAA,YACV,iBAAiB;AAAA,YACjB,aAAa;AAAA,UACf;AAAA,UACA,YAAY;AAAA,YACV,iBAAiB;AAAA,YACjB,aAAa;AAAA,UACf;AAAA,UACA,mBAAmB;AAAA,YACjB,cAAc;AAAA,YACd,cAAc;AAAA,YACd,cAAc;AAAA,YACd,QAAQ;AAAA,UACV;AAAA,QACF;AAAA,MACF;AAAA,MAEA,MAAM;AAAA,QACJ,WAAW,CAAC,KAAK,EAAE,OAAO,MAAM;AAC9B,cAAK;AACL,mBAAO;AAAA,cACL,OAAO,OAAO,KAAK,GAAG;AAAA,cACtB,QAAQ,OAAO,KAAK,GAAG;AAAA,YACzB;AAAA,QACF;AAAA,QACA,WAAW,CAAC,SAAS;AAAA,UACnB,OAAO;AAAA,UACP,QAAQ;AAAA,QACV;AAAA,MACF;AAAA,MAEA,oBAAoB;AAAA,QAClB,MAAM;AAAA,UACJ,iBAAiB;AAAA,UACjB,YAAY;AAAA,YACV,iBAAiB;AAAA,UACnB;AAAA,UACA,YAAY;AAAA,YACV,iBAAiB;AAAA,YACjB,aAAa;AAAA,UACf;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IAEA,iBAAiB;AAAA,MACf,UAAU,QAAQ,IAAI,qBAAqB;AAAA,IAC7C;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,MACN,aAAa;AAAA,IACf;AAAA,EACF;AACF,GAgBa,SAAS,MAAM;AAAA,EAC1B,SAAgB,OAAO,cAAc;AACnC,UAAM;AAAA,MACJ,QAAQ;AAAA,MACR;AAAA,MACA,gBAAgB;AAAA,MAChB;AAAA,MACA;AAAA,MACA,WAAW;AAAA,MACX,GAAG;AAAA,IACL,IAAI,OAEE,CAAC,SAAS,IAAO,SAAS,QAAI,oDAAqB;AAAA,MACvD,MAAM;AAAA,MACN,UAAU;AAAA,MACV,aAAa;AAAA,IACf,CAAC;AAED,WACE;AAAA,MAAC;AAAA;AAAA,QACC,OAAO,eAAe;AAAA,QACtB,gBAAc;AAAA,QACd,cAAY,SAAS,OAAO;AAAA,QAC5B,iBAAe,MAAM,WAAW,KAAK;AAAA,QACrC;AAAA,QACC,GAAI,UACH,CAAC,eACD,CAAC,YAAY;AAAA,UACX,oBAAoB;AAAA,QACtB;AAAA,QACD,GAAI,UACH,eAAe;AAAA,UACb,GAAI;AAAA,UACJ,YAAY;AAAA,UACZ,YAAY;AAAA,QACd;AAAA,QACD,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,aAAS,qCAAqB,MAAM,WAAW,QAAW,MAAM;AAC9D,UAAK,MAAM,YACT,UAAU,CAAC,SAAS,CAAC,IAAI;AAAA,QAE7B,CAAC;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;",
5
+ "names": []
6
6
  }
@@ -34,119 +34,119 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
34
34
  var Toggle_exports = {};
35
35
  __export(Toggle_exports, {
36
36
  Toggle: () => Toggle,
37
- ToggleFrame: () => ToggleFrame,
38
- context: () => context
37
+ ToggleFrame: () => ToggleFrame
39
38
  });
40
39
  module.exports = __toCommonJS(Toggle_exports);
41
40
  var import_jsx_runtime = require("react/jsx-runtime"),
42
41
  import_helpers = require("@tamagui/helpers"),
43
- import_stacks = require("@tamagui/stacks"),
44
42
  import_use_controllable_state = require("@tamagui/use-controllable-state"),
45
43
  import_web = require("@tamagui/web"),
46
44
  React = __toESM(require("react"), 1),
47
- context = (0, import_web.createStyledContext)({
48
- color: "",
49
- toggledStyle: null
50
- }),
45
+ import_context = require("./context.native.js"),
51
46
  NAME = "Toggle",
52
- ToggleFrame = (0, import_web.styled)(import_stacks.ThemeableStack, {
47
+ ToggleFrame = (0, import_web.styled)(import_web.View, {
53
48
  name: NAME,
54
49
  render: "button",
55
- context,
50
+ context: import_context.context,
56
51
  variants: {
57
52
  unstyled: {
58
53
  false: {
59
- pressTheme: !0,
60
- backgroundColor: "$background",
54
+ size: "$true",
61
55
  alignItems: "center",
62
56
  justifyContent: "center",
63
57
  display: "flex",
58
+ backgroundColor: "$background",
64
59
  borderColor: "$borderColor",
65
60
  borderWidth: 1,
66
61
  margin: -1,
67
62
  hoverStyle: {
68
- backgroundColor: "$backgroundHover"
63
+ backgroundColor: "$backgroundHover",
64
+ borderColor: "$borderColorHover"
69
65
  },
70
66
  pressStyle: {
71
- backgroundColor: "$backgroundPress"
72
- },
73
- focusStyle: {
74
- borderColor: "$borderColorFocus"
67
+ backgroundColor: "$backgroundPress",
68
+ borderColor: "$borderColorPress"
75
69
  },
76
70
  focusVisibleStyle: {
77
71
  outlineColor: "$outlineColor",
78
72
  outlineWidth: 2,
79
- outlineStyle: "solid"
73
+ outlineStyle: "solid",
74
+ zIndex: 10
80
75
  }
81
76
  }
82
77
  },
83
- toggledStyle: function (val) {
84
- return {};
85
- },
86
- active: {
87
- true: function (_, param) {
78
+ size: {
79
+ "...size": function (val, param) {
88
80
  var {
89
- props,
90
- context: context2
91
- } = param,
92
- toggledStyle = props.toggledStyle || context2?.toggledStyle;
81
+ tokens
82
+ } = param;
83
+ if (val) return {
84
+ width: tokens.size[val],
85
+ height: tokens.size[val]
86
+ };
87
+ },
88
+ ":number": function (val) {
93
89
  return {
94
- zIndex: 1,
95
- ...(!props.unstyled && !toggledStyle && {
96
- backgroundColor: "$background",
97
- hoverStyle: {
98
- backgroundColor: "$background"
99
- },
100
- focusStyle: {
101
- backgroundColor: "$background",
102
- borderColor: "$borderColor"
103
- }
104
- }),
105
- ...toggledStyle
90
+ width: val,
91
+ height: val
106
92
  };
107
93
  }
108
94
  },
109
- orientation: {
110
- horizontal: {
111
- flexDirection: "row",
112
- spaceDirection: "horizontal"
113
- },
114
- vertical: {
115
- flexDirection: "column",
116
- spaceDirection: "vertical"
95
+ defaultActiveStyle: {
96
+ true: {
97
+ backgroundColor: "$backgroundActive",
98
+ hoverStyle: {
99
+ backgroundColor: "$backgroundActive"
100
+ },
101
+ focusStyle: {
102
+ backgroundColor: "$backgroundActive",
103
+ borderColor: "$borderColorActive"
104
+ }
117
105
  }
118
106
  }
119
107
  },
120
108
  defaultVariants: {
121
109
  unstyled: process.env.TAMAGUI_HEADLESS === "1"
122
110
  }
111
+ }, {
112
+ accept: {
113
+ activeStyle: "style"
114
+ }
123
115
  }),
124
116
  Toggle = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
125
117
  var {
126
- pressed: pressedProp,
127
- defaultPressed = !1,
128
- onPressedChange,
118
+ active: activeProp,
119
+ activeStyle,
120
+ defaultActive = !1,
121
+ onActiveChange,
122
+ activeTheme,
123
+ unstyled = !1,
129
124
  ...buttonProps
130
125
  } = props,
131
- [pressed = !1, setPressed] = (0, import_use_controllable_state.useControllableState)({
132
- prop: pressedProp,
133
- onChange: onPressedChange,
134
- defaultProp: defaultPressed
126
+ [active = !1, setActive] = (0, import_use_controllable_state.useControllableState)({
127
+ prop: activeProp,
128
+ onChange: onActiveChange,
129
+ defaultProp: defaultActive
135
130
  }),
136
131
  _props_onPress;
137
132
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToggleFrame, {
138
- ...(!props.unstyled && {
139
- theme: pressed ? "accent" : null,
140
- themeShallow: !0
141
- }),
142
- active: pressed,
143
- "aria-pressed": pressed,
144
- "data-state": pressed ? "on" : "off",
133
+ theme: activeTheme ?? null,
134
+ "aria-pressed": active,
135
+ "data-state": active ? "on" : "off",
145
136
  "data-disabled": props.disabled ? "" : void 0,
137
+ unstyled,
138
+ ...(active && !activeStyle && !unstyled && {
139
+ defaultActiveStyle: !0
140
+ }),
141
+ ...(active && activeStyle && {
142
+ ...activeStyle,
143
+ hoverStyle: activeStyle,
144
+ focusStyle: activeStyle
145
+ }),
146
146
  ...buttonProps,
147
147
  ref: forwardedRef,
148
148
  onPress: (0, import_helpers.composeEventHandlers)((_props_onPress = props.onPress) !== null && _props_onPress !== void 0 ? _props_onPress : void 0, function () {
149
- props.disabled || setPressed(function (prev) {
149
+ props.disabled || setActive(function (prev) {
150
150
  return !prev;
151
151
  });
152
152
  })
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","Toggle_exports","__export","Toggle","ToggleFrame","context","module","exports","import_jsx_runtime","require","import_helpers","import_stacks","import_use_controllable_state","import_web","React","__toESM","createStyledContext","color","toggledStyle","NAME","styled","ThemeableStack","name","render","variants","unstyled","false","pressTheme","backgroundColor","alignItems","justifyContent","display","borderColor","borderWidth","margin","hoverStyle","pressStyle","focusStyle","focusVisibleStyle","outlineColor","outlineWidth","outlineStyle","val","active","true","_","param","props","context2","zIndex","orientation","horizontal","flexDirection","spaceDirection","vertical","defaultVariants","process","env","TAMAGUI_HEADLESS","forwardRef","forwardedRef","pressed","pressedProp","defaultPressed","onPressedChange","buttonProps","setPressed","useControllableState","prop","onChange","defaultProp","_props_onPress","jsx","theme","themeShallow","disabled","ref","onPress","composeEventHandlers","prev"],"sources":["../../src/Toggle.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAA;EAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;IAAAC,KAAA;EAAA,IAAAH,GAAA;AAAA,IAAAI,cAAA;AAAAC,QAAA,CAAAD,cAAA;EAAAE,MAAA,EAAAA,CAAA,KAAAA,MAAA;EAAAC,WAAA,EAAAA,CAAA,KAAAA,WAAA;EAAAC,OAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAX,YAAqC,CAAAK,cAAA;AAS9B,IAAAO,kBAAgB,GAAAC,OAAA,oBAAoB;EAAAC,cAAA,GAAAD,OAAA;EAAAE,aAAA,GAAAF,OAAA;EAAAG,6BAAA,GAAAH,OAAA;EAAAI,UAAA,GAAAJ,OAAA;EAAAK,KAAA,GAAAC,OAAA,CAAAN,OAAA;EAAAJ,OAAA,OAAAQ,UAAA,CAAAG,mBAAA;IACzCC,KAAA,EAAO;IACPC,YAAA,EAAc;EAChB,CAAC;EAMKC,IAAA,GAAO;EAEAf,WAAA,OAAcS,UAAA,CAAAO,MAAA,EAAOT,aAAA,CAAAU,cAAA,EAAgB;IAChDC,IAAA,EAAMH,IAAA;IACNI,MAAA,EAAQ;IACRlB,OAAA;IAEAmB,QAAA,EAAU;MACRC,QAAA,EAAU;QACRC,KAAA,EAAO;UACLC,UAAA,EAAY;UACZC,eAAA,EAAiB;UACjBC,UAAA,EAAY;UACZC,cAAA,EAAgB;UAChBC,OAAA,EAAS;UACTC,WAAA,EAAa;UACbC,WAAA,EAAa;UACbC,MAAA,EAAQ;UACRC,UAAA,EAAY;YACVP,eAAA,EAAiB;UACnB;UACAQ,UAAA,EAAY;YACVR,eAAA,EAAiB;UACnB;UACAS,UAAA,EAAY;YACVL,WAAA,EAAa;UACf;UACAM,iBAAA,EAAmB;YACjBC,YAAA,EAAc;YACdC,YAAA,EAAc;YACdC,YAAA,EAAc;UAChB;QACF;MACF;MAEAvB,YAAA,EAAc,SAAAA,CAACwB,GAAmC;QAElD,OAAQ;MAAA;MAEJC,MAAA;QACAC,IAAA,WAAAA,CAAOC,CAAA,EAAAC,KAAA;UAAA,IACL;cAAAC,KAAQ;cAAA1C,OAAA,EAAA2C;YAAA,IAAAF,KAAA;YAAA5B,YAAA,GAAA6B,KAAA,CAAA7B,YAAA,IAAA8B,QAAA,EAAA9B,YAAA;UAAA,OACH;YACc+B,MACf;YAAiB,IACjB,CAAAF,KAAA,CAAAtB,QAAY,KAAAP,YAAA;cAAAU,eACV,eAAiB;cACnBO,UAAA;gBACAP,eAAY;cAAA;cACOS,UACjB;gBACFT,eAAA;gBACFI,WAAA;cACF;YACF;YACF,GAAAd;UACF;QAEA;MAAa;MACCgC,WACV;QAAeC,UACf;UACFC,aAAA;UACAC,cAAU;QAAA;QACOC,QACf;UACFF,aAAA;UACFC,cAAA;QACF;MAEA;IAAiB;IAEjBE,eAAA;MAgBW9B,QAAA,EAAS+B,OAAM,CAAAC,GAAA,CAAAC,gBAAA;IAC1B;EACE;EAAAvD,MAAM,kBAAAW,KAAA,CAAA6C,UAAA,WAAAZ,KAAA,EAAAa,YAAA;IAAA,IACJ;QAAAC,OAAS,EAAAC,WAAA;QAAAC,cAAA;QAAAC,eAAA;QAAA,GAAAC;MAAA,IAAAlB,KAAA;MAAA,CAAAc,OAAA,OAAAK,UAAA,QAAAtD,6BAAA,CAAAuD,oBAAA;QAAAC,IACT,EAAAN,WAAA;QAAiBO,QACjB,EAAAL,eAAA;QAAAM,WACG,EAAAP;MAAA,EACL;MAAAQ,cAEO;IAAoD,OACzD,eAAM,IAAA/D,kBAAA,CAAAgE,GAAA,EAAApE,WAAA;MAAA,IACN,CAAA2C,KAAA,CAAAtB,QAAU;QACVgD,KAAA,EAAAZ,OAAa;QACda,YAAA;MAED;MACE/B,MAAC,EAAAkB,OAAA;MAAA,gBAAAA,OAAA;MAAA,YACO,EAAMA,OAAA,OAAY;MAAA,eACf,EAAAd,KAAA,CAAU4B,QAAA,GAAW;MAAA,GAAAV,WAC5B;MAAcW,GAAA,EAChBhB,YAAA;MAAAiB,OACA,MAAQnE,cAAA,CAAAoE,oBAAA,GAAAP,cAAA,GAAAxB,KAAA,CAAA8B,OAAA,cAAAN,cAAA,cAAAA,cAAA;QAAAxB,KACR,CAAA4B,QAAA,IAAcT,UAAA,WAAAa,IAAA;UACd,QAAAA,IAAA;QAA6B,EAC7B;MAAqC;IACjC;EACC","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","Toggle_exports","__export","Toggle","ToggleFrame","module","exports","import_jsx_runtime","require","import_helpers","import_use_controllable_state","import_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","TAMAGUI_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":[]}