@jobber/components 4.67.2-JOB-84126.13 → 4.67.2-pre.25

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 (148) hide show
  1. package/dist/AnimatedSwitcher/index.js +2 -2
  2. package/dist/{AnimatedSwitcher-d1e1ddcf.js → AnimatedSwitcher-879d0d6f.js} +1 -1
  3. package/dist/Autocomplete/index.js +0 -0
  4. package/dist/Avatar/index.js +2 -3
  5. package/dist/{Avatar-76a799fa.js → Avatar-765d6e45.js} +1 -4
  6. package/dist/Banner/index.js +4 -9
  7. package/dist/Button/index.js +3 -4
  8. package/dist/Button-8bde6560.js +54 -0
  9. package/dist/ButtonDismiss/index.js +4 -5
  10. package/dist/{ButtonDismiss-2b98d075.js → ButtonDismiss-af17d76d.js} +1 -1
  11. package/dist/Card/index.js +7 -8
  12. package/dist/Card-9dfc98d3.js +88 -0
  13. package/dist/Checkbox/index.js +5 -7
  14. package/dist/{Checkbox-ad7ec2e7.js → Checkbox-2d7c43d9.js} +5 -8
  15. package/dist/Chip/index.js +8 -7
  16. package/dist/Chip-dca6c22b.js +86 -0
  17. package/dist/Chips/index.js +12 -16
  18. package/dist/ClientOnly-4f3e136d.js +23 -0
  19. package/dist/Combobox/index.js +11 -10
  20. package/dist/{Combobox-b6053eb7.js → Combobox-35a3ea22.js} +9 -22
  21. package/dist/ConfirmationModal/index.js +14 -13
  22. package/dist/{ConfirmationModal-0f85d96c.js → ConfirmationModal-f6c0afc7.js} +3 -3
  23. package/dist/Content/index.js +1 -2
  24. package/dist/{Content-2ca1ffe1.js → Content-80486307.js} +0 -5
  25. package/dist/DataDump/index.js +9 -10
  26. package/dist/DataList/components/DataListHeader/DataListHeaderCheckbox.d.ts +1 -2
  27. package/dist/DataList/components/DataListHeaderTile/DataListSortingArrows.d.ts +1 -1
  28. package/dist/DataList/hooks/useMediaQuery.d.ts +3 -1
  29. package/dist/DataList/index.js +0 -0
  30. package/dist/DataTable/DataTable.d.ts +1 -1
  31. package/dist/DataTable/index.js +0 -0
  32. package/dist/DatePicker/index.js +4 -5
  33. package/dist/DatePicker-9399cc69.js +131 -0
  34. package/dist/DescriptionList/index.js +1 -4
  35. package/dist/Disclosure/index.js +2 -5
  36. package/dist/Divider/index.js +0 -3
  37. package/dist/Drawer/index.js +5 -10
  38. package/dist/Emphasis/index.js +2 -3
  39. package/dist/{Emphasis-b2d1b3aa.js → Emphasis-7a2893bb.js} +1 -1
  40. package/dist/FeatureSwitch/index.js +11 -13
  41. package/dist/Flex/index.js +6 -4
  42. package/dist/Form/index.js +1 -1
  43. package/dist/FormField/index.js +0 -0
  44. package/dist/FormField-18eda132.js +252 -0
  45. package/dist/FormatDate/index.js +1 -1
  46. package/dist/FormatEmail/index.js +0 -3
  47. package/dist/FormatFile/index.js +17 -17
  48. package/dist/FormatFile-317b158a.js +116 -0
  49. package/dist/FormatTime/FormatTime.d.ts +1 -2
  50. package/dist/FormatTime/index.js +11 -6
  51. package/dist/Gallery/index.js +18 -20
  52. package/dist/Glimmer/index.js +3 -4
  53. package/dist/Glimmer-f5c31401.js +68 -0
  54. package/dist/Grid/index.js +0 -7
  55. package/dist/Heading/index.js +2 -3
  56. package/dist/{Heading-0f4ecb0c.js → Heading-f066883a.js} +1 -1
  57. package/dist/Icon/index.js +1 -1
  58. package/dist/InlineLabel/index.js +2 -3
  59. package/dist/InlineLabel-4c2fec47.js +25 -0
  60. package/dist/InputAvatar/index.js +8 -12
  61. package/dist/InputDate/index.js +0 -0
  62. package/dist/InputEmail/index.js +0 -0
  63. package/dist/InputFile/InputFile.d.ts +5 -1
  64. package/dist/InputFile/index.js +6 -8
  65. package/dist/{InputFile-540c1657.js → InputFile-5c44f0b4.js} +8 -11
  66. package/dist/InputGroup/index.js +1 -2
  67. package/dist/InputGroup-88bec8c9.js +30 -0
  68. package/dist/InputNumber/index.js +0 -0
  69. package/dist/{InputNumber-ef949161.js → InputNumber-ed655bae.js} +1 -1
  70. package/dist/InputPassword/index.js +0 -0
  71. package/dist/InputPhoneNumber/index.js +0 -0
  72. package/dist/InputText/index.js +0 -0
  73. package/dist/InputText/useSafeLayoutEffect.d.ts +2 -0
  74. package/dist/{InputText-9e159467.js → InputText-c68964ff.js} +3 -2
  75. package/dist/InputTime/InputTime.d.ts +3 -1
  76. package/dist/InputTime/InputTime.disabledTest.d.ts +1 -0
  77. package/dist/InputTime/InternalInputTime.d.ts +3 -0
  78. package/dist/InputTime/SupportsTimePolyfill.d.ts +2 -0
  79. package/dist/InputTime/TimeInputPolyfill.client.d.ts +2 -0
  80. package/dist/InputTime/index.js +0 -0
  81. package/dist/InputValidation/index.js +4 -5
  82. package/dist/{InputValidation-179f0926.js → InputValidation-fdc891af.js} +2 -5
  83. package/dist/LightBox/ClientOnly.d.ts +6 -0
  84. package/dist/LightBox/LightBox.d.ts +2 -2
  85. package/dist/LightBox/index.js +6 -6
  86. package/dist/{LightBox-3f4dbc33.js → LightBox-d5aea313.js} +5 -6
  87. package/dist/List/index.js +9 -15
  88. package/dist/Markdown/Markdown.d.ts +1 -1
  89. package/dist/Markdown/index.js +8 -8
  90. package/dist/Markdown-10fc9d3e.js +90 -0
  91. package/dist/Menu/Menu.d.ts +4 -4
  92. package/dist/Menu/index.js +5 -6
  93. package/dist/{Menu-d7ea093c.js → Menu-7b7aa325.js} +7 -10
  94. package/dist/Modal/Modal.d.ts +2 -2
  95. package/dist/Modal/index.js +7 -7
  96. package/dist/{Modal-70daa0e2.js → Modal-357fd1df.js} +6 -9
  97. package/dist/MultiSelect/index.js +5 -11
  98. package/dist/{Option-290b5594.js → Option-c84f28a6.js} +1 -1
  99. package/dist/Page/index.js +12 -14
  100. package/dist/Popover/Popover.d.ts +2 -2
  101. package/dist/Popover/index.js +8 -8
  102. package/dist/ProgressBar/index.js +1 -2
  103. package/dist/ProgressBar-5c577dc0.js +38 -0
  104. package/dist/RadioGroup/index.js +3 -5
  105. package/dist/RadioGroup-9dded55d.js +44 -0
  106. package/dist/RecurringSelect/components/DayOfMonthSelect.d.ts +2 -2
  107. package/dist/RecurringSelect/components/WeeklySelect.d.ts +2 -2
  108. package/dist/RecurringSelect/index.js +0 -0
  109. package/dist/Select/index.js +0 -0
  110. package/dist/Spinner/index.js +1 -2
  111. package/dist/Spinner-cac356ee.js +21 -0
  112. package/dist/StatusLabel/index.js +2 -5
  113. package/dist/SupportsTimePolyfill-466a30f9.js +21 -0
  114. package/dist/Switch/index.js +2 -3
  115. package/dist/Switch-588c5e70.js +53 -0
  116. package/dist/Table/index.js +2 -7
  117. package/dist/Tabs/index.js +1 -4
  118. package/dist/Text/index.js +2 -3
  119. package/dist/{Text-4a2bc89f.js → Text-9f261dde.js} +1 -1
  120. package/dist/TimeInputPolyfill.client-1dfc8ab1.js +687 -0
  121. package/dist/Toast/index.js +3 -6
  122. package/dist/Tooltip/index.js +3 -2
  123. package/dist/{Tooltip-6b12f1c2.js → Tooltip-99440954.js} +14 -12
  124. package/dist/Typography/index.js +1 -2
  125. package/dist/Typography-75f58b60.js +43 -0
  126. package/dist/styles.css +8107 -0
  127. package/dist/useSafeLayoutEffect-b63708b1.js +16 -0
  128. package/package.json +4 -4
  129. package/rollup.config.js +3 -1
  130. package/dist/Button-163a0641.js +0 -57
  131. package/dist/Card-3178033c.js +0 -93
  132. package/dist/Chip-168acf3e.js +0 -89
  133. package/dist/DatePicker-c18f1739.js +0 -134
  134. package/dist/FormField-181efe29.js +0 -0
  135. package/dist/FormatFile-3b650d02.js +0 -121
  136. package/dist/Glimmer-cfa92a88.js +0 -77
  137. package/dist/InlineLabel-9a517c19.js +0 -28
  138. package/dist/InputGroup-8d4fd4eb.js +0 -33
  139. package/dist/Markdown-96070121.js +0 -62
  140. package/dist/ProgressBar-b68edc8f.js +0 -43
  141. package/dist/RadioGroup-ebaa4f87.js +0 -47
  142. package/dist/Spinner-9d8fc7ff.js +0 -24
  143. package/dist/Switch-b85272bf.js +0 -56
  144. package/dist/Typography-973b122e.js +0 -62
  145. package/dist/style-inject.es-9d2f5f4e.js +0 -30
  146. /package/dist/{FormatDate-70ea5b43.js → FormatDate-6fc94218.js} +0 -0
  147. /package/dist/{Icon-405a216c.js → Icon-361343e0.js} +0 -0
  148. /package/dist/{tslib.es6-5b8768b7.js → tslib.es6-a575af05.js} +0 -0
@@ -7,9 +7,9 @@ var debounce = require('lodash/debounce');
7
7
  var useRefocusOnActivator = require('@jobber/hooks/useRefocusOnActivator');
8
8
  var useOnKeyDown = require('@jobber/hooks/useOnKeyDown');
9
9
  var useFocusTrap = require('@jobber/hooks/useFocusTrap');
10
- var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
11
- var ButtonDismiss = require('./ButtonDismiss-2b98d075.js');
12
- var Button = require('./Button-163a0641.js');
10
+ var ClientOnly = require('./ClientOnly-4f3e136d.js');
11
+ var ButtonDismiss = require('./ButtonDismiss-af17d76d.js');
12
+ var Button = require('./Button-8bde6560.js');
13
13
 
14
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
15
 
@@ -17,9 +17,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
17
  var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
18
18
  var debounce__default = /*#__PURE__*/_interopDefaultLegacy(debounce);
19
19
 
20
- var css_248z = "._3JgBCebdbNU-,\n.JJOBEL7d-10- {\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n top: 50%;\n z-index: 1;\n z-index: var(--elevation-base);\n -webkit-transform: translateY(-50%);\n transform: translateY(-50%);\n}\n\n._3JgBCebdbNU- {\n right: calc(16px * 1);\n right: var(--space-base);\n}\n\n.JJOBEL7d-10- {\n left: calc(16px * 1);\n left: var(--space-base);\n}\n\n.fAep1A-0xIU- {\n display: -ms-flexbox;\n display: flex;\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1001;\n z-index: var(--elevation-modal);\n width: 100%;\n height: 100%;\n -ms-flex-pack: justify;\n justify-content: space-between;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.AfUUWErd5S4- {\n display: -ms-flexbox;\n display: flex;\n z-index: 1;\n z-index: var(--elevation-base);\n padding: calc(16px / 2) calc(16px * 1);\n padding: var(--space-small) var(--space-base);\n color: rgb(193, 201, 206);\n color: var(--color-text--reverse--secondary);\n font-size: calc(16px * 1);\n font-size: var(--typography--fontSize-large);\n background-color: rgb(1, 41, 57);\n background-color: var(--color-surface--reverse);\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n\n.ysUYbBTaORk- {\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.GSOVtN1Y3IU- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n position: relative;\n -ms-flex: 1 1 0px;\n flex: 1 1 0;\n min-height: 0;\n}\n\n.-V917BdNqSs- {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: rgba(0, 0, 0, 0.32);\n background-color: var(--color-overlay);\n}\n\n.sjwUjzb3a5c- {\n position: absolute;\n top: 50%;\n max-width: 100%;\n max-height: 100%;\n margin: auto;\n}\n";
21
20
  var styles = {"next":"_3JgBCebdbNU-","prev":"JJOBEL7d-10-","lightboxWrapper":"fAep1A-0xIU-","toolbar":"AfUUWErd5S4-","title":"ysUYbBTaORk-","imagesWrapper":"GSOVtN1Y3IU-","overlay":"-V917BdNqSs-","image":"sjwUjzb3a5c-"};
22
- styleInject_es.styleInject(css_248z);
23
21
 
24
22
  /* eslint-disable max-statements */
25
23
  const swipeConfidenceThreshold = 10000;
@@ -83,7 +81,8 @@ function LightBox({ open, images, imageIndex = 0, onRequestClose, }) {
83
81
  React__default["default"].createElement(NextButton, { onClick: debouncedHandleNext }))),
84
82
  React__default["default"].createElement("div", { className: styles.toolbar }, images[currentImageIndex].caption),
85
83
  React__default["default"].createElement("div", { className: styles.overlay, onClick: handleRequestClose })))));
86
- return ReactDOM__default["default"].createPortal(template, document.body);
84
+ return (React__default["default"].createElement(ClientOnly.ClientOnly, null, typeof document !== "undefined" &&
85
+ ReactDOM__default["default"].createPortal(template, document.body)));
87
86
  function handleMovePrevious() {
88
87
  setDirection(-1);
89
88
  setCurrentImageIndex((currentImageIndex + images.length - 1) % images.length);
@@ -6,16 +6,16 @@ var React = require('react');
6
6
  var classnames = require('classnames');
7
7
  var get = require('lodash/get');
8
8
  var groupBy = require('lodash/groupBy');
9
- var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
10
- var Icon = require('../Icon-405a216c.js');
11
- var Text = require('../Text-4a2bc89f.js');
12
- var Heading = require('../Heading-0f4ecb0c.js');
13
- var Typography = require('../Typography-973b122e.js');
14
- var Markdown = require('../Markdown-96070121.js');
15
- var Emphasis = require('../Emphasis-b2d1b3aa.js');
9
+ var Icon = require('../Icon-361343e0.js');
10
+ var Text = require('../Text-9f261dde.js');
11
+ var Heading = require('../Heading-f066883a.js');
12
+ var Typography = require('../Typography-75f58b60.js');
13
+ var Markdown = require('../Markdown-10fc9d3e.js');
14
+ var Emphasis = require('../Emphasis-7a2893bb.js');
16
15
  require('@jobber/design');
17
- require('react-markdown');
18
- require('../Content-2ca1ffe1.js');
16
+ require('../tslib.es6-a575af05.js');
17
+ require('markdown-to-jsx');
18
+ require('../Content-80486307.js');
19
19
 
20
20
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
21
 
@@ -24,17 +24,11 @@ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
24
24
  var get__default = /*#__PURE__*/_interopDefaultLegacy(get);
25
25
  var groupBy__default = /*#__PURE__*/_interopDefaultLegacy(groupBy);
26
26
 
27
- var css_248z$2 = ".u853Ql4cj50- {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.ig9l6LfEgwo-:not(:last-child) {\n border-bottom: calc(16px / 16) solid rgb(217, 223, 225);\n border-bottom: var(--border-base) solid var(--color-border);\n}\n\n.KIYTQdrufzY- {\n position: relative;\n}\n\n.KIYTQdrufzY-:not(:last-child) .u853Ql4cj50- {\n padding-bottom: calc(16px * 1.5);\n padding-bottom: var(--space-large);\n}\n";
28
27
  var styles$1 = {"list":"u853Ql4cj50-","item":"ig9l6LfEgwo-","section":"KIYTQdrufzY-"};
29
- styleInject_es.styleInject(css_248z$2);
30
28
 
31
- var css_248z$1 = ".LUlooG82UJA- {\n position: sticky;\n top: 0;\n padding: calc(16px / 2) calc(16px * 1);\n padding: var(--space-small) var(--space-base);\n border-bottom: 1px solid rgb(1, 41, 57);\n border-bottom: 1px solid var(--color-border--section);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n._4LVpgNq-SLM- {\n border-bottom-color: rgb(147, 161, 169);\n border-bottom-color: var(--color-greyBlue--light);\n color: rgb(147, 161, 169);\n color: var(--color-greyBlue--light);\n}\n\n._0QhWokyE9PY- {\n border-bottom-color: rgb(125, 176, 14);\n border-bottom-color: var(--color-green);\n color: rgb(125, 176, 14);\n color: var(--color-green);\n}\n\n.J8wB3qqOlBc-,\n.Ujqj17pKDIE- {\n border-bottom-color: rgb(1, 41, 57);\n border-bottom-color: var(--color-blue);\n color: rgb(1, 41, 57);\n color: var(--color-blue);\n}\n\n._0lNxLGXhrfY- {\n border-bottom-color: rgb(243, 150, 36);\n border-bottom-color: var(--color-orange);\n color: rgb(243, 150, 36);\n color: var(--color-orange);\n}\n\n._4qPymF0CAAE- {\n border-bottom-color: rgb(201, 66, 33);\n border-bottom-color: var(--color-red);\n color: rgb(201, 66, 33);\n color: var(--color-red);\n}\n\n.kKYNLBSu9IQ- {\n border-bottom-color: rgb(62, 173, 146);\n border-bottom-color: var(--color-teal);\n color: rgb(62, 173, 146);\n color: var(--color-teal);\n}\n";
32
29
  var sectionStyles = {"sectionHeader":"LUlooG82UJA-","greyBlue":"_4LVpgNq-SLM-","green":"_0QhWokyE9PY-","blue":"J8wB3qqOlBc-","archived":"Ujqj17pKDIE-","orange":"_0lNxLGXhrfY-","red":"_4qPymF0CAAE-","teal":"kKYNLBSu9IQ-"};
33
- styleInject_es.styleInject(css_248z$1);
34
30
 
35
- var css_248z = ".XPLf4Jp6feU- {\n display: -ms-flexbox;\n display: flex;\n width: 100%;\n box-sizing: border-box;\n padding: calc(16px / 2);\n padding: var(--space-small);\n border: none;\n text-align: left;\n -webkit-text-decoration: none;\n text-decoration: none;\n background-color: transparent;\n transition: background-color 200ms;\n transition: background-color var(--timing-base);\n -webkit-appearance: none;\n appearance: none;\n -ms-flex-align: start;\n align-items: flex-start;\n}\n\n.XPLf4Jp6feU- > * {\n padding: calc(16px / 2);\n padding: var(--space-small);\n}\n\n.RseHYbVm4MA- {\n cursor: pointer;\n}\n\n.RseHYbVm4MA-:hover,\n.RseHYbVm4MA-:focus {\n outline: none;\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n}\n\n.d1-zQvxPH-M- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: calc(16px * 1.5);\n width: var(--space-large);\n height: calc(16px * 1.5);\n height: var(--space-large);\n box-sizing: content-box;\n}\n\n._-58VuZf1TtM- {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n min-width: 0;\n -ms-flex-item-align: center;\n align-self: center;\n}\n\n.wHB5zXYWW3E- {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n text-align: right;\n}\n\n/* States */\n\n.C4DznaxLKiw- {\n background-color: rgb(238, 240, 242);\n background-color: var(--color-surface--background);\n}\n\n.C4DznaxLKiw-:hover,\n.C4DznaxLKiw-:focus {\n background-color: rgb(193, 201, 206);\n background-color: var(--color-surface--background--hover);\n}\n\n/* TODO: Move truncate in typography */\n\n.Brob-IpVv4o- {\n display: block;\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n";
36
31
  var styles = {"action":"XPLf4Jp6feU-","hoverable":"RseHYbVm4MA-","icon":"d1-zQvxPH-M-","info":"_-58VuZf1TtM-","amount":"wHB5zXYWW3E-","isActive":"C4DznaxLKiw-","truncate":"Brob-IpVv4o-"};
37
- styleInject_es.styleInject(css_248z);
38
32
 
39
33
  function ListItem({ caption, content, icon, iconColor, id, isActive, onClick, title, url, value, }) {
40
34
  const actionClasses = classnames__default["default"](styles.action, isActive && styles.isActive, (onClick || url) && styles.hoverable);
@@ -14,5 +14,5 @@ interface MarkdownProps {
14
14
  */
15
15
  readonly basicUsage?: boolean;
16
16
  }
17
- export declare function Markdown({ content, externalLink, basicUsage }: MarkdownProps): JSX.Element;
17
+ export declare function Markdown({ content, externalLink, basicUsage, ...props }: MarkdownProps): JSX.Element;
18
18
  export {};
@@ -2,16 +2,16 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Markdown = require('../Markdown-96070121.js');
5
+ var Markdown = require('../Markdown-10fc9d3e.js');
6
+ require('../tslib.es6-a575af05.js');
6
7
  require('react');
7
- require('react-markdown');
8
- require('../Text-4a2bc89f.js');
9
- require('../Typography-973b122e.js');
8
+ require('markdown-to-jsx');
9
+ require('../Text-9f261dde.js');
10
+ require('../Typography-75f58b60.js');
10
11
  require('classnames');
11
- require('../style-inject.es-9d2f5f4e.js');
12
- require('../Emphasis-b2d1b3aa.js');
13
- require('../Heading-0f4ecb0c.js');
14
- require('../Content-2ca1ffe1.js');
12
+ require('../Emphasis-7a2893bb.js');
13
+ require('../Heading-f066883a.js');
14
+ require('../Content-80486307.js');
15
15
 
16
16
 
17
17
 
@@ -0,0 +1,90 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('./tslib.es6-a575af05.js');
4
+ var React = require('react');
5
+ var ReactMarkdown = require('markdown-to-jsx');
6
+ var Text = require('./Text-9f261dde.js');
7
+ var Emphasis = require('./Emphasis-7a2893bb.js');
8
+ var Heading = require('./Heading-f066883a.js');
9
+ var Content = require('./Content-80486307.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 ReactMarkdown__default = /*#__PURE__*/_interopDefaultLegacy(ReactMarkdown);
15
+
16
+ const NoSpan = {
17
+ component: ({ children }) => React__default["default"].createElement(React__default["default"].Fragment, null, children),
18
+ props: {},
19
+ };
20
+ function Markdown(_a) {
21
+ var { content, externalLink, basicUsage } = _a, props = tslib_es6.__rest(_a, ["content", "externalLink", "basicUsage"]);
22
+ const Tag = basicUsage ? React__default["default"].Fragment : Content.Content;
23
+ const basicOverrides = {
24
+ p: NoSpan,
25
+ h1: NoSpan,
26
+ div: NoSpan,
27
+ h2: NoSpan,
28
+ h3: NoSpan,
29
+ h4: NoSpan,
30
+ h5: NoSpan,
31
+ h6: NoSpan,
32
+ table: NoSpan,
33
+ ul: NoSpan,
34
+ li: NoSpan,
35
+ code: (children, ...args) => React__default["default"].createElement("code", Object.assign({}, args), children),
36
+ strong: renderStrong,
37
+ em: renderEmphasis,
38
+ image: NoSpan,
39
+ a: {
40
+ component: (_a) => {
41
+ var { children } = _a, rest = tslib_es6.__rest(_a, ["children"]);
42
+ return (React__default["default"].createElement("a", Object.assign({}, rest), children));
43
+ },
44
+ props: { target: externalLink ? "_blank" : undefined },
45
+ },
46
+ };
47
+ const defaultOverrides = {
48
+ code: (children, ...args) => React__default["default"].createElement("code", Object.assign({}, args), children),
49
+ p: renderParagraph,
50
+ strong: renderStrong,
51
+ span: NoSpan,
52
+ div: NoSpan,
53
+ em: renderEmphasis,
54
+ h1: renderHeading(1),
55
+ h2: renderHeading(2),
56
+ h3: renderHeading(3),
57
+ h4: renderHeading(4),
58
+ h5: renderHeading(5),
59
+ h6: renderHeading(6),
60
+ a: {
61
+ component: (_a) => {
62
+ var { children } = _a, rest = tslib_es6.__rest(_a, ["children"]);
63
+ return (React__default["default"].createElement("a", Object.assign({}, rest), children));
64
+ },
65
+ props: { target: externalLink ? "_blank" : undefined },
66
+ },
67
+ };
68
+ return (React__default["default"].createElement(Tag, null,
69
+ React__default["default"].createElement(ReactMarkdown__default["default"], Object.assign({}, props, { options: {
70
+ overrides: basicUsage ? basicOverrides : defaultOverrides,
71
+ forceBlock: true,
72
+ } }), content)));
73
+ }
74
+ function renderParagraph({ children }) {
75
+ return React__default["default"].createElement(Text.Text, null, children);
76
+ }
77
+ function renderStrong({ children }) {
78
+ return React__default["default"].createElement(Emphasis.Emphasis, { variation: "bold" }, children);
79
+ }
80
+ function renderEmphasis({ children }) {
81
+ return React__default["default"].createElement(Emphasis.Emphasis, { variation: "italic" }, children);
82
+ }
83
+ function renderHeading(level) {
84
+ function buildHeading({ children }) {
85
+ return React__default["default"].createElement(Heading.Heading, { level: level }, children);
86
+ }
87
+ return buildHeading;
88
+ }
89
+
90
+ exports.Markdown = Markdown;
@@ -25,15 +25,15 @@ export interface ActionProps {
25
25
  /**
26
26
  * Action label
27
27
  */
28
- label: string;
28
+ readonly label: string;
29
29
  /**
30
30
  * Parent Section Label
31
31
  */
32
- sectionLabel?: string;
32
+ readonly sectionLabel?: string;
33
33
  /**
34
34
  * Visual cue for the action label
35
35
  */
36
- icon?: IconNames;
36
+ readonly icon?: IconNames;
37
37
  /**
38
38
  * Callback when an action gets clicked
39
39
  */
@@ -41,5 +41,5 @@ export interface ActionProps {
41
41
  /**
42
42
  * Focus on the action when rendered
43
43
  */
44
- shouldFocus?: boolean;
44
+ readonly shouldFocus?: boolean;
45
45
  }
@@ -2,19 +2,18 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Menu = require('../Menu-d7ea093c.js');
5
+ var Menu = require('../Menu-7b7aa325.js');
6
6
  require('react');
7
- require('uuid');
8
7
  require('classnames');
9
8
  require('framer-motion');
10
9
  require('@jobber/hooks/useOnKeyDown');
11
10
  require('@jobber/hooks/useRefocusOnActivator');
12
- require('../style-inject.es-9d2f5f4e.js');
13
- require('../Button-163a0641.js');
11
+ require('../Button-8bde6560.js');
14
12
  require('react-router-dom');
15
- require('../Icon-405a216c.js');
13
+ require('../Icon-361343e0.js');
16
14
  require('@jobber/design');
17
- require('../Typography-973b122e.js');
15
+ require('../Typography-75f58b60.js');
16
+ require('../useSafeLayoutEffect-b63708b1.js');
18
17
 
19
18
 
20
19
 
@@ -1,24 +1,21 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var uuid = require('uuid');
5
4
  var classnames = require('classnames');
6
5
  var framerMotion = require('framer-motion');
7
6
  var useOnKeyDown = require('@jobber/hooks/useOnKeyDown');
8
7
  var useRefocusOnActivator = require('@jobber/hooks/useRefocusOnActivator');
9
- var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
10
- var Button = require('./Button-163a0641.js');
11
- var Typography = require('./Typography-973b122e.js');
12
- var Icon = require('./Icon-405a216c.js');
8
+ var Button = require('./Button-8bde6560.js');
9
+ var Typography = require('./Typography-75f58b60.js');
10
+ var Icon = require('./Icon-361343e0.js');
11
+ var useSafeLayoutEffect = require('./useSafeLayoutEffect-b63708b1.js');
13
12
 
14
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
14
 
16
15
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
16
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
18
17
 
19
- var css_248z = ".dT6M9tp1sZc- * {\n box-sizing: border-box;\n}\n\n.dT6M9tp1sZc- {\n display: inline-block;\n position: relative;\n}\n\n.Qmxlsj0D3qM- {\n position: fixed;\n bottom: 0;\n left: 0;\n z-index: 6;\n z-index: var(--elevation-menu);\n width: 100%;\n max-height: 72vh;\n padding: calc(16px / 2);\n padding: var(--space-small);\n padding-bottom: calc(env(safe-area-inset-bottom) + (16px / 2));\n padding-bottom: calc(env(safe-area-inset-bottom) + calc(16px / 2));\n padding-bottom: calc(env(safe-area-inset-bottom) + var(--space-small));\n border-radius: calc(16px / 8) calc(16px / 8) 0 0;\n border-radius: var(--radius-base) var(--radius-base) 0 0;\n -webkit-overflow-scrolling: touch;\n overflow-y: scroll;\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n@media (min-width: 490px) {\n\n.Qmxlsj0D3qM- {\n position: absolute;\n left: auto;\n width: calc(16px * 12.5);\n width: calc(var(--base-unit) * 12.5);\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n padding: calc(16px / 2);\n padding: var(--space-small);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n overflow: auto;\n}\n }\n\n@media (--small-screens-and-up) {\n\n.Qmxlsj0D3qM- {\n position: absolute;\n left: auto;\n width: calc(16px * 12.5);\n width: calc(var(--base-unit) * 12.5);\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n padding: calc(16px / 2);\n padding: var(--space-small);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n overflow: auto;\n}\n }\n\n@media (min-width: 490px) {\n\n.QTisUfiHwL4- {\n bottom: 100%;\n margin-bottom: calc(16px / 8);\n margin-bottom: var(--space-smallest);\n}\n }\n\n@media (--small-screens-and-up) {\n\n.QTisUfiHwL4- {\n bottom: 100%;\n margin-bottom: calc(16px / 8);\n margin-bottom: var(--space-smallest);\n}\n }\n\n@media (min-width: 490px) {\n\n.qsch1dlpOHc- {\n top: 100%;\n bottom: auto;\n margin-top: calc(16px / 8);\n margin-top: var(--space-smallest);\n}\n }\n\n@media (--small-screens-and-up) {\n\n.qsch1dlpOHc- {\n top: 100%;\n bottom: auto;\n margin-top: calc(16px / 8);\n margin-top: var(--space-smallest);\n}\n }\n\n@media (min-width: 490px) {\n\n._0xR9-oxWMOU- {\n right: 0;\n left: auto;\n}\n }\n\n@media (--small-screens-and-up) {\n\n._0xR9-oxWMOU- {\n right: 0;\n left: auto;\n}\n }\n\n@media (min-width: 490px) {\n\n.gaZwsdyoG0k- {\n right: auto;\n left: 0;\n}\n }\n\n@media (--small-screens-and-up) {\n\n.gaZwsdyoG0k- {\n right: auto;\n left: 0;\n}\n }\n\n.LaKFjYCLHZc- {\n padding: calc(16px / 2) 0;\n padding: var(--space-small) 0;\n border-bottom: calc(16px / 16) dotted rgb(217, 223, 225);\n border-bottom: var(--border-base) dotted var(--color-border);\n}\n\n.LaKFjYCLHZc-:first-of-type {\n padding-top: 0;\n}\n\n.LaKFjYCLHZc-:last-of-type {\n padding-bottom: 0;\n border-bottom: none;\n}\n\n._7HB7dWnqCi0- {\n padding: calc(16px / 2);\n padding: var(--space-small);\n}\n\n.ZuceCiefKqw- {\n display: -ms-flexbox;\n display: flex;\n width: 100%;\n padding: calc(16px / 2);\n padding: var(--space-small);\n border: none;\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n background-color: transparent;\n cursor: pointer;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.ZuceCiefKqw-:hover,\n.ZuceCiefKqw-:focus {\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n outline-color: rgb(147, 161, 169);\n outline-color: var(--color-focus);\n}\n\n.Bz8TONF8kws- {\n margin-right: calc(16px * 1);\n margin-right: var(--space-base);\n}\n\n.eKnUAucwwWU- {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 6;\n z-index: var(--elevation-menu);\n background-color: rgba(0, 0, 0, 0.32);\n background-color: var(--color-overlay);\n}\n\n@media (min-width: 490px) {\n\n.eKnUAucwwWU- {\n background-color: transparent;\n}\n }\n\n@media (--small-screens-and-up) {\n\n.eKnUAucwwWU- {\n background-color: transparent;\n}\n }\n\n.oaxefr58z-E- {\n width: 100%;\n}\n\n.vz9opIdwHFg- {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n}\n";
20
18
  var styles = {"wrapper":"dT6M9tp1sZc-","menu":"Qmxlsj0D3qM-","above":"QTisUfiHwL4-","below":"qsch1dlpOHc-","left":"_0xR9-oxWMOU-","right":"gaZwsdyoG0k-","section":"LaKFjYCLHZc-","sectionHeader":"_7HB7dWnqCi0-","action":"ZuceCiefKqw-","icon":"Bz8TONF8kws-","overlay":"eKnUAucwwWU-","fullWidth":"oaxefr58z-E-","screenReaderOnly":"vz9opIdwHFg-"};
21
- styleInject_es.styleInject(css_248z);
22
19
 
23
20
  const variation = {
24
21
  overlayStartStop: { opacity: 0 },
@@ -42,10 +39,10 @@ function Menu({ activator, items }) {
42
39
  horizontal: "right",
43
40
  });
44
41
  const wrapperRef = React.createRef();
45
- const buttonID = uuid.v1();
46
- const menuID = uuid.v1();
42
+ const buttonID = React.useId();
43
+ const menuID = React.useId();
47
44
  useOnKeyDown.useOnKeyDown(handleKeyboardShortcut, ["Escape"]);
48
- React.useLayoutEffect(() => {
45
+ useSafeLayoutEffect.useSafeLayoutEffect(() => {
49
46
  if (wrapperRef.current) {
50
47
  const bounds = wrapperRef.current.getBoundingClientRect();
51
48
  const newPosition = Object.assign({}, position);
@@ -1,4 +1,4 @@
1
- import React, { ReactNode } from "react";
1
+ import { ReactNode } from "react";
2
2
  import sizes from "./Sizes.css";
3
3
  import { ButtonProps } from "../Button";
4
4
  export interface ModalProps {
@@ -18,4 +18,4 @@ export interface ModalProps {
18
18
  readonly tertiaryAction?: ButtonProps;
19
19
  onRequestClose?(): void;
20
20
  }
21
- export declare function Modal({ open, title, size, dismissible, children, primaryAction, secondaryAction, tertiaryAction, onRequestClose, }: ModalProps): React.ReactPortal;
21
+ export declare function Modal({ open, title, size, dismissible, children, primaryAction, secondaryAction, tertiaryAction, onRequestClose, }: ModalProps): JSX.Element;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Modal = require('../Modal-70daa0e2.js');
5
+ var Modal = require('../Modal-357fd1df.js');
6
6
  require('react');
7
7
  require('react-dom');
8
8
  require('classnames');
@@ -10,14 +10,14 @@ require('framer-motion');
10
10
  require('@jobber/hooks/useRefocusOnActivator');
11
11
  require('@jobber/hooks/useOnKeyDown');
12
12
  require('@jobber/hooks/useFocusTrap');
13
- require('../style-inject.es-9d2f5f4e.js');
14
- require('../Heading-0f4ecb0c.js');
15
- require('../Typography-973b122e.js');
16
- require('../Button-163a0641.js');
13
+ require('../Heading-f066883a.js');
14
+ require('../Typography-75f58b60.js');
15
+ require('../Button-8bde6560.js');
17
16
  require('react-router-dom');
18
- require('../Icon-405a216c.js');
17
+ require('../Icon-361343e0.js');
19
18
  require('@jobber/design');
20
- require('../ButtonDismiss-2b98d075.js');
19
+ require('../ButtonDismiss-af17d76d.js');
20
+ require('../ClientOnly-4f3e136d.js');
21
21
 
22
22
 
23
23
 
@@ -7,10 +7,10 @@ var framerMotion = require('framer-motion');
7
7
  var useRefocusOnActivator = require('@jobber/hooks/useRefocusOnActivator');
8
8
  var useOnKeyDown = require('@jobber/hooks/useOnKeyDown');
9
9
  var useFocusTrap = require('@jobber/hooks/useFocusTrap');
10
- var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
11
- var Heading = require('./Heading-0f4ecb0c.js');
12
- var Button = require('./Button-163a0641.js');
13
- var ButtonDismiss = require('./ButtonDismiss-2b98d075.js');
10
+ var Heading = require('./Heading-f066883a.js');
11
+ var Button = require('./Button-8bde6560.js');
12
+ var ButtonDismiss = require('./ButtonDismiss-af17d76d.js');
13
+ var ClientOnly = require('./ClientOnly-4f3e136d.js');
14
14
 
15
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
16
 
@@ -18,13 +18,9 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
18
  var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
19
19
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
20
20
 
21
- var css_248z$1 = ":root {\n --modal--width: calc(var(--base-unit) * 37.5);\n --modal--padding-horizontal: var(--space-base);\n --modal--padding-vertical: var(--space-base);\n --modal--padding: var(--modal--padding-vertical)\n var(--modal--padding-horizontal);\n}\n\n@media (min-width: 768px) {\n\n:root {\n --modal--padding-horizontal: var(--space-large);\n}\n }\n\n@media (--medium-screens-and-up) {\n\n:root {\n --modal--padding-horizontal: var(--space-large);\n}\n }\n\n.QGRLFHPoV5E- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n z-index: 1001;\n z-index: var(--elevation-modal);\n padding: calc(16px / 2);\n padding: var(--space-small);\n overflow: auto;\n}\n\n.QGRLFHPoV5E-,\n._4WzGOMUGj5I- {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n}\n\n._4WzGOMUGj5I- {\n background-color: rgba(0, 0, 0, 0.32);\n background-color: var(--color-overlay);\n}\n\n.WLId2NJBQcQ- {\n position: relative;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n max-width: calc(16px * 37.5);\n max-width: var(--modal--width);\n margin: auto;\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n outline-color: rgb(147, 161, 169);\n outline-color: var(--color-focus);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n/* Adjust `Content` and `Tab` components public padding to match the modal */\n\n.WLId2NJBQcQ- > * {\n --public-content--padding: var(--modal--padding);\n --public-tab--inset: var(--modal--padding-horizontal);\n}\n\n/* Remove the nested `Content` components public padding */\n\n.WLId2NJBQcQ- > * > * {\n --public-content--padding: 0;\n}\n\n.wjrPpIUNNrk- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: justify;\n justify-content: space-between;\n -ms-flex-align: center;\n align-items: center;\n padding: calc(16px * 1)\n calc(16px * 1);\n padding: var(--modal--padding);\n background-color: rgb(238, 240, 242);\n background-color: var(--color-surface--background);\n}\n\n.rKvigUnOyYE- {\n padding: 0;\n border: none;\n background-color: transparent;\n cursor: pointer;\n -webkit-appearance: none;\n appearance: none;\n}\n\n._62c8HLZFwvs- {\n display: -ms-flexbox;\n display: flex;\n padding: calc(16px * 1)\n calc(16px * 1);\n padding: var(--modal--padding);\n padding-top: 0;\n -ms-flex: 1 1 100%;\n flex: 1 1 100%;\n -ms-flex-pack: end;\n justify-content: flex-end;\n}\n\n/**\n * 1. Use CSS `order` to adjust the buttons position on the UI\n */\n\n.Xl1Ptn-P9Ew- {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n -ms-flex-order: 1;\n order: 1; /* 1 */\n}\n\n.p2s7GtpoZz0- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n -ms-flex-order: 2;\n order: 2; /* 1 */\n}\n\n.p2s7GtpoZz0- > * {\n margin-left: calc(16px / 2);\n margin-left: var(--space-small);\n}\n\n.p2s7GtpoZz0- *:first-child {\n -ms-flex-order: 2;\n order: 2; /* 1 */\n}\n\n.p2s7GtpoZz0- *:nth-child(2) {\n -ms-flex-order: 1;\n order: 1; /* 1 */\n}\n";
22
21
  var styles = {"container":"QGRLFHPoV5E-","overlay":"_4WzGOMUGj5I-","modal":"WLId2NJBQcQ-","header":"wjrPpIUNNrk-","closeButton":"rKvigUnOyYE-","actionBar":"_62c8HLZFwvs-","leftAction":"Xl1Ptn-P9Ew-","rightAction":"p2s7GtpoZz0-"};
23
- styleInject_es.styleInject(css_248z$1);
24
22
 
25
- var css_248z = "._65IpUjOZiBg- {\n --modal--padding: var(--space-base);\n --public-tab--inset: var(--space-base);\n max-width: calc(16px * 25);\n max-width: calc(var(--base-unit) * 25);\n}\n\n.Cpwnmw65caA- {\n max-width: calc(16px * 58.75);\n max-width: calc(var(--base-unit) * 58.75);\n}\n";
26
23
  var sizes = {"small":"_65IpUjOZiBg-","large":"Cpwnmw65caA-"};
27
- styleInject_es.styleInject(css_248z);
28
24
 
29
25
  function Modal({ open = false, title, size, dismissible = true, children, primaryAction, secondaryAction, tertiaryAction, onRequestClose, }) {
30
26
  const modalClassName = classnames__default["default"](styles.modal, size && sizes[size]);
@@ -40,7 +36,8 @@ function Modal({ open = false, title, size, dismissible = true, children, primar
40
36
  title != undefined && (React__default["default"].createElement(Header, { title: title, dismissible: dismissible, onRequestClose: onRequestClose })),
41
37
  children,
42
38
  React__default["default"].createElement(Actions, { primary: primaryAction, secondary: secondaryAction, tertiary: tertiaryAction }))))));
43
- return ReactDOM__default["default"].createPortal(template, document.body);
39
+ return (React__default["default"].createElement(ClientOnly.ClientOnly, null, typeof document !== "undefined" &&
40
+ ReactDOM__default["default"].createPortal(template, document.body)));
44
41
  function handleRequestClose() {
45
42
  if (open && onRequestClose) {
46
43
  onRequestClose();
@@ -4,14 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
6
  var classnames = require('classnames');
7
- var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
8
- var Checkbox = require('../Checkbox-ad7ec2e7.js');
9
- var Text = require('../Text-4a2bc89f.js');
10
- var Icon = require('../Icon-405a216c.js');
11
- require('../tslib.es6-5b8768b7.js');
12
- require('uuid');
7
+ var Checkbox = require('../Checkbox-2d7c43d9.js');
8
+ var Text = require('../Text-9f261dde.js');
9
+ var Icon = require('../Icon-361343e0.js');
10
+ require('../tslib.es6-a575af05.js');
13
11
  require('react-hook-form');
14
- require('../Typography-973b122e.js');
12
+ require('../Typography-75f58b60.js');
15
13
  require('@jobber/design');
16
14
 
17
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -19,13 +17,9 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
19
17
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
18
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
21
19
 
22
- var css_248z$1 = ".D-J03az6XL4- {\n position: relative;\n width: 100%;\n}\n\n.D-J03az6XL4- * {\n box-sizing: border-box;\n}\n\n.EzNdHgwsT40- {\n --field--height: var(--space-largest);\n\n --field--padding-top: calc(var(--space-base) - var(--space-smallest));\n --field--padding-bottom: calc(var(--space-base) - var(--space-smallest));\n --field--padding-left: var(--space-base);\n --field--padding-right: var(--space-base);\n\n display: -ms-flexbox;\n\n display: flex;\n -ms-flex-direction: row;\n flex-direction: row;\n -ms-flex-pack: justify;\n justify-content: space-between;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n height: calc(16px * 3);\n height: var(--field--height);\n padding-top: calc((16px * 1) - (16px / 8));\n padding-top: calc(calc(16px * 1) - calc(16px / 8));\n padding-top: var(--field--padding-top);\n padding-bottom: calc((16px * 1) - (16px / 8));\n padding-bottom: calc(calc(16px * 1) - calc(16px / 8));\n padding-bottom: var(--field--padding-bottom);\n padding-left: calc(16px * 1);\n padding-left: var(--field--padding-left);\n padding-right: calc(16px * 1);\n padding-right: var(--field--padding-right);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n}\n\n.EzNdHgwsT40- p {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.D-J03az6XL4-:hover,\n.D-J03az6XL4-.EzNdHgwsT40- {\n cursor: pointer;\n caret-color: transparent;\n}\n\n.EzNdHgwsT40-:focus,\n.EzNdHgwsT40-.bu7HWKRu6HI- {\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.eQ6yfQg6zLc- {\n --field--padding-left: calc(var(--space-base) - var(--space-smaller));\n --field--padding-right: calc(var(--space-base) - var(--space-smaller));\n --field--height: calc(var(--space-larger) + var(--space-smaller));\n}\n\n.pM-ts4-QMZY- {\n --field--padding-left: var(--space-large);\n --field--padding-right: var(--space-large);\n --field--height: calc(var(--space-extravagant));\n}\n";
23
20
  var styles$1 = {"multiSelectContainer":"D-J03az6XL4-","multiSelect":"EzNdHgwsT40-","active":"bu7HWKRu6HI-","small":"eQ6yfQg6zLc-","large":"pM-ts4-QMZY-"};
24
- styleInject_es.styleInject(css_248z$1);
25
21
 
26
- var css_248z = "._0SStdD4KRHs- {\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n z-index: 6;\n z-index: var(--elevation-menu);\n width: 100%;\n max-height: calc((16px * 4) * 5);\n max-height: calc(calc(16px * 4) * 5);\n max-height: calc(var(--space-extravagant) * 5);\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n margin: 0;\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 / 4);\n border-radius: var(--radius-large);\n overflow: auto;\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n -ms-flex-direction: column;\n flex-direction: column;\n scroll-behavior: smooth;\n}\n\n._0SStdD4KRHs- li {\n list-style: none;\n}\n\n.mFSgwOQZJm0- {\n display: -ms-flexbox;\n display: flex;\n width: 100%;\n padding: calc(16px / 2) calc(16px * 1);\n padding: var(--space-small) var(--space-base);\n cursor: pointer;\n transition: all 200ms;\n transition: all var(--timing-base);\n}\n\n.mFSgwOQZJm0-:focus,\n.mFSgwOQZJm0-.SepF4gvOxq8- {\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n outline-color: rgb(147, 161, 169);\n outline-color: var(--color-focus);\n}\n";
27
22
  var styles = {"dropDownMenuContainer":"_0SStdD4KRHs-","option":"mFSgwOQZJm0-","active":"SepF4gvOxq8-"};
28
- styleInject_es.styleInject(css_248z);
29
23
 
30
24
  function DropDownMenu({ options, setOptions }) {
31
25
  const [highlightedIndex, setHighlightedIndex] = React.useState(0);
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var FormField = require('./FormField-181efe29.js');
4
+ var FormField = require('./FormField-18eda132.js');
5
5
 
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
7
 
@@ -5,32 +5,30 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var classnames = require('classnames');
7
7
  var jobberHooks = require('@jobber/hooks/useResizeObserver');
8
- var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
9
- var Heading = require('../Heading-0f4ecb0c.js');
10
- var Text = require('../Text-4a2bc89f.js');
11
- var Content = require('../Content-2ca1ffe1.js');
12
- var Markdown = require('../Markdown-96070121.js');
13
- var Button = require('../Button-163a0641.js');
14
- var Menu = require('../Menu-d7ea093c.js');
15
- var Emphasis = require('../Emphasis-b2d1b3aa.js');
16
- require('../Typography-973b122e.js');
17
- require('react-markdown');
8
+ var Heading = require('../Heading-f066883a.js');
9
+ var Text = require('../Text-9f261dde.js');
10
+ var Content = require('../Content-80486307.js');
11
+ var Markdown = require('../Markdown-10fc9d3e.js');
12
+ var Button = require('../Button-8bde6560.js');
13
+ var Menu = require('../Menu-7b7aa325.js');
14
+ var Emphasis = require('../Emphasis-7a2893bb.js');
15
+ require('../Typography-75f58b60.js');
16
+ require('../tslib.es6-a575af05.js');
17
+ require('markdown-to-jsx');
18
18
  require('react-router-dom');
19
- require('../Icon-405a216c.js');
19
+ require('../Icon-361343e0.js');
20
20
  require('@jobber/design');
21
- require('uuid');
22
21
  require('framer-motion');
23
22
  require('@jobber/hooks/useOnKeyDown');
24
23
  require('@jobber/hooks/useRefocusOnActivator');
24
+ require('../useSafeLayoutEffect-b63708b1.js');
25
25
 
26
26
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
27
27
 
28
28
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
29
29
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
30
30
 
31
- var css_248z = ".pVEdXlwstrc- {\n width: 100%;\n box-sizing: border-box;\n padding: calc(16px * 1);\n padding: var(--space-base);\n}\n\n@media (min-width: 768px) {\n\n.pVEdXlwstrc- {\n padding: calc(16px * 1.5);\n padding: var(--space-large);\n}\n }\n\n@media (--medium-screens-and-up) {\n\n.pVEdXlwstrc- {\n padding: calc(16px * 1.5);\n padding: var(--space-large);\n}\n }\n\n._9r84iz--C5M- {\n max-width: none;\n}\n\n._0LO26JFXU9g- {\n max-width: calc(16px * 80);\n max-width: calc(var(--base-unit) * 80);\n}\n\n.KiMIF8eFbuE- {\n max-width: calc(16px * 64);\n max-width: calc(var(--base-unit) * 64);\n}\n\n.GCeQrLFyml4- h1 {\n -ms-flex: 0 1 auto;\n flex: 0 1 auto;\n margin-bottom: calc(16px * 1);\n margin-bottom: var(--space-base);\n}\n\n.GCeQrLFyml4- > .KP-BTjB82iQ- {\n -ms-flex: 1 0 auto;\n flex: 1 0 auto;\n}\n\n.GCeQrLFyml4-.GuFU-PgC1j4-,\n.GCeQrLFyml4-.qiwlkB5pxkA- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n\n.GCeQrLFyml4-.CbPnpIk7-EE- .KP-BTjB82iQ- {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n\n.GCeQrLFyml4-.qiwlkB5pxkA- .KP-BTjB82iQ-,\n.GCeQrLFyml4-.GuFU-PgC1j4- .KP-BTjB82iQ- {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n}\n\n.GCeQrLFyml4-.qiwlkB5pxkA- .KP-BTjB82iQ- {\n -ms-flex-pack: end;\n justify-content: flex-end;\n}\n\n.E5FEsck9zwg- {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n margin-bottom: calc(16px / 2);\n margin-bottom: var(--space-small);\n}\n\n.Sn3-wJuNCqk- {\n margin-top: calc(16px / 2);\n margin-top: var(--space-small);\n -ms-flex: 1;\n flex: 1;\n}\n\n.Sn3-wJuNCqk- > div {\n width: 100%;\n}\n\n.GCeQrLFyml4-.CbPnpIk7-EE- .Sn3-wJuNCqk- {\n margin-top: 0;\n}\n\n.GCeQrLFyml4-.qiwlkB5pxkA- .E5FEsck9zwg-,\n.GCeQrLFyml4-.qiwlkB5pxkA- .Sn3-wJuNCqk- {\n margin: 0;\n -ms-flex: 0 auto;\n flex: 0 auto;\n}\n\n.GCeQrLFyml4-.qiwlkB5pxkA- .Sn3-wJuNCqk- {\n margin-left: calc(16px / 2);\n margin-left: var(--space-small);\n}\n\n.GCeQrLFyml4-.CbPnpIk7-EE- .Sn3-wJuNCqk- + .Sn3-wJuNCqk- {\n margin-left: calc(16px / 2);\n margin-left: var(--space-small);\n}\n\n.GCeQrLFyml4- ._9ZKFDK2jL80- {\n margin-bottom: calc(16px * 1);\n margin-bottom: var(--space-base);\n}\n";
32
31
  var styles = {"page":"pVEdXlwstrc-","fill":"_9r84iz--C5M-","standard":"_0LO26JFXU9g-","narrow":"KiMIF8eFbuE-","titleBar":"GCeQrLFyml4-","actionGroup":"KP-BTjB82iQ-","large":"GuFU-PgC1j4-","medium":"qiwlkB5pxkA-","small":"CbPnpIk7-EE-","primaryAction":"E5FEsck9zwg-","actionButton":"Sn3-wJuNCqk-","subtitle":"_9ZKFDK2jL80-"};
33
- styleInject_es.styleInject(css_248z);
34
32
 
35
33
  // eslint-disable-next-line max-statements
36
34
  function Page({ title, intro, externalIntroLinks, subtitle, children, width = "standard", primaryAction, secondaryAction, moreActionsMenu = [], }) {
@@ -4,7 +4,7 @@ export interface PopoverProps {
4
4
  * Element the Popover will attach to and point at. A `useRef` must be attached to an html element
5
5
  * and passed as an attachTo prop in order for the Popover to function properly
6
6
  */
7
- readonly attachTo: Element | React.RefObject<Element | null>;
7
+ readonly attachTo: Element | React.RefObject<HTMLElement | null>;
8
8
  /**
9
9
  * Popover content.
10
10
  */
@@ -23,4 +23,4 @@ export interface PopoverProps {
23
23
  */
24
24
  readonly preferredPlacement?: "top" | "bottom" | "left" | "right" | "auto";
25
25
  }
26
- export declare function Popover({ onRequestClose, children, attachTo, open, preferredPlacement, }: PopoverProps): JSX.Element;
26
+ export declare const Popover: (props: PopoverProps) => JSX.Element;
@@ -5,24 +5,22 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var reactPopper = require('react-popper');
7
7
  var useRefocusOnActivator = require('@jobber/hooks/useRefocusOnActivator');
8
- var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
9
- var ButtonDismiss = require('../ButtonDismiss-2b98d075.js');
10
- require('../Button-163a0641.js');
8
+ var ButtonDismiss = require('../ButtonDismiss-af17d76d.js');
9
+ var ClientOnly = require('../ClientOnly-4f3e136d.js');
10
+ require('../Button-8bde6560.js');
11
11
  require('classnames');
12
12
  require('react-router-dom');
13
- require('../Icon-405a216c.js');
13
+ require('../Icon-361343e0.js');
14
14
  require('@jobber/design');
15
- require('../Typography-973b122e.js');
15
+ require('../Typography-75f58b60.js');
16
16
 
17
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
18
 
19
19
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
20
 
21
- var css_248z = ":root {\n --card--base-padding: var(--space-base);\n --popover--padding: var(--space-base);\n --popover--width: calc(var(--base-unit) * 21.875);\n --dismiss--button-padding: calc(var(--base-unit) / 4);\n}\n\n.oSlK4rLUvzE- {\n display: -ms-flexbox;\n display: flex;\n position: \"relative\";\n padding: calc(16px * 1);\n padding: var(--popover--padding);\n -ms-flex-pack: justify;\n justify-content: space-between;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.XVPpPb-7e30- {\n float: right;\n padding: calc(16px / 4);\n padding: var(--dismiss--button-padding);\n text-align: right;\n}\n\n.TDuYbqXaLW0- {\n z-index: 1002;\n z-index: var(--elevation-tooltip);\n width: -webkit-max-content;\n width: max-content;\n max-width: calc(16px * 21.875);\n max-width: var(--popover--width);\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\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 line-height: normal;\n background: rgba(255, 255, 255, 1);\n background: var(--color-surface);\n}\n\n.TDuYbqXaLW0- > * {\n --public-content--padding: var(--card--base-padding);\n}\n\n.LJCpn0zf1e8- {\n visibility: hidden;\n}\n\n.LJCpn0zf1e8-,\n.LJCpn0zf1e8-::before {\n position: absolute;\n width: 16px;\n width: var(--base-unit);\n height: 16px;\n height: var(--base-unit);\n background: inherit;\n}\n\n.LJCpn0zf1e8-::before {\n content: \"\";\n visibility: visible;\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg);\n -webkit-transform-origin: center;\n transform-origin: center;\n -webkit-clip-path: polygon(-4px -4px, 15.3px 0, 0 15.3px);\n clip-path: polygon(-4px -4px, 15.3px 0, 0 15.3px);\n}\n\n.TDuYbqXaLW0-[data-popper-placement^=\"top\"] > .LJCpn0zf1e8- {\n bottom: -5px;\n}\n\n.TDuYbqXaLW0-[data-popper-placement^=\"top\"] > .LJCpn0zf1e8-::before {\n -webkit-transform: rotate(-135deg);\n transform: rotate(-135deg);\n}\n\n.TDuYbqXaLW0-[data-popper-placement^=\"bottom\"] > .LJCpn0zf1e8- {\n top: -7px;\n}\n\n.TDuYbqXaLW0-[data-popper-placement^=\"left\"] > .LJCpn0zf1e8- {\n right: -5px;\n}\n\n.TDuYbqXaLW0-[data-popper-placement^=\"left\"] > .LJCpn0zf1e8-::before {\n -webkit-transform: rotate(135deg);\n transform: rotate(135deg);\n}\n\n.TDuYbqXaLW0-[data-popper-placement^=\"right\"] > .LJCpn0zf1e8- {\n left: -7px;\n}\n\n.TDuYbqXaLW0-[data-popper-placement^=\"right\"] > .LJCpn0zf1e8-::before {\n -webkit-transform: rotate(-45deg);\n transform: rotate(-45deg);\n}\n";
22
21
  var classes = {"header":"oSlK4rLUvzE-","dismissButton":"XVPpPb-7e30-","popover":"TDuYbqXaLW0-","arrow":"LJCpn0zf1e8-"};
23
- styleInject_es.styleInject(css_248z);
24
22
 
25
- function Popover({ onRequestClose, children, attachTo, open, preferredPlacement = "auto", }) {
23
+ function PopoverInternal({ onRequestClose, children, attachTo, open, preferredPlacement = "auto", }) {
26
24
  const [popperElement, setPopperElement] = React.useState();
27
25
  const [arrowElement, setArrowElement] = React.useState();
28
26
  const { styles: popperStyles, attributes } = reactPopper.usePopper(attachTo instanceof Element ? attachTo : attachTo.current, popperElement, {
@@ -36,6 +34,8 @@ function Popover({ onRequestClose, children, attachTo, open, preferredPlacement
36
34
  children,
37
35
  React__default["default"].createElement("div", { ref: setArrowElement, className: classes.arrow, style: popperStyles.arrow })))));
38
36
  }
37
+ const Popover = (props) => (React__default["default"].createElement(ClientOnly.ClientOnly, null,
38
+ React__default["default"].createElement(PopoverInternal, Object.assign({}, props))));
39
39
  function buildModifiers(arrowElement) {
40
40
  const modifiers = [
41
41
  {
@@ -2,10 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var ProgressBar = require('../ProgressBar-b68edc8f.js');
5
+ var ProgressBar = require('../ProgressBar-5c577dc0.js');
6
6
  require('react');
7
7
  require('classnames');
8
- require('../style-inject.es-9d2f5f4e.js');
9
8
 
10
9
 
11
10
 
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var classnames = require('classnames');
5
+
6
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
+
8
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
9
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
10
+
11
+ var styles = {"ProgressBar":"S1cioqW7loo-","SteppedProgressBar":"nv5fejwjHzo-","wrapper":"dyBDsjWCui4-"};
12
+
13
+ var sizes = {"smaller":"CzIxUWYkrdo-","small":"JNSDqHqKVlE-","base":"nzFMJ2k4zJ0-"};
14
+
15
+ function ProgressBarStepped({ currentStep, totalSteps, percentage, size = "base", }) {
16
+ const steppedProgressBarClassName = classnames__default["default"](styles.ProgressBar, styles.SteppedProgressBar, sizes[size]);
17
+ const ariaLabel = `progress, ${currentStep} out of ${totalSteps}`;
18
+ return (React__default["default"].createElement("div", { role: "progressbar", className: styles.wrapper, "aria-valuenow": percentage, "aria-valuetext": ariaLabel }, Array.from({ length: totalSteps }).map((_, index) => {
19
+ const step = index + 1;
20
+ const value = step <= currentStep ? 100 : 0;
21
+ return (React__default["default"].createElement("progress", { key: step, className: steppedProgressBarClassName, value: value, "data-testid": "progress-step" },
22
+ value,
23
+ "%"));
24
+ })));
25
+ }
26
+
27
+ function ProgressBar({ currentStep, totalSteps, size = "base", variation = "progress", }) {
28
+ const percentage = (currentStep / totalSteps) * 100;
29
+ const progressBarClassName = classnames__default["default"](styles.ProgressBar, sizes[size]);
30
+ if (variation === "stepped") {
31
+ return (React__default["default"].createElement(ProgressBarStepped, { currentStep: currentStep, totalSteps: totalSteps, percentage: percentage, size: size }));
32
+ }
33
+ return (React__default["default"].createElement("progress", { className: progressBarClassName, max: totalSteps, value: currentStep },
34
+ percentage,
35
+ "%"));
36
+ }
37
+
38
+ exports.ProgressBar = ProgressBar;