@wistia/ui 0.8.3-beta.e5caab02.ee46837 → 0.8.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.cjs +112 -88
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.mjs +71 -47
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.8.3
|
|
3
|
+
* @license @wistia/ui v0.8.3
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -9141,7 +9141,6 @@ var import_type_guards31 = require("@wistia/type-guards");
|
|
|
9141
9141
|
// src/css/sharedStyles/inputCssVariables.ts
|
|
9142
9142
|
var import_styled_components45 = require("styled-components");
|
|
9143
9143
|
var inputCssVariables = import_styled_components45.css`
|
|
9144
|
-
/* Colors */
|
|
9145
9144
|
--wui-input-color-bg: var(--wui-color-bg-surface);
|
|
9146
9145
|
--wui-input-color-bg-disabled: var(--wui-color-bg-surface-disabled);
|
|
9147
9146
|
--wui-input-color-border: var(--wui-color-border-secondary);
|
|
@@ -9149,20 +9148,13 @@ var inputCssVariables = import_styled_components45.css`
|
|
|
9149
9148
|
--wui-input-color-border-error: var(--wui-color-invalid-indicator);
|
|
9150
9149
|
--wui-input-color-border-disabled: var(--wui-color-border-disabled);
|
|
9151
9150
|
--wui-input-color-text: var(--wui-color-text);
|
|
9152
|
-
|
|
9153
|
-
/* Border */
|
|
9154
9151
|
--wui-input-border-radius: var(--wui-border-radius-03);
|
|
9155
9152
|
--wui-input-multiline-border-radius: var(--wui-border-radius-02);
|
|
9156
|
-
|
|
9157
|
-
/* Padding */
|
|
9158
9153
|
--wui-input-vertical-padding: var(--wui-space-02);
|
|
9159
9154
|
--wui-input-horizontal-padding: var(--wui-space-03);
|
|
9160
|
-
|
|
9161
|
-
/* Typography */
|
|
9162
9155
|
--wui-input-placeholder: var(--wui-gray-10);
|
|
9163
9156
|
--wui-input-font-size: var(--wui-typography-body-3-size);
|
|
9164
9157
|
--wui-input-line-height: 16px;
|
|
9165
|
-
--wui-input-font-weight: var(--wui-typography-weight-body);
|
|
9166
9158
|
`;
|
|
9167
9159
|
|
|
9168
9160
|
// src/components/Input/Input.tsx
|
|
@@ -9179,7 +9171,7 @@ var inputStyles = import_styled_components46.css`
|
|
|
9179
9171
|
border-radius: var(--wui-input-border-radius);
|
|
9180
9172
|
font-size: var(--wui-input-font-size);
|
|
9181
9173
|
line-height: var(--wui-input-line-height);
|
|
9182
|
-
font-weight: var(--wui-
|
|
9174
|
+
font-weight: var(--wui-typography-weight-body);
|
|
9183
9175
|
color: var(--wui-input-color-text);
|
|
9184
9176
|
|
|
9185
9177
|
&::placeholder {
|
|
@@ -9349,12 +9341,15 @@ var StyledInput = (0, import_styled_components47.default)(Input)`
|
|
|
9349
9341
|
min-height: unset;
|
|
9350
9342
|
}
|
|
9351
9343
|
|
|
9352
|
-
|
|
9353
|
-
|
|
9354
|
-
|
|
9355
|
-
|
|
9344
|
+
resize: vertical;
|
|
9345
|
+
font-size: var(--wui-typography-heading-1-size);
|
|
9346
|
+
font-weight: var(--wui-typography-heading-1-weight);
|
|
9347
|
+
line-height: var(--wui-typography-heading-1-line-height);
|
|
9348
|
+
font-family: var(--wui-typography-heading-1-family);
|
|
9349
|
+
outline: 2px solid var(--wui-color-focus-ring);
|
|
9350
|
+
outline-offset: -2px;
|
|
9356
9351
|
|
|
9357
|
-
|
|
9352
|
+
&& {
|
|
9358
9353
|
width: 100%;
|
|
9359
9354
|
padding: var(--wui-space-02);
|
|
9360
9355
|
border: none;
|
|
@@ -9385,7 +9380,7 @@ var EditableHeading = ({
|
|
|
9385
9380
|
onEditingChange,
|
|
9386
9381
|
tooltipText = "Click to edit title",
|
|
9387
9382
|
ariaLabel = "Edit title",
|
|
9388
|
-
|
|
9383
|
+
forceEditing = false,
|
|
9389
9384
|
editingDisabled = false
|
|
9390
9385
|
}) => {
|
|
9391
9386
|
const [isEditing, setIsEditing] = (0, import_react29.useState)(false);
|
|
@@ -9438,7 +9433,7 @@ var EditableHeading = ({
|
|
|
9438
9433
|
if (editingDisabled) {
|
|
9439
9434
|
return HeadingComponent2;
|
|
9440
9435
|
}
|
|
9441
|
-
if (isEditing ||
|
|
9436
|
+
if (isEditing || forceEditing) {
|
|
9442
9437
|
return /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
|
|
9443
9438
|
StyledInput,
|
|
9444
9439
|
{
|
|
@@ -11137,47 +11132,42 @@ var Radio = (0, import_react48.forwardRef)(
|
|
|
11137
11132
|
Radio.displayName = "Radio";
|
|
11138
11133
|
|
|
11139
11134
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
11140
|
-
var
|
|
11135
|
+
var import_react52 = require("react");
|
|
11141
11136
|
var import_styled_components68 = __toESM(require("styled-components"));
|
|
11142
11137
|
var import_react_toggle_group = require("@radix-ui/react-toggle-group");
|
|
11143
11138
|
var import_type_guards43 = require("@wistia/type-guards");
|
|
11144
11139
|
|
|
11145
|
-
// src/components/SegmentedControl/
|
|
11140
|
+
// src/components/SegmentedControl/useSelectedItemMeasurements.tsx
|
|
11146
11141
|
var import_react49 = require("react");
|
|
11147
11142
|
var import_jsx_runtime247 = require("react/jsx-runtime");
|
|
11148
|
-
var
|
|
11149
|
-
|
|
11143
|
+
var SelectedItemMeasurementsContext = (0, import_react49.createContext)(
|
|
11144
|
+
null
|
|
11145
|
+
);
|
|
11146
|
+
var SelectedItemMeasurementsProvider = ({
|
|
11150
11147
|
children
|
|
11151
11148
|
}) => {
|
|
11152
11149
|
const [selectedItemMeasurements, setSelectedItemMeasurements] = (0, import_react49.useState)(null);
|
|
11153
|
-
const selectedItemIndicatorStyle = (0, import_react49.useMemo)(
|
|
11154
|
-
() => selectedItemMeasurements != null ? {
|
|
11155
|
-
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
11156
|
-
transform: `translateX(${selectedItemMeasurements.offsetLeft}px) translateY(-50%)`,
|
|
11157
|
-
width: `${selectedItemMeasurements.offsetWidth}px`
|
|
11158
|
-
} : {
|
|
11159
|
-
transform: "translateY(-50%)"
|
|
11160
|
-
},
|
|
11161
|
-
[selectedItemMeasurements]
|
|
11162
|
-
);
|
|
11163
11150
|
const contextValue = (0, import_react49.useMemo)(
|
|
11164
11151
|
() => ({
|
|
11165
11152
|
setSelectedItemMeasurements,
|
|
11166
|
-
|
|
11153
|
+
selectedItemMeasurements
|
|
11167
11154
|
}),
|
|
11168
|
-
[
|
|
11155
|
+
[selectedItemMeasurements]
|
|
11169
11156
|
);
|
|
11170
|
-
return /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
|
|
11157
|
+
return /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(SelectedItemMeasurementsContext.Provider, { value: contextValue, children });
|
|
11171
11158
|
};
|
|
11172
|
-
var
|
|
11173
|
-
const context = (0, import_react49.useContext)(
|
|
11159
|
+
var useSelectedItemMeasurements = () => {
|
|
11160
|
+
const context = (0, import_react49.useContext)(SelectedItemMeasurementsContext);
|
|
11174
11161
|
if (context === null) {
|
|
11175
|
-
throw new Error(
|
|
11162
|
+
throw new Error(
|
|
11163
|
+
"useSelectedItemMeasurements must be used within a SelectedItemMeasurementsProvider"
|
|
11164
|
+
);
|
|
11176
11165
|
}
|
|
11177
11166
|
return context;
|
|
11178
11167
|
};
|
|
11179
11168
|
|
|
11180
11169
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
11170
|
+
var import_react51 = require("react");
|
|
11181
11171
|
var import_styled_components67 = __toESM(require("styled-components"));
|
|
11182
11172
|
|
|
11183
11173
|
// src/components/SegmentedControl/useSegmentedControlValue.tsx
|
|
@@ -11199,7 +11189,7 @@ var SelectedItemIndicatorDiv = import_styled_components67.default.div`
|
|
|
11199
11189
|
border-radius: var(--wui-border-radius-rounded);
|
|
11200
11190
|
left: 0;
|
|
11201
11191
|
position: absolute;
|
|
11202
|
-
top:
|
|
11192
|
+
top: 0;
|
|
11203
11193
|
box-shadow: var(--wui-elevation-01);
|
|
11204
11194
|
transition:
|
|
11205
11195
|
transform var(--wui-motion-duration-02) var(--wui-motion-ease-out),
|
|
@@ -11208,11 +11198,28 @@ var SelectedItemIndicatorDiv = import_styled_components67.default.div`
|
|
|
11208
11198
|
`;
|
|
11209
11199
|
var SelectedItemIndicator = () => {
|
|
11210
11200
|
const selectedValue = useSegmentedControlValue();
|
|
11211
|
-
const {
|
|
11201
|
+
const { selectedItemMeasurements } = useSelectedItemMeasurements();
|
|
11202
|
+
const selectedItemIndicatorStyle = (0, import_react51.useMemo)(
|
|
11203
|
+
() => selectedItemMeasurements != null ? {
|
|
11204
|
+
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
11205
|
+
transform: `translateX(${selectedItemMeasurements.offsetLeft}px)`,
|
|
11206
|
+
width: `${selectedItemMeasurements.offsetWidth}px`
|
|
11207
|
+
} : {},
|
|
11208
|
+
[selectedItemMeasurements]
|
|
11209
|
+
);
|
|
11212
11210
|
if (!selectedValue) {
|
|
11213
11211
|
return null;
|
|
11214
11212
|
}
|
|
11215
|
-
return /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(
|
|
11213
|
+
return /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(
|
|
11214
|
+
SelectedItemIndicatorDiv,
|
|
11215
|
+
{
|
|
11216
|
+
style: {
|
|
11217
|
+
width: selectedItemIndicatorStyle.width,
|
|
11218
|
+
transform: selectedItemIndicatorStyle.transform,
|
|
11219
|
+
height: selectedItemIndicatorStyle.height
|
|
11220
|
+
}
|
|
11221
|
+
}
|
|
11222
|
+
);
|
|
11216
11223
|
};
|
|
11217
11224
|
|
|
11218
11225
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
@@ -11221,17 +11228,16 @@ var segmentedControlStyles = import_styled_components68.css`
|
|
|
11221
11228
|
display: inline-flex;
|
|
11222
11229
|
background-color: var(--wui-color-bg-surface-secondary);
|
|
11223
11230
|
border-radius: var(--wui-border-radius-rounded);
|
|
11231
|
+
border: 2px solid var(--wui-color-bg-surface-secondary);
|
|
11224
11232
|
gap: var(--wui-space-01);
|
|
11225
11233
|
isolation: isolate;
|
|
11226
|
-
overflow: hidden;
|
|
11227
|
-
padding: 2px;
|
|
11228
11234
|
position: relative;
|
|
11229
11235
|
width: ${({ $fullWidth }) => $fullWidth ? "100%" : "auto"};
|
|
11230
11236
|
`;
|
|
11231
11237
|
var StyledSegmentedControl = (0, import_styled_components68.default)(import_react_toggle_group.Root)`
|
|
11232
11238
|
${segmentedControlStyles}
|
|
11233
11239
|
`;
|
|
11234
|
-
var SegmentedControl = (0,
|
|
11240
|
+
var SegmentedControl = (0, import_react52.forwardRef)(
|
|
11235
11241
|
({
|
|
11236
11242
|
children,
|
|
11237
11243
|
disabled = false,
|
|
@@ -11255,7 +11261,7 @@ var SegmentedControl = (0, import_react51.forwardRef)(
|
|
|
11255
11261
|
type: "single",
|
|
11256
11262
|
value: selectedValue,
|
|
11257
11263
|
...props,
|
|
11258
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(SegmentedControlValueProvider, { value: selectedValue, children: /* @__PURE__ */ (0, import_jsx_runtime249.jsxs)(
|
|
11264
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(SegmentedControlValueProvider, { value: selectedValue, children: /* @__PURE__ */ (0, import_jsx_runtime249.jsxs)(SelectedItemMeasurementsProvider, { children: [
|
|
11259
11265
|
/* @__PURE__ */ (0, import_jsx_runtime249.jsx)(SelectedItemIndicator, {}),
|
|
11260
11266
|
children
|
|
11261
11267
|
] }) })
|
|
@@ -11266,7 +11272,7 @@ var SegmentedControl = (0, import_react51.forwardRef)(
|
|
|
11266
11272
|
SegmentedControl.displayName = "SegmentedControl";
|
|
11267
11273
|
|
|
11268
11274
|
// src/components/SegmentedControl/SegmentedControlItem.tsx
|
|
11269
|
-
var
|
|
11275
|
+
var import_react53 = require("react");
|
|
11270
11276
|
var import_styled_components69 = __toESM(require("styled-components"));
|
|
11271
11277
|
var import_react_toggle_group2 = require("@radix-ui/react-toggle-group");
|
|
11272
11278
|
var import_type_guards44 = require("@wistia/type-guards");
|
|
@@ -11334,11 +11340,11 @@ var segmentedControlItemStyles = import_styled_components69.css`
|
|
|
11334
11340
|
var StyledSegmentedControlItem = (0, import_styled_components69.default)(import_react_toggle_group2.Item)`
|
|
11335
11341
|
${segmentedControlItemStyles}
|
|
11336
11342
|
`;
|
|
11337
|
-
var SegmentedControlItem = (0,
|
|
11343
|
+
var SegmentedControlItem = (0, import_react53.forwardRef)(
|
|
11338
11344
|
({ disabled, icon, label, "aria-label": ariaLabel, value }, forwardedRef) => {
|
|
11339
11345
|
const selectedValue = useSegmentedControlValue();
|
|
11340
|
-
const { setSelectedItemMeasurements } =
|
|
11341
|
-
const buttonRef = (0,
|
|
11346
|
+
const { setSelectedItemMeasurements } = useSelectedItemMeasurements();
|
|
11347
|
+
const buttonRef = (0, import_react53.useRef)(null);
|
|
11342
11348
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
11343
11349
|
const handleClick = (event) => {
|
|
11344
11350
|
const target = event.target;
|
|
@@ -11347,7 +11353,7 @@ var SegmentedControlItem = (0, import_react52.forwardRef)(
|
|
|
11347
11353
|
event.preventDefault();
|
|
11348
11354
|
}
|
|
11349
11355
|
};
|
|
11350
|
-
(0,
|
|
11356
|
+
(0, import_react53.useEffect)(() => {
|
|
11351
11357
|
const buttonElem = buttonRef.current;
|
|
11352
11358
|
if (!buttonElem) {
|
|
11353
11359
|
return void 0;
|
|
@@ -11393,7 +11399,7 @@ SegmentedControlItem.displayName = "SegmentedControlItem";
|
|
|
11393
11399
|
|
|
11394
11400
|
// src/components/Select/Select.tsx
|
|
11395
11401
|
var import_react_select = require("@radix-ui/react-select");
|
|
11396
|
-
var
|
|
11402
|
+
var import_react54 = require("react");
|
|
11397
11403
|
var import_styled_components70 = __toESM(require("styled-components"));
|
|
11398
11404
|
var import_jsx_runtime251 = require("react/jsx-runtime");
|
|
11399
11405
|
var StyledTrigger = (0, import_styled_components70.default)(import_react_select.Trigger)`
|
|
@@ -11458,7 +11464,7 @@ var StyledContent3 = (0, import_styled_components70.default)(import_react_select
|
|
|
11458
11464
|
max-height: var(--radix-select-content-available-height);
|
|
11459
11465
|
z-index: var(--wui-zindex-select);
|
|
11460
11466
|
`;
|
|
11461
|
-
var Select = (0,
|
|
11467
|
+
var Select = (0, import_react54.forwardRef)(
|
|
11462
11468
|
({
|
|
11463
11469
|
colorScheme = "inherit",
|
|
11464
11470
|
children,
|
|
@@ -11507,7 +11513,7 @@ Select.displayName = "Select";
|
|
|
11507
11513
|
|
|
11508
11514
|
// src/components/Select/SelectOption.tsx
|
|
11509
11515
|
var import_react_select2 = require("@radix-ui/react-select");
|
|
11510
|
-
var
|
|
11516
|
+
var import_react55 = require("react");
|
|
11511
11517
|
var import_styled_components71 = __toESM(require("styled-components"));
|
|
11512
11518
|
var import_type_guards45 = require("@wistia/type-guards");
|
|
11513
11519
|
var import_jsx_runtime252 = require("react/jsx-runtime");
|
|
@@ -11538,7 +11544,7 @@ var StyledItem = (0, import_styled_components71.default)(import_react_select2.It
|
|
|
11538
11544
|
var StyledIconContainer = import_styled_components71.default.span`
|
|
11539
11545
|
width: 12px;
|
|
11540
11546
|
`;
|
|
11541
|
-
var SelectOption = (0,
|
|
11547
|
+
var SelectOption = (0, import_react55.forwardRef)(
|
|
11542
11548
|
({ children, selectedDisplayValue, ...props }, forwardedRef) => {
|
|
11543
11549
|
return /* @__PURE__ */ (0, import_jsx_runtime252.jsxs)(
|
|
11544
11550
|
StyledItem,
|
|
@@ -11586,7 +11592,7 @@ var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
|
11586
11592
|
};
|
|
11587
11593
|
|
|
11588
11594
|
// src/components/Switch/Switch.tsx
|
|
11589
|
-
var
|
|
11595
|
+
var import_react56 = require("react");
|
|
11590
11596
|
var import_styled_components73 = __toESM(require("styled-components"));
|
|
11591
11597
|
var import_type_guards46 = require("@wistia/type-guards");
|
|
11592
11598
|
var import_jsx_runtime254 = require("react/jsx-runtime");
|
|
@@ -11691,7 +11697,7 @@ var StyledHiddenSwitchInput = import_styled_components73.default.input`
|
|
|
11691
11697
|
}
|
|
11692
11698
|
}
|
|
11693
11699
|
`;
|
|
11694
|
-
var Switch = (0,
|
|
11700
|
+
var Switch = (0, import_react56.forwardRef)(
|
|
11695
11701
|
({
|
|
11696
11702
|
checked,
|
|
11697
11703
|
disabled = false,
|
|
@@ -11706,7 +11712,7 @@ var Switch = (0, import_react55.forwardRef)(
|
|
|
11706
11712
|
hideLabel = false,
|
|
11707
11713
|
...props
|
|
11708
11714
|
}, ref) => {
|
|
11709
|
-
const generatedId = (0,
|
|
11715
|
+
const generatedId = (0, import_react56.useId)();
|
|
11710
11716
|
const computedId = (0, import_type_guards46.isNonEmptyString)(id) ? id : `wistia-ui-switch-${generatedId}`;
|
|
11711
11717
|
return /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(StyledSwitchWrapper, { $disabled: disabled, children: [
|
|
11712
11718
|
/* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
|
|
@@ -11788,8 +11794,8 @@ var Table = ({
|
|
|
11788
11794
|
var import_styled_components75 = __toESM(require("styled-components"));
|
|
11789
11795
|
|
|
11790
11796
|
// src/components/Table/TableSectionContext.ts
|
|
11791
|
-
var
|
|
11792
|
-
var TableSectionContext = (0,
|
|
11797
|
+
var import_react57 = require("react");
|
|
11798
|
+
var TableSectionContext = (0, import_react57.createContext)(null);
|
|
11793
11799
|
|
|
11794
11800
|
// src/components/Table/TableBody.tsx
|
|
11795
11801
|
var import_jsx_runtime256 = require("react/jsx-runtime");
|
|
@@ -11799,7 +11805,7 @@ var TableBody = ({ children, ...props }) => {
|
|
|
11799
11805
|
};
|
|
11800
11806
|
|
|
11801
11807
|
// src/components/Table/TableCell.tsx
|
|
11802
|
-
var
|
|
11808
|
+
var import_react58 = require("react");
|
|
11803
11809
|
var import_styled_components76 = __toESM(require("styled-components"));
|
|
11804
11810
|
var import_jsx_runtime257 = require("react/jsx-runtime");
|
|
11805
11811
|
var sharedStyles = import_styled_components76.css`
|
|
@@ -11820,7 +11826,7 @@ var StyledTd = import_styled_components76.default.td`
|
|
|
11820
11826
|
line-height: var(--wui-typography-body-2-line-height);
|
|
11821
11827
|
`;
|
|
11822
11828
|
var TableCell = ({ children, ...props }) => {
|
|
11823
|
-
const section = (0,
|
|
11829
|
+
const section = (0, import_react58.useContext)(TableSectionContext);
|
|
11824
11830
|
if (section === "head") {
|
|
11825
11831
|
return /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(StyledTh, { ...props, children });
|
|
11826
11832
|
}
|
|
@@ -11852,7 +11858,7 @@ var TableRow = ({ children, ...props }) => {
|
|
|
11852
11858
|
};
|
|
11853
11859
|
|
|
11854
11860
|
// src/components/Tabs/Tabs.tsx
|
|
11855
|
-
var
|
|
11861
|
+
var import_react63 = require("react");
|
|
11856
11862
|
var import_react_tabs4 = require("@radix-ui/react-tabs");
|
|
11857
11863
|
var import_type_guards48 = require("@wistia/type-guards");
|
|
11858
11864
|
var import_styled_components84 = __toESM(require("styled-components"));
|
|
@@ -11907,17 +11913,17 @@ var TabList = ({
|
|
|
11907
11913
|
TabList.displayName = "TabList";
|
|
11908
11914
|
|
|
11909
11915
|
// src/components/Tabs/TabItem.tsx
|
|
11910
|
-
var
|
|
11916
|
+
var import_react60 = require("react");
|
|
11911
11917
|
var import_styled_components82 = __toESM(require("styled-components"));
|
|
11912
11918
|
var import_react_tabs3 = require("@radix-ui/react-tabs");
|
|
11913
11919
|
var import_type_guards47 = require("@wistia/type-guards");
|
|
11914
11920
|
|
|
11915
11921
|
// src/components/Tabs/useTabsValue.tsx
|
|
11916
|
-
var
|
|
11917
|
-
var TabsValueContext = (0,
|
|
11922
|
+
var import_react59 = require("react");
|
|
11923
|
+
var TabsValueContext = (0, import_react59.createContext)(null);
|
|
11918
11924
|
var TabsValueProvider = TabsValueContext.Provider;
|
|
11919
11925
|
var useTabsValue = () => {
|
|
11920
|
-
const context = (0,
|
|
11926
|
+
const context = (0, import_react59.useContext)(TabsValueContext);
|
|
11921
11927
|
if (context === null) {
|
|
11922
11928
|
throw new Error("useTabsValue must be used within a TabsValueProvider");
|
|
11923
11929
|
}
|
|
@@ -11933,13 +11939,13 @@ var StyledTabItem = (0, import_styled_components82.default)(import_react_tabs3.T
|
|
|
11933
11939
|
outline: none;
|
|
11934
11940
|
}
|
|
11935
11941
|
`;
|
|
11936
|
-
var TabItem = (0,
|
|
11942
|
+
var TabItem = (0, import_react60.forwardRef)(
|
|
11937
11943
|
({ disabled = false, icon, label, "aria-label": ariaLabel, value }, forwardedRef) => {
|
|
11938
11944
|
const selectedValue = useTabsValue();
|
|
11939
|
-
const { setSelectedItemMeasurements } =
|
|
11940
|
-
const buttonRef = (0,
|
|
11945
|
+
const { setSelectedItemMeasurements } = useSelectedItemMeasurements();
|
|
11946
|
+
const buttonRef = (0, import_react60.useRef)(null);
|
|
11941
11947
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
11942
|
-
(0,
|
|
11948
|
+
(0, import_react60.useEffect)(() => {
|
|
11943
11949
|
const buttonElem = buttonRef.current;
|
|
11944
11950
|
if (!buttonElem) {
|
|
11945
11951
|
return void 0;
|
|
@@ -11983,16 +11989,16 @@ var TabItem = (0, import_react59.forwardRef)(
|
|
|
11983
11989
|
TabItem.displayName = "TabItem";
|
|
11984
11990
|
|
|
11985
11991
|
// src/components/Tabs/extractTabItems.ts
|
|
11986
|
-
var
|
|
11992
|
+
var import_react61 = require("react");
|
|
11987
11993
|
var extractTabItems = (children) => {
|
|
11988
11994
|
const tabItems = [];
|
|
11989
|
-
|
|
11990
|
-
if (!(0,
|
|
11995
|
+
import_react61.Children.forEach(children, (child) => {
|
|
11996
|
+
if (!(0, import_react61.isValidElement)(child)) {
|
|
11991
11997
|
return;
|
|
11992
11998
|
}
|
|
11993
11999
|
if (typeof child.type !== "string" && child.type.displayName === "Tab") {
|
|
11994
12000
|
tabItems.push(child);
|
|
11995
|
-
} else if (child.type ===
|
|
12001
|
+
} else if (child.type === import_react61.Fragment) {
|
|
11996
12002
|
const fragmentElement = child;
|
|
11997
12003
|
tabItems.push(...extractTabItems(fragmentElement.props.children));
|
|
11998
12004
|
} else if ((child.props.children ?? null) != null) {
|
|
@@ -12005,6 +12011,7 @@ var extractTabItems = (children) => {
|
|
|
12005
12011
|
};
|
|
12006
12012
|
|
|
12007
12013
|
// src/components/Tabs/SelectedItemIndicator.tsx
|
|
12014
|
+
var import_react62 = require("react");
|
|
12008
12015
|
var import_styled_components83 = __toESM(require("styled-components"));
|
|
12009
12016
|
var import_jsx_runtime264 = require("react/jsx-runtime");
|
|
12010
12017
|
var TabsSelectedItemIndicatorDiv = (0, import_styled_components83.default)(SelectedItemIndicatorDiv)`
|
|
@@ -12013,12 +12020,29 @@ var TabsSelectedItemIndicatorDiv = (0, import_styled_components83.default)(Selec
|
|
|
12013
12020
|
}
|
|
12014
12021
|
`;
|
|
12015
12022
|
var SelectedItemIndicator2 = () => {
|
|
12016
|
-
const {
|
|
12023
|
+
const { selectedItemMeasurements } = useSelectedItemMeasurements();
|
|
12017
12024
|
const selectedValue = useTabsValue();
|
|
12025
|
+
const selectedItemIndicatorStyle = (0, import_react62.useMemo)(
|
|
12026
|
+
() => selectedItemMeasurements != null ? {
|
|
12027
|
+
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
12028
|
+
transform: `translateX(${selectedItemMeasurements.offsetLeft}px)`,
|
|
12029
|
+
width: `${selectedItemMeasurements.offsetWidth}px`
|
|
12030
|
+
} : {},
|
|
12031
|
+
[selectedItemMeasurements]
|
|
12032
|
+
);
|
|
12018
12033
|
if (selectedValue == null) {
|
|
12019
12034
|
return null;
|
|
12020
12035
|
}
|
|
12021
|
-
return /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
|
|
12036
|
+
return /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
|
|
12037
|
+
TabsSelectedItemIndicatorDiv,
|
|
12038
|
+
{
|
|
12039
|
+
style: {
|
|
12040
|
+
width: selectedItemIndicatorStyle.width,
|
|
12041
|
+
transform: selectedItemIndicatorStyle.transform,
|
|
12042
|
+
height: selectedItemIndicatorStyle.height
|
|
12043
|
+
}
|
|
12044
|
+
}
|
|
12045
|
+
);
|
|
12022
12046
|
};
|
|
12023
12047
|
|
|
12024
12048
|
// src/components/Tabs/Tabs.tsx
|
|
@@ -12039,7 +12063,7 @@ var StyledTabsRoot = (0, import_styled_components84.default)(import_react_tabs4.
|
|
|
12039
12063
|
flex-direction: column;
|
|
12040
12064
|
height: ${({ $stickyHeaders }) => $stickyHeaders ? "100%" : "auto"};
|
|
12041
12065
|
`;
|
|
12042
|
-
var Tabs = (0,
|
|
12066
|
+
var Tabs = (0, import_react63.forwardRef)(
|
|
12043
12067
|
({
|
|
12044
12068
|
children,
|
|
12045
12069
|
fullWidth = true,
|
|
@@ -12051,7 +12075,7 @@ var Tabs = (0, import_react61.forwardRef)(
|
|
|
12051
12075
|
...props
|
|
12052
12076
|
}, ref) => {
|
|
12053
12077
|
const tabItems = extractTabItems(children);
|
|
12054
|
-
const [internalSelectedValue, setInternalSelectedValue] = (0,
|
|
12078
|
+
const [internalSelectedValue, setInternalSelectedValue] = (0, import_react63.useState)(defaultSelectedValue);
|
|
12055
12079
|
const modeProps = defaultSelectedValue !== void 0 ? {
|
|
12056
12080
|
defaultValue: defaultSelectedValue,
|
|
12057
12081
|
onValueChange: setInternalSelectedValue
|
|
@@ -12065,7 +12089,7 @@ var Tabs = (0, import_react61.forwardRef)(
|
|
|
12065
12089
|
activationMode: "automatic",
|
|
12066
12090
|
...props,
|
|
12067
12091
|
...modeProps,
|
|
12068
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime265.jsx)(TabsValueProvider, { value: currentValue, children: /* @__PURE__ */ (0, import_jsx_runtime265.jsxs)(
|
|
12092
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime265.jsx)(TabsValueProvider, { value: currentValue, children: /* @__PURE__ */ (0, import_jsx_runtime265.jsxs)(SelectedItemMeasurementsProvider, { children: [
|
|
12069
12093
|
/* @__PURE__ */ (0, import_jsx_runtime265.jsxs)(
|
|
12070
12094
|
TabList,
|
|
12071
12095
|
{
|
|
@@ -12137,15 +12161,15 @@ var Tabs = (0, import_react61.forwardRef)(
|
|
|
12137
12161
|
Tabs.displayName = "Tabs";
|
|
12138
12162
|
|
|
12139
12163
|
// src/components/Tabs/Tab.tsx
|
|
12140
|
-
var
|
|
12164
|
+
var import_react64 = require("react");
|
|
12141
12165
|
var import_jsx_runtime266 = require("react/jsx-runtime");
|
|
12142
|
-
var Tab = (0,
|
|
12166
|
+
var Tab = (0, import_react64.forwardRef)(({ children }, ref) => {
|
|
12143
12167
|
return /* @__PURE__ */ (0, import_jsx_runtime266.jsx)("div", { ref, children });
|
|
12144
12168
|
});
|
|
12145
12169
|
Tab.displayName = "Tab";
|
|
12146
12170
|
|
|
12147
12171
|
// src/components/Tag/Tag.tsx
|
|
12148
|
-
var
|
|
12172
|
+
var import_react65 = require("react");
|
|
12149
12173
|
var import_styled_components85 = __toESM(require("styled-components"));
|
|
12150
12174
|
var import_type_guards49 = require("@wistia/type-guards");
|
|
12151
12175
|
var import_jsx_runtime267 = require("react/jsx-runtime");
|
|
@@ -12262,7 +12286,7 @@ var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
|
12262
12286
|
)
|
|
12263
12287
|
] });
|
|
12264
12288
|
};
|
|
12265
|
-
var Tag = (0,
|
|
12289
|
+
var Tag = (0, import_react65.forwardRef)(
|
|
12266
12290
|
({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ...props }, ref) => {
|
|
12267
12291
|
const hasIcon = (0, import_type_guards49.isNotNil)(icon);
|
|
12268
12292
|
const labelProps = (0, import_type_guards49.isNotNil)(href) && (0, import_type_guards49.isNonEmptyString)(href) ? { href, as: "a" } : { as: "span" };
|
|
@@ -12461,7 +12485,7 @@ var ThumbnailBadge = ({ icon, label, ...props }) => {
|
|
|
12461
12485
|
ThumbnailBadge.displayName = "ThumbnailBadge";
|
|
12462
12486
|
|
|
12463
12487
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
12464
|
-
var
|
|
12488
|
+
var import_react66 = require("react");
|
|
12465
12489
|
var import_styled_components89 = __toESM(require("styled-components"));
|
|
12466
12490
|
var import_type_guards53 = require("@wistia/type-guards");
|
|
12467
12491
|
|
|
@@ -12642,7 +12666,7 @@ var StyledThumbnail = import_styled_components89.default.div`
|
|
|
12642
12666
|
position: relative;
|
|
12643
12667
|
width: ${({ $width }) => $width};
|
|
12644
12668
|
`;
|
|
12645
|
-
var Thumbnail = (0,
|
|
12669
|
+
var Thumbnail = (0, import_react66.forwardRef)(
|
|
12646
12670
|
({
|
|
12647
12671
|
gradientBackground = "defaultMidOne",
|
|
12648
12672
|
thumbnailImageType = "square",
|
|
@@ -12678,7 +12702,7 @@ Thumbnail.displayName = "Thumbnail";
|
|
|
12678
12702
|
|
|
12679
12703
|
// src/components/InputClickToCopy/InputClickToCopy.tsx
|
|
12680
12704
|
var import_styled_components90 = __toESM(require("styled-components"));
|
|
12681
|
-
var
|
|
12705
|
+
var import_react67 = require("react");
|
|
12682
12706
|
var import_type_guards54 = require("@wistia/type-guards");
|
|
12683
12707
|
var import_jsx_runtime271 = require("react/jsx-runtime");
|
|
12684
12708
|
var StyledInput2 = (0, import_styled_components90.default)(Input)`
|
|
@@ -12691,10 +12715,10 @@ var StyledInput2 = (0, import_styled_components90.default)(Input)`
|
|
|
12691
12715
|
}
|
|
12692
12716
|
`;
|
|
12693
12717
|
var COPY_SUCCESS_DURATION = 2e3;
|
|
12694
|
-
var InputClickToCopy = (0,
|
|
12718
|
+
var InputClickToCopy = (0, import_react67.forwardRef)(
|
|
12695
12719
|
({ value, onCopy, ...props }, ref) => {
|
|
12696
|
-
const [isCopied, setIsCopied] = (0,
|
|
12697
|
-
(0,
|
|
12720
|
+
const [isCopied, setIsCopied] = (0, import_react67.useState)(false);
|
|
12721
|
+
(0, import_react67.useEffect)(() => {
|
|
12698
12722
|
if (isCopied) {
|
|
12699
12723
|
const timeout = setTimeout(() => {
|
|
12700
12724
|
setIsCopied(false);
|