@jobber/components 4.68.8 → 4.68.10
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/dist/Checkbox/index.js +1 -1
- package/dist/{Checkbox-ad7ec2e7.js → Checkbox-3b2ffad6.js} +1 -1
- package/dist/DataList/index.js +1 -1
- package/dist/FeatureSwitch/index.js +1 -1
- package/dist/MultiSelect/index.js +1 -1
- package/dist/Switch/index.js +1 -1
- package/dist/Switch-b9e606ed.js +56 -0
- package/package.json +3 -3
- package/dist/Switch-b85272bf.js +0 -56
package/dist/Checkbox/index.js
CHANGED
|
@@ -14,7 +14,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
14
14
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
15
15
|
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
16
16
|
|
|
17
|
-
var css_248z = ".d-2MyyzKGN0- {\n display: inline-block;\n}\n\n.OFHQaLxY8zI- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: start;\n align-items: flex-start;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: pointer;\n}\n\n.HRrf3AZlpHc- {\n cursor: not-allowed;\n}\n\n.kMH5B1jwh-Y- {\n position: relative;\n}\n\n.rup0RBe4DNU- {\n /* Hide checkbox on UI but not screen readers and still allow focus state */\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n -webkit-clip-path: inset(100%);\n clip-path: inset(100%);\n white-space: nowrap;\n}\n\n.lOQVnJA7zPM- {\n display: -ms-flexbox;\n display: flex;\n width:
|
|
17
|
+
var css_248z = ".d-2MyyzKGN0- {\n --checkbox-size: var(--space-base);\n display: inline-block;\n}\n\n.jobber-retheme .d-2MyyzKGN0- {\n --checkbox-size: calc(var(--space-base) + var(--space-smaller));\n}\n\n.OFHQaLxY8zI- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: start;\n align-items: flex-start;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n cursor: pointer;\n}\n\n.HRrf3AZlpHc- {\n cursor: not-allowed;\n}\n\n.kMH5B1jwh-Y- {\n position: relative;\n}\n\n.rup0RBe4DNU- {\n /* Hide checkbox on UI but not screen readers and still allow focus state */\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n -webkit-clip-path: inset(100%);\n clip-path: inset(100%);\n white-space: nowrap;\n}\n\n.lOQVnJA7zPM- {\n display: -ms-flexbox;\n display: flex;\n width: var(--checkbox-size);\n height: var(--checkbox-size);\n box-sizing: border-box;\n border: calc(16px / 8) solid rgb(125, 176, 14);\n border: var(--border-thick) solid var(--color-interactive);\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n transition: all 100ms ease-out;\n transition: all var(--timing-quick) ease-out;\n -ms-flex-pack: center;\n justify-content: center;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.HRrf3AZlpHc- .lOQVnJA7zPM- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n}\n\n.jobber-retheme .lOQVnJA7zPM- {\n border-color: rgb(217, 223, 225);\n border-color: var(--color-border);\n border-radius: calc(16px / 16);\n border-radius: var(--radius-small);\n}\n\n.rup0RBe4DNU-.Njn2CQDXwVA- + .lOQVnJA7zPM-,\n.rup0RBe4DNU-:checked + .lOQVnJA7zPM- {\n border-color: rgb(125, 176, 14);\n border-color: var(--color-interactive);\n background-color: rgb(125, 176, 14);\n background-color: var(--color-interactive);\n}\n\n.rup0RBe4DNU-:focus-visible + .lOQVnJA7zPM- {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n}\n\n.jobber-retheme .lOQVnJA7zPM-:hover,\n.jobber-retheme .d-2MyyzKGN0-:hover .lOQVnJA7zPM- {\n border-color: rgb(125, 176, 14);\n border-color: var(--color-interactive);\n}\n\n.HRrf3AZlpHc- p {\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n}\n\n.HRrf3AZlpHc- .lOQVnJA7zPM- > * {\n opacity: 0;\n}\n\n.HRrf3AZlpHc- .rup0RBe4DNU-.Njn2CQDXwVA- + .lOQVnJA7zPM-,\n.HRrf3AZlpHc- .rup0RBe4DNU-:checked + .lOQVnJA7zPM- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n background-color: rgb(225, 225, 225);\n background-color: var(--color-disabled--secondary);\n}\n\n.HRrf3AZlpHc- .rup0RBe4DNU-.Njn2CQDXwVA- + .lOQVnJA7zPM- > *,\n.HRrf3AZlpHc- .rup0RBe4DNU-:checked + .lOQVnJA7zPM- > * {\n opacity: 1;\n}\n\n.eHENKCs5umc- {\n margin: 0 calc(16px / 2);\n margin: 0 var(--space-small);\n}\n\n.jobber-retheme .eHENKCs5umc- {\n margin-top: calc(16px / 8);\n margin-top: var(--space-smallest);\n}\n\n.fSEH0cAO9cI- {\n margin-bottom: calc(16px / 2);\n margin-bottom: var(--space-small);\n padding-left: calc(var(--checkbox-size) + (16px / 2));\n padding-left: calc(var(--checkbox-size) + calc(16px / 2));\n padding-left: calc(var(--checkbox-size) + var(--space-small));\n}\n";
|
|
18
18
|
var styles = {"checkbox":"d-2MyyzKGN0-","wrapper":"OFHQaLxY8zI-","disabled":"HRrf3AZlpHc-","checkHolder":"kMH5B1jwh-Y-","input":"rup0RBe4DNU-","checkBox":"lOQVnJA7zPM-","indeterminate":"Njn2CQDXwVA-","label":"eHENKCs5umc-","description":"fSEH0cAO9cI-"};
|
|
19
19
|
styleInject_es.styleInject(css_248z);
|
|
20
20
|
|
package/dist/DataList/index.js
CHANGED
|
@@ -22,7 +22,7 @@ var useFocusTrap = require('@jobber/hooks/useFocusTrap');
|
|
|
22
22
|
var useRefocusOnActivator = require('@jobber/hooks/useRefocusOnActivator');
|
|
23
23
|
var useOnKeyDown = require('@jobber/hooks/useOnKeyDown');
|
|
24
24
|
var ReactDOM = require('react-dom');
|
|
25
|
-
var Checkbox = require('../Checkbox-
|
|
25
|
+
var Checkbox = require('../Checkbox-3b2ffad6.js');
|
|
26
26
|
var reactRouterDom = require('react-router-dom');
|
|
27
27
|
var AnimatedSwitcher = require('../AnimatedSwitcher-d1e1ddcf.js');
|
|
28
28
|
var Combobox = require('../Combobox-31e06062.js');
|
|
@@ -9,7 +9,7 @@ var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
|
|
|
9
9
|
var Heading = require('../Heading-0f4ecb0c.js');
|
|
10
10
|
var Text = require('../Text-4a2bc89f.js');
|
|
11
11
|
var Content = require('../Content-2ca1ffe1.js');
|
|
12
|
-
var Switch = require('../Switch-
|
|
12
|
+
var Switch = require('../Switch-b9e606ed.js');
|
|
13
13
|
var Button = require('../Button-163a0641.js');
|
|
14
14
|
var Emphasis = require('../Emphasis-b2d1b3aa.js');
|
|
15
15
|
var Markdown = require('../Markdown-96070121.js');
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var classnames = require('classnames');
|
|
7
7
|
var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
|
|
8
|
-
var Checkbox = require('../Checkbox-
|
|
8
|
+
var Checkbox = require('../Checkbox-3b2ffad6.js');
|
|
9
9
|
var Text = require('../Text-4a2bc89f.js');
|
|
10
10
|
var Icon = require('../Icon-405a216c.js');
|
|
11
11
|
require('../tslib.es6-5b8768b7.js');
|
package/dist/Switch/index.js
CHANGED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var classnames = require('classnames');
|
|
5
|
+
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
6
|
+
var Typography = require('./Typography-973b122e.js');
|
|
7
|
+
|
|
8
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
9
|
+
|
|
10
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
11
|
+
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
12
|
+
|
|
13
|
+
var css_248z = ":root {\n --switch--pipSize: calc(var(--space-base) * 1.875);\n --switch--labelWidth: calc(var(--switch--pipSize) * 1.3);\n --switch--borderOffset: calc(var(--border-base) * 2);\n}\n\n:root .jobber-retheme {\n --switch--pipSize: var(--space-base);\n}\n\n.NaSI2jsLI0c-,\n.NaSI2jsLI0c- * {\n box-sizing: border-box;\n transition: all 200ms;\n transition: all var(--timing-base);\n}\n\n.NaSI2jsLI0c- {\n display: -ms-inline-flexbox;\n display: inline-flex;\n width: calc((((16px * 1) * 1.875) * 1.3) + ((16px * 1) * 1.875));\n width: calc(calc(calc(calc(16px * 1) * 1.875) * 1.3) + calc(calc(16px * 1) * 1.875));\n width: calc(var(--switch--labelWidth) + var(--switch--pipSize));\n padding: 0;\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc((16px * 1) * 1.875);\n border-radius: calc(calc(16px * 1) * 1.875);\n border-radius: var(--switch--pipSize);\n overflow: hidden;\n line-height: normal;\n background-color: rgb(238, 240, 242);\n background-color: var(--color-surface--background);\n cursor: pointer;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.jobber-retheme .NaSI2jsLI0c- {\n width: calc(16px * 3);\n width: var(--space-largest);\n height: calc(16px * 1.5);\n height: var(--space-large);\n border-color: rgb(217, 223, 225);\n border-color: var(--color-border);\n border-width: calc(16px / 8);\n border-width: var(--border-thick);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n -ms-flex-align: center;\n align-items: center;\n}\n\n.NaSI2jsLI0c-:focus-visible {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n outline: none;\n}\n\n.jobber-retheme .NaSI2jsLI0c-:hover,\n.jobber-retheme .NaSI2jsLI0c-:focus-visible {\n border-color: rgb(125, 176, 14);\n border-color: var(--color-interactive);\n}\n\n.HbAoDMJhkwY-,\n.jobber-retheme .HbAoDMJhkwY- {\n border-color: rgb(125, 176, 14);\n border-color: var(--color-interactive);\n background-color: rgb(125, 176, 14);\n background-color: var(--color-interactive);\n}\n\n.cc259FtdxeE- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n margin-left: calc(-1 * (((16px * 1) * 1.875) * 1.3));\n margin-left: calc(-1 * calc(calc(calc(16px * 1) * 1.875) * 1.3));\n margin-left: calc(-1 * var(--switch--labelWidth));\n pointer-events: none;\n -ms-flex: 1 1 100%;\n flex: 1 1 100%;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.jobber-retheme .cc259FtdxeE- {\n margin-left: -37px;\n}\n\n.HbAoDMJhkwY- .cc259FtdxeE- {\n margin-left: calc(-1 * ((16px / 16) * 2));\n margin-left: calc(-1 * calc(calc(16px / 16) * 2));\n margin-left: calc(-1 * var(--switch--borderOffset));\n}\n\n.jobber-retheme .HbAoDMJhkwY- .cc259FtdxeE- {\n margin-left: -13px;\n}\n\n.YZ-HIehHOBA- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n min-width: calc(((16px * 1) * 1.875) * 1.3);\n min-width: calc(calc(calc(16px * 1) * 1.875) * 1.3);\n min-width: var(--switch--labelWidth);\n margin-top: calc(16px / 16);\n margin-top: var(--space-minuscule);\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n pointer-events: none;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n.YZ-HIehHOBA-:first-of-type {\n padding-left: calc(16px / 2);\n padding-left: var(--space-small);\n}\n\n.YZ-HIehHOBA-:last-of-type {\n padding-right: calc(16px / 2);\n padding-right: var(--space-small);\n}\n\n.jobber-retheme .YZ-HIehHOBA- {\n opacity: 0;\n}\n\n._2hxova2FHpM- {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: calc((16px * 1) * 1.875);\n width: calc(calc(16px * 1) * 1.875);\n width: var(--switch--pipSize);\n height: calc((16px * 1) * 1.875);\n height: calc(calc(16px * 1) * 1.875);\n height: var(--switch--pipSize);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: 100%;\n border-radius: var(--radius-circle);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n transition: all 100ms ease-out;\n transition: all var(--timing-quick) ease-out;\n}\n\n.jobber-retheme ._2hxova2FHpM- {\n border: none;\n background-color: rgba(101, 120, 132, 1);\n background-color: var(--color-interactive--subtle);\n}\n\n.HbAoDMJhkwY- ._2hxova2FHpM- {\n border-color: rgb(125, 176, 14);\n border-color: var(--color-green);\n}\n\n.jobber-retheme .HbAoDMJhkwY- ._2hxova2FHpM- {\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n/* Moving this up overwrites disabled styling */\n\n/* stylelint-disable-next-line no-descending-specificity */\n\n._6hWvJHjyLlk- ._2hxova2FHpM- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n}\n\n.jobber-retheme ._6hWvJHjyLlk- ._2hxova2FHpM- {\n background-color: rgb(181, 181, 181);\n background-color: var(--color-disabled);\n}\n\n._6hWvJHjyLlk- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n background-color: rgb(238, 240, 242);\n background-color: var(--color-surface--background);\n cursor: not-allowed;\n}\n\n.jobber-retheme ._6hWvJHjyLlk- {\n border-color: rgb(181, 181, 181);\n border-color: var(--color-disabled);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n cursor: not-allowed;\n}\n\n.jobber-retheme .HbAoDMJhkwY-._6hWvJHjyLlk- {\n background-color: rgb(181, 181, 181);\n background-color: var(--color-disabled);\n}\n\n.jobber-retheme .HbAoDMJhkwY-._6hWvJHjyLlk- ._2hxova2FHpM- {\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n.jobber-retheme ._6hWvJHjyLlk-:hover {\n border-color: rgb(181, 181, 181);\n border-color: var(--color-disabled);\n}\n";
|
|
14
|
+
var styles = {"track":"NaSI2jsLI0c-","isChecked":"HbAoDMJhkwY-","toggle":"cc259FtdxeE-","label":"YZ-HIehHOBA-","pip":"_2hxova2FHpM-","disabled":"_6hWvJHjyLlk-"};
|
|
15
|
+
styleInject_es.styleInject(css_248z);
|
|
16
|
+
|
|
17
|
+
function Switch({ value: providedValue, ariaLabel, name, disabled, onChange, }) {
|
|
18
|
+
const [statefulValue, setValue] = React.useState(false);
|
|
19
|
+
const value = providedValue != undefined ? providedValue : statefulValue;
|
|
20
|
+
const toggleSwitch = () => {
|
|
21
|
+
if (disabled) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const newValue = !value;
|
|
25
|
+
onChange && onChange(newValue);
|
|
26
|
+
if (providedValue == undefined) {
|
|
27
|
+
setValue(newValue);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
const className = classnames__default["default"](styles.track, {
|
|
31
|
+
[styles.isChecked]: value,
|
|
32
|
+
[styles.disabled]: disabled,
|
|
33
|
+
});
|
|
34
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
35
|
+
React__default["default"].createElement("button", { id: name, type: "button", role: "switch", "aria-checked": value, "aria-label": ariaLabel, className: className, onClick: toggleSwitch, disabled: disabled },
|
|
36
|
+
React__default["default"].createElement("span", { className: styles.toggle },
|
|
37
|
+
React__default["default"].createElement(Label, { as: "On", disabled: disabled }),
|
|
38
|
+
React__default["default"].createElement("span", { className: styles.pip }),
|
|
39
|
+
React__default["default"].createElement(Label, { as: "Off", disabled: disabled }))),
|
|
40
|
+
React__default["default"].createElement("input", { name: name, type: "hidden", value: String(value) })));
|
|
41
|
+
}
|
|
42
|
+
function Label({ as, disabled }) {
|
|
43
|
+
const getTextColor = () => {
|
|
44
|
+
if (disabled) {
|
|
45
|
+
return "grey";
|
|
46
|
+
}
|
|
47
|
+
else if (as === "On") {
|
|
48
|
+
return "white";
|
|
49
|
+
}
|
|
50
|
+
return "greyBlue";
|
|
51
|
+
};
|
|
52
|
+
return (React__default["default"].createElement("span", { className: styles.label },
|
|
53
|
+
React__default["default"].createElement(Typography.Typography, { element: "span", textColor: getTextColor(), size: "small", fontWeight: "bold", textCase: "uppercase" }, as)));
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
exports.Switch = Switch;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jobber/components",
|
|
3
|
-
"version": "4.68.
|
|
3
|
+
"version": "4.68.10",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"dist/*"
|
|
20
20
|
],
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@jobber/design": "^0.51.
|
|
22
|
+
"@jobber/design": "^0.51.1",
|
|
23
23
|
"@jobber/formatters": "*",
|
|
24
24
|
"@jobber/hooks": "^2.8.0",
|
|
25
25
|
"@popperjs/core": "^2.0.6",
|
|
@@ -83,5 +83,5 @@
|
|
|
83
83
|
"> 1%",
|
|
84
84
|
"IE 10"
|
|
85
85
|
],
|
|
86
|
-
"gitHead": "
|
|
86
|
+
"gitHead": "47cb7f876c1e632af025a154002a234234bd9629"
|
|
87
87
|
}
|
package/dist/Switch-b85272bf.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var classnames = require('classnames');
|
|
5
|
-
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
6
|
-
var Typography = require('./Typography-973b122e.js');
|
|
7
|
-
|
|
8
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
9
|
-
|
|
10
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
11
|
-
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
12
|
-
|
|
13
|
-
var css_248z = ":root {\n --switch--pipSize: calc(var(--space-base) * 1.875);\n --switch--labelWidth: calc(var(--switch--pipSize) * 1.3);\n --switch--borderOffset: calc(var(--border-base) * 2);\n}\n\n.NaSI2jsLI0c-,\n.NaSI2jsLI0c- * {\n box-sizing: border-box;\n transition: all 200ms;\n transition: all var(--timing-base);\n}\n\n.NaSI2jsLI0c- {\n display: -ms-inline-flexbox;\n display: inline-flex;\n width: calc((((16px * 1) * 1.875) * 1.3) + ((16px * 1) * 1.875));\n width: calc(calc(calc(calc(16px * 1) * 1.875) * 1.3) + calc(calc(16px * 1) * 1.875));\n width: calc(var(--switch--labelWidth) + var(--switch--pipSize));\n padding: 0;\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc((16px * 1) * 1.875);\n border-radius: calc(calc(16px * 1) * 1.875);\n border-radius: var(--switch--pipSize);\n overflow: hidden;\n line-height: normal;\n background-color: rgb(238, 240, 242);\n background-color: var(--color-surface--background);\n cursor: pointer;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.NaSI2jsLI0c-:focus {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n outline: none;\n}\n\n.HbAoDMJhkwY- {\n border-color: rgb(125, 176, 14);\n border-color: var(--color-interactive);\n background-color: rgb(125, 176, 14);\n background-color: var(--color-interactive);\n}\n\n.cc259FtdxeE- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n margin-left: calc(-1 * (((16px * 1) * 1.875) * 1.3));\n margin-left: calc(-1 * calc(calc(calc(16px * 1) * 1.875) * 1.3));\n margin-left: calc(-1 * var(--switch--labelWidth));\n pointer-events: none;\n -ms-flex: 1 1 100%;\n flex: 1 1 100%;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.HbAoDMJhkwY- .cc259FtdxeE- {\n margin-left: calc(-1 * ((16px / 16) * 2));\n margin-left: calc(-1 * calc(calc(16px / 16) * 2));\n margin-left: calc(-1 * var(--switch--borderOffset));\n}\n\n.YZ-HIehHOBA- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n min-width: calc(((16px * 1) * 1.875) * 1.3);\n min-width: calc(calc(calc(16px * 1) * 1.875) * 1.3);\n min-width: var(--switch--labelWidth);\n margin-top: calc(16px / 16);\n margin-top: var(--space-minuscule);\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n pointer-events: none;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n.YZ-HIehHOBA-:first-of-type {\n padding-left: calc(16px / 2);\n padding-left: var(--space-small);\n}\n\n.YZ-HIehHOBA-:last-of-type {\n padding-right: calc(16px / 2);\n padding-right: var(--space-small);\n}\n\n._2hxova2FHpM- {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: calc((16px * 1) * 1.875);\n width: calc(calc(16px * 1) * 1.875);\n width: var(--switch--pipSize);\n height: calc((16px * 1) * 1.875);\n height: calc(calc(16px * 1) * 1.875);\n height: var(--switch--pipSize);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: 100%;\n border-radius: var(--radius-circle);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n.HbAoDMJhkwY- ._2hxova2FHpM- {\n border-color: rgb(125, 176, 14);\n border-color: var(--color-green);\n}\n\n._6hWvJHjyLlk- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n background-color: rgb(238, 240, 242);\n background-color: var(--color-surface--background);\n cursor: not-allowed;\n}\n\n._6hWvJHjyLlk- ._2hxova2FHpM- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n}\n";
|
|
14
|
-
var styles = {"track":"NaSI2jsLI0c-","isChecked":"HbAoDMJhkwY-","toggle":"cc259FtdxeE-","label":"YZ-HIehHOBA-","pip":"_2hxova2FHpM-","disabled":"_6hWvJHjyLlk-"};
|
|
15
|
-
styleInject_es.styleInject(css_248z);
|
|
16
|
-
|
|
17
|
-
function Switch({ value: providedValue, ariaLabel, name, disabled, onChange, }) {
|
|
18
|
-
const [statefulValue, setValue] = React.useState(false);
|
|
19
|
-
const value = providedValue != undefined ? providedValue : statefulValue;
|
|
20
|
-
const toggleSwitch = () => {
|
|
21
|
-
if (disabled) {
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const newValue = !value;
|
|
25
|
-
onChange && onChange(newValue);
|
|
26
|
-
if (providedValue == undefined) {
|
|
27
|
-
setValue(newValue);
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
const className = classnames__default["default"](styles.track, {
|
|
31
|
-
[styles.isChecked]: value,
|
|
32
|
-
[styles.disabled]: disabled,
|
|
33
|
-
});
|
|
34
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
35
|
-
React__default["default"].createElement("button", { id: name, type: "button", role: "switch", "aria-checked": value, "aria-label": ariaLabel, className: className, onClick: toggleSwitch, disabled: disabled },
|
|
36
|
-
React__default["default"].createElement("span", { className: styles.toggle },
|
|
37
|
-
React__default["default"].createElement(Label, { as: "On", disabled: disabled }),
|
|
38
|
-
React__default["default"].createElement("span", { className: styles.pip }),
|
|
39
|
-
React__default["default"].createElement(Label, { as: "Off", disabled: disabled }))),
|
|
40
|
-
React__default["default"].createElement("input", { name: name, type: "hidden", value: String(value) })));
|
|
41
|
-
}
|
|
42
|
-
function Label({ as, disabled }) {
|
|
43
|
-
const getTextColor = () => {
|
|
44
|
-
if (disabled) {
|
|
45
|
-
return "grey";
|
|
46
|
-
}
|
|
47
|
-
else if (as === "On") {
|
|
48
|
-
return "white";
|
|
49
|
-
}
|
|
50
|
-
return "greyBlue";
|
|
51
|
-
};
|
|
52
|
-
return (React__default["default"].createElement("span", { className: styles.label },
|
|
53
|
-
React__default["default"].createElement(Typography.Typography, { element: "span", textColor: getTextColor(), size: "small", fontWeight: "bold", textCase: "uppercase" }, as)));
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
exports.Switch = Switch;
|