@jobber/components 6.75.0 → 6.75.2-CLEANUPdo-4d1825e.4

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.
@@ -3,7 +3,7 @@
3
3
  var Autocomplete = require('../Autocomplete-cjs.js');
4
4
  require('../tslib.es6-cjs.js');
5
5
  require('react');
6
- require('@jobber/hooks');
6
+ require('../useDebounce-cjs.js');
7
7
  require('classnames');
8
8
  require('../useIsMounted-cjs.js');
9
9
  require('../useSafeLayoutEffect-cjs.js');
@@ -1,7 +1,7 @@
1
1
  export { A as Autocomplete, d as BaseAutocompleteMenuWrapper, a as BaseMenuGroupOption, B as BaseMenuOption, K as KeyboardAction, M as MenuOption, g as getRequestedIndexChange, f as isOptionGroup, i as isOptionSelected, e as useAutocompleteMenu, b as useCustomKeyboardNavigation, u as useKeyboardNavigation, c as useRepositionMenu } from '../Autocomplete-es.js';
2
2
  import '../tslib.es6-es.js';
3
3
  import 'react';
4
- import '@jobber/hooks';
4
+ import '../useDebounce-es.js';
5
5
  import 'classnames';
6
6
  import '../useIsMounted-es.js';
7
7
  import '../useSafeLayoutEffect-es.js';
@@ -2,7 +2,7 @@
2
2
 
3
3
  var tslib_es6 = require('./tslib.es6-cjs.js');
4
4
  var React = require('react');
5
- var hooks = require('@jobber/hooks');
5
+ var useDebounce = require('./useDebounce-cjs.js');
6
6
  var classnames = require('classnames');
7
7
  var useIsMounted = require('./useIsMounted-cjs.js');
8
8
  var floatingUi_react = require('./floating-ui.react-cjs.js');
@@ -280,7 +280,7 @@ function AutocompleteInternal(_a, ref) {
280
280
  const [inputFocused, setInputFocused] = React.useState(false);
281
281
  const [inputText, setInputText] = React.useState((_b = value === null || value === void 0 ? void 0 : value.label) !== null && _b !== void 0 ? _b : "");
282
282
  const [autocompleteRef, setAutocompleteRef] = React.useState(null);
283
- const delayedSearch = hooks.useDebounce(updateSearch, debounceRate);
283
+ const delayedSearch = useDebounce.useDebounce_2(updateSearch, debounceRate);
284
284
  const inputRef = React.useRef(null);
285
285
  React.useEffect(() => {
286
286
  delayedSearch();
@@ -1,6 +1,6 @@
1
1
  import { _ as __rest, a as __awaiter } from './tslib.es6-es.js';
2
2
  import React__default, { useCallback, useEffect, useState, forwardRef, useMemo, useRef } from 'react';
3
- import { useDebounce } from '@jobber/hooks';
3
+ import { u as useDebounce_2 } from './useDebounce-es.js';
4
4
  import classnames from 'classnames';
5
5
  import { u as useIsMounted_2 } from './useIsMounted-es.js';
6
6
  import { b as useFloating, o as offset, i as flip, q as size, d as autoUpdate, h as FloatingPortal } from './floating-ui.react-es.js';
@@ -278,7 +278,7 @@ function AutocompleteInternal(_a, ref) {
278
278
  const [inputFocused, setInputFocused] = useState(false);
279
279
  const [inputText, setInputText] = useState((_b = value === null || value === void 0 ? void 0 : value.label) !== null && _b !== void 0 ? _b : "");
280
280
  const [autocompleteRef, setAutocompleteRef] = useState(null);
281
- const delayedSearch = useDebounce(updateSearch, debounceRate);
281
+ const delayedSearch = useDebounce_2(updateSearch, debounceRate);
282
282
  const inputRef = useRef(null);
283
283
  useEffect(() => {
284
284
  delayedSearch();
@@ -12,7 +12,7 @@ require('../useOnKeyDown-cjs.js');
12
12
  require('../useFocusTrap-cjs.js');
13
13
  require('../useIsMounted-cjs.js');
14
14
  require('../useSafeLayoutEffect-cjs.js');
15
- require('@jobber/hooks');
15
+ require('../useDebounce-cjs.js');
16
16
  require('../ButtonDismiss-cjs.js');
17
17
  require('../Button-cjs.js');
18
18
  require('react-router-dom');
@@ -10,7 +10,7 @@ import '../useOnKeyDown-es.js';
10
10
  import '../useFocusTrap-es.js';
11
11
  import '../useIsMounted-es.js';
12
12
  import '../useSafeLayoutEffect-es.js';
13
- import '@jobber/hooks';
13
+ import '../useDebounce-es.js';
14
14
  import '../ButtonDismiss-es.js';
15
15
  import '../Button-es.js';
16
16
  import 'react-router-dom';
@@ -7711,6 +7711,7 @@ const InputNumberRebuilt = React.forwardRef((props, ref) => {
7711
7711
  },
7712
7712
  }));
7713
7713
  const { align, description, disabled, error, inline, invalid, placeholder, readonly, showMiniLabel = true, size, minValue, maxValue } = props, ariaNumberFieldProps = tslib_es6.__rest(props, ["align", "description", "disabled", "error", "inline", "invalid", "placeholder", "readonly", "showMiniLabel", "size", "minValue", "maxValue"]);
7714
+ const stringDescription = typeof description === "string";
7714
7715
  return (React.createElement($b91743d66a0ed188$export$63c5fa0b2fdccd2e, Object.assign({}, ariaNumberFieldProps, { className: classnames(styles.container, inline && styles.inline), formatOptions: mergedFormatOptions, isDisabled: disabled, isInvalid: invalid, isReadOnly: readonly, minValue: minValue, maxValue: maxValue, onBlur: e => { var _a; return (_a = props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, e); }, onFocus: e => { var _a; return (_a = props.onFocus) === null || _a === void 0 ? void 0 : _a.call(props, e); }, onChange: handleChange }),
7715
7716
  React.createElement($a049562f99e7db0e$export$eb2fcfdbd7ba97d4, { className: classnames(styles.wrapper, align && styles[align], invalid && styles.invalid, disabled && styles.disabled) },
7716
7717
  React.createElement("div", { className: styles.horizontalWrapper },
@@ -7718,8 +7719,7 @@ const InputNumberRebuilt = React.forwardRef((props, ref) => {
7718
7719
  React.createElement($3985021b0ad6602f$export$f5b8910cec6cf069, { className: styles.input, placeholder: " " // used for CSS minilabel
7719
7720
  , ref: inputRef }),
7720
7721
  React.createElement($01b77f81d0f07f68$export$b04be29aa201d4f5, { className: styles.label }, placeholder)))),
7721
- description && (React.createElement($514c0188e459b4c0$export$5f1af8db9871e1d6, { className: styles.description, elementType: "div", slot: "description" },
7722
- React.createElement(Text.Text, { size: "small", variation: "subdued" }, description))),
7722
+ description && (React.createElement($514c0188e459b4c0$export$5f1af8db9871e1d6, { className: styles.description, elementType: "div", slot: "description" }, stringDescription ? (React.createElement(Text.Text, { size: "small", variation: "subdued" }, description)) : (description))),
7723
7723
  error && (React.createElement($ee014567cb39d3f0$export$f551688fc98f2e09, { className: styles.fieldError },
7724
7724
  React.createElement(Icon.Icon, { color: "critical", name: "alert", size: "small" }),
7725
7725
  React.createElement(Text.Text, { size: "small", variation: "error" }, error)))));
@@ -7709,6 +7709,7 @@ const InputNumberRebuilt = forwardRef((props, ref) => {
7709
7709
  },
7710
7710
  }));
7711
7711
  const { align, description, disabled, error, inline, invalid, placeholder, readonly, showMiniLabel = true, size, minValue, maxValue } = props, ariaNumberFieldProps = __rest(props, ["align", "description", "disabled", "error", "inline", "invalid", "placeholder", "readonly", "showMiniLabel", "size", "minValue", "maxValue"]);
7712
+ const stringDescription = typeof description === "string";
7712
7713
  return (React__default.createElement($b91743d66a0ed188$export$63c5fa0b2fdccd2e, Object.assign({}, ariaNumberFieldProps, { className: classnames(styles.container, inline && styles.inline), formatOptions: mergedFormatOptions, isDisabled: disabled, isInvalid: invalid, isReadOnly: readonly, minValue: minValue, maxValue: maxValue, onBlur: e => { var _a; return (_a = props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, e); }, onFocus: e => { var _a; return (_a = props.onFocus) === null || _a === void 0 ? void 0 : _a.call(props, e); }, onChange: handleChange }),
7713
7714
  React__default.createElement($a049562f99e7db0e$export$eb2fcfdbd7ba97d4, { className: classnames(styles.wrapper, align && styles[align], invalid && styles.invalid, disabled && styles.disabled) },
7714
7715
  React__default.createElement("div", { className: styles.horizontalWrapper },
@@ -7716,8 +7717,7 @@ const InputNumberRebuilt = forwardRef((props, ref) => {
7716
7717
  React__default.createElement($3985021b0ad6602f$export$f5b8910cec6cf069, { className: styles.input, placeholder: " " // used for CSS minilabel
7717
7718
  , ref: inputRef }),
7718
7719
  React__default.createElement($01b77f81d0f07f68$export$b04be29aa201d4f5, { className: styles.label }, placeholder)))),
7719
- description && (React__default.createElement($514c0188e459b4c0$export$5f1af8db9871e1d6, { className: styles.description, elementType: "div", slot: "description" },
7720
- React__default.createElement(Text, { size: "small", variation: "subdued" }, description))),
7720
+ description && (React__default.createElement($514c0188e459b4c0$export$5f1af8db9871e1d6, { className: styles.description, elementType: "div", slot: "description" }, stringDescription ? (React__default.createElement(Text, { size: "small", variation: "subdued" }, description)) : (description))),
7721
7721
  error && (React__default.createElement($ee014567cb39d3f0$export$f551688fc98f2e09, { className: styles.fieldError },
7722
7722
  React__default.createElement(Icon, { color: "critical", name: "alert", size: "small" }),
7723
7723
  React__default.createElement(Text, { size: "small", variation: "error" }, error)))));
@@ -10,7 +10,7 @@ require('../useFocusTrap-cjs.js');
10
10
  require('../useIsMounted-cjs.js');
11
11
  require('../useSafeLayoutEffect-cjs.js');
12
12
  require('classnames');
13
- require('@jobber/hooks');
13
+ require('../useDebounce-cjs.js');
14
14
  require('../ButtonDismiss-cjs.js');
15
15
  require('../Button-cjs.js');
16
16
  require('react-router-dom');
@@ -8,7 +8,7 @@ import '../useFocusTrap-es.js';
8
8
  import '../useIsMounted-es.js';
9
9
  import '../useSafeLayoutEffect-es.js';
10
10
  import 'classnames';
11
- import '@jobber/hooks';
11
+ import '../useDebounce-es.js';
12
12
  import '../ButtonDismiss-es.js';
13
13
  import '../Button-es.js';
14
14
  import 'react-router-dom';
@@ -8,7 +8,7 @@ var useOnKeyDown = require('./useOnKeyDown-cjs.js');
8
8
  var useFocusTrap = require('./useFocusTrap-cjs.js');
9
9
  var useIsMounted = require('./useIsMounted-cjs.js');
10
10
  var classnames = require('classnames');
11
- var hooks = require('@jobber/hooks');
11
+ var useDebounce = require('./useDebounce-cjs.js');
12
12
  var ButtonDismiss = require('./ButtonDismiss-cjs.js');
13
13
  var Text = require('./Text-cjs.js');
14
14
  var Button = require('./Button-cjs.js');
@@ -109,12 +109,12 @@ function LightBox({ boxSizing = "content-box", open, images, imageIndex = 0, onR
109
109
  const [mouseIsStationary, setMouseIsStationary] = React.useState(true);
110
110
  const lightboxRef = useFocusTrap.useFocusTrap_2(open);
111
111
  const selectedThumbnailRef = React.useRef(null);
112
- const debouncedHandleNext = hooks.useDebounce(handleMoveNext, BUTTON_DEBOUNCE_DELAY);
113
- const debouncedHandlePrevious = hooks.useDebounce(handleMovePrevious, BUTTON_DEBOUNCE_DELAY);
112
+ const debouncedHandleNext = useDebounce.useDebounce_2(handleMoveNext, BUTTON_DEBOUNCE_DELAY);
113
+ const debouncedHandlePrevious = useDebounce.useDebounce_2(handleMovePrevious, BUTTON_DEBOUNCE_DELAY);
114
114
  const mounted = useIsMounted.useIsMounted_2();
115
115
  const prevOpen = React.useRef(open);
116
116
  useRefocusOnActivator.useRefocusOnActivator_2(open);
117
- const handleMouseMovement = hooks.useDebounce(() => {
117
+ const handleMouseMovement = useDebounce.useDebounce_2(() => {
118
118
  setMouseIsStationary(true);
119
119
  }, MOVEMENT_DEBOUNCE_DELAY);
120
120
  useOnKeyDown.useOnKeyDown_2(handleRequestClose, "Escape");
@@ -6,7 +6,7 @@ import { u as useOnKeyDown_2 } from './useOnKeyDown-es.js';
6
6
  import { u as useFocusTrap_2 } from './useFocusTrap-es.js';
7
7
  import { u as useIsMounted_2 } from './useIsMounted-es.js';
8
8
  import classnames from 'classnames';
9
- import { useDebounce } from '@jobber/hooks';
9
+ import { u as useDebounce_2 } from './useDebounce-es.js';
10
10
  import { B as ButtonDismiss } from './ButtonDismiss-es.js';
11
11
  import { T as Text } from './Text-es.js';
12
12
  import { B as Button } from './Button-es.js';
@@ -107,12 +107,12 @@ function LightBox({ boxSizing = "content-box", open, images, imageIndex = 0, onR
107
107
  const [mouseIsStationary, setMouseIsStationary] = useState(true);
108
108
  const lightboxRef = useFocusTrap_2(open);
109
109
  const selectedThumbnailRef = useRef(null);
110
- const debouncedHandleNext = useDebounce(handleMoveNext, BUTTON_DEBOUNCE_DELAY);
111
- const debouncedHandlePrevious = useDebounce(handleMovePrevious, BUTTON_DEBOUNCE_DELAY);
110
+ const debouncedHandleNext = useDebounce_2(handleMoveNext, BUTTON_DEBOUNCE_DELAY);
111
+ const debouncedHandlePrevious = useDebounce_2(handleMovePrevious, BUTTON_DEBOUNCE_DELAY);
112
112
  const mounted = useIsMounted_2();
113
113
  const prevOpen = useRef(open);
114
114
  useRefocusOnActivator_2(open);
115
- const handleMouseMovement = useDebounce(() => {
115
+ const handleMouseMovement = useDebounce_2(() => {
116
116
  setMouseIsStationary(true);
117
117
  }, MOVEMENT_DEBOUNCE_DELAY);
118
118
  useOnKeyDown_2(handleRequestClose, "Escape");
package/dist/index.cjs CHANGED
@@ -110,7 +110,7 @@ require('./keysIn-cjs.js');
110
110
  require('./_isIterateeCall-cjs.js');
111
111
  require('./_setToString-cjs.js');
112
112
  require('./tslib.es6-cjs.js');
113
- require('@jobber/hooks');
113
+ require('./useDebounce-cjs.js');
114
114
  require('./floating-ui.react-cjs.js');
115
115
  require('react-dom');
116
116
  require('./useOnKeyDown-cjs.js');
@@ -141,7 +141,6 @@ require('./constants-cjs.js');
141
141
  require('./ComboboxAction-cjs.js');
142
142
  require('./ComboboxTrigger-cjs.js');
143
143
  require('./noop-cjs.js');
144
- require('./useDebounce-cjs.js');
145
144
  require('./ComboboxActivator-cjs.js');
146
145
  require('./index-cjs.js');
147
146
  require('./DataList.module-cjs.js');
package/dist/index.mjs CHANGED
@@ -108,7 +108,7 @@ import './keysIn-es.js';
108
108
  import './_isIterateeCall-es.js';
109
109
  import './_setToString-es.js';
110
110
  import './tslib.es6-es.js';
111
- import '@jobber/hooks';
111
+ import './useDebounce-es.js';
112
112
  import './floating-ui.react-es.js';
113
113
  import 'react-dom';
114
114
  import './useOnKeyDown-es.js';
@@ -139,7 +139,6 @@ import './constants-es.js';
139
139
  import './ComboboxAction-es.js';
140
140
  import './ComboboxTrigger-es.js';
141
141
  import './noop-es.js';
142
- import './useDebounce-es.js';
143
142
  import './ComboboxActivator-es.js';
144
143
  import './index-es.js';
145
144
  import './DataList.module-es.js';
@@ -1075,7 +1075,17 @@ var polyfilled = useResizeObserver$1;
1075
1075
  width: undefined,
1076
1076
  height: undefined,
1077
1077
  });
1078
- const onResize = (0, react_1.useMemo)(() => (0, throttle_1.default)(setSize, wait), [wait]);
1078
+ const onResize = (0, react_1.useMemo)(() => {
1079
+ return (0, throttle_1.default)(({ width, height }) => {
1080
+ if (!width || width <= 1) {
1081
+ // Ignore invalid values. ResizeObserver is unexpectedly looping between 1 and the actual
1082
+ // width of the element. This is only happening in playwright chromium.
1083
+ // Soon we need to replace this unmaintained package with a more reliable one.
1084
+ return;
1085
+ }
1086
+ setSize({ width, height });
1087
+ }, wait);
1088
+ }, []);
1079
1089
  const { ref } = (0, polyfilled_1.default)({
1080
1090
  onResize,
1081
1091
  });
@@ -1073,7 +1073,17 @@ var polyfilled = useResizeObserver$1;
1073
1073
  width: undefined,
1074
1074
  height: undefined,
1075
1075
  });
1076
- const onResize = (0, react_1.useMemo)(() => (0, throttle_1$1.default)(setSize, wait), [wait]);
1076
+ const onResize = (0, react_1.useMemo)(() => {
1077
+ return (0, throttle_1$1.default)(({ width, height }) => {
1078
+ if (!width || width <= 1) {
1079
+ // Ignore invalid values. ResizeObserver is unexpectedly looping between 1 and the actual
1080
+ // width of the element. This is only happening in playwright chromium.
1081
+ // Soon we need to replace this unmaintained package with a more reliable one.
1082
+ return;
1083
+ }
1084
+ setSize({ width, height });
1085
+ }, wait);
1086
+ }, []);
1077
1087
  const { ref } = (0, polyfilled_1.default)({
1078
1088
  onResize,
1079
1089
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jobber/components",
3
- "version": "6.75.0",
3
+ "version": "6.75.2-CLEANUPdo-4d1825e.4+4d1825e6",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -542,5 +542,5 @@
542
542
  "> 1%",
543
543
  "IE 10"
544
544
  ],
545
- "gitHead": "5b2a570f0d657e82d04a8d60964242f67da3fab0"
545
+ "gitHead": "4d1825e695f03fa20b1ffd794f44c1cfbc67fe44"
546
546
  }