@tamagui/switch 1.61.3 → 1.62.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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Switch.tsx"],
4
- "mappings": "AAAA,SAAqB,kBAAkB,cAAc;AACrD,SAAS,eAAe;AACxB,SAAS,gBAAgB,cAAc;AAEvC,SAAS,eAAe,oBAAoB;AAErC,MAAM,cAAc,OAAO,gBAAgB;AAAA,EAChD,MAAM;AAAA,EACN,SAAS;AAAA,EAET,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,iBAAiB;AAAA,QACjB,cAAc;AAAA,MAChB;AAAA,IACF;AAAA,IAEA,MAAM;AAAA,MACJ,WAAW,CAAC,QAAQ;AAClB,cAAM,OAAO,gBAAgB,GAAG;AAChC,eAAO;AAAA,UACL,QAAQ;AAAA,UACR,OAAO;AAAA,QACT;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC;AAED,MAAM,kBAAkB,CAAC,QACvB,KAAK,MAAM,iBAAiB,QAAQ,GAAG,CAAC,IAAI,IAAI;AAElD,MAAM,iBAAiB,CAAC,QAAoB,gBAAgB,GAAG,IAAI;AAE5D,MAAM,cAAc,OAAO,QAAQ;AAAA,EACxC,MAAM;AAAA,EACN,KAAK;AAAA,EACL,SAAS;AAAA,EAET,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,cAAc;AAAA,QACd,aAAa;AAAA,QACb,aAAa;AAAA,QACb,iBAAiB;AAAA,QAEjB,YAAY;AAAA,UACV,aAAa;AAAA,UACb,cAAc;AAAA,UACd,cAAc;AAAA,UACd,cAAc;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,SAAS;AAAA,MACP,MAAM,CAAC;AAAA,IACT;AAAA,IAEA,YAAY;AAAA,MACV,WAAW,MAAM;AAAA,IACnB;AAAA,IAEA,MAAM;AAAA,MACJ,WAAW,CAAC,QAAQ;AAClB,cAAM,SAAS,gBAAgB,GAAG,IAAI;AACtC,cAAM,QAAQ,eAAe,GAAG,IAAI;AACpC,eAAO;AAAA,UACL;AAAA,UACA,WAAW;AAAA,UACX;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC;AAEM,MAAM,SAAS,aAAa;AAAA,EACjC,OAAO;AAAA,EACP,OAAO;AAAA,EACP,iBAAiB;AACnB,CAAC;",
4
+ "mappings": "AAAA,SAAqB,kBAAkB,cAAc;AACrD,SAAS,eAAe;AACxB,SAAS,gBAAgB,cAAc;AAEvC,SAAS,eAAe,oBAAoB;AAErC,MAAM,cAAc,OAAO,gBAAgB;AAAA,EAChD,MAAM;AAAA,EACN,SAAS;AAAA,EAET,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,iBAAiB;AAAA,QACjB,cAAc;AAAA,MAChB;AAAA,IACF;AAAA,IAEA,MAAM;AAAA,MACJ,WAAW,CAAC,QAAQ;AAClB,cAAM,OAAO,gBAAgB,GAAG;AAChC,eAAO;AAAA,UACL,QAAQ;AAAA,UACR,OAAO;AAAA,QACT;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAEK,kBAAkB,CAAC,QACvB,KAAK,MAAM,iBAAiB,QAAQ,GAAG,CAAC,IAAI,IAAI,GAE5C,iBAAiB,CAAC,QAAoB,gBAAgB,GAAG,IAAI,GAEtD,cAAc,OAAO,QAAQ;AAAA,EACxC,MAAM;AAAA,EACN,KAAK;AAAA,EACL,SAAS;AAAA,EAET,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,cAAc;AAAA,QACd,aAAa;AAAA,QACb,aAAa;AAAA,QACb,iBAAiB;AAAA,QAEjB,YAAY;AAAA,UACV,aAAa;AAAA,UACb,cAAc;AAAA,UACd,cAAc;AAAA,UACd,cAAc;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,SAAS;AAAA,MACP,MAAM,CAAC;AAAA,IACT;AAAA,IAEA,YAAY;AAAA,MACV,WAAW,MAAM;AAAA,IACnB;AAAA,IAEA,MAAM;AAAA,MACJ,WAAW,CAAC,QAAQ;AAClB,cAAM,SAAS,gBAAgB,GAAG,IAAI,GAChC,QAAQ,eAAe,GAAG,IAAI;AACpC,eAAO;AAAA,UACL;AAAA,UACA,WAAW;AAAA,UACX;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAEY,SAAS,aAAa;AAAA,EACjC,OAAO;AAAA,EACP,OAAO;AAAA,EACP,iBAAiB;AACnB,CAAC;",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,79 @@
1
+ import { getVariableValue, styled } from "@tamagui/core";
2
+ import { getSize } from "@tamagui/get-token";
3
+ import { ThemeableStack, YStack } from "@tamagui/stacks";
4
+ import { SwitchContext, createSwitch } from "./createSwitch";
5
+ const SwitchThumb = styled(ThemeableStack, {
6
+ name: "SwitchThumb",
7
+ context: SwitchContext,
8
+ variants: {
9
+ unstyled: {
10
+ false: {
11
+ size: "$true",
12
+ backgroundColor: "$background",
13
+ borderRadius: 1e3
14
+ }
15
+ },
16
+ size: {
17
+ "...size": (val) => {
18
+ const size = getSwitchHeight(val);
19
+ return {
20
+ height: size,
21
+ width: size
22
+ };
23
+ }
24
+ }
25
+ },
26
+ defaultVariants: {
27
+ unstyled: !1
28
+ }
29
+ }), getSwitchHeight = (val) => Math.round(getVariableValue(getSize(val)) * 0.65), getSwitchWidth = (val) => getSwitchHeight(val) * 2, SwitchFrame = styled(YStack, {
30
+ name: "Switch",
31
+ tag: "button",
32
+ context: SwitchContext,
33
+ variants: {
34
+ unstyled: {
35
+ false: {
36
+ size: "$true",
37
+ borderRadius: 1e3,
38
+ borderWidth: 2,
39
+ borderColor: "transparent",
40
+ backgroundColor: "$background",
41
+ focusStyle: {
42
+ borderColor: "$borderColorFocus",
43
+ outlineColor: "$borderColorFocus",
44
+ outlineStyle: "solid",
45
+ outlineWidth: 1
46
+ }
47
+ }
48
+ },
49
+ checked: {
50
+ true: {}
51
+ },
52
+ frameWidth: {
53
+ ":number": () => null
54
+ },
55
+ size: {
56
+ "...size": (val) => {
57
+ const height = getSwitchHeight(val) + 4, width = getSwitchWidth(val) + 4;
58
+ return {
59
+ height,
60
+ minHeight: height,
61
+ width
62
+ };
63
+ }
64
+ }
65
+ },
66
+ defaultVariants: {
67
+ unstyled: !1
68
+ }
69
+ }), Switch = createSwitch({
70
+ Frame: SwitchFrame,
71
+ Thumb: SwitchThumb,
72
+ acceptsUnstyled: !0
73
+ });
74
+ export {
75
+ Switch,
76
+ SwitchFrame,
77
+ SwitchThumb
78
+ };
79
+ //# sourceMappingURL=Switch.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/Switch.tsx"],
4
+ "mappings": "AAAA,SAAqB,kBAAkB,cAAc;AACrD,SAAS,eAAe;AACxB,SAAS,gBAAgB,cAAc;AAEvC,SAAS,eAAe,oBAAoB;AAErC,MAAM,cAAc,OAAO,gBAAgB;AAAA,EAChD,MAAM;AAAA,EACN,SAAS;AAAA,EAET,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,iBAAiB;AAAA,QACjB,cAAc;AAAA,MAChB;AAAA,IACF;AAAA,IAEA,MAAM;AAAA,MACJ,WAAW,CAAC,QAAQ;AAClB,cAAM,OAAO,gBAAgB,GAAG;AAChC,eAAO;AAAA,UACL,QAAQ;AAAA,UACR,OAAO;AAAA,QACT;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAEK,kBAAkB,CAAC,QACvB,KAAK,MAAM,iBAAiB,QAAQ,GAAG,CAAC,IAAI,IAAI,GAE5C,iBAAiB,CAAC,QAAoB,gBAAgB,GAAG,IAAI,GAEtD,cAAc,OAAO,QAAQ;AAAA,EACxC,MAAM;AAAA,EACN,KAAK;AAAA,EACL,SAAS;AAAA,EAET,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,cAAc;AAAA,QACd,aAAa;AAAA,QACb,aAAa;AAAA,QACb,iBAAiB;AAAA,QAEjB,YAAY;AAAA,UACV,aAAa;AAAA,UACb,cAAc;AAAA,UACd,cAAc;AAAA,UACd,cAAc;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,SAAS;AAAA,MACP,MAAM,CAAC;AAAA,IACT;AAAA,IAEA,YAAY;AAAA,MACV,WAAW,MAAM;AAAA,IACnB;AAAA,IAEA,MAAM;AAAA,MACJ,WAAW,CAAC,QAAQ;AAClB,cAAM,SAAS,gBAAgB,GAAG,IAAI,GAChC,QAAQ,eAAe,GAAG,IAAI;AACpC,eAAO;AAAA,UACL;AAAA,UACA,WAAW;AAAA,UACX;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAEY,SAAS,aAAa;AAAA,EACjC,OAAO;AAAA,EACP,OAAO;AAAA,EACP,iBAAiB;AACnB,CAAC;",
5
+ "names": []
6
+ }
@@ -18,23 +18,19 @@ import {
18
18
  Platform
19
19
  } from "react-native";
20
20
  const SwitchContext = createStyledContext({
21
- checked: false,
22
- disabled: false,
21
+ checked: !1,
22
+ disabled: !1,
23
23
  size: void 0,
24
24
  frameWidth: 0,
25
- unstyled: false
25
+ unstyled: !1
26
26
  });
27
27
  function createSwitch({ Frame, Thumb, acceptsUnstyled }) {
28
- const SwitchThumb = Thumb.styleable(function SwitchThumb2(props, forwardedRef) {
29
- const { size: sizeProp, ...thumbProps } = props;
30
- const { disabled, checked, unstyled, frameWidth } = React.useContext(SwitchContext);
31
- const [thumbWidth, setThumbWidth] = React.useState(0);
32
- const initialChecked = React.useRef(checked).current;
33
- const distance = frameWidth - thumbWidth;
28
+ const SwitchThumb = Thumb.styleable(function(props, forwardedRef) {
29
+ const { size: sizeProp, ...thumbProps } = props, { disabled, checked, unstyled, frameWidth } = React.useContext(SwitchContext), [thumbWidth, setThumbWidth] = React.useState(0), initialChecked = React.useRef(checked).current, distance = frameWidth - thumbWidth;
34
30
  return (
35
31
  // @ts-ignore
36
32
  <Thumb
37
- theme={unstyled === false && checked ? "active" : null}
33
+ theme={unstyled === !1 && checked ? "active" : null}
38
34
  data-state={getState(checked)}
39
35
  data-disabled={disabled ? "" : void 0}
40
36
  alignSelf={initialChecked ? "flex-end" : "flex-start"}
@@ -50,12 +46,9 @@ function createSwitch({ Frame, Thumb, acceptsUnstyled }) {
50
46
  ref={forwardedRef}
51
47
  />
52
48
  );
53
- });
54
- const SwitchComponent = Frame.extractable(
55
- React.forwardRef(function SwitchFrame(propsIn, forwardedRef) {
56
- const styledContext = React.useContext(SwitchContext);
57
- const props = useProps(propsIn);
58
- const {
49
+ }), SwitchComponent = Frame.extractable(
50
+ React.forwardRef(function(propsIn, forwardedRef) {
51
+ const styledContext = React.useContext(SwitchContext), props = useProps(propsIn), {
59
52
  labeledBy: ariaLabelledby,
60
53
  name,
61
54
  checked: checkedProp,
@@ -65,60 +58,33 @@ function createSwitch({ Frame, Thumb, acceptsUnstyled }) {
65
58
  value = "on",
66
59
  onCheckedChange,
67
60
  size = styledContext.size ?? "$true",
68
- unstyled = styledContext.unstyled ?? false,
61
+ unstyled = styledContext.unstyled ?? !1,
69
62
  native: nativeProp,
70
63
  nativeProps,
71
64
  ...switchProps
72
- } = props;
73
- const leftBorderWidth = (() => {
74
- let _ = void 0;
75
- for (const key in switchProps) {
76
- if (key === "borderWidth" || key === "borderLeftWidth") {
77
- _ = switchProps[key];
78
- }
79
- }
80
- if (acceptsUnstyled && _ === void 0 && unstyled === false) {
81
- _ = 2;
82
- }
83
- if (typeof _ === "string") {
84
- _ = getVariableValue(getSize(_));
85
- }
86
- return +_;
87
- })();
88
- const native = Array.isArray(nativeProp) ? nativeProp : [nativeProp];
89
- const shouldRenderMobileNative = !isWeb && nativeProp === true || !isWeb && native.includes("mobile") || native.includes("android") && Platform.OS === "android" || native.includes("ios") && Platform.OS === "ios";
90
- const [button, setButton] = React.useState(null);
91
- const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));
92
- const labelId = useLabelContext(button);
93
- const labelledBy = ariaLabelledby || labelId;
94
- const hasConsumerStoppedPropagationRef = React.useRef(false);
95
- const isFormControl = isWeb ? button ? Boolean(button.closest("form")) : true : false;
96
- const [frameWidth, setFrameWidth] = React.useState(0);
97
- const [checked = false, setChecked] = useControllableState({
65
+ } = props, leftBorderWidth = (() => {
66
+ let _;
67
+ for (const key in switchProps)
68
+ (key === "borderWidth" || key === "borderLeftWidth") && (_ = switchProps[key]);
69
+ return acceptsUnstyled && _ === void 0 && unstyled === !1 && (_ = 2), typeof _ == "string" && (_ = getVariableValue(getSize(_))), +_;
70
+ })(), native = Array.isArray(nativeProp) ? nativeProp : [nativeProp], shouldRenderMobileNative = !isWeb && nativeProp === !0 || !isWeb && native.includes("mobile") || native.includes("android") && Platform.OS === "android" || native.includes("ios") && Platform.OS === "ios", [button, setButton] = React.useState(null), composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node)), labelId = useLabelContext(button), labelledBy = ariaLabelledby || labelId, hasConsumerStoppedPropagationRef = React.useRef(!1), isFormControl = isWeb ? button ? !!button.closest("form") : !0 : !1, [frameWidth, setFrameWidth] = React.useState(0), [checked = !1, setChecked] = useControllableState({
98
71
  prop: checkedProp,
99
- defaultProp: defaultChecked || false,
72
+ defaultProp: defaultChecked || !1,
100
73
  onChange: onCheckedChange,
101
- transition: true
74
+ transition: !0
102
75
  });
103
- if (shouldRenderMobileNative) {
104
- return <NativeSwitch
105
- value={checkedProp}
106
- onValueChange={onCheckedChange}
107
- {...nativeProps}
108
- />;
109
- }
110
- if (!isWeb) {
111
- React.useEffect(() => {
112
- if (!props.id)
113
- return;
76
+ return shouldRenderMobileNative ? <NativeSwitch
77
+ value={checkedProp}
78
+ onValueChange={onCheckedChange}
79
+ {...nativeProps}
80
+ /> : (isWeb || React.useEffect(() => {
81
+ if (props.id)
114
82
  return registerFocusable(props.id, {
115
83
  focus: () => {
116
84
  setChecked((x) => !x);
117
85
  }
118
86
  });
119
- }, [props.id, setChecked]);
120
- }
121
- return <>
87
+ }, [props.id, setChecked]), <>
122
88
  {
123
89
  /* @ts-ignore */
124
90
  }
@@ -141,12 +107,7 @@ function createSwitch({ Frame, Thumb, acceptsUnstyled }) {
141
107
  {...switchProps}
142
108
  ref={composedRefs}
143
109
  onPress={composeEventHandlers(props.onPress, (event) => {
144
- setChecked((prevChecked) => !prevChecked);
145
- if (isWeb && isFormControl) {
146
- hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();
147
- if (!hasConsumerStoppedPropagationRef.current)
148
- event.stopPropagation();
149
- }
110
+ setChecked((prevChecked) => !prevChecked), isWeb && isFormControl && (hasConsumerStoppedPropagationRef.current = event.isPropagationStopped(), hasConsumerStoppedPropagationRef.current || event.stopPropagation());
150
111
  })}
151
112
  onLayout={composeEventHandlers(
152
113
  props.onLayout,
@@ -166,54 +127,43 @@ function createSwitch({ Frame, Thumb, acceptsUnstyled }) {
166
127
  disabled={disabled}
167
128
  style={{ transform: "translateX(-100%)" }}
168
129
  />}
169
- </>;
130
+ </>);
170
131
  })
171
- );
172
- const BubbleInput = (props) => {
173
- const { control, checked, bubbles = true, ...inputProps } = props;
174
- const ref = React.useRef(null);
175
- const prevChecked = usePrevious(checked);
176
- React.useEffect(() => {
177
- const input = ref.current;
178
- const inputProto = window.HTMLInputElement.prototype;
179
- const descriptor = Object.getOwnPropertyDescriptor(
132
+ ), BubbleInput = (props) => {
133
+ const { control, checked, bubbles = !0, ...inputProps } = props, ref = React.useRef(null), prevChecked = usePrevious(checked);
134
+ return React.useEffect(() => {
135
+ const input = ref.current, inputProto = window.HTMLInputElement.prototype, setChecked = Object.getOwnPropertyDescriptor(
180
136
  inputProto,
181
137
  "checked"
182
- );
183
- const setChecked = descriptor.set;
138
+ ).set;
184
139
  if (prevChecked !== checked && setChecked) {
185
140
  const event = new Event("click", { bubbles });
186
- setChecked.call(input, checked);
187
- input.dispatchEvent(event);
141
+ setChecked.call(input, checked), input.dispatchEvent(event);
188
142
  }
189
- }, [prevChecked, checked, bubbles]);
190
- return (
191
- // @ts-ignore
192
- <input
193
- type="checkbox"
194
- aria-hidden
195
- defaultChecked={checked}
196
- {...inputProps}
197
- tabIndex={-1}
198
- ref={ref}
199
- style={{
200
- ...props.style,
201
- // ...controlSize,
202
- position: "absolute",
203
- pointerEvents: "none",
204
- opacity: 0,
205
- margin: 0
206
- }}
207
- />
208
- );
143
+ }, [prevChecked, checked, bubbles]), // @ts-ignore
144
+ <input
145
+ type="checkbox"
146
+ aria-hidden
147
+ defaultChecked={checked}
148
+ {...inputProps}
149
+ tabIndex={-1}
150
+ ref={ref}
151
+ style={{
152
+ ...props.style,
153
+ // ...controlSize,
154
+ position: "absolute",
155
+ pointerEvents: "none",
156
+ opacity: 0,
157
+ margin: 0
158
+ }}
159
+ />;
209
160
  };
210
161
  function getState(checked) {
211
162
  return checked ? "checked" : "unchecked";
212
163
  }
213
- const Switch = withStaticProperties(SwitchComponent, {
164
+ return withStaticProperties(SwitchComponent, {
214
165
  Thumb: SwitchThumb
215
166
  });
216
- return Switch;
217
167
  }
218
168
  export {
219
169
  SwitchContext,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createSwitch.tsx"],
4
- "mappings": "AAAA,SAAS,uBAAuB;AAChC;AAAA,EAME;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,yBAAyB;AAClC,SAAS,eAAe;AACxB,SAAS,uBAAuB;AAChC,SAAS,4BAA4B;AACrC,SAAS,mBAAmB;AAC5B,YAAY,WAAW;AACvB;AAAA,EACE,UAAU;AAAA,EAEV;AAAA,OACK;AAEA,MAAM,gBAAgB,oBAM1B;AAAA,EACD,SAAS;AAAA,EACT,UAAU;AAAA,EACV,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,UAAU;AACZ,CAAC;AAuBM,SAAS,aAMd,EAAE,OAAO,OAAO,gBAAgB,GAAsD;AACtF,QAAM,cAAc,MAAM,UAAU,SAASA,aAAY,OAAO,cAAc;AAC5E,UAAM,EAAE,MAAM,UAAU,GAAG,WAAW,IAAI;AAC1C,UAAM,EAAE,UAAU,SAAS,UAAU,WAAW,IAAI,MAAM,WAAW,aAAa;AAClF,UAAM,CAAC,YAAY,aAAa,IAAI,MAAM,SAAS,CAAC;AACpD,UAAM,iBAAiB,MAAM,OAAO,OAAO,EAAE;AAC7C,UAAM,WAAW,aAAa;AAC9B;AAAA;AAAA,MAEE,CAAC;AAAA,QACC,OAAO,aAAa,SAAS,UAAU,WAAW;AAAA,QAClD,YAAY,SAAS,OAAO;AAAA,QAC5B,eAAe,WAAW,KAAK;AAAA,QAC/B,WAAW,iBAAiB,aAAa;AAAA,QACzC,GAAG,iBAAkB,UAAU,IAAI,CAAC,WAAY,UAAU,WAAW;AAAA,YACjE;AAAA,QAEJ,UAAU;AAAA,UAAqB,MAAM;AAAA,UAAU,CAAC;AAAA;AAAA,YAE9C,cAAc,EAAE,YAAY,OAAO,KAAK;AAAA;AAAA,QAC1C;AAAA,QACA,KAAK;AAAA,MACP;AAAA;AAAA,EAEJ,CAAC;AAED,QAAM,kBAAkB,MAAM;AAAA,IAC5B,MAAM,WAAwC,SAAS,YACrD,SACA,cACA;AACA,YAAM,gBAAgB,MAAM,WAAW,aAAa;AACpD,YAAM,QAAQ,SAAS,OAAO;AAC9B,YAAM;AAAA,QACJ,WAAW;AAAA,QACX;AAAA,QACA,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA,QAAQ;AAAA,QACR;AAAA,QACA,OAAO,cAAc,QAAQ;AAAA,QAC7B,WAAW,cAAc,YAAY;AAAA,QACrC,QAAQ;AAAA,QACR;AAAA,QACA,GAAG;AAAA,MACL,IAAI;AAEJ,YAAM,mBAAmB,MAAM;AAC7B,YAAI,IAAS;AACb,mBAAW,OAAO,aAAa;AAC7B,cAAI,QAAQ,iBAAiB,QAAQ,mBAAmB;AACtD,gBAAI,YAAY,GAAG;AAAA,UACrB;AAAA,QACF;AACA,YAAI,mBAAmB,MAAM,UAAa,aAAa,OAAO;AAC5D,cAAI;AAAA,QACN;AACA,YAAI,OAAO,MAAM,UAAU;AACzB,cAAI,iBAAiB,QAAQ,CAAC,CAAC;AAAA,QACjC;AACA,eAAO,CAAC;AAAA,MACV,GAAG;AAEH,YAAM,SAAS,MAAM,QAAQ,UAAU,IAAI,aAAa,CAAC,UAAU;AAEnE,YAAM,2BACH,CAAC,SAAS,eAAe,QACzB,CAAC,SAAS,OAAO,SAAS,QAAQ,KAClC,OAAO,SAAS,SAAS,KAAK,SAAS,OAAO,aAC9C,OAAO,SAAS,KAAK,KAAK,SAAS,OAAO;AAE7C,YAAM,CAAC,QAAQ,SAAS,IAAI,MAAM,SAAmC,IAAI;AACzE,YAAM,eAAe,gBAAgB,cAAc,CAAC,SAAS,UAAU,IAAW,CAAC;AACnF,YAAM,UAAU,gBAAgB,MAAM;AACtC,YAAM,aAAa,kBAAkB;AACrC,YAAM,mCAAmC,MAAM,OAAO,KAAK;AAE3D,YAAM,gBAAgB,QAClB,SACE,QAAQ,OAAO,QAAQ,MAAM,CAAC,IAC9B,OACF;AAEJ,YAAM,CAAC,YAAY,aAAa,IAAI,MAAM,SAAS,CAAC;AAEpD,YAAM,CAAC,UAAU,OAAO,UAAU,IAAI,qBAAqB;AAAA,QACzD,MAAM;AAAA,QACN,aAAa,kBAAkB;AAAA,QAC/B,UAAU;AAAA,QACV,YAAY;AAAA,MACd,CAAC;AAED,UAAI,0BAA0B;AAC5B,eACE,CAAC;AAAA,UACC,OAAO;AAAA,UACP,eAAe;AAAA,cACX;AAAA,QACN;AAAA,MAEJ;AAEA,UAAI,CAAC,OAAO;AAEV,cAAM,UAAU,MAAM;AACpB,cAAI,CAAC,MAAM;AAAI;AACf,iBAAO,kBAAkB,MAAM,IAAI;AAAA,YACjC,OAAO,MAAM;AACX,yBAAW,CAAC,MAAM,CAAC,CAAC;AAAA,YACtB;AAAA,UACF,CAAC;AAAA,QACH,GAAG,CAAC,MAAM,IAAI,UAAU,CAAC;AAAA,MAC3B;AAEA,aACE;AAAA;AAAA;AAAA;AAAA,QAEE,CAAC;AAAA,UACC,UAAU;AAAA,UACV,MAAM;AAAA,UACN,SAAS;AAAA,UACT,UAAU;AAAA,UACV,YAAY,aAAa,aAAa,kBAAkB,IAAI;AAAA,UAC5D,OAAO,UAAU,WAAW;AAAA,UAC5B;AAAA,UACA,KAAK;AAAA,UACL,cAAc;AAAA,UACd,iBAAiB;AAAA,UACjB,eAAe;AAAA,UACf,YAAY,SAAS,OAAO;AAAA,UAC5B,eAAe,WAAW,KAAK;AAAA,UAE/B,UAAU,WAAW,SAAY;AAAA,UAEjC,OAAO;AAAA,cACH;AAAA,UACJ,KAAK;AAAA,UACL,SAAS,qBAAqB,MAAM,SAAS,CAAC,UAAU;AACtD,uBAAW,CAAC,gBAAgB,CAAC,WAAW;AACxC,gBAAI,SAAS,eAAe;AAC1B,+CAAiC,UAAU,MAAM,qBAAqB;AAItE,kBAAI,CAAC,iCAAiC;AAAS,sBAAM,gBAAgB;AAAA,YACvE;AAAA,UACF,CAAC;AAAA,UAED,UAAU;AAAA,YAAqB,MAAM;AAAA,YAAU,CAAC;AAAA;AAAA,cAE9C,cAAc,EAAE,YAAY,OAAO,KAAK;AAAA;AAAA,UAC1C;AAAA,QACF;AAAA,SACC,SAAS,iBACR,CAAC;AAAA,UACC,SAAS;AAAA,UACT,SAAS,CAAC,iCAAiC;AAAA,UAC3C,MAAM;AAAA,UACN,OAAO;AAAA,UACP,SAAS;AAAA,UACT,UAAU;AAAA,UACV,UAAU;AAAA,UAIV,OAAO,EAAE,WAAW,oBAAoB;AAAA,QAC1C;AAAA,MAEJ;AAAA,IAEJ,CAAC;AAAA,EACH;AAaA,QAAM,cAAc,CAAC,UAA4B;AAC/C,UAAM,EAAE,SAAS,SAAS,UAAU,MAAM,GAAG,WAAW,IAAI;AAC5D,UAAM,MAAM,MAAM,OAAyB,IAAI;AAC/C,UAAM,cAAc,YAAY,OAAO;AAIvC,UAAM,UAAU,MAAM;AACpB,YAAM,QAAQ,IAAI;AAClB,YAAM,aAAa,OAAO,iBAAiB;AAC3C,YAAM,aAAa,OAAO;AAAA,QACxB;AAAA,QACA;AAAA,MACF;AACA,YAAM,aAAa,WAAW;AAC9B,UAAI,gBAAgB,WAAW,YAAY;AACzC,cAAM,QAAQ,IAAI,MAAM,SAAS,EAAE,QAAQ,CAAC;AAC5C,mBAAW,KAAK,OAAO,OAAO;AAC9B,cAAM,cAAc,KAAK;AAAA,MAC3B;AAAA,IACF,GAAG,CAAC,aAAa,SAAS,OAAO,CAAC;AAElC;AAAA;AAAA,MAEE,CAAC;AAAA,QACC,KAAK;AAAA,QACL;AAAA,QACA,gBAAgB;AAAA,YACZ;AAAA,QACJ,UAAU;AAAA,QACV,KAAK;AAAA,QACL,OAAO;AAAA,UACL,GAAG,MAAM;AAAA;AAAA,UAET,UAAU;AAAA,UACV,eAAe;AAAA,UACf,SAAS;AAAA,UACT,QAAQ;AAAA,QACV;AAAA,MACF;AAAA;AAAA,EAEJ;AAEA,WAAS,SAAS,SAAkB;AAClC,WAAO,UAAU,YAAY;AAAA,EAC/B;AAEA,QAAM,SAAS,qBAAqB,iBAAiB;AAAA,IACnD,OAAO;AAAA,EACT,CAAC;AAED,SAAO;AACT;",
5
- "names": ["SwitchThumb"]
4
+ "mappings": "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",
5
+ "names": []
6
6
  }
@@ -0,0 +1,172 @@
1
+ import { useComposedRefs } from "@tamagui/compose-refs";
2
+ import {
3
+ composeEventHandlers,
4
+ createStyledContext,
5
+ getVariableValue,
6
+ isWeb,
7
+ useProps,
8
+ withStaticProperties
9
+ } from "@tamagui/core";
10
+ import { registerFocusable } from "@tamagui/focusable";
11
+ import { getSize } from "@tamagui/get-token";
12
+ import { useLabelContext } from "@tamagui/label";
13
+ import { useControllableState } from "@tamagui/use-controllable-state";
14
+ import { usePrevious } from "@tamagui/use-previous";
15
+ import * as React from "react";
16
+ import {
17
+ Switch as NativeSwitch,
18
+ Platform
19
+ } from "react-native";
20
+ const SwitchContext = createStyledContext({
21
+ checked: !1,
22
+ disabled: !1,
23
+ size: void 0,
24
+ frameWidth: 0,
25
+ unstyled: !1
26
+ });
27
+ function createSwitch({ Frame, Thumb, acceptsUnstyled }) {
28
+ const SwitchThumb = Thumb.styleable(function(props, forwardedRef) {
29
+ const { size: sizeProp, ...thumbProps } = props, { disabled, checked, unstyled, frameWidth } = React.useContext(SwitchContext), [thumbWidth, setThumbWidth] = React.useState(0), initialChecked = React.useRef(checked).current, distance = frameWidth - thumbWidth;
30
+ return (
31
+ // @ts-ignore
32
+ <Thumb
33
+ theme={unstyled === !1 && checked ? "active" : null}
34
+ data-state={getState(checked)}
35
+ data-disabled={disabled ? "" : void 0}
36
+ alignSelf={initialChecked ? "flex-end" : "flex-start"}
37
+ x={initialChecked ? checked ? 0 : -distance : checked ? distance : 0}
38
+ {...thumbProps}
39
+ onLayout={composeEventHandlers(
40
+ props.onLayout,
41
+ (e) => (
42
+ // @ts-ignore
43
+ setThumbWidth(e.nativeEvent.layout.width)
44
+ )
45
+ )}
46
+ ref={forwardedRef}
47
+ />
48
+ );
49
+ }), SwitchComponent = Frame.extractable(
50
+ React.forwardRef(function(propsIn, forwardedRef) {
51
+ const styledContext = React.useContext(SwitchContext), props = useProps(propsIn), {
52
+ labeledBy: ariaLabelledby,
53
+ name,
54
+ checked: checkedProp,
55
+ defaultChecked,
56
+ required,
57
+ disabled,
58
+ value = "on",
59
+ onCheckedChange,
60
+ size = styledContext.size ?? "$true",
61
+ unstyled = styledContext.unstyled ?? !1,
62
+ native: nativeProp,
63
+ nativeProps,
64
+ ...switchProps
65
+ } = props, leftBorderWidth = (() => {
66
+ let _;
67
+ for (const key in switchProps)
68
+ (key === "borderWidth" || key === "borderLeftWidth") && (_ = switchProps[key]);
69
+ return acceptsUnstyled && _ === void 0 && unstyled === !1 && (_ = 2), typeof _ == "string" && (_ = getVariableValue(getSize(_))), +_;
70
+ })(), native = Array.isArray(nativeProp) ? nativeProp : [nativeProp], shouldRenderMobileNative = !isWeb && nativeProp === !0 || !isWeb && native.includes("mobile") || native.includes("android") && Platform.OS === "android" || native.includes("ios") && Platform.OS === "ios", [button, setButton] = React.useState(null), composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node)), labelId = useLabelContext(button), labelledBy = ariaLabelledby || labelId, hasConsumerStoppedPropagationRef = React.useRef(!1), isFormControl = isWeb ? button ? !!button.closest("form") : !0 : !1, [frameWidth, setFrameWidth] = React.useState(0), [checked = !1, setChecked] = useControllableState({
71
+ prop: checkedProp,
72
+ defaultProp: defaultChecked || !1,
73
+ onChange: onCheckedChange,
74
+ transition: !0
75
+ });
76
+ return shouldRenderMobileNative ? <NativeSwitch
77
+ value={checkedProp}
78
+ onValueChange={onCheckedChange}
79
+ {...nativeProps}
80
+ /> : (isWeb || React.useEffect(() => {
81
+ if (props.id)
82
+ return registerFocusable(props.id, {
83
+ focus: () => {
84
+ setChecked((x) => !x);
85
+ }
86
+ });
87
+ }, [props.id, setChecked]), <>
88
+ {
89
+ /* @ts-ignore */
90
+ }
91
+ <Frame
92
+ unstyled={unstyled}
93
+ size={size}
94
+ checked={checked}
95
+ disabled={disabled}
96
+ frameWidth={frameWidth ? frameWidth - leftBorderWidth * 2 : 0}
97
+ theme={checked ? "active" : null}
98
+ themeShallow
99
+ role="switch"
100
+ aria-checked={checked}
101
+ aria-labelledby={labelledBy}
102
+ aria-required={required}
103
+ data-state={getState(checked)}
104
+ data-disabled={disabled ? "" : void 0}
105
+ tabIndex={disabled ? void 0 : 0}
106
+ value={value}
107
+ {...switchProps}
108
+ ref={composedRefs}
109
+ onPress={composeEventHandlers(props.onPress, (event) => {
110
+ setChecked((prevChecked) => !prevChecked), isWeb && isFormControl && (hasConsumerStoppedPropagationRef.current = event.isPropagationStopped(), hasConsumerStoppedPropagationRef.current || event.stopPropagation());
111
+ })}
112
+ onLayout={composeEventHandlers(
113
+ props.onLayout,
114
+ (e) => (
115
+ // @ts-ignore
116
+ setFrameWidth(e.nativeEvent.layout.width)
117
+ )
118
+ )}
119
+ />
120
+ {isWeb && isFormControl && <BubbleInput
121
+ control={button}
122
+ bubbles={!hasConsumerStoppedPropagationRef.current}
123
+ name={name}
124
+ value={value}
125
+ checked={checked}
126
+ required={required}
127
+ disabled={disabled}
128
+ style={{ transform: "translateX(-100%)" }}
129
+ />}
130
+ </>);
131
+ })
132
+ ), BubbleInput = (props) => {
133
+ const { control, checked, bubbles = !0, ...inputProps } = props, ref = React.useRef(null), prevChecked = usePrevious(checked);
134
+ return React.useEffect(() => {
135
+ const input = ref.current, inputProto = window.HTMLInputElement.prototype, setChecked = Object.getOwnPropertyDescriptor(
136
+ inputProto,
137
+ "checked"
138
+ ).set;
139
+ if (prevChecked !== checked && setChecked) {
140
+ const event = new Event("click", { bubbles });
141
+ setChecked.call(input, checked), input.dispatchEvent(event);
142
+ }
143
+ }, [prevChecked, checked, bubbles]), // @ts-ignore
144
+ <input
145
+ type="checkbox"
146
+ aria-hidden
147
+ defaultChecked={checked}
148
+ {...inputProps}
149
+ tabIndex={-1}
150
+ ref={ref}
151
+ style={{
152
+ ...props.style,
153
+ // ...controlSize,
154
+ position: "absolute",
155
+ pointerEvents: "none",
156
+ opacity: 0,
157
+ margin: 0
158
+ }}
159
+ />;
160
+ };
161
+ function getState(checked) {
162
+ return checked ? "checked" : "unchecked";
163
+ }
164
+ return withStaticProperties(SwitchComponent, {
165
+ Thumb: SwitchThumb
166
+ });
167
+ }
168
+ export {
169
+ SwitchContext,
170
+ createSwitch
171
+ };
172
+ //# sourceMappingURL=createSwitch.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/createSwitch.tsx"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,3 @@
1
+ export * from "./Switch";
2
+ export * from "./createSwitch";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/index.ts"],
4
+ "mappings": "AAAA,cAAc;AACd,cAAc;",
5
+ "names": []
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/switch",
3
- "version": "1.61.3",
3
+ "version": "1.62.1",
4
4
  "sideEffects": [
5
5
  "*.css"
6
6
  ],
@@ -31,22 +31,22 @@
31
31
  }
32
32
  },
33
33
  "dependencies": {
34
- "@tamagui/compose-refs": "1.61.3",
35
- "@tamagui/core": "1.61.3",
36
- "@tamagui/create-context": "1.61.3",
37
- "@tamagui/focusable": "1.61.3",
38
- "@tamagui/get-token": "1.61.3",
39
- "@tamagui/label": "1.61.3",
40
- "@tamagui/stacks": "1.61.3",
41
- "@tamagui/use-controllable-state": "1.61.3",
42
- "@tamagui/use-previous": "1.61.3"
34
+ "@tamagui/compose-refs": "1.62.1",
35
+ "@tamagui/core": "1.62.1",
36
+ "@tamagui/create-context": "1.62.1",
37
+ "@tamagui/focusable": "1.62.1",
38
+ "@tamagui/get-token": "1.62.1",
39
+ "@tamagui/label": "1.62.1",
40
+ "@tamagui/stacks": "1.62.1",
41
+ "@tamagui/use-controllable-state": "1.62.1",
42
+ "@tamagui/use-previous": "1.62.1"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "react": "*",
46
46
  "react-native": "*"
47
47
  },
48
48
  "devDependencies": {
49
- "@tamagui/build": "1.61.3",
49
+ "@tamagui/build": "1.62.1",
50
50
  "react": "^18.2.0",
51
51
  "react-native": "^0.72.1"
52
52
  },