@jobber/components 4.82.0 → 4.83.1

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 (38) hide show
  1. package/dist/Autocomplete/index.js +2 -3
  2. package/dist/Card/index.js +2 -3
  3. package/dist/{Card-0a6f3a28.js → Card-e3144022.js} +2 -2
  4. package/dist/Checkbox/index.js +1 -2
  5. package/dist/{Checkbox-99f6297f.js → Checkbox-787e2e47.js} +1 -2
  6. package/dist/Chips/index.js +3 -4
  7. package/dist/DataDump/index.js +2 -3
  8. package/dist/DataList/index.js +3 -4
  9. package/dist/DataTable/index.js +2 -3
  10. package/dist/FormField/index.js +1 -2
  11. package/dist/{FormField-b4e6c549.js → FormField-6ff183f8.js} +2 -3
  12. package/dist/InputAvatar/index.js +1 -2
  13. package/dist/InputDate/index.js +1 -2
  14. package/dist/InputEmail/index.js +1 -2
  15. package/dist/InputFile/InputFile.d.ts +1 -1
  16. package/dist/InputFile/index.js +1 -2
  17. package/dist/{InputFile-c9eeb04b.js → InputFile-bb945071.js} +4 -2
  18. package/dist/InputNumber/index.js +2 -3
  19. package/dist/{InputNumber-ceae3872.js → InputNumber-d451b52e.js} +1 -1
  20. package/dist/InputPassword/index.js +1 -2
  21. package/dist/InputPhoneNumber/index.js +1 -2
  22. package/dist/InputText/index.js +2 -3
  23. package/dist/{InputText-6c71361e.js → InputText-55b6cb65.js} +1 -1
  24. package/dist/InputTime/index.js +1 -2
  25. package/dist/Menu/index.js +1 -2
  26. package/dist/{Menu-5fc613a1.js → Menu-083fc4c4.js} +2 -3
  27. package/dist/MultiSelect/index.js +1 -2
  28. package/dist/{Option-8565da71.js → Option-3c4d377e.js} +1 -1
  29. package/dist/Page/index.js +1 -2
  30. package/dist/RadioGroup/RadioGroup.d.ts +1 -1
  31. package/dist/RadioGroup/index.js +1 -2
  32. package/dist/{RadioGroup-ca7a5978.js → RadioGroup-17b67ade.js} +2 -3
  33. package/dist/RecurringSelect/components/DayOfMonthSelect.d.ts +2 -2
  34. package/dist/RecurringSelect/components/WeeklySelect.d.ts +2 -2
  35. package/dist/RecurringSelect/index.js +6 -7
  36. package/dist/Select/index.js +2 -3
  37. package/package.json +4 -8
  38. package/rollup.config.js +0 -1
@@ -14,12 +14,11 @@ var useSafeLayoutEffect = require('@jobber/hooks/useSafeLayoutEffect');
14
14
  var Text = require('../Text-259af966.js');
15
15
  var Icon = require('../Icon-405a216c.js');
16
16
  var Heading = require('../Heading-1e8e4bd3.js');
17
- var InputText = require('../InputText-6c71361e.js');
17
+ var InputText = require('../InputText-55b6cb65.js');
18
18
  require('../Typography-c45bf216.js');
19
19
  require('@jobber/design');
20
20
  require('../getAtlantisConfig-0f3e8af2.js');
21
- require('../FormField-b4e6c549.js');
22
- require('uuid');
21
+ require('../FormField-6ff183f8.js');
23
22
  require('react-hook-form');
24
23
  require('@jobber/hooks/useShowClear');
25
24
  require('../Button-b73a5e01.js');
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Card = require('../Card-0a6f3a28.js');
5
+ var Card = require('../Card-e3144022.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('../style-inject.es-9d2f5f4e.js');
@@ -13,8 +13,7 @@ require('../Button-b73a5e01.js');
13
13
  require('react-router-dom');
14
14
  require('../Icon-405a216c.js');
15
15
  require('@jobber/design');
16
- require('../Menu-5fc613a1.js');
17
- require('uuid');
16
+ require('../Menu-083fc4c4.js');
18
17
  require('framer-motion');
19
18
  require('@jobber/hooks/useOnKeyDown');
20
19
  require('@jobber/hooks/useRefocusOnActivator');
@@ -5,14 +5,14 @@ var classnames = require('classnames');
5
5
  var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
6
6
  var Heading = require('./Heading-1e8e4bd3.js');
7
7
  var Button = require('./Button-b73a5e01.js');
8
- var Menu = require('./Menu-5fc613a1.js');
8
+ var Menu = require('./Menu-083fc4c4.js');
9
9
 
10
10
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
11
 
12
12
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
13
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
14
14
 
15
- var css_248z$1 = ":root {\n --card--accent-color: var(--color-grey);\n --card--base-padding: var(--space-base);\n --card--border: var(--border-base) solid var(--color-border);\n --card--header-background: var(--color-surface--background);\n}\n\n._2wxPdv7kELk- {\n display: block;\n width: 100%;\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--card--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._2wxPdv7kELk-:active {\n outline: 0;\n}\n\n:root .jobber-retheme ._2wxPdv7kELk-:not(.tRfpysqqk8s-) {\n --card--header-background: transparent;\n}\n\n/* Adjust `Content` components public padding to match the cards */\n\n._2wxPdv7kELk- > * {\n --public-content--padding: var(--card--base-padding);\n}\n\n/* Remove the nested `Content` components public padding */\n\n._2wxPdv7kELk- > * > * {\n --public-content--padding: 0;\n}\n\n._5LfUFF9DYsk- {\n border-top-width: 0;\n}\n\n.jobber-retheme ._5LfUFF9DYsk- {\n border-top-width: 1px;\n}\n\n._5LfUFF9DYsk-::before {\n content: \" \";\n display: block;\n margin: 0 calc(-1 * (16px / 16));\n margin: 0 calc(-1 * calc(16px / 16));\n margin: 0 calc(-1 * var(--border-base));\n border-top: 0.5rem solid rgb(181, 181, 181);\n border-top: 0.5rem solid var(--card--accent-color);\n border-radius: calc(16px / 8) calc(16px / 8) 0 0;\n border-radius: var(--radius-base) var(--radius-base) 0 0;\n}\n\n.jobber-retheme ._5LfUFF9DYsk-::before {\n display: none;\n}\n\n.tRfpysqqk8s- {\n --card--border: none;\n\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\n box-shadow: var(--shadow-base);\n color: inherit;\n text-decoration: inherit;\n cursor: pointer;\n transition: all 100ms linear;\n transition: all var(--timing-quick) linear;\n}\n\n.tRfpysqqk8s-:hover,\n.tRfpysqqk8s-:focus {\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n}\n\n.fAPeD1InvAI- {\n display: -ms-flexbox;\n display: flex;\n padding: calc(16px * 1);\n padding: var(--card--base-padding);\n background-color: rgb(238, 240, 242);\n background-color: var(--card--header-background);\n -ms-flex-pack: justify;\n justify-content: space-between;\n -ms-flex-align: start;\n align-items: flex-start;\n gap: calc(16px / 2);\n gap: var(--space-small);\n}\n\n.jobber-retheme .fAPeD1InvAI- {\n padding-bottom: 0;\n}\n\n.jobber-retheme .fAPeD1InvAI- h3 {\n font-family: \"Inter\", Helvetica, Arial, sans-serif;\n font-family: var(--typography--fontFamily-normal);\n font-size: calc((16px * 1) * 1.5);\n font-size: calc(calc(16px * 1) * 1.5);\n font-size: var(--typography--fontSize-largest);\n}\n";
15
+ var css_248z$1 = ":root {\n --card--accent-color: var(--color-grey);\n --card--base-padding: var(--space-base);\n --card--border: var(--border-base) solid var(--color-border);\n --card--header-background: var(--color-surface--background);\n}\n\n._2wxPdv7kELk- {\n display: block;\n width: 100%;\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--card--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._2wxPdv7kELk-:active {\n outline: 0;\n}\n\n:root .jobber-retheme ._2wxPdv7kELk-:not(.tRfpysqqk8s-) {\n --card--header-background: transparent;\n}\n\n/* Adjust `Content` components public padding to match the cards */\n\n._2wxPdv7kELk- > * {\n --public-content--padding: var(--card--base-padding);\n}\n\n/* Remove the nested `Content` components public padding */\n\n._2wxPdv7kELk- > * > * {\n --public-content--padding: 0;\n}\n\n._5LfUFF9DYsk- {\n border-top-width: 0;\n}\n\n._5LfUFF9DYsk-::before {\n content: \" \";\n display: block;\n margin: 0 calc(-1 * (16px / 16));\n margin: 0 calc(-1 * calc(16px / 16));\n margin: 0 calc(-1 * var(--border-base));\n border-top: 0.375rem solid rgb(181, 181, 181);\n border-top: 0.375rem solid var(--card--accent-color);\n border-radius: calc(16px / 8) calc(16px / 8) 0 0;\n border-radius: var(--radius-base) var(--radius-base) 0 0;\n}\n\n.tRfpysqqk8s- {\n --card--border: none;\n\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\n box-shadow: var(--shadow-base);\n color: inherit;\n text-decoration: inherit;\n cursor: pointer;\n transition: all 100ms linear;\n transition: all var(--timing-quick) linear;\n}\n\n.tRfpysqqk8s-:hover,\n.tRfpysqqk8s-:focus {\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n}\n\n.fAPeD1InvAI- {\n display: -ms-flexbox;\n display: flex;\n padding: calc(16px * 1);\n padding: var(--card--base-padding);\n background-color: rgb(238, 240, 242);\n background-color: var(--card--header-background);\n -ms-flex-pack: justify;\n justify-content: space-between;\n -ms-flex-align: start;\n align-items: flex-start;\n gap: calc(16px / 2);\n gap: var(--space-small);\n}\n\n.jobber-retheme .fAPeD1InvAI- {\n padding-bottom: 0;\n}\n\n.jobber-retheme .fAPeD1InvAI- h3 {\n font-family: \"Inter\", Helvetica, Arial, sans-serif;\n font-family: var(--typography--fontFamily-normal);\n font-size: calc((16px * 1) * 1.5);\n font-size: calc(calc(16px * 1) * 1.5);\n font-size: var(--typography--fontSize-largest);\n}\n";
16
16
  var styles = {"card":"_2wxPdv7kELk-","clickable":"tRfpysqqk8s-","accent":"_5LfUFF9DYsk-","header":"fAPeD1InvAI-"};
17
17
  styleInject_es.styleInject(css_248z$1);
18
18
 
@@ -2,10 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Checkbox = require('../Checkbox-99f6297f.js');
5
+ var Checkbox = require('../Checkbox-787e2e47.js');
6
6
  require('../tslib.es6-754e2961.js');
7
7
  require('react');
8
- require('uuid');
9
8
  require('classnames');
10
9
  require('react-hook-form');
11
10
  require('../style-inject.es-9d2f5f4e.js');
@@ -2,7 +2,6 @@
2
2
 
3
3
  var tslib_es6 = require('./tslib.es6-754e2961.js');
4
4
  var React = require('react');
5
- var uuid = require('uuid');
6
5
  var classnames = require('classnames');
7
6
  var reactHookForm = require('react-hook-form');
8
7
  var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
@@ -23,7 +22,7 @@ function Checkbox({ checked, defaultChecked, disabled, label, name, value, indet
23
22
  ? reactHookForm.useFormContext()
24
23
  : // If there isn't a Form Context being provided, get a form for this field.
25
24
  reactHookForm.useForm({ mode: "onTouched" });
26
- const [identifier] = React.useState(uuid.v1());
25
+ const [identifier] = React.useState(React.useId());
27
26
  /**
28
27
  * Generate a name if one is not supplied, this is the name
29
28
  * that will be used for react-hook-form and not neccessarily
@@ -10,15 +10,14 @@ var Icon = require('../Icon-405a216c.js');
10
10
  var Avatar = require('../Avatar-76a799fa.js');
11
11
  var Typography = require('../Typography-c45bf216.js');
12
12
  var Tooltip = require('../Tooltip-ef3d6ef4.js');
13
- var uuid = require('uuid');
14
13
  var sortBy = require('lodash/sortBy');
15
14
  var useLiveAnnounce = require('@jobber/hooks/useLiveAnnounce');
16
15
  var debounce = require('lodash/debounce');
16
+ require('@jobber/design');
17
17
  var reactPopper = require('react-popper');
18
18
  var Text = require('../Text-259af966.js');
19
19
  var Button = require('../Button-b73a5e01.js');
20
20
  var Spinner = require('../Spinner-9d8fc7ff.js');
21
- require('@jobber/design');
22
21
  require('color');
23
22
  require('react-dom');
24
23
  require('framer-motion');
@@ -130,7 +129,7 @@ function ChipDismissible({ label, disabled, invalid, prefix, onClick, onRequestR
130
129
  return (React__default["default"].createElement(InternalChip, { label: label, disabled: disabled, invalid: invalid, prefix: prefix, onClick: onClick, suffix: React__default["default"].createElement(InternalChipButton, { icon: "remove", label: label, invalid: invalid, disabled: disabled, onClick: onRequestRemove }) }));
131
130
  }
132
131
 
133
- function InternalChipSingleSelect({ children, selected, name = uuid.v1(), onChange, onClick, }) {
132
+ function InternalChipSingleSelect({ children, selected, name = React.useId(), onChange, onClick, }) {
134
133
  return (React__default["default"].createElement("div", { className: styles$1.wrapper, "data-testid": "singleselect-chips" }, React__default["default"].Children.map(children, child => {
135
134
  const isSelected = child.props.value === selected;
136
135
  return (React__default["default"].createElement("label", null,
@@ -270,9 +269,9 @@ function useInternalChipDismissible({ children, selected, onChange, onClick, onC
270
269
  availableChipOptions });
271
270
  }
272
271
 
273
- const menuId = uuid.v1();
274
272
  // eslint-disable-next-line max-statements
275
273
  function useInternalChipDismissibleInput({ options, isLoadingMore = false, onCustomOptionSelect, onOptionSelect, onSearch, }) {
274
+ const menuId = React.useId();
276
275
  const [allOptions, setAllOptions] = React.useState([]);
277
276
  const [searchValue, setSearchValue] = React.useState("");
278
277
  const [menuOpen, setMenuOpen] = React.useState(false);
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var Card = require('../Card-0a6f3a28.js');
6
+ var Card = require('../Card-e3144022.js');
7
7
  var Content = require('../Content-e3f7b6fc.js');
8
8
  var Emphasis = require('../Emphasis-bda56d3b.js');
9
9
  require('classnames');
@@ -15,8 +15,7 @@ require('../Button-b73a5e01.js');
15
15
  require('react-router-dom');
16
16
  require('../Icon-405a216c.js');
17
17
  require('@jobber/design');
18
- require('../Menu-5fc613a1.js');
19
- require('uuid');
18
+ require('../Menu-083fc4c4.js');
20
19
  require('framer-motion');
21
20
  require('@jobber/hooks/useOnKeyDown');
22
21
  require('@jobber/hooks/useRefocusOnActivator');
@@ -23,26 +23,25 @@ var Icon = require('../Icon-405a216c.js');
23
23
  var FormatDate = require('../FormatDate-70ea5b43.js');
24
24
  var Heading = require('../Heading-1e8e4bd3.js');
25
25
  var ReactDOM = require('react-dom');
26
- var Checkbox = require('../Checkbox-99f6297f.js');
26
+ var Checkbox = require('../Checkbox-787e2e47.js');
27
27
  var reactRouterDom = require('react-router-dom');
28
28
  var AnimatedSwitcher = require('../AnimatedSwitcher-3d45ec5d.js');
29
29
  var Combobox = require('../Combobox-8d91d825.js');
30
30
  var Chip = require('../Chip-3d1bfddc.js');
31
31
  var debounce = require('lodash/debounce');
32
- var InputText = require('../InputText-6c71361e.js');
32
+ var InputText = require('../InputText-55b6cb65.js');
33
33
  var Spinner = require('../Spinner-9d8fc7ff.js');
34
34
  var Typography = require('../Typography-c45bf216.js');
35
35
  require('../Content-e3f7b6fc.js');
36
36
  require('@jobber/hooks/useSafeLayoutEffect');
37
37
  require('react-popper');
38
38
  require('../getAtlantisConfig-0f3e8af2.js');
39
- require('uuid');
40
39
  require('react-hook-form');
41
40
  require('../AnimatedPresence-20a02aaa.js');
42
41
  require('@jobber/hooks/useAssert');
43
42
  require('../Avatar-76a799fa.js');
44
43
  require('color');
45
- require('../FormField-b4e6c549.js');
44
+ require('../FormField-6ff183f8.js');
46
45
  require('@jobber/hooks/useShowClear');
47
46
  require('../InputValidation-05e839fa.js');
48
47
 
@@ -9,12 +9,11 @@ var jobberHooks = require('@jobber/hooks/useResizeObserver');
9
9
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
10
10
  var Glimmer = require('../Glimmer-84dee1ed.js');
11
11
  var tslib_es6 = require('../tslib.es6-754e2961.js');
12
- var Option = require('../Option-8565da71.js');
12
+ var Option = require('../Option-3c4d377e.js');
13
13
  var Button = require('../Button-b73a5e01.js');
14
14
  var Text = require('../Text-259af966.js');
15
15
  require('../Content-e3f7b6fc.js');
16
- require('../FormField-b4e6c549.js');
17
- require('uuid');
16
+ require('../FormField-6ff183f8.js');
18
17
  require('react-hook-form');
19
18
  require('@jobber/hooks/useShowClear');
20
19
  require('../Icon-405a216c.js');
@@ -2,10 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var FormField = require('../FormField-b4e6c549.js');
5
+ var FormField = require('../FormField-6ff183f8.js');
6
6
  require('../tslib.es6-754e2961.js');
7
7
  require('react');
8
- require('uuid');
9
8
  require('react-hook-form');
10
9
  require('../style-inject.es-9d2f5f4e.js');
11
10
  require('classnames');
@@ -2,7 +2,6 @@
2
2
 
3
3
  var tslib_es6 = require('./tslib.es6-754e2961.js');
4
4
  var React = require('react');
5
- var uuid = require('uuid');
6
5
  var reactHookForm = require('react-hook-form');
7
6
  var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
8
7
  var classnames = require('classnames');
@@ -151,8 +150,8 @@ function FormField(props) {
151
150
  ? reactHookForm.useFormContext()
152
151
  : // If there isn't a Form Context being provided, get a form for this field.
153
152
  reactHookForm.useForm({ mode: "onTouched" });
154
- const [identifier] = React.useState(uuid.v1());
155
- const [descriptionIdentifier] = React.useState(`descriptionUUID--${uuid.v1()}`);
153
+ const [identifier] = React.useState(React.useId());
154
+ const [descriptionIdentifier] = React.useState(`descriptionUUID--${React.useId()}`);
156
155
  /**
157
156
  * Generate a name if one is not supplied, this is the name
158
157
  * that will be used for react-hook-form and not neccessarily
@@ -6,7 +6,7 @@ var tslib_es6 = require('../tslib.es6-754e2961.js');
6
6
  var React = require('react');
7
7
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
8
8
  var Avatar = require('../Avatar-76a799fa.js');
9
- var InputFile = require('../InputFile-c9eeb04b.js');
9
+ var InputFile = require('../InputFile-bb945071.js');
10
10
  var ProgressBar = require('../ProgressBar-b68edc8f.js');
11
11
  var Button = require('../Button-b73a5e01.js');
12
12
  require('classnames');
@@ -15,7 +15,6 @@ require('../Icon-405a216c.js');
15
15
  require('@jobber/design');
16
16
  require('react-dropzone');
17
17
  require('axios');
18
- require('uuid');
19
18
  require('../InputValidation-05e839fa.js');
20
19
  require('framer-motion');
21
20
  require('../Text-259af966.js');
@@ -4,10 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var omit = require('lodash/omit');
6
6
  var React = require('react');
7
- var FormField = require('../FormField-b4e6c549.js');
7
+ var FormField = require('../FormField-6ff183f8.js');
8
8
  var DatePicker = require('../DatePicker-64c5ab1a.js');
9
9
  require('../tslib.es6-754e2961.js');
10
- require('uuid');
11
10
  require('react-hook-form');
12
11
  require('../style-inject.es-9d2f5f4e.js');
13
12
  require('classnames');
@@ -3,9 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var FormField = require('../FormField-b4e6c549.js');
6
+ var FormField = require('../FormField-6ff183f8.js');
7
7
  require('../tslib.es6-754e2961.js');
8
- require('uuid');
9
8
  require('react-hook-form');
10
9
  require('../style-inject.es-9d2f5f4e.js');
11
10
  require('classnames');
@@ -39,7 +39,7 @@ export interface UploadParams {
39
39
  readonly url: string;
40
40
  /**
41
41
  * Key to identify file.
42
- * If unspecified a `uuid` will be used.
42
+ * If unspecified a generated Id will be used.
43
43
  */
44
44
  readonly key?: string;
45
45
  /**
@@ -2,13 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InputFile = require('../InputFile-c9eeb04b.js');
5
+ var InputFile = require('../InputFile-bb945071.js');
6
6
  require('../tslib.es6-754e2961.js');
7
7
  require('react');
8
8
  require('classnames');
9
9
  require('react-dropzone');
10
10
  require('axios');
11
- require('uuid');
12
11
  require('../style-inject.es-9d2f5f4e.js');
13
12
  require('../InputValidation-05e839fa.js');
14
13
  require('framer-motion');
@@ -5,7 +5,6 @@ var React = require('react');
5
5
  var classnames = require('classnames');
6
6
  var reactDropzone = require('react-dropzone');
7
7
  var axios = require('axios');
8
- var uuid = require('uuid');
9
8
  var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
10
9
  var InputValidation = require('./InputValidation-05e839fa.js');
11
10
  var Button = require('./Button-b73a5e01.js');
@@ -72,7 +71,7 @@ function InputFile({ variation = "dropzone", size = "base", buttonLabel: provide
72
71
  onUploadError && onUploadError(new Error("Failed to get upload params"));
73
72
  return;
74
73
  }
75
- const { url, key = uuid.v1(), fields = {}, httpMethod = "POST" } = params;
74
+ const { url, key = generateId(), fields = {}, httpMethod = "POST", } = params;
76
75
  const fileUpload = getFileUpload(file, key, url);
77
76
  onUploadStart && onUploadStart(Object.assign({}, fileUpload));
78
77
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -183,6 +182,9 @@ function updateFiles(updatedFile, files) {
183
182
  }
184
183
  return newFiles;
185
184
  }
185
+ function generateId() {
186
+ return Math.floor(Math.random() * Date.now()).toString(16);
187
+ }
186
188
 
187
189
  exports.InputFile = InputFile;
188
190
  exports.updateFiles = updateFiles;
@@ -2,11 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InputNumber = require('../InputNumber-ceae3872.js');
5
+ var InputNumber = require('../InputNumber-d451b52e.js');
6
6
  require('react');
7
- require('../FormField-b4e6c549.js');
7
+ require('../FormField-6ff183f8.js');
8
8
  require('../tslib.es6-754e2961.js');
9
- require('uuid');
10
9
  require('react-hook-form');
11
10
  require('../style-inject.es-9d2f5f4e.js');
12
11
  require('classnames');
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var FormField = require('./FormField-b4e6c549.js');
4
+ var FormField = require('./FormField-6ff183f8.js');
5
5
 
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
7
 
@@ -3,9 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var FormField = require('../FormField-b4e6c549.js');
6
+ var FormField = require('../FormField-6ff183f8.js');
7
7
  require('../tslib.es6-754e2961.js');
8
- require('uuid');
9
8
  require('react-hook-form');
10
9
  require('../style-inject.es-9d2f5f4e.js');
11
10
  require('classnames');
@@ -6,8 +6,7 @@ var tslib_es6 = require('../tslib.es6-754e2961.js');
6
6
  var React = require('react');
7
7
  var reactHookForm = require('react-hook-form');
8
8
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
9
- var FormField = require('../FormField-b4e6c549.js');
10
- require('uuid');
9
+ var FormField = require('../FormField-6ff183f8.js');
11
10
  require('classnames');
12
11
  require('@jobber/hooks/useShowClear');
13
12
  require('../Button-b73a5e01.js');
@@ -2,12 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var InputText = require('../InputText-6c71361e.js');
5
+ var InputText = require('../InputText-55b6cb65.js');
6
6
  require('react');
7
7
  require('@jobber/hooks/useSafeLayoutEffect');
8
- require('../FormField-b4e6c549.js');
8
+ require('../FormField-6ff183f8.js');
9
9
  require('../tslib.es6-754e2961.js');
10
- require('uuid');
11
10
  require('react-hook-form');
12
11
  require('../style-inject.es-9d2f5f4e.js');
13
12
  require('classnames');
@@ -2,7 +2,7 @@
2
2
 
3
3
  var React = require('react');
4
4
  var useSafeLayoutEffect = require('@jobber/hooks/useSafeLayoutEffect');
5
- var FormField = require('./FormField-b4e6c549.js');
5
+ var FormField = require('./FormField-6ff183f8.js');
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -6,8 +6,7 @@ var tslib_es6 = require('../tslib.es6-754e2961.js');
6
6
  var React = require('react');
7
7
  var temporal = require('@std-proposal/temporal');
8
8
  var debounce = require('lodash/debounce');
9
- var FormField = require('../FormField-b4e6c549.js');
10
- require('uuid');
9
+ var FormField = require('../FormField-6ff183f8.js');
11
10
  require('react-hook-form');
12
11
  require('../style-inject.es-9d2f5f4e.js');
13
12
  require('classnames');
@@ -2,9 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Menu = require('../Menu-5fc613a1.js');
5
+ var Menu = require('../Menu-083fc4c4.js');
6
6
  require('react');
7
- require('uuid');
8
7
  require('classnames');
9
8
  require('framer-motion');
10
9
  require('@jobber/hooks/useOnKeyDown');
@@ -1,7 +1,6 @@
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');
@@ -43,8 +42,8 @@ function Menu({ activator, items }) {
43
42
  horizontal: "right",
44
43
  });
45
44
  const wrapperRef = React.createRef();
46
- const buttonID = uuid.v1();
47
- const menuID = uuid.v1();
45
+ const buttonID = React.useId();
46
+ const menuID = React.useId();
48
47
  useOnKeyDown.useOnKeyDown(handleKeyboardShortcut, ["Escape"]);
49
48
  useSafeLayoutEffect.useSafeLayoutEffect(() => {
50
49
  if (wrapperRef.current) {
@@ -5,11 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var classnames = require('classnames');
7
7
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
8
- var Checkbox = require('../Checkbox-99f6297f.js');
8
+ var Checkbox = require('../Checkbox-787e2e47.js');
9
9
  var Text = require('../Text-259af966.js');
10
10
  var Icon = require('../Icon-405a216c.js');
11
11
  require('../tslib.es6-754e2961.js');
12
- require('uuid');
13
12
  require('react-hook-form');
14
13
  require('../Typography-c45bf216.js');
15
14
  require('@jobber/design');
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var FormField = require('./FormField-b4e6c549.js');
4
+ var FormField = require('./FormField-6ff183f8.js');
5
5
 
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
7
 
@@ -11,7 +11,7 @@ var Text = require('../Text-259af966.js');
11
11
  var Content = require('../Content-e3f7b6fc.js');
12
12
  var Markdown = require('../Markdown-f7c55304.js');
13
13
  var Button = require('../Button-b73a5e01.js');
14
- var Menu = require('../Menu-5fc613a1.js');
14
+ var Menu = require('../Menu-083fc4c4.js');
15
15
  var Emphasis = require('../Emphasis-bda56d3b.js');
16
16
  require('../Typography-c45bf216.js');
17
17
  require('../getAtlantisConfig-0f3e8af2.js');
@@ -19,7 +19,6 @@ require('react-markdown');
19
19
  require('react-router-dom');
20
20
  require('../Icon-405a216c.js');
21
21
  require('@jobber/design');
22
- require('uuid');
23
22
  require('framer-motion');
24
23
  require('@jobber/hooks/useOnKeyDown');
25
24
  require('@jobber/hooks/useRefocusOnActivator');
@@ -19,7 +19,7 @@ interface RadioGroupProps {
19
19
  * The name of the radio group, that links the radio options back up
20
20
  * to the group.
21
21
  *
22
- * @default uuid
22
+ * @default useId()
23
23
  */
24
24
  readonly name?: string;
25
25
  }
@@ -2,9 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var RadioGroup = require('../RadioGroup-ca7a5978.js');
5
+ var RadioGroup = require('../RadioGroup-17b67ade.js');
6
6
  require('react');
7
- require('uuid');
8
7
  require('../style-inject.es-9d2f5f4e.js');
9
8
  require('../Text-259af966.js');
10
9
  require('../Typography-c45bf216.js');
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var uuid = require('uuid');
5
4
  var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
6
5
  var Text = require('./Text-259af966.js');
7
6
 
@@ -21,7 +20,7 @@ function RadioOption({ children }) {
21
20
  return React__default["default"].createElement(React__default["default"].Fragment, null, children);
22
21
  }
23
22
  function InternalRadioOption({ value, name, label, description, disabled, checked, children, onChange, }) {
24
- const inputId = `${value.toString()}_${uuid.v1()}`;
23
+ const inputId = `${value.toString()}_${React.useId()}`;
25
24
  const shouldRenderIndependentChildren = label && children;
26
25
  return (React__default["default"].createElement("div", null,
27
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 }),
@@ -34,7 +33,7 @@ function InternalRadioOption({ value, name, label, description, disabled, checke
34
33
  }
35
34
  }
36
35
 
37
- function RadioGroup({ children, value, ariaLabel, onChange, name = uuid.v1(), }) {
36
+ function RadioGroup({ children, value, ariaLabel, onChange, name = React.useId(), }) {
38
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)))));
39
38
  function handleChange(newValue) {
40
39
  if (newValue !== value) {
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import { DayOfMonth } from "../types";
3
3
  interface DayOfMonthSelectProps {
4
- selectedDays: Set<DayOfMonth>;
5
- disabled: boolean;
4
+ readonly selectedDays: Set<DayOfMonth>;
5
+ readonly disabled: boolean;
6
6
  onChange(selectedDays: Set<DayOfMonth>): void;
7
7
  }
8
8
  export declare function DayOfMonthSelect({ selectedDays, disabled, onChange, }: DayOfMonthSelectProps): JSX.Element;
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import { WeekDay } from "../types";
3
3
  interface WeeklySelectProps {
4
- disabled: boolean;
5
- selectedDays: Set<WeekDay>;
4
+ readonly disabled: boolean;
5
+ readonly selectedDays: Set<WeekDay>;
6
6
  onChange(selectedDays: Set<WeekDay>): void;
7
7
  }
8
8
  export declare function WeeklySelect({ onChange, selectedDays, disabled, }: WeeklySelectProps): JSX.Element;
@@ -3,17 +3,16 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var uuid = require('uuid');
7
6
  var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
8
- var RadioGroup = require('../RadioGroup-ca7a5978.js');
7
+ var RadioGroup = require('../RadioGroup-17b67ade.js');
9
8
  var Text = require('../Text-259af966.js');
10
9
  require('classnames');
11
10
  require('../Typography-c45bf216.js');
12
- var Option = require('../Option-8565da71.js');
13
- var InputNumber = require('../InputNumber-ceae3872.js');
11
+ var Option = require('../Option-3c4d377e.js');
12
+ var InputNumber = require('../InputNumber-d451b52e.js');
14
13
  var InputGroup = require('../InputGroup-8d4fd4eb.js');
15
14
  var Content = require('../Content-e3f7b6fc.js');
16
- require('../FormField-b4e6c549.js');
15
+ require('../FormField-6ff183f8.js');
17
16
  require('../tslib.es6-754e2961.js');
18
17
  require('react-hook-form');
19
18
  require('@jobber/hooks/useShowClear');
@@ -99,7 +98,7 @@ function WeeklySelect({ onChange, selectedDays, disabled, }) {
99
98
  };
100
99
  return (React__default["default"].createElement("div", { className: styles$4.container }, weekDays.map(weekDay => {
101
100
  const isSelected = selectedDays.has(weekDay);
102
- const inputId = uuid.v1();
101
+ const inputId = React.useId();
103
102
  return (React__default["default"].createElement("div", { key: `${weekDay}`, className: checkboxStyles.checkboxWrapper },
104
103
  React__default["default"].createElement("input", { className: checkboxStyles.dayCheckboxInput, disabled: disabled, type: "checkbox", onChange: onChangeWeekDays, id: `weekly-select-${weekDay}${inputId}`, "aria-checked": isSelected, checked: isSelected, value: weekDay }),
105
104
  React__default["default"].createElement("label", { className: checkboxStyles.dayCheckbox, htmlFor: `weekly-select-${weekDay}${inputId}` }, `${exports.WeekDay[weekDay].substr(0, 1).toUpperCase()}`)));
@@ -144,7 +143,7 @@ const daysInMonth = [...Array.from({ length: 31 }, (_, i) => i + 1), "LAST"];
144
143
  function DayOfMonthSelect({ selectedDays, disabled, onChange, }) {
145
144
  return (React__default["default"].createElement("div", { className: styles$1.container }, daysInMonth.map(day => {
146
145
  const isSelected = selectedDays.has(day);
147
- const inputId = uuid.v1();
146
+ const inputId = React.useId();
148
147
  return (React__default["default"].createElement("div", { key: `${day}`, className: checkboxStyles.checkboxWrapper },
149
148
  React__default["default"].createElement("input", { className: checkboxStyles.dayCheckboxInput, disabled: disabled, type: "checkbox", id: `${day}-${inputId}`, onChange: handleChangeDayOfMonth, "aria-checked": isSelected, checked: isSelected, value: day }),
150
149
  React__default["default"].createElement("label", { className: checkboxStyles.dayCheckbox, htmlFor: `${day}-${inputId}` }, `${day === "LAST" ? "Last day" : day}`)));
@@ -2,11 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Option = require('../Option-8565da71.js');
5
+ var Option = require('../Option-3c4d377e.js');
6
6
  require('react');
7
- require('../FormField-b4e6c549.js');
7
+ require('../FormField-6ff183f8.js');
8
8
  require('../tslib.es6-754e2961.js');
9
- require('uuid');
10
9
  require('react-hook-form');
11
10
  require('../style-inject.es-9d2f5f4e.js');
12
11
  require('classnames');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobber/components",
3
- "version": "4.82.0",
3
+ "version": "4.83.1",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -30,7 +30,6 @@
30
30
  "@types/react-datepicker": "^4.8.0",
31
31
  "@types/react-router": "5.1.7",
32
32
  "@types/react-router-dom": "^5.3.3",
33
- "@types/uuid": "^8.3.3",
34
33
  "axios": "^1.6.0",
35
34
  "classnames": "^2.3.2",
36
35
  "color": "^3.1.2",
@@ -45,8 +44,7 @@
45
44
  "react-popper": "^2.2.5",
46
45
  "react-router-dom": "^5.3.4",
47
46
  "time-input-polyfill": "^1.0.7",
48
- "ts-xor": "^1.0.8",
49
- "uuid": "^8.3.2"
47
+ "ts-xor": "^1.0.8"
50
48
  },
51
49
  "devDependencies": {
52
50
  "@csstools/postcss-global-data": "^1.0.3",
@@ -59,7 +57,6 @@
59
57
  "@types/glob": "^7.1.1",
60
58
  "@types/react": "^18.0.28",
61
59
  "@types/react-dom": "^18.0.11",
62
- "@types/uuid": "^8.3.3",
63
60
  "autoprefixer": "^9.5.1",
64
61
  "copyfiles": "^2.4.1",
65
62
  "glob": "^7.1.4",
@@ -72,8 +69,7 @@
72
69
  "rollup-plugin-multi-input": "^1.4.1",
73
70
  "rollup-plugin-postcss": "^4.0.2",
74
71
  "typed-css-modules": "^0.7.0",
75
- "typescript": "^4.9.5",
76
- "uuid": "^8.3.2"
72
+ "typescript": "^4.9.5"
77
73
  },
78
74
  "peerDependencies": {
79
75
  "react": "^18",
@@ -84,5 +80,5 @@
84
80
  "> 1%",
85
81
  "IE 10"
86
82
  ],
87
- "gitHead": "bf5b6cde630252682d7baf2fc37dec05413337a7"
83
+ "gitHead": "5ebb2fea86c304b68e2535baeae62b65854604fe"
88
84
  }
package/rollup.config.js CHANGED
@@ -117,7 +117,6 @@ export default {
117
117
  "color",
118
118
  "framer-motion",
119
119
  "classnames",
120
- "uuid",
121
120
  new RegExp("lodash/.*"),
122
121
  "@std-proposal/temporal",
123
122
  "@jobber/design",