@wistia/ui 0.14.3-beta.a65ea2b3.ea2330d → 0.14.3

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/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  /*
3
- * @license @wistia/ui v0.14.3-beta.a65ea2b3.ea2330d
3
+ * @license @wistia/ui v0.14.3
4
4
  *
5
5
  * Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
6
6
  *
@@ -9501,7 +9501,7 @@ import styled32 from "styled-components";
9501
9501
  import { Root as RadioGroupRoot } from "@radix-ui/react-radio-group";
9502
9502
 
9503
9503
  // src/components/ColorPicker/ColorPickerContext.tsx
9504
- import { createContext as createContext5, useCallback as useCallback9, useContext as useContext4, useMemo as useMemo8, useState as useState12 } from "react";
9504
+ import { createContext as createContext5, useCallback as useCallback9, useContext as useContext4, useEffect as useEffect10, useMemo as useMemo8, useState as useState12 } from "react";
9505
9505
  import { formatHex as formatHex2 } from "culori/fn";
9506
9506
 
9507
9507
  // src/components/ColorPicker/color-conversion-utils.ts
@@ -9901,7 +9901,6 @@ var ColorPickerProvider = ({
9901
9901
  }) => {
9902
9902
  const [isTransitioning, setIsTransitioning] = useState12(false);
9903
9903
  const [nonDerivedValueAsHsv, setNonDerivedValueAsHsv] = useState12(convertToHsv(valueAsHex));
9904
- const [valueAsHsv, setValueAsHsv] = useState12(convertToHsv(valueAsHex));
9905
9904
  const [shouldEnforceMinContrast, setShouldEnforceMinContrast] = useState12(false);
9906
9905
  const getAccessibleDerivativeColor = useCallback9(
9907
9906
  (originalColor) => getAccessibleColor({
@@ -9912,6 +9911,7 @@ var ColorPickerProvider = ({
9912
9911
  }),
9913
9912
  [colorForComparison, minimumContrastRatio, opacityForContrastCalculation]
9914
9913
  );
9914
+ const valueAsHsv = shouldEnforceMinContrast ? getAccessibleDerivativeColor(nonDerivedValueAsHsv) : nonDerivedValueAsHsv;
9915
9915
  const currentContrastRatio = calculateContrast({
9916
9916
  backgroundColor: valueAsHex,
9917
9917
  foregroundColor: colorForComparison,
@@ -9925,18 +9925,9 @@ var ColorPickerProvider = ({
9925
9925
  opacityForContrastCalculation
9926
9926
  });
9927
9927
  }, [valueAsHex, colorForComparison, minimumContrastRatio, opacityForContrastCalculation]);
9928
- const onChangeNonDerivedValueAsHsv = useCallback9(
9929
- (nonDerivedValue) => {
9930
- const finalValue = shouldEnforceMinContrast ? getAccessibleDerivativeColor(nonDerivedValue) : nonDerivedValue;
9931
- const finalValueAsHex = formatHex2(finalValue);
9932
- if (finalValueAsHex !== valueAsHex) {
9933
- onValueChange(finalValueAsHex);
9934
- }
9935
- setValueAsHsv(finalValue);
9936
- setNonDerivedValueAsHsv(nonDerivedValue);
9937
- },
9938
- [getAccessibleDerivativeColor, onValueChange, shouldEnforceMinContrast, valueAsHex]
9939
- );
9928
+ const onChangeNonDerivedValueAsHsv = useCallback9((nonDerivedValue) => {
9929
+ setNonDerivedValueAsHsv(nonDerivedValue);
9930
+ }, []);
9940
9931
  const changeValueSmoothly = useCallback9(
9941
9932
  (toHsv) => {
9942
9933
  setIsTransitioning(true);
@@ -9946,7 +9937,6 @@ var ColorPickerProvider = ({
9946
9937
  (colorForStepAsHsv) => {
9947
9938
  const hexValue = formatHex2(colorForStepAsHsv);
9948
9939
  onValueChange(hexValue);
9949
- setValueAsHsv(colorForStepAsHsv);
9950
9940
  },
9951
9941
  () => {
9952
9942
  setIsTransitioning(false);
@@ -9972,11 +9962,12 @@ var ColorPickerProvider = ({
9972
9962
  valueAsHsv
9973
9963
  ]
9974
9964
  );
9975
- const whatValueAsHexShouldBe = formatHex2(valueAsHsv);
9976
- if (whatValueAsHexShouldBe !== valueAsHex && !isTransitioning) {
9977
- setValueAsHsv(convertToHsv(valueAsHex));
9978
- setNonDerivedValueAsHsv(convertToHsv(valueAsHex));
9979
- }
9965
+ const whatValuePropShouldBe = shouldEnforceMinContrast ? formatHex2(getAccessibleDerivativeColor(formatHex2(nonDerivedValueAsHsv))) : formatHex2(nonDerivedValueAsHsv);
9966
+ useEffect10(() => {
9967
+ if (valueAsHex !== whatValuePropShouldBe && !isTransitioning) {
9968
+ onValueChange(whatValuePropShouldBe);
9969
+ }
9970
+ }, [valueAsHex, whatValuePropShouldBe, isTransitioning, onValueChange]);
9980
9971
  const contextValue = useMemo8(
9981
9972
  () => ({
9982
9973
  colorForComparison,
@@ -10961,7 +10952,7 @@ var ContrastControls = () => {
10961
10952
  ContrastControls.displayName = "ContrastControls_UI";
10962
10953
 
10963
10954
  // src/components/ColorPicker/HexColorInput.tsx
10964
- import { useCallback as useCallback13, useEffect as useEffect10, useRef as useRef10, useState as useState13 } from "react";
10955
+ import { useCallback as useCallback13, useEffect as useEffect11, useRef as useRef10, useState as useState13 } from "react";
10965
10956
  import { parseHex as parseHex2 } from "culori/fn";
10966
10957
 
10967
10958
  // src/components/Input/Input.tsx
@@ -11297,7 +11288,7 @@ var HexColorInput = ({ autoFocus = true }) => {
11297
11288
  }
11298
11289
  selectAllButTheHash();
11299
11290
  }, [selectAllButTheHash]);
11300
- useEffect10(() => {
11291
+ useEffect11(() => {
11301
11292
  if (!autoFocus) {
11302
11293
  return;
11303
11294
  }
@@ -11308,7 +11299,7 @@ var HexColorInput = ({ autoFocus = true }) => {
11308
11299
  inputElem.focus();
11309
11300
  selectAllButTheHash();
11310
11301
  }, [autoFocus, selectAllButTheHash]);
11311
- useEffect10(() => {
11302
+ useEffect11(() => {
11312
11303
  setTextInputValue(valueAsHex);
11313
11304
  }, [valueAsHex]);
11314
11305
  return /* @__PURE__ */ jsx247(
@@ -11344,7 +11335,7 @@ import styled46 from "styled-components";
11344
11335
  import { formatHex as formatHex6 } from "culori/fn";
11345
11336
 
11346
11337
  // src/components/ColorPicker/HSVHueCanvas.tsx
11347
- import { useEffect as useEffect11, useRef as useRef11 } from "react";
11338
+ import { useEffect as useEffect12, useRef as useRef11 } from "react";
11348
11339
  import styled45 from "styled-components";
11349
11340
  import { formatHex as formatHex5 } from "culori/fn";
11350
11341
  import { jsx as jsx248 } from "react/jsx-runtime";
@@ -11355,7 +11346,7 @@ var Canvas = styled45.canvas`
11355
11346
  `;
11356
11347
  var HSVHueCanvas = ({ hsv }) => {
11357
11348
  const canvasRef = useRef11(null);
11358
- useEffect11(() => {
11349
+ useEffect12(() => {
11359
11350
  const canvas = canvasRef.current;
11360
11351
  if (!canvas) {
11361
11352
  return;
@@ -11475,11 +11466,11 @@ var HueSlider = () => {
11475
11466
  HueSlider.displayName = "HueSlider_UI";
11476
11467
 
11477
11468
  // src/components/ColorPicker/SaturationAndValuePicker.tsx
11478
- import { useCallback as useCallback15, useEffect as useEffect13, useLayoutEffect as useLayoutEffect4, useMemo as useMemo10, useRef as useRef13, useState as useState14 } from "react";
11469
+ import { useCallback as useCallback15, useEffect as useEffect14, useLayoutEffect as useLayoutEffect4, useMemo as useMemo10, useRef as useRef13, useState as useState14 } from "react";
11479
11470
  import styled48 from "styled-components";
11480
11471
 
11481
11472
  // src/components/ColorPicker/HSVSaturationValueCanvas.tsx
11482
- import { useEffect as useEffect12, useRef as useRef12 } from "react";
11473
+ import { useEffect as useEffect13, useRef as useRef12 } from "react";
11483
11474
  import styled47 from "styled-components";
11484
11475
 
11485
11476
  // src/components/ColorPicker/canvas-utils.ts
@@ -11570,7 +11561,7 @@ var HSVSaturationValueCanvas = ({
11570
11561
  opacityForContrastCalculation
11571
11562
  }) => {
11572
11563
  const canvasRef = useRef12(null);
11573
- useEffect12(() => {
11564
+ useEffect13(() => {
11574
11565
  const canvas = canvasRef.current;
11575
11566
  if (!canvas) {
11576
11567
  return;
@@ -11787,7 +11778,7 @@ var SaturationAndValuePicker = ({
11787
11778
  [isDragging, updateSaturationAndValueFromCoordinates]
11788
11779
  );
11789
11780
  const onWindowMouseUp = useCallback15(() => setIsDragging(false), []);
11790
- useEffect13(() => {
11781
+ useEffect14(() => {
11791
11782
  window.addEventListener("mousemove", onWindowMouseMove);
11792
11783
  window.addEventListener("mouseup", onWindowMouseUp);
11793
11784
  return () => {
@@ -11853,7 +11844,7 @@ import {
11853
11844
  useRef as useRef14,
11854
11845
  useState as useState15,
11855
11846
  useTransition,
11856
- useEffect as useEffect14,
11847
+ useEffect as useEffect15,
11857
11848
  Children as Children5,
11858
11849
  isValidElement as isValidElement2
11859
11850
  } from "react";
@@ -12168,7 +12159,7 @@ var Combobox2 = ({
12168
12159
  const [wrapperWidth, setWrapperWidth] = useState15("auto");
12169
12160
  const comboboxWrapperRef = useRef14(null);
12170
12161
  const options = useMemo11(() => extractOptions(children), [children]);
12171
- useEffect14(() => {
12162
+ useEffect15(() => {
12172
12163
  const comboboxWrapper = comboboxWrapperRef.current;
12173
12164
  if (comboboxWrapper) {
12174
12165
  const updateWidthVariable = () => {
@@ -13066,7 +13057,7 @@ var Grid = makePolymorphic(GridComponent);
13066
13057
 
13067
13058
  // src/components/InputClickToCopy/InputClickToCopy.tsx
13068
13059
  import styled59 from "styled-components";
13069
- import { forwardRef as forwardRef18, useEffect as useEffect15, useState as useState18 } from "react";
13060
+ import { forwardRef as forwardRef18, useEffect as useEffect16, useState as useState18 } from "react";
13070
13061
  import { isFunction as isFunction3 } from "@wistia/type-guards";
13071
13062
  import { jsx as jsx264 } from "react/jsx-runtime";
13072
13063
  var StyledInput2 = styled59(Input)`
@@ -13082,7 +13073,7 @@ var COPY_SUCCESS_DURATION = 2e3;
13082
13073
  var InputClickToCopy = forwardRef18(
13083
13074
  ({ value, onCopy, ...props }, ref) => {
13084
13075
  const [isCopied, setIsCopied] = useState18(false);
13085
- useEffect15(() => {
13076
+ useEffect16(() => {
13086
13077
  if (isCopied) {
13087
13078
  const timeout = setTimeout(() => {
13088
13079
  setIsCopied(false);
@@ -14140,14 +14131,14 @@ import styled70, { css as css35, keyframes as keyframes4 } from "styled-componen
14140
14131
  import { Content as DialogContent } from "@radix-ui/react-dialog";
14141
14132
 
14142
14133
  // src/private/hooks/useFocusRestore/useFocusRestore.ts
14143
- import { useRef as useRef18, useEffect as useEffect16 } from "react";
14134
+ import { useRef as useRef18, useEffect as useEffect17 } from "react";
14144
14135
  import { isNotNil as isNotNil28 } from "@wistia/type-guards";
14145
14136
  var useFocusRestore = () => {
14146
14137
  const previouslyFocusedRef = useRef18(null);
14147
- useEffect16(() => {
14138
+ useEffect17(() => {
14148
14139
  previouslyFocusedRef.current = document.activeElement;
14149
14140
  }, []);
14150
- useEffect16(() => {
14141
+ useEffect17(() => {
14151
14142
  return () => {
14152
14143
  if (isNotNil28(previouslyFocusedRef.current)) {
14153
14144
  setTimeout(() => {
@@ -15273,7 +15264,7 @@ var SegmentedControl = forwardRef29(
15273
15264
  SegmentedControl.displayName = "SegmentedControl_UI";
15274
15265
 
15275
15266
  // src/components/SegmentedControl/SegmentedControlItem.tsx
15276
- import { forwardRef as forwardRef30, useEffect as useEffect17, useRef as useRef19 } from "react";
15267
+ import { forwardRef as forwardRef30, useEffect as useEffect18, useRef as useRef19 } from "react";
15277
15268
  import styled82, { css as css42 } from "styled-components";
15278
15269
  import { Item as ToggleGroupItem2 } from "@radix-ui/react-toggle-group";
15279
15270
  import { isNotNil as isNotNil33 } from "@wistia/type-guards";
@@ -15361,7 +15352,7 @@ var SegmentedControlItem = forwardRef30(
15361
15352
  event.preventDefault();
15362
15353
  }
15363
15354
  };
15364
- useEffect17(() => {
15355
+ useEffect18(() => {
15365
15356
  const buttonElem = buttonRef.current;
15366
15357
  if (!buttonElem) {
15367
15358
  return void 0;
@@ -15963,7 +15954,7 @@ var TabsList = ({ children, fullWidth = true, ...props }) => {
15963
15954
  TabsList.displayName = "TabsList_UI";
15964
15955
 
15965
15956
  // src/components/Tabs/TabsTrigger.tsx
15966
- import { forwardRef as forwardRef33, useEffect as useEffect18, useRef as useRef20 } from "react";
15957
+ import { forwardRef as forwardRef33, useEffect as useEffect19, useRef as useRef20 } from "react";
15967
15958
  import { isNotNil as isNotNil36 } from "@wistia/type-guards";
15968
15959
 
15969
15960
  // src/components/Tabs/StyledRadixTabsTrigger.tsx
@@ -15985,7 +15976,7 @@ var TabsTrigger = forwardRef33(
15985
15976
  const { setSelectedItemMeasurements } = useSelectedItemStyle();
15986
15977
  const buttonRef = useRef20(null);
15987
15978
  const combinedRef = mergeRefs([buttonRef, forwardedRef]);
15988
- useEffect18(() => {
15979
+ useEffect19(() => {
15989
15980
  const buttonElem = buttonRef.current;
15990
15981
  if (!buttonElem) {
15991
15982
  return void 0;
@@ -16788,7 +16779,7 @@ var InputPassword = forwardRef35(
16788
16779
  InputPassword.displayName = "InputPassword_UI";
16789
16780
 
16790
16781
  // src/components/ContextMenu/ContextMenu.tsx
16791
- import { useEffect as useEffect19, useState as useState24 } from "react";
16782
+ import { useEffect as useEffect20, useState as useState24 } from "react";
16792
16783
  import { isNil as isNil18, isNotNil as isNotNil42 } from "@wistia/type-guards";
16793
16784
  import { jsx as jsx313 } from "react/jsx-runtime";
16794
16785
  var ContextMenu = ({
@@ -16799,7 +16790,7 @@ var ContextMenu = ({
16799
16790
  }) => {
16800
16791
  const [isRightClicked, setIsRightClicked] = useState24(false);
16801
16792
  const [menuPosition, setMenuPosition] = useState24(position ?? { x: 0, y: 0 });
16802
- useEffect19(() => {
16793
+ useEffect20(() => {
16803
16794
  if (isNil18(position)) {
16804
16795
  const onContextMenu = (event) => {
16805
16796
  event.preventDefault();