@fluentui/react-switch 9.0.0-alpha.8 → 9.0.0-alpha.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.json CHANGED
@@ -2,7 +2,78 @@
2
2
  "name": "@fluentui/react-switch",
3
3
  "entries": [
4
4
  {
5
- "date": "Wed, 22 Sep 2021 10:08:31 GMT",
5
+ "date": "Thu, 23 Sep 2021 08:19:56 GMT",
6
+ "tag": "@fluentui/react-switch_v9.0.0-alpha.9",
7
+ "version": "9.0.0-alpha.9",
8
+ "comments": {
9
+ "none": [
10
+ {
11
+ "author": "czearing@outlook.com",
12
+ "package": "@fluentui/react-switch",
13
+ "comment": "Importing clamp from react-utilities.",
14
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
15
+ }
16
+ ],
17
+ "prerelease": [
18
+ {
19
+ "author": "czearing@outlook.com",
20
+ "package": "@fluentui/react-switch",
21
+ "comment": "Adding dragging to the Switch component.",
22
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
23
+ },
24
+ {
25
+ "author": "beachball",
26
+ "package": "@fluentui/react-switch",
27
+ "comment": "Bump @fluentui/react-make-styles to v9.0.0-alpha.71",
28
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
29
+ },
30
+ {
31
+ "author": "beachball",
32
+ "package": "@fluentui/react-switch",
33
+ "comment": "Bump @fluentui/react-tabster to v9.0.0-alpha.65",
34
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
35
+ },
36
+ {
37
+ "author": "beachball",
38
+ "package": "@fluentui/react-switch",
39
+ "comment": "Bump @fluentui/react-utilities to v9.0.0-alpha.51",
40
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
41
+ },
42
+ {
43
+ "author": "beachball",
44
+ "package": "@fluentui/react-switch",
45
+ "comment": "Bump @fluentui/babel-make-styles to v9.0.0-alpha.53",
46
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
47
+ },
48
+ {
49
+ "author": "beachball",
50
+ "package": "@fluentui/react-switch",
51
+ "comment": "Bump @fluentui/jest-serializer-make-styles to v9.0.0-alpha.46",
52
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
53
+ },
54
+ {
55
+ "author": "beachball",
56
+ "package": "@fluentui/react-switch",
57
+ "comment": "Bump @fluentui/react-conformance-make-styles to v9.0.0-alpha.15",
58
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
59
+ },
60
+ {
61
+ "author": "beachball",
62
+ "package": "@fluentui/react-switch",
63
+ "comment": "Bump @fluentui/react-label to v9.0.0-alpha.44",
64
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
65
+ },
66
+ {
67
+ "author": "beachball",
68
+ "package": "@fluentui/react-switch",
69
+ "comment": "Bump @fluentui/react-provider to v9.0.0-alpha.82",
70
+ "commit": "95682da34c48813f7658032ae490d21d2f363b90"
71
+ }
72
+ ]
73
+ }
74
+ },
75
+ {
76
+ "date": "Wed, 22 Sep 2021 10:10:07 GMT",
6
77
  "tag": "@fluentui/react-switch_v9.0.0-alpha.8",
7
78
  "version": "9.0.0-alpha.8",
8
79
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,29 @@
1
1
  # Change Log - @fluentui/react-switch
2
2
 
3
- This log was last generated on Wed, 22 Sep 2021 10:08:31 GMT and should not be manually modified.
3
+ This log was last generated on Thu, 23 Sep 2021 08:19:56 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## [9.0.0-alpha.9](https://github.com/microsoft/fluentui/tree/@fluentui/react-switch_v9.0.0-alpha.9)
8
+
9
+ Thu, 23 Sep 2021 08:19:56 GMT
10
+ [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-switch_v9.0.0-alpha.8..@fluentui/react-switch_v9.0.0-alpha.9)
11
+
12
+ ### Changes
13
+
14
+ - Adding dragging to the Switch component. ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by czearing@outlook.com)
15
+ - Bump @fluentui/react-make-styles to v9.0.0-alpha.71 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
16
+ - Bump @fluentui/react-tabster to v9.0.0-alpha.65 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
17
+ - Bump @fluentui/react-utilities to v9.0.0-alpha.51 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
18
+ - Bump @fluentui/babel-make-styles to v9.0.0-alpha.53 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
19
+ - Bump @fluentui/jest-serializer-make-styles to v9.0.0-alpha.46 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
20
+ - Bump @fluentui/react-conformance-make-styles to v9.0.0-alpha.15 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
21
+ - Bump @fluentui/react-label to v9.0.0-alpha.44 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
22
+ - Bump @fluentui/react-provider to v9.0.0-alpha.82 ([commit](https://github.com/microsoft/fluentui/commit/95682da34c48813f7658032ae490d21d2f363b90) by beachball)
23
+
7
24
  ## [9.0.0-alpha.8](https://github.com/microsoft/fluentui/tree/@fluentui/react-switch_v9.0.0-alpha.8)
8
25
 
9
- Wed, 22 Sep 2021 10:08:31 GMT
26
+ Wed, 22 Sep 2021 10:10:07 GMT
10
27
  [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-switch_v9.0.0-alpha.7..@fluentui/react-switch_v9.0.0-alpha.8)
11
28
 
12
29
  ### Changes
@@ -35,7 +35,7 @@ export declare interface SwitchCommons {
35
35
  /**
36
36
  * Callback to be called when the `checked` value changes.
37
37
  */
38
- onChange?: (ev: React_2.ChangeEvent<HTMLInputElement>, data: {
38
+ onChange?: (ev: React_2.PointerEvent<HTMLDivElement> | React_2.KeyboardEvent<HTMLDivElement>, data: {
39
39
  checked: boolean;
40
40
  }) => void;
41
41
  }
@@ -69,6 +69,10 @@ export declare type SwitchSlots = {
69
69
  * The hidden input that handles the Switch's internal functionality.
70
70
  */
71
71
  input: IntrinsicShorthandProps<'input'>;
72
+ /**
73
+ * The area in which the Switch's rail allows for the thumb to be dragged.
74
+ */
75
+ activeRail: IntrinsicShorthandProps<'div'>;
72
76
  };
73
77
 
74
78
  export declare interface SwitchState extends ComponentState<SwitchSlots>, SwitchCommons {
@@ -21,6 +21,10 @@ export declare type SwitchSlots = {
21
21
  * The hidden input that handles the Switch's internal functionality.
22
22
  */
23
23
  input: IntrinsicShorthandProps<'input'>;
24
+ /**
25
+ * The area in which the Switch's rail allows for the thumb to be dragged.
26
+ */
27
+ activeRail: IntrinsicShorthandProps<'div'>;
24
28
  };
25
29
  export interface SwitchCommons {
26
30
  /**
@@ -44,7 +48,7 @@ export interface SwitchCommons {
44
48
  /**
45
49
  * Callback to be called when the `checked` value changes.
46
50
  */
47
- onChange?: (ev: React.ChangeEvent<HTMLInputElement>, data: {
51
+ onChange?: (ev: React.PointerEvent<HTMLDivElement> | React.KeyboardEvent<HTMLDivElement>, data: {
48
52
  checked: boolean;
49
53
  }) => void;
50
54
  }
@@ -11,6 +11,6 @@ export var renderSwitch = function (state) {
11
11
  slots = _a.slots,
12
12
  slotProps = _a.slotProps;
13
13
 
14
- return /*#__PURE__*/React.createElement(slots.root, __assign({}, slotProps.root), /*#__PURE__*/React.createElement(slots.track, __assign({}, slotProps.track)), /*#__PURE__*/React.createElement(slots.thumbWrapper, __assign({}, slotProps.thumbWrapper), /*#__PURE__*/React.createElement(slots.thumb, __assign({}, slotProps.thumb))), /*#__PURE__*/React.createElement(slots.input, __assign({}, slotProps.input)));
14
+ return /*#__PURE__*/React.createElement(slots.root, __assign({}, slotProps.root), /*#__PURE__*/React.createElement(slots.track, __assign({}, slotProps.track)), /*#__PURE__*/React.createElement(slots.thumbWrapper, __assign({}, slotProps.thumbWrapper), /*#__PURE__*/React.createElement(slots.thumb, __assign({}, slotProps.thumb))), /*#__PURE__*/React.createElement(slots.input, __assign({}, slotProps.input)), /*#__PURE__*/React.createElement(slots.activeRail, __assign({}, slotProps.activeRail)));
15
15
  };
16
16
  //# sourceMappingURL=renderSwitch.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Switch/renderSwitch.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AACA,SAAS,oBAAT,QAAqC,aAArC;AAGA;;AAEG;;AACH,OAAO,IAAM,YAAY,GAAG,UAAC,KAAD,EAAmB;AACvC,MAAA,EAAA,GAAuB,QAAQ,CAAc,KAAd,EAAqB,oBAArB,CAA/B;AAAA,MAAE,KAAK,GAAA,EAAA,CAAA,KAAP;AAAA,MAAS,SAAS,GAAA,EAAA,CAAA,SAAlB;;AAEN,sBACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,KAAP,EAAY,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,KAAf,CAAZ,CADF,eAEE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,YAAP,EAAmB,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,YAAf,CAAnB,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,KAAP,EAAY,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,KAAf,CAAZ,CADF,CAFF,eAKE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,KAAP,EAAY,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,KAAf,CAAZ,CALF,CADF;AASD,CAZM","sourceRoot":""}
1
+ {"version":3,"sources":["../../../src/components/Switch/renderSwitch.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AACA,SAAS,oBAAT,QAAqC,aAArC;AAGA;;AAEG;;AACH,OAAO,IAAM,YAAY,GAAG,UAAC,KAAD,EAAmB;AACvC,MAAA,EAAA,GAAuB,QAAQ,CAAc,KAAd,EAAqB,oBAArB,CAA/B;AAAA,MAAE,KAAK,GAAA,EAAA,CAAA,KAAP;AAAA,MAAS,SAAS,GAAA,EAAA,CAAA,SAAlB;;AAEN,sBACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,KAAP,EAAY,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,KAAf,CAAZ,CADF,eAEE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,YAAP,EAAmB,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,YAAf,CAAnB,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,KAAP,EAAY,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,KAAf,CAAZ,CADF,CAFF,eAKE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,KAAP,EAAY,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,KAAf,CAAZ,CALF,eAME,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,UAAP,EAAiB,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,UAAf,CAAjB,CANF,CADF;AAUD,CAbM","sourceRoot":""}
@@ -5,7 +5,7 @@ import { useSwitchState } from './useSwitchState';
5
5
  * Array of all shorthand properties listed in SwitchSlots
6
6
  */
7
7
 
8
- export var switchShorthandProps = ['root', 'track', 'thumbWrapper', 'thumb', 'input'];
8
+ export var switchShorthandProps = ['root', 'track', 'thumbWrapper', 'thumb', 'activeRail', 'input'];
9
9
  /**
10
10
  * Given user props, returns state and render function for a Switch.
11
11
  */
@@ -14,6 +14,7 @@ export var useSwitch = function (props, ref) {
14
14
  var track = props.track,
15
15
  thumbWrapper = props.thumbWrapper,
16
16
  thumb = props.thumb,
17
+ activeRail = props.activeRail,
17
18
  input = props.input,
18
19
  defaultChecked = props.defaultChecked,
19
20
  checked = props.checked,
@@ -34,6 +35,7 @@ export var useSwitch = function (props, ref) {
34
35
  track: 'div',
35
36
  thumbWrapper: 'div',
36
37
  thumb: 'div',
38
+ activeRail: 'div',
37
39
  input: 'input'
38
40
  },
39
41
  track: resolveShorthand(track, {
@@ -45,6 +47,9 @@ export var useSwitch = function (props, ref) {
45
47
  thumb: resolveShorthand(thumb, {
46
48
  required: true
47
49
  }),
50
+ activeRail: resolveShorthand(activeRail, {
51
+ required: true
52
+ }),
48
53
  input: resolveShorthand(input, {
49
54
  required: true,
50
55
  defaultProps: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Switch/useSwitch.ts"],"names":[],"mappings":";AACA,SAAS,qBAAT,EAAgC,gBAAhC,EAAkD,KAAlD,QAA+D,2BAA/D;AACA,SAAS,cAAT,QAA+B,kBAA/B;AAGA;;AAEG;;AACH,OAAO,IAAM,oBAAoB,GAA0B,CAAC,MAAD,EAAS,OAAT,EAAkB,cAAlB,EAAkC,OAAlC,EAA2C,OAA3C,CAApD;AAEP;;AAEG;;AACH,OAAO,IAAM,SAAS,GAAG,UAAC,KAAD,EAAqB,GAArB,EAAgD;AAC/D,MAAA,KAAK,GAA8E,KAAK,CAAnF,KAAL;AAAA,MAAO,YAAY,GAAgE,KAAK,CAArE,YAAnB;AAAA,MAAqB,KAAK,GAAyD,KAAK,CAA9D,KAA1B;AAAA,MAA4B,KAAK,GAAkD,KAAK,CAAvD,KAAjC;AAAA,MAAmC,cAAc,GAAkC,KAAK,CAAvC,cAAjD;AAAA,MAAmD,OAAO,GAAyB,KAAK,CAA9B,OAA1D;AAAA,MAA4D,QAAQ,GAAe,KAAK,CAApB,QAApE;AAAA,MAAsE,QAAQ,GAAK,KAAK,CAAV,QAA9E;AACR,MAAM,KAAK,GAAgB;AACzB,IAAA,cAAc,EAAA,cADW;AAEzB,IAAA,OAAO,EAAA,OAFkB;AAGzB,IAAA,QAAQ,EAAA,QAHiB;AAIzB,IAAA,QAAQ,EAAA,QAJiB;AAKzB,IAAA,IAAI,EAAE,qBAAqB,CAAC,MAAD,EAAO,QAAA,CAAA,QAAA,CAAA;AAChC,MAAA,GAAG,EAAA;AAD6B,KAAA,EAE7B,KAF6B,CAAA,EAExB;AACR,MAAA,EAAE,EAAE,KAAK,CAAC,SAAD,EAAY,KAAK,CAAC,EAAlB;AADD,KAFwB,CAAP,CALF;AAUzB,IAAA,UAAU,EAAE;AACV,MAAA,IAAI,EAAE,KADI;AAEV,MAAA,KAAK,EAAE,KAFG;AAGV,MAAA,YAAY,EAAE,KAHJ;AAIV,MAAA,KAAK,EAAE,KAJG;AAKV,MAAA,KAAK,EAAE;AALG,KAVa;AAiBzB,IAAA,KAAK,EAAE,gBAAgB,CAAC,KAAD,EAAQ;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAR,CAjBE;AAkBzB,IAAA,YAAY,EAAE,gBAAgB,CAAC,YAAD,EAAe;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAf,CAlBL;AAmBzB,IAAA,KAAK,EAAE,gBAAgB,CAAC,KAAD,EAAQ;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAR,CAnBE;AAoBzB,IAAA,KAAK,EAAE,gBAAgB,CAAC,KAAD,EAAQ;AAC7B,MAAA,QAAQ,EAAE,IADmB;AAE7B,MAAA,YAAY,EAAE;AACZ,QAAA,IAAI,EAAE;AADM;AAFe,KAAR;AApBE,GAA3B;AA4BA,EAAA,cAAc,CAAC,KAAD,CAAd;AAEA,SAAO,KAAP;AACD,CAjCM","sourceRoot":""}
1
+ {"version":3,"sources":["../../../src/components/Switch/useSwitch.ts"],"names":[],"mappings":";AACA,SAAS,qBAAT,EAAgC,gBAAhC,EAAkD,KAAlD,QAA+D,2BAA/D;AACA,SAAS,cAAT,QAA+B,kBAA/B;AAGA;;AAEG;;AACH,OAAO,IAAM,oBAAoB,GAA0B,CACzD,MADyD,EAEzD,OAFyD,EAGzD,cAHyD,EAIzD,OAJyD,EAKzD,YALyD,EAMzD,OANyD,CAApD;AASP;;AAEG;;AACH,OAAO,IAAM,SAAS,GAAG,UAAC,KAAD,EAAqB,GAArB,EAAgD;AAC/D,MAAA,KAAK,GAA0F,KAAK,CAA/F,KAAL;AAAA,MAAO,YAAY,GAA4E,KAAK,CAAjF,YAAnB;AAAA,MAAqB,KAAK,GAAqE,KAAK,CAA1E,KAA1B;AAAA,MAA4B,UAAU,GAAyD,KAAK,CAA9D,UAAtC;AAAA,MAAwC,KAAK,GAAkD,KAAK,CAAvD,KAA7C;AAAA,MAA+C,cAAc,GAAkC,KAAK,CAAvC,cAA7D;AAAA,MAA+D,OAAO,GAAyB,KAAK,CAA9B,OAAtE;AAAA,MAAwE,QAAQ,GAAe,KAAK,CAApB,QAAhF;AAAA,MAAkF,QAAQ,GAAK,KAAK,CAAV,QAA1F;AACR,MAAM,KAAK,GAAgB;AACzB,IAAA,cAAc,EAAA,cADW;AAEzB,IAAA,OAAO,EAAA,OAFkB;AAGzB,IAAA,QAAQ,EAAA,QAHiB;AAIzB,IAAA,QAAQ,EAAA,QAJiB;AAKzB,IAAA,IAAI,EAAE,qBAAqB,CAAC,MAAD,EAAO,QAAA,CAAA,QAAA,CAAA;AAChC,MAAA,GAAG,EAAA;AAD6B,KAAA,EAE7B,KAF6B,CAAA,EAExB;AACR,MAAA,EAAE,EAAE,KAAK,CAAC,SAAD,EAAY,KAAK,CAAC,EAAlB;AADD,KAFwB,CAAP,CALF;AAUzB,IAAA,UAAU,EAAE;AACV,MAAA,IAAI,EAAE,KADI;AAEV,MAAA,KAAK,EAAE,KAFG;AAGV,MAAA,YAAY,EAAE,KAHJ;AAIV,MAAA,KAAK,EAAE,KAJG;AAKV,MAAA,UAAU,EAAE,KALF;AAMV,MAAA,KAAK,EAAE;AANG,KAVa;AAkBzB,IAAA,KAAK,EAAE,gBAAgB,CAAC,KAAD,EAAQ;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAR,CAlBE;AAmBzB,IAAA,YAAY,EAAE,gBAAgB,CAAC,YAAD,EAAe;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAf,CAnBL;AAoBzB,IAAA,KAAK,EAAE,gBAAgB,CAAC,KAAD,EAAQ;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAR,CApBE;AAqBzB,IAAA,UAAU,EAAE,gBAAgB,CAAC,UAAD,EAAa;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAb,CArBH;AAsBzB,IAAA,KAAK,EAAE,gBAAgB,CAAC,KAAD,EAAQ;AAC7B,MAAA,QAAQ,EAAE,IADmB;AAE7B,MAAA,YAAY,EAAE;AACZ,QAAA,IAAI,EAAE;AADM;AAFe,KAAR;AAtBE,GAA3B;AA8BA,EAAA,cAAc,CAAC,KAAD,CAAd;AAEA,SAAO,KAAP;AACD,CAnCM","sourceRoot":""}
@@ -1,6 +1,15 @@
1
1
  import * as React from 'react';
2
- import { useControllableState, useEventCallback, useMergedRefs } from '@fluentui/react-utilities';
3
- import { useFluent } from '@fluentui/react-shared-contexts';
2
+ import { clamp, useBoolean, useControllableState, useEventCallback, useMergedRefs } from '@fluentui/react-utilities';
3
+ import { useFluent } from '@fluentui/react-shared-contexts'; // TODO: This should be replaced with a useEvent hook
4
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
5
+
6
+ var on = function (element, eventName, callback) {
7
+ element.addEventListener(eventName, callback);
8
+ return function () {
9
+ return element.removeEventListener(eventName, callback);
10
+ };
11
+ };
12
+
4
13
  export var useSwitchState = function (state) {
5
14
  var _a = state.defaultChecked,
6
15
  defaultChecked = _a === void 0 ? false : _a,
@@ -8,40 +17,136 @@ export var useSwitchState = function (state) {
8
17
  _b = state.disabled,
9
18
  disabled = _b === void 0 ? false : _b,
10
19
  onChange = state.onChange;
20
+ var _c = state.root,
21
+ onPointerDownCallback = _c.onPointerDown,
22
+ onKeyDownCallback = _c.onKeyDown;
11
23
  var dir = useFluent().dir;
12
24
  var inputRef = useMergedRefs(state.input.ref);
25
+ var railRef = React.useRef(null);
26
+ var internalState = React.useRef({
27
+ internalValue: checked ? checked : defaultChecked,
28
+ thumbIsDragging: false,
29
+ disposables: []
30
+ });
13
31
 
14
- var _c = useControllableState({
32
+ var _d = useControllableState({
15
33
  defaultState: defaultChecked,
16
34
  state: checked,
17
35
  initialState: false
18
36
  }),
19
- internalValue = _c[0],
20
- setInternalValue = _c[1];
37
+ currentValue = _d[0],
38
+ setCurrentValue = _d[1];
39
+
40
+ var _e = useBoolean(true),
41
+ thumbAnimation = _e[0],
42
+ _f = _e[1],
43
+ showThumbAnimation = _f.setTrue,
44
+ hideThumbAnimation = _f.setFalse;
45
+
46
+ var _g = React.useState(currentValue === true ? 100 : 0),
47
+ renderedPosition = _g[0],
48
+ setRenderedPosition = _g[1];
21
49
 
22
- var setChecked = React.useCallback(function (ev, incomingValue) {
50
+ var setChecked = useEventCallback(function (ev, incomingValue) {
51
+ ev.stopPropagation();
52
+ ev.preventDefault();
53
+ internalState.current.internalValue = incomingValue;
23
54
  onChange === null || onChange === void 0 ? void 0 : onChange(ev, {
24
55
  checked: incomingValue
25
56
  });
26
- setInternalValue(incomingValue);
27
- }, [onChange, setInternalValue]);
28
- var userOnChange = state.input.onChange;
29
- var onInputChange = useEventCallback(function (ev) {
30
- ev.stopPropagation();
31
- userOnChange === null || userOnChange === void 0 ? void 0 : userOnChange(ev);
32
- setChecked(ev, ev.currentTarget.checked);
57
+ setCurrentValue(incomingValue);
58
+ setRenderedPosition(undefined);
33
59
  });
60
+ var calculatePosition = React.useCallback(function (ev) {
61
+ var _a;
62
+
63
+ var currentBounds = (_a = railRef === null || railRef === void 0 ? void 0 : railRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
64
+ var railWidth = currentBounds.width;
65
+ var railPosition = dir === 'rtl' ? currentBounds.right : currentBounds.left;
66
+ var distance = dir === 'rtl' ? railPosition - ev.clientX : ev.clientX - railPosition;
67
+ return clamp(distance / railWidth * 100, 0, 100);
68
+ }, [dir]);
69
+ var onPointerMove = React.useCallback(function (ev) {
70
+ var incomingPosition = calculatePosition(ev);
71
+ internalState.current.thumbIsDragging = true;
72
+ hideThumbAnimation();
73
+ setRenderedPosition(incomingPosition); // If the Switch reaches a new position of 0% or 100%, update the state and fire change.
74
+
75
+ if (incomingPosition === 100 && internalState.current.internalValue !== true) {
76
+ setChecked(ev, true);
77
+ } else if (incomingPosition === 0 && internalState.current.internalValue !== false) {
78
+ setChecked(ev, false);
79
+ }
80
+ }, [calculatePosition, hideThumbAnimation, setChecked]);
81
+ var onPointerUp = React.useCallback(function (ev) {
82
+ internalState.current.disposables.forEach(function (dispose) {
83
+ return dispose();
84
+ });
85
+ internalState.current.disposables = [];
86
+ inputRef.current.focus();
87
+
88
+ if (internalState.current.thumbIsDragging) {
89
+ var roundedPosition = Math.round(calculatePosition(ev) / 100) * 100;
90
+ showThumbAnimation();
91
+
92
+ if (roundedPosition === 100) {
93
+ setChecked(ev, true);
94
+ } else if (roundedPosition === 0) {
95
+ setChecked(ev, false);
96
+ }
97
+ } else {
98
+ setChecked(ev, !internalState.current.internalValue);
99
+ }
100
+ }, [calculatePosition, inputRef, setChecked, showThumbAnimation]);
101
+ var onPointerDown = React.useCallback(function (ev) {
102
+ var _a;
103
+
104
+ var pointerId = ev.pointerId;
105
+ var target = ev.target;
106
+ onPointerDownCallback === null || onPointerDownCallback === void 0 ? void 0 : onPointerDownCallback(ev);
107
+ showThumbAnimation();
108
+ (_a = target.setPointerCapture) === null || _a === void 0 ? void 0 : _a.call(target, pointerId);
109
+ internalState.current.thumbIsDragging = false;
110
+ internalState.current.disposables.push(on(target, 'pointermove', onPointerMove), on(target, 'pointerup', onPointerUp), function () {
111
+ var _a;
112
+
113
+ (_a = target.releasePointerCapture) === null || _a === void 0 ? void 0 : _a.call(target, pointerId);
114
+ });
115
+ }, [onPointerDownCallback, onPointerMove, onPointerUp, showThumbAnimation]);
116
+ var onKeyDown = React.useCallback(function (ev) {
117
+ onKeyDownCallback === null || onKeyDownCallback === void 0 ? void 0 : onKeyDownCallback(ev);
118
+
119
+ if (ev.key === ' ') {
120
+ setChecked(ev, !internalState.current.internalValue);
121
+ }
122
+ }, [onKeyDownCallback, setChecked]);
123
+ var currentPosition = renderedPosition !== undefined ? renderedPosition : currentValue ? 100 : 0;
124
+ var rootStyles = {
125
+ '--switch-checked-opacity': currentPosition / 100,
126
+ '--switch-unchecked-opacity': (100 - currentPosition) / 100
127
+ };
34
128
  var thumbWrapperStyles = {
35
- transform: dir === 'rtl' ? internalValue ? 'translate(-100%)' : 'translate(0%)' : internalValue ? 'translate(100%)' : 'translate(0%)'
36
- }; // Input Props
129
+ transform: "translate(" + (dir === 'rtl' ? -currentPosition : currentPosition) + "%)",
130
+ transition: thumbAnimation ? 'transform .1s cubic-bezier(0.33, 0.0, 0.67, 1), opacity .1s cubic-bezier(0.33, 0.0, 0.67, 1)' : 'none'
131
+ }; // Root Props
132
+
133
+ state.root.style = rootStyles;
134
+
135
+ if (!disabled) {
136
+ state.root.onPointerDown = onPointerDown;
137
+ state.root.onKeyDown = onKeyDown;
138
+ } // Input Props
37
139
 
38
- state.input.onChange = onInputChange;
39
- state.input.checked = internalValue;
140
+
141
+ state.input.checked = currentValue;
40
142
  state.input.disabled = disabled;
41
143
  state.input.ref = inputRef;
42
- state.input.role = 'switch'; // thumbContainer Props
144
+ state.input.readOnly = true;
145
+ state.input.role = 'switch'; // Thumb Container Props
146
+
147
+ state.thumbWrapper.style = thumbWrapperStyles; // Active Rail Props
43
148
 
44
- state.thumbWrapper.style = thumbWrapperStyles;
149
+ state.activeRail.ref = railRef;
45
150
  return state;
46
151
  };
47
152
  //# sourceMappingURL=useSwitchState.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Switch/useSwitchState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,oBAAT,EAA+B,gBAA/B,EAAiD,aAAjD,QAAsE,2BAAtE;AACA,SAAS,SAAT,QAA0B,iCAA1B;AAGA,OAAO,IAAM,cAAc,GAAG,UAAC,KAAD,EAAmB;AACvC,MAAA,EAAA,GAAgE,KAAK,CAA/C,cAAtB;AAAA,MAAA,cAAc,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQ,EAAtB;AAAA,MAAwB,OAAO,GAAiC,KAAK,CAAtC,OAA/B;AAAA,MAAiC,EAAA,GAA+B,KAAK,CAApB,QAAjD;AAAA,MAAiC,QAAQ,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQ,EAAjD;AAAA,MAAmD,QAAQ,GAAK,KAAK,CAAV,QAA3D;AAEA,MAAA,GAAG,GAAK,SAAS,GAAd,GAAH;AACR,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,KAAN,CAAY,GAAb,CAA9B;;AACM,MAAA,EAAA,GAAoC,oBAAoB,CAAC;AAC7D,IAAA,YAAY,EAAE,cAD+C;AAE7D,IAAA,KAAK,EAAE,OAFsD;AAG7D,IAAA,YAAY,EAAE;AAH+C,GAAD,CAAxD;AAAA,MAAC,aAAa,GAAA,EAAA,CAAA,CAAA,CAAd;AAAA,MAAgB,gBAAgB,GAAA,EAAA,CAAA,CAAA,CAAhC;;AAMN,MAAM,UAAU,GAAG,KAAK,CAAC,WAAN,CACjB,UAAC,EAAD,EAA0C,aAA1C,EAAgE;AAC9D,IAAA,QAAQ,KAAA,IAAR,IAAA,QAAQ,KAAA,KAAA,CAAR,GAAQ,KAAA,CAAR,GAAA,QAAQ,CAAG,EAAH,EAAO;AAAE,MAAA,OAAO,EAAE;AAAX,KAAP,CAAR;AACA,IAAA,gBAAgB,CAAC,aAAD,CAAhB;AACD,GAJgB,EAKjB,CAAC,QAAD,EAAW,gBAAX,CALiB,CAAnB;AAQA,MAAM,YAAY,GAAG,KAAK,CAAC,KAAN,CAAY,QAAjC;AAEA,MAAM,aAAa,GAAG,gBAAgB,CAAC,UAAC,EAAD,EAAwC;AAC7E,IAAA,EAAE,CAAC,eAAH;AACA,IAAA,YAAY,KAAA,IAAZ,IAAA,YAAY,KAAA,KAAA,CAAZ,GAAY,KAAA,CAAZ,GAAA,YAAY,CAAG,EAAH,CAAZ;AACA,IAAA,UAAU,CAAC,EAAD,EAAK,EAAE,CAAC,aAAH,CAAiB,OAAtB,CAAV;AACD,GAJqC,CAAtC;AAMA,MAAM,kBAAkB,GAAG;AACzB,IAAA,SAAS,EACP,GAAG,KAAK,KAAR,GACI,aAAa,GACX,kBADW,GAEX,eAHN,GAII,aAAa,GACb,iBADa,GAEb;AARmB,GAA3B,CA3B+C,CAsC/C;;AACA,EAAA,KAAK,CAAC,KAAN,CAAY,QAAZ,GAAuB,aAAvB;AACA,EAAA,KAAK,CAAC,KAAN,CAAY,OAAZ,GAAsB,aAAtB;AACA,EAAA,KAAK,CAAC,KAAN,CAAY,QAAZ,GAAuB,QAAvB;AACA,EAAA,KAAK,CAAC,KAAN,CAAY,GAAZ,GAAkB,QAAlB;AACA,EAAA,KAAK,CAAC,KAAN,CAAY,IAAZ,GAAmB,QAAnB,CA3C+C,CA6C/C;;AACA,EAAA,KAAK,CAAC,YAAN,CAAmB,KAAnB,GAA2B,kBAA3B;AAEA,SAAO,KAAP;AACD,CAjDM","sourceRoot":""}
1
+ {"version":3,"sources":["../../../src/components/Switch/useSwitchState.ts"],"names":[],"mappings":"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","sourceRoot":""}