@livechat/design-system-react-components 1.0.0-alpha.54 → 1.0.0-alpha.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/dsrc.es.js CHANGED
@@ -37,7 +37,7 @@ import * as React from "react";
37
37
  import { useReducer, useRef, useEffect, useCallback, useMemo } from "react";
38
38
  import cx from "clsx";
39
39
  import { useFloating, offset, flip, autoUpdate, arrow } from "@floating-ui/react-dom";
40
- import { Close, Info as Info$1, Warning, CheckCircleSolid, Block, Person, ChevronUp, ChevronDown, Check, DoubleArrowLeft, ChevronLeft, ChevronRight, DoubleArrowRight, VisibilityOn, VisibilityOff, Search, LockBlack, Refresh, Error as Error2 } from "@livechat/design-system-icons/react/material";
40
+ import { Close, Info as Info$1, Warning, CheckCircleSolid, Block, Person, ChevronUp, ChevronDown, DoubleArrowLeft, ChevronLeft, ChevronRight, DoubleArrowRight, VisibilityOn, VisibilityOff, Check, Search, LockBlack, Refresh, Error as Error2 } from "@livechat/design-system-icons/react/material";
41
41
  import debounce from "lodash.debounce";
42
42
  import { getContrast } from "polished";
43
43
  import ReactDayPicker from "react-day-picker";
@@ -350,18 +350,16 @@ const Popover = ({
350
350
  }
351
351
  }
352
352
  const handleHideOnEscape = (event) => {
353
- if (event.key === "Escape") {
353
+ if (closeOnEsc && event.key === "Escape") {
354
354
  setVisibility(false);
355
355
  }
356
356
  };
357
357
  React.useEffect(() => {
358
358
  document.addEventListener("mousedown", handleDocumentClick);
359
- if (closeOnEsc) {
360
- document.addEventListener("keydown", handleHideOnEscape);
361
- }
359
+ document.addEventListener("keydown", handleHideOnEscape);
362
360
  return () => {
363
- document.removeEventListener("keydown", handleHideOnEscape);
364
361
  document.removeEventListener("mousedown", handleDocumentClick);
362
+ document.removeEventListener("keydown", handleHideOnEscape);
365
363
  };
366
364
  }, []);
367
365
  const mergedClassNames = cx(cssStyles["popover"], className, {
@@ -1192,19 +1190,19 @@ const FieldDescription = (_o) => {
1192
1190
  };
1193
1191
  const checkbox = "lc-Checkbox-module__checkbox___G7nTf";
1194
1192
  const checkbox__label = "lc-Checkbox-module__checkbox__label___-o01x";
1195
- const checkbox__square = "lc-Checkbox-module__checkbox__square___MHUyd";
1196
- const checkbox__checkmark = "lc-Checkbox-module__checkbox__checkmark___16pfY";
1197
- const checkbox__input = "lc-Checkbox-module__checkbox__input___YLbVF";
1198
1193
  const checkbox__text = "lc-Checkbox-module__checkbox__text___P2SIq";
1194
+ const checkbox__input = "lc-Checkbox-module__checkbox__input___YLbVF";
1195
+ const checkbox__checkmark = "lc-Checkbox-module__checkbox__checkmark___16pfY";
1196
+ const checkbox__square = "lc-Checkbox-module__checkbox__square___MHUyd";
1199
1197
  const checkbox__helper = "lc-Checkbox-module__checkbox__helper___YSJ-n";
1200
1198
  var styles$u = {
1201
1199
  checkbox,
1202
1200
  checkbox__label,
1203
- checkbox__square,
1201
+ checkbox__text,
1202
+ checkbox__input,
1204
1203
  checkbox__checkmark,
1205
1204
  "checkbox--selected": "lc-Checkbox-module__checkbox--selected___S2vqY",
1206
- checkbox__input,
1207
- checkbox__text,
1205
+ checkbox__square,
1208
1206
  "checkbox--disabled": "lc-Checkbox-module__checkbox--disabled___-lAqW",
1209
1207
  checkbox__helper
1210
1208
  };
@@ -1218,20 +1216,13 @@ const Checkbox = React.forwardRef((_q, ref) => {
1218
1216
  })
1219
1217
  }, /* @__PURE__ */ React.createElement("label", {
1220
1218
  className: styles$u[`${baseClass$D}__label`]
1221
- }, /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("input", __spreadProps(__spreadValues({}, restInputProps), {
1219
+ }, /* @__PURE__ */ React.createElement("input", __spreadProps(__spreadValues({}, restInputProps), {
1222
1220
  ref,
1223
1221
  checked,
1224
1222
  disabled,
1225
1223
  className: styles$u[`${baseClass$D}__input`],
1226
1224
  type: "checkbox"
1227
- })), /* @__PURE__ */ React.createElement("div", {
1228
- className: styles$u[`${baseClass$D}__square`]
1229
- }, /* @__PURE__ */ React.createElement(Icon, {
1230
- source: Check,
1231
- kind: "inverted",
1232
- size: "xsmall",
1233
- className: styles$u[`${baseClass$D}__checkmark`]
1234
- }))), children && /* @__PURE__ */ React.createElement(Text, {
1225
+ })), children && /* @__PURE__ */ React.createElement(Text, {
1235
1226
  as: "div",
1236
1227
  size: "md",
1237
1228
  className: styles$u[`${baseClass$D}__text`]
@@ -1991,6 +1982,7 @@ var styles$n = {
1991
1982
  "input--focused": "lc-Input-module__input--focused___wQH5-",
1992
1983
  "input--disabled": "lc-Input-module__input--disabled___HidXX",
1993
1984
  "input--error": "lc-Input-module__input--error___DlDbC",
1985
+ "input--xsmall": "lc-Input-module__input--xsmall___9u99K",
1994
1986
  "input--compact": "lc-Input-module__input--compact___iKSQZ",
1995
1987
  "input--medium": "lc-Input-module__input--medium___3BjqQ",
1996
1988
  "input--large": "lc-Input-module__input--large___jX5RW",
@@ -2052,7 +2044,7 @@ const Input = React.forwardRef((_A, ref) => {
2052
2044
  type: type && !isPasswordVisible ? type : "text"
2053
2045
  })), shouldRenderRightIcon && renderIcon(icon2, disabled), type === "password" && /* @__PURE__ */ React.createElement(Button, {
2054
2046
  disabled,
2055
- kind: "plain",
2047
+ kind: "subtle",
2056
2048
  icon: /* @__PURE__ */ React.createElement(Icon, {
2057
2049
  customColor: iconCustomColor,
2058
2050
  source: iconSource
@@ -2379,7 +2371,8 @@ const Trigger = ({
2379
2371
  size = "medium",
2380
2372
  hideClearButton,
2381
2373
  onTrigger,
2382
- onClear
2374
+ onClear,
2375
+ testId
2383
2376
  }) => {
2384
2377
  const triggerRef = React.useRef(null);
2385
2378
  const mergedClassNames = cx(styles$j[baseClass$p], styles$j[`${baseClass$p}--${size}`], isMultiSelect && styles$j[`${baseClass$p}--multi-select`], isMultiSelect && isItemSelected && styles$j[`${baseClass$p}--multi-select--with-items`], isDisabled && styles$j[`${baseClass$p}--disabled`], isOpen && styles$j[`${baseClass$p}--focused`], isError && styles$j[`${baseClass$p}--error`]);
@@ -2411,7 +2404,8 @@ const Trigger = ({
2411
2404
  ref: triggerRef,
2412
2405
  className: mergedClassNames,
2413
2406
  onClick: handleTriggerClick,
2414
- tabIndex: 0
2407
+ tabIndex: 0,
2408
+ "data-testid": testId
2415
2409
  }, /* @__PURE__ */ React.createElement("div", {
2416
2410
  className: styles$j[`${baseClass$p}__content`]
2417
2411
  }, children), /* @__PURE__ */ React.createElement("div", {
@@ -2801,6 +2795,7 @@ const Picker = (_M) => {
2801
2795
  type = "single",
2802
2796
  searchDisabled = false,
2803
2797
  hideClearButton,
2798
+ openedOnInit = false,
2804
2799
  onSelect
2805
2800
  } = _N, props = __objRest(_N, [
2806
2801
  "className",
@@ -2817,9 +2812,10 @@ const Picker = (_M) => {
2817
2812
  "type",
2818
2813
  "searchDisabled",
2819
2814
  "hideClearButton",
2815
+ "openedOnInit",
2820
2816
  "onSelect"
2821
2817
  ]);
2822
- const [isListOpen, setIsListOpen] = React.useState(false);
2818
+ const [isListOpen, setIsListOpen] = React.useState(openedOnInit);
2823
2819
  const [searchPhrase, setSearchPhrase] = React.useState(null);
2824
2820
  const triggerRef = React.useRef(null);
2825
2821
  const mergedClassNames = cx(styles$h[baseClass$l], className);
@@ -2910,12 +2906,14 @@ const Picker = (_M) => {
2910
2906
  }
2911
2907
  return selected.map((item) => item.key);
2912
2908
  }, [selected]);
2913
- return /* @__PURE__ */ React.createElement("div", __spreadValues({
2909
+ return /* @__PURE__ */ React.createElement("div", {
2914
2910
  ref: triggerRef,
2915
- className: mergedClassNames
2916
- }, props), /* @__PURE__ */ React.createElement("div", {
2911
+ className: mergedClassNames,
2912
+ id: props.id
2913
+ }, /* @__PURE__ */ React.createElement("div", {
2917
2914
  className: styles$h[`${baseClass$l}__container`]
2918
2915
  }, /* @__PURE__ */ React.createElement(Trigger, {
2916
+ testId: props["data-testid"],
2919
2917
  isSearchDisabled: searchDisabled,
2920
2918
  isError: error,
2921
2919
  isOpen: isListOpen,
@@ -3160,7 +3158,9 @@ const PromoBanner = ({
3160
3158
  className: styles$c[`${baseClass$i}__wrapper`]
3161
3159
  }, /* @__PURE__ */ React.createElement("div", {
3162
3160
  className: styles$c[`${baseClass$i}__header`]
3163
- }, header), /* @__PURE__ */ React.createElement("div", null, children), containerSize !== "large" && footer), containerSize === "large" && footer), onClose && /* @__PURE__ */ React.createElement("button", {
3161
+ }, header), /* @__PURE__ */ React.createElement(Text, {
3162
+ as: "div"
3163
+ }, children), containerSize !== "large" && footer), containerSize === "large" && footer), onClose && /* @__PURE__ */ React.createElement("button", {
3164
3164
  type: "button",
3165
3165
  className: styles$c[`${baseClass$i}__close-icon`],
3166
3166
  onClick: onClose
@@ -3990,6 +3990,7 @@ const Tooltip = (props) => {
3990
3990
  function renderFloatingComponent() {
3991
3991
  if (withFadeAnimation) {
3992
3992
  const enter = css`
3993
+ pointer-events: none;
3993
3994
  opacity: 0;
3994
3995
  `;
3995
3996
  const enterActive = css`
@@ -3998,6 +3999,9 @@ const Tooltip = (props) => {
3998
3999
  transition-duration: ${transitionDuration}ms;
3999
4000
  transition-delay: ${transitionDelay}ms;
4000
4001
  `;
4002
+ const enterDone = css`
4003
+ pointer-events: initial;
4004
+ `;
4001
4005
  const exit = css`
4002
4006
  opacity: 1;
4003
4007
  `;
@@ -4015,6 +4019,7 @@ const Tooltip = (props) => {
4015
4019
  timeout,
4016
4020
  classNames: {
4017
4021
  enter,
4022
+ enterDone,
4018
4023
  enterActive,
4019
4024
  exit,
4020
4025
  exitActive