@jobber/components 4.91.2-retheme-fe.1 → 4.91.2-retheme-fe.2

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 (86) hide show
  1. package/dist/Autocomplete/index.js +7 -8
  2. package/dist/Banner/index.js +10 -29
  3. package/dist/Button/index.js +2 -2
  4. package/dist/Button-bb77a513.js +57 -0
  5. package/dist/ButtonDismiss/index.js +3 -3
  6. package/dist/{ButtonDismiss-4a7b9762.js → ButtonDismiss-a1df8656.js} +1 -1
  7. package/dist/Card/index.js +6 -7
  8. package/dist/{Card-0d37c3cc.js → Card-69212ecd.js} +6 -6
  9. package/dist/Checkbox/index.js +3 -3
  10. package/dist/Checkbox-2ea61ab4.js +63 -0
  11. package/dist/Chip/index.js +3 -3
  12. package/dist/{Chip-5c2af757.js → Chip-b67ae770.js} +2 -2
  13. package/dist/Chips/index.js +4 -4
  14. package/dist/Combobox/index.js +6 -6
  15. package/dist/{Combobox-7320bde1.js → Combobox-faa6bffe.js} +7 -7
  16. package/dist/ConfirmationModal/index.js +9 -11
  17. package/dist/{ConfirmationModal-6d376450.js → ConfirmationModal-289df9ad.js} +2 -2
  18. package/dist/DataDump/index.js +7 -8
  19. package/dist/DataList/index.js +15 -16
  20. package/dist/DataTable/index.js +6 -6
  21. package/dist/DatePicker/index.js +3 -3
  22. package/dist/{DatePicker-62d46877.js → DatePicker-8392951f.js} +2 -2
  23. package/dist/DescriptionList/index.js +1 -1
  24. package/dist/Disclosure/index.js +1 -1
  25. package/dist/Drawer/index.js +6 -8
  26. package/dist/Emphasis/index.js +2 -2
  27. package/dist/{Emphasis-c01b5d06.js → Emphasis-2bbe4da6.js} +1 -1
  28. package/dist/FeatureSwitch/index.js +7 -9
  29. package/dist/FormField/index.js +5 -5
  30. package/dist/{FormField-223ccc74.js → FormField-5134bf0e.js} +3 -3
  31. package/dist/FormatFile/index.js +10 -12
  32. package/dist/{FormatFile-e6f1b4e0.js → FormatFile-7e432b0d.js} +4 -4
  33. package/dist/Gallery/index.js +11 -13
  34. package/dist/Heading/index.js +2 -4
  35. package/dist/{Heading-a0e38319.js → Heading-d025ffbb.js} +4 -6
  36. package/dist/InlineLabel/index.js +2 -2
  37. package/dist/{InlineLabel-0d6c7ade.js → InlineLabel-d092e45a.js} +1 -1
  38. package/dist/InputAvatar/index.js +5 -5
  39. package/dist/InputDate/index.js +6 -6
  40. package/dist/InputEmail/index.js +5 -5
  41. package/dist/InputFile/index.js +5 -5
  42. package/dist/{InputFile-daaa5a05.js → InputFile-5458fb6e.js} +3 -3
  43. package/dist/InputNumber/index.js +6 -6
  44. package/dist/{InputNumber-17d2a045.js → InputNumber-0cc0d204.js} +1 -1
  45. package/dist/InputPassword/index.js +5 -5
  46. package/dist/InputPhoneNumber/index.js +5 -5
  47. package/dist/InputText/index.js +6 -6
  48. package/dist/{InputText-0ce98f14.js → InputText-8af32879.js} +1 -1
  49. package/dist/InputTime/index.js +5 -5
  50. package/dist/InputValidation/index.js +3 -3
  51. package/dist/{InputValidation-01b22c68.js → InputValidation-9c582130.js} +1 -1
  52. package/dist/LightBox/index.js +4 -4
  53. package/dist/{LightBox-370d7aa6.js → LightBox-ddbda5c6.js} +3 -3
  54. package/dist/List/index.js +5 -7
  55. package/dist/Markdown/index.js +5 -7
  56. package/dist/{Markdown-6d53b503.js → Markdown-8150d535.js} +3 -3
  57. package/dist/Menu/index.js +3 -3
  58. package/dist/{Menu-98d76ebe.js → Menu-f9fb99bb.js} +7 -8
  59. package/dist/Modal/index.js +5 -7
  60. package/dist/{Modal-2ae9fe22.js → Modal-4f48de3a.js} +5 -5
  61. package/dist/MultiSelect/index.js +3 -3
  62. package/dist/{Option-6c06237b.js → Option-8faed3bf.js} +1 -1
  63. package/dist/Page/index.js +8 -9
  64. package/dist/Popover/index.js +3 -3
  65. package/dist/RadioGroup/index.js +3 -3
  66. package/dist/RadioGroup-c31c2e81.js +46 -0
  67. package/dist/RecurringSelect/index.js +8 -8
  68. package/dist/Select/index.js +6 -6
  69. package/dist/StatusLabel/index.js +1 -1
  70. package/dist/Switch/index.js +2 -2
  71. package/dist/Switch-57fbf575.js +56 -0
  72. package/dist/Tabs/index.js +1 -1
  73. package/dist/Text/index.js +2 -2
  74. package/dist/{Text-f6404c6c.js → Text-fdc65f0b.js} +1 -1
  75. package/dist/Toast/index.js +5 -6
  76. package/dist/Tooltip/index.js +1 -1
  77. package/dist/{Tooltip-f353204e.js → Tooltip-1e3abeb6.js} +1 -1
  78. package/dist/Typography/css/TextColors.css.d.ts +1 -0
  79. package/dist/Typography/index.js +1 -1
  80. package/dist/{Typography-224ae794.js → Typography-018e1471.js} +2 -2
  81. package/package.json +3 -3
  82. package/dist/Button-dd7ed8c3.js +0 -57
  83. package/dist/Checkbox-d769e1d4.js +0 -63
  84. package/dist/RadioGroup-77aff819.js +0 -46
  85. package/dist/Switch-37dc9331.js +0 -56
  86. package/dist/useAtlantisConfig-ed0bee66.js +0 -16
@@ -6,13 +6,13 @@ var React = require('react');
6
6
  var reactPopper = require('react-popper');
7
7
  var useRefocusOnActivator = require('@jobber/hooks/useRefocusOnActivator');
8
8
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
9
- var ButtonDismiss = require('../ButtonDismiss-4a7b9762.js');
10
- require('../Button-dd7ed8c3.js');
9
+ var ButtonDismiss = require('../ButtonDismiss-a1df8656.js');
10
+ require('../Button-bb77a513.js');
11
11
  require('classnames');
12
12
  require('react-router-dom');
13
13
  require('../Icon-405a216c.js');
14
14
  require('@jobber/design');
15
- require('../Typography-224ae794.js');
15
+ require('../Typography-018e1471.js');
16
16
 
17
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
18
 
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var RadioGroup = require('../RadioGroup-77aff819.js');
5
+ var RadioGroup = require('../RadioGroup-c31c2e81.js');
6
6
  require('react');
7
7
  require('../style-inject.es-9d2f5f4e.js');
8
- require('../Text-f6404c6c.js');
9
- require('../Typography-224ae794.js');
8
+ require('../Text-fdc65f0b.js');
9
+ require('../Typography-018e1471.js');
10
10
  require('classnames');
11
11
 
12
12
 
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
5
+ var Text = require('./Text-fdc65f0b.js');
6
+
7
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
+
9
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
10
+
11
+ var css_248z = "._5P8wEHDUdKY- {\n --radio--checked-thickness: 6px;\n --radio-diameter: 20px;\n --radio--checked-shadow: 0px 0px 0px var(--space-minuscule) transparent;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n._08ZPdlE98Ko- {\n /* Hide checkbox on UI but not screen readers and still allow focus state */\n position: absolute;\n left: -999vw;\n}\n\n.-PUoLXltVlQ- {\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-size: calc((16px * 1) * 0.875);\n font-size: calc(calc(16px * 1) * 0.875);\n font-size: var(--typography--fontSize-base);\n cursor: pointer;\n -ms-flex-align: start;\n align-items: flex-start;\n}\n\n._08ZPdlE98Ko- + .-PUoLXltVlQ-::before {\n content: \"\";\n display: block;\n width: var(--radio-diameter);\n height: var(--radio-diameter);\n box-sizing: border-box;\n margin-right: calc(16px / 2);\n margin-right: var(--space-small);\n border: calc(16px / 8) solid rgb(218, 224, 226);\n border: var(--border-thick) solid var(--color-border);\n border-radius: 100%;\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-negative: 0;\n flex-shrink: 0;\n}\n\n._08ZPdlE98Ko-:hover + .-PUoLXltVlQ-::before {\n border-color: rgb(50, 130, 28);\n border-color: var(--color-interactive);\n}\n\n._08ZPdlE98Ko-:checked + .-PUoLXltVlQ-::before {\n border-color: rgb(50, 130, 28);\n border-color: var(--color-interactive);\n border-width: var(--radio--checked-thickness);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n._08ZPdlE98Ko-:focus-visible:checked + .-PUoLXltVlQ-:before {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(131, 151, 160);\n box-shadow: var(--shadow-focus);\n}\n\n._08ZPdlE98Ko-[disabled] + .-PUoLXltVlQ- {\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n cursor: not-allowed;\n}\n\n._08ZPdlE98Ko-[disabled] + .-PUoLXltVlQ-::before {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n}\n\n._08ZPdlE98Ko-[disabled]:checked + .-PUoLXltVlQ-::before {\n --radio--checked-shadow: 0px 0px 0px var(--space-minuscule)\n var(--color-disabled);\n border-color: rgb(181, 181, 181);\n border-color: var(--color-disabled);\n}\n\n._8r6qT-6S9EI-,\n.C5SzbO1epLk- {\n margin-top: calc((16px / 4) * -1);\n margin-top: calc(calc(16px / 4) * -1);\n margin-top: calc(var(--space-smaller) * -1);\n margin-bottom: calc(16px / 2);\n margin-bottom: var(--space-small);\n padding-left: calc(var(--radio-diameter) + (16px / 2));\n padding-left: calc(var(--radio-diameter) + calc(16px / 2));\n padding-left: calc(var(--radio-diameter) + var(--space-small));\n}\n\n._08ZPdlE98Ko-[disabled] + .-PUoLXltVlQ- + ._8r6qT-6S9EI- > p {\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n}\n";
12
+ var styles = {"radioGroup":"_5P8wEHDUdKY-","input":"_08ZPdlE98Ko-","label":"-PUoLXltVlQ-","description":"_8r6qT-6S9EI-","children":"C5SzbO1epLk-"};
13
+ styleInject_es.styleInject(css_248z);
14
+
15
+ /**
16
+ * For rendering props only. To make updates to
17
+ * the real RadioOption, look at InternalRadioOption
18
+ */
19
+ function RadioOption({ children }) {
20
+ return React__default["default"].createElement(React__default["default"].Fragment, null, children);
21
+ }
22
+ function InternalRadioOption({ value, name, label, description, disabled, checked, children, onChange, }) {
23
+ const inputId = `${value.toString()}_${React.useId()}`;
24
+ const shouldRenderIndependentChildren = label && children;
25
+ return (React__default["default"].createElement("div", null,
26
+ React__default["default"].createElement("input", { onChange: handleChange, type: "radio", name: name, value: value, disabled: disabled, checked: checked, id: inputId, className: styles.input, "aria-describedby": description ? `${inputId}_description` : undefined }),
27
+ React__default["default"].createElement("label", { className: styles.label, htmlFor: inputId }, label ? label : children),
28
+ description && (React__default["default"].createElement("div", { className: styles.description, id: `${inputId}_description` },
29
+ React__default["default"].createElement(Text.Text, { variation: "subdued", size: "small" }, description))),
30
+ shouldRenderIndependentChildren && (React__default["default"].createElement("div", { className: styles.children, id: `${inputId}_children` }, children))));
31
+ function handleChange() {
32
+ onChange(value);
33
+ }
34
+ }
35
+
36
+ function RadioGroup({ children, value, ariaLabel, onChange, name = React.useId(), }) {
37
+ return (React__default["default"].createElement("div", { role: "radiogroup", "aria-label": ariaLabel, className: styles.radioGroup }, React__default["default"].Children.map(children, option => (React__default["default"].createElement(InternalRadioOption, Object.assign({ checked: value === option.props.value, name: name, onChange: handleChange }, option.props), option.props.children)))));
38
+ function handleChange(newValue) {
39
+ if (newValue !== value) {
40
+ onChange(newValue);
41
+ }
42
+ }
43
+ }
44
+
45
+ exports.RadioGroup = RadioGroup;
46
+ exports.RadioOption = RadioOption;
@@ -4,23 +4,23 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
6
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
7
- var RadioGroup = require('../RadioGroup-77aff819.js');
8
- var Text = require('../Text-f6404c6c.js');
7
+ var RadioGroup = require('../RadioGroup-c31c2e81.js');
8
+ var Text = require('../Text-fdc65f0b.js');
9
9
  require('classnames');
10
- require('../Typography-224ae794.js');
11
- var Option = require('../Option-6c06237b.js');
12
- var InputNumber = require('../InputNumber-17d2a045.js');
10
+ require('../Typography-018e1471.js');
11
+ var Option = require('../Option-8faed3bf.js');
12
+ var InputNumber = require('../InputNumber-0cc0d204.js');
13
13
  var InputGroup = require('../InputGroup-8d4fd4eb.js');
14
14
  var Content = require('../Content-e3f7b6fc.js');
15
- require('../FormField-223ccc74.js');
15
+ require('../FormField-5134bf0e.js');
16
16
  require('../tslib.es6-754e2961.js');
17
17
  require('react-hook-form');
18
18
  require('@jobber/hooks/useShowClear');
19
- require('../Button-dd7ed8c3.js');
19
+ require('../Button-bb77a513.js');
20
20
  require('react-router-dom');
21
21
  require('../Icon-405a216c.js');
22
22
  require('@jobber/design');
23
- require('../InputValidation-01b22c68.js');
23
+ require('../InputValidation-9c582130.js');
24
24
  require('framer-motion');
25
25
  require('../Spinner-e15a3ae0.js');
26
26
 
@@ -2,21 +2,21 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Option = require('../Option-6c06237b.js');
5
+ var Option = require('../Option-8faed3bf.js');
6
6
  require('react');
7
- require('../FormField-223ccc74.js');
7
+ require('../FormField-5134bf0e.js');
8
8
  require('../tslib.es6-754e2961.js');
9
9
  require('react-hook-form');
10
10
  require('../style-inject.es-9d2f5f4e.js');
11
11
  require('classnames');
12
12
  require('@jobber/hooks/useShowClear');
13
- require('../Button-dd7ed8c3.js');
13
+ require('../Button-bb77a513.js');
14
14
  require('react-router-dom');
15
15
  require('../Icon-405a216c.js');
16
16
  require('@jobber/design');
17
- require('../Typography-224ae794.js');
18
- require('../Text-f6404c6c.js');
19
- require('../InputValidation-01b22c68.js');
17
+ require('../Typography-018e1471.js');
18
+ require('../Text-fdc65f0b.js');
19
+ require('../InputValidation-9c582130.js');
20
20
  require('framer-motion');
21
21
  require('../Spinner-e15a3ae0.js');
22
22
 
@@ -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 Typography = require('../Typography-224ae794.js');
8
+ var Typography = require('../Typography-018e1471.js');
9
9
  var StatusIndicator = require('../StatusIndicator-dd1f0fd5.js');
10
10
 
11
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Switch = require('../Switch-37dc9331.js');
5
+ var Switch = require('../Switch-57fbf575.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('../style-inject.es-9d2f5f4e.js');
9
- require('../Typography-224ae794.js');
9
+ require('../Typography-018e1471.js');
10
10
 
11
11
 
12
12
 
@@ -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-018e1471.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--width: 48px;\n --switch--pipSize: 16px;\n --switch--labelWidth: calc(var(--switch--pipSize) * 1.3);\n --switch--borderOffset: var(--border-thick);\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: 48px;\n width: var(--switch--width);\n height: calc(48px / 2);\n height: calc(var(--switch--width) / 2);\n padding: 0;\n border: calc(16px / 8) solid rgb(218, 224, 226);\n border: var(--border-thick) solid var(--color-border);\n border-radius: 16px;\n border-radius: var(--switch--pipSize);\n overflow: hidden;\n line-height: normal;\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n cursor: pointer;\n -webkit-appearance: none;\n appearance: none;\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(131, 151, 160);\n box-shadow: var(--shadow-focus);\n outline: none;\n}\n\n.NaSI2jsLI0c-:hover,\n.NaSI2jsLI0c-:focus-visible {\n border-color: rgb(50, 130, 28);\n border-color: var(--color-interactive);\n}\n\n.HbAoDMJhkwY- {\n border-color: rgb(50, 130, 28);\n border-color: var(--color-interactive);\n background-color: rgb(50, 130, 28);\n background-color: var(--color-interactive);\n}\n\n.cc259FtdxeE- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n margin-left: calc(48px / -2);\n margin-left: calc(var(--switch--width) / -2);\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: 0;\n}\n\n.YZ-HIehHOBA- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n min-width: calc(16px * 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 opacity: 0;\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: 16px;\n width: var(--switch--pipSize);\n height: 16px;\n height: var(--switch--pipSize);\n border: none;\n border-radius: 100%;\n border-radius: var(--radius-circle);\n background-color: rgb(1, 40, 55);\n background-color: var(--color-interactive--subtle);\n transition: all 100ms ease-out;\n transition: all var(--timing-quick) ease-out;\n}\n\n.HbAoDMJhkwY- ._2hxova2FHpM- {\n border-color: rgb(50, 130, 28);\n border-color: var(--color-interactive);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n._6hWvJHjyLlk- ._2hxova2FHpM- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n background-color: rgb(181, 181, 181);\n background-color: var(--color-disabled);\n}\n\n._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.HbAoDMJhkwY-._6hWvJHjyLlk- {\n background-color: rgb(181, 181, 181);\n background-color: var(--color-disabled);\n}\n\n.HbAoDMJhkwY-._6hWvJHjyLlk- ._2hxova2FHpM- {\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n._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;
@@ -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 Typography = require('../Typography-224ae794.js');
8
+ var Typography = require('../Typography-018e1471.js');
9
9
 
10
10
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
11
 
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Text = require('../Text-f6404c6c.js');
5
+ var Text = require('../Text-fdc65f0b.js');
6
6
  require('react');
7
- require('../Typography-224ae794.js');
7
+ require('../Typography-018e1471.js');
8
8
  require('classnames');
9
9
  require('../style-inject.es-9d2f5f4e.js');
10
10
 
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var Typography = require('./Typography-224ae794.js');
4
+ var Typography = require('./Typography-018e1471.js');
5
5
 
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
7
 
@@ -7,8 +7,8 @@ var client = require('react-dom/client');
7
7
  var framerMotion = require('framer-motion');
8
8
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
9
9
  var Icon = require('../Icon-405a216c.js');
10
- var Button = require('../Button-dd7ed8c3.js');
11
- var Typography = require('../Typography-224ae794.js');
10
+ var Button = require('../Button-bb77a513.js');
11
+ var Typography = require('../Typography-018e1471.js');
12
12
  require('@jobber/design');
13
13
  require('classnames');
14
14
  require('react-router-dom');
@@ -17,8 +17,8 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
17
17
 
18
18
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
19
19
 
20
- var css_248z = ".FVK4VwhLaVQ- {\n position: relative;\n z-index: 1003;\n z-index: var(--elevation-toast);\n}\n\n.MUXYGaC7Msg- {\n display: -ms-flexbox;\n display: flex;\n position: fixed;\n right: 0;\n bottom: calc(16px * 1.5);\n bottom: var(--space-large);\n left: 0;\n z-index: 1003;\n z-index: var(--elevation-toast);\n width: 100%;\n box-sizing: border-box;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-align: center;\n align-items: center;\n padding: 0 calc(16px * 1.5);\n padding: 0 var(--space-large);\n color: rgba(255, 255, 255, 1);\n color: var(--color-text--reverse);\n font-size: calc(16px * 1);\n font-size: var(--typography--fontSize-large);\n pointer-events: none;\n}\n\n.yCRa7jHH33M- {\n box-shadow: 0px calc(16px * 1) calc(16px * 1) 0px\n rgba(0, 0, 0, 0.075),\n 0px 0px calc(16px / 2) 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-high);\n overflow: hidden;\n pointer-events: all;\n}\n\n.yCRa7jHH33M- + .yCRa7jHH33M- {\n margin-top: calc(16px * 1);\n margin-top: var(--space-base);\n}\n\n.KiJL-VNZ3Sg- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n padding: calc((16px / 2) / 1.25) calc(16px * 1);\n padding: calc(calc(16px / 2) / 1.25) calc(16px * 1);\n padding: calc(var(--space-small) / 1.25) var(--space-base);\n border-radius: 8px;\n border-radius: var(--radius-base);\n background: rgb(1, 40, 55);\n background: var(--color-surface--reverse);\n}\n\n.xtRB59TMHcU- {\n margin-right: calc(16px * 1);\n margin-right: var(--space-base);\n}\n\n.cExoS0APILs- {\n margin-left: calc(16px * 1);\n margin-left: var(--space-base);\n}\n\n.jobber-retheme .cExoS0APILs- svg path {\n fill: rgb(147, 161, 169);\n fill: var(--color-greyBlue--light);\n}\n\n.jobber-retheme .cExoS0APILs-:hover svg path {\n fill: rgba(101, 120, 132, 1);\n fill: var(--color-greyBlue);\n}\n\n.-T38wWbQUNs- {\n margin-left: calc(16px / 2);\n margin-left: var(--space-small);\n}\n";
21
- var styles = {"wrapper":"FVK4VwhLaVQ-","container":"MUXYGaC7Msg-","toast":"yCRa7jHH33M-","slice":"KiJL-VNZ3Sg-","icon":"xtRB59TMHcU-","button":"cExoS0APILs-","action":"-T38wWbQUNs-"};
20
+ var css_248z = ".FVK4VwhLaVQ- {\n position: relative;\n z-index: 1003;\n z-index: var(--elevation-toast);\n}\n\n.MUXYGaC7Msg- {\n display: -ms-flexbox;\n display: flex;\n position: fixed;\n right: 0;\n bottom: calc(16px * 1.5);\n bottom: var(--space-large);\n left: 0;\n z-index: 1003;\n z-index: var(--elevation-toast);\n width: 100%;\n box-sizing: border-box;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-align: center;\n align-items: center;\n padding: 0 calc(16px * 1.5);\n padding: 0 var(--space-large);\n color: rgba(255, 255, 255, 1);\n color: var(--color-text--reverse);\n font-size: calc(16px * 1);\n font-size: var(--typography--fontSize-large);\n pointer-events: none;\n}\n\n.yCRa7jHH33M- {\n box-shadow: 0px calc(16px * 1) calc(16px * 1) 0px\n rgba(0, 0, 0, 0.075),\n 0px 0px calc(16px / 2) 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-high);\n overflow: hidden;\n pointer-events: all;\n}\n\n.yCRa7jHH33M- + .yCRa7jHH33M- {\n margin-top: calc(16px * 1);\n margin-top: var(--space-base);\n}\n\n.KiJL-VNZ3Sg- {\n display: -ms-flexbox;\n display: flex;\n gap: calc(16px / 2);\n gap: var(--space-small);\n -ms-flex-align: center;\n align-items: center;\n padding: calc(16px / 4) calc(16px / 4) calc(16px / 4);\n padding: var(--space-smaller) var(--space-smaller) var(--space-smaller);\n padding-left: calc((16px / 2) + (16px / 4));\n padding-left: calc(calc(16px / 2) + calc(16px / 4));\n padding-left: calc(var(--space-small) + var(--space-smaller));\n border-radius: 8px;\n border-radius: var(--radius-base);\n background: rgb(1, 40, 55);\n background: var(--color-surface--reverse);\n}\n\n/* Use of !important to make the button icon visible in\n the reverse color scheme of Toast */\n\n.cExoS0APILs- * path {\n fill: rgb(78, 105, 116) !important;\n fill: var(--color-text--secondary) !important;\n}\n\n.cExoS0APILs-:hover * path {\n fill: rgba(101, 120, 132, 1) !important;\n fill: var(--color-greyBlue) !important;\n}\n";
21
+ var styles = {"wrapper":"FVK4VwhLaVQ-","container":"MUXYGaC7Msg-","toast":"yCRa7jHH33M-","slice":"KiJL-VNZ3Sg-","button":"cExoS0APILs-"};
22
22
  styleInject_es.styleInject(css_248z);
23
23
 
24
24
  function Toast({ message, variation = "success", action, actionLabel, }) {
@@ -33,8 +33,7 @@ function Toast({ message, variation = "success", action, actionLabel, }) {
33
33
  transition: { duration: 0.4 },
34
34
  } },
35
35
  React__default["default"].createElement("div", { className: styles.slice },
36
- React__default["default"].createElement("div", { className: styles.icon },
37
- React__default["default"].createElement(Icon.Icon, { color: icon.color, name: icon.name })),
36
+ React__default["default"].createElement(Icon.Icon, { color: icon.color, name: icon.name }),
38
37
  React__default["default"].createElement(Typography.Typography, { element: "span", size: "large" }, message),
39
38
  action && (React__default["default"].createElement(Button.Button, { label: `${actionLabel}`, onClick: action, type: "tertiary" })),
40
39
  React__default["default"].createElement("div", { className: styles.button },
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Tooltip = require('../Tooltip-f353204e.js');
5
+ var Tooltip = require('../Tooltip-1e3abeb6.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('react-dom');
@@ -15,7 +15,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
15
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
16
16
  var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
17
17
 
18
- var css_248z = ":root {\n --tooltip--arrow-size: var(--space-small);\n --tooltip--offset: calc(-1 * var(--space-smaller));\n --tooltip--surface: var(--color-surface--reverse);\n}\n\n.q07bkGoq714- {\n display: none;\n}\n\n.dkCTRfc3vYk- {\n display: inline-block;\n position: absolute;\n z-index: 1002;\n z-index: var(--elevation-tooltip);\n pointer-events: none;\n}\n\n.yAFP4gRKlTM- {\n display: inline-block;\n position: relative;\n max-width: calc(16px * 15);\n max-width: calc(var(--base-unit) * 15);\n padding: calc((16px * 1) - (16px / 8)) calc(16px * 1);\n padding: calc(calc(16px * 1) - calc(16px / 8)) calc(16px * 1);\n padding: calc(var(--space-base) - var(--space-smallest)) var(--space-base);\n border-radius: calc(8px * 3);\n border-radius: var(--radius-larger);\n background-color: rgb(1, 40, 55);\n background-color: var(--tooltip--surface);\n}\n\n.jobber-retheme .yAFP4gRKlTM- {\n border-radius: 8px;\n border-radius: var(--radius-base);\n}\n\n.yAFP4gRKlTM- .j9KgRON7iTU-,\n.yAFP4gRKlTM- .j9KgRON7iTU-::after {\n width: calc(16px / 2);\n width: var(--tooltip--arrow-size);\n height: calc(16px / 2);\n height: var(--tooltip--arrow-size);\n background-color: transparent;\n}\n\n.yAFP4gRKlTM- .j9KgRON7iTU-::after {\n content: \"\";\n display: block;\n position: absolute;\n background-color: rgb(1, 40, 55);\n background-color: var(--tooltip--surface);\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg);\n}\n\n.B6uh34-qEuA- {\n padding-bottom: calc(16px / 2);\n padding-bottom: var(--space-small);\n}\n\n.B6uh34-qEuA- .yAFP4gRKlTM- {\n -webkit-transform-origin: bottom center;\n transform-origin: bottom center;\n}\n\n.B6uh34-qEuA- .yAFP4gRKlTM- .j9KgRON7iTU- {\n bottom: calc(-1 * (16px / 4));\n bottom: calc(-1 * calc(16px / 4));\n bottom: var(--tooltip--offset);\n}\n\n.B6uh34-qEuA- .yAFP4gRKlTM- .j9KgRON7iTU-::after {\n border-top-width: 0;\n border-left-width: 0;\n}\n\n.Wft7Ug-lXEc- {\n padding-top: calc(16px / 2);\n padding-top: var(--space-small);\n}\n\n.Wft7Ug-lXEc- .yAFP4gRKlTM- {\n -webkit-transform-origin: top center;\n transform-origin: top center;\n}\n\n.Wft7Ug-lXEc- .yAFP4gRKlTM- .j9KgRON7iTU- {\n top: calc(-1 * (16px / 4));\n top: calc(-1 * calc(16px / 4));\n top: var(--tooltip--offset);\n}\n\n.Wft7Ug-lXEc- .yAFP4gRKlTM- .j9KgRON7iTU-::after {\n border-bottom-width: 0;\n border-right-width: 0;\n}\n\n.TpdeLUuiQMg- {\n margin: 0;\n color: rgba(255, 255, 255, 1);\n color: var(--color-text--reverse);\n font-size: calc((16px * 1) * 0.875);\n font-size: calc(calc(16px * 1) * 0.875);\n font-size: var(--typography--fontSize-base);\n font-weight: 600;\n line-height: 1.25;\n line-height: var(--typography--lineHeight-base);\n}\n";
18
+ var css_248z = ":root {\n --tooltip--arrow-size: var(--space-small);\n --tooltip--offset: calc(-1 * var(--space-smaller));\n --tooltip--surface: var(--color-surface--reverse);\n}\n\n.q07bkGoq714- {\n display: none;\n}\n\n.dkCTRfc3vYk- {\n display: inline-block;\n position: absolute;\n z-index: 1002;\n z-index: var(--elevation-tooltip);\n pointer-events: none;\n}\n\n.yAFP4gRKlTM- {\n display: inline-block;\n position: relative;\n max-width: calc(16px * 15);\n max-width: calc(var(--base-unit) * 15);\n padding: calc((16px * 1) - (16px / 8)) calc(16px * 1);\n padding: calc(calc(16px * 1) - calc(16px / 8)) calc(16px * 1);\n padding: calc(var(--space-base) - var(--space-smallest)) var(--space-base);\n border-radius: 8px;\n border-radius: var(--radius-base);\n background-color: rgb(1, 40, 55);\n background-color: var(--tooltip--surface);\n}\n\n.yAFP4gRKlTM- .j9KgRON7iTU-,\n.yAFP4gRKlTM- .j9KgRON7iTU-::after {\n width: calc(16px / 2);\n width: var(--tooltip--arrow-size);\n height: calc(16px / 2);\n height: var(--tooltip--arrow-size);\n background-color: transparent;\n}\n\n.yAFP4gRKlTM- .j9KgRON7iTU-::after {\n content: \"\";\n display: block;\n position: absolute;\n background-color: rgb(1, 40, 55);\n background-color: var(--tooltip--surface);\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg);\n}\n\n.B6uh34-qEuA- {\n padding-bottom: calc(16px / 2);\n padding-bottom: var(--space-small);\n}\n\n.B6uh34-qEuA- .yAFP4gRKlTM- {\n -webkit-transform-origin: bottom center;\n transform-origin: bottom center;\n}\n\n.B6uh34-qEuA- .yAFP4gRKlTM- .j9KgRON7iTU- {\n bottom: calc(-1 * (16px / 4));\n bottom: calc(-1 * calc(16px / 4));\n bottom: var(--tooltip--offset);\n}\n\n.B6uh34-qEuA- .yAFP4gRKlTM- .j9KgRON7iTU-::after {\n border-top-width: 0;\n border-left-width: 0;\n}\n\n.Wft7Ug-lXEc- {\n padding-top: calc(16px / 2);\n padding-top: var(--space-small);\n}\n\n.Wft7Ug-lXEc- .yAFP4gRKlTM- {\n -webkit-transform-origin: top center;\n transform-origin: top center;\n}\n\n.Wft7Ug-lXEc- .yAFP4gRKlTM- .j9KgRON7iTU- {\n top: calc(-1 * (16px / 4));\n top: calc(-1 * calc(16px / 4));\n top: var(--tooltip--offset);\n}\n\n.Wft7Ug-lXEc- .yAFP4gRKlTM- .j9KgRON7iTU-::after {\n border-bottom-width: 0;\n border-right-width: 0;\n}\n\n.TpdeLUuiQMg- {\n margin: 0;\n color: rgba(255, 255, 255, 1);\n color: var(--color-text--reverse);\n font-size: calc((16px * 1) * 0.875);\n font-size: calc(calc(16px * 1) * 0.875);\n font-size: var(--typography--fontSize-base);\n font-weight: 600;\n line-height: 1.25;\n line-height: var(--typography--lineHeight-base);\n}\n";
19
19
  var styles = {"shadowActivator":"q07bkGoq714-","tooltipWrapper":"dkCTRfc3vYk-","tooltip":"yAFP4gRKlTM-","arrow":"j9KgRON7iTU-","above":"B6uh34-qEuA-","below":"Wft7Ug-lXEc-","tooltipMessage":"TpdeLUuiQMg-"};
20
20
  styleInject_es.styleInject(css_248z);
21
21
 
@@ -17,6 +17,7 @@ declare const styles: {
17
17
  readonly "warning": string;
18
18
  readonly "informative": string;
19
19
  readonly "success": string;
20
+ readonly "interactive": string;
20
21
  readonly "disabled": string;
21
22
  };
22
23
  export = styles;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Typography = require('../Typography-224ae794.js');
5
+ var Typography = require('../Typography-018e1471.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('../style-inject.es-9d2f5f4e.js');
@@ -25,8 +25,8 @@ var css_248z$5 = ".xE6cC62h5G0- {\n text-transform: uppercase;\n}\n\n.HlqJJ3Cl7
25
25
  var textCases = {"uppercase":"xE6cC62h5G0-","lowercase":"HlqJJ3Cl7dE-","capitalize":"Loe26JnDfco-"};
26
26
  styleInject_es.styleInject(css_248z$5);
27
27
 
28
- var css_248z$4 = ".pkqoq2KXY9w- {\n color: rgb(1, 40, 55);\n color: var(--color-blue);\n}\n\n.ftVHRSii3ro- {\n color: rgb(181, 181, 181);\n color: var(--color-grey);\n}\n\n.FQbGABZWVzA- {\n color: rgb(66, 78, 86);\n color: var(--color-greyBlue--dark);\n}\n\n.zQaB9J0-vrs- {\n color: rgba(101, 120, 132, 1);\n color: var(--color-greyBlue);\n}\n\n._4-xdzcqT-Us- {\n color: rgb(50, 130, 28);\n color: var(--color-green);\n}\n\n.Zp9E7ELPjPA- {\n color: rgb(199, 20, 0);\n color: var(--color-red);\n}\n\n.v-Fo4PwPxDI- {\n color: rgb(209, 185, 46);\n color: var(--color-yellow);\n}\n\n.YrGUIChAZC0- {\n color: rgb(91, 79, 6);\n color: var(--color-yellow--dark);\n}\n\n.r7JcIVoDcTY- {\n color: rgb(60, 162, 224);\n color: var(--color-lightBlue);\n}\n\n._6RXTyd198iM- {\n color: rgba(255, 255, 255, 1);\n color: var(--color-white);\n}\n\n.fLix4jA-RkU- {\n color: rgb(1, 40, 55);\n color: var(--color-heading);\n}\n\n._1g0uMAwFAsk- {\n color: rgb(66, 78, 86);\n color: var(--color-text);\n}\n\n.oXqFAHwT6y4- {\n color: rgb(78, 105, 116);\n color: var(--color-text--secondary);\n}\n\n.gPhKMwPfrsw- {\n color: rgb(1, 40, 55);\n color: var(--color-inactive--onSurface);\n}\n\n.rWkzi9HFNDU- {\n color: rgb(87, 9, 0);\n color: var(--color-critical--onSurface);\n}\n\n.PQLYQKGCmPI- {\n color: rgb(91, 79, 6);\n color: var(--color-warning--onSurface);\n}\n\n.L6bBDJrx-m0- {\n color: rgb(17, 66, 85);\n color: var(--color-informative--onSurface);\n}\n\n.bJDJJKvmT90- {\n color: rgb(14, 78, 26);\n color: var(--color-success--onSurface);\n}\n\n._3g4iYm8XwkM- {\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n}\n";
29
- var textColors = {"blue":"pkqoq2KXY9w-","grey":"ftVHRSii3ro-","greyBlueDark":"FQbGABZWVzA-","greyBlue":"zQaB9J0-vrs-","green":"_4-xdzcqT-Us-","red":"Zp9E7ELPjPA-","yellow":"v-Fo4PwPxDI-","yellowDark":"YrGUIChAZC0-","lightBlue":"r7JcIVoDcTY-","white":"_6RXTyd198iM-","heading":"fLix4jA-RkU-","text":"_1g0uMAwFAsk-","textSecondary":"oXqFAHwT6y4-","inactive":"gPhKMwPfrsw-","critical":"rWkzi9HFNDU-","warning":"PQLYQKGCmPI-","informative":"L6bBDJrx-m0-","success":"bJDJJKvmT90-","disabled":"_3g4iYm8XwkM-"};
28
+ var css_248z$4 = ".pkqoq2KXY9w- {\n color: rgb(1, 40, 55);\n color: var(--color-blue);\n}\n\n.ftVHRSii3ro- {\n color: rgb(181, 181, 181);\n color: var(--color-grey);\n}\n\n.FQbGABZWVzA- {\n color: rgb(66, 78, 86);\n color: var(--color-greyBlue--dark);\n}\n\n.zQaB9J0-vrs- {\n color: rgba(101, 120, 132, 1);\n color: var(--color-greyBlue);\n}\n\n._4-xdzcqT-Us- {\n color: rgb(50, 130, 28);\n color: var(--color-green);\n}\n\n.Zp9E7ELPjPA- {\n color: rgb(199, 20, 0);\n color: var(--color-red);\n}\n\n.v-Fo4PwPxDI- {\n color: rgb(209, 185, 46);\n color: var(--color-yellow);\n}\n\n.YrGUIChAZC0- {\n color: rgb(91, 79, 6);\n color: var(--color-yellow--dark);\n}\n\n.r7JcIVoDcTY- {\n color: rgb(60, 162, 224);\n color: var(--color-lightBlue);\n}\n\n._6RXTyd198iM- {\n color: rgba(255, 255, 255, 1);\n color: var(--color-white);\n}\n\n.fLix4jA-RkU- {\n color: rgb(1, 40, 55);\n color: var(--color-heading);\n}\n\n._1g0uMAwFAsk- {\n color: rgb(66, 78, 86);\n color: var(--color-text);\n}\n\n.oXqFAHwT6y4- {\n color: rgb(78, 105, 116);\n color: var(--color-text--secondary);\n}\n\n.gPhKMwPfrsw- {\n color: rgb(1, 40, 55);\n color: var(--color-inactive--onSurface);\n}\n\n.rWkzi9HFNDU- {\n color: rgb(199, 20, 0);\n color: var(--color-critical);\n}\n\n.PQLYQKGCmPI- {\n color: rgb(91, 79, 6);\n color: var(--color-warning--onSurface);\n}\n\n.L6bBDJrx-m0- {\n color: rgb(17, 66, 85);\n color: var(--color-informative--onSurface);\n}\n\n.bJDJJKvmT90- {\n color: rgb(14, 78, 26);\n color: var(--color-success--onSurface);\n}\n\n._99f--2dY5rg- {\n color: rgb(50, 130, 28);\n color: var(--color-interactive);\n}\n\n._3g4iYm8XwkM- {\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n}\n";
29
+ var textColors = {"blue":"pkqoq2KXY9w-","grey":"ftVHRSii3ro-","greyBlueDark":"FQbGABZWVzA-","greyBlue":"zQaB9J0-vrs-","green":"_4-xdzcqT-Us-","red":"Zp9E7ELPjPA-","yellow":"v-Fo4PwPxDI-","yellowDark":"YrGUIChAZC0-","lightBlue":"r7JcIVoDcTY-","white":"_6RXTyd198iM-","heading":"fLix4jA-RkU-","text":"_1g0uMAwFAsk-","textSecondary":"oXqFAHwT6y4-","inactive":"gPhKMwPfrsw-","critical":"rWkzi9HFNDU-","warning":"PQLYQKGCmPI-","informative":"L6bBDJrx-m0-","success":"bJDJJKvmT90-","interactive":"_99f--2dY5rg-","disabled":"_3g4iYm8XwkM-"};
30
30
  styleInject_es.styleInject(css_248z$4);
31
31
 
32
32
  var css_248z$3 = ".Jys1uy2pQXw- {\n font-style: italic;\n}\n\n.kd2u0dL-if0- {\n display: inline;\n font-family: inherit;\n font-style: normal;\n font-weight: inherit;\n background-image: url(\"data:image/svg+xml,%3Csvg viewBox='0 0 84 8' fill='none' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 6.50004C14.6667 4.50004 49.3 0.900038 82.5 2.50004' stroke='%2384EA00' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E\");\n background-position: center bottom;\n background-repeat: no-repeat;\n background-size: 100% 20%;\n}\n";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobber/components",
3
- "version": "4.91.2-retheme-fe.1+ca5d914e",
3
+ "version": "4.91.2-retheme-fe.2+79cb4b8e",
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.57.0",
22
+ "@jobber/design": "^0.57.1-retheme-fe.2+79cb4b8e",
23
23
  "@jobber/formatters": "^0.2.2",
24
24
  "@jobber/hooks": "^2.9.4",
25
25
  "@popperjs/core": "^2.0.6",
@@ -82,5 +82,5 @@
82
82
  "> 1%",
83
83
  "IE 10"
84
84
  ],
85
- "gitHead": "ca5d914eb936003748a5b93d9136671e623f60c5"
85
+ "gitHead": "79cb4b8ee55a6d897b6a459e58c691e31be09103"
86
86
  }
@@ -1,57 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
- var classnames = require('classnames');
5
- var reactRouterDom = require('react-router-dom');
6
- var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
7
- var Icon = require('./Icon-405a216c.js');
8
- var Typography = require('./Typography-224ae794.js');
9
-
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
-
12
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
- var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
14
-
15
- var css_248z = ":root {\n --button--color-variation: var(--color-interactive);\n --button--color-variation--hover: var(--color-interactive--hover);\n --button--color-surface: var(--color-surface);\n --button--color-surface--hover: var(--color-surface--hover);\n --button--color-primaryLabel: var(--color-surface);\n\n --button--duration-loading: var(--timing-loading--extended);\n}\n\n.U9VsquOtk2I- {\n display: -ms-inline-flexbox;\n display: inline-flex;\n min-height: calc(16px * 2.25);\n min-height: calc(var(--base-unit) * 2.25);\n box-sizing: border-box;\n margin: 0;\n border: calc(16px / 16) solid rgb(50, 130, 28);\n border: var(--border-base) solid var(--button--color-variation);\n border-radius: 8px;\n border-radius: var(--radius-base);\n color: rgb(50, 130, 28);\n color: var(--button--color-variation);\n -webkit-font-smoothing: antialiased;\n letter-spacing: calc(16px / 40);\n letter-spacing: var(--typography--letterSpacing-loose);\n text-align: center;\n -webkit-text-decoration: none;\n text-decoration: none;\n vertical-align: middle;\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--button--color-surface);\n cursor: pointer;\n transition: all 200ms ease-out;\n transition: all var(--timing-base) ease-out;\n -webkit-appearance: none;\n appearance: none;\n fill: rgb(50, 130, 28);\n fill: var(--button--color-variation);\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n.jobber-retheme .U9VsquOtk2I- {\n min-height: calc(16px * 2.5);\n min-height: calc(var(--base-unit) * 2.5);\n}\n\n.U9VsquOtk2I- * {\n fill: inherit !important;\n}\n\n.U9VsquOtk2I- * {\n color: inherit;\n /* required to over-ride very specific fill from <Icon> */\n}\n\n.jobber-retheme .U9VsquOtk2I- * {\n font-weight: 600 !important;\n}\n\n.jobber-retheme .U9VsquOtk2I- * {\n line-height: 1;\n letter-spacing: 0;\n /* post-retheme this can move into the TSX on L177 */\n}\n\n.U9VsquOtk2I-:hover,\na.U9VsquOtk2I-:hover,\n.U9VsquOtk2I-:focus-visible,\na.U9VsquOtk2I-:focus-visible,\n.U9VsquOtk2I-:active,\na.U9VsquOtk2I-:active {\n border-color: rgb(14, 78, 26);\n border-color: var(--button--color-variation--hover);\n color: rgb(14, 78, 26);\n color: var(--button--color-variation--hover);\n fill: rgb(14, 78, 26);\n fill: var(--button--color-variation--hover);\n background-color: rgb(241, 239, 233);\n background-color: var(--button--color-surface--hover);\n}\n\n.U9VsquOtk2I-:focus-visible,\na.U9VsquOtk2I-:focus-visible,\n.U9VsquOtk2I-:active,\na.U9VsquOtk2I-:active {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(131, 151, 160);\n box-shadow: var(--shadow-focus);\n outline: transparent;\n}\n\n/* Variation */\n\n.qkFQwI0PKfw- {\n --button--color-variation: var(--color-interactive);\n --button--color-variation--hover: var(--color-interactive--hover);\n}\n\n.jsKQEOBdJ0k- {\n --button--color-variation: var(--color-informative);\n --button--color-variation--hover: var(--color-informative--onSurface);\n}\n\n.jobber-retheme .jsKQEOBdJ0k- {\n --button--color-variation: var(--color-interactive--subtle);\n --button--color-variation--hover: var(--color-interactive--subtle--hover);\n}\n\n._4W8X0dxZDK4- {\n --button--color-variation: var(--color-destructive);\n --button--color-variation--hover: var(--color-destructive--hover);\n}\n\n/* Subtle is special because, by default, it's styled as a secondary button */\n\n.vDKO-cmh8vY- {\n --button--color-variation: var(--color-interactive--subtle);\n --button--color-variation--hover: var(--color-interactive--subtle--hover);\n}\n\n/* Type */\n\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-),\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):hover,\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):focus-visible {\n color: rgba(255, 255, 255, 1);\n color: var(--button--color-primaryLabel);\n background-color: rgb(50, 130, 28);\n background-color: var(--button--color-variation);\n fill: rgba(255, 255, 255, 1);\n fill: var(--button--color-primaryLabel);\n}\n\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):hover,\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):focus-visible {\n background-color: rgb(14, 78, 26);\n background-color: var(--button--color-variation--hover);\n}\n\n.vDKO-cmh8vY-.FXqN12jWtPo- {\n color: rgb(50, 130, 28);\n color: var(--button--color-variation);\n fill: rgb(50, 130, 28);\n fill: var(--button--color-variation);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--button--color-surface);\n}\n\n.pf6G840lKdA-,\n.vDKO-cmh8vY-.FXqN12jWtPo- {\n border-color: rgb(50, 130, 28);\n border-color: var(--button--color-variation);\n}\n\n.jobber-retheme .pf6G840lKdA-,\n.jobber-retheme .vDKO-cmh8vY-.FXqN12jWtPo- {\n border-color: rgb(218, 224, 226);\n border-color: var(--color-border);\n}\n\n.vDKO-cmh8vY-.FXqN12jWtPo-:hover,\n.vDKO-cmh8vY-.FXqN12jWtPo-:focus-visible {\n color: rgb(14, 78, 26);\n color: var(--button--color-variation--hover);\n background-color: rgb(241, 239, 233);\n background-color: var(--button--color-surface--hover);\n fill: rgb(14, 78, 26);\n fill: var(--button--color-variation--hover);\n}\n\n.jobber-retheme .pf6G840lKdA-:hover,\n.jobber-retheme .vDKO-cmh8vY-.FXqN12jWtPo-:hover,\n.jobber-retheme .pf6G840lKdA-:focus-visible,\n.jobber-retheme .vDKO-cmh8vY-.FXqN12jWtPo-:focus-visible {\n border-color: rgb(14, 78, 26);\n border-color: var(--button--color-variation--hover);\n}\n\n.vDKO-cmh8vY-.pf6G840lKdA- {\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--button--color-surface);\n}\n\n.m7DbwRZWcNk-,\n.vDKO-cmh8vY-.pf6G840lKdA- {\n border-color: transparent;\n}\n\n.jobber-retheme .m7DbwRZWcNk- {\n border-color: rgb(218, 224, 226);\n border-color: var(--color-border);\n}\n\n.vDKO-cmh8vY-.pf6G840lKdA-:hover,\n.vDKO-cmh8vY-.pf6G840lKdA-:focus-visible {\n background-color: rgb(241, 239, 233);\n background-color: var(--button--color-surface--hover);\n}\n\n.m7DbwRZWcNk-:hover,\n.m7DbwRZWcNk-:focus-visible,\na.m7DbwRZWcNk-:hover,\na.m7DbwRZWcNk-:focus-visible,\n.vDKO-cmh8vY-.pf6G840lKdA-:hover,\n.vDKO-cmh8vY-.pf6G840lKdA-:focus-visible,\na.vDKO-cmh8vY-.pf6G840lKdA-:hover,\na.vDKO-cmh8vY-.pf6G840lKdA-:focus-visible {\n border-color: transparent;\n}\n\n.jobber-retheme .m7DbwRZWcNk-:hover,\n.jobber-retheme .m7DbwRZWcNk-:focus-visible,\n.jobber-retheme a.m7DbwRZWcNk-:hover,\n.jobber-retheme a.m7DbwRZWcNk-:focus-visible {\n border-color: rgb(14, 78, 26);\n border-color: var(--button--color-variation--hover);\n}\n\n.vDKO-cmh8vY-.m7DbwRZWcNk- {\n border-color: transparent;\n background-color: transparent;\n}\n\n.vDKO-cmh8vY-.m7DbwRZWcNk-:hover,\n.vDKO-cmh8vY-.m7DbwRZWcNk-:focus-visible,\na.vDKO-cmh8vY-.m7DbwRZWcNk-:hover,\na.vDKO-cmh8vY-.m7DbwRZWcNk-:focus-visible {\n border-color: transparent;\n color: rgb(1, 25, 35);\n color: var(--color-interactive--subtle--hover);\n fill: rgb(1, 25, 35);\n fill: var(--color-interactive--subtle--hover);\n}\n\n/* Disabled */\n\n.U9VsquOtk2I-.bg-l22drjd0-,\na.U9VsquOtk2I-.bg-l22drjd0-,\n.U9VsquOtk2I-.bg-l22drjd0-:hover,\na.U9VsquOtk2I-.bg-l22drjd0-:hover {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n background-color: rgb(225, 225, 225);\n background-color: var(--color-disabled--secondary);\n fill: rgb(181, 181, 181);\n fill: var(--color-disabled);\n pointer-events: none;\n cursor: not-allowed;\n}\n\n/* Sizes */\n\n.STSDgSRREx4- {\n min-height: calc(16px * 1.5);\n min-height: calc(var(--base-unit) * 1.5);\n padding: 0 calc(16px / 2);\n padding: 0 var(--space-small);\n letter-spacing: 0;\n}\n\n.jobber-retheme .STSDgSRREx4- {\n min-height: calc(16px * 1.5);\n min-height: var(--space-large);\n padding: calc(16px / 2) calc((16px * 1) - (16px / 4));\n padding: calc(16px / 2) calc(calc(16px * 1) - calc(16px / 4));\n padding: var(--space-small) calc(var(--space-base) - var(--space-smaller));\n}\n\n.jobber-retheme .STSDgSRREx4- span {\n font-size: calc((16px * 1) * 0.875);\n font-size: calc(calc(16px * 1) * 0.875);\n font-size: var(--typography--fontSize-base);\n}\n\n.amIh7vPETfo- {\n padding: 0 calc((16px * 1) - (16px / 4));\n padding: 0 calc(calc(16px * 1) - calc(16px / 4));\n padding: 0 calc(var(--space-base) - var(--space-smaller));\n}\n\n.jobber-retheme .amIh7vPETfo- {\n padding: 0 calc(16px * 1);\n padding: 0 var(--space-base);\n}\n\n.ON6ezOojFVo- {\n min-height: calc(16px * 3);\n min-height: calc(var(--base-unit) * 3);\n padding: 0 calc(16px * 1);\n padding: 0 var(--space-base);\n}\n\n.jobber-retheme .ON6ezOojFVo- {\n min-height: calc(16px * 3);\n min-height: calc(var(--base-unit) * 3);\n padding: 0 calc((16px * 1) + (16px / 4));\n padding: 0 calc(calc(16px * 1) + calc(16px / 4));\n padding: 0 calc(var(--space-base) + var(--space-smaller));\n}\n\n/* Icon */\n\n.U9VsquOtk2I- svg {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n}\n\n.Qq-idRLJTCk- {\n width: calc(16px * 2.25);\n width: calc(var(--base-unit) * 2.25);\n padding: 0;\n}\n\n.Qq-idRLJTCk-.STSDgSRREx4- {\n width: calc((16px / 2) * 3);\n width: calc(calc(16px / 2) * 3);\n width: calc(var(--space-small) * 3);\n}\n\n.Qq-idRLJTCk-.amIh7vPETfo- {\n width: calc((16px * 1) * 2.25);\n width: calc(calc(16px * 1) * 2.25);\n width: calc(var(--space-base) * 2.25);\n}\n\n.jobber-retheme .Qq-idRLJTCk-.amIh7vPETfo- {\n width: calc((16px * 1) * 2.5);\n width: calc(calc(16px * 1) * 2.5);\n width: calc(var(--space-base) * 2.5);\n}\n\n.Qq-idRLJTCk-.ON6ezOojFVo- {\n width: calc((16px * 1.5) * 2);\n width: calc(calc(16px * 1.5) * 2);\n width: calc(var(--space-large) * 2);\n}\n\n.EWh1gvgPJQg- {\n width: auto;\n gap: calc(16px / 2);\n gap: var(--space-small);\n}\n\n.jobber-retheme .EWh1gvgPJQg- {\n gap: calc(16px / 4);\n gap: var(--space-smaller);\n}\n\n/* Don't want to move things that will update after re-theme */\n\n/* stylelint-disable-next-line no-descending-specificity */\n\n.EWh1gvgPJQg- > * {\n text-align: left;\n}\n\n.pfzTUMgNb3o- > *:first-child {\n -ms-flex-order: 1;\n order: 1;\n}\n\n.jobber-retheme .EWh1gvgPJQg- > *:first-child {\n margin-left: calc((16px / 4) * -1);\n margin-left: calc(calc(16px / 4) * -1);\n margin-left: calc(var(--space-smaller) * -1);\n}\n\n.jobber-retheme .pfzTUMgNb3o- > *:first-child {\n margin-left: 0;\n margin-right: calc((16px / 4) * -1);\n margin-right: calc(calc(16px / 4) * -1);\n margin-right: calc(var(--space-smaller) * -1);\n}\n\n.ZCHqCEyLBw0- {\n width: 100%;\n}\n\n.VVFKEv1ksMA- {\n background-image: linear-gradient(\n 135deg,\n rgba(0, 0, 0, 0.1) 0%,\n rgba(0, 0, 0, 0.1) 25%,\n transparent 25%,\n transparent 50%,\n rgba(0, 0, 0, 0.1) 50%,\n rgba(0, 0, 0, 0.1) 75%,\n transparent 75%,\n transparent 100%\n );\n background-size: calc(16px * 2) calc(16px * 2);\n background-size: var(--space-larger) var(--space-larger);\n pointer-events: none;\n cursor: not-allowed;\n -webkit-animation-duration: 2000ms;\n -webkit-animation-duration: var(--button--duration-loading);\n animation-duration: 2000ms;\n animation-duration: var(--button--duration-loading);\n -webkit-animation-iteration-count: infinite;\n animation-iteration-count: infinite;\n -webkit-animation-name: a8Q-0lnKH5M-;\n animation-name: a8Q-0lnKH5M-;\n -webkit-animation-timing-function: linear;\n animation-timing-function: linear;\n}\n\n.FXqN12jWtPo-.VVFKEv1ksMA-:not(.vDKO-cmh8vY-) {\n background-image: linear-gradient(\n 135deg,\n rgba(255, 255, 255, 0.25) 0%,\n rgba(255, 255, 255, 0.25) 25%,\n transparent 25%,\n transparent 50%,\n rgba(255, 255, 255, 0.25) 50%,\n rgba(255, 255, 255, 0.25) 75%,\n transparent 75%,\n transparent 100%\n );\n}\n\n@-webkit-keyframes a8Q-0lnKH5M- {\n 0% {\n background-position: 0 0;\n }\n\n 100% {\n background-position: calc(16px * 2) calc(16px * 2);\n background-position: var(--space-larger) var(--space-larger);\n }\n}\n\n@keyframes a8Q-0lnKH5M- {\n 0% {\n background-position: 0 0;\n }\n\n 100% {\n background-position: calc(16px * 2) calc(16px * 2);\n background-position: var(--space-larger) var(--space-larger);\n }\n}\n";
16
- var styles = {"button":"U9VsquOtk2I-","work":"qkFQwI0PKfw-","learning":"jsKQEOBdJ0k-","destructive":"_4W8X0dxZDK4-","subtle":"vDKO-cmh8vY-","primary":"FXqN12jWtPo-","disabled":"bg-l22drjd0-","secondary":"pf6G840lKdA-","tertiary":"m7DbwRZWcNk-","small":"STSDgSRREx4-","base":"amIh7vPETfo-","large":"ON6ezOojFVo-","onlyIcon":"Qq-idRLJTCk-","hasIconAndLabel":"EWh1gvgPJQg-","iconOnRight":"pfzTUMgNb3o-","fullWidth":"ZCHqCEyLBw0-","loading":"VVFKEv1ksMA-","animateStripes":"a8Q-0lnKH5M-"};
17
- styleInject_es.styleInject(css_248z);
18
-
19
- function Button(props) {
20
- const { ariaControls, ariaHaspopup, ariaExpanded, ariaLabel, disabled = false, external, fullWidth, icon, label, iconOnRight, id, loading, onClick, onMouseDown, role, size = "base", type = "primary", url, to, variation = "work", submit, } = props;
21
- const buttonClassNames = classnames__default["default"](styles.button, styles[size], {
22
- [styles.onlyIcon]: icon && !label,
23
- [styles.hasIconAndLabel]: icon && label,
24
- [styles.iconOnRight]: iconOnRight,
25
- [styles[variation]]: variation,
26
- [styles[type]]: type,
27
- [styles.disabled]: disabled,
28
- [styles.fullWidth]: fullWidth,
29
- [styles.loading]: loading,
30
- });
31
- const buttonType = submit ? "submit" : "button";
32
- const tagProps = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ className: buttonClassNames, disabled,
33
- id }, (!disabled && { href: url })), (!disabled && { onClick: onClick })), (!disabled && { onMouseDown: onMouseDown })), (external && { target: "_blank" })), (url === undefined && to === undefined && { type: buttonType })), { "aria-controls": ariaControls, "aria-haspopup": ariaHaspopup, "aria-expanded": ariaExpanded, "aria-label": ariaLabel, role: role });
34
- const buttonInternals = React__default["default"].createElement(ButtonInternals, Object.assign({}, props));
35
- if (to) {
36
- return (React__default["default"].createElement(reactRouterDom.Link, Object.assign({}, tagProps, { to: to }), buttonInternals));
37
- }
38
- const Tag = url ? "a" : "button";
39
- return React__default["default"].createElement(Tag, Object.assign({}, tagProps), buttonInternals);
40
- }
41
- function ButtonInternals({ label, icon, size = "base" }) {
42
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
43
- icon && React__default["default"].createElement(Icon.Icon, { name: icon, size: size }),
44
- React__default["default"].createElement(Typography.Typography, { element: "span", fontWeight: "extraBold", fontFamily: "base", size: getTypeSizes(size) }, label)));
45
- }
46
- function getTypeSizes(size) {
47
- switch (size) {
48
- case "small":
49
- return "small";
50
- case "large":
51
- return "large";
52
- default:
53
- return "base";
54
- }
55
- }
56
-
57
- exports.Button = Button;
@@ -1,63 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('./tslib.es6-754e2961.js');
4
- var React = require('react');
5
- var classnames = require('classnames');
6
- var reactHookForm = require('react-hook-form');
7
- var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
8
- var Icon = require('./Icon-405a216c.js');
9
- var Text = require('./Text-f6404c6c.js');
10
-
11
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
-
13
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
- var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
15
-
16
- 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(50, 130, 28);\n border: var(--border-thick) solid var(--color-interactive);\n border-radius: 8px;\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(218, 224, 226);\n border-color: var(--color-border);\n border-radius: calc(8px / 2);\n border-radius: var(--radius-small);\n}\n\n.rup0RBe4DNU-.Njn2CQDXwVA- + .lOQVnJA7zPM-,\n.rup0RBe4DNU-:checked + .lOQVnJA7zPM- {\n border-color: rgb(50, 130, 28);\n border-color: var(--color-interactive);\n background-color: rgb(50, 130, 28);\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(131, 151, 160);\n box-shadow: var(--shadow-focus);\n}\n\n.jobber-retheme .lOQVnJA7zPM-:hover,\n.jobber-retheme .d-2MyyzKGN0-:hover .lOQVnJA7zPM- {\n border-color: rgb(50, 130, 28);\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";
17
- var styles = {"checkbox":"d-2MyyzKGN0-","wrapper":"OFHQaLxY8zI-","disabled":"HRrf3AZlpHc-","checkHolder":"kMH5B1jwh-Y-","input":"rup0RBe4DNU-","checkBox":"lOQVnJA7zPM-","indeterminate":"Njn2CQDXwVA-","label":"eHENKCs5umc-","description":"fSEH0cAO9cI-"};
18
- styleInject_es.styleInject(css_248z);
19
-
20
- function Checkbox({ checked, defaultChecked, disabled, label, name, value, indeterminate = false, description, children, onChange, onFocus, }) {
21
- const { control, setValue, watch } = reactHookForm.useFormContext() != undefined
22
- ? reactHookForm.useFormContext()
23
- : // If there isn't a Form Context being provided, get a form for this field.
24
- reactHookForm.useForm({ mode: "onTouched" });
25
- const [identifier] = React.useState(React.useId());
26
- /**
27
- * Generate a name if one is not supplied, this is the name
28
- * that will be used for react-hook-form and not neccessarily
29
- * attached to the DOM
30
- */
31
- const [controlledName] = React.useState(name ? name : `generatedName--${identifier}`);
32
- React.useEffect(() => {
33
- if (value != undefined) {
34
- setValue(controlledName, value);
35
- }
36
- }, [value, watch(controlledName)]);
37
- const wrapperClassName = classnames__default["default"](styles.wrapper, disabled && styles.disabled);
38
- const inputClassName = classnames__default["default"](styles.input, {
39
- [styles.indeterminate]: indeterminate,
40
- });
41
- const iconName = indeterminate ? "minus2" : "checkmark";
42
- const labelText = label ? React__default["default"].createElement(Text.Text, null, label) : children;
43
- return (React__default["default"].createElement(reactHookForm.Controller, { control: control, name: controlledName, defaultValue: defaultChecked, render: (_a) => {
44
- var _b = _a.field, { onChange: onControllerChange, name: controllerName } = _b, rest = tslib_es6.__rest(_b, ["onChange", "name"]);
45
- const fieldProps = Object.assign(Object.assign({}, rest), { id: identifier, className: inputClassName, name: name && controllerName, onChange: handleChange, disabled: disabled });
46
- return (React__default["default"].createElement("div", { className: styles.checkbox },
47
- React__default["default"].createElement("label", { className: wrapperClassName },
48
- React__default["default"].createElement("span", { className: styles.checkHolder },
49
- React__default["default"].createElement("input", Object.assign({}, fieldProps, { type: "checkbox", checked: checked, defaultChecked: defaultChecked, "aria-label": label, onChange: handleChange, onFocus: onFocus })),
50
- React__default["default"].createElement("span", { className: styles.checkBox },
51
- React__default["default"].createElement(Icon.Icon, { name: iconName, size: "small", color: "white" }))),
52
- labelText && React__default["default"].createElement("span", { className: styles.label }, labelText)),
53
- description && (React__default["default"].createElement("div", { className: styles.description },
54
- React__default["default"].createElement(Text.Text, { variation: "subdued", size: "small" }, description)))));
55
- function handleChange(event) {
56
- const newChecked = event.currentTarget.checked;
57
- onChange && onChange(newChecked);
58
- onControllerChange(event);
59
- }
60
- } }));
61
- }
62
-
63
- exports.Checkbox = Checkbox;