@snack-uikit/toggles 0.10.4 → 0.10.5-preview-1f246c4a.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 (96) hide show
  1. package/dist/cjs/components/Checkbox/Checkbox.js +78 -0
  2. package/dist/cjs/components/Checkbox/index.js +25 -0
  3. package/dist/cjs/components/Favorite/Favorite.js +64 -0
  4. package/dist/cjs/components/Favorite/index.js +25 -0
  5. package/dist/cjs/components/Radio/Radio.js +50 -0
  6. package/dist/cjs/components/Radio/index.js +25 -0
  7. package/dist/cjs/components/Switch/Switch.js +71 -0
  8. package/dist/cjs/components/Switch/index.js +25 -0
  9. package/dist/cjs/components/ToggleGroup/ToggleGroup.js +51 -0
  10. package/dist/cjs/components/ToggleGroup/hooks.js +36 -0
  11. package/dist/cjs/components/ToggleGroup/index.js +26 -0
  12. package/dist/cjs/components/TogglePrivate/TogglePrivate.js +77 -0
  13. package/dist/cjs/components/TogglePrivate/index.js +25 -0
  14. package/dist/cjs/components/index.js +29 -0
  15. package/dist/cjs/constants.js +22 -0
  16. package/dist/cjs/context.js +15 -0
  17. package/dist/cjs/helperComponents/Spinner/Spinner.js +27 -0
  18. package/dist/cjs/helperComponents/Spinner/index.js +25 -0
  19. package/dist/cjs/helperComponents/index.js +25 -0
  20. package/dist/cjs/index.js +25 -0
  21. package/dist/cjs/types.js +5 -0
  22. package/dist/cjs/utils.js +28 -0
  23. package/dist/esm/components/Checkbox/Checkbox.d.ts +8 -0
  24. package/dist/esm/components/Checkbox/index.js +1 -0
  25. package/dist/esm/components/Favorite/Favorite.d.ts +6 -0
  26. package/dist/esm/components/Favorite/index.js +1 -0
  27. package/dist/esm/components/Radio/Radio.d.ts +3 -0
  28. package/dist/esm/components/Radio/index.js +1 -0
  29. package/dist/esm/components/Switch/Switch.d.ts +7 -0
  30. package/dist/esm/components/Switch/index.js +1 -0
  31. package/dist/esm/components/ToggleGroup/ToggleGroup.d.ts +22 -0
  32. package/dist/esm/components/ToggleGroup/hooks.d.ts +9 -0
  33. package/dist/esm/components/ToggleGroup/index.js +2 -0
  34. package/dist/esm/components/TogglePrivate/TogglePrivate.d.ts +20 -0
  35. package/dist/esm/components/TogglePrivate/index.js +1 -0
  36. package/dist/esm/components/index.js +5 -0
  37. package/dist/esm/constants.d.ts +16 -0
  38. package/dist/esm/context.d.ts +9 -0
  39. package/dist/esm/helperComponents/Spinner/Spinner.d.ts +1 -0
  40. package/dist/esm/helperComponents/index.d.ts +1 -0
  41. package/dist/esm/helperComponents/index.js +1 -0
  42. package/dist/esm/index.js +1 -0
  43. package/dist/esm/types.d.ts +51 -0
  44. package/dist/esm/utils.d.ts +3 -0
  45. package/package.json +9 -7
  46. package/dist/components/Checkbox/styles.module.css +0 -89
  47. package/dist/components/Favorite/styles.module.css +0 -50
  48. package/dist/components/Radio/styles.module.css +0 -90
  49. package/dist/components/Switch/styles.module.css +0 -159
  50. package/dist/components/TogglePrivate/styles.module.css +0 -30
  51. package/dist/components/styles.module.css +0 -0
  52. package/dist/helperComponents/Spinner/styles.module.css +0 -14
  53. /package/dist/{components → cjs/components}/Checkbox/Checkbox.d.ts +0 -0
  54. /package/dist/{components → cjs/components}/Checkbox/index.d.ts +0 -0
  55. /package/dist/{components → cjs/components}/Favorite/Favorite.d.ts +0 -0
  56. /package/dist/{components → cjs/components}/Favorite/index.d.ts +0 -0
  57. /package/dist/{components → cjs/components}/Radio/Radio.d.ts +0 -0
  58. /package/dist/{components → cjs/components}/Radio/index.d.ts +0 -0
  59. /package/dist/{components → cjs/components}/Switch/Switch.d.ts +0 -0
  60. /package/dist/{components → cjs/components}/Switch/index.d.ts +0 -0
  61. /package/dist/{components → cjs/components}/ToggleGroup/ToggleGroup.d.ts +0 -0
  62. /package/dist/{components → cjs/components}/ToggleGroup/hooks.d.ts +0 -0
  63. /package/dist/{components → cjs/components}/ToggleGroup/index.d.ts +0 -0
  64. /package/dist/{components → cjs/components}/TogglePrivate/TogglePrivate.d.ts +0 -0
  65. /package/dist/{components → cjs/components}/TogglePrivate/index.d.ts +0 -0
  66. /package/dist/{components → cjs/components}/index.d.ts +0 -0
  67. /package/dist/{constants.d.ts → cjs/constants.d.ts} +0 -0
  68. /package/dist/{context.d.ts → cjs/context.d.ts} +0 -0
  69. /package/dist/{helperComponents → cjs/helperComponents}/Spinner/Spinner.d.ts +0 -0
  70. /package/dist/{helperComponents → cjs/helperComponents}/Spinner/index.d.ts +0 -0
  71. /package/dist/{helperComponents → cjs/helperComponents}/index.d.ts +0 -0
  72. /package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
  73. /package/dist/{types.d.ts → cjs/types.d.ts} +0 -0
  74. /package/dist/{utils.d.ts → cjs/utils.d.ts} +0 -0
  75. /package/dist/{components → esm/components}/Checkbox/Checkbox.js +0 -0
  76. /package/dist/{components/Checkbox/index.js → esm/components/Checkbox/index.d.ts} +0 -0
  77. /package/dist/{components → esm/components}/Favorite/Favorite.js +0 -0
  78. /package/dist/{components/Favorite/index.js → esm/components/Favorite/index.d.ts} +0 -0
  79. /package/dist/{components → esm/components}/Radio/Radio.js +0 -0
  80. /package/dist/{components/Radio/index.js → esm/components/Radio/index.d.ts} +0 -0
  81. /package/dist/{components → esm/components}/Switch/Switch.js +0 -0
  82. /package/dist/{components/Switch/index.js → esm/components/Switch/index.d.ts} +0 -0
  83. /package/dist/{components → esm/components}/ToggleGroup/ToggleGroup.js +0 -0
  84. /package/dist/{components → esm/components}/ToggleGroup/hooks.js +0 -0
  85. /package/dist/{components/ToggleGroup/index.js → esm/components/ToggleGroup/index.d.ts} +0 -0
  86. /package/dist/{components → esm/components}/TogglePrivate/TogglePrivate.js +0 -0
  87. /package/dist/{components/TogglePrivate/index.js → esm/components/TogglePrivate/index.d.ts} +0 -0
  88. /package/dist/{components/index.js → esm/components/index.d.ts} +0 -0
  89. /package/dist/{constants.js → esm/constants.js} +0 -0
  90. /package/dist/{context.js → esm/context.js} +0 -0
  91. /package/dist/{helperComponents → esm/helperComponents}/Spinner/Spinner.js +0 -0
  92. /package/dist/{helperComponents/Spinner/index.js → esm/helperComponents/Spinner/index.d.ts} +0 -0
  93. /package/dist/{helperComponents → esm/helperComponents/Spinner}/index.js +0 -0
  94. /package/dist/{index.js → esm/index.d.ts} +0 -0
  95. /package/dist/{types.js → esm/types.js} +0 -0
  96. /package/dist/{utils.js → esm/utils.js} +0 -0
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
8
+ }
9
+ return t;
10
+ };
11
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
12
+ return mod && mod.__esModule ? mod : {
13
+ "default": mod
14
+ };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.Checkbox = Checkbox;
20
+ const jsx_runtime_1 = require("react/jsx-runtime");
21
+ const merge_refs_1 = __importDefault(require("merge-refs"));
22
+ const react_1 = require("react");
23
+ const uncontrollable_1 = require("uncontrollable");
24
+ const icons_1 = require("@snack-uikit/icons");
25
+ const constants_1 = require("../../constants");
26
+ const utils_1 = require("../../utils");
27
+ const TogglePrivate_1 = require("../TogglePrivate");
28
+ const styles_module_scss_1 = __importDefault({});
29
+ function Checkbox(_a) {
30
+ var {
31
+ inputRef,
32
+ indeterminate: indeterminateProp,
33
+ indeterminateDefault,
34
+ onChange: onChangeProp,
35
+ 'data-test-id': dataTestId,
36
+ size = constants_1.SIZE.M
37
+ } = _a,
38
+ restProps = __rest(_a, ["inputRef", "indeterminate", "indeterminateDefault", "onChange", 'data-test-id', "size"]);
39
+ const localRef = (0, react_1.useRef)(null);
40
+ const ref = (0, merge_refs_1.default)(localRef, inputRef);
41
+ const [indeterminate, setIndeterminate] = (0, uncontrollable_1.useUncontrolledProp)(indeterminateProp, indeterminateDefault);
42
+ const onChange = (0, react_1.useCallback)(checked => {
43
+ onChangeProp === null || onChangeProp === void 0 ? void 0 : onChangeProp(checked);
44
+ setIndeterminate(false);
45
+ }, [onChangeProp, setIndeterminate]);
46
+ (0, react_1.useEffect)(() => {
47
+ if (localRef.current) {
48
+ localRef.current.indeterminate = Boolean(indeterminate);
49
+ }
50
+ }, [localRef, indeterminate]);
51
+ const iconSize = (0, react_1.useMemo)(() => (0, utils_1.getIconSize)(size), [size]);
52
+ return (0, jsx_runtime_1.jsx)(TogglePrivate_1.TogglePrivate, Object.assign({}, restProps, {
53
+ size: size,
54
+ onChange: onChange,
55
+ "data-test-id": dataTestId,
56
+ ref: ref,
57
+ render: function Checkbox(visualState) {
58
+ const data = (0, utils_1.getVisualStateAttributes)(Object.assign(Object.assign({}, visualState), {
59
+ indeterminate: Boolean(indeterminate)
60
+ }));
61
+ return (0, jsx_runtime_1.jsxs)("div", Object.assign({
62
+ className: styles_module_scss_1.default.container
63
+ }, data, {
64
+ children: [(0, jsx_runtime_1.jsx)("div", Object.assign({
65
+ className: styles_module_scss_1.default.box
66
+ }, data)), (0, jsx_runtime_1.jsx)("div", Object.assign({
67
+ className: styles_module_scss_1.default.icon
68
+ }, data, {
69
+ children: indeterminate ? (0, jsx_runtime_1.jsx)(icons_1.MinusSVG, {
70
+ size: iconSize
71
+ }) : (0, jsx_runtime_1.jsx)(icons_1.CheckSVG, {
72
+ size: iconSize
73
+ })
74
+ }))]
75
+ }));
76
+ }
77
+ }));
78
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./Checkbox"), exports);
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
8
+ }
9
+ return t;
10
+ };
11
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
12
+ return mod && mod.__esModule ? mod : {
13
+ "default": mod
14
+ };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.Favorite = Favorite;
20
+ const jsx_runtime_1 = require("react/jsx-runtime");
21
+ const react_1 = require("react");
22
+ const icons_1 = require("@snack-uikit/icons");
23
+ const constants_1 = require("../../constants");
24
+ const utils_1 = require("../../utils");
25
+ const TogglePrivate_1 = require("../TogglePrivate");
26
+ const styles_module_scss_1 = __importDefault({});
27
+ const CHECKED_ICONS = {
28
+ [constants_1.FAVORITE_ICON.Star]: icons_1.StarFilledSVG,
29
+ [constants_1.FAVORITE_ICON.Heart]: icons_1.HeartFilledSVG
30
+ };
31
+ const UNCHECKED_ICONS = {
32
+ [constants_1.FAVORITE_ICON.Star]: icons_1.StarSVG,
33
+ [constants_1.FAVORITE_ICON.Heart]: icons_1.HeartSVG
34
+ };
35
+ function Favorite(_a) {
36
+ var {
37
+ inputRef,
38
+ 'data-test-id': dataTestId,
39
+ size = constants_1.SIZE.M,
40
+ icon = constants_1.FAVORITE_ICON.Heart
41
+ } = _a,
42
+ restProps = __rest(_a, ["inputRef", 'data-test-id', "size", "icon"]);
43
+ const iconSize = (0, react_1.useMemo)(() => (0, utils_1.getIconSize)(size), [size]);
44
+ return (0, jsx_runtime_1.jsx)(TogglePrivate_1.TogglePrivate, Object.assign({}, restProps, {
45
+ "data-test-id": dataTestId,
46
+ ref: inputRef,
47
+ size: size,
48
+ render: function Favorite(visualState) {
49
+ const Icon = visualState.checked ? CHECKED_ICONS[icon] : UNCHECKED_ICONS[icon];
50
+ const data = (0, utils_1.getVisualStateAttributes)(Object.assign(Object.assign({}, visualState), {
51
+ icon
52
+ }));
53
+ return (0, jsx_runtime_1.jsx)("div", Object.assign({
54
+ className: styles_module_scss_1.default.container
55
+ }, data, {
56
+ children: (0, jsx_runtime_1.jsx)(Icon, Object.assign({
57
+ className: styles_module_scss_1.default.icon
58
+ }, data, {
59
+ size: iconSize
60
+ }))
61
+ }));
62
+ }
63
+ }));
64
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./Favorite"), exports);
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
8
+ }
9
+ return t;
10
+ };
11
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
12
+ return mod && mod.__esModule ? mod : {
13
+ "default": mod
14
+ };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.Radio = Radio;
20
+ const jsx_runtime_1 = require("react/jsx-runtime");
21
+ const constants_1 = require("../../constants");
22
+ const utils_1 = require("../../utils");
23
+ const TogglePrivate_1 = require("../TogglePrivate");
24
+ const styles_module_scss_1 = __importDefault({});
25
+ function Radio(_a) {
26
+ var {
27
+ inputRef,
28
+ 'data-test-id': dataTestId
29
+ } = _a,
30
+ restProps = __rest(_a, ["inputRef", 'data-test-id']);
31
+ return (0, jsx_runtime_1.jsx)(TogglePrivate_1.TogglePrivate, Object.assign({}, restProps, {
32
+ "data-test-id": dataTestId,
33
+ mode: constants_1.MODE.Radio,
34
+ ref: inputRef,
35
+ render: function Radio(visualState) {
36
+ const data = (0, utils_1.getVisualStateAttributes)(visualState);
37
+ return (0, jsx_runtime_1.jsx)("div", Object.assign({
38
+ className: styles_module_scss_1.default.container
39
+ }, data, {
40
+ children: (0, jsx_runtime_1.jsx)("div", Object.assign({
41
+ className: styles_module_scss_1.default.box
42
+ }, data, {
43
+ children: (0, jsx_runtime_1.jsx)("div", Object.assign({
44
+ className: styles_module_scss_1.default.flag
45
+ }, data))
46
+ }))
47
+ }));
48
+ }
49
+ }));
50
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./Radio"), exports);
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
8
+ }
9
+ return t;
10
+ };
11
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
12
+ return mod && mod.__esModule ? mod : {
13
+ "default": mod
14
+ };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.Switch = Switch;
20
+ const jsx_runtime_1 = require("react/jsx-runtime");
21
+ const icons_1 = require("@snack-uikit/icons");
22
+ const constants_1 = require("../../constants");
23
+ const helperComponents_1 = require("../../helperComponents");
24
+ const utils_1 = require("../../utils");
25
+ const TogglePrivate_1 = require("../TogglePrivate");
26
+ const styles_module_scss_1 = __importDefault({});
27
+ function Switch(_a) {
28
+ var {
29
+ inputRef,
30
+ 'data-test-id': dataTestId,
31
+ showIcon,
32
+ loading,
33
+ size = constants_1.SIZE.M
34
+ } = _a,
35
+ restProps = __rest(_a, ["inputRef", 'data-test-id', "showIcon", "loading", "size"]);
36
+ return (0, jsx_runtime_1.jsx)(TogglePrivate_1.TogglePrivate, Object.assign({}, restProps, {
37
+ size: size,
38
+ "data-test-id": dataTestId,
39
+ ref: inputRef,
40
+ render: function Switch(visualState) {
41
+ const data = (0, utils_1.getVisualStateAttributes)(visualState);
42
+ return (0, jsx_runtime_1.jsxs)("div", Object.assign({
43
+ className: styles_module_scss_1.default.container
44
+ }, data, {
45
+ children: [(0, jsx_runtime_1.jsx)("div", Object.assign({
46
+ className: styles_module_scss_1.default.box
47
+ }, data)), (0, jsx_runtime_1.jsxs)("div", Object.assign({
48
+ className: styles_module_scss_1.default.containerFlag
49
+ }, data, {
50
+ children: [(0, jsx_runtime_1.jsx)("div", Object.assign({
51
+ className: styles_module_scss_1.default.flag
52
+ }, data)), (showIcon || loading) && (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, {
53
+ children: [(0, jsx_runtime_1.jsx)("div", Object.assign({
54
+ className: styles_module_scss_1.default.flag_icon_off
55
+ }, data, {
56
+ children: loading ? (0, jsx_runtime_1.jsx)(helperComponents_1.Spinner, {}) : (0, jsx_runtime_1.jsx)(icons_1.CrossSVG, {
57
+ size: 16
58
+ })
59
+ })), (0, jsx_runtime_1.jsx)("div", Object.assign({
60
+ className: styles_module_scss_1.default.flag_icon_on
61
+ }, data, {
62
+ children: loading ? (0, jsx_runtime_1.jsx)(helperComponents_1.Spinner, {}) : (0, jsx_runtime_1.jsx)(icons_1.CheckSVG, {
63
+ size: 16
64
+ })
65
+ }))]
66
+ })]
67
+ }))]
68
+ }));
69
+ }
70
+ }));
71
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./Switch"), exports);
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ToggleGroup = ToggleGroup;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = require("react");
9
+ const uncontrollable_1 = require("uncontrollable");
10
+ const constants_1 = require("../../constants");
11
+ const context_1 = require("../../context");
12
+ function ToggleGroup(_ref) {
13
+ let {
14
+ children,
15
+ value: valueProp,
16
+ onChange: onChangeProp,
17
+ selectionMode = constants_1.SELECTION_MODE.Single,
18
+ defaultValue
19
+ } = _ref;
20
+ const [value, setValue] = (0, uncontrollable_1.useUncontrolledProp)(valueProp, defaultValue, cb => {
21
+ onChangeProp === null || onChangeProp === void 0 ? void 0 : onChangeProp(cb(value));
22
+ });
23
+ const onChange = (0, react_1.useCallback)(newValue => {
24
+ if (selectionMode === constants_1.SELECTION_MODE.Single) {
25
+ return setValue(oldValue => {
26
+ if (newValue !== oldValue) {
27
+ return newValue;
28
+ }
29
+ return undefined;
30
+ });
31
+ }
32
+ return setValue(function () {
33
+ let oldValues = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
34
+ if (Array.isArray(oldValues)) {
35
+ if (oldValues.includes(newValue)) {
36
+ return oldValues.filter(oldValue => oldValue !== newValue);
37
+ }
38
+ return oldValues.concat(newValue);
39
+ }
40
+ return undefined;
41
+ });
42
+ }, [selectionMode, setValue]);
43
+ return (0, jsx_runtime_1.jsx)(context_1.ToggleGroupContext.Provider, {
44
+ value: {
45
+ value,
46
+ onChange,
47
+ selectionMode
48
+ },
49
+ children: children
50
+ });
51
+ }
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useToggleGroup = useToggleGroup;
7
+ const react_1 = require("react");
8
+ const constants_1 = require("../../constants");
9
+ const context_1 = require("../../context");
10
+ function useToggleGroup(_ref) {
11
+ let {
12
+ value: itemValue
13
+ } = _ref;
14
+ const {
15
+ value,
16
+ onChange,
17
+ selectionMode
18
+ } = (0, context_1.useToggleGroupContext)();
19
+ const isChecked = (0, react_1.useMemo)(() => {
20
+ if (typeof value === 'string') {
21
+ return value === itemValue;
22
+ }
23
+ if (Array.isArray(value)) {
24
+ return value.includes(itemValue);
25
+ }
26
+ return false;
27
+ }, [value, itemValue]);
28
+ const handleClick = (0, react_1.useCallback)(() => {
29
+ onChange === null || onChange === void 0 ? void 0 : onChange(itemValue);
30
+ }, [itemValue, onChange]);
31
+ return {
32
+ isChecked,
33
+ handleClick,
34
+ multipleSelection: selectionMode === constants_1.SELECTION_MODE.Multiple
35
+ };
36
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./ToggleGroup"), exports);
26
+ __exportStar(require("./hooks"), exports);
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
8
+ }
9
+ return t;
10
+ };
11
+ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
12
+ return mod && mod.__esModule ? mod : {
13
+ "default": mod
14
+ };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.TogglePrivate = void 0;
20
+ const jsx_runtime_1 = require("react/jsx-runtime");
21
+ const classnames_1 = __importDefault(require("classnames"));
22
+ const react_1 = require("react");
23
+ const uncontrollable_1 = require("uncontrollable");
24
+ const constants_1 = require("../../constants");
25
+ const utils_1 = require("../../utils");
26
+ const styles_module_scss_1 = __importDefault({});
27
+ exports.TogglePrivate = (0, react_1.forwardRef)(function TogglePrivate(_a, ref) {
28
+ var {
29
+ render,
30
+ checked: checkedProp,
31
+ defaultChecked,
32
+ onChange,
33
+ onBlur,
34
+ onFocus,
35
+ disabled,
36
+ className,
37
+ size = constants_1.SIZE.M,
38
+ mode = constants_1.MODE.Checkbox,
39
+ 'data-test-id': testId
40
+ } = _a,
41
+ otherProps = __rest(_a, ["render", "checked", "defaultChecked", "onChange", "onBlur", "onFocus", "disabled", "className", "size", "mode", 'data-test-id']);
42
+ const [checked, setChecked] = (0, uncontrollable_1.useUncontrolledProp)(checkedProp, Boolean(defaultChecked), onChange);
43
+ const [focusVisible, setFocusVisible] = (0, react_1.useState)(false);
44
+ const [hover, setHover] = (0, react_1.useState)(false);
45
+ const visualState = {
46
+ disabled: Boolean(disabled),
47
+ focusVisible,
48
+ checked,
49
+ hover,
50
+ size
51
+ };
52
+ return (0, jsx_runtime_1.jsxs)("span", Object.assign({
53
+ className: (0, classnames_1.default)(className, styles_module_scss_1.default.toggleLayout),
54
+ "data-size": size,
55
+ "data-test-id": testId,
56
+ onMouseEnter: () => setHover(true),
57
+ onMouseLeave: () => setHover(false)
58
+ }, (0, utils_1.getVisualStateAttributes)(visualState), {
59
+ children: [render(visualState), (0, jsx_runtime_1.jsx)("input", Object.assign({}, otherProps, {
60
+ "data-test-id": `${testId}-native-input`,
61
+ ref: ref,
62
+ type: mode,
63
+ className: styles_module_scss_1.default.togglePrivate,
64
+ checked: checked,
65
+ disabled: disabled,
66
+ onChange: e => setChecked(e.target.checked),
67
+ onFocus: event => {
68
+ setFocusVisible(event.target.matches(':focus-visible'));
69
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
70
+ },
71
+ onBlur: event => {
72
+ setFocusVisible(false);
73
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);
74
+ }
75
+ }))]
76
+ }));
77
+ });
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./TogglePrivate"), exports);
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ var __createBinding = void 0 && (void 0).__createBinding || (Object.create ? function (o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ } : function (o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ });
19
+ var __exportStar = void 0 && (void 0).__exportStar || function (m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ __exportStar(require("./Checkbox"), exports);
26
+ __exportStar(require("./Switch"), exports);
27
+ __exportStar(require("./Radio"), exports);
28
+ __exportStar(require("./Favorite"), exports);
29
+ __exportStar(require("./ToggleGroup"), exports);
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SELECTION_MODE = exports.FAVORITE_ICON = exports.SIZE = exports.MODE = void 0;
7
+ exports.MODE = {
8
+ Checkbox: 'checkbox',
9
+ Radio: 'radio'
10
+ };
11
+ exports.SIZE = {
12
+ S: 's',
13
+ M: 'm'
14
+ };
15
+ exports.FAVORITE_ICON = {
16
+ Star: 'star',
17
+ Heart: 'heart'
18
+ };
19
+ exports.SELECTION_MODE = {
20
+ Single: 'single',
21
+ Multiple: 'multiple'
22
+ };
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useToggleGroupContext = exports.ToggleGroupContext = void 0;
7
+ const react_1 = require("react");
8
+ const constants_1 = require("./constants");
9
+ exports.ToggleGroupContext = (0, react_1.createContext)({
10
+ value: undefined,
11
+ onChange: undefined,
12
+ selectionMode: constants_1.SELECTION_MODE.Single
13
+ });
14
+ const useToggleGroupContext = () => (0, react_1.useContext)(exports.ToggleGroupContext);
15
+ exports.useToggleGroupContext = useToggleGroupContext;