@wistia/ui 0.10.2-beta.598e86de.5b04018 → 0.10.2
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 +1294 -1663
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +23 -104
- package/dist/index.d.ts +23 -104
- package/dist/index.mjs +1210 -1590
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -4
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
/*
|
|
3
|
-
* @license @wistia/ui v0.10.2
|
|
3
|
+
* @license @wistia/ui v0.10.2
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2024-2025, Wistia, Inc. and its affiliates.
|
|
6
6
|
*
|
|
@@ -8771,653 +8771,12 @@ var CollapsibleContent = ({ clamp, children }) => {
|
|
|
8771
8771
|
] }) });
|
|
8772
8772
|
};
|
|
8773
8773
|
|
|
8774
|
-
// src/components/Combobox/Combobox.tsx
|
|
8775
|
-
import * as Ariakit from "@ariakit/react";
|
|
8776
|
-
import {
|
|
8777
|
-
useMemo as useMemo6,
|
|
8778
|
-
useRef as useRef8,
|
|
8779
|
-
useState as useState10,
|
|
8780
|
-
useTransition,
|
|
8781
|
-
useEffect as useEffect9,
|
|
8782
|
-
Children as Children4,
|
|
8783
|
-
isValidElement as isValidElement2
|
|
8784
|
-
} from "react";
|
|
8785
|
-
import { matchSorter } from "match-sorter";
|
|
8786
|
-
import styled28 from "styled-components";
|
|
8787
|
-
|
|
8788
|
-
// src/components/Tag/Tag.tsx
|
|
8789
|
-
import { forwardRef as forwardRef10 } from "react";
|
|
8790
|
-
import styled26 from "styled-components";
|
|
8791
|
-
import { isNil as isNil12, isNotNil as isNotNil15, isNonEmptyString as isNonEmptyString3 } from "@wistia/type-guards";
|
|
8792
|
-
import { Fragment as Fragment5, jsx as jsx218, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
8793
|
-
var TagLabel = styled26.a`
|
|
8794
|
-
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8795
|
-
font-size: var(--wui-typography-label-4-size);
|
|
8796
|
-
font-weight: var(--wui-typography-label-4-weight);
|
|
8797
|
-
line-height: var(--wui-typography-label-4-line-height);
|
|
8798
|
-
border-radius: var(--wui-border-radius-01);
|
|
8799
|
-
display: flex;
|
|
8800
|
-
align-items: center;
|
|
8801
|
-
color: var(--wui-color-text);
|
|
8802
|
-
text-decoration: none;
|
|
8803
|
-
padding: var(--wui-space-01);
|
|
8804
|
-
gap: var(--wui-space-01);
|
|
8805
|
-
|
|
8806
|
-
svg {
|
|
8807
|
-
height: 12px;
|
|
8808
|
-
width: 12px;
|
|
8809
|
-
}
|
|
8810
|
-
|
|
8811
|
-
:not(:only-child) {
|
|
8812
|
-
padding-right: var(--wui-space-01);
|
|
8813
|
-
}
|
|
8814
|
-
|
|
8815
|
-
:is(a):hover {
|
|
8816
|
-
background: var(--wui-color-bg-surface-secondary-hover);
|
|
8817
|
-
}
|
|
8818
|
-
|
|
8819
|
-
:is(a):active {
|
|
8820
|
-
background: var(--wui-color-bg-surface-secondary-active);
|
|
8821
|
-
}
|
|
8822
|
-
|
|
8823
|
-
:focus-visible {
|
|
8824
|
-
outline: unset;
|
|
8825
|
-
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
8826
|
-
}
|
|
8827
|
-
`;
|
|
8828
|
-
var TagDivider = styled26.div`
|
|
8829
|
-
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8830
|
-
border-left: 1px solid var(--wui-color-border);
|
|
8831
|
-
display: flex;
|
|
8832
|
-
height: 14px;
|
|
8833
|
-
width: 1px;
|
|
8834
|
-
`;
|
|
8835
|
-
var StyledRemoveButton = styled26.button`
|
|
8836
|
-
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8837
|
-
all: unset;
|
|
8838
|
-
cursor: pointer;
|
|
8839
|
-
display: flex;
|
|
8840
|
-
height: 22px;
|
|
8841
|
-
width: 12px;
|
|
8842
|
-
align-items: center;
|
|
8843
|
-
padding: 0 var(--wui-space-01);
|
|
8844
|
-
border-radius: var(--wui-border-radius-01);
|
|
8845
|
-
|
|
8846
|
-
svg path {
|
|
8847
|
-
fill: var(--wui-color-icon);
|
|
8848
|
-
}
|
|
8849
|
-
|
|
8850
|
-
:hover {
|
|
8851
|
-
background: var(--wui-color-bg-surface-secondary-hover);
|
|
8852
|
-
}
|
|
8853
|
-
|
|
8854
|
-
:active {
|
|
8855
|
-
background: var(--wui-color-bg-surface-secondary-active);
|
|
8856
|
-
}
|
|
8857
|
-
|
|
8858
|
-
:focus-visible {
|
|
8859
|
-
outline: unset;
|
|
8860
|
-
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
8861
|
-
}
|
|
8862
|
-
`;
|
|
8863
|
-
var StyledTag = styled26.div`
|
|
8864
|
-
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8865
|
-
align-items: center;
|
|
8866
|
-
background-color: var(--wui-color-bg-surface-secondary);
|
|
8867
|
-
border-radius: var(--wui-border-radius-01);
|
|
8868
|
-
display: inline-flex;
|
|
8869
|
-
overflow: hidden;
|
|
8870
|
-
|
|
8871
|
-
> * {
|
|
8872
|
-
transition: background var(--wui-duration-01) var(--wui-motion-ease);
|
|
8873
|
-
}
|
|
8874
|
-
`;
|
|
8875
|
-
var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
8876
|
-
if (isNil12(onClickRemove)) {
|
|
8877
|
-
return null;
|
|
8878
|
-
}
|
|
8879
|
-
if (isNil12(onClickRemoveLabel)) {
|
|
8880
|
-
throw new Error(
|
|
8881
|
-
"for accessibility, onClickRemoveLabel must be provided if onClickRemove is provided"
|
|
8882
|
-
);
|
|
8883
|
-
}
|
|
8884
|
-
return /* @__PURE__ */ jsxs18(Fragment5, { children: [
|
|
8885
|
-
/* @__PURE__ */ jsx218(TagDivider, { $colorScheme: colorScheme }),
|
|
8886
|
-
/* @__PURE__ */ jsxs18(
|
|
8887
|
-
StyledRemoveButton,
|
|
8888
|
-
{
|
|
8889
|
-
$colorScheme: colorScheme,
|
|
8890
|
-
onClick: onClickRemove,
|
|
8891
|
-
type: "button",
|
|
8892
|
-
children: [
|
|
8893
|
-
/* @__PURE__ */ jsx218(
|
|
8894
|
-
Icon,
|
|
8895
|
-
{
|
|
8896
|
-
size: "sm",
|
|
8897
|
-
type: "close"
|
|
8898
|
-
}
|
|
8899
|
-
),
|
|
8900
|
-
/* @__PURE__ */ jsx218(ScreenReaderOnly, { children: onClickRemoveLabel })
|
|
8901
|
-
]
|
|
8902
|
-
}
|
|
8903
|
-
)
|
|
8904
|
-
] });
|
|
8905
|
-
};
|
|
8906
|
-
var Tag = forwardRef10(
|
|
8907
|
-
({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ...props }, ref) => {
|
|
8908
|
-
const hasIcon = isNotNil15(icon);
|
|
8909
|
-
const labelProps = isNotNil15(href) && isNonEmptyString3(href) ? { href, as: "a" } : { as: "span" };
|
|
8910
|
-
return /* @__PURE__ */ jsxs18(
|
|
8911
|
-
StyledTag,
|
|
8912
|
-
{
|
|
8913
|
-
ref,
|
|
8914
|
-
$colorScheme: colorScheme,
|
|
8915
|
-
...props,
|
|
8916
|
-
children: [
|
|
8917
|
-
/* @__PURE__ */ jsxs18(
|
|
8918
|
-
TagLabel,
|
|
8919
|
-
{
|
|
8920
|
-
...labelProps,
|
|
8921
|
-
$colorScheme: colorScheme,
|
|
8922
|
-
children: [
|
|
8923
|
-
hasIcon ? icon : null,
|
|
8924
|
-
label
|
|
8925
|
-
]
|
|
8926
|
-
}
|
|
8927
|
-
),
|
|
8928
|
-
/* @__PURE__ */ jsx218(
|
|
8929
|
-
RemoveButton,
|
|
8930
|
-
{
|
|
8931
|
-
colorScheme,
|
|
8932
|
-
onClickRemove,
|
|
8933
|
-
onClickRemoveLabel
|
|
8934
|
-
}
|
|
8935
|
-
)
|
|
8936
|
-
]
|
|
8937
|
-
}
|
|
8938
|
-
);
|
|
8939
|
-
}
|
|
8940
|
-
);
|
|
8941
|
-
Tag.displayName = "Tag";
|
|
8942
|
-
|
|
8943
|
-
// src/components/Text/Text.tsx
|
|
8944
|
-
import { forwardRef as forwardRef11 } from "react";
|
|
8945
|
-
import styled27, { css as css24 } from "styled-components";
|
|
8946
|
-
import { isNotNil as isNotNil16 } from "@wistia/type-guards";
|
|
8947
|
-
import { jsx as jsx219 } from "react/jsx-runtime";
|
|
8948
|
-
var bodyBoldStyles = css24`
|
|
8949
|
-
> strong,
|
|
8950
|
-
b {
|
|
8951
|
-
font-weight: var(--wui-typography-weight-body-bold);
|
|
8952
|
-
}
|
|
8953
|
-
`;
|
|
8954
|
-
var labelBoldStyles = css24`
|
|
8955
|
-
> strong,
|
|
8956
|
-
b {
|
|
8957
|
-
font-weight: var(--wui-typography-weight-label-bold);
|
|
8958
|
-
}
|
|
8959
|
-
`;
|
|
8960
|
-
var body1TextStyle = css24`
|
|
8961
|
-
--font-family: var(--wui-typography-body-1-family);
|
|
8962
|
-
--font-size: var(--wui-typography-body-1-size);
|
|
8963
|
-
--font-weight: var(--wui-typography-body-1-weight);
|
|
8964
|
-
--line-height: var(--wui-typography-body-1-line-height);
|
|
8965
|
-
--paragraph-spacing: var(--wui-typography-body-1-paragraph-spacing);
|
|
8966
|
-
${bodyBoldStyles}
|
|
8967
|
-
`;
|
|
8968
|
-
var body2TextStyle = css24`
|
|
8969
|
-
--font-family: var(--wui-typography-body-2-family);
|
|
8970
|
-
--font-size: var(--wui-typography-body-2-size);
|
|
8971
|
-
--font-weight: var(--wui-typography-body-2-weight);
|
|
8972
|
-
--line-height: var(--wui-typography-body-2-line-height);
|
|
8973
|
-
--paragraph-spacing: var(--wui-typography-body-2-paragraph-spacing);
|
|
8974
|
-
${bodyBoldStyles}
|
|
8975
|
-
`;
|
|
8976
|
-
var body3TextStyle = css24`
|
|
8977
|
-
--font-family: var(--wui-typography-body-3-family);
|
|
8978
|
-
--font-size: var(--wui-typography-body-3-size);
|
|
8979
|
-
--font-weight: var(--wui-typography-body-3-weight);
|
|
8980
|
-
--line-height: var(--wui-typography-body-3-line-height);
|
|
8981
|
-
--paragraph-spacing: var(--wui-typography-body-3-paragraph-spacing);
|
|
8982
|
-
${bodyBoldStyles}
|
|
8983
|
-
`;
|
|
8984
|
-
var body4TextStyle = css24`
|
|
8985
|
-
--font-family: var(--wui-typography-body-4-family);
|
|
8986
|
-
--font-size: var(--wui-typography-body-4-size);
|
|
8987
|
-
--font-weight: var(--wui-typography-body-4-weight);
|
|
8988
|
-
--line-height: var(--wui-typography-body-4-line-height);
|
|
8989
|
-
--paragraph-spacing: var(--wui-typography-body-4-paragraph-spacing);
|
|
8990
|
-
${bodyBoldStyles}
|
|
8991
|
-
`;
|
|
8992
|
-
var label1TextStyle = css24`
|
|
8993
|
-
--font-family: var(--wui-typography-label-1-family);
|
|
8994
|
-
--font-size: var(--wui-typography-label-1-size);
|
|
8995
|
-
--font-weight: var(--wui-typography-label-1-weight);
|
|
8996
|
-
--line-height: var(--wui-typography-label-1-line-height);
|
|
8997
|
-
${labelBoldStyles}
|
|
8998
|
-
`;
|
|
8999
|
-
var label2TextStyle = css24`
|
|
9000
|
-
--font-family: var(--wui-typography-label-2-family);
|
|
9001
|
-
--font-size: var(--wui-typography-label-2-size);
|
|
9002
|
-
--font-weight: var(--wui-typography-label-2-weight);
|
|
9003
|
-
--line-height: var(--wui-typography-label-2-line-height);
|
|
9004
|
-
${labelBoldStyles}
|
|
9005
|
-
`;
|
|
9006
|
-
var label3TextStyle = css24`
|
|
9007
|
-
--font-family: var(--wui-typography-label-3-family);
|
|
9008
|
-
--font-size: var(--wui-typography-label-3-size);
|
|
9009
|
-
--font-weight: var(--wui-typography-label-3-weight);
|
|
9010
|
-
--line-height: var(--wui-typography-label-3-line-height);
|
|
9011
|
-
${labelBoldStyles}
|
|
9012
|
-
`;
|
|
9013
|
-
var label4TextStyle = css24`
|
|
9014
|
-
--font-family: var(--wui-typography-label-4-family);
|
|
9015
|
-
--font-size: var(--wui-typography-label-4-size);
|
|
9016
|
-
--font-weight: var(--wui-typography-label-4-weight);
|
|
9017
|
-
--line-height: var(--wui-typography-label-4-line-height);
|
|
9018
|
-
${labelBoldStyles}
|
|
9019
|
-
`;
|
|
9020
|
-
var body1MonoTextStyle = css24`
|
|
9021
|
-
${body1TextStyle};
|
|
9022
|
-
--font-family: var(--wui-typography-family-mono);
|
|
9023
|
-
`;
|
|
9024
|
-
var body2MonoTextStyle = css24`
|
|
9025
|
-
${body2TextStyle};
|
|
9026
|
-
--font-family: var(--wui-typography-family-mono);
|
|
9027
|
-
`;
|
|
9028
|
-
var body3MonoTextStyle = css24`
|
|
9029
|
-
${body3TextStyle};
|
|
9030
|
-
--font-family: var(--wui-typography-family-mono);
|
|
9031
|
-
`;
|
|
9032
|
-
var body4MonoTextStyle = css24`
|
|
9033
|
-
${body4TextStyle};
|
|
9034
|
-
--font-family: var(--wui-typography-family-mono);
|
|
9035
|
-
`;
|
|
9036
|
-
var variantStyleMap2 = {
|
|
9037
|
-
body1: body1TextStyle,
|
|
9038
|
-
body2: body2TextStyle,
|
|
9039
|
-
body3: body3TextStyle,
|
|
9040
|
-
body4: body4TextStyle,
|
|
9041
|
-
body1Mono: body1MonoTextStyle,
|
|
9042
|
-
body2Mono: body2MonoTextStyle,
|
|
9043
|
-
body3Mono: body3MonoTextStyle,
|
|
9044
|
-
body4Mono: body4MonoTextStyle,
|
|
9045
|
-
label1: label1TextStyle,
|
|
9046
|
-
label2: label2TextStyle,
|
|
9047
|
-
label3: label3TextStyle,
|
|
9048
|
-
label4: label4TextStyle
|
|
9049
|
-
};
|
|
9050
|
-
var bodyElement = "p";
|
|
9051
|
-
var labelElement = "span";
|
|
9052
|
-
var DEFAULT_ELEMENT4 = bodyElement;
|
|
9053
|
-
var variantElementMap2 = {
|
|
9054
|
-
body1: DEFAULT_ELEMENT4,
|
|
9055
|
-
body2: DEFAULT_ELEMENT4,
|
|
9056
|
-
body3: DEFAULT_ELEMENT4,
|
|
9057
|
-
body4: DEFAULT_ELEMENT4,
|
|
9058
|
-
body1Mono: DEFAULT_ELEMENT4,
|
|
9059
|
-
body2Mono: DEFAULT_ELEMENT4,
|
|
9060
|
-
body3Mono: DEFAULT_ELEMENT4,
|
|
9061
|
-
body4Mono: DEFAULT_ELEMENT4,
|
|
9062
|
-
label1: labelElement,
|
|
9063
|
-
label2: labelElement,
|
|
9064
|
-
label3: labelElement,
|
|
9065
|
-
label4: labelElement
|
|
9066
|
-
};
|
|
9067
|
-
var StyledText = styled27.div`
|
|
9068
|
-
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
9069
|
-
--text-color: ${({ $prominence, $disabled }) => {
|
|
9070
|
-
if ($disabled) {
|
|
9071
|
-
return "var(--wui-color-text-disabled)";
|
|
9072
|
-
}
|
|
9073
|
-
if ($prominence === "secondary") {
|
|
9074
|
-
return "var(--wui-color-text-secondary)";
|
|
9075
|
-
}
|
|
9076
|
-
if ($prominence === "button") {
|
|
9077
|
-
return "var(--wui-color-text-button)";
|
|
9078
|
-
}
|
|
9079
|
-
return "var(--wui-color-text)";
|
|
9080
|
-
}};
|
|
9081
|
-
|
|
9082
|
-
color: var(--text-color);
|
|
9083
|
-
font-family: var(--font-family);
|
|
9084
|
-
font-size: var(--font-size);
|
|
9085
|
-
font-weight: var(--font-weight);
|
|
9086
|
-
line-height: var(--line-height);
|
|
9087
|
-
font-style: normal;
|
|
9088
|
-
margin: 0;
|
|
9089
|
-
${({ $variant }) => variantStyleMap2[$variant]}
|
|
9090
|
-
${({ $truncate }) => {
|
|
9091
|
-
if (isNotNil16($truncate)) {
|
|
9092
|
-
return css24`
|
|
9093
|
-
${ellipsisStyle};
|
|
9094
|
-
${lineClampCss($truncate)};
|
|
9095
|
-
`;
|
|
9096
|
-
}
|
|
9097
|
-
return void 0;
|
|
9098
|
-
}}
|
|
9099
|
-
${({ $inline }) => $inline && css24`
|
|
9100
|
-
display: inline-block;
|
|
9101
|
-
`}
|
|
9102
|
-
${({ $disabled }) => $disabled && css24`
|
|
9103
|
-
--text-color: var(--wui-color-text-disabled);
|
|
9104
|
-
`}
|
|
9105
|
-
${({ $preventUserSelect }) => $preventUserSelect && css24`
|
|
9106
|
-
user-select: none;
|
|
9107
|
-
`}
|
|
9108
|
-
${({ $align }) => css24`
|
|
9109
|
-
text-align: ${$align};
|
|
9110
|
-
`}
|
|
9111
|
-
${({ as }) => as === "p" && css24`
|
|
9112
|
-
display: block;
|
|
9113
|
-
|
|
9114
|
-
+ p {
|
|
9115
|
-
margin-top: var(--paragraph-spacing, var(--wui-space-04));
|
|
9116
|
-
}
|
|
9117
|
-
`}
|
|
9118
|
-
`;
|
|
9119
|
-
var TextComponent = forwardRef11(
|
|
9120
|
-
({
|
|
9121
|
-
align = "left",
|
|
9122
|
-
colorScheme = "inherit",
|
|
9123
|
-
disabled = false,
|
|
9124
|
-
inline = false,
|
|
9125
|
-
preventUserSelect = false,
|
|
9126
|
-
prominence = "primary",
|
|
9127
|
-
truncate,
|
|
9128
|
-
variant = "body2",
|
|
9129
|
-
renderAs,
|
|
9130
|
-
...props
|
|
9131
|
-
}, ref) => {
|
|
9132
|
-
return /* @__PURE__ */ jsx219(
|
|
9133
|
-
StyledText,
|
|
9134
|
-
{
|
|
9135
|
-
ref,
|
|
9136
|
-
$align: align,
|
|
9137
|
-
$colorScheme: colorScheme,
|
|
9138
|
-
$disabled: disabled,
|
|
9139
|
-
$inline: inline,
|
|
9140
|
-
$preventUserSelect: preventUserSelect,
|
|
9141
|
-
$prominence: prominence,
|
|
9142
|
-
$truncate: truncate,
|
|
9143
|
-
$variant: variant,
|
|
9144
|
-
as: renderAs ?? variantElementMap2[variant],
|
|
9145
|
-
...props
|
|
9146
|
-
}
|
|
9147
|
-
);
|
|
9148
|
-
}
|
|
9149
|
-
);
|
|
9150
|
-
TextComponent.displayName = "Text";
|
|
9151
|
-
var Text = makePolymorphic(TextComponent);
|
|
9152
|
-
|
|
9153
|
-
// src/css/inputCss.ts
|
|
9154
|
-
import { css as css25 } from "styled-components";
|
|
9155
|
-
var inputCss = css25`
|
|
9156
|
-
/* Colors */
|
|
9157
|
-
--wui-input-color-bg: var(--wui-color-bg-surface);
|
|
9158
|
-
--wui-input-color-bg-disabled: var(--wui-color-bg-surface-disabled);
|
|
9159
|
-
--wui-input-color-border: var(--wui-color-border-secondary);
|
|
9160
|
-
--wui-input-color-border-focus: var(--wui-color-focus-ring);
|
|
9161
|
-
--wui-input-color-border-error: var(--wui-color-invalid-indicator);
|
|
9162
|
-
--wui-input-color-border-disabled: var(--wui-color-border-disabled);
|
|
9163
|
-
--wui-input-color-text: var(--wui-color-text);
|
|
9164
|
-
|
|
9165
|
-
/* Border */
|
|
9166
|
-
--wui-input-border-radius: var(--wui-border-radius-03);
|
|
9167
|
-
--wui-input-multiline-border-radius: var(--wui-border-radius-02);
|
|
9168
|
-
|
|
9169
|
-
/* Padding */
|
|
9170
|
-
--wui-input-vertical-padding: var(--wui-space-02);
|
|
9171
|
-
--wui-input-horizontal-padding: var(--wui-space-03);
|
|
9172
|
-
|
|
9173
|
-
/* Typography */
|
|
9174
|
-
--wui-input-placeholder: var(--wui-gray-10);
|
|
9175
|
-
--wui-input-font-size: var(--wui-typography-body-3-size);
|
|
9176
|
-
--wui-input-line-height: 16px;
|
|
9177
|
-
--wui-input-font-weight: var(--wui-typography-weight-body);
|
|
9178
|
-
`;
|
|
9179
|
-
|
|
9180
|
-
// src/components/Combobox/Combobox.tsx
|
|
9181
|
-
import { jsx as jsx220, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
9182
|
-
var ComboboxWapper = styled28.div`
|
|
9183
|
-
${inputCss};
|
|
9184
|
-
width: ${({ $fullWidth }) => $fullWidth ? "100%" : "auto"};
|
|
9185
|
-
padding: var(--wui-input-vertical-padding) var(--wui-input-horizontal-padding);
|
|
9186
|
-
background-color: var(--wui-input-color-bg);
|
|
9187
|
-
border: none;
|
|
9188
|
-
outline: 1px solid var(--wui-input-color-border);
|
|
9189
|
-
outline-offset: -1px;
|
|
9190
|
-
border-radius: var(--wui-input-border-radius);
|
|
9191
|
-
font-size: var(--wui-input-font-size);
|
|
9192
|
-
line-height: var(--wui-input-line-height);
|
|
9193
|
-
font-weight: var(--wui-input-font-weight);
|
|
9194
|
-
color: var(--wui-input-color-text);
|
|
9195
|
-
display: inline-flex;
|
|
9196
|
-
flex-wrap: wrap;
|
|
9197
|
-
gap: var(--wui-space-01);
|
|
9198
|
-
|
|
9199
|
-
> * {
|
|
9200
|
-
width: min-content !important;
|
|
9201
|
-
}
|
|
9202
|
-
|
|
9203
|
-
&:focus-within {
|
|
9204
|
-
outline: 2px solid var(--wui-input-color-border-focus);
|
|
9205
|
-
outline-offset: -2px;
|
|
9206
|
-
}
|
|
9207
|
-
|
|
9208
|
-
input {
|
|
9209
|
-
outline: 0 none;
|
|
9210
|
-
border: 0 none;
|
|
9211
|
-
|
|
9212
|
-
&::placeholder {
|
|
9213
|
-
color: var(--wui-input-placeholder);
|
|
9214
|
-
opacity: 1;
|
|
9215
|
-
}
|
|
9216
|
-
|
|
9217
|
-
&:focus {
|
|
9218
|
-
outline: 0;
|
|
9219
|
-
}
|
|
9220
|
-
|
|
9221
|
-
&[aria-invalid='true'] {
|
|
9222
|
-
outline-color: var(--wui-input-color-border-error);
|
|
9223
|
-
}
|
|
9224
|
-
|
|
9225
|
-
&:disabled {
|
|
9226
|
-
outline-color: var(--wui-color-border-disabled);
|
|
9227
|
-
background-color: var(--wui-color-bg-surface-disabled);
|
|
9228
|
-
}
|
|
9229
|
-
}
|
|
9230
|
-
`;
|
|
9231
|
-
var ComboboxInput = styled28(Ariakit.Combobox)`
|
|
9232
|
-
appearance: none;
|
|
9233
|
-
padding: 0;
|
|
9234
|
-
width: 100%;
|
|
9235
|
-
border: 0 none;
|
|
9236
|
-
flex: 1;
|
|
9237
|
-
|
|
9238
|
-
&[data-focus-visible] {
|
|
9239
|
-
outline-style: solid;
|
|
9240
|
-
}
|
|
9241
|
-
|
|
9242
|
-
&[data-active-item] {
|
|
9243
|
-
outline-width: 2px;
|
|
9244
|
-
}
|
|
9245
|
-
`;
|
|
9246
|
-
var ComboboxPopover = styled28(Ariakit.Popover)`
|
|
9247
|
-
--wui-combobox-content-border: var(--wui-color-border);
|
|
9248
|
-
--wui-combobox-content-bg: var(--wui-color-bg-surface);
|
|
9249
|
-
--wui-combobox-content-border-radius: var(--wui-border-radius-02);
|
|
9250
|
-
--wui-combobox-option-padding: var(--wui-space-02);
|
|
9251
|
-
--wui-combobox-option-inner-gap: var(--wui-space-03);
|
|
9252
|
-
--wui-combobox-option-bg-hover: var(--wui-color-bg-surface-hover);
|
|
9253
|
-
|
|
9254
|
-
border-radius: var(--wui-border-radius-02);
|
|
9255
|
-
padding: var(--wui-space-04);
|
|
9256
|
-
max-height: var(--wui-popover-max-height, 300px);
|
|
9257
|
-
background-color: var(--wui-color-bg-surface);
|
|
9258
|
-
box-shadow: var(--wui-elevation-01);
|
|
9259
|
-
border: 1px solid var(--wui-color-border);
|
|
9260
|
-
position: relative;
|
|
9261
|
-
z-index: 50;
|
|
9262
|
-
display: flex;
|
|
9263
|
-
flex-direction: column;
|
|
9264
|
-
overflow: auto;
|
|
9265
|
-
overscroll-behavior: contain;
|
|
9266
|
-
|
|
9267
|
-
&[aria-busy='true'] {
|
|
9268
|
-
--item-opacity: 0.5;
|
|
9269
|
-
}
|
|
9270
|
-
`;
|
|
9271
|
-
var ComboboxItem2 = styled28(Ariakit.ComboboxItem)`
|
|
9272
|
-
${variantStyleMap2.body3};
|
|
9273
|
-
display: flex;
|
|
9274
|
-
padding: var(--wui-combobox-option-padding);
|
|
9275
|
-
gap: var(--wui-combobox-option-inner-gap);
|
|
9276
|
-
font-size: var(--font-size);
|
|
9277
|
-
font-weight: var(--font-weight);
|
|
9278
|
-
border-radius: var(--wui-border-radius-01);
|
|
9279
|
-
align-items: center;
|
|
9280
|
-
cursor: pointer;
|
|
9281
|
-
|
|
9282
|
-
&:hover,
|
|
9283
|
-
&:focus-visible {
|
|
9284
|
-
background-color: var(--wui-combobox-option-bg-hover);
|
|
9285
|
-
outline: none;
|
|
9286
|
-
}
|
|
9287
|
-
|
|
9288
|
-
&[aria-disabled='true'] {
|
|
9289
|
-
color: var(--wui-color-text-disabled);
|
|
9290
|
-
}
|
|
9291
|
-
|
|
9292
|
-
&[aria-disabled='true']:hover {
|
|
9293
|
-
background-color: transparent;
|
|
9294
|
-
}
|
|
9295
|
-
`;
|
|
9296
|
-
var NoResults = styled28.div`
|
|
9297
|
-
gap: var(--wui-space-02);
|
|
9298
|
-
`;
|
|
9299
|
-
var POPOVER_WIDTH_OFFSET = 20;
|
|
9300
|
-
var extractOptions = (children) => {
|
|
9301
|
-
const options = {};
|
|
9302
|
-
Children4.forEach(children, (child) => {
|
|
9303
|
-
if (isValidElement2(child) && "value" in child.props && "children" in child.props) {
|
|
9304
|
-
options[child.props.value] = child.props.children ?? child.props.value;
|
|
9305
|
-
}
|
|
9306
|
-
});
|
|
9307
|
-
return options;
|
|
9308
|
-
};
|
|
9309
|
-
var Combobox2 = ({
|
|
9310
|
-
placeholder,
|
|
9311
|
-
value = [],
|
|
9312
|
-
onChange,
|
|
9313
|
-
searchValue,
|
|
9314
|
-
onSearchValueChange,
|
|
9315
|
-
children,
|
|
9316
|
-
fullWidth = true
|
|
9317
|
-
}) => {
|
|
9318
|
-
const [isPending, startTransition] = useTransition();
|
|
9319
|
-
const [wrapperWidth, setWrapperWidth] = useState10("auto");
|
|
9320
|
-
const comboboxWrapperRef = useRef8(null);
|
|
9321
|
-
const options = useMemo6(() => extractOptions(children), [children]);
|
|
9322
|
-
useEffect9(() => {
|
|
9323
|
-
const comboboxWrapper = comboboxWrapperRef.current;
|
|
9324
|
-
if (comboboxWrapper) {
|
|
9325
|
-
const updateWidthVariable = () => {
|
|
9326
|
-
const { width } = comboboxWrapper.getBoundingClientRect();
|
|
9327
|
-
setWrapperWidth(`${width - POPOVER_WIDTH_OFFSET}px`);
|
|
9328
|
-
};
|
|
9329
|
-
updateWidthVariable();
|
|
9330
|
-
window.addEventListener("resize", updateWidthVariable);
|
|
9331
|
-
return () => {
|
|
9332
|
-
window.removeEventListener("resize", updateWidthVariable);
|
|
9333
|
-
};
|
|
9334
|
-
}
|
|
9335
|
-
return () => null;
|
|
9336
|
-
}, []);
|
|
9337
|
-
const handleRemoveValue = (valueToRemove) => {
|
|
9338
|
-
onChange(value.filter((val) => val !== valueToRemove));
|
|
9339
|
-
};
|
|
9340
|
-
const matches = useMemo6(() => {
|
|
9341
|
-
return matchSorter(Object.keys(options), searchValue);
|
|
9342
|
-
}, [options, searchValue]);
|
|
9343
|
-
return /* @__PURE__ */ jsxs19(
|
|
9344
|
-
Ariakit.ComboboxProvider,
|
|
9345
|
-
{
|
|
9346
|
-
selectedValue: value,
|
|
9347
|
-
setSelectedValue: onChange,
|
|
9348
|
-
setValue: (nextValue) => {
|
|
9349
|
-
startTransition(() => {
|
|
9350
|
-
onSearchValueChange(nextValue);
|
|
9351
|
-
});
|
|
9352
|
-
},
|
|
9353
|
-
children: [
|
|
9354
|
-
/* @__PURE__ */ jsxs19(
|
|
9355
|
-
ComboboxWapper,
|
|
9356
|
-
{
|
|
9357
|
-
ref: comboboxWrapperRef,
|
|
9358
|
-
$fullWidth: fullWidth,
|
|
9359
|
-
children: [
|
|
9360
|
-
value.map((selectedValue) => /* @__PURE__ */ jsx220(
|
|
9361
|
-
Tag,
|
|
9362
|
-
{
|
|
9363
|
-
href: "https://example.com",
|
|
9364
|
-
label: selectedValue,
|
|
9365
|
-
onClickRemove: () => handleRemoveValue(selectedValue),
|
|
9366
|
-
onClickRemoveLabel: `Remove ${selectedValue}`
|
|
9367
|
-
},
|
|
9368
|
-
selectedValue
|
|
9369
|
-
)),
|
|
9370
|
-
/* @__PURE__ */ jsx220(ComboboxInput, { placeholder })
|
|
9371
|
-
]
|
|
9372
|
-
}
|
|
9373
|
-
),
|
|
9374
|
-
/* @__PURE__ */ jsxs19(
|
|
9375
|
-
ComboboxPopover,
|
|
9376
|
-
{
|
|
9377
|
-
"aria-busy": isPending,
|
|
9378
|
-
gutter: 8,
|
|
9379
|
-
sameWidth: false,
|
|
9380
|
-
style: {
|
|
9381
|
-
width: wrapperWidth
|
|
9382
|
-
},
|
|
9383
|
-
children: [
|
|
9384
|
-
matches.map((match) => /* @__PURE__ */ jsxs19(
|
|
9385
|
-
ComboboxItem2,
|
|
9386
|
-
{
|
|
9387
|
-
className: "combobox-item",
|
|
9388
|
-
focusOnHover: true,
|
|
9389
|
-
value: match,
|
|
9390
|
-
children: [
|
|
9391
|
-
/* @__PURE__ */ jsx220(
|
|
9392
|
-
Icon,
|
|
9393
|
-
{
|
|
9394
|
-
size: "sm",
|
|
9395
|
-
style: {
|
|
9396
|
-
opacity: value.includes(match) ? 1 : 0
|
|
9397
|
-
},
|
|
9398
|
-
type: "checkmark"
|
|
9399
|
-
}
|
|
9400
|
-
),
|
|
9401
|
-
options[match]
|
|
9402
|
-
]
|
|
9403
|
-
},
|
|
9404
|
-
match
|
|
9405
|
-
)),
|
|
9406
|
-
!matches.length && /* @__PURE__ */ jsx220(NoResults, { children: "No results found" })
|
|
9407
|
-
]
|
|
9408
|
-
}
|
|
9409
|
-
)
|
|
9410
|
-
]
|
|
9411
|
-
}
|
|
9412
|
-
);
|
|
9413
|
-
};
|
|
9414
|
-
|
|
9415
8774
|
// src/components/DataCards/DataCard.tsx
|
|
9416
|
-
import { useRef as
|
|
9417
|
-
import
|
|
9418
|
-
import { isNotNil as
|
|
9419
|
-
import { jsx as
|
|
9420
|
-
var StyledDataCard =
|
|
8775
|
+
import { useRef as useRef8 } from "react";
|
|
8776
|
+
import styled26, { keyframes } from "styled-components";
|
|
8777
|
+
import { isNotNil as isNotNil15, isNotNull } from "@wistia/type-guards";
|
|
8778
|
+
import { jsx as jsx218, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
8779
|
+
var StyledDataCard = styled26.div`
|
|
9421
8780
|
display: grid;
|
|
9422
8781
|
grid-template-areas: 'label slot' 'value value';
|
|
9423
8782
|
grid-template-rows: auto auto;
|
|
@@ -9480,7 +8839,7 @@ var shimmer = keyframes`
|
|
|
9480
8839
|
background-position: -200% 0;
|
|
9481
8840
|
}
|
|
9482
8841
|
`;
|
|
9483
|
-
var LoadingBackground =
|
|
8842
|
+
var LoadingBackground = styled26.div`
|
|
9484
8843
|
background: linear-gradient(
|
|
9485
8844
|
90deg,
|
|
9486
8845
|
var(--wui-color-bg-surface-tertiary) 25%,
|
|
@@ -9491,27 +8850,27 @@ var LoadingBackground = styled29.div`
|
|
|
9491
8850
|
animation: ${shimmer} 1.5s infinite;
|
|
9492
8851
|
border-radius: var(--wui-border-radius-01);
|
|
9493
8852
|
`;
|
|
9494
|
-
var StyledLoadingLabel =
|
|
8853
|
+
var StyledLoadingLabel = styled26(LoadingBackground)`
|
|
9495
8854
|
width: 80px;
|
|
9496
8855
|
height: var(--wui-typography-heading-6-line-height);
|
|
9497
8856
|
`;
|
|
9498
|
-
var StyledLoadingValue =
|
|
8857
|
+
var StyledLoadingValue = styled26(LoadingBackground)`
|
|
9499
8858
|
width: 90%;
|
|
9500
8859
|
height: var(--wui-typography-heading-3-line-height);
|
|
9501
8860
|
`;
|
|
9502
|
-
var StyledLabel2 =
|
|
8861
|
+
var StyledLabel2 = styled26(Heading)`
|
|
9503
8862
|
grid-area: label;
|
|
9504
8863
|
`;
|
|
9505
|
-
var StyledValue =
|
|
8864
|
+
var StyledValue = styled26(Heading)`
|
|
9506
8865
|
grid-area: value;
|
|
9507
8866
|
`;
|
|
9508
|
-
var StyledSlot =
|
|
8867
|
+
var StyledSlot = styled26.div`
|
|
9509
8868
|
display: flex;
|
|
9510
8869
|
justify-content: flex-end;
|
|
9511
8870
|
grid-area: slot;
|
|
9512
8871
|
align-self: center;
|
|
9513
8872
|
`;
|
|
9514
|
-
var StyledDataCardTrendContainer =
|
|
8873
|
+
var StyledDataCardTrendContainer = styled26.div`
|
|
9515
8874
|
position: absolute;
|
|
9516
8875
|
bottom: var(--wui-space-01);
|
|
9517
8876
|
right: var(--wui-space-01);
|
|
@@ -9524,34 +8883,34 @@ var DataCardInner = ({
|
|
|
9524
8883
|
isLoading = false,
|
|
9525
8884
|
trend,
|
|
9526
8885
|
...props
|
|
9527
|
-
}) => /* @__PURE__ */
|
|
8886
|
+
}) => /* @__PURE__ */ jsxs18(
|
|
9528
8887
|
StyledDataCard,
|
|
9529
8888
|
{
|
|
9530
8889
|
$colorScheme: colorScheme,
|
|
9531
8890
|
...props,
|
|
9532
8891
|
children: [
|
|
9533
|
-
/* @__PURE__ */
|
|
8892
|
+
/* @__PURE__ */ jsx218(
|
|
9534
8893
|
StyledLabel2,
|
|
9535
8894
|
{
|
|
9536
8895
|
renderAs: "dt",
|
|
9537
8896
|
variant: "heading6",
|
|
9538
|
-
children: isLoading ? /* @__PURE__ */
|
|
8897
|
+
children: isLoading ? /* @__PURE__ */ jsx218(StyledLoadingLabel, {}) : label
|
|
9539
8898
|
}
|
|
9540
8899
|
),
|
|
9541
|
-
/* @__PURE__ */
|
|
8900
|
+
/* @__PURE__ */ jsx218(
|
|
9542
8901
|
StyledValue,
|
|
9543
8902
|
{
|
|
9544
8903
|
renderAs: "dd",
|
|
9545
8904
|
variant: "heading3",
|
|
9546
|
-
children: isLoading ? /* @__PURE__ */
|
|
8905
|
+
children: isLoading ? /* @__PURE__ */ jsx218(StyledLoadingValue, {}) : value
|
|
9547
8906
|
}
|
|
9548
8907
|
),
|
|
9549
|
-
isNotNull(upperRightSlot) && !isLoading && /* @__PURE__ */
|
|
9550
|
-
isNotNull(trend) && !isLoading && /* @__PURE__ */
|
|
8908
|
+
isNotNull(upperRightSlot) && !isLoading && /* @__PURE__ */ jsx218(StyledSlot, { children: upperRightSlot }),
|
|
8909
|
+
isNotNull(trend) && !isLoading && /* @__PURE__ */ jsx218(StyledDataCardTrendContainer, { children: trend })
|
|
9551
8910
|
]
|
|
9552
8911
|
}
|
|
9553
8912
|
);
|
|
9554
|
-
var DataCardArrowIcon = /* @__PURE__ */
|
|
8913
|
+
var DataCardArrowIcon = /* @__PURE__ */ jsx218(
|
|
9555
8914
|
Icon,
|
|
9556
8915
|
{
|
|
9557
8916
|
"data-wui-data-card-hover-icon": true,
|
|
@@ -9559,70 +8918,282 @@ var DataCardArrowIcon = /* @__PURE__ */ jsx221(
|
|
|
9559
8918
|
}
|
|
9560
8919
|
);
|
|
9561
8920
|
var DataCard = (props) => {
|
|
9562
|
-
const ref =
|
|
9563
|
-
if (
|
|
9564
|
-
return /* @__PURE__ */
|
|
8921
|
+
const ref = useRef8(null);
|
|
8922
|
+
if (isNotNil15(props.href) || isNotNil15(props.onClick)) {
|
|
8923
|
+
return /* @__PURE__ */ jsx218(ClickRegion, { targetRef: ref, children: /* @__PURE__ */ jsx218(
|
|
9565
8924
|
DataCardInner,
|
|
9566
8925
|
{
|
|
9567
|
-
upperRightSlot: props.upperRightSlot ?? DataCardArrowIcon,
|
|
9568
|
-
...props,
|
|
9569
|
-
label: /* @__PURE__ */
|
|
9570
|
-
Button,
|
|
9571
|
-
{
|
|
9572
|
-
ref,
|
|
9573
|
-
...
|
|
9574
|
-
disabled: props.disabled ?? false,
|
|
9575
|
-
href: props.href,
|
|
9576
|
-
onClick: props.onClick,
|
|
9577
|
-
unstyled: true,
|
|
9578
|
-
children: props.label
|
|
9579
|
-
}
|
|
9580
|
-
)
|
|
8926
|
+
upperRightSlot: props.upperRightSlot ?? DataCardArrowIcon,
|
|
8927
|
+
...props,
|
|
8928
|
+
label: /* @__PURE__ */ jsx218(
|
|
8929
|
+
Button,
|
|
8930
|
+
{
|
|
8931
|
+
ref,
|
|
8932
|
+
...isNotNil15(props.beforeAction) ? { beforeAction: props.beforeAction } : {},
|
|
8933
|
+
disabled: props.disabled ?? false,
|
|
8934
|
+
href: props.href,
|
|
8935
|
+
onClick: props.onClick,
|
|
8936
|
+
unstyled: true,
|
|
8937
|
+
children: props.label
|
|
8938
|
+
}
|
|
8939
|
+
)
|
|
8940
|
+
}
|
|
8941
|
+
) });
|
|
8942
|
+
}
|
|
8943
|
+
return /* @__PURE__ */ jsx218(DataCardInner, { ...props });
|
|
8944
|
+
};
|
|
8945
|
+
DataCard.displayName = "DataCard";
|
|
8946
|
+
|
|
8947
|
+
// src/components/DataCards/DataCards.tsx
|
|
8948
|
+
import styled27 from "styled-components";
|
|
8949
|
+
import { jsx as jsx219 } from "react/jsx-runtime";
|
|
8950
|
+
var StyledDataCards = styled27(Box)`
|
|
8951
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
8952
|
+
margin-top: 0; /* Remove default <dl> style */
|
|
8953
|
+
> * {
|
|
8954
|
+
min-width: 120px;
|
|
8955
|
+
max-width: ${({ $cardMaxWidth }) => $cardMaxWidth};
|
|
8956
|
+
}
|
|
8957
|
+
`;
|
|
8958
|
+
var DataCards = ({
|
|
8959
|
+
children,
|
|
8960
|
+
cardMaxWidth = "none",
|
|
8961
|
+
colorScheme = "inherit",
|
|
8962
|
+
...props
|
|
8963
|
+
}) => {
|
|
8964
|
+
return /* @__PURE__ */ jsx219(
|
|
8965
|
+
StyledDataCards,
|
|
8966
|
+
{
|
|
8967
|
+
...props,
|
|
8968
|
+
$cardMaxWidth: cardMaxWidth,
|
|
8969
|
+
$colorScheme: colorScheme,
|
|
8970
|
+
direction: "row",
|
|
8971
|
+
fill: "horizontal",
|
|
8972
|
+
gap: "space-02",
|
|
8973
|
+
renderAs: "dl",
|
|
8974
|
+
wrapItems: true,
|
|
8975
|
+
children
|
|
8976
|
+
}
|
|
8977
|
+
);
|
|
8978
|
+
};
|
|
8979
|
+
DataCards.displayName = "DataCards";
|
|
8980
|
+
|
|
8981
|
+
// src/components/DataCards/DataCardTrend.tsx
|
|
8982
|
+
import styled29 from "styled-components";
|
|
8983
|
+
|
|
8984
|
+
// src/components/Text/Text.tsx
|
|
8985
|
+
import { forwardRef as forwardRef10 } from "react";
|
|
8986
|
+
import styled28, { css as css24 } from "styled-components";
|
|
8987
|
+
import { isNotNil as isNotNil16 } from "@wistia/type-guards";
|
|
8988
|
+
import { jsx as jsx220 } from "react/jsx-runtime";
|
|
8989
|
+
var bodyBoldStyles = css24`
|
|
8990
|
+
> strong,
|
|
8991
|
+
b {
|
|
8992
|
+
font-weight: var(--wui-typography-weight-body-bold);
|
|
8993
|
+
}
|
|
8994
|
+
`;
|
|
8995
|
+
var labelBoldStyles = css24`
|
|
8996
|
+
> strong,
|
|
8997
|
+
b {
|
|
8998
|
+
font-weight: var(--wui-typography-weight-label-bold);
|
|
8999
|
+
}
|
|
9000
|
+
`;
|
|
9001
|
+
var body1TextStyle = css24`
|
|
9002
|
+
--font-family: var(--wui-typography-body-1-family);
|
|
9003
|
+
--font-size: var(--wui-typography-body-1-size);
|
|
9004
|
+
--font-weight: var(--wui-typography-body-1-weight);
|
|
9005
|
+
--line-height: var(--wui-typography-body-1-line-height);
|
|
9006
|
+
--paragraph-spacing: var(--wui-typography-body-1-paragraph-spacing);
|
|
9007
|
+
${bodyBoldStyles}
|
|
9008
|
+
`;
|
|
9009
|
+
var body2TextStyle = css24`
|
|
9010
|
+
--font-family: var(--wui-typography-body-2-family);
|
|
9011
|
+
--font-size: var(--wui-typography-body-2-size);
|
|
9012
|
+
--font-weight: var(--wui-typography-body-2-weight);
|
|
9013
|
+
--line-height: var(--wui-typography-body-2-line-height);
|
|
9014
|
+
--paragraph-spacing: var(--wui-typography-body-2-paragraph-spacing);
|
|
9015
|
+
${bodyBoldStyles}
|
|
9016
|
+
`;
|
|
9017
|
+
var body3TextStyle = css24`
|
|
9018
|
+
--font-family: var(--wui-typography-body-3-family);
|
|
9019
|
+
--font-size: var(--wui-typography-body-3-size);
|
|
9020
|
+
--font-weight: var(--wui-typography-body-3-weight);
|
|
9021
|
+
--line-height: var(--wui-typography-body-3-line-height);
|
|
9022
|
+
--paragraph-spacing: var(--wui-typography-body-3-paragraph-spacing);
|
|
9023
|
+
${bodyBoldStyles}
|
|
9024
|
+
`;
|
|
9025
|
+
var body4TextStyle = css24`
|
|
9026
|
+
--font-family: var(--wui-typography-body-4-family);
|
|
9027
|
+
--font-size: var(--wui-typography-body-4-size);
|
|
9028
|
+
--font-weight: var(--wui-typography-body-4-weight);
|
|
9029
|
+
--line-height: var(--wui-typography-body-4-line-height);
|
|
9030
|
+
--paragraph-spacing: var(--wui-typography-body-4-paragraph-spacing);
|
|
9031
|
+
${bodyBoldStyles}
|
|
9032
|
+
`;
|
|
9033
|
+
var label1TextStyle = css24`
|
|
9034
|
+
--font-family: var(--wui-typography-label-1-family);
|
|
9035
|
+
--font-size: var(--wui-typography-label-1-size);
|
|
9036
|
+
--font-weight: var(--wui-typography-label-1-weight);
|
|
9037
|
+
--line-height: var(--wui-typography-label-1-line-height);
|
|
9038
|
+
${labelBoldStyles}
|
|
9039
|
+
`;
|
|
9040
|
+
var label2TextStyle = css24`
|
|
9041
|
+
--font-family: var(--wui-typography-label-2-family);
|
|
9042
|
+
--font-size: var(--wui-typography-label-2-size);
|
|
9043
|
+
--font-weight: var(--wui-typography-label-2-weight);
|
|
9044
|
+
--line-height: var(--wui-typography-label-2-line-height);
|
|
9045
|
+
${labelBoldStyles}
|
|
9046
|
+
`;
|
|
9047
|
+
var label3TextStyle = css24`
|
|
9048
|
+
--font-family: var(--wui-typography-label-3-family);
|
|
9049
|
+
--font-size: var(--wui-typography-label-3-size);
|
|
9050
|
+
--font-weight: var(--wui-typography-label-3-weight);
|
|
9051
|
+
--line-height: var(--wui-typography-label-3-line-height);
|
|
9052
|
+
${labelBoldStyles}
|
|
9053
|
+
`;
|
|
9054
|
+
var label4TextStyle = css24`
|
|
9055
|
+
--font-family: var(--wui-typography-label-4-family);
|
|
9056
|
+
--font-size: var(--wui-typography-label-4-size);
|
|
9057
|
+
--font-weight: var(--wui-typography-label-4-weight);
|
|
9058
|
+
--line-height: var(--wui-typography-label-4-line-height);
|
|
9059
|
+
${labelBoldStyles}
|
|
9060
|
+
`;
|
|
9061
|
+
var body1MonoTextStyle = css24`
|
|
9062
|
+
${body1TextStyle};
|
|
9063
|
+
--font-family: var(--wui-typography-family-mono);
|
|
9064
|
+
`;
|
|
9065
|
+
var body2MonoTextStyle = css24`
|
|
9066
|
+
${body2TextStyle};
|
|
9067
|
+
--font-family: var(--wui-typography-family-mono);
|
|
9068
|
+
`;
|
|
9069
|
+
var body3MonoTextStyle = css24`
|
|
9070
|
+
${body3TextStyle};
|
|
9071
|
+
--font-family: var(--wui-typography-family-mono);
|
|
9072
|
+
`;
|
|
9073
|
+
var body4MonoTextStyle = css24`
|
|
9074
|
+
${body4TextStyle};
|
|
9075
|
+
--font-family: var(--wui-typography-family-mono);
|
|
9076
|
+
`;
|
|
9077
|
+
var variantStyleMap2 = {
|
|
9078
|
+
body1: body1TextStyle,
|
|
9079
|
+
body2: body2TextStyle,
|
|
9080
|
+
body3: body3TextStyle,
|
|
9081
|
+
body4: body4TextStyle,
|
|
9082
|
+
body1Mono: body1MonoTextStyle,
|
|
9083
|
+
body2Mono: body2MonoTextStyle,
|
|
9084
|
+
body3Mono: body3MonoTextStyle,
|
|
9085
|
+
body4Mono: body4MonoTextStyle,
|
|
9086
|
+
label1: label1TextStyle,
|
|
9087
|
+
label2: label2TextStyle,
|
|
9088
|
+
label3: label3TextStyle,
|
|
9089
|
+
label4: label4TextStyle
|
|
9090
|
+
};
|
|
9091
|
+
var bodyElement = "p";
|
|
9092
|
+
var labelElement = "span";
|
|
9093
|
+
var DEFAULT_ELEMENT4 = bodyElement;
|
|
9094
|
+
var variantElementMap2 = {
|
|
9095
|
+
body1: DEFAULT_ELEMENT4,
|
|
9096
|
+
body2: DEFAULT_ELEMENT4,
|
|
9097
|
+
body3: DEFAULT_ELEMENT4,
|
|
9098
|
+
body4: DEFAULT_ELEMENT4,
|
|
9099
|
+
body1Mono: DEFAULT_ELEMENT4,
|
|
9100
|
+
body2Mono: DEFAULT_ELEMENT4,
|
|
9101
|
+
body3Mono: DEFAULT_ELEMENT4,
|
|
9102
|
+
body4Mono: DEFAULT_ELEMENT4,
|
|
9103
|
+
label1: labelElement,
|
|
9104
|
+
label2: labelElement,
|
|
9105
|
+
label3: labelElement,
|
|
9106
|
+
label4: labelElement
|
|
9107
|
+
};
|
|
9108
|
+
var StyledText = styled28.div`
|
|
9109
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
9110
|
+
--text-color: ${({ $prominence, $disabled }) => {
|
|
9111
|
+
if ($disabled) {
|
|
9112
|
+
return "var(--wui-color-text-disabled)";
|
|
9113
|
+
}
|
|
9114
|
+
if ($prominence === "secondary") {
|
|
9115
|
+
return "var(--wui-color-text-secondary)";
|
|
9116
|
+
}
|
|
9117
|
+
if ($prominence === "button") {
|
|
9118
|
+
return "var(--wui-color-text-button)";
|
|
9119
|
+
}
|
|
9120
|
+
return "var(--wui-color-text)";
|
|
9121
|
+
}};
|
|
9122
|
+
|
|
9123
|
+
color: var(--text-color);
|
|
9124
|
+
font-family: var(--font-family);
|
|
9125
|
+
font-size: var(--font-size);
|
|
9126
|
+
font-weight: var(--font-weight);
|
|
9127
|
+
line-height: var(--line-height);
|
|
9128
|
+
font-style: normal;
|
|
9129
|
+
margin: 0;
|
|
9130
|
+
${({ $variant }) => variantStyleMap2[$variant]}
|
|
9131
|
+
${({ $truncate }) => {
|
|
9132
|
+
if (isNotNil16($truncate)) {
|
|
9133
|
+
return css24`
|
|
9134
|
+
${ellipsisStyle};
|
|
9135
|
+
${lineClampCss($truncate)};
|
|
9136
|
+
`;
|
|
9137
|
+
}
|
|
9138
|
+
return void 0;
|
|
9139
|
+
}}
|
|
9140
|
+
${({ $inline }) => $inline && css24`
|
|
9141
|
+
display: inline-block;
|
|
9142
|
+
`}
|
|
9143
|
+
${({ $disabled }) => $disabled && css24`
|
|
9144
|
+
--text-color: var(--wui-color-text-disabled);
|
|
9145
|
+
`}
|
|
9146
|
+
${({ $preventUserSelect }) => $preventUserSelect && css24`
|
|
9147
|
+
user-select: none;
|
|
9148
|
+
`}
|
|
9149
|
+
${({ $align }) => css24`
|
|
9150
|
+
text-align: ${$align};
|
|
9151
|
+
`}
|
|
9152
|
+
${({ as }) => as === "p" && css24`
|
|
9153
|
+
display: block;
|
|
9154
|
+
|
|
9155
|
+
+ p {
|
|
9156
|
+
margin-top: var(--paragraph-spacing, var(--wui-space-04));
|
|
9157
|
+
}
|
|
9158
|
+
`}
|
|
9159
|
+
`;
|
|
9160
|
+
var TextComponent = forwardRef10(
|
|
9161
|
+
({
|
|
9162
|
+
align = "left",
|
|
9163
|
+
colorScheme = "inherit",
|
|
9164
|
+
disabled = false,
|
|
9165
|
+
inline = false,
|
|
9166
|
+
preventUserSelect = false,
|
|
9167
|
+
prominence = "primary",
|
|
9168
|
+
truncate,
|
|
9169
|
+
variant = "body2",
|
|
9170
|
+
renderAs,
|
|
9171
|
+
...props
|
|
9172
|
+
}, ref) => {
|
|
9173
|
+
return /* @__PURE__ */ jsx220(
|
|
9174
|
+
StyledText,
|
|
9175
|
+
{
|
|
9176
|
+
ref,
|
|
9177
|
+
$align: align,
|
|
9178
|
+
$colorScheme: colorScheme,
|
|
9179
|
+
$disabled: disabled,
|
|
9180
|
+
$inline: inline,
|
|
9181
|
+
$preventUserSelect: preventUserSelect,
|
|
9182
|
+
$prominence: prominence,
|
|
9183
|
+
$truncate: truncate,
|
|
9184
|
+
$variant: variant,
|
|
9185
|
+
as: renderAs ?? variantElementMap2[variant],
|
|
9186
|
+
...props
|
|
9581
9187
|
}
|
|
9582
|
-
)
|
|
9583
|
-
}
|
|
9584
|
-
return /* @__PURE__ */ jsx221(DataCardInner, { ...props });
|
|
9585
|
-
};
|
|
9586
|
-
DataCard.displayName = "DataCard";
|
|
9587
|
-
|
|
9588
|
-
// src/components/DataCards/DataCards.tsx
|
|
9589
|
-
import styled30 from "styled-components";
|
|
9590
|
-
import { jsx as jsx222 } from "react/jsx-runtime";
|
|
9591
|
-
var StyledDataCards = styled30(Box)`
|
|
9592
|
-
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
9593
|
-
margin-top: 0; /* Remove default <dl> style */
|
|
9594
|
-
> * {
|
|
9595
|
-
min-width: 120px;
|
|
9596
|
-
max-width: ${({ $cardMaxWidth }) => $cardMaxWidth};
|
|
9188
|
+
);
|
|
9597
9189
|
}
|
|
9598
|
-
|
|
9599
|
-
|
|
9600
|
-
|
|
9601
|
-
cardMaxWidth = "none",
|
|
9602
|
-
colorScheme = "inherit",
|
|
9603
|
-
...props
|
|
9604
|
-
}) => {
|
|
9605
|
-
return /* @__PURE__ */ jsx222(
|
|
9606
|
-
StyledDataCards,
|
|
9607
|
-
{
|
|
9608
|
-
...props,
|
|
9609
|
-
$cardMaxWidth: cardMaxWidth,
|
|
9610
|
-
$colorScheme: colorScheme,
|
|
9611
|
-
direction: "row",
|
|
9612
|
-
fill: "horizontal",
|
|
9613
|
-
gap: "space-02",
|
|
9614
|
-
renderAs: "dl",
|
|
9615
|
-
wrapItems: true,
|
|
9616
|
-
children
|
|
9617
|
-
}
|
|
9618
|
-
);
|
|
9619
|
-
};
|
|
9620
|
-
DataCards.displayName = "DataCards";
|
|
9190
|
+
);
|
|
9191
|
+
TextComponent.displayName = "Text";
|
|
9192
|
+
var Text = makePolymorphic(TextComponent);
|
|
9621
9193
|
|
|
9622
9194
|
// src/components/DataCards/DataCardTrend.tsx
|
|
9623
|
-
import
|
|
9624
|
-
|
|
9625
|
-
var StyledDataCardTrend = styled31.div`
|
|
9195
|
+
import { jsx as jsx221, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
9196
|
+
var StyledDataCardTrend = styled29.div`
|
|
9626
9197
|
${({ $outlook }) => getColorScheme($outlook === "positive" ? "success" : "error")};
|
|
9627
9198
|
background: var(--wui-color-bg-app);
|
|
9628
9199
|
border-radius: var(--wui-border-radius-rounded);
|
|
@@ -9637,8 +9208,8 @@ var DataCardTrend = ({
|
|
|
9637
9208
|
children,
|
|
9638
9209
|
...props
|
|
9639
9210
|
}) => {
|
|
9640
|
-
return /* @__PURE__ */
|
|
9641
|
-
/* @__PURE__ */
|
|
9211
|
+
return /* @__PURE__ */ jsxs19(StyledDataCardTrend, { $outlook: outlook, children: [
|
|
9212
|
+
/* @__PURE__ */ jsx221(
|
|
9642
9213
|
Icon,
|
|
9643
9214
|
{
|
|
9644
9215
|
size: "md",
|
|
@@ -9646,7 +9217,7 @@ var DataCardTrend = ({
|
|
|
9646
9217
|
...props
|
|
9647
9218
|
}
|
|
9648
9219
|
),
|
|
9649
|
-
/* @__PURE__ */
|
|
9220
|
+
/* @__PURE__ */ jsx221(
|
|
9650
9221
|
Text,
|
|
9651
9222
|
{
|
|
9652
9223
|
prominence: "secondary",
|
|
@@ -9658,22 +9229,22 @@ var DataCardTrend = ({
|
|
|
9658
9229
|
};
|
|
9659
9230
|
|
|
9660
9231
|
// src/components/Divider/Divider.tsx
|
|
9661
|
-
import
|
|
9662
|
-
import { jsx as
|
|
9663
|
-
var horizontalBorderCss =
|
|
9232
|
+
import styled30, { css as css25 } from "styled-components";
|
|
9233
|
+
import { jsx as jsx222 } from "react/jsx-runtime";
|
|
9234
|
+
var horizontalBorderCss = css25`
|
|
9664
9235
|
border-top-color: var(--wui-color-border);
|
|
9665
9236
|
border-top-style: solid;
|
|
9666
9237
|
border-top-width: 1px;
|
|
9667
9238
|
clear: both; /* for horizontal dividers, ensure it clears any floats */
|
|
9668
9239
|
height: 0;
|
|
9669
9240
|
`;
|
|
9670
|
-
var verticalBorderCss =
|
|
9241
|
+
var verticalBorderCss = css25`
|
|
9671
9242
|
background-color: var(--wui-color-border);
|
|
9672
9243
|
max-width: 1px;
|
|
9673
9244
|
min-height: 100%;
|
|
9674
9245
|
width: 1px;
|
|
9675
9246
|
`;
|
|
9676
|
-
var DividerComponent =
|
|
9247
|
+
var DividerComponent = styled30.div`
|
|
9677
9248
|
${({ $orientation }) => {
|
|
9678
9249
|
switch ($orientation) {
|
|
9679
9250
|
case "vertical":
|
|
@@ -9685,7 +9256,7 @@ var DividerComponent = styled32.div`
|
|
|
9685
9256
|
}}
|
|
9686
9257
|
`;
|
|
9687
9258
|
var Divider = ({ orientation = "horizontal", ...props }) => {
|
|
9688
|
-
return /* @__PURE__ */
|
|
9259
|
+
return /* @__PURE__ */ jsx222(
|
|
9689
9260
|
DividerComponent,
|
|
9690
9261
|
{
|
|
9691
9262
|
$orientation: orientation,
|
|
@@ -9698,8 +9269,8 @@ var Divider = ({ orientation = "horizontal", ...props }) => {
|
|
|
9698
9269
|
Divider.displayName = "Divider";
|
|
9699
9270
|
|
|
9700
9271
|
// src/components/EditableHeading/EditableHeading.tsx
|
|
9701
|
-
import
|
|
9702
|
-
import { useState as
|
|
9272
|
+
import styled33, { css as css28 } from "styled-components";
|
|
9273
|
+
import { useState as useState10, useRef as useRef10 } from "react";
|
|
9703
9274
|
|
|
9704
9275
|
// src/components/Tooltip/Tooltip.tsx
|
|
9705
9276
|
import {
|
|
@@ -9709,8 +9280,8 @@ import {
|
|
|
9709
9280
|
Portal as TooltipPortal,
|
|
9710
9281
|
Arrow as TooltipArrow
|
|
9711
9282
|
} from "@radix-ui/react-tooltip";
|
|
9712
|
-
import
|
|
9713
|
-
import { jsx as
|
|
9283
|
+
import styled31, { keyframes as keyframes2 } from "styled-components";
|
|
9284
|
+
import { jsx as jsx223, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
9714
9285
|
var hide = keyframes2`
|
|
9715
9286
|
from {
|
|
9716
9287
|
opacity: 1;
|
|
@@ -9759,7 +9330,7 @@ var slideRightAndFade = keyframes2`
|
|
|
9759
9330
|
transform: translateX(0);
|
|
9760
9331
|
}
|
|
9761
9332
|
`;
|
|
9762
|
-
var StyledContent =
|
|
9333
|
+
var StyledContent = styled31(TooltipContent)`
|
|
9763
9334
|
--tooltip-font-family: var(--wui-typography-family-default);
|
|
9764
9335
|
--tooltip-border-radius: var(--wui-border-radius-05);
|
|
9765
9336
|
--tooltip-bg: var(--wui-color-bg-tooltip);
|
|
@@ -9821,21 +9392,21 @@ var Tooltip = ({
|
|
|
9821
9392
|
if (forceOpen === true) {
|
|
9822
9393
|
rootProps.open = true;
|
|
9823
9394
|
}
|
|
9824
|
-
return /* @__PURE__ */
|
|
9395
|
+
return /* @__PURE__ */ jsxs20(
|
|
9825
9396
|
TooltipRoot,
|
|
9826
9397
|
{
|
|
9827
9398
|
delayDuration: delay,
|
|
9828
9399
|
...rootProps,
|
|
9829
9400
|
children: [
|
|
9830
|
-
/* @__PURE__ */
|
|
9831
|
-
/* @__PURE__ */
|
|
9401
|
+
/* @__PURE__ */ jsx223(TooltipTrigger, { asChild: true, children }),
|
|
9402
|
+
/* @__PURE__ */ jsx223(TooltipPortal, { children: /* @__PURE__ */ jsxs20(
|
|
9832
9403
|
StyledContent,
|
|
9833
9404
|
{
|
|
9834
9405
|
side: direction,
|
|
9835
9406
|
sideOffset: hideArrow ? VISUAL_OFFSET : VISUAL_OFFSET - 2,
|
|
9836
9407
|
children: [
|
|
9837
9408
|
content,
|
|
9838
|
-
!hideArrow ? /* @__PURE__ */
|
|
9409
|
+
!hideArrow ? /* @__PURE__ */ jsx223(TooltipArrow, { asChild: true, children: /* @__PURE__ */ jsx223(
|
|
9839
9410
|
"svg",
|
|
9840
9411
|
{
|
|
9841
9412
|
fill: "var(--tooltip-bg)",
|
|
@@ -9844,7 +9415,7 @@ var Tooltip = ({
|
|
|
9844
9415
|
viewBox: "0 0 12 8",
|
|
9845
9416
|
width: "12",
|
|
9846
9417
|
xmlns: "http://www.w3.org/2000/svg",
|
|
9847
|
-
children: /* @__PURE__ */
|
|
9418
|
+
children: /* @__PURE__ */ jsx223("path", { d: "M6.8 6.93333C6.4 7.46667 5.6 7.46667 5.2 6.93333L-2.54292e-07 -1.04907e-06L12 0L6.8 6.93333Z" })
|
|
9848
9419
|
}
|
|
9849
9420
|
) }) : null
|
|
9850
9421
|
]
|
|
@@ -9857,10 +9428,39 @@ var Tooltip = ({
|
|
|
9857
9428
|
Tooltip.displayName = "Tooltip";
|
|
9858
9429
|
|
|
9859
9430
|
// src/components/Input/Input.tsx
|
|
9860
|
-
import { forwardRef as
|
|
9861
|
-
import
|
|
9862
|
-
import { isNil as
|
|
9863
|
-
|
|
9431
|
+
import { forwardRef as forwardRef11, cloneElement as cloneElement3, useRef as useRef9 } from "react";
|
|
9432
|
+
import styled32, { css as css27 } from "styled-components";
|
|
9433
|
+
import { isNil as isNil12, isNotNil as isNotNil17, isRecord as isRecord4 } from "@wistia/type-guards";
|
|
9434
|
+
|
|
9435
|
+
// src/css/inputCss.ts
|
|
9436
|
+
import { css as css26 } from "styled-components";
|
|
9437
|
+
var inputCss = css26`
|
|
9438
|
+
/* Colors */
|
|
9439
|
+
--wui-input-color-bg: var(--wui-color-bg-surface);
|
|
9440
|
+
--wui-input-color-bg-disabled: var(--wui-color-bg-surface-disabled);
|
|
9441
|
+
--wui-input-color-border: var(--wui-color-border-secondary);
|
|
9442
|
+
--wui-input-color-border-focus: var(--wui-color-focus-ring);
|
|
9443
|
+
--wui-input-color-border-error: var(--wui-color-invalid-indicator);
|
|
9444
|
+
--wui-input-color-border-disabled: var(--wui-color-border-disabled);
|
|
9445
|
+
--wui-input-color-text: var(--wui-color-text);
|
|
9446
|
+
|
|
9447
|
+
/* Border */
|
|
9448
|
+
--wui-input-border-radius: var(--wui-border-radius-03);
|
|
9449
|
+
--wui-input-multiline-border-radius: var(--wui-border-radius-02);
|
|
9450
|
+
|
|
9451
|
+
/* Padding */
|
|
9452
|
+
--wui-input-vertical-padding: var(--wui-space-02);
|
|
9453
|
+
--wui-input-horizontal-padding: var(--wui-space-03);
|
|
9454
|
+
|
|
9455
|
+
/* Typography */
|
|
9456
|
+
--wui-input-placeholder: var(--wui-gray-10);
|
|
9457
|
+
--wui-input-font-size: var(--wui-typography-body-3-size);
|
|
9458
|
+
--wui-input-line-height: 16px;
|
|
9459
|
+
--wui-input-font-weight: var(--wui-typography-weight-body);
|
|
9460
|
+
`;
|
|
9461
|
+
|
|
9462
|
+
// src/components/Input/Input.tsx
|
|
9463
|
+
import { jsx as jsx224, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
9864
9464
|
var inputStyles = css27`
|
|
9865
9465
|
${inputCss}
|
|
9866
9466
|
input,
|
|
@@ -9896,7 +9496,7 @@ var inputStyles = css27`
|
|
|
9896
9496
|
}
|
|
9897
9497
|
}
|
|
9898
9498
|
`;
|
|
9899
|
-
var StyledInputContainer =
|
|
9499
|
+
var StyledInputContainer = styled32.div`
|
|
9900
9500
|
display: inline-flex;
|
|
9901
9501
|
position: relative;
|
|
9902
9502
|
${inputStyles};
|
|
@@ -9963,7 +9563,7 @@ var StyledInputContainer = styled34.div`
|
|
|
9963
9563
|
padding-right: 32px;
|
|
9964
9564
|
}
|
|
9965
9565
|
`;
|
|
9966
|
-
var Input =
|
|
9566
|
+
var Input = forwardRef11(
|
|
9967
9567
|
({
|
|
9968
9568
|
fullWidth = true,
|
|
9969
9569
|
monospace = false,
|
|
@@ -9973,30 +9573,30 @@ var Input = forwardRef12(
|
|
|
9973
9573
|
rightIcon,
|
|
9974
9574
|
...props
|
|
9975
9575
|
}, externalRef) => {
|
|
9976
|
-
const internalRef =
|
|
9576
|
+
const internalRef = useRef9();
|
|
9977
9577
|
const ref = (
|
|
9978
9578
|
// eslint-disable-next-line react-compiler/react-compiler
|
|
9979
|
-
|
|
9579
|
+
isNotNil17(externalRef) && isRecord4(externalRef) && "current" in externalRef ? externalRef : internalRef
|
|
9980
9580
|
);
|
|
9981
9581
|
let leftIconToDisplay = leftIcon;
|
|
9982
|
-
if (
|
|
9983
|
-
leftIconToDisplay = /* @__PURE__ */
|
|
9582
|
+
if (isNil12(leftIcon) && type === "search") {
|
|
9583
|
+
leftIconToDisplay = /* @__PURE__ */ jsx224(Icon, { type: "search" });
|
|
9984
9584
|
}
|
|
9985
|
-
if (
|
|
9585
|
+
if (isNotNil17(leftIconToDisplay)) {
|
|
9986
9586
|
leftIconToDisplay = cloneElement3(leftIconToDisplay, {
|
|
9987
9587
|
size: "md",
|
|
9988
9588
|
className: "wui-input-left-icon"
|
|
9989
9589
|
});
|
|
9990
9590
|
}
|
|
9991
9591
|
let rightIconToDisplay = rightIcon;
|
|
9992
|
-
if (
|
|
9592
|
+
if (isNotNil17(rightIconToDisplay)) {
|
|
9993
9593
|
rightIconToDisplay = cloneElement3(rightIconToDisplay, {
|
|
9994
9594
|
size: "md",
|
|
9995
9595
|
className: "wui-input-right-icon"
|
|
9996
9596
|
});
|
|
9997
9597
|
}
|
|
9998
9598
|
const handleFocus2 = (event) => {
|
|
9999
|
-
if (
|
|
9599
|
+
if (isNotNil17(props.onFocus)) {
|
|
10000
9600
|
props.onFocus(event);
|
|
10001
9601
|
}
|
|
10002
9602
|
if (autoSelect && isValidRef(ref) && "current" in ref) {
|
|
@@ -10005,21 +9605,21 @@ var Input = forwardRef12(
|
|
|
10005
9605
|
});
|
|
10006
9606
|
}
|
|
10007
9607
|
};
|
|
10008
|
-
return /* @__PURE__ */
|
|
9608
|
+
return /* @__PURE__ */ jsxs21(
|
|
10009
9609
|
StyledInputContainer,
|
|
10010
9610
|
{
|
|
10011
9611
|
$fullWidth: fullWidth,
|
|
10012
9612
|
$monospace: monospace,
|
|
10013
9613
|
children: [
|
|
10014
9614
|
leftIconToDisplay ?? null,
|
|
10015
|
-
type === "multiline" ? /* @__PURE__ */
|
|
9615
|
+
type === "multiline" ? /* @__PURE__ */ jsx224(
|
|
10016
9616
|
"textarea",
|
|
10017
9617
|
{
|
|
10018
9618
|
...props,
|
|
10019
9619
|
ref,
|
|
10020
9620
|
onFocus: handleFocus2
|
|
10021
9621
|
}
|
|
10022
|
-
) : /* @__PURE__ */
|
|
9622
|
+
) : /* @__PURE__ */ jsx224(
|
|
10023
9623
|
"input",
|
|
10024
9624
|
{
|
|
10025
9625
|
...props,
|
|
@@ -10037,8 +9637,8 @@ var Input = forwardRef12(
|
|
|
10037
9637
|
Input.displayName = "Input";
|
|
10038
9638
|
|
|
10039
9639
|
// src/components/EditableHeading/EditableHeading.tsx
|
|
10040
|
-
import { Fragment as
|
|
10041
|
-
var StyledInput =
|
|
9640
|
+
import { Fragment as Fragment5, jsx as jsx225, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
9641
|
+
var StyledInput = styled33(Input)`
|
|
10042
9642
|
:not([rows]) {
|
|
10043
9643
|
min-height: unset;
|
|
10044
9644
|
}
|
|
@@ -10065,7 +9665,7 @@ var editableStyles = css28`
|
|
|
10065
9665
|
cursor: pointer;
|
|
10066
9666
|
}
|
|
10067
9667
|
`;
|
|
10068
|
-
var StyledHeading2 =
|
|
9668
|
+
var StyledHeading2 = styled33(Heading)`
|
|
10069
9669
|
width: 100%;
|
|
10070
9670
|
border-radius: var(--wui-border-radius-02);
|
|
10071
9671
|
padding: var(--wui-space-02);
|
|
@@ -10082,11 +9682,11 @@ var EditableHeading = ({
|
|
|
10082
9682
|
__forceEditing = false,
|
|
10083
9683
|
editingDisabled = false
|
|
10084
9684
|
}) => {
|
|
10085
|
-
const [isEditing, setIsEditing] =
|
|
10086
|
-
const [value, setValue] =
|
|
10087
|
-
const [previousValue, setPreviousValue] =
|
|
10088
|
-
const [headingHeight, setHeadingHeight] =
|
|
10089
|
-
const headingRef =
|
|
9685
|
+
const [isEditing, setIsEditing] = useState10(false);
|
|
9686
|
+
const [value, setValue] = useState10(children);
|
|
9687
|
+
const [previousValue, setPreviousValue] = useState10(children);
|
|
9688
|
+
const [headingHeight, setHeadingHeight] = useState10("60");
|
|
9689
|
+
const headingRef = useRef10(null);
|
|
10090
9690
|
const handleSetEditing = (editing) => {
|
|
10091
9691
|
if (editingDisabled) return;
|
|
10092
9692
|
if (editing && headingRef.current) {
|
|
@@ -10119,7 +9719,7 @@ var EditableHeading = ({
|
|
|
10119
9719
|
handleSetEditing(false);
|
|
10120
9720
|
}
|
|
10121
9721
|
};
|
|
10122
|
-
const HeadingComponent2 = /* @__PURE__ */
|
|
9722
|
+
const HeadingComponent2 = /* @__PURE__ */ jsx225(
|
|
10123
9723
|
StyledHeading2,
|
|
10124
9724
|
{
|
|
10125
9725
|
ref: headingRef,
|
|
@@ -10133,7 +9733,7 @@ var EditableHeading = ({
|
|
|
10133
9733
|
return HeadingComponent2;
|
|
10134
9734
|
}
|
|
10135
9735
|
if (isEditing || __forceEditing) {
|
|
10136
|
-
return /* @__PURE__ */
|
|
9736
|
+
return /* @__PURE__ */ jsx225(
|
|
10137
9737
|
StyledInput,
|
|
10138
9738
|
{
|
|
10139
9739
|
$height: headingHeight,
|
|
@@ -10151,9 +9751,9 @@ var EditableHeading = ({
|
|
|
10151
9751
|
}
|
|
10152
9752
|
);
|
|
10153
9753
|
}
|
|
10154
|
-
return /* @__PURE__ */
|
|
10155
|
-
/* @__PURE__ */
|
|
10156
|
-
/* @__PURE__ */
|
|
9754
|
+
return /* @__PURE__ */ jsxs22(Fragment5, { children: [
|
|
9755
|
+
/* @__PURE__ */ jsx225(Tooltip, { content: tooltipText, children: HeadingComponent2 }),
|
|
9756
|
+
/* @__PURE__ */ jsx225(ScreenReaderOnly, { children: /* @__PURE__ */ jsx225(
|
|
10157
9757
|
"button",
|
|
10158
9758
|
{
|
|
10159
9759
|
"aria-label": ariaLabel,
|
|
@@ -10165,11 +9765,11 @@ var EditableHeading = ({
|
|
|
10165
9765
|
};
|
|
10166
9766
|
|
|
10167
9767
|
// src/components/Form/Form.tsx
|
|
10168
|
-
import { forwardRef as
|
|
10169
|
-
import
|
|
9768
|
+
import { forwardRef as forwardRef12, useRef as useRef11, useMemo as useMemo6, createContext as createContext4, useState as useState11, useId as useId2 } from "react";
|
|
9769
|
+
import styled34 from "styled-components";
|
|
10170
9770
|
import { isNotUndefined as isNotUndefined7, isUndefined as isUndefined3 } from "@wistia/type-guards";
|
|
10171
|
-
import { jsx as
|
|
10172
|
-
var StyledForm =
|
|
9771
|
+
import { jsx as jsx226 } from "react/jsx-runtime";
|
|
9772
|
+
var StyledForm = styled34.form`
|
|
10173
9773
|
--form-default-width: 690px;
|
|
10174
9774
|
|
|
10175
9775
|
max-width: ${({ $fullWidth }) => $fullWidth ? "auto" : "var(--form-default-width)"};
|
|
@@ -10191,9 +9791,9 @@ var FormComponent = ({
|
|
|
10191
9791
|
fullWidth = false,
|
|
10192
9792
|
...props
|
|
10193
9793
|
}, forwardedRef) => {
|
|
10194
|
-
const [errors, setErrors] =
|
|
10195
|
-
const [hasSubmitted, setHasSubmitted] =
|
|
10196
|
-
const innerRef =
|
|
9794
|
+
const [errors, setErrors] = useState11({});
|
|
9795
|
+
const [hasSubmitted, setHasSubmitted] = useState11(false);
|
|
9796
|
+
const innerRef = useRef11();
|
|
10197
9797
|
const ref = forwardedRef ?? innerRef;
|
|
10198
9798
|
const autoId = useId2();
|
|
10199
9799
|
const id = props.id ?? autoId;
|
|
@@ -10237,7 +9837,7 @@ var FormComponent = ({
|
|
|
10237
9837
|
void action(null);
|
|
10238
9838
|
}
|
|
10239
9839
|
};
|
|
10240
|
-
const context =
|
|
9840
|
+
const context = useMemo6(() => {
|
|
10241
9841
|
return {
|
|
10242
9842
|
values,
|
|
10243
9843
|
errors,
|
|
@@ -10248,7 +9848,7 @@ var FormComponent = ({
|
|
|
10248
9848
|
}, [labelPosition, values, errors, id, hasSubmitted]);
|
|
10249
9849
|
return (
|
|
10250
9850
|
// @ts-expect-error - generic context providers are a giant pain
|
|
10251
|
-
/* @__PURE__ */
|
|
9851
|
+
/* @__PURE__ */ jsx226(FormContext.Provider, { value: context, children: /* @__PURE__ */ jsx226(
|
|
10252
9852
|
Stack,
|
|
10253
9853
|
{
|
|
10254
9854
|
...props,
|
|
@@ -10266,14 +9866,14 @@ var FormComponent = ({
|
|
|
10266
9866
|
);
|
|
10267
9867
|
};
|
|
10268
9868
|
FormComponent.displayName = "Form";
|
|
10269
|
-
var Form =
|
|
9869
|
+
var Form = forwardRef12(FormComponent);
|
|
10270
9870
|
|
|
10271
9871
|
// src/components/Form/useFormState.tsx
|
|
10272
|
-
import { useCallback as useCallback9, useState as
|
|
9872
|
+
import { useCallback as useCallback9, useState as useState12 } from "react";
|
|
10273
9873
|
var useFormState = (action, initialData = {}) => {
|
|
10274
|
-
const [data, setData] =
|
|
10275
|
-
const [isPending, setIsPending] =
|
|
10276
|
-
const [error, setError] =
|
|
9874
|
+
const [data, setData] = useState12(initialData);
|
|
9875
|
+
const [isPending, setIsPending] = useState12(false);
|
|
9876
|
+
const [error, setError] = useState12(null);
|
|
10277
9877
|
const formAction = useCallback9(
|
|
10278
9878
|
async (nextFormData) => {
|
|
10279
9879
|
if (nextFormData === null) {
|
|
@@ -10305,23 +9905,23 @@ var useFormState = (action, initialData = {}) => {
|
|
|
10305
9905
|
};
|
|
10306
9906
|
|
|
10307
9907
|
// src/components/Form/FormErrorSummary.tsx
|
|
10308
|
-
import { useContext as useContext4, useRef as
|
|
9908
|
+
import { useContext as useContext4, useRef as useRef12 } from "react";
|
|
10309
9909
|
import { isArray, isNotUndefined as isNotUndefined8 } from "@wistia/type-guards";
|
|
10310
|
-
import { jsx as
|
|
9910
|
+
import { jsx as jsx227, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
10311
9911
|
var ErrorItem = ({ name, error, formId }) => {
|
|
10312
|
-
return /* @__PURE__ */
|
|
9912
|
+
return /* @__PURE__ */ jsx227("li", { children: /* @__PURE__ */ jsx227(Link, { href: `#${formId}-${name}`, children: error }) }, name);
|
|
10313
9913
|
};
|
|
10314
9914
|
var FormErrorSummary = ({ description }) => {
|
|
10315
|
-
const ref =
|
|
9915
|
+
const ref = useRef12(null);
|
|
10316
9916
|
const { formId, errors, hasSubmitted } = useContext4(FormContext);
|
|
10317
9917
|
const isValid = Object.keys(errors).length === 0;
|
|
10318
9918
|
if (isValid || !hasSubmitted) {
|
|
10319
9919
|
return null;
|
|
10320
9920
|
}
|
|
10321
|
-
return /* @__PURE__ */
|
|
10322
|
-
/* @__PURE__ */
|
|
10323
|
-
/* @__PURE__ */
|
|
10324
|
-
([name, error]) => isArray(error) ? error.map((err) => /* @__PURE__ */
|
|
9921
|
+
return /* @__PURE__ */ jsxs23("div", { ref, children: [
|
|
9922
|
+
/* @__PURE__ */ jsx227("p", { children: description }),
|
|
9923
|
+
/* @__PURE__ */ jsx227("ul", { children: Object.entries(errors).filter(([, error]) => isNotUndefined8(error)).map(
|
|
9924
|
+
([name, error]) => isArray(error) ? error.map((err) => /* @__PURE__ */ jsx227(
|
|
10325
9925
|
ErrorItem,
|
|
10326
9926
|
{
|
|
10327
9927
|
error: err,
|
|
@@ -10329,7 +9929,7 @@ var FormErrorSummary = ({ description }) => {
|
|
|
10329
9929
|
name
|
|
10330
9930
|
},
|
|
10331
9931
|
err
|
|
10332
|
-
)) : /* @__PURE__ */
|
|
9932
|
+
)) : /* @__PURE__ */ jsx227(
|
|
10333
9933
|
ErrorItem,
|
|
10334
9934
|
{
|
|
10335
9935
|
error: error ?? "",
|
|
@@ -10343,13 +9943,13 @@ var FormErrorSummary = ({ description }) => {
|
|
|
10343
9943
|
};
|
|
10344
9944
|
|
|
10345
9945
|
// src/components/FormField/FormField.tsx
|
|
10346
|
-
import { Children as
|
|
10347
|
-
import
|
|
10348
|
-
import { isArray as isArray2, isNotNil as
|
|
9946
|
+
import { Children as Children4, cloneElement as cloneElement4, useContext as useContext5 } from "react";
|
|
9947
|
+
import styled36 from "styled-components";
|
|
9948
|
+
import { isArray as isArray2, isNotNil as isNotNil18, isNotUndefined as isNotUndefined9, isUndefined as isUndefined4 } from "@wistia/type-guards";
|
|
10349
9949
|
|
|
10350
9950
|
// src/components/Label/Label.tsx
|
|
10351
|
-
import
|
|
10352
|
-
import { jsx as
|
|
9951
|
+
import styled35, { css as css29 } from "styled-components";
|
|
9952
|
+
import { jsx as jsx228 } from "react/jsx-runtime";
|
|
10353
9953
|
var requiredStyle = css29`
|
|
10354
9954
|
&::after {
|
|
10355
9955
|
color: var(--wui-color-text-error);
|
|
@@ -10361,7 +9961,7 @@ var requiredStyle = css29`
|
|
|
10361
9961
|
var disabledStyle3 = css29`
|
|
10362
9962
|
color: var(--wui-color-text-disabled);
|
|
10363
9963
|
`;
|
|
10364
|
-
var StyledLabel3 =
|
|
9964
|
+
var StyledLabel3 = styled35.label`
|
|
10365
9965
|
display: block;
|
|
10366
9966
|
width: 100%;
|
|
10367
9967
|
color: var(--wui-color-text);
|
|
@@ -10393,7 +9993,7 @@ var Label = ({
|
|
|
10393
9993
|
screenReaderOnly = false,
|
|
10394
9994
|
...props
|
|
10395
9995
|
}) => {
|
|
10396
|
-
return /* @__PURE__ */
|
|
9996
|
+
return /* @__PURE__ */ jsx228(
|
|
10397
9997
|
StyledLabel3,
|
|
10398
9998
|
{
|
|
10399
9999
|
...props,
|
|
@@ -10408,8 +10008,8 @@ var Label = ({
|
|
|
10408
10008
|
Label.displayName = "Label";
|
|
10409
10009
|
|
|
10410
10010
|
// src/components/FormField/FormField.tsx
|
|
10411
|
-
import { Fragment as
|
|
10412
|
-
var StyledFormField =
|
|
10011
|
+
import { Fragment as Fragment6, jsx as jsx229, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
10012
|
+
var StyledFormField = styled36.div`
|
|
10413
10013
|
--form-field-spacing: var(--wui-space-01);
|
|
10414
10014
|
--form-field-spacing-inline: var(--wui-space-02);
|
|
10415
10015
|
--form-field-error-color: var(--wui-color-text-secondary-error);
|
|
@@ -10439,7 +10039,7 @@ var StyledFormField = styled38.div`
|
|
|
10439
10039
|
grid-template-rows: 1fr;
|
|
10440
10040
|
}
|
|
10441
10041
|
`;
|
|
10442
|
-
var StyledErrorList =
|
|
10042
|
+
var StyledErrorList = styled36.ul`
|
|
10443
10043
|
margin: 0;
|
|
10444
10044
|
padding: 0;
|
|
10445
10045
|
padding-left: var(--wui-space-04);
|
|
@@ -10449,7 +10049,7 @@ var StyledErrorList = styled38.ul`
|
|
|
10449
10049
|
`;
|
|
10450
10050
|
var ErrorMessages = ({ errors, id }) => {
|
|
10451
10051
|
const isMultipleErrors = isArray2(errors);
|
|
10452
|
-
return isMultipleErrors ? /* @__PURE__ */
|
|
10052
|
+
return isMultipleErrors ? /* @__PURE__ */ jsx229(StyledErrorList, { children: errors.map((error, index) => /* @__PURE__ */ jsx229(
|
|
10453
10053
|
Text,
|
|
10454
10054
|
{
|
|
10455
10055
|
colorScheme: "error",
|
|
@@ -10459,7 +10059,7 @@ var ErrorMessages = ({ errors, id }) => {
|
|
|
10459
10059
|
children: error
|
|
10460
10060
|
},
|
|
10461
10061
|
`${id}-${index}`
|
|
10462
|
-
)) }) : /* @__PURE__ */
|
|
10062
|
+
)) }) : /* @__PURE__ */ jsx229(
|
|
10463
10063
|
Text,
|
|
10464
10064
|
{
|
|
10465
10065
|
colorScheme: "error",
|
|
@@ -10504,8 +10104,8 @@ var FormField = ({
|
|
|
10504
10104
|
defaultValue
|
|
10505
10105
|
};
|
|
10506
10106
|
}
|
|
10507
|
-
if (
|
|
10508
|
-
const computedName =
|
|
10107
|
+
if (isNotNil18(checkboxGroup)) {
|
|
10108
|
+
const computedName = isNotNil18(checkboxGroup.name) ? `${checkboxGroup.name}[${name}]` : name;
|
|
10509
10109
|
const handleChange = (event) => {
|
|
10510
10110
|
if (isNotUndefined9(props.onChange)) {
|
|
10511
10111
|
props.onChange(event);
|
|
@@ -10518,22 +10118,22 @@ var FormField = ({
|
|
|
10518
10118
|
...childProps,
|
|
10519
10119
|
name: computedName,
|
|
10520
10120
|
onChange: handleChange,
|
|
10521
|
-
"aria-invalid":
|
|
10121
|
+
"aria-invalid": isNotNil18(error)
|
|
10522
10122
|
};
|
|
10523
10123
|
}
|
|
10524
|
-
|
|
10525
|
-
return /* @__PURE__ */
|
|
10124
|
+
Children4.only(children);
|
|
10125
|
+
return /* @__PURE__ */ jsxs24(
|
|
10526
10126
|
StyledFormField,
|
|
10527
10127
|
{
|
|
10528
10128
|
...props,
|
|
10529
10129
|
"data-label-position": labelPosition ?? formState.labelPosition,
|
|
10530
10130
|
children: [
|
|
10531
|
-
!isIntegratedLabel && /* @__PURE__ */
|
|
10532
|
-
|
|
10131
|
+
!isIntegratedLabel && /* @__PURE__ */ jsx229(Label, { htmlFor: computedId, children: label }),
|
|
10132
|
+
isNotNil18(description) ? /* @__PURE__ */ jsx229(FormControlLabelDescription, { id: descriptionId, children: description }) : null,
|
|
10533
10133
|
cloneElement4(children, childProps),
|
|
10534
|
-
|
|
10535
|
-
/* @__PURE__ */
|
|
10536
|
-
/* @__PURE__ */
|
|
10134
|
+
isNotNil18(computedError) ? /* @__PURE__ */ jsxs24(Fragment6, { children: [
|
|
10135
|
+
/* @__PURE__ */ jsx229("div", {}),
|
|
10136
|
+
/* @__PURE__ */ jsx229(
|
|
10537
10137
|
ErrorMessages,
|
|
10538
10138
|
{
|
|
10539
10139
|
errors: computedError,
|
|
@@ -10548,8 +10148,8 @@ var FormField = ({
|
|
|
10548
10148
|
FormField.displayName = "FormField";
|
|
10549
10149
|
|
|
10550
10150
|
// src/components/FormGroup/RadioGroup.tsx
|
|
10551
|
-
import { createContext as createContext5, useMemo as
|
|
10552
|
-
import { jsx as
|
|
10151
|
+
import { createContext as createContext5, useMemo as useMemo7, useContext as useContext6 } from "react";
|
|
10152
|
+
import { jsx as jsx230 } from "react/jsx-runtime";
|
|
10553
10153
|
var RadioGroupContext = createContext5(null);
|
|
10554
10154
|
var useRadioGroup = () => {
|
|
10555
10155
|
return useContext6(RadioGroupContext);
|
|
@@ -10561,21 +10161,21 @@ var RadioGroup = ({
|
|
|
10561
10161
|
value,
|
|
10562
10162
|
...props
|
|
10563
10163
|
}) => {
|
|
10564
|
-
const context =
|
|
10164
|
+
const context = useMemo7(() => {
|
|
10565
10165
|
return {
|
|
10566
10166
|
name,
|
|
10567
10167
|
onChange
|
|
10568
10168
|
};
|
|
10569
10169
|
}, [name, onChange]);
|
|
10570
|
-
return /* @__PURE__ */
|
|
10170
|
+
return /* @__PURE__ */ jsx230(RadioGroupContext.Provider, { value: context, children: /* @__PURE__ */ jsx230(FormGroup, { ...props, children }) });
|
|
10571
10171
|
};
|
|
10572
10172
|
RadioGroup.displayName = "RadioGroup";
|
|
10573
10173
|
|
|
10574
10174
|
// src/components/IconButton/IconButton.tsx
|
|
10575
|
-
import { Children as
|
|
10576
|
-
import
|
|
10577
|
-
import { jsx as
|
|
10578
|
-
var StyledButton2 =
|
|
10175
|
+
import { Children as Children5, cloneElement as cloneElement5, forwardRef as forwardRef13 } from "react";
|
|
10176
|
+
import styled37 from "styled-components";
|
|
10177
|
+
import { jsx as jsx231 } from "react/jsx-runtime";
|
|
10178
|
+
var StyledButton2 = styled37(Button)`
|
|
10579
10179
|
--icon-button-size-sm: 24px;
|
|
10580
10180
|
--icon-button-size-md: 32px;
|
|
10581
10181
|
--icon-button-size-lg: 40px;
|
|
@@ -10589,10 +10189,10 @@ var StyledButton2 = styled39(Button)`
|
|
|
10589
10189
|
align-items: center;
|
|
10590
10190
|
line-height: 1;
|
|
10591
10191
|
`;
|
|
10592
|
-
var IconButton =
|
|
10192
|
+
var IconButton = forwardRef13(
|
|
10593
10193
|
({ children, label, size = "md", ...props }, ref) => {
|
|
10594
10194
|
const responsiveSize = useResponsiveProp(size);
|
|
10595
|
-
return /* @__PURE__ */
|
|
10195
|
+
return /* @__PURE__ */ jsx231(
|
|
10596
10196
|
StyledButton2,
|
|
10597
10197
|
{
|
|
10598
10198
|
...props,
|
|
@@ -10600,7 +10200,7 @@ var IconButton = forwardRef14(
|
|
|
10600
10200
|
"aria-label": label,
|
|
10601
10201
|
"data-wistia-ui-icon-button": true,
|
|
10602
10202
|
size: responsiveSize,
|
|
10603
|
-
children: cloneElement5(
|
|
10203
|
+
children: cloneElement5(Children5.only(children), {
|
|
10604
10204
|
size: responsiveSize
|
|
10605
10205
|
})
|
|
10606
10206
|
}
|
|
@@ -10610,11 +10210,11 @@ var IconButton = forwardRef14(
|
|
|
10610
10210
|
IconButton.displayName = "IconButton";
|
|
10611
10211
|
|
|
10612
10212
|
// src/components/InputClickToCopy/InputClickToCopy.tsx
|
|
10613
|
-
import
|
|
10614
|
-
import { forwardRef as
|
|
10213
|
+
import styled38 from "styled-components";
|
|
10214
|
+
import { forwardRef as forwardRef14, useEffect as useEffect9, useState as useState13 } from "react";
|
|
10615
10215
|
import { isFunction as isFunction3 } from "@wistia/type-guards";
|
|
10616
|
-
import { jsx as
|
|
10617
|
-
var StyledInput2 =
|
|
10216
|
+
import { jsx as jsx232 } from "react/jsx-runtime";
|
|
10217
|
+
var StyledInput2 = styled38(Input)`
|
|
10618
10218
|
&:not([aria-disabled='true']) {
|
|
10619
10219
|
cursor: pointer;
|
|
10620
10220
|
}
|
|
@@ -10624,10 +10224,10 @@ var StyledInput2 = styled40(Input)`
|
|
|
10624
10224
|
}
|
|
10625
10225
|
`;
|
|
10626
10226
|
var COPY_SUCCESS_DURATION = 2e3;
|
|
10627
|
-
var InputClickToCopy =
|
|
10227
|
+
var InputClickToCopy = forwardRef14(
|
|
10628
10228
|
({ value, onCopy, ...props }, ref) => {
|
|
10629
|
-
const [isCopied, setIsCopied] =
|
|
10630
|
-
|
|
10229
|
+
const [isCopied, setIsCopied] = useState13(false);
|
|
10230
|
+
useEffect9(() => {
|
|
10631
10231
|
if (isCopied) {
|
|
10632
10232
|
const timeout = setTimeout(() => {
|
|
10633
10233
|
setIsCopied(false);
|
|
@@ -10651,7 +10251,7 @@ var InputClickToCopy = forwardRef15(
|
|
|
10651
10251
|
return value;
|
|
10652
10252
|
});
|
|
10653
10253
|
};
|
|
10654
|
-
return /* @__PURE__ */
|
|
10254
|
+
return /* @__PURE__ */ jsx232(
|
|
10655
10255
|
StyledInput2,
|
|
10656
10256
|
{
|
|
10657
10257
|
"aria-label": "Click to Copy",
|
|
@@ -10659,13 +10259,13 @@ var InputClickToCopy = forwardRef15(
|
|
|
10659
10259
|
ref,
|
|
10660
10260
|
onClick: handleClick,
|
|
10661
10261
|
readOnly: true,
|
|
10662
|
-
rightIcon: isCopied ? /* @__PURE__ */
|
|
10262
|
+
rightIcon: isCopied ? /* @__PURE__ */ jsx232(
|
|
10663
10263
|
Icon,
|
|
10664
10264
|
{
|
|
10665
10265
|
colorScheme: "success",
|
|
10666
10266
|
type: "checkmark-circle"
|
|
10667
10267
|
}
|
|
10668
|
-
) : /* @__PURE__ */
|
|
10268
|
+
) : /* @__PURE__ */ jsx232(Icon, { type: "save-as-copy" }),
|
|
10669
10269
|
value
|
|
10670
10270
|
}
|
|
10671
10271
|
);
|
|
@@ -10674,16 +10274,16 @@ var InputClickToCopy = forwardRef15(
|
|
|
10674
10274
|
InputClickToCopy.displayName = "InputClickToCopy";
|
|
10675
10275
|
|
|
10676
10276
|
// src/components/KeyboardShortcut/KeyboardShortcut.tsx
|
|
10677
|
-
import
|
|
10678
|
-
import { isNotNil as
|
|
10679
|
-
import { jsx as
|
|
10680
|
-
var StyledKeyboardShortcut =
|
|
10277
|
+
import styled39 from "styled-components";
|
|
10278
|
+
import { isNotNil as isNotNil19 } from "@wistia/type-guards";
|
|
10279
|
+
import { jsx as jsx233, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
10280
|
+
var StyledKeyboardShortcut = styled39.div`
|
|
10681
10281
|
align-items: center;
|
|
10682
10282
|
display: flex;
|
|
10683
10283
|
gap: var(--wui-space-02);
|
|
10684
10284
|
${({ $fullWidth }) => $fullWidth && "width: 100%; justify-content: space-between;"}
|
|
10685
10285
|
`;
|
|
10686
|
-
var StyledKey =
|
|
10286
|
+
var StyledKey = styled39.kbd`
|
|
10687
10287
|
align-items: center;
|
|
10688
10288
|
background: var(--wui-color-bg-surface-secondary);
|
|
10689
10289
|
border-bottom: 1px solid var(--wui-color-border-secondary);
|
|
@@ -10706,11 +10306,11 @@ var StyledKey = styled41.kbd`
|
|
|
10706
10306
|
min-width: 20px;
|
|
10707
10307
|
padding: 0 var(--wui-space-01);
|
|
10708
10308
|
`;
|
|
10709
|
-
var Label2 =
|
|
10309
|
+
var Label2 = styled39.span`
|
|
10710
10310
|
color: var(--wui-color-text);
|
|
10711
10311
|
font-size: 12px;
|
|
10712
10312
|
`;
|
|
10713
|
-
var KeysContainer =
|
|
10313
|
+
var KeysContainer = styled39.div`
|
|
10714
10314
|
display: flex;
|
|
10715
10315
|
gap: var(--wui-space-01);
|
|
10716
10316
|
`;
|
|
@@ -10763,193 +10363,35 @@ var KeyboardShortcut = ({
|
|
|
10763
10363
|
keyboardKeys,
|
|
10764
10364
|
fullWidth = false,
|
|
10765
10365
|
...otherProps
|
|
10766
|
-
}) => /* @__PURE__ */
|
|
10366
|
+
}) => /* @__PURE__ */ jsxs25(
|
|
10767
10367
|
StyledKeyboardShortcut,
|
|
10768
10368
|
{
|
|
10769
10369
|
$fullWidth: fullWidth,
|
|
10770
10370
|
...otherProps,
|
|
10771
10371
|
children: [
|
|
10772
|
-
|
|
10773
|
-
/* @__PURE__ */
|
|
10372
|
+
isNotNil19(label) && /* @__PURE__ */ jsx233(Label2, { children: label }),
|
|
10373
|
+
/* @__PURE__ */ jsx233(KeysContainer, { children: (Array.isArray(keyboardKeys) ? keyboardKeys : [keyboardKeys]).map((keyboardKey, index) => /* @__PURE__ */ jsx233(
|
|
10774
10374
|
StyledKey,
|
|
10775
10375
|
{
|
|
10776
10376
|
children: keyToString(keyboardKey)
|
|
10777
10377
|
},
|
|
10778
10378
|
index
|
|
10779
10379
|
)) })
|
|
10780
|
-
]
|
|
10781
|
-
}
|
|
10782
|
-
);
|
|
10783
|
-
KeyboardShortcut.displayName = "KeyboardShortcut";
|
|
10784
|
-
|
|
10785
|
-
// src/components/List/List.tsx
|
|
10786
|
-
import { isNotNil as isNotNil21 } from "@wistia/type-guards";
|
|
10787
|
-
import styled43, { css as css30 } from "styled-components";
|
|
10788
|
-
|
|
10789
|
-
// src/components/List/ListItem.tsx
|
|
10790
|
-
import styled42 from "styled-components";
|
|
10791
|
-
import { isNil as isNil14 } from "@wistia/type-guards";
|
|
10792
|
-
import { jsx as jsx236 } from "react/jsx-runtime";
|
|
10793
|
-
var ListItemComponent = styled42.li`
|
|
10794
|
-
margin-bottom: var(--wui-space-02);
|
|
10795
|
-
`;
|
|
10796
|
-
var ListItem = ({ children }) => {
|
|
10797
|
-
if (isNil14(children)) {
|
|
10798
|
-
return null;
|
|
10799
|
-
}
|
|
10800
|
-
return /* @__PURE__ */ jsx236(ListItemComponent, { children });
|
|
10801
|
-
};
|
|
10802
|
-
ListItem.displayName = "ListItem";
|
|
10803
|
-
|
|
10804
|
-
// src/components/List/List.tsx
|
|
10805
|
-
import { jsx as jsx237, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
10806
|
-
var spacesStyle = css30`
|
|
10807
|
-
overflow: hidden;
|
|
10808
|
-
padding-left: 0;
|
|
10809
|
-
vertical-align: bottom;
|
|
10810
|
-
|
|
10811
|
-
li {
|
|
10812
|
-
display: block;
|
|
10813
|
-
float: left;
|
|
10814
|
-
|
|
10815
|
-
&::after {
|
|
10816
|
-
content: ' ';
|
|
10817
|
-
padding-right: var(--wui-space-03);
|
|
10818
|
-
}
|
|
10819
|
-
|
|
10820
|
-
&:last-child {
|
|
10821
|
-
&::after {
|
|
10822
|
-
content: '' !important;
|
|
10823
|
-
padding-right: 0;
|
|
10824
|
-
}
|
|
10825
|
-
}
|
|
10826
|
-
}
|
|
10827
|
-
`;
|
|
10828
|
-
var commasStyle = css30`
|
|
10829
|
-
${spacesStyle};
|
|
10830
|
-
|
|
10831
|
-
li {
|
|
10832
|
-
&::after {
|
|
10833
|
-
content: ',' !important;
|
|
10834
|
-
padding-right: var(--wui-space-01);
|
|
10835
|
-
}
|
|
10836
|
-
}
|
|
10837
|
-
`;
|
|
10838
|
-
var slashesStyle = css30`
|
|
10839
|
-
${spacesStyle};
|
|
10840
|
-
|
|
10841
|
-
li {
|
|
10842
|
-
&::after {
|
|
10843
|
-
content: '/' !important;
|
|
10844
|
-
padding-left: var(--wui-space-01);
|
|
10845
|
-
padding-right: var(--wui-space-01);
|
|
10846
|
-
}
|
|
10847
|
-
}
|
|
10848
|
-
`;
|
|
10849
|
-
var breadcrumbsStyle = css30`
|
|
10850
|
-
${spacesStyle};
|
|
10851
|
-
|
|
10852
|
-
li {
|
|
10853
|
-
&::after {
|
|
10854
|
-
content: '>' !important;
|
|
10855
|
-
padding-left: var(--wui-space-01);
|
|
10856
|
-
padding-right: var(--wui-space-01);
|
|
10857
|
-
}
|
|
10858
|
-
}
|
|
10859
|
-
`;
|
|
10860
|
-
var unbulletedStyle = css30`
|
|
10861
|
-
list-style: none;
|
|
10862
|
-
padding-left: 0;
|
|
10863
|
-
`;
|
|
10864
|
-
var ListComponent = styled43.ul`
|
|
10865
|
-
list-style-position: outside;
|
|
10866
|
-
margin: 0 0 var(--wui-space-01);
|
|
10867
|
-
padding: 0 0 0 var(--wui-space-04);
|
|
10868
|
-
${({ variant }) => variant === "unbulleted" && unbulletedStyle};
|
|
10869
|
-
${({ variant }) => variant === "spaces" && spacesStyle};
|
|
10870
|
-
${({ variant }) => variant === "commas" && commasStyle};
|
|
10871
|
-
${({ variant }) => variant === "slashes" && slashesStyle};
|
|
10872
|
-
${({ variant }) => variant === "breadcrumbs" && breadcrumbsStyle};
|
|
10873
|
-
|
|
10874
|
-
> li:last-child {
|
|
10875
|
-
margin-bottom: 0;
|
|
10876
|
-
}
|
|
10877
|
-
|
|
10878
|
-
ul,
|
|
10879
|
-
ol {
|
|
10880
|
-
margin-top: var(--wui-space-01);
|
|
10881
|
-
}
|
|
10882
|
-
|
|
10883
|
-
/* nested lists should not have bottom margins because their container <li> will have one */
|
|
10884
|
-
li ul,
|
|
10885
|
-
li ol {
|
|
10886
|
-
margin-bottom: 0;
|
|
10887
|
-
}
|
|
10888
|
-
`;
|
|
10889
|
-
var renderListComponent = (listItems, variant, { ...otherProps }) => {
|
|
10890
|
-
const elementType = variant === "ordered" ? "ol" : "ul";
|
|
10891
|
-
return /* @__PURE__ */ jsx237(
|
|
10892
|
-
ListComponent,
|
|
10893
|
-
{
|
|
10894
|
-
as: elementType,
|
|
10895
|
-
variant,
|
|
10896
|
-
...otherProps,
|
|
10897
|
-
children: listItems
|
|
10898
|
-
}
|
|
10899
|
-
);
|
|
10900
|
-
};
|
|
10901
|
-
var renderListFromArray = (listItems, variant, otherProps) => {
|
|
10902
|
-
let itemCount = 0;
|
|
10903
|
-
const items = listItems.map((listItem, i) => {
|
|
10904
|
-
const item = listItem;
|
|
10905
|
-
const nextItem = listItems[i + 1];
|
|
10906
|
-
const key = `item-${itemCount += 1}`;
|
|
10907
|
-
if (Array.isArray(nextItem)) {
|
|
10908
|
-
return /* @__PURE__ */ jsxs28(ListItem, { children: [
|
|
10909
|
-
item,
|
|
10910
|
-
renderListFromArray(nextItem, variant, otherProps)
|
|
10911
|
-
] }, key);
|
|
10912
|
-
}
|
|
10913
|
-
if (Array.isArray(item)) {
|
|
10914
|
-
return null;
|
|
10915
|
-
}
|
|
10916
|
-
return /* @__PURE__ */ jsx237(ListItem, { children: item }, key);
|
|
10917
|
-
});
|
|
10918
|
-
return renderListComponent(items, variant, otherProps);
|
|
10919
|
-
};
|
|
10920
|
-
var List = ({
|
|
10921
|
-
children,
|
|
10922
|
-
items,
|
|
10923
|
-
variant,
|
|
10924
|
-
...otherProps
|
|
10925
|
-
}) => {
|
|
10926
|
-
const listVariant = variant ?? "bullets";
|
|
10927
|
-
if (isNotNil21(children)) {
|
|
10928
|
-
if (Array.isArray(children) && !children.length) {
|
|
10929
|
-
return null;
|
|
10930
|
-
}
|
|
10931
|
-
return renderListComponent(children, listVariant, otherProps);
|
|
10932
|
-
}
|
|
10933
|
-
if (isNotNil21(items)) {
|
|
10934
|
-
if (!items.length) {
|
|
10935
|
-
return null;
|
|
10936
|
-
}
|
|
10937
|
-
return renderListFromArray(items, listVariant, otherProps);
|
|
10938
|
-
}
|
|
10939
|
-
return null;
|
|
10940
|
-
};
|
|
10941
|
-
List.displayName = "List";
|
|
10380
|
+
]
|
|
10381
|
+
}
|
|
10382
|
+
);
|
|
10383
|
+
KeyboardShortcut.displayName = "KeyboardShortcut";
|
|
10942
10384
|
|
|
10943
10385
|
// src/components/Menu/Menu.tsx
|
|
10944
|
-
import
|
|
10386
|
+
import styled40, { css as css30, keyframes as keyframes3 } from "styled-components";
|
|
10945
10387
|
import {
|
|
10946
10388
|
DropdownMenu,
|
|
10947
10389
|
DropdownMenuTrigger,
|
|
10948
10390
|
DropdownMenuPortal,
|
|
10949
10391
|
DropdownMenuContent
|
|
10950
10392
|
} from "@radix-ui/react-dropdown-menu";
|
|
10951
|
-
import { isNotNil as
|
|
10952
|
-
import { useMemo as
|
|
10393
|
+
import { isNotNil as isNotNil20, isNotUndefined as isNotUndefined10 } from "@wistia/type-guards";
|
|
10394
|
+
import { useMemo as useMemo8 } from "react";
|
|
10953
10395
|
|
|
10954
10396
|
// src/components/Menu/MenuContext.tsx
|
|
10955
10397
|
import { createContext as createContext6, useContext as useContext7 } from "react";
|
|
@@ -10957,7 +10399,7 @@ var MenuContext = createContext6({ compact: false });
|
|
|
10957
10399
|
var useMenuContext = () => useContext7(MenuContext);
|
|
10958
10400
|
|
|
10959
10401
|
// src/components/Menu/Menu.tsx
|
|
10960
|
-
import { jsx as
|
|
10402
|
+
import { jsx as jsx234, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
10961
10403
|
var open = keyframes3`
|
|
10962
10404
|
from {
|
|
10963
10405
|
opacity: 0;
|
|
@@ -10978,7 +10420,7 @@ var close = keyframes3`
|
|
|
10978
10420
|
transform: scale(.97) translateY(-8px);
|
|
10979
10421
|
}
|
|
10980
10422
|
`;
|
|
10981
|
-
var menuItemCss =
|
|
10423
|
+
var menuItemCss = css30`
|
|
10982
10424
|
--menu-label-description-gap: var(--wui-space-01);
|
|
10983
10425
|
--menu-item-inner-gap: var(--wui-space-03);
|
|
10984
10426
|
--menu-item-left-icon-size: 24px;
|
|
@@ -10989,7 +10431,7 @@ var menuItemCss = css31`
|
|
|
10989
10431
|
--menu-label-line-height: var(--wui-typography-label-3-line-height);
|
|
10990
10432
|
--menu-divider-margin: var(--wui-space-02);
|
|
10991
10433
|
`;
|
|
10992
|
-
var compactMenuItemCss =
|
|
10434
|
+
var compactMenuItemCss = css30`
|
|
10993
10435
|
--menu-label-description-gap: 0;
|
|
10994
10436
|
--menu-item-inner-gap: var(--wui-space-02);
|
|
10995
10437
|
--menu-item-left-icon-size: 16px;
|
|
@@ -11000,7 +10442,7 @@ var compactMenuItemCss = css31`
|
|
|
11000
10442
|
--menu-label-line-height: var(--wui-typography-label-4-line-height);
|
|
11001
10443
|
--menu-divider-margin: var(--wui-space-01);
|
|
11002
10444
|
`;
|
|
11003
|
-
var menuContentCss =
|
|
10445
|
+
var menuContentCss = css30`
|
|
11004
10446
|
--menu-font-family: var(--wui-typography-family-default);
|
|
11005
10447
|
--menu-bg: var(--wui-color-bg-surface);
|
|
11006
10448
|
--menu-shadow: var(--wui-elevation-01);
|
|
@@ -11042,7 +10484,7 @@ var menuContentCss = css31`
|
|
|
11042
10484
|
margin: var(--menu-divider-margin) 0;
|
|
11043
10485
|
}
|
|
11044
10486
|
`;
|
|
11045
|
-
var MenuContent =
|
|
10487
|
+
var MenuContent = styled40(DropdownMenuContent)`
|
|
11046
10488
|
${menuContentCss}
|
|
11047
10489
|
`;
|
|
11048
10490
|
var Menu = ({
|
|
@@ -11058,9 +10500,9 @@ var Menu = ({
|
|
|
11058
10500
|
onInteractOutside,
|
|
11059
10501
|
...props
|
|
11060
10502
|
}) => {
|
|
11061
|
-
const contextValue =
|
|
10503
|
+
const contextValue = useMemo8(() => ({ compact }), [compact]);
|
|
11062
10504
|
let controlProps = {
|
|
11063
|
-
...
|
|
10505
|
+
...isNotNil20(onOpenChange) && isNotNil20(isOpen) ? { open: isOpen, onOpenChange } : {}
|
|
11064
10506
|
};
|
|
11065
10507
|
if (disabled) {
|
|
11066
10508
|
controlProps = {
|
|
@@ -11068,24 +10510,24 @@ var Menu = ({
|
|
|
11068
10510
|
onOpenChange: () => null
|
|
11069
10511
|
};
|
|
11070
10512
|
}
|
|
11071
|
-
return /* @__PURE__ */
|
|
10513
|
+
return /* @__PURE__ */ jsx234(MenuContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsxs26(
|
|
11072
10514
|
DropdownMenu,
|
|
11073
10515
|
{
|
|
11074
10516
|
modal: false,
|
|
11075
10517
|
...controlProps,
|
|
11076
10518
|
children: [
|
|
11077
|
-
/* @__PURE__ */
|
|
10519
|
+
/* @__PURE__ */ jsx234(DropdownMenuTrigger, { asChild: true, children: isNotUndefined10(trigger) ? trigger : /* @__PURE__ */ jsx234(
|
|
11078
10520
|
Button,
|
|
11079
10521
|
{
|
|
11080
10522
|
"aria-expanded": isOpen,
|
|
11081
10523
|
disabled,
|
|
11082
10524
|
forceState: isOpen ? "active" : void 0,
|
|
11083
|
-
rightIcon: /* @__PURE__ */
|
|
10525
|
+
rightIcon: /* @__PURE__ */ jsx234(Icon, { type: "caret-down" }),
|
|
11084
10526
|
...triggerProps,
|
|
11085
10527
|
children: label
|
|
11086
10528
|
}
|
|
11087
10529
|
) }),
|
|
11088
|
-
/* @__PURE__ */
|
|
10530
|
+
/* @__PURE__ */ jsx234(DropdownMenuPortal, { children: /* @__PURE__ */ jsx234(
|
|
11089
10531
|
MenuContent,
|
|
11090
10532
|
{
|
|
11091
10533
|
...props,
|
|
@@ -11106,19 +10548,19 @@ var Menu = ({
|
|
|
11106
10548
|
Menu.displayName = "Menu";
|
|
11107
10549
|
|
|
11108
10550
|
// src/components/Menu/MenuLabel.tsx
|
|
11109
|
-
import
|
|
10551
|
+
import styled41 from "styled-components";
|
|
11110
10552
|
import { DropdownMenuLabel } from "@radix-ui/react-dropdown-menu";
|
|
11111
|
-
import { jsx as
|
|
11112
|
-
var StyledMenuLabel =
|
|
10553
|
+
import { jsx as jsx235 } from "react/jsx-runtime";
|
|
10554
|
+
var StyledMenuLabel = styled41(DropdownMenuLabel)`
|
|
11113
10555
|
padding: var(--wui-space-02);
|
|
11114
10556
|
`;
|
|
11115
10557
|
var MenuLabel = ({ children, ...props }) => {
|
|
11116
|
-
return /* @__PURE__ */
|
|
10558
|
+
return /* @__PURE__ */ jsx235(
|
|
11117
10559
|
StyledMenuLabel,
|
|
11118
10560
|
{
|
|
11119
10561
|
asChild: true,
|
|
11120
10562
|
...props,
|
|
11121
|
-
children: /* @__PURE__ */
|
|
10563
|
+
children: /* @__PURE__ */ jsx235(
|
|
11122
10564
|
Heading,
|
|
11123
10565
|
{
|
|
11124
10566
|
renderAs: "span",
|
|
@@ -11133,8 +10575,8 @@ var MenuLabel = ({ children, ...props }) => {
|
|
|
11133
10575
|
MenuLabel.displayName = "MenuLabel";
|
|
11134
10576
|
|
|
11135
10577
|
// src/components/Menu/SubMenu.tsx
|
|
11136
|
-
import { useState as
|
|
11137
|
-
import
|
|
10578
|
+
import { useState as useState14 } from "react";
|
|
10579
|
+
import styled44 from "styled-components";
|
|
11138
10580
|
import {
|
|
11139
10581
|
DropdownMenuPortal as DropdownMenuPortal2,
|
|
11140
10582
|
DropdownMenuSub,
|
|
@@ -11143,14 +10585,14 @@ import {
|
|
|
11143
10585
|
DropdownMenuSubTrigger,
|
|
11144
10586
|
DropdownMenuItem
|
|
11145
10587
|
} from "@radix-ui/react-dropdown-menu";
|
|
11146
|
-
import { isNotNil as
|
|
10588
|
+
import { isNotNil as isNotNil22 } from "@wistia/type-guards";
|
|
11147
10589
|
|
|
11148
10590
|
// src/components/Menu/MenuItemButton.tsx
|
|
11149
|
-
import { forwardRef as
|
|
11150
|
-
import
|
|
11151
|
-
import { isNotNil as
|
|
11152
|
-
import { jsx as
|
|
11153
|
-
var StyledButton3 =
|
|
10591
|
+
import { forwardRef as forwardRef15 } from "react";
|
|
10592
|
+
import styled42 from "styled-components";
|
|
10593
|
+
import { isNotNil as isNotNil21, isNotUndefined as isNotUndefined11 } from "@wistia/type-guards";
|
|
10594
|
+
import { jsx as jsx236, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
10595
|
+
var StyledButton3 = styled42(Button)`
|
|
11154
10596
|
${({ colorScheme }) => getColorScheme(colorScheme)};
|
|
11155
10597
|
|
|
11156
10598
|
display: flex;
|
|
@@ -11189,7 +10631,7 @@ var StyledButton3 = styled46(Button)`
|
|
|
11189
10631
|
padding-left: var(--wui-space-04);
|
|
11190
10632
|
}
|
|
11191
10633
|
`;
|
|
11192
|
-
var StyledLeftIconContainer =
|
|
10634
|
+
var StyledLeftIconContainer = styled42.div`
|
|
11193
10635
|
height: var(--menu-item-left-icon-size);
|
|
11194
10636
|
width: var(--menu-item-left-icon-size);
|
|
11195
10637
|
|
|
@@ -11200,7 +10642,7 @@ var StyledLeftIconContainer = styled46.div`
|
|
|
11200
10642
|
}
|
|
11201
10643
|
}
|
|
11202
10644
|
`;
|
|
11203
|
-
var StyledRightIconContainer =
|
|
10645
|
+
var StyledRightIconContainer = styled42.div`
|
|
11204
10646
|
height: var(--menu-item-right-icon-size);
|
|
11205
10647
|
width: var(--menu-item-right-icon-size);
|
|
11206
10648
|
|
|
@@ -11211,19 +10653,19 @@ var StyledRightIconContainer = styled46.div`
|
|
|
11211
10653
|
}
|
|
11212
10654
|
}
|
|
11213
10655
|
`;
|
|
11214
|
-
var StyledLabelAndDescriptionContainer =
|
|
10656
|
+
var StyledLabelAndDescriptionContainer = styled42.div`
|
|
11215
10657
|
display: flex;
|
|
11216
10658
|
flex-direction: column;
|
|
11217
10659
|
gap: var(--menu-label-description-gap);
|
|
11218
10660
|
flex-basis: 100%;
|
|
11219
10661
|
`;
|
|
11220
|
-
var StyledBadgeContainer =
|
|
10662
|
+
var StyledBadgeContainer = styled42.div`
|
|
11221
10663
|
align-self: start;
|
|
11222
10664
|
justify-self: end;
|
|
11223
10665
|
font-size: var(--wui-typography-label-4-size);
|
|
11224
10666
|
color: var(--wui-color-text-secondary);
|
|
11225
10667
|
`;
|
|
11226
|
-
var MenuItemButton =
|
|
10668
|
+
var MenuItemButton = forwardRef15(({ children, appearance, command, icon, ...props }, ref) => {
|
|
11227
10669
|
let { colorScheme, badge } = props;
|
|
11228
10670
|
if (appearance === "dangerous") {
|
|
11229
10671
|
if (isNotUndefined11(colorScheme)) {
|
|
@@ -11232,7 +10674,7 @@ var MenuItemButton = forwardRef16(({ children, appearance, command, icon, ...pro
|
|
|
11232
10674
|
colorScheme = "error";
|
|
11233
10675
|
}
|
|
11234
10676
|
if (appearance === "gated") {
|
|
11235
|
-
badge = /* @__PURE__ */
|
|
10677
|
+
badge = /* @__PURE__ */ jsx236(
|
|
11236
10678
|
Icon,
|
|
11237
10679
|
{
|
|
11238
10680
|
colorScheme: "purple",
|
|
@@ -11244,7 +10686,7 @@ var MenuItemButton = forwardRef16(({ children, appearance, command, icon, ...pro
|
|
|
11244
10686
|
}
|
|
11245
10687
|
);
|
|
11246
10688
|
}
|
|
11247
|
-
return /* @__PURE__ */
|
|
10689
|
+
return /* @__PURE__ */ jsxs27(
|
|
11248
10690
|
StyledButton3,
|
|
11249
10691
|
{
|
|
11250
10692
|
...props,
|
|
@@ -11254,10 +10696,10 @@ var MenuItemButton = forwardRef16(({ children, appearance, command, icon, ...pro
|
|
|
11254
10696
|
fullWidth: true,
|
|
11255
10697
|
unstyled: true,
|
|
11256
10698
|
children: [
|
|
11257
|
-
props.leftIcon ? /* @__PURE__ */
|
|
11258
|
-
/* @__PURE__ */
|
|
11259
|
-
|
|
11260
|
-
props.rightIcon ? /* @__PURE__ */
|
|
10699
|
+
props.leftIcon ? /* @__PURE__ */ jsx236(StyledLeftIconContainer, { children: props.leftIcon }) : null,
|
|
10700
|
+
/* @__PURE__ */ jsx236(StyledLabelAndDescriptionContainer, { children }),
|
|
10701
|
+
isNotNil21(badge) || isNotNil21(command) ? /* @__PURE__ */ jsx236(StyledBadgeContainer, { children: badge ?? command }) : null,
|
|
10702
|
+
props.rightIcon ? /* @__PURE__ */ jsx236(StyledRightIconContainer, { children: props.rightIcon }) : null
|
|
11261
10703
|
]
|
|
11262
10704
|
}
|
|
11263
10705
|
);
|
|
@@ -11265,15 +10707,15 @@ var MenuItemButton = forwardRef16(({ children, appearance, command, icon, ...pro
|
|
|
11265
10707
|
MenuItemButton.displayName = "MenuItemButton";
|
|
11266
10708
|
|
|
11267
10709
|
// src/components/Menu/MenuItemLabelDescription.tsx
|
|
11268
|
-
import
|
|
11269
|
-
import { jsx as
|
|
11270
|
-
var StyledMenuItemLabel =
|
|
11271
|
-
var StyledMenuItemDescription =
|
|
10710
|
+
import styled43 from "styled-components";
|
|
10711
|
+
import { jsx as jsx237 } from "react/jsx-runtime";
|
|
10712
|
+
var StyledMenuItemLabel = styled43.span``;
|
|
10713
|
+
var StyledMenuItemDescription = styled43(Text)``;
|
|
11272
10714
|
var MenuItemLabel = ({ children }) => {
|
|
11273
|
-
return /* @__PURE__ */
|
|
10715
|
+
return /* @__PURE__ */ jsx237(StyledMenuItemLabel, { children });
|
|
11274
10716
|
};
|
|
11275
10717
|
var MenuItemDescription = ({ children }) => {
|
|
11276
|
-
return /* @__PURE__ */
|
|
10718
|
+
return /* @__PURE__ */ jsx237(
|
|
11277
10719
|
StyledMenuItemDescription,
|
|
11278
10720
|
{
|
|
11279
10721
|
prominence: "secondary",
|
|
@@ -11284,18 +10726,18 @@ var MenuItemDescription = ({ children }) => {
|
|
|
11284
10726
|
};
|
|
11285
10727
|
|
|
11286
10728
|
// src/components/Menu/SubMenu.tsx
|
|
11287
|
-
import { jsx as
|
|
11288
|
-
var SubMenuContent =
|
|
10729
|
+
import { jsx as jsx238, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
10730
|
+
var SubMenuContent = styled44(DropdownMenuSubContent)`
|
|
11289
10731
|
${menuContentCss}
|
|
11290
10732
|
|
|
11291
10733
|
${mq.smAndDown} {
|
|
11292
10734
|
transform: translateX(-100%) !important;
|
|
11293
10735
|
}
|
|
11294
10736
|
`;
|
|
11295
|
-
var StyledMobileSubMenuItems =
|
|
10737
|
+
var StyledMobileSubMenuItems = styled44.div`
|
|
11296
10738
|
margin-left: var(--wui-space-04);
|
|
11297
10739
|
`;
|
|
11298
|
-
var StyledSubTrigger =
|
|
10740
|
+
var StyledSubTrigger = styled44(DropdownMenuSubTrigger)`
|
|
11299
10741
|
outline: none;
|
|
11300
10742
|
|
|
11301
10743
|
&[data-state='open'],
|
|
@@ -11306,12 +10748,12 @@ var StyledSubTrigger = styled48(DropdownMenuSubTrigger)`
|
|
|
11306
10748
|
var SubMenuTrigger = ({ icon, ...props }) => {
|
|
11307
10749
|
const { isSmAndUp } = useMq();
|
|
11308
10750
|
const Trigger4 = isSmAndUp ? StyledSubTrigger : DropdownMenuItem;
|
|
11309
|
-
return /* @__PURE__ */
|
|
10751
|
+
return /* @__PURE__ */ jsx238(Trigger4, { asChild: true, children: /* @__PURE__ */ jsx238(
|
|
11310
10752
|
MenuItemButton,
|
|
11311
10753
|
{
|
|
11312
10754
|
...props,
|
|
11313
10755
|
leftIcon: icon,
|
|
11314
|
-
rightIcon: /* @__PURE__ */
|
|
10756
|
+
rightIcon: /* @__PURE__ */ jsx238(Icon, { type: "caret-right" })
|
|
11315
10757
|
}
|
|
11316
10758
|
) });
|
|
11317
10759
|
};
|
|
@@ -11323,16 +10765,16 @@ var SubMenu = ({
|
|
|
11323
10765
|
...props
|
|
11324
10766
|
}) => {
|
|
11325
10767
|
const { isSmAndUp } = useMq();
|
|
11326
|
-
const [isExpanded, setIsExpanded] =
|
|
10768
|
+
const [isExpanded, setIsExpanded] = useState14(false);
|
|
11327
10769
|
const { compact } = useMenuContext();
|
|
11328
|
-
return isSmAndUp ? /* @__PURE__ */
|
|
11329
|
-
/* @__PURE__ */
|
|
11330
|
-
/* @__PURE__ */
|
|
11331
|
-
|
|
10770
|
+
return isSmAndUp ? /* @__PURE__ */ jsxs28(DropdownMenuSub, { onOpenChange, children: [
|
|
10771
|
+
/* @__PURE__ */ jsxs28(SubMenuTrigger, { ...props, children: [
|
|
10772
|
+
/* @__PURE__ */ jsx238(MenuItemLabel, { children: label }),
|
|
10773
|
+
isNotNil22(description) ? /* @__PURE__ */ jsx238(MenuItemDescription, { children: description }) : null
|
|
11332
10774
|
] }),
|
|
11333
|
-
/* @__PURE__ */
|
|
11334
|
-
] }) : /* @__PURE__ */
|
|
11335
|
-
/* @__PURE__ */
|
|
10775
|
+
/* @__PURE__ */ jsx238(DropdownMenuPortal2, { children: /* @__PURE__ */ jsx238(SubMenuContent, { $compact: compact, children }) })
|
|
10776
|
+
] }) : /* @__PURE__ */ jsxs28(DropdownMenuGroup, { children: [
|
|
10777
|
+
/* @__PURE__ */ jsxs28(
|
|
11336
10778
|
SubMenuTrigger,
|
|
11337
10779
|
{
|
|
11338
10780
|
...props,
|
|
@@ -11341,28 +10783,28 @@ var SubMenu = ({
|
|
|
11341
10783
|
setIsExpanded((prev) => !prev);
|
|
11342
10784
|
},
|
|
11343
10785
|
children: [
|
|
11344
|
-
/* @__PURE__ */
|
|
11345
|
-
/* @__PURE__ */
|
|
10786
|
+
/* @__PURE__ */ jsx238(MenuItemLabel, { children: label }),
|
|
10787
|
+
/* @__PURE__ */ jsx238(MenuItemDescription, { children: description })
|
|
11346
10788
|
]
|
|
11347
10789
|
}
|
|
11348
10790
|
),
|
|
11349
|
-
/* @__PURE__ */
|
|
10791
|
+
/* @__PURE__ */ jsx238(StyledMobileSubMenuItems, { children: isExpanded ? children : null })
|
|
11350
10792
|
] });
|
|
11351
10793
|
};
|
|
11352
10794
|
SubMenu.displayName = "SubMenu";
|
|
11353
10795
|
|
|
11354
10796
|
// src/components/Menu/MenuItem.tsx
|
|
11355
|
-
import { forwardRef as
|
|
10797
|
+
import { forwardRef as forwardRef16 } from "react";
|
|
11356
10798
|
import { DropdownMenuItem as DropdownMenuItem2 } from "@radix-ui/react-dropdown-menu";
|
|
11357
|
-
import { jsx as
|
|
11358
|
-
var MenuItem =
|
|
10799
|
+
import { jsx as jsx239 } from "react/jsx-runtime";
|
|
10800
|
+
var MenuItem = forwardRef16(
|
|
11359
10801
|
({ onSelect = () => null, ...props }, ref) => {
|
|
11360
|
-
return /* @__PURE__ */
|
|
10802
|
+
return /* @__PURE__ */ jsx239(
|
|
11361
10803
|
DropdownMenuItem2,
|
|
11362
10804
|
{
|
|
11363
10805
|
asChild: true,
|
|
11364
10806
|
onSelect,
|
|
11365
|
-
children: /* @__PURE__ */
|
|
10807
|
+
children: /* @__PURE__ */ jsx239(
|
|
11366
10808
|
MenuItemButton,
|
|
11367
10809
|
{
|
|
11368
10810
|
...props,
|
|
@@ -11380,9 +10822,9 @@ MenuItem.displayName = "MenuItem";
|
|
|
11380
10822
|
import {
|
|
11381
10823
|
DropdownMenuRadioGroup
|
|
11382
10824
|
} from "@radix-ui/react-dropdown-menu";
|
|
11383
|
-
import { jsx as
|
|
10825
|
+
import { jsx as jsx240 } from "react/jsx-runtime";
|
|
11384
10826
|
var MenuRadioGroup = ({ children, ...props }) => {
|
|
11385
|
-
return /* @__PURE__ */
|
|
10827
|
+
return /* @__PURE__ */ jsx240(DropdownMenuRadioGroup, { ...props, children });
|
|
11386
10828
|
};
|
|
11387
10829
|
MenuRadioGroup.displayName = "MenuRadioGroup";
|
|
11388
10830
|
|
|
@@ -11391,11 +10833,11 @@ import {
|
|
|
11391
10833
|
DropdownMenuItemIndicator,
|
|
11392
10834
|
DropdownMenuRadioItem
|
|
11393
10835
|
} from "@radix-ui/react-dropdown-menu";
|
|
11394
|
-
import { jsx as
|
|
10836
|
+
import { jsx as jsx241 } from "react/jsx-runtime";
|
|
11395
10837
|
var RadioMenuItem = ({
|
|
11396
10838
|
onSelect,
|
|
11397
10839
|
value,
|
|
11398
|
-
indicator = /* @__PURE__ */
|
|
10840
|
+
indicator = /* @__PURE__ */ jsx241(
|
|
11399
10841
|
Icon,
|
|
11400
10842
|
{
|
|
11401
10843
|
size: "sm",
|
|
@@ -11405,17 +10847,17 @@ var RadioMenuItem = ({
|
|
|
11405
10847
|
...props
|
|
11406
10848
|
}) => {
|
|
11407
10849
|
const extraProps = onSelect ? { onSelect } : {};
|
|
11408
|
-
return /* @__PURE__ */
|
|
10850
|
+
return /* @__PURE__ */ jsx241(
|
|
11409
10851
|
DropdownMenuRadioItem,
|
|
11410
10852
|
{
|
|
11411
10853
|
...extraProps,
|
|
11412
10854
|
asChild: true,
|
|
11413
10855
|
value,
|
|
11414
|
-
children: /* @__PURE__ */
|
|
10856
|
+
children: /* @__PURE__ */ jsx241(
|
|
11415
10857
|
MenuItemButton,
|
|
11416
10858
|
{
|
|
11417
10859
|
...props,
|
|
11418
|
-
rightIcon: /* @__PURE__ */
|
|
10860
|
+
rightIcon: /* @__PURE__ */ jsx241(DropdownMenuItemIndicator, { children: indicator })
|
|
11419
10861
|
}
|
|
11420
10862
|
)
|
|
11421
10863
|
}
|
|
@@ -11428,10 +10870,10 @@ import {
|
|
|
11428
10870
|
DropdownMenuCheckboxItem,
|
|
11429
10871
|
DropdownMenuItemIndicator as DropdownMenuItemIndicator2
|
|
11430
10872
|
} from "@radix-ui/react-dropdown-menu";
|
|
11431
|
-
import { isNotNil as
|
|
11432
|
-
import { jsx as
|
|
10873
|
+
import { isNotNil as isNotNil23 } from "@wistia/type-guards";
|
|
10874
|
+
import { jsx as jsx242, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
11433
10875
|
var CheckboxIndicator = ({ checked, ...props }) => {
|
|
11434
|
-
return checked ? /* @__PURE__ */
|
|
10876
|
+
return checked ? /* @__PURE__ */ jsxs29(
|
|
11435
10877
|
"svg",
|
|
11436
10878
|
{
|
|
11437
10879
|
...props,
|
|
@@ -11441,14 +10883,14 @@ var CheckboxIndicator = ({ checked, ...props }) => {
|
|
|
11441
10883
|
width: "24",
|
|
11442
10884
|
xmlns: "http://www.w3.org/2000/svg",
|
|
11443
10885
|
children: [
|
|
11444
|
-
/* @__PURE__ */
|
|
10886
|
+
/* @__PURE__ */ jsx242(
|
|
11445
10887
|
"path",
|
|
11446
10888
|
{
|
|
11447
10889
|
d: "m4 8c0-2.20914 1.79086-4 4-4h8c2.2091 0 4 1.79086 4 4v8c0 2.2091-1.7909 4-4 4h-8c-2.20914 0-4-1.7909-4-4z",
|
|
11448
10890
|
fill: "#2949e5"
|
|
11449
10891
|
}
|
|
11450
10892
|
),
|
|
11451
|
-
/* @__PURE__ */
|
|
10893
|
+
/* @__PURE__ */ jsx242(
|
|
11452
10894
|
"path",
|
|
11453
10895
|
{
|
|
11454
10896
|
d: "m10.4728 15.1931-3.09523-3.1131c-.18596-.187-.18596-.4902 0-.6773l.67341-.6773c.18596-.187.48749-.187.67344 0l2.08508 2.0971 4.4661-4.49174c.1859-.18703.4875-.18703.6734 0l.6734.67731c.186.18703.186.49027 0 .67731l-5.4762 5.50772c-.1859.187-.4874.187-.6734 0z",
|
|
@@ -11457,7 +10899,7 @@ var CheckboxIndicator = ({ checked, ...props }) => {
|
|
|
11457
10899
|
)
|
|
11458
10900
|
]
|
|
11459
10901
|
}
|
|
11460
|
-
) : /* @__PURE__ */
|
|
10902
|
+
) : /* @__PURE__ */ jsxs29(
|
|
11461
10903
|
"svg",
|
|
11462
10904
|
{
|
|
11463
10905
|
...props,
|
|
@@ -11467,14 +10909,14 @@ var CheckboxIndicator = ({ checked, ...props }) => {
|
|
|
11467
10909
|
width: "24",
|
|
11468
10910
|
xmlns: "http://www.w3.org/2000/svg",
|
|
11469
10911
|
children: [
|
|
11470
|
-
/* @__PURE__ */
|
|
10912
|
+
/* @__PURE__ */ jsx242(
|
|
11471
10913
|
"path",
|
|
11472
10914
|
{
|
|
11473
10915
|
d: "m8 4.5h8c1.933 0 3.5 1.567 3.5 3.5v8c0 1.933-1.567 3.5-3.5 3.5h-8c-1.933 0-3.5-1.567-3.5-3.5v-8c0-1.933 1.567-3.5 3.5-3.5z",
|
|
11474
10916
|
fill: "#fcfcfd"
|
|
11475
10917
|
}
|
|
11476
10918
|
),
|
|
11477
|
-
/* @__PURE__ */
|
|
10919
|
+
/* @__PURE__ */ jsx242(
|
|
11478
10920
|
"path",
|
|
11479
10921
|
{
|
|
11480
10922
|
d: "m8 4.5h8c1.933 0 3.5 1.567 3.5 3.5v8c0 1.933-1.567 3.5-3.5 3.5h-8c-1.933 0-3.5-1.567-3.5-3.5v-8c0-1.933 1.567-3.5 3.5-3.5z",
|
|
@@ -11491,19 +10933,19 @@ var CheckboxMenuItem = ({
|
|
|
11491
10933
|
onCheckedChange,
|
|
11492
10934
|
...props
|
|
11493
10935
|
}) => {
|
|
11494
|
-
return /* @__PURE__ */
|
|
10936
|
+
return /* @__PURE__ */ jsx242(
|
|
11495
10937
|
DropdownMenuCheckboxItem,
|
|
11496
10938
|
{
|
|
11497
10939
|
asChild: true,
|
|
11498
10940
|
checked,
|
|
11499
10941
|
onCheckedChange,
|
|
11500
10942
|
onSelect,
|
|
11501
|
-
children: /* @__PURE__ */
|
|
10943
|
+
children: /* @__PURE__ */ jsx242(
|
|
11502
10944
|
MenuItemButton,
|
|
11503
10945
|
{
|
|
11504
10946
|
...props,
|
|
11505
|
-
leftIcon:
|
|
11506
|
-
rightIcon:
|
|
10947
|
+
leftIcon: isNotNil23(props.icon) ? props.icon : /* @__PURE__ */ jsx242(CheckboxIndicator, { checked }),
|
|
10948
|
+
rightIcon: isNotNil23(props.icon) ? /* @__PURE__ */ jsx242(DropdownMenuItemIndicator2, { children: /* @__PURE__ */ jsx242(Icon, { type: "checkmark" }) }) : void 0
|
|
11507
10949
|
}
|
|
11508
10950
|
)
|
|
11509
10951
|
}
|
|
@@ -11512,37 +10954,37 @@ var CheckboxMenuItem = ({
|
|
|
11512
10954
|
CheckboxMenuItem.displayName = "CheckboxMenuItem";
|
|
11513
10955
|
|
|
11514
10956
|
// src/components/Modal/Modal.tsx
|
|
11515
|
-
import { forwardRef as
|
|
11516
|
-
import
|
|
10957
|
+
import { forwardRef as forwardRef19 } from "react";
|
|
10958
|
+
import styled49 from "styled-components";
|
|
11517
10959
|
import { Root as DialogRoot, Portal as DialogPortal } from "@radix-ui/react-dialog";
|
|
11518
|
-
import { isNotNil as
|
|
10960
|
+
import { isNotNil as isNotNil25 } from "@wistia/type-guards";
|
|
11519
10961
|
|
|
11520
10962
|
// src/components/Modal/ModalHeader.tsx
|
|
11521
|
-
import
|
|
10963
|
+
import styled46 from "styled-components";
|
|
11522
10964
|
import { Title as DialogTitle } from "@radix-ui/react-dialog";
|
|
11523
10965
|
|
|
11524
10966
|
// src/components/Modal/ModalCloseButton.tsx
|
|
11525
|
-
import
|
|
10967
|
+
import styled45 from "styled-components";
|
|
11526
10968
|
import { Close as DialogClose } from "@radix-ui/react-dialog";
|
|
11527
|
-
import { jsx as
|
|
11528
|
-
var CloseButton =
|
|
10969
|
+
import { jsx as jsx243 } from "react/jsx-runtime";
|
|
10970
|
+
var CloseButton = styled45(DialogClose)`
|
|
11529
10971
|
align-self: start;
|
|
11530
10972
|
`;
|
|
11531
10973
|
var ModalCloseButton = () => {
|
|
11532
|
-
return /* @__PURE__ */
|
|
10974
|
+
return /* @__PURE__ */ jsx243(CloseButton, { asChild: true, children: /* @__PURE__ */ jsx243(
|
|
11533
10975
|
IconButton,
|
|
11534
10976
|
{
|
|
11535
10977
|
label: "Dismiss modal",
|
|
11536
10978
|
size: "sm",
|
|
11537
10979
|
variant: "ghost",
|
|
11538
|
-
children: /* @__PURE__ */
|
|
10980
|
+
children: /* @__PURE__ */ jsx243(Icon, { type: "close" })
|
|
11539
10981
|
}
|
|
11540
10982
|
) });
|
|
11541
10983
|
};
|
|
11542
10984
|
|
|
11543
10985
|
// src/components/Modal/ModalHeader.tsx
|
|
11544
|
-
import { jsx as
|
|
11545
|
-
var Header =
|
|
10986
|
+
import { jsx as jsx244, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
10987
|
+
var Header = styled46.header`
|
|
11546
10988
|
display: flex;
|
|
11547
10989
|
order: 1;
|
|
11548
10990
|
gap: var(--wui-space-01);
|
|
@@ -11553,7 +10995,7 @@ var Header = styled50.header`
|
|
|
11553
10995
|
margin: 0 0 var(--wui-space-03);
|
|
11554
10996
|
}
|
|
11555
10997
|
`;
|
|
11556
|
-
var Title =
|
|
10998
|
+
var Title = styled46(DialogTitle)`
|
|
11557
10999
|
font-family: var(--wui-typography-heading-2-family);
|
|
11558
11000
|
line-height: var(--wui-typography-heading-2-line-height);
|
|
11559
11001
|
font-size: var(--wui-typography-heading-2-size);
|
|
@@ -11564,29 +11006,29 @@ var ModalHeader = ({
|
|
|
11564
11006
|
hideTitle,
|
|
11565
11007
|
hideCloseButton
|
|
11566
11008
|
}) => {
|
|
11567
|
-
const TitleComponent = hideTitle ? /* @__PURE__ */
|
|
11568
|
-
return /* @__PURE__ */
|
|
11009
|
+
const TitleComponent = hideTitle ? /* @__PURE__ */ jsx244(ScreenReaderOnly, { children: /* @__PURE__ */ jsx244(Title, { children: title }) }) : /* @__PURE__ */ jsx244(Title, { children: title });
|
|
11010
|
+
return /* @__PURE__ */ jsxs30(Header, { $hideTitle: hideTitle, children: [
|
|
11569
11011
|
TitleComponent,
|
|
11570
|
-
hideCloseButton ? null : /* @__PURE__ */
|
|
11012
|
+
hideCloseButton ? null : /* @__PURE__ */ jsx244(ModalCloseButton, {})
|
|
11571
11013
|
] });
|
|
11572
11014
|
};
|
|
11573
11015
|
|
|
11574
11016
|
// src/components/Modal/ModalContent.tsx
|
|
11575
|
-
import { forwardRef as
|
|
11576
|
-
import
|
|
11017
|
+
import { forwardRef as forwardRef17 } from "react";
|
|
11018
|
+
import styled47, { css as css31 } from "styled-components";
|
|
11577
11019
|
import { Content as DialogContent } from "@radix-ui/react-dialog";
|
|
11578
11020
|
|
|
11579
11021
|
// src/private/hooks/useFocusRestore/useFocusRestore.ts
|
|
11580
|
-
import { useRef as
|
|
11581
|
-
import { isNotNil as
|
|
11022
|
+
import { useRef as useRef13, useEffect as useEffect10 } from "react";
|
|
11023
|
+
import { isNotNil as isNotNil24 } from "@wistia/type-guards";
|
|
11582
11024
|
var useFocusRestore = () => {
|
|
11583
|
-
const previouslyFocusedRef =
|
|
11584
|
-
|
|
11025
|
+
const previouslyFocusedRef = useRef13(null);
|
|
11026
|
+
useEffect10(() => {
|
|
11585
11027
|
previouslyFocusedRef.current = document.activeElement;
|
|
11586
11028
|
}, []);
|
|
11587
|
-
|
|
11029
|
+
useEffect10(() => {
|
|
11588
11030
|
return () => {
|
|
11589
|
-
if (
|
|
11031
|
+
if (isNotNil24(previouslyFocusedRef.current)) {
|
|
11590
11032
|
setTimeout(() => {
|
|
11591
11033
|
previouslyFocusedRef.current?.focus();
|
|
11592
11034
|
}, 0);
|
|
@@ -11596,38 +11038,38 @@ var useFocusRestore = () => {
|
|
|
11596
11038
|
};
|
|
11597
11039
|
|
|
11598
11040
|
// src/components/Modal/ModalContent.tsx
|
|
11599
|
-
import { jsx as
|
|
11600
|
-
var alignTopStyles =
|
|
11041
|
+
import { jsx as jsx245 } from "react/jsx-runtime";
|
|
11042
|
+
var alignTopStyles = css31`
|
|
11601
11043
|
--wui-modal-translate-y: 0;
|
|
11602
11044
|
|
|
11603
11045
|
top: 0;
|
|
11604
11046
|
`;
|
|
11605
|
-
var alignVerticalCenterStyles =
|
|
11047
|
+
var alignVerticalCenterStyles = css31`
|
|
11606
11048
|
--wui-modal-translate-y: -50%;
|
|
11607
11049
|
|
|
11608
11050
|
top: 50%;
|
|
11609
11051
|
`;
|
|
11610
|
-
var alignBottomStyles =
|
|
11052
|
+
var alignBottomStyles = css31`
|
|
11611
11053
|
--wui-modal-translate-y: 0;
|
|
11612
11054
|
|
|
11613
11055
|
bottom: 0;
|
|
11614
11056
|
`;
|
|
11615
|
-
var alignHorizontalCenterStyles =
|
|
11057
|
+
var alignHorizontalCenterStyles = css31`
|
|
11616
11058
|
--wui-modal-translate-x: -50%;
|
|
11617
11059
|
|
|
11618
11060
|
left: 50%;
|
|
11619
11061
|
`;
|
|
11620
|
-
var alignRightStyles =
|
|
11062
|
+
var alignRightStyles = css31`
|
|
11621
11063
|
--wui-modal-translate-x: 0;
|
|
11622
11064
|
|
|
11623
11065
|
right: 0;
|
|
11624
11066
|
`;
|
|
11625
|
-
var alignLeftStyles =
|
|
11067
|
+
var alignLeftStyles = css31`
|
|
11626
11068
|
--wui-modal-translate-x: 0;
|
|
11627
11069
|
|
|
11628
11070
|
left: 0;
|
|
11629
11071
|
`;
|
|
11630
|
-
var StyledModalContent =
|
|
11072
|
+
var StyledModalContent = styled47(DialogContent)`
|
|
11631
11073
|
background-color: var(--wui-color-bg-app);
|
|
11632
11074
|
box-sizing: border-box;
|
|
11633
11075
|
display: flex;
|
|
@@ -11675,10 +11117,10 @@ var StyledModalContent = styled51(DialogContent)`
|
|
|
11675
11117
|
}
|
|
11676
11118
|
}
|
|
11677
11119
|
`;
|
|
11678
|
-
var ModalContent =
|
|
11120
|
+
var ModalContent = forwardRef17(
|
|
11679
11121
|
({ fullHeight, width, alignHorizontal, alignVertical, children, ...props }, ref) => {
|
|
11680
11122
|
useFocusRestore();
|
|
11681
|
-
return /* @__PURE__ */
|
|
11123
|
+
return /* @__PURE__ */ jsx245(
|
|
11682
11124
|
StyledModalContent,
|
|
11683
11125
|
{
|
|
11684
11126
|
ref,
|
|
@@ -11695,9 +11137,9 @@ var ModalContent = forwardRef18(
|
|
|
11695
11137
|
);
|
|
11696
11138
|
|
|
11697
11139
|
// src/private/components/Backdrop/Backdrop.tsx
|
|
11698
|
-
import { forwardRef as
|
|
11699
|
-
import
|
|
11700
|
-
import { jsx as
|
|
11140
|
+
import { forwardRef as forwardRef18 } from "react";
|
|
11141
|
+
import styled48 from "styled-components";
|
|
11142
|
+
import { jsx as jsx246 } from "react/jsx-runtime";
|
|
11701
11143
|
var alignVerticalMap = {
|
|
11702
11144
|
stretch: "normal",
|
|
11703
11145
|
top: "start",
|
|
@@ -11709,7 +11151,7 @@ var alignHorizontalMap = {
|
|
|
11709
11151
|
center: "center",
|
|
11710
11152
|
right: "end"
|
|
11711
11153
|
};
|
|
11712
|
-
var BackdropComponent =
|
|
11154
|
+
var BackdropComponent = styled48.div`
|
|
11713
11155
|
align-items: ${({ $alignVertical }) => alignVerticalMap[$alignVertical]};
|
|
11714
11156
|
animation-name: backdropShow var(--wui-motion-duration-03) var(--wui-motion-ease-out);
|
|
11715
11157
|
background: var(--wui-color-backdrop);
|
|
@@ -11735,8 +11177,8 @@ var BackdropComponent = styled52.div`
|
|
|
11735
11177
|
}
|
|
11736
11178
|
}
|
|
11737
11179
|
`;
|
|
11738
|
-
var Backdrop =
|
|
11739
|
-
({ alignHorizontal = "center", alignVertical = "center", children, ...otherProps }, ref) => /* @__PURE__ */
|
|
11180
|
+
var Backdrop = forwardRef18(
|
|
11181
|
+
({ alignHorizontal = "center", alignVertical = "center", children, ...otherProps }, ref) => /* @__PURE__ */ jsx246(
|
|
11740
11182
|
BackdropComponent,
|
|
11741
11183
|
{
|
|
11742
11184
|
ref,
|
|
@@ -11750,15 +11192,15 @@ var Backdrop = forwardRef19(
|
|
|
11750
11192
|
Backdrop.displayName = "Backdrop";
|
|
11751
11193
|
|
|
11752
11194
|
// src/components/Modal/Modal.tsx
|
|
11753
|
-
import { jsx as
|
|
11195
|
+
import { jsx as jsx247, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
11754
11196
|
var DEFAULT_MODAL_WIDTH = "532px";
|
|
11755
|
-
var ModalBody =
|
|
11197
|
+
var ModalBody = styled49.div`
|
|
11756
11198
|
flex-direction: column;
|
|
11757
11199
|
display: flex;
|
|
11758
11200
|
flex: 1 0 0;
|
|
11759
11201
|
order: 2;
|
|
11760
11202
|
`;
|
|
11761
|
-
var Modal =
|
|
11203
|
+
var Modal = forwardRef19(
|
|
11762
11204
|
({
|
|
11763
11205
|
children,
|
|
11764
11206
|
fullHeight = false,
|
|
@@ -11773,18 +11215,18 @@ var Modal = forwardRef20(
|
|
|
11773
11215
|
alignVertical = "center",
|
|
11774
11216
|
...props
|
|
11775
11217
|
}, ref) => {
|
|
11776
|
-
return /* @__PURE__ */
|
|
11218
|
+
return /* @__PURE__ */ jsx247(
|
|
11777
11219
|
DialogRoot,
|
|
11778
11220
|
{
|
|
11779
11221
|
onOpenChange: (open2) => {
|
|
11780
|
-
if (!open2 &&
|
|
11222
|
+
if (!open2 && isNotNil25(onRequestClose)) {
|
|
11781
11223
|
onRequestClose();
|
|
11782
11224
|
}
|
|
11783
11225
|
},
|
|
11784
11226
|
open: isOpen,
|
|
11785
|
-
children: /* @__PURE__ */
|
|
11786
|
-
/* @__PURE__ */
|
|
11787
|
-
/* @__PURE__ */
|
|
11227
|
+
children: /* @__PURE__ */ jsxs31(DialogPortal, { children: [
|
|
11228
|
+
/* @__PURE__ */ jsx247(Backdrop, {}),
|
|
11229
|
+
/* @__PURE__ */ jsxs31(
|
|
11788
11230
|
ModalContent,
|
|
11789
11231
|
{
|
|
11790
11232
|
ref,
|
|
@@ -11792,7 +11234,7 @@ var Modal = forwardRef20(
|
|
|
11792
11234
|
alignVertical,
|
|
11793
11235
|
fullHeight,
|
|
11794
11236
|
onOpenAutoFocus: (event) => {
|
|
11795
|
-
if (
|
|
11237
|
+
if (isNotNil25(initialFocusRef) && initialFocusRef.current) {
|
|
11796
11238
|
event.preventDefault();
|
|
11797
11239
|
requestAnimationFrame(() => {
|
|
11798
11240
|
initialFocusRef.current?.focus();
|
|
@@ -11802,8 +11244,8 @@ var Modal = forwardRef20(
|
|
|
11802
11244
|
width,
|
|
11803
11245
|
...props,
|
|
11804
11246
|
children: [
|
|
11805
|
-
/* @__PURE__ */
|
|
11806
|
-
/* @__PURE__ */
|
|
11247
|
+
/* @__PURE__ */ jsx247(ModalBody, { children }),
|
|
11248
|
+
/* @__PURE__ */ jsx247(
|
|
11807
11249
|
ModalHeader,
|
|
11808
11250
|
{
|
|
11809
11251
|
hideCloseButton,
|
|
@@ -11823,19 +11265,19 @@ Modal.displayName = "Modal";
|
|
|
11823
11265
|
|
|
11824
11266
|
// src/components/Popover/Popover.tsx
|
|
11825
11267
|
import { Root, Trigger as Trigger2, Portal, Content as Content2, Close } from "@radix-ui/react-popover";
|
|
11826
|
-
import
|
|
11268
|
+
import styled51, { css as css33 } from "styled-components";
|
|
11827
11269
|
|
|
11828
11270
|
// src/private/helpers/getControls/getControlProps.tsx
|
|
11829
|
-
import { isNotNil as
|
|
11271
|
+
import { isNotNil as isNotNil26 } from "@wistia/type-guards";
|
|
11830
11272
|
var getControlProps = (isOpen, onOpenChange) => {
|
|
11831
|
-
return
|
|
11273
|
+
return isNotNil26(onOpenChange) && isNotNil26(isOpen) ? { open: isOpen, onOpenChange } : {};
|
|
11832
11274
|
};
|
|
11833
11275
|
|
|
11834
11276
|
// src/components/Popover/PopoverArrow.tsx
|
|
11835
11277
|
import { PopoverArrow as RadixPopoverArrow } from "@radix-ui/react-popover";
|
|
11836
|
-
import
|
|
11837
|
-
import { jsx as
|
|
11838
|
-
var StyledPath =
|
|
11278
|
+
import styled50, { css as css32, keyframes as keyframes4 } from "styled-components";
|
|
11279
|
+
import { jsx as jsx248, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
11280
|
+
var StyledPath = styled50.path`
|
|
11839
11281
|
fill: var(--wui-color-border-secondary);
|
|
11840
11282
|
`;
|
|
11841
11283
|
var circleAnimation = keyframes4`
|
|
@@ -11846,7 +11288,7 @@ var circleAnimation = keyframes4`
|
|
|
11846
11288
|
opacity: 0;
|
|
11847
11289
|
}
|
|
11848
11290
|
`;
|
|
11849
|
-
var StyledCircle =
|
|
11291
|
+
var StyledCircle = styled50.circle`
|
|
11850
11292
|
stroke: var(--wui-color-border-active);
|
|
11851
11293
|
animation-duration: 2s;
|
|
11852
11294
|
animation-iteration-count: infinite;
|
|
@@ -11867,13 +11309,13 @@ var StyledCircle = styled54.circle`
|
|
|
11867
11309
|
}
|
|
11868
11310
|
|
|
11869
11311
|
@media (prefers-reduced-motion: no-preference) {
|
|
11870
|
-
${({ $isAnimated }) => $isAnimated &&
|
|
11312
|
+
${({ $isAnimated }) => $isAnimated && css32`
|
|
11871
11313
|
animation-name: ${circleAnimation};
|
|
11872
11314
|
`}
|
|
11873
11315
|
}
|
|
11874
11316
|
`;
|
|
11875
11317
|
var PopoverArrow = ({ isAnimated }) => {
|
|
11876
|
-
return /* @__PURE__ */
|
|
11318
|
+
return /* @__PURE__ */ jsx248(RadixPopoverArrow, { asChild: true, children: /* @__PURE__ */ jsxs32(
|
|
11877
11319
|
"svg",
|
|
11878
11320
|
{
|
|
11879
11321
|
fill: "none",
|
|
@@ -11882,8 +11324,8 @@ var PopoverArrow = ({ isAnimated }) => {
|
|
|
11882
11324
|
width: "48",
|
|
11883
11325
|
xmlns: "http://www.w3.org/2000/svg",
|
|
11884
11326
|
children: [
|
|
11885
|
-
/* @__PURE__ */
|
|
11886
|
-
/* @__PURE__ */
|
|
11327
|
+
/* @__PURE__ */ jsx248(StyledPath, { d: "M24 26.6667C21.0545 26.6667 18.6667 29.0545 18.6667 32C18.6667 34.9455 21.0545 37.3333 24 37.3333C26.9455 37.3333 29.3333 34.9455 29.3333 32C29.3333 29.0545 26.9455 26.6667 24 26.6667ZM23 0V32H25V0H23Z" }),
|
|
11328
|
+
/* @__PURE__ */ jsx248(
|
|
11887
11329
|
StyledCircle,
|
|
11888
11330
|
{
|
|
11889
11331
|
$isAnimated: isAnimated,
|
|
@@ -11894,7 +11336,7 @@ var PopoverArrow = ({ isAnimated }) => {
|
|
|
11894
11336
|
strokeWidth: "4"
|
|
11895
11337
|
}
|
|
11896
11338
|
),
|
|
11897
|
-
/* @__PURE__ */
|
|
11339
|
+
/* @__PURE__ */ jsx248(
|
|
11898
11340
|
StyledCircle,
|
|
11899
11341
|
{
|
|
11900
11342
|
$isAnimated: isAnimated,
|
|
@@ -11912,10 +11354,10 @@ var PopoverArrow = ({ isAnimated }) => {
|
|
|
11912
11354
|
PopoverArrow.displayName = "PopoverArrow";
|
|
11913
11355
|
|
|
11914
11356
|
// src/components/Popover/Popover.tsx
|
|
11915
|
-
import { jsx as
|
|
11916
|
-
var StyledContent2 =
|
|
11357
|
+
import { jsx as jsx249, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
11358
|
+
var StyledContent2 = styled51(Content2)`
|
|
11917
11359
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
11918
|
-
${({ $unstyled }) => !$unstyled &&
|
|
11360
|
+
${({ $unstyled }) => !$unstyled && css33`
|
|
11919
11361
|
border-radius: var(--wui-border-radius-02);
|
|
11920
11362
|
padding: var(--wui-space-04);
|
|
11921
11363
|
max-width: var(--wui-popover-max-width, 320px);
|
|
@@ -11932,7 +11374,7 @@ var StyledContent2 = styled55(Content2)`
|
|
|
11932
11374
|
right: var(--wui-space-02);
|
|
11933
11375
|
}
|
|
11934
11376
|
`;
|
|
11935
|
-
var
|
|
11377
|
+
var Popover = ({
|
|
11936
11378
|
children,
|
|
11937
11379
|
trigger,
|
|
11938
11380
|
isOpen = false,
|
|
@@ -11951,9 +11393,9 @@ var Popover2 = ({
|
|
|
11951
11393
|
"--wui-popover-max-width": maxWidth,
|
|
11952
11394
|
"--wui-popover-max-height": maxHeight
|
|
11953
11395
|
};
|
|
11954
|
-
return /* @__PURE__ */
|
|
11955
|
-
/* @__PURE__ */
|
|
11956
|
-
/* @__PURE__ */
|
|
11396
|
+
return /* @__PURE__ */ jsxs33(Root, { ...getControlProps(isOpen, onOpenChange), children: [
|
|
11397
|
+
/* @__PURE__ */ jsx249(Trigger2, { asChild: true, children: trigger }),
|
|
11398
|
+
/* @__PURE__ */ jsx249(Portal, { children: /* @__PURE__ */ jsxs33(
|
|
11957
11399
|
StyledContent2,
|
|
11958
11400
|
{
|
|
11959
11401
|
$colorScheme: colorScheme,
|
|
@@ -11962,30 +11404,30 @@ var Popover2 = ({
|
|
|
11962
11404
|
$unstyled: unstyled,
|
|
11963
11405
|
style,
|
|
11964
11406
|
children: [
|
|
11965
|
-
!hideCloseButton && /* @__PURE__ */
|
|
11407
|
+
!hideCloseButton && /* @__PURE__ */ jsx249(Close, { asChild: true, children: /* @__PURE__ */ jsx249(
|
|
11966
11408
|
IconButton,
|
|
11967
11409
|
{
|
|
11968
11410
|
"data-wui-popover-close": true,
|
|
11969
11411
|
label: "Close",
|
|
11970
11412
|
variant: "ghost",
|
|
11971
|
-
children: /* @__PURE__ */
|
|
11413
|
+
children: /* @__PURE__ */ jsx249(Icon, { type: "close" })
|
|
11972
11414
|
}
|
|
11973
11415
|
) }),
|
|
11974
|
-
withArrow ? /* @__PURE__ */
|
|
11975
|
-
/* @__PURE__ */
|
|
11416
|
+
withArrow ? /* @__PURE__ */ jsx249(PopoverArrow, { isAnimated }) : null,
|
|
11417
|
+
/* @__PURE__ */ jsx249("div", { children })
|
|
11976
11418
|
]
|
|
11977
11419
|
}
|
|
11978
11420
|
) })
|
|
11979
11421
|
] });
|
|
11980
11422
|
};
|
|
11981
|
-
|
|
11423
|
+
Popover.displayName = "Popover";
|
|
11982
11424
|
|
|
11983
11425
|
// src/components/ProgressBar/ProgressBar.tsx
|
|
11984
|
-
import
|
|
11426
|
+
import styled52 from "styled-components";
|
|
11985
11427
|
import { Root as ProgressRoot, Indicator as ProgressIndicator } from "@radix-ui/react-progress";
|
|
11986
|
-
import { isNotNil as
|
|
11987
|
-
import { jsx as
|
|
11988
|
-
var ProgressBarWrapper =
|
|
11428
|
+
import { isNotNil as isNotNil27 } from "@wistia/type-guards";
|
|
11429
|
+
import { jsx as jsx250, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
11430
|
+
var ProgressBarWrapper = styled52.div`
|
|
11989
11431
|
--progress-bar-height: 8px;
|
|
11990
11432
|
--progress-bar-indicator-color: var(--wui-color-bg-fill);
|
|
11991
11433
|
--progress-bar-background-color: var(--wui-color-bg-surface-secondary);
|
|
@@ -12001,7 +11443,7 @@ var getTranslateValue = (progress, max) => {
|
|
|
12001
11443
|
const progressPercentage = progress / max * 100;
|
|
12002
11444
|
return `translateX(-${100 - progressPercentage}%)`;
|
|
12003
11445
|
};
|
|
12004
|
-
var ProgressBarLabel =
|
|
11446
|
+
var ProgressBarLabel = styled52.div`
|
|
12005
11447
|
display: flex;
|
|
12006
11448
|
line-height: var(--wui-typography-label-3-line-height);
|
|
12007
11449
|
font-size: var(--wui-typography-label-3-size);
|
|
@@ -12009,7 +11451,7 @@ var ProgressBarLabel = styled56.div`
|
|
|
12009
11451
|
color: var(--wui-color-text-secondary);
|
|
12010
11452
|
flex-shrink: 0;
|
|
12011
11453
|
`;
|
|
12012
|
-
var StyledProgressIndicator =
|
|
11454
|
+
var StyledProgressIndicator = styled52(ProgressIndicator)`
|
|
12013
11455
|
background-color: var(--progress-bar-indicator-color);
|
|
12014
11456
|
width: 100%;
|
|
12015
11457
|
height: 100%;
|
|
@@ -12018,7 +11460,7 @@ var StyledProgressIndicator = styled56(ProgressIndicator)`
|
|
|
12018
11460
|
transition: transform 660ms cubic-bezier(0.65, 0, 0.35, 1);
|
|
12019
11461
|
transform: ${({ $progress, $max }) => getTranslateValue($progress, $max)};
|
|
12020
11462
|
`;
|
|
12021
|
-
var StyledProgressBar =
|
|
11463
|
+
var StyledProgressBar = styled52(ProgressRoot)`
|
|
12022
11464
|
position: relative;
|
|
12023
11465
|
overflow: hidden;
|
|
12024
11466
|
background: var(--progress-bar-background-color);
|
|
@@ -12037,15 +11479,15 @@ var ProgressBar = ({
|
|
|
12037
11479
|
labelRight,
|
|
12038
11480
|
...props
|
|
12039
11481
|
}) => {
|
|
12040
|
-
return /* @__PURE__ */
|
|
12041
|
-
|
|
12042
|
-
/* @__PURE__ */
|
|
11482
|
+
return /* @__PURE__ */ jsxs34(ProgressBarWrapper, { children: [
|
|
11483
|
+
isNotNil27(labelLeft) ? /* @__PURE__ */ jsx250(ProgressBarLabel, { children: labelLeft }) : null,
|
|
11484
|
+
/* @__PURE__ */ jsx250(
|
|
12043
11485
|
StyledProgressBar,
|
|
12044
11486
|
{
|
|
12045
11487
|
max,
|
|
12046
11488
|
value: progress,
|
|
12047
11489
|
...props,
|
|
12048
|
-
children: /* @__PURE__ */
|
|
11490
|
+
children: /* @__PURE__ */ jsx250(
|
|
12049
11491
|
StyledProgressIndicator,
|
|
12050
11492
|
{
|
|
12051
11493
|
$max: max,
|
|
@@ -12054,17 +11496,17 @@ var ProgressBar = ({
|
|
|
12054
11496
|
)
|
|
12055
11497
|
}
|
|
12056
11498
|
),
|
|
12057
|
-
|
|
11499
|
+
isNotNil27(labelRight) ? /* @__PURE__ */ jsx250(ProgressBarLabel, { children: labelRight }) : null
|
|
12058
11500
|
] });
|
|
12059
11501
|
};
|
|
12060
11502
|
ProgressBar.displayName = "ProgressBar";
|
|
12061
11503
|
|
|
12062
11504
|
// src/components/Radio/Radio.tsx
|
|
12063
|
-
import { forwardRef as
|
|
12064
|
-
import
|
|
12065
|
-
import { isNonEmptyString as
|
|
12066
|
-
import { jsx as
|
|
12067
|
-
var RadioIcon = () => /* @__PURE__ */
|
|
11505
|
+
import { forwardRef as forwardRef20, useId as useId3 } from "react";
|
|
11506
|
+
import styled53, { css as css34 } from "styled-components";
|
|
11507
|
+
import { isNonEmptyString as isNonEmptyString3 } from "@wistia/type-guards";
|
|
11508
|
+
import { jsx as jsx251, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
11509
|
+
var RadioIcon = () => /* @__PURE__ */ jsx251(
|
|
12068
11510
|
"svg",
|
|
12069
11511
|
{
|
|
12070
11512
|
fill: "inherit",
|
|
@@ -12072,7 +11514,7 @@ var RadioIcon = () => /* @__PURE__ */ jsx255(
|
|
|
12072
11514
|
viewBox: "0 0 1 1",
|
|
12073
11515
|
width: "1",
|
|
12074
11516
|
xmlns: "http://www.w3.org/2000/svg",
|
|
12075
|
-
children: /* @__PURE__ */
|
|
11517
|
+
children: /* @__PURE__ */ jsx251(
|
|
12076
11518
|
"circle",
|
|
12077
11519
|
{
|
|
12078
11520
|
cx: "0.5",
|
|
@@ -12083,7 +11525,7 @@ var RadioIcon = () => /* @__PURE__ */ jsx255(
|
|
|
12083
11525
|
)
|
|
12084
11526
|
}
|
|
12085
11527
|
);
|
|
12086
|
-
var sizeSmall2 =
|
|
11528
|
+
var sizeSmall2 = css34`
|
|
12087
11529
|
width: 14px;
|
|
12088
11530
|
height: 14px;
|
|
12089
11531
|
min-width: 14px;
|
|
@@ -12094,7 +11536,7 @@ var sizeSmall2 = css35`
|
|
|
12094
11536
|
height: 7px;
|
|
12095
11537
|
}
|
|
12096
11538
|
`;
|
|
12097
|
-
var sizeMedium2 =
|
|
11539
|
+
var sizeMedium2 = css34`
|
|
12098
11540
|
width: 16px;
|
|
12099
11541
|
height: 16px;
|
|
12100
11542
|
min-width: 16px;
|
|
@@ -12105,7 +11547,7 @@ var sizeMedium2 = css35`
|
|
|
12105
11547
|
height: 8px;
|
|
12106
11548
|
}
|
|
12107
11549
|
`;
|
|
12108
|
-
var sizeLarge2 =
|
|
11550
|
+
var sizeLarge2 = css34`
|
|
12109
11551
|
width: 20px;
|
|
12110
11552
|
height: 20px;
|
|
12111
11553
|
min-width: 20px;
|
|
@@ -12121,14 +11563,14 @@ var getSizeCss2 = (size) => {
|
|
|
12121
11563
|
if (size === "lg") return sizeLarge2;
|
|
12122
11564
|
return sizeMedium2;
|
|
12123
11565
|
};
|
|
12124
|
-
var StyledRadioWrapper =
|
|
11566
|
+
var StyledRadioWrapper = styled53.div`
|
|
12125
11567
|
display: flex;
|
|
12126
11568
|
margin: 0;
|
|
12127
11569
|
|
|
12128
11570
|
/* TODO this solves a problem but potentially causes and a11y issue */
|
|
12129
11571
|
user-select: none;
|
|
12130
11572
|
`;
|
|
12131
|
-
var StyledRadioInput =
|
|
11573
|
+
var StyledRadioInput = styled53.div`
|
|
12132
11574
|
${({ $size }) => getSizeCss2($size)}
|
|
12133
11575
|
line-height: 0;
|
|
12134
11576
|
margin: 0;
|
|
@@ -12150,7 +11592,7 @@ var StyledRadioInput = styled57.div`
|
|
|
12150
11592
|
}
|
|
12151
11593
|
}
|
|
12152
11594
|
`;
|
|
12153
|
-
var StyledHiddenRadioInput =
|
|
11595
|
+
var StyledHiddenRadioInput = styled53.input`
|
|
12154
11596
|
${visuallyHiddenStyle}
|
|
12155
11597
|
|
|
12156
11598
|
/* toggles display of faux-input border-color */
|
|
@@ -12163,7 +11605,7 @@ var StyledHiddenRadioInput = styled57.input`
|
|
|
12163
11605
|
display: block;
|
|
12164
11606
|
}
|
|
12165
11607
|
`;
|
|
12166
|
-
var Radio =
|
|
11608
|
+
var Radio = forwardRef20(
|
|
12167
11609
|
({
|
|
12168
11610
|
checked,
|
|
12169
11611
|
disabled = false,
|
|
@@ -12179,19 +11621,19 @@ var Radio = forwardRef21(
|
|
|
12179
11621
|
...props
|
|
12180
11622
|
}, ref) => {
|
|
12181
11623
|
const generatedId = useId3();
|
|
12182
|
-
const computedId =
|
|
11624
|
+
const computedId = isNonEmptyString3(id) ? id : `wistia-ui-radio-${generatedId}`;
|
|
12183
11625
|
const radioGroupContext = useRadioGroup();
|
|
12184
11626
|
const contextName = radioGroupContext?.name;
|
|
12185
11627
|
const contextOnChange = radioGroupContext?.onChange;
|
|
12186
11628
|
const radioName = name ?? contextName;
|
|
12187
11629
|
const handleOnChange = onChange ?? contextOnChange;
|
|
12188
|
-
return /* @__PURE__ */
|
|
11630
|
+
return /* @__PURE__ */ jsxs35(
|
|
12189
11631
|
StyledRadioWrapper,
|
|
12190
11632
|
{
|
|
12191
11633
|
$disabled: disabled,
|
|
12192
11634
|
"aria-invalid": props["aria-invalid"],
|
|
12193
11635
|
children: [
|
|
12194
|
-
/* @__PURE__ */
|
|
11636
|
+
/* @__PURE__ */ jsx251(
|
|
12195
11637
|
StyledHiddenRadioInput,
|
|
12196
11638
|
{
|
|
12197
11639
|
...props,
|
|
@@ -12206,16 +11648,16 @@ var Radio = forwardRef21(
|
|
|
12206
11648
|
value
|
|
12207
11649
|
}
|
|
12208
11650
|
),
|
|
12209
|
-
/* @__PURE__ */
|
|
11651
|
+
/* @__PURE__ */ jsx251(
|
|
12210
11652
|
FormControlLabel,
|
|
12211
11653
|
{
|
|
12212
|
-
controlSlot: /* @__PURE__ */
|
|
11654
|
+
controlSlot: /* @__PURE__ */ jsx251(
|
|
12213
11655
|
StyledRadioInput,
|
|
12214
11656
|
{
|
|
12215
11657
|
$disabled: disabled,
|
|
12216
11658
|
$size: size,
|
|
12217
11659
|
"data-wui-faux-input": "true",
|
|
12218
|
-
children: /* @__PURE__ */
|
|
11660
|
+
children: /* @__PURE__ */ jsx251(RadioIcon, {})
|
|
12219
11661
|
}
|
|
12220
11662
|
),
|
|
12221
11663
|
description,
|
|
@@ -12233,20 +11675,20 @@ var Radio = forwardRef21(
|
|
|
12233
11675
|
Radio.displayName = "Radio";
|
|
12234
11676
|
|
|
12235
11677
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
12236
|
-
import { forwardRef as
|
|
12237
|
-
import
|
|
11678
|
+
import { forwardRef as forwardRef21 } from "react";
|
|
11679
|
+
import styled55, { css as css35 } from "styled-components";
|
|
12238
11680
|
import { Root as ToggleGroupRoot } from "@radix-ui/react-toggle-group";
|
|
12239
|
-
import { isNil as
|
|
11681
|
+
import { isNil as isNil13 } from "@wistia/type-guards";
|
|
12240
11682
|
|
|
12241
11683
|
// src/components/SegmentedControl/useSelectedItemStyle.tsx
|
|
12242
|
-
import { createContext as createContext7, useContext as useContext8, useMemo as
|
|
12243
|
-
import { jsx as
|
|
11684
|
+
import { createContext as createContext7, useContext as useContext8, useMemo as useMemo9, useState as useState15 } from "react";
|
|
11685
|
+
import { jsx as jsx252 } from "react/jsx-runtime";
|
|
12244
11686
|
var SelectedItemStyleContext = createContext7(null);
|
|
12245
11687
|
var SelectedItemStyleProvider = ({
|
|
12246
11688
|
children
|
|
12247
11689
|
}) => {
|
|
12248
|
-
const [selectedItemMeasurements, setSelectedItemMeasurements] =
|
|
12249
|
-
const selectedItemIndicatorStyle =
|
|
11690
|
+
const [selectedItemMeasurements, setSelectedItemMeasurements] = useState15(null);
|
|
11691
|
+
const selectedItemIndicatorStyle = useMemo9(
|
|
12250
11692
|
() => selectedItemMeasurements != null ? {
|
|
12251
11693
|
height: `${selectedItemMeasurements.offsetHeight}px`,
|
|
12252
11694
|
transform: `translateX(${selectedItemMeasurements.offsetLeft}px) translateY(-50%)`,
|
|
@@ -12256,14 +11698,14 @@ var SelectedItemStyleProvider = ({
|
|
|
12256
11698
|
},
|
|
12257
11699
|
[selectedItemMeasurements]
|
|
12258
11700
|
);
|
|
12259
|
-
const contextValue =
|
|
11701
|
+
const contextValue = useMemo9(
|
|
12260
11702
|
() => ({
|
|
12261
11703
|
setSelectedItemMeasurements,
|
|
12262
11704
|
selectedItemIndicatorStyle
|
|
12263
11705
|
}),
|
|
12264
11706
|
[selectedItemIndicatorStyle]
|
|
12265
11707
|
);
|
|
12266
|
-
return /* @__PURE__ */
|
|
11708
|
+
return /* @__PURE__ */ jsx252(SelectedItemStyleContext.Provider, { value: contextValue, children });
|
|
12267
11709
|
};
|
|
12268
11710
|
var useSelectedItemStyle = () => {
|
|
12269
11711
|
const context = useContext8(SelectedItemStyleContext);
|
|
@@ -12274,7 +11716,7 @@ var useSelectedItemStyle = () => {
|
|
|
12274
11716
|
};
|
|
12275
11717
|
|
|
12276
11718
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
12277
|
-
import
|
|
11719
|
+
import styled54 from "styled-components";
|
|
12278
11720
|
|
|
12279
11721
|
// src/components/SegmentedControl/useSegmentedControlValue.tsx
|
|
12280
11722
|
import { createContext as createContext8, useContext as useContext9 } from "react";
|
|
@@ -12289,8 +11731,8 @@ var useSegmentedControlValue = () => {
|
|
|
12289
11731
|
};
|
|
12290
11732
|
|
|
12291
11733
|
// src/components/SegmentedControl/SelectedItemIndicator.tsx
|
|
12292
|
-
import { jsx as
|
|
12293
|
-
var SelectedItemIndicatorDiv =
|
|
11734
|
+
import { jsx as jsx253 } from "react/jsx-runtime";
|
|
11735
|
+
var SelectedItemIndicatorDiv = styled54.div`
|
|
12294
11736
|
background-color: var(--wui-color-bg-fill-white);
|
|
12295
11737
|
border-radius: var(--wui-border-radius-rounded);
|
|
12296
11738
|
left: 0;
|
|
@@ -12308,12 +11750,12 @@ var SelectedItemIndicator = () => {
|
|
|
12308
11750
|
if (!selectedValue) {
|
|
12309
11751
|
return null;
|
|
12310
11752
|
}
|
|
12311
|
-
return /* @__PURE__ */
|
|
11753
|
+
return /* @__PURE__ */ jsx253(SelectedItemIndicatorDiv, { style: selectedItemIndicatorStyle });
|
|
12312
11754
|
};
|
|
12313
11755
|
|
|
12314
11756
|
// src/components/SegmentedControl/SegmentedControl.tsx
|
|
12315
|
-
import { jsx as
|
|
12316
|
-
var segmentedControlStyles =
|
|
11757
|
+
import { jsx as jsx254, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
11758
|
+
var segmentedControlStyles = css35`
|
|
12317
11759
|
display: inline-flex;
|
|
12318
11760
|
background-color: var(--wui-color-bg-surface-secondary);
|
|
12319
11761
|
border-radius: var(--wui-border-radius-rounded);
|
|
@@ -12324,10 +11766,10 @@ var segmentedControlStyles = css36`
|
|
|
12324
11766
|
position: relative;
|
|
12325
11767
|
width: ${({ $fullWidth }) => $fullWidth ? "100%" : "auto"};
|
|
12326
11768
|
`;
|
|
12327
|
-
var StyledSegmentedControl =
|
|
11769
|
+
var StyledSegmentedControl = styled55(ToggleGroupRoot)`
|
|
12328
11770
|
${segmentedControlStyles}
|
|
12329
11771
|
`;
|
|
12330
|
-
var SegmentedControl =
|
|
11772
|
+
var SegmentedControl = forwardRef21(
|
|
12331
11773
|
({
|
|
12332
11774
|
children,
|
|
12333
11775
|
disabled = false,
|
|
@@ -12336,10 +11778,10 @@ var SegmentedControl = forwardRef22(
|
|
|
12336
11778
|
onSelectedValueChange,
|
|
12337
11779
|
...props
|
|
12338
11780
|
}, ref) => {
|
|
12339
|
-
if (
|
|
11781
|
+
if (isNil13(children)) {
|
|
12340
11782
|
return null;
|
|
12341
11783
|
}
|
|
12342
|
-
return /* @__PURE__ */
|
|
11784
|
+
return /* @__PURE__ */ jsx254(
|
|
12343
11785
|
StyledSegmentedControl,
|
|
12344
11786
|
{
|
|
12345
11787
|
ref,
|
|
@@ -12351,8 +11793,8 @@ var SegmentedControl = forwardRef22(
|
|
|
12351
11793
|
type: "single",
|
|
12352
11794
|
value: selectedValue,
|
|
12353
11795
|
...props,
|
|
12354
|
-
children: /* @__PURE__ */
|
|
12355
|
-
/* @__PURE__ */
|
|
11796
|
+
children: /* @__PURE__ */ jsx254(SegmentedControlValueProvider, { value: selectedValue, children: /* @__PURE__ */ jsxs36(SelectedItemStyleProvider, { children: [
|
|
11797
|
+
/* @__PURE__ */ jsx254(SelectedItemIndicator, {}),
|
|
12356
11798
|
children
|
|
12357
11799
|
] }) })
|
|
12358
11800
|
}
|
|
@@ -12362,12 +11804,12 @@ var SegmentedControl = forwardRef22(
|
|
|
12362
11804
|
SegmentedControl.displayName = "SegmentedControl";
|
|
12363
11805
|
|
|
12364
11806
|
// src/components/SegmentedControl/SegmentedControlItem.tsx
|
|
12365
|
-
import { forwardRef as
|
|
12366
|
-
import
|
|
11807
|
+
import { forwardRef as forwardRef22, useEffect as useEffect11, useRef as useRef14 } from "react";
|
|
11808
|
+
import styled56, { css as css36 } from "styled-components";
|
|
12367
11809
|
import { Item as ToggleGroupItem } from "@radix-ui/react-toggle-group";
|
|
12368
|
-
import { isNotNil as
|
|
12369
|
-
import { jsxs as
|
|
12370
|
-
var segmentedControlItemStyles =
|
|
11810
|
+
import { isNotNil as isNotNil28 } from "@wistia/type-guards";
|
|
11811
|
+
import { jsxs as jsxs37 } from "react/jsx-runtime";
|
|
11812
|
+
var segmentedControlItemStyles = css36`
|
|
12371
11813
|
all: unset; /* ToggleGroupItem is a button element */
|
|
12372
11814
|
align-items: center;
|
|
12373
11815
|
border-radius: var(--wui-border-radius-rounded);
|
|
@@ -12427,14 +11869,14 @@ var segmentedControlItemStyles = css37`
|
|
|
12427
11869
|
}
|
|
12428
11870
|
}
|
|
12429
11871
|
`;
|
|
12430
|
-
var StyledSegmentedControlItem =
|
|
11872
|
+
var StyledSegmentedControlItem = styled56(ToggleGroupItem)`
|
|
12431
11873
|
${segmentedControlItemStyles}
|
|
12432
11874
|
`;
|
|
12433
|
-
var SegmentedControlItem =
|
|
11875
|
+
var SegmentedControlItem = forwardRef22(
|
|
12434
11876
|
({ disabled, icon, label, "aria-label": ariaLabel, value, ...otherProps }, forwardedRef) => {
|
|
12435
11877
|
const selectedValue = useSegmentedControlValue();
|
|
12436
11878
|
const { setSelectedItemMeasurements } = useSelectedItemStyle();
|
|
12437
|
-
const buttonRef =
|
|
11879
|
+
const buttonRef = useRef14(null);
|
|
12438
11880
|
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
12439
11881
|
const handleClick = (event) => {
|
|
12440
11882
|
const target = event.target;
|
|
@@ -12443,7 +11885,7 @@ var SegmentedControlItem = forwardRef23(
|
|
|
12443
11885
|
event.preventDefault();
|
|
12444
11886
|
}
|
|
12445
11887
|
};
|
|
12446
|
-
|
|
11888
|
+
useEffect11(() => {
|
|
12447
11889
|
const buttonElem = buttonRef.current;
|
|
12448
11890
|
if (!buttonElem) {
|
|
12449
11891
|
return void 0;
|
|
@@ -12468,13 +11910,13 @@ var SegmentedControlItem = forwardRef23(
|
|
|
12468
11910
|
resizeObserver.disconnect();
|
|
12469
11911
|
};
|
|
12470
11912
|
}, [selectedValue, setSelectedItemMeasurements, value]);
|
|
12471
|
-
return /* @__PURE__ */
|
|
11913
|
+
return /* @__PURE__ */ jsxs37(
|
|
12472
11914
|
StyledSegmentedControlItem,
|
|
12473
11915
|
{
|
|
12474
11916
|
ref: combinedRef,
|
|
12475
11917
|
...otherProps,
|
|
12476
|
-
$hasLabel:
|
|
12477
|
-
"aria-label":
|
|
11918
|
+
$hasLabel: isNotNil28(label),
|
|
11919
|
+
"aria-label": isNotNil28(label) ? void 0 : ariaLabel,
|
|
12478
11920
|
disabled,
|
|
12479
11921
|
onClick: handleClick,
|
|
12480
11922
|
value,
|
|
@@ -12499,10 +11941,10 @@ import {
|
|
|
12499
11941
|
Value,
|
|
12500
11942
|
ScrollDownButton
|
|
12501
11943
|
} from "@radix-ui/react-select";
|
|
12502
|
-
import { forwardRef as
|
|
12503
|
-
import
|
|
12504
|
-
import { jsx as
|
|
12505
|
-
var StyledTrigger =
|
|
11944
|
+
import { forwardRef as forwardRef23 } from "react";
|
|
11945
|
+
import styled57 from "styled-components";
|
|
11946
|
+
import { jsx as jsx255, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
11947
|
+
var StyledTrigger = styled57(Trigger3)`
|
|
12506
11948
|
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12507
11949
|
${inputCss};
|
|
12508
11950
|
padding: var(--wui-input-vertical-padding) var(--wui-input-horizontal-padding);
|
|
@@ -12546,7 +11988,7 @@ var StyledTrigger = styled61(Trigger3)`
|
|
|
12546
11988
|
color: var(--wui-input-placeholder);
|
|
12547
11989
|
}
|
|
12548
11990
|
`;
|
|
12549
|
-
var StyledContent3 =
|
|
11991
|
+
var StyledContent3 = styled57(Content3)`
|
|
12550
11992
|
--wui-select-content-border: var(--wui-color-border);
|
|
12551
11993
|
--wui-select-content-bg: var(--wui-color-bg-surface);
|
|
12552
11994
|
--wui-select-content-border-radius: var(--wui-border-radius-02);
|
|
@@ -12564,7 +12006,7 @@ var StyledContent3 = styled61(Content3)`
|
|
|
12564
12006
|
max-height: var(--radix-select-content-available-height);
|
|
12565
12007
|
z-index: var(--wui-zindex-select);
|
|
12566
12008
|
`;
|
|
12567
|
-
var Select =
|
|
12009
|
+
var Select = forwardRef23(
|
|
12568
12010
|
({
|
|
12569
12011
|
colorScheme = "inherit",
|
|
12570
12012
|
children,
|
|
@@ -12574,13 +12016,13 @@ var Select = forwardRef24(
|
|
|
12574
12016
|
...props
|
|
12575
12017
|
}, forwardedRef) => {
|
|
12576
12018
|
const responsiveFullWidth = useResponsiveProp(fullWidth);
|
|
12577
|
-
return /* @__PURE__ */
|
|
12019
|
+
return /* @__PURE__ */ jsxs38(
|
|
12578
12020
|
Root2,
|
|
12579
12021
|
{
|
|
12580
12022
|
...props,
|
|
12581
12023
|
onValueChange: onChange,
|
|
12582
12024
|
children: [
|
|
12583
|
-
/* @__PURE__ */
|
|
12025
|
+
/* @__PURE__ */ jsxs38(
|
|
12584
12026
|
StyledTrigger,
|
|
12585
12027
|
{
|
|
12586
12028
|
ref: forwardedRef,
|
|
@@ -12588,8 +12030,8 @@ var Select = forwardRef24(
|
|
|
12588
12030
|
$fullWidth: responsiveFullWidth,
|
|
12589
12031
|
...props,
|
|
12590
12032
|
children: [
|
|
12591
|
-
/* @__PURE__ */
|
|
12592
|
-
/* @__PURE__ */
|
|
12033
|
+
/* @__PURE__ */ jsx255(Value, { placeholder }),
|
|
12034
|
+
/* @__PURE__ */ jsx255(
|
|
12593
12035
|
Icon,
|
|
12594
12036
|
{
|
|
12595
12037
|
size: "md",
|
|
@@ -12599,10 +12041,10 @@ var Select = forwardRef24(
|
|
|
12599
12041
|
]
|
|
12600
12042
|
}
|
|
12601
12043
|
),
|
|
12602
|
-
/* @__PURE__ */
|
|
12603
|
-
/* @__PURE__ */
|
|
12604
|
-
/* @__PURE__ */
|
|
12605
|
-
/* @__PURE__ */
|
|
12044
|
+
/* @__PURE__ */ jsx255(Portal2, { children: /* @__PURE__ */ jsxs38(StyledContent3, { position: "popper", children: [
|
|
12045
|
+
/* @__PURE__ */ jsx255(ScrollUpButton, { children: /* @__PURE__ */ jsx255(Icon, { type: "caret-up" }) }),
|
|
12046
|
+
/* @__PURE__ */ jsx255(Viewport, { children }),
|
|
12047
|
+
/* @__PURE__ */ jsx255(ScrollDownButton, { children: /* @__PURE__ */ jsx255(Icon, { type: "caret-down" }) })
|
|
12606
12048
|
] }) })
|
|
12607
12049
|
]
|
|
12608
12050
|
}
|
|
@@ -12613,11 +12055,11 @@ Select.displayName = "Select";
|
|
|
12613
12055
|
|
|
12614
12056
|
// src/components/Select/SelectOption.tsx
|
|
12615
12057
|
import { Item, ItemText, ItemIndicator } from "@radix-ui/react-select";
|
|
12616
|
-
import { forwardRef as
|
|
12617
|
-
import
|
|
12618
|
-
import { isNotNil as
|
|
12619
|
-
import { jsx as
|
|
12620
|
-
var StyledItem =
|
|
12058
|
+
import { forwardRef as forwardRef24 } from "react";
|
|
12059
|
+
import styled58 from "styled-components";
|
|
12060
|
+
import { isNotNil as isNotNil29 } from "@wistia/type-guards";
|
|
12061
|
+
import { jsx as jsx256, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
12062
|
+
var StyledItem = styled58(Item)`
|
|
12621
12063
|
${variantStyleMap2.body3};
|
|
12622
12064
|
display: flex;
|
|
12623
12065
|
padding: var(--wui-select-option-padding);
|
|
@@ -12641,28 +12083,28 @@ var StyledItem = styled62(Item)`
|
|
|
12641
12083
|
background-color: transparent;
|
|
12642
12084
|
}
|
|
12643
12085
|
`;
|
|
12644
|
-
var StyledIconContainer =
|
|
12086
|
+
var StyledIconContainer = styled58.span`
|
|
12645
12087
|
width: 12px;
|
|
12646
12088
|
`;
|
|
12647
|
-
var SelectOption =
|
|
12089
|
+
var SelectOption = forwardRef24(
|
|
12648
12090
|
({ children, selectedDisplayValue, ...props }, forwardedRef) => {
|
|
12649
|
-
return /* @__PURE__ */
|
|
12091
|
+
return /* @__PURE__ */ jsxs39(
|
|
12650
12092
|
StyledItem,
|
|
12651
12093
|
{
|
|
12652
12094
|
...props,
|
|
12653
12095
|
ref: forwardedRef,
|
|
12654
12096
|
children: [
|
|
12655
|
-
/* @__PURE__ */
|
|
12097
|
+
/* @__PURE__ */ jsx256(StyledIconContainer, { "data-indicator": true, children: /* @__PURE__ */ jsx256(ItemIndicator, { children: /* @__PURE__ */ jsx256(
|
|
12656
12098
|
Icon,
|
|
12657
12099
|
{
|
|
12658
12100
|
size: "sm",
|
|
12659
12101
|
type: "checkmark"
|
|
12660
12102
|
}
|
|
12661
12103
|
) }) }),
|
|
12662
|
-
|
|
12104
|
+
isNotNil29(selectedDisplayValue) ? /* @__PURE__ */ jsxs39("div", { children: [
|
|
12663
12105
|
children,
|
|
12664
|
-
/* @__PURE__ */
|
|
12665
|
-
] }) : /* @__PURE__ */
|
|
12106
|
+
/* @__PURE__ */ jsx256("div", { style: { display: "none" }, children: /* @__PURE__ */ jsx256(ItemText, { children: selectedDisplayValue }) })
|
|
12107
|
+
] }) : /* @__PURE__ */ jsx256(ItemText, { children })
|
|
12666
12108
|
]
|
|
12667
12109
|
}
|
|
12668
12110
|
);
|
|
@@ -12672,14 +12114,14 @@ SelectOption.displayName = "SelectOption";
|
|
|
12672
12114
|
|
|
12673
12115
|
// src/components/Select/SelectOptionGroup.tsx
|
|
12674
12116
|
import { Group, Label as Label3 } from "@radix-ui/react-select";
|
|
12675
|
-
import
|
|
12676
|
-
import { jsx as
|
|
12677
|
-
var StyledLabel4 =
|
|
12117
|
+
import styled59 from "styled-components";
|
|
12118
|
+
import { jsx as jsx257, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
12119
|
+
var StyledLabel4 = styled59(Label3)`
|
|
12678
12120
|
padding: var(--wui-select-option-padding);
|
|
12679
12121
|
`;
|
|
12680
12122
|
var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
12681
|
-
return /* @__PURE__ */
|
|
12682
|
-
/* @__PURE__ */
|
|
12123
|
+
return /* @__PURE__ */ jsxs40(Group, { ...props, children: [
|
|
12124
|
+
/* @__PURE__ */ jsx257(StyledLabel4, { children: /* @__PURE__ */ jsx257(
|
|
12683
12125
|
Text,
|
|
12684
12126
|
{
|
|
12685
12127
|
prominence: "secondary",
|
|
@@ -12691,145 +12133,12 @@ var SelectOptionGroup = ({ children, label, ...props }) => {
|
|
|
12691
12133
|
] });
|
|
12692
12134
|
};
|
|
12693
12135
|
|
|
12694
|
-
// src/components/Slider/Slider.tsx
|
|
12695
|
-
import {
|
|
12696
|
-
Root as RadixSliderRoot,
|
|
12697
|
-
Track as RadixSliderTrack,
|
|
12698
|
-
Range as RadixSliderRange,
|
|
12699
|
-
Thumb as RadixSliderThumb
|
|
12700
|
-
} from "@radix-ui/react-slider";
|
|
12701
|
-
import styled64, { css as css38 } from "styled-components";
|
|
12702
|
-
import { isNonEmptyString as isNonEmptyString5, isNotNil as isNotNil32 } from "@wistia/type-guards";
|
|
12703
|
-
import { jsx as jsx262, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
12704
|
-
var SliderContainer = styled64.div`
|
|
12705
|
-
${({ disabled }) => disabled ? css38`
|
|
12706
|
-
opacity: 0.5;
|
|
12707
|
-
|
|
12708
|
-
& * {
|
|
12709
|
-
pointer-events: none;
|
|
12710
|
-
}
|
|
12711
|
-
` : null}
|
|
12712
|
-
`;
|
|
12713
|
-
var StyledSliderRoot = styled64(RadixSliderRoot)`
|
|
12714
|
-
position: relative;
|
|
12715
|
-
display: flex;
|
|
12716
|
-
align-items: center;
|
|
12717
|
-
user-select: none;
|
|
12718
|
-
touch-action: none;
|
|
12719
|
-
width: 100%;
|
|
12720
|
-
`;
|
|
12721
|
-
var StyledSliderTrack = styled64(RadixSliderTrack)`
|
|
12722
|
-
background-color: var(--wui-gray-6);
|
|
12723
|
-
position: relative;
|
|
12724
|
-
flex-grow: 1;
|
|
12725
|
-
border-radius: var(--wui-border-radius-rounded);
|
|
12726
|
-
height: 4px;
|
|
12727
|
-
`;
|
|
12728
|
-
var StyledSliderRange = styled64(RadixSliderRange)`
|
|
12729
|
-
position: absolute;
|
|
12730
|
-
background-color: var(--wui-color-border-active-selected);
|
|
12731
|
-
border-radius: var(--wui-border-radius-rounded);
|
|
12732
|
-
height: 100%;
|
|
12733
|
-
`;
|
|
12734
|
-
var StyledSliderThumb = styled64(RadixSliderThumb)`
|
|
12735
|
-
background-color: var(--wui-color-bg-fill-white);
|
|
12736
|
-
border-color: var(--wui-color-border-active-selected);
|
|
12737
|
-
border-radius: var(--wui-border-radius-rounded);
|
|
12738
|
-
border-style: solid;
|
|
12739
|
-
border-width: 2px;
|
|
12740
|
-
box-shadow: var(--wui-elevation-01);
|
|
12741
|
-
cursor: grab;
|
|
12742
|
-
display: block;
|
|
12743
|
-
height: 16px;
|
|
12744
|
-
transition-duration: 70ms;
|
|
12745
|
-
transition-property: border-width, box-shadow, transform;
|
|
12746
|
-
transition-timing-function: var(--wui-motion-ease-out);
|
|
12747
|
-
width: 16px;
|
|
12748
|
-
|
|
12749
|
-
&:hover,
|
|
12750
|
-
&:active {
|
|
12751
|
-
transform: scale(1.2);
|
|
12752
|
-
transform-origin: center;
|
|
12753
|
-
transition-timing-function: var(--wui-motion-ease-in);
|
|
12754
|
-
}
|
|
12755
|
-
|
|
12756
|
-
&:focus-visible {
|
|
12757
|
-
border-color: var(--wui-color-border-active-selected);
|
|
12758
|
-
border-width: 2px;
|
|
12759
|
-
border-style: solid;
|
|
12760
|
-
outline: none;
|
|
12761
|
-
}
|
|
12762
|
-
`;
|
|
12763
|
-
var Slider = ({
|
|
12764
|
-
"aria-label": ariaLabel,
|
|
12765
|
-
"aria-labelledby": ariaLabelledby,
|
|
12766
|
-
disabled = false,
|
|
12767
|
-
initialValue = [0],
|
|
12768
|
-
max = 100,
|
|
12769
|
-
min = 0,
|
|
12770
|
-
onChange,
|
|
12771
|
-
step = 1,
|
|
12772
|
-
value,
|
|
12773
|
-
"data-testid": passedDataTestId,
|
|
12774
|
-
...otherProps
|
|
12775
|
-
}) => {
|
|
12776
|
-
if (!(isNonEmptyString5(ariaLabel) || isNonEmptyString5(ariaLabelledby))) {
|
|
12777
|
-
console.warn(
|
|
12778
|
-
"UI Slider: Sliders should have an accessible name. Add a label using the aria-label or aria-labelledby prop."
|
|
12779
|
-
);
|
|
12780
|
-
}
|
|
12781
|
-
const dataTestId = isNotNil32(passedDataTestId) ? passedDataTestId : "ui-slider";
|
|
12782
|
-
const values = value ?? initialValue;
|
|
12783
|
-
const handleValueChange = (newValue) => {
|
|
12784
|
-
if (onChange) {
|
|
12785
|
-
onChange(newValue);
|
|
12786
|
-
}
|
|
12787
|
-
};
|
|
12788
|
-
const renderThumbs = () => {
|
|
12789
|
-
return values.map((_, index) => /* @__PURE__ */ jsx262(
|
|
12790
|
-
StyledSliderThumb,
|
|
12791
|
-
{
|
|
12792
|
-
"data-testid": `${dataTestId}-thumb-${index}`
|
|
12793
|
-
},
|
|
12794
|
-
`thumb-${index}`
|
|
12795
|
-
));
|
|
12796
|
-
};
|
|
12797
|
-
const renderRoot = () => {
|
|
12798
|
-
const rootProps = {
|
|
12799
|
-
"aria-label": ariaLabel,
|
|
12800
|
-
"aria-labelledby": ariaLabelledby,
|
|
12801
|
-
$initialValue: initialValue,
|
|
12802
|
-
defaultValue: initialValue,
|
|
12803
|
-
disabled,
|
|
12804
|
-
max,
|
|
12805
|
-
min,
|
|
12806
|
-
onValueChange: handleValueChange,
|
|
12807
|
-
step,
|
|
12808
|
-
...value ? { value } : {}
|
|
12809
|
-
};
|
|
12810
|
-
return /* @__PURE__ */ jsxs44(StyledSliderRoot, { ...rootProps, children: [
|
|
12811
|
-
/* @__PURE__ */ jsx262(StyledSliderTrack, { "data-testid": `${dataTestId}-track`, children: /* @__PURE__ */ jsx262(StyledSliderRange, { "data-testid": `${dataTestId}-range` }) }),
|
|
12812
|
-
renderThumbs()
|
|
12813
|
-
] });
|
|
12814
|
-
};
|
|
12815
|
-
return /* @__PURE__ */ jsx262(
|
|
12816
|
-
SliderContainer,
|
|
12817
|
-
{
|
|
12818
|
-
...otherProps,
|
|
12819
|
-
"data-testid": dataTestId,
|
|
12820
|
-
disabled,
|
|
12821
|
-
children: renderRoot()
|
|
12822
|
-
}
|
|
12823
|
-
);
|
|
12824
|
-
};
|
|
12825
|
-
Slider.displayName = "Slider";
|
|
12826
|
-
|
|
12827
12136
|
// src/components/Switch/Switch.tsx
|
|
12828
|
-
import { forwardRef as
|
|
12829
|
-
import
|
|
12830
|
-
import { isNonEmptyString as
|
|
12831
|
-
import { jsx as
|
|
12832
|
-
var sizeSmall3 =
|
|
12137
|
+
import { forwardRef as forwardRef25, useId as useId4 } from "react";
|
|
12138
|
+
import styled60, { css as css37 } from "styled-components";
|
|
12139
|
+
import { isNonEmptyString as isNonEmptyString4 } from "@wistia/type-guards";
|
|
12140
|
+
import { jsx as jsx258, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
12141
|
+
var sizeSmall3 = css37`
|
|
12833
12142
|
--wui-size-small-width: 24px;
|
|
12834
12143
|
--wui-size-small-height: 14px;
|
|
12835
12144
|
|
|
@@ -12844,7 +12153,7 @@ var sizeSmall3 = css39`
|
|
|
12844
12153
|
height: calc(var(--wui-size-small-width) / 2);
|
|
12845
12154
|
}
|
|
12846
12155
|
`;
|
|
12847
|
-
var sizeMedium3 =
|
|
12156
|
+
var sizeMedium3 = css37`
|
|
12848
12157
|
--wui-size-medium-width: 32px;
|
|
12849
12158
|
--wui-size-medium-height: 18px;
|
|
12850
12159
|
|
|
@@ -12859,7 +12168,7 @@ var sizeMedium3 = css39`
|
|
|
12859
12168
|
height: calc(var(--wui-size-medium-width) / 2);
|
|
12860
12169
|
}
|
|
12861
12170
|
`;
|
|
12862
|
-
var sizeLarge3 =
|
|
12171
|
+
var sizeLarge3 = css37`
|
|
12863
12172
|
--wui-size-large-width: 40px;
|
|
12864
12173
|
--wui-size-large-height: 22px;
|
|
12865
12174
|
|
|
@@ -12879,14 +12188,14 @@ var getSizeCss3 = (size) => {
|
|
|
12879
12188
|
if (size === "lg") return sizeLarge3;
|
|
12880
12189
|
return sizeMedium3;
|
|
12881
12190
|
};
|
|
12882
|
-
var StyledSwitchWrapper =
|
|
12191
|
+
var StyledSwitchWrapper = styled60.div`
|
|
12883
12192
|
display: flex;
|
|
12884
12193
|
margin: 0;
|
|
12885
12194
|
|
|
12886
12195
|
/* TODO this solves a problem but potentially causes and a11y issue */
|
|
12887
12196
|
user-select: none;
|
|
12888
12197
|
`;
|
|
12889
|
-
var StyledSwitchInput =
|
|
12198
|
+
var StyledSwitchInput = styled60.div`
|
|
12890
12199
|
${({ $size }) => getSizeCss3($size)}
|
|
12891
12200
|
line-height: 0;
|
|
12892
12201
|
margin: 0;
|
|
@@ -12914,7 +12223,7 @@ var StyledSwitchInput = styled65.div`
|
|
|
12914
12223
|
transition: all 0.2s ease-in-out;
|
|
12915
12224
|
}
|
|
12916
12225
|
`;
|
|
12917
|
-
var StyledHiddenSwitchInput =
|
|
12226
|
+
var StyledHiddenSwitchInput = styled60.input`
|
|
12918
12227
|
${visuallyHiddenStyle}
|
|
12919
12228
|
|
|
12920
12229
|
/* toggles display of faux-input background-color and toggle position */
|
|
@@ -12930,7 +12239,7 @@ var StyledHiddenSwitchInput = styled65.input`
|
|
|
12930
12239
|
}
|
|
12931
12240
|
}
|
|
12932
12241
|
`;
|
|
12933
|
-
var Switch =
|
|
12242
|
+
var Switch = forwardRef25(
|
|
12934
12243
|
({
|
|
12935
12244
|
checked,
|
|
12936
12245
|
disabled = false,
|
|
@@ -12946,9 +12255,9 @@ var Switch = forwardRef26(
|
|
|
12946
12255
|
...props
|
|
12947
12256
|
}, ref) => {
|
|
12948
12257
|
const generatedId = useId4();
|
|
12949
|
-
const computedId =
|
|
12950
|
-
return /* @__PURE__ */
|
|
12951
|
-
/* @__PURE__ */
|
|
12258
|
+
const computedId = isNonEmptyString4(id) ? id : `wistia-ui-switch-${generatedId}`;
|
|
12259
|
+
return /* @__PURE__ */ jsxs41(StyledSwitchWrapper, { $disabled: disabled, children: [
|
|
12260
|
+
/* @__PURE__ */ jsx258(
|
|
12952
12261
|
StyledHiddenSwitchInput,
|
|
12953
12262
|
{
|
|
12954
12263
|
...props,
|
|
@@ -12963,10 +12272,10 @@ var Switch = forwardRef26(
|
|
|
12963
12272
|
value
|
|
12964
12273
|
}
|
|
12965
12274
|
),
|
|
12966
|
-
/* @__PURE__ */
|
|
12275
|
+
/* @__PURE__ */ jsx258(
|
|
12967
12276
|
FormControlLabel,
|
|
12968
12277
|
{
|
|
12969
|
-
controlSlot: /* @__PURE__ */
|
|
12278
|
+
controlSlot: /* @__PURE__ */ jsx258(
|
|
12970
12279
|
StyledSwitchInput,
|
|
12971
12280
|
{
|
|
12972
12281
|
$disabled: disabled,
|
|
@@ -12988,25 +12297,25 @@ var Switch = forwardRef26(
|
|
|
12988
12297
|
Switch.displayName = "Switch";
|
|
12989
12298
|
|
|
12990
12299
|
// src/components/Table/Table.tsx
|
|
12991
|
-
import
|
|
12992
|
-
import { jsx as
|
|
12993
|
-
var StyledTable =
|
|
12300
|
+
import styled61, { css as css38 } from "styled-components";
|
|
12301
|
+
import { jsx as jsx259 } from "react/jsx-runtime";
|
|
12302
|
+
var StyledTable = styled61.table`
|
|
12994
12303
|
width: 100%;
|
|
12995
12304
|
border-collapse: collapse;
|
|
12996
12305
|
|
|
12997
|
-
${({ $divided }) => $divided &&
|
|
12306
|
+
${({ $divided }) => $divided && css38`
|
|
12998
12307
|
tr {
|
|
12999
12308
|
border-bottom: 1px solid var(--wui-color-border);
|
|
13000
12309
|
}
|
|
13001
12310
|
`}
|
|
13002
12311
|
|
|
13003
|
-
${({ $striped }) => $striped &&
|
|
12312
|
+
${({ $striped }) => $striped && css38`
|
|
13004
12313
|
tbody tr:nth-child(even) {
|
|
13005
12314
|
background-color: var(--wui-color-bg-surface-secondary);
|
|
13006
12315
|
}
|
|
13007
12316
|
`}
|
|
13008
12317
|
|
|
13009
|
-
${({ $visuallyHiddenHeader }) => $visuallyHiddenHeader &&
|
|
12318
|
+
${({ $visuallyHiddenHeader }) => $visuallyHiddenHeader && css38`
|
|
13010
12319
|
thead {
|
|
13011
12320
|
${visuallyHiddenStyle}
|
|
13012
12321
|
}
|
|
@@ -13019,7 +12328,7 @@ var Table = ({
|
|
|
13019
12328
|
visuallyHiddenHeader = false,
|
|
13020
12329
|
...props
|
|
13021
12330
|
}) => {
|
|
13022
|
-
return /* @__PURE__ */
|
|
12331
|
+
return /* @__PURE__ */ jsx259(
|
|
13023
12332
|
StyledTable,
|
|
13024
12333
|
{
|
|
13025
12334
|
$divided: divided,
|
|
@@ -13032,35 +12341,35 @@ var Table = ({
|
|
|
13032
12341
|
};
|
|
13033
12342
|
|
|
13034
12343
|
// src/components/Table/TableBody.tsx
|
|
13035
|
-
import
|
|
12344
|
+
import styled62 from "styled-components";
|
|
13036
12345
|
|
|
13037
12346
|
// src/components/Table/TableSectionContext.ts
|
|
13038
12347
|
import { createContext as createContext9 } from "react";
|
|
13039
12348
|
var TableSectionContext = createContext9(null);
|
|
13040
12349
|
|
|
13041
12350
|
// src/components/Table/TableBody.tsx
|
|
13042
|
-
import { jsx as
|
|
13043
|
-
var StyledTableBody =
|
|
12351
|
+
import { jsx as jsx260 } from "react/jsx-runtime";
|
|
12352
|
+
var StyledTableBody = styled62.tbody``;
|
|
13044
12353
|
var TableBody = ({ children, ...props }) => {
|
|
13045
|
-
return /* @__PURE__ */
|
|
12354
|
+
return /* @__PURE__ */ jsx260(TableSectionContext.Provider, { value: "body", children: /* @__PURE__ */ jsx260(StyledTableBody, { ...props, children }) });
|
|
13046
12355
|
};
|
|
13047
12356
|
|
|
13048
12357
|
// src/components/Table/TableCell.tsx
|
|
13049
12358
|
import { useContext as useContext10 } from "react";
|
|
13050
|
-
import
|
|
13051
|
-
import { jsx as
|
|
13052
|
-
var sharedStyles =
|
|
12359
|
+
import styled63, { css as css39 } from "styled-components";
|
|
12360
|
+
import { jsx as jsx261 } from "react/jsx-runtime";
|
|
12361
|
+
var sharedStyles = css39`
|
|
13053
12362
|
color: var(--wui-color-text);
|
|
13054
12363
|
padding: var(--wui-space-02);
|
|
13055
12364
|
text-align: left;
|
|
13056
12365
|
`;
|
|
13057
|
-
var StyledTh =
|
|
12366
|
+
var StyledTh = styled63.th`
|
|
13058
12367
|
${sharedStyles}
|
|
13059
12368
|
font-size: var(--wui-typography-body-4-size);
|
|
13060
12369
|
font-weight: var(--wui-typography-weight-label-bold);
|
|
13061
12370
|
line-height: var(--wui-typography-body-4-line-height);
|
|
13062
12371
|
`;
|
|
13063
|
-
var StyledTd =
|
|
12372
|
+
var StyledTd = styled63.td`
|
|
13064
12373
|
${sharedStyles}
|
|
13065
12374
|
font-size: var(--wui-typography-body-2-size);
|
|
13066
12375
|
font-weight: var(--wui-typography-body-2-weight);
|
|
@@ -13069,39 +12378,39 @@ var StyledTd = styled68.td`
|
|
|
13069
12378
|
var TableCell = ({ children, ...props }) => {
|
|
13070
12379
|
const section = useContext10(TableSectionContext);
|
|
13071
12380
|
if (section === "head") {
|
|
13072
|
-
return /* @__PURE__ */
|
|
12381
|
+
return /* @__PURE__ */ jsx261(StyledTh, { ...props, children });
|
|
13073
12382
|
}
|
|
13074
|
-
return /* @__PURE__ */
|
|
12383
|
+
return /* @__PURE__ */ jsx261(StyledTd, { ...props, children });
|
|
13075
12384
|
};
|
|
13076
12385
|
|
|
13077
12386
|
// src/components/Table/TableFoot.tsx
|
|
13078
|
-
import
|
|
13079
|
-
import { jsx as
|
|
13080
|
-
var StyledTableFoot =
|
|
12387
|
+
import styled64 from "styled-components";
|
|
12388
|
+
import { jsx as jsx262 } from "react/jsx-runtime";
|
|
12389
|
+
var StyledTableFoot = styled64.tfoot``;
|
|
13081
12390
|
var TableFoot = ({ children, ...props }) => {
|
|
13082
|
-
return /* @__PURE__ */
|
|
12391
|
+
return /* @__PURE__ */ jsx262(TableSectionContext.Provider, { value: "footer", children: /* @__PURE__ */ jsx262(StyledTableFoot, { ...props, children }) });
|
|
13083
12392
|
};
|
|
13084
12393
|
|
|
13085
12394
|
// src/components/Table/TableHead.tsx
|
|
13086
|
-
import
|
|
13087
|
-
import { jsx as
|
|
13088
|
-
var StyledThead =
|
|
12395
|
+
import styled65 from "styled-components";
|
|
12396
|
+
import { jsx as jsx263 } from "react/jsx-runtime";
|
|
12397
|
+
var StyledThead = styled65.thead``;
|
|
13089
12398
|
var TableHead = ({ children, ...props }) => {
|
|
13090
|
-
return /* @__PURE__ */
|
|
12399
|
+
return /* @__PURE__ */ jsx263(TableSectionContext.Provider, { value: "head", children: /* @__PURE__ */ jsx263(StyledThead, { ...props, children }) });
|
|
13091
12400
|
};
|
|
13092
12401
|
|
|
13093
12402
|
// src/components/Table/TableRow.tsx
|
|
13094
|
-
import
|
|
13095
|
-
import { jsx as
|
|
13096
|
-
var StyledTableRow =
|
|
12403
|
+
import styled66 from "styled-components";
|
|
12404
|
+
import { jsx as jsx264 } from "react/jsx-runtime";
|
|
12405
|
+
var StyledTableRow = styled66.tr``;
|
|
13097
12406
|
var TableRow = ({ children, ...props }) => {
|
|
13098
|
-
return /* @__PURE__ */
|
|
12407
|
+
return /* @__PURE__ */ jsx264(StyledTableRow, { ...props, children });
|
|
13099
12408
|
};
|
|
13100
12409
|
|
|
13101
12410
|
// src/components/Tabs/Tabs.tsx
|
|
13102
12411
|
import { Root as RadixTabsRoot } from "@radix-ui/react-tabs";
|
|
13103
|
-
import { useCallback as useCallback10, useState as
|
|
13104
|
-
import { isNotNil as
|
|
12412
|
+
import { useCallback as useCallback10, useState as useState16 } from "react";
|
|
12413
|
+
import { isNotNil as isNotNil30 } from "@wistia/type-guards";
|
|
13105
12414
|
|
|
13106
12415
|
// src/components/Tabs/useTabsValue.tsx
|
|
13107
12416
|
import { createContext as createContext10, useContext as useContext11 } from "react";
|
|
@@ -13116,7 +12425,7 @@ var useTabsValue = () => {
|
|
|
13116
12425
|
};
|
|
13117
12426
|
|
|
13118
12427
|
// src/components/Tabs/Tabs.tsx
|
|
13119
|
-
import { jsx as
|
|
12428
|
+
import { jsx as jsx265 } from "react/jsx-runtime";
|
|
13120
12429
|
var Tabs = ({
|
|
13121
12430
|
children,
|
|
13122
12431
|
value: valueProp,
|
|
@@ -13124,7 +12433,7 @@ var Tabs = ({
|
|
|
13124
12433
|
defaultValue,
|
|
13125
12434
|
...props
|
|
13126
12435
|
}) => {
|
|
13127
|
-
const [value, setValue] =
|
|
12436
|
+
const [value, setValue] = useState16(valueProp ?? defaultValue);
|
|
13128
12437
|
const onValueChange = useCallback10(
|
|
13129
12438
|
(newValue) => {
|
|
13130
12439
|
setValue(newValue);
|
|
@@ -13138,60 +12447,60 @@ var Tabs = ({
|
|
|
13138
12447
|
...props,
|
|
13139
12448
|
onValueChange
|
|
13140
12449
|
};
|
|
13141
|
-
if (
|
|
12450
|
+
if (isNotNil30(value)) {
|
|
13142
12451
|
rootProps.value = value;
|
|
13143
12452
|
}
|
|
13144
|
-
if (
|
|
12453
|
+
if (isNotNil30(defaultValue)) {
|
|
13145
12454
|
rootProps.defaultValue = defaultValue;
|
|
13146
12455
|
}
|
|
13147
|
-
return /* @__PURE__ */
|
|
12456
|
+
return /* @__PURE__ */ jsx265(RadixTabsRoot, { ...rootProps, children: /* @__PURE__ */ jsx265(TabsValueProvider, { value: value ?? defaultValue, children: /* @__PURE__ */ jsx265(SelectedItemStyleProvider, { children }) }) });
|
|
13148
12457
|
};
|
|
13149
12458
|
Tabs.displayName = "Tabs";
|
|
13150
12459
|
|
|
13151
12460
|
// src/components/Tabs/TabsContent.tsx
|
|
13152
12461
|
import { Content as RadixTabsContent } from "@radix-ui/react-tabs";
|
|
13153
|
-
import { jsx as
|
|
12462
|
+
import { jsx as jsx266 } from "react/jsx-runtime";
|
|
13154
12463
|
var TabsContent = ({ children, value }) => {
|
|
13155
|
-
return /* @__PURE__ */
|
|
12464
|
+
return /* @__PURE__ */ jsx266(RadixTabsContent, { value, children });
|
|
13156
12465
|
};
|
|
13157
12466
|
TabsContent.displayName = "TabsContent";
|
|
13158
12467
|
|
|
13159
12468
|
// src/components/Tabs/TabsList.tsx
|
|
13160
12469
|
import { List as RadixTabList } from "@radix-ui/react-tabs";
|
|
13161
|
-
import
|
|
12470
|
+
import styled68 from "styled-components";
|
|
13162
12471
|
|
|
13163
12472
|
// src/components/Tabs/TabsSelectedItemIndicatorDiv.tsx
|
|
13164
|
-
import
|
|
13165
|
-
var TabsSelectedItemIndicatorDiv =
|
|
12473
|
+
import styled67 from "styled-components";
|
|
12474
|
+
var TabsSelectedItemIndicatorDiv = styled67(SelectedItemIndicatorDiv)`
|
|
13166
12475
|
&:has(~ button[role='tab']:focus-visible) {
|
|
13167
12476
|
outline: 2px solid var(--wui-color-focus-ring);
|
|
13168
12477
|
}
|
|
13169
12478
|
`;
|
|
13170
12479
|
|
|
13171
12480
|
// src/components/Tabs/SelectedTabIndicator.tsx
|
|
13172
|
-
import { jsx as
|
|
12481
|
+
import { jsx as jsx267 } from "react/jsx-runtime";
|
|
13173
12482
|
var SelectedTabIndicator = () => {
|
|
13174
12483
|
const { selectedItemIndicatorStyle } = useSelectedItemStyle();
|
|
13175
12484
|
const selectedValue = useTabsValue();
|
|
13176
12485
|
if (selectedValue == null) {
|
|
13177
12486
|
return null;
|
|
13178
12487
|
}
|
|
13179
|
-
return /* @__PURE__ */
|
|
12488
|
+
return /* @__PURE__ */ jsx267(TabsSelectedItemIndicatorDiv, { style: selectedItemIndicatorStyle });
|
|
13180
12489
|
};
|
|
13181
12490
|
|
|
13182
12491
|
// src/components/Tabs/TabsList.tsx
|
|
13183
|
-
import { jsx as
|
|
13184
|
-
var StyledRadixTabsList =
|
|
12492
|
+
import { jsx as jsx268, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
12493
|
+
var StyledRadixTabsList = styled68(RadixTabList)`
|
|
13185
12494
|
${segmentedControlStyles}
|
|
13186
12495
|
`;
|
|
13187
12496
|
var TabsList = ({ children, fullWidth = true, ...props }) => {
|
|
13188
|
-
return /* @__PURE__ */
|
|
12497
|
+
return /* @__PURE__ */ jsxs42(
|
|
13189
12498
|
StyledRadixTabsList,
|
|
13190
12499
|
{
|
|
13191
12500
|
$fullWidth: fullWidth,
|
|
13192
12501
|
"aria-label": props["aria-label"],
|
|
13193
12502
|
children: [
|
|
13194
|
-
/* @__PURE__ */
|
|
12503
|
+
/* @__PURE__ */ jsx268(SelectedTabIndicator, {}),
|
|
13195
12504
|
children
|
|
13196
12505
|
]
|
|
13197
12506
|
}
|
|
@@ -13200,77 +12509,232 @@ var TabsList = ({ children, fullWidth = true, ...props }) => {
|
|
|
13200
12509
|
TabsList.displayName = "TabsList";
|
|
13201
12510
|
|
|
13202
12511
|
// src/components/Tabs/TabsTrigger.tsx
|
|
13203
|
-
import { forwardRef as
|
|
13204
|
-
import { isNotNil as
|
|
12512
|
+
import { forwardRef as forwardRef26, useEffect as useEffect12, useRef as useRef15 } from "react";
|
|
12513
|
+
import { isNotNil as isNotNil31 } from "@wistia/type-guards";
|
|
13205
12514
|
|
|
13206
12515
|
// src/components/Tabs/StyledRadixTabsTrigger.tsx
|
|
13207
|
-
import
|
|
12516
|
+
import styled69 from "styled-components";
|
|
13208
12517
|
import { Trigger as RadixTabsTrigger } from "@radix-ui/react-tabs";
|
|
13209
|
-
var StyledRadixTabsTrigger =
|
|
12518
|
+
var StyledRadixTabsTrigger = styled69(RadixTabsTrigger)`
|
|
13210
12519
|
${segmentedControlItemStyles}
|
|
13211
12520
|
|
|
13212
|
-
&:focus-visible {
|
|
13213
|
-
outline: none;
|
|
12521
|
+
&:focus-visible {
|
|
12522
|
+
outline: none;
|
|
12523
|
+
}
|
|
12524
|
+
`;
|
|
12525
|
+
|
|
12526
|
+
// src/components/Tabs/TabsTrigger.tsx
|
|
12527
|
+
import { jsxs as jsxs43 } from "react/jsx-runtime";
|
|
12528
|
+
var TabsTrigger = forwardRef26(
|
|
12529
|
+
({ disabled = false, icon, label, "aria-label": ariaLabel, value, ...otherProps }, forwardedRef) => {
|
|
12530
|
+
const selectedValue = useTabsValue();
|
|
12531
|
+
const { setSelectedItemMeasurements } = useSelectedItemStyle();
|
|
12532
|
+
const buttonRef = useRef15(null);
|
|
12533
|
+
const combinedRef = mergeRefs([buttonRef, forwardedRef]);
|
|
12534
|
+
useEffect12(() => {
|
|
12535
|
+
const buttonElem = buttonRef.current;
|
|
12536
|
+
if (!buttonElem) {
|
|
12537
|
+
return void 0;
|
|
12538
|
+
}
|
|
12539
|
+
if (selectedValue !== value) {
|
|
12540
|
+
return void 0;
|
|
12541
|
+
}
|
|
12542
|
+
setSelectedItemMeasurements({
|
|
12543
|
+
offsetLeft: buttonElem.offsetLeft,
|
|
12544
|
+
offsetWidth: buttonElem.offsetWidth,
|
|
12545
|
+
offsetHeight: buttonElem.offsetHeight
|
|
12546
|
+
});
|
|
12547
|
+
const resizeObserver = new ResizeObserver(() => {
|
|
12548
|
+
setSelectedItemMeasurements({
|
|
12549
|
+
offsetLeft: buttonElem.offsetLeft,
|
|
12550
|
+
offsetWidth: buttonElem.offsetWidth,
|
|
12551
|
+
offsetHeight: buttonElem.offsetHeight
|
|
12552
|
+
});
|
|
12553
|
+
});
|
|
12554
|
+
resizeObserver.observe(buttonElem);
|
|
12555
|
+
return () => {
|
|
12556
|
+
resizeObserver.disconnect();
|
|
12557
|
+
};
|
|
12558
|
+
}, [selectedValue, setSelectedItemMeasurements, value]);
|
|
12559
|
+
return /* @__PURE__ */ jsxs43(
|
|
12560
|
+
StyledRadixTabsTrigger,
|
|
12561
|
+
{
|
|
12562
|
+
...otherProps,
|
|
12563
|
+
ref: combinedRef,
|
|
12564
|
+
$hasLabel: isNotNil31(label),
|
|
12565
|
+
"aria-label": isNotNil31(label) ? void 0 : ariaLabel,
|
|
12566
|
+
disabled,
|
|
12567
|
+
value,
|
|
12568
|
+
children: [
|
|
12569
|
+
icon,
|
|
12570
|
+
label
|
|
12571
|
+
]
|
|
12572
|
+
}
|
|
12573
|
+
);
|
|
12574
|
+
}
|
|
12575
|
+
);
|
|
12576
|
+
TabsTrigger.displayName = "TabsTrigger";
|
|
12577
|
+
|
|
12578
|
+
// src/components/Tag/Tag.tsx
|
|
12579
|
+
import { forwardRef as forwardRef27 } from "react";
|
|
12580
|
+
import styled70 from "styled-components";
|
|
12581
|
+
import { isNil as isNil14, isNotNil as isNotNil32, isNonEmptyString as isNonEmptyString5 } from "@wistia/type-guards";
|
|
12582
|
+
import { Fragment as Fragment7, jsx as jsx269, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
12583
|
+
var TagLabel = styled70.a`
|
|
12584
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12585
|
+
font-size: var(--wui-typography-label-4-size);
|
|
12586
|
+
font-weight: var(--wui-typography-label-4-weight);
|
|
12587
|
+
line-height: var(--wui-typography-label-4-line-height);
|
|
12588
|
+
border-radius: var(--wui-border-radius-01);
|
|
12589
|
+
display: flex;
|
|
12590
|
+
align-items: center;
|
|
12591
|
+
color: var(--wui-color-text);
|
|
12592
|
+
text-decoration: none;
|
|
12593
|
+
padding: var(--wui-space-01);
|
|
12594
|
+
gap: var(--wui-space-01);
|
|
12595
|
+
|
|
12596
|
+
svg {
|
|
12597
|
+
height: 12px;
|
|
12598
|
+
width: 12px;
|
|
12599
|
+
}
|
|
12600
|
+
|
|
12601
|
+
:not(:only-child) {
|
|
12602
|
+
padding-right: var(--wui-space-01);
|
|
12603
|
+
}
|
|
12604
|
+
|
|
12605
|
+
:is(a):hover {
|
|
12606
|
+
background: var(--wui-color-bg-surface-secondary-hover);
|
|
12607
|
+
}
|
|
12608
|
+
|
|
12609
|
+
:is(a):active {
|
|
12610
|
+
background: var(--wui-color-bg-surface-secondary-active);
|
|
12611
|
+
}
|
|
12612
|
+
|
|
12613
|
+
:focus-visible {
|
|
12614
|
+
outline: unset;
|
|
12615
|
+
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
12616
|
+
}
|
|
12617
|
+
`;
|
|
12618
|
+
var TagDivider = styled70.div`
|
|
12619
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12620
|
+
border-left: 1px solid var(--wui-color-border);
|
|
12621
|
+
display: flex;
|
|
12622
|
+
height: 14px;
|
|
12623
|
+
width: 1px;
|
|
12624
|
+
`;
|
|
12625
|
+
var StyledRemoveButton = styled70.button`
|
|
12626
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12627
|
+
all: unset;
|
|
12628
|
+
cursor: pointer;
|
|
12629
|
+
display: flex;
|
|
12630
|
+
height: 22px;
|
|
12631
|
+
width: 12px;
|
|
12632
|
+
align-items: center;
|
|
12633
|
+
padding: 0 var(--wui-space-01);
|
|
12634
|
+
border-radius: var(--wui-border-radius-01);
|
|
12635
|
+
|
|
12636
|
+
svg path {
|
|
12637
|
+
fill: var(--wui-color-icon);
|
|
12638
|
+
}
|
|
12639
|
+
|
|
12640
|
+
:hover {
|
|
12641
|
+
background: var(--wui-color-bg-surface-secondary-hover);
|
|
12642
|
+
}
|
|
12643
|
+
|
|
12644
|
+
:active {
|
|
12645
|
+
background: var(--wui-color-bg-surface-secondary-active);
|
|
12646
|
+
}
|
|
12647
|
+
|
|
12648
|
+
:focus-visible {
|
|
12649
|
+
outline: unset;
|
|
12650
|
+
box-shadow: inset 0 0 0 2px var(--wui-color-border-secondary);
|
|
13214
12651
|
}
|
|
13215
12652
|
`;
|
|
12653
|
+
var StyledTag = styled70.div`
|
|
12654
|
+
${({ $colorScheme }) => getColorScheme($colorScheme)};
|
|
12655
|
+
align-items: center;
|
|
12656
|
+
background-color: var(--wui-color-bg-surface-secondary);
|
|
12657
|
+
border-radius: var(--wui-border-radius-01);
|
|
12658
|
+
display: inline-flex;
|
|
12659
|
+
overflow: hidden;
|
|
13216
12660
|
|
|
13217
|
-
|
|
13218
|
-
|
|
13219
|
-
|
|
13220
|
-
|
|
13221
|
-
|
|
13222
|
-
|
|
13223
|
-
|
|
13224
|
-
|
|
13225
|
-
|
|
13226
|
-
|
|
13227
|
-
if
|
|
13228
|
-
|
|
13229
|
-
|
|
13230
|
-
|
|
13231
|
-
|
|
12661
|
+
> * {
|
|
12662
|
+
transition: background var(--wui-duration-01) var(--wui-motion-ease);
|
|
12663
|
+
}
|
|
12664
|
+
`;
|
|
12665
|
+
var RemoveButton = ({ onClickRemove, onClickRemoveLabel, colorScheme }) => {
|
|
12666
|
+
if (isNil14(onClickRemove)) {
|
|
12667
|
+
return null;
|
|
12668
|
+
}
|
|
12669
|
+
if (isNil14(onClickRemoveLabel)) {
|
|
12670
|
+
throw new Error(
|
|
12671
|
+
"for accessibility, onClickRemoveLabel must be provided if onClickRemove is provided"
|
|
12672
|
+
);
|
|
12673
|
+
}
|
|
12674
|
+
return /* @__PURE__ */ jsxs44(Fragment7, { children: [
|
|
12675
|
+
/* @__PURE__ */ jsx269(TagDivider, { $colorScheme: colorScheme }),
|
|
12676
|
+
/* @__PURE__ */ jsxs44(
|
|
12677
|
+
StyledRemoveButton,
|
|
12678
|
+
{
|
|
12679
|
+
$colorScheme: colorScheme,
|
|
12680
|
+
onClick: onClickRemove,
|
|
12681
|
+
type: "button",
|
|
12682
|
+
children: [
|
|
12683
|
+
/* @__PURE__ */ jsx269(
|
|
12684
|
+
Icon,
|
|
12685
|
+
{
|
|
12686
|
+
size: "sm",
|
|
12687
|
+
type: "close"
|
|
12688
|
+
}
|
|
12689
|
+
),
|
|
12690
|
+
/* @__PURE__ */ jsx269(ScreenReaderOnly, { children: onClickRemoveLabel })
|
|
12691
|
+
]
|
|
13232
12692
|
}
|
|
13233
|
-
|
|
13234
|
-
|
|
13235
|
-
|
|
13236
|
-
|
|
13237
|
-
|
|
13238
|
-
|
|
13239
|
-
|
|
13240
|
-
|
|
13241
|
-
|
|
13242
|
-
offsetHeight: buttonElem.offsetHeight
|
|
13243
|
-
});
|
|
13244
|
-
});
|
|
13245
|
-
resizeObserver.observe(buttonElem);
|
|
13246
|
-
return () => {
|
|
13247
|
-
resizeObserver.disconnect();
|
|
13248
|
-
};
|
|
13249
|
-
}, [selectedValue, setSelectedItemMeasurements, value]);
|
|
13250
|
-
return /* @__PURE__ */ jsxs47(
|
|
13251
|
-
StyledRadixTabsTrigger,
|
|
12693
|
+
)
|
|
12694
|
+
] });
|
|
12695
|
+
};
|
|
12696
|
+
var Tag = forwardRef27(
|
|
12697
|
+
({ onClickRemove, colorScheme = "inherit", href, icon, label, onClickRemoveLabel, ...props }, ref) => {
|
|
12698
|
+
const hasIcon = isNotNil32(icon);
|
|
12699
|
+
const labelProps = isNotNil32(href) && isNonEmptyString5(href) ? { href, as: "a" } : { as: "span" };
|
|
12700
|
+
return /* @__PURE__ */ jsxs44(
|
|
12701
|
+
StyledTag,
|
|
13252
12702
|
{
|
|
13253
|
-
|
|
13254
|
-
|
|
13255
|
-
|
|
13256
|
-
"aria-label": isNotNil34(label) ? void 0 : ariaLabel,
|
|
13257
|
-
disabled,
|
|
13258
|
-
value,
|
|
12703
|
+
ref,
|
|
12704
|
+
$colorScheme: colorScheme,
|
|
12705
|
+
...props,
|
|
13259
12706
|
children: [
|
|
13260
|
-
|
|
13261
|
-
|
|
12707
|
+
/* @__PURE__ */ jsxs44(
|
|
12708
|
+
TagLabel,
|
|
12709
|
+
{
|
|
12710
|
+
...labelProps,
|
|
12711
|
+
$colorScheme: colorScheme,
|
|
12712
|
+
children: [
|
|
12713
|
+
hasIcon ? icon : null,
|
|
12714
|
+
label
|
|
12715
|
+
]
|
|
12716
|
+
}
|
|
12717
|
+
),
|
|
12718
|
+
/* @__PURE__ */ jsx269(
|
|
12719
|
+
RemoveButton,
|
|
12720
|
+
{
|
|
12721
|
+
colorScheme,
|
|
12722
|
+
onClickRemove,
|
|
12723
|
+
onClickRemoveLabel
|
|
12724
|
+
}
|
|
12725
|
+
)
|
|
13262
12726
|
]
|
|
13263
12727
|
}
|
|
13264
12728
|
);
|
|
13265
12729
|
}
|
|
13266
12730
|
);
|
|
13267
|
-
|
|
12731
|
+
Tag.displayName = "Tag";
|
|
13268
12732
|
|
|
13269
12733
|
// src/components/Thumbnail/ThumbnailBadge.tsx
|
|
13270
|
-
import
|
|
13271
|
-
import { isNotNil as
|
|
13272
|
-
import { jsx as
|
|
13273
|
-
var StyledThumbnailBadge =
|
|
12734
|
+
import styled71 from "styled-components";
|
|
12735
|
+
import { isNotNil as isNotNil33 } from "@wistia/type-guards";
|
|
12736
|
+
import { jsx as jsx270, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
12737
|
+
var StyledThumbnailBadge = styled71.div`
|
|
13274
12738
|
align-items: center;
|
|
13275
12739
|
background-color: rgb(0 0 0 / 50%);
|
|
13276
12740
|
border-radius: var(--wui-border-radius-01);
|
|
@@ -13295,23 +12759,23 @@ var StyledThumbnailBadge = styled75.div`
|
|
|
13295
12759
|
}
|
|
13296
12760
|
`;
|
|
13297
12761
|
var ThumbnailBadge = ({ icon, label, ...props }) => {
|
|
13298
|
-
return /* @__PURE__ */
|
|
13299
|
-
|
|
13300
|
-
/* @__PURE__ */
|
|
12762
|
+
return /* @__PURE__ */ jsxs45(StyledThumbnailBadge, { ...props, children: [
|
|
12763
|
+
isNotNil33(icon) && icon,
|
|
12764
|
+
/* @__PURE__ */ jsx270("span", { children: label })
|
|
13301
12765
|
] });
|
|
13302
12766
|
};
|
|
13303
12767
|
ThumbnailBadge.displayName = "ThumbnailBadge";
|
|
13304
12768
|
|
|
13305
12769
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
13306
|
-
import { forwardRef as forwardRef28, useState as
|
|
13307
|
-
import
|
|
13308
|
-
import { isNil as
|
|
12770
|
+
import { forwardRef as forwardRef28, useState as useState17, useRef as useRef16, useCallback as useCallback11, useMemo as useMemo10 } from "react";
|
|
12771
|
+
import styled73 from "styled-components";
|
|
12772
|
+
import { isNil as isNil15, isNotNil as isNotNil36, isUndefined as isUndefined5, isEmptyString as isEmptyString2, isString as isString2 } from "@wistia/type-guards";
|
|
13309
12773
|
|
|
13310
12774
|
// src/private/helpers/getBackgroundGradient/getBackgroundGradient.ts
|
|
13311
|
-
import { isNotNil as
|
|
13312
|
-
import { css as
|
|
12775
|
+
import { isNotNil as isNotNil34 } from "@wistia/type-guards";
|
|
12776
|
+
import { css as css40 } from "styled-components";
|
|
13313
12777
|
var gradients = {
|
|
13314
|
-
defaultDarkOne:
|
|
12778
|
+
defaultDarkOne: css40`
|
|
13315
12779
|
background-color: #222d66;
|
|
13316
12780
|
background-image:
|
|
13317
12781
|
radial-gradient(farthest-corner at top right, #222d66, transparent 70%),
|
|
@@ -13319,7 +12783,7 @@ var gradients = {
|
|
|
13319
12783
|
radial-gradient(farthest-corner at bottom left, #6b84ff, transparent 57%),
|
|
13320
12784
|
radial-gradient(farthest-corner at top left, #2949e5, transparent 68%);
|
|
13321
12785
|
`,
|
|
13322
|
-
defaultDarkTwo:
|
|
12786
|
+
defaultDarkTwo: css40`
|
|
13323
12787
|
background-color: #222d66;
|
|
13324
12788
|
background-image:
|
|
13325
12789
|
radial-gradient(farthest-corner at top left, #6b84ff, transparent 100%),
|
|
@@ -13327,7 +12791,7 @@ var gradients = {
|
|
|
13327
12791
|
radial-gradient(farthest-corner at bottom right, #2949e5, transparent 50%),
|
|
13328
12792
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
13329
12793
|
`,
|
|
13330
|
-
defaultLightOne:
|
|
12794
|
+
defaultLightOne: css40`
|
|
13331
12795
|
background-color: #ccd5ff;
|
|
13332
12796
|
background-image:
|
|
13333
12797
|
radial-gradient(farthest-corner at bottom right, #ccd5ff, transparent 55%),
|
|
@@ -13335,13 +12799,13 @@ var gradients = {
|
|
|
13335
12799
|
radial-gradient(farthest-corner at top right, #6b84ff, transparent 50%),
|
|
13336
12800
|
radial-gradient(farthest-corner at bottom left, #f7f8ff, transparent 50%);
|
|
13337
12801
|
`,
|
|
13338
|
-
defaultLightTwo:
|
|
12802
|
+
defaultLightTwo: css40`
|
|
13339
12803
|
background-color: #ccd5ff;
|
|
13340
12804
|
background-image:
|
|
13341
12805
|
radial-gradient(ellipse at top, #ccd5ff, transparent),
|
|
13342
12806
|
radial-gradient(ellipse at bottom, #6b84ff, transparent);
|
|
13343
12807
|
`,
|
|
13344
|
-
defaultMidOne:
|
|
12808
|
+
defaultMidOne: css40`
|
|
13345
12809
|
background-color: #6b84ff;
|
|
13346
12810
|
background-image:
|
|
13347
12811
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%),
|
|
@@ -13349,13 +12813,13 @@ var gradients = {
|
|
|
13349
12813
|
radial-gradient(farthest-corner at top left, #6b84ff, transparent 80%),
|
|
13350
12814
|
radial-gradient(farthest-corner at bottom left, #222d66, transparent 57%);
|
|
13351
12815
|
`,
|
|
13352
|
-
defaultMidTwo:
|
|
12816
|
+
defaultMidTwo: css40`
|
|
13353
12817
|
background-color: #6b84ff;
|
|
13354
12818
|
background-image:
|
|
13355
12819
|
radial-gradient(ellipse at top, #2949e5, transparent),
|
|
13356
12820
|
radial-gradient(ellipse at bottom, #ccd5ff, transparent);
|
|
13357
12821
|
`,
|
|
13358
|
-
green:
|
|
12822
|
+
green: css40`
|
|
13359
12823
|
background-color: #fafffa;
|
|
13360
12824
|
background-image:
|
|
13361
12825
|
radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
|
|
@@ -13363,7 +12827,7 @@ var gradients = {
|
|
|
13363
12827
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
|
|
13364
12828
|
radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
|
|
13365
12829
|
`,
|
|
13366
|
-
greenWithPop:
|
|
12830
|
+
greenWithPop: css40`
|
|
13367
12831
|
background-color: #fafffa;
|
|
13368
12832
|
background-image:
|
|
13369
12833
|
radial-gradient(farthest-corner at bottom left, #b0e5a5, transparent 50%),
|
|
@@ -13371,7 +12835,7 @@ var gradients = {
|
|
|
13371
12835
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 65%),
|
|
13372
12836
|
radial-gradient(farthest-corner at bottom right, #44b62d, transparent 55%);
|
|
13373
12837
|
`,
|
|
13374
|
-
pink:
|
|
12838
|
+
pink: css40`
|
|
13375
12839
|
background-color: #fffff0;
|
|
13376
12840
|
background-image:
|
|
13377
12841
|
radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 50%),
|
|
@@ -13379,7 +12843,7 @@ var gradients = {
|
|
|
13379
12843
|
radial-gradient(farthest-corner at top left, #ff40b3, transparent 65%),
|
|
13380
12844
|
radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%);
|
|
13381
12845
|
`,
|
|
13382
|
-
pinkWithPop:
|
|
12846
|
+
pinkWithPop: css40`
|
|
13383
12847
|
background-color: #fffff0;
|
|
13384
12848
|
background-image:
|
|
13385
12849
|
radial-gradient(farthest-corner at top right, #e0128e, transparent 70%),
|
|
@@ -13387,7 +12851,7 @@ var gradients = {
|
|
|
13387
12851
|
radial-gradient(farthest-corner at bottom right, #ff40b3, transparent 55%),
|
|
13388
12852
|
radial-gradient(farthest-corner at bottom left, #2949e5, transparent 50%);
|
|
13389
12853
|
`,
|
|
13390
|
-
playfulGradientOne:
|
|
12854
|
+
playfulGradientOne: css40`
|
|
13391
12855
|
background-color: #f7f8ff;
|
|
13392
12856
|
background-image:
|
|
13393
12857
|
radial-gradient(farthest-corner at top left, #d65cff, transparent 68%),
|
|
@@ -13395,7 +12859,7 @@ var gradients = {
|
|
|
13395
12859
|
radial-gradient(farthest-corner at bottom left, #ffc7e8, transparent 57%),
|
|
13396
12860
|
radial-gradient(farthest-corner at top right, #ffcaba, transparent 70%);
|
|
13397
12861
|
`,
|
|
13398
|
-
playfulGradientTwo:
|
|
12862
|
+
playfulGradientTwo: css40`
|
|
13399
12863
|
background-color: #f7f8ff;
|
|
13400
12864
|
background-image:
|
|
13401
12865
|
radial-gradient(farthest-corner at top left, #44b62d, transparent 68%),
|
|
@@ -13403,13 +12867,13 @@ var gradients = {
|
|
|
13403
12867
|
radial-gradient(farthest-corner at bottom left, #ccd5ff, transparent 57%),
|
|
13404
12868
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
13405
12869
|
`,
|
|
13406
|
-
purple:
|
|
12870
|
+
purple: css40`
|
|
13407
12871
|
background-color: #f2caff;
|
|
13408
12872
|
background-image:
|
|
13409
12873
|
radial-gradient(ellipse at 0% 100%, #f9e5ff, transparent 50%),
|
|
13410
12874
|
radial-gradient(ellipse at 100% 0%, #e093fa, transparent 70%);
|
|
13411
12875
|
`,
|
|
13412
|
-
purpleWithPop:
|
|
12876
|
+
purpleWithPop: css40`
|
|
13413
12877
|
background-color: #f2caff;
|
|
13414
12878
|
background-image:
|
|
13415
12879
|
radial-gradient(farthest-corner at bottom left, #f2caff, transparent 50%),
|
|
@@ -13417,7 +12881,7 @@ var gradients = {
|
|
|
13417
12881
|
radial-gradient(farthest-corner at bottom right, #d65cff, transparent 55%),
|
|
13418
12882
|
radial-gradient(farthest-corner at top right, #2949e5, transparent 70%);
|
|
13419
12883
|
`,
|
|
13420
|
-
yellow:
|
|
12884
|
+
yellow: css40`
|
|
13421
12885
|
background-color: #fffff0;
|
|
13422
12886
|
background-image:
|
|
13423
12887
|
radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
|
|
@@ -13425,7 +12889,7 @@ var gradients = {
|
|
|
13425
12889
|
radial-gradient(farthest-corner at top left, #e8ec1e, transparent 65%),
|
|
13426
12890
|
radial-gradient(farthest-corner at bottom right, #e8ec1e, transparent 55%);
|
|
13427
12891
|
`,
|
|
13428
|
-
yellowWithPop:
|
|
12892
|
+
yellowWithPop: css40`
|
|
13429
12893
|
background-color: #fffff0;
|
|
13430
12894
|
background-image:
|
|
13431
12895
|
radial-gradient(farthest-corner at bottom left, #eff18d, transparent 50%),
|
|
@@ -13436,14 +12900,14 @@ var gradients = {
|
|
|
13436
12900
|
};
|
|
13437
12901
|
var gradientMap = Object.keys(gradients);
|
|
13438
12902
|
var getBackgroundGradient = (gradientName = void 0) => {
|
|
13439
|
-
return
|
|
12903
|
+
return isNotNil34(gradientName) ? gradients[gradientName] : gradients.defaultDarkOne;
|
|
13440
12904
|
};
|
|
13441
12905
|
|
|
13442
12906
|
// src/components/Thumbnail/ThumbnailStoryboardViewer.tsx
|
|
13443
|
-
import
|
|
13444
|
-
import { isNotNil as
|
|
13445
|
-
import { jsx as
|
|
13446
|
-
var ScrubLine =
|
|
12907
|
+
import styled72 from "styled-components";
|
|
12908
|
+
import { isNotNil as isNotNil35 } from "@wistia/type-guards";
|
|
12909
|
+
import { jsx as jsx271, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
12910
|
+
var ScrubLine = styled72.div`
|
|
13447
12911
|
position: absolute;
|
|
13448
12912
|
top: 0;
|
|
13449
12913
|
height: 100%;
|
|
@@ -13527,8 +12991,8 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13527
12991
|
);
|
|
13528
12992
|
const backgroundSize = `${scaledStoryboardWidth}px ${scaledStoryboardHeight}px`;
|
|
13529
12993
|
const backgroundImage = `url(${storyboardUrl})`;
|
|
13530
|
-
const showScrubLine =
|
|
13531
|
-
const scrubLinePosition =
|
|
12994
|
+
const showScrubLine = isNotNil35(cursorPosition);
|
|
12995
|
+
const scrubLinePosition = isNotNil35(cursorPosition) ? `${cursorPosition - 1}px` : "0";
|
|
13532
12996
|
const viewerStyles = {
|
|
13533
12997
|
position: "relative",
|
|
13534
12998
|
overflow: "hidden",
|
|
@@ -13545,14 +13009,14 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13545
13009
|
backgroundPosition,
|
|
13546
13010
|
backgroundSize
|
|
13547
13011
|
};
|
|
13548
|
-
return /* @__PURE__ */
|
|
13012
|
+
return /* @__PURE__ */ jsxs46(
|
|
13549
13013
|
"div",
|
|
13550
13014
|
{
|
|
13551
13015
|
...props,
|
|
13552
13016
|
style: viewerStyles,
|
|
13553
13017
|
children: [
|
|
13554
|
-
/* @__PURE__ */
|
|
13555
|
-
showScrubLine ? /* @__PURE__ */
|
|
13018
|
+
/* @__PURE__ */ jsx271("div", { style: storyboardStyles }),
|
|
13019
|
+
showScrubLine ? /* @__PURE__ */ jsx271(
|
|
13556
13020
|
ScrubLine,
|
|
13557
13021
|
{
|
|
13558
13022
|
style: {
|
|
@@ -13566,20 +13030,20 @@ var ThumbnailStoryboardViewer = ({
|
|
|
13566
13030
|
};
|
|
13567
13031
|
|
|
13568
13032
|
// src/components/Thumbnail/Thumbnail.tsx
|
|
13569
|
-
import { jsx as
|
|
13570
|
-
var WideThumbnailImage =
|
|
13033
|
+
import { jsx as jsx272, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
13034
|
+
var WideThumbnailImage = styled73.img`
|
|
13571
13035
|
height: 100%;
|
|
13572
13036
|
object-fit: cover;
|
|
13573
13037
|
width: 100%;
|
|
13574
13038
|
`;
|
|
13575
|
-
var SquareThumbnailImage =
|
|
13039
|
+
var SquareThumbnailImage = styled73.img`
|
|
13576
13040
|
backdrop-filter: blur(8px);
|
|
13577
13041
|
object-fit: contain;
|
|
13578
13042
|
width: 100%;
|
|
13579
13043
|
`;
|
|
13580
13044
|
var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
13581
13045
|
if (thumbnailImageType === "wide") {
|
|
13582
|
-
return /* @__PURE__ */
|
|
13046
|
+
return /* @__PURE__ */ jsx272(
|
|
13583
13047
|
WideThumbnailImage,
|
|
13584
13048
|
{
|
|
13585
13049
|
alt: "",
|
|
@@ -13588,7 +13052,7 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
13588
13052
|
}
|
|
13589
13053
|
);
|
|
13590
13054
|
}
|
|
13591
|
-
return /* @__PURE__ */
|
|
13055
|
+
return /* @__PURE__ */ jsx272(
|
|
13592
13056
|
SquareThumbnailImage,
|
|
13593
13057
|
{
|
|
13594
13058
|
alt: "",
|
|
@@ -13597,11 +13061,11 @@ var ThumbnailImage = ({ thumbnailImageType, thumbnailUrl }) => {
|
|
|
13597
13061
|
}
|
|
13598
13062
|
);
|
|
13599
13063
|
};
|
|
13600
|
-
var StyledThumbnail =
|
|
13601
|
-
background-image: ${({ $backgroundUrl }) =>
|
|
13064
|
+
var StyledThumbnail = styled73.div`
|
|
13065
|
+
background-image: ${({ $backgroundUrl }) => isNotNil36($backgroundUrl) ? `url('${$backgroundUrl}')` : void 0};
|
|
13602
13066
|
${({ $backgroundUrl, $gradientBackground }) => (
|
|
13603
13067
|
// if we don't have $backgroundUrl show a gradient
|
|
13604
|
-
|
|
13068
|
+
isNil15($backgroundUrl) ? getBackgroundGradient($gradientBackground) : void 0
|
|
13605
13069
|
)};
|
|
13606
13070
|
background-position: center center;
|
|
13607
13071
|
background-size: cover;
|
|
@@ -13637,16 +13101,16 @@ var Thumbnail = forwardRef28(
|
|
|
13637
13101
|
height,
|
|
13638
13102
|
...props
|
|
13639
13103
|
}, ref) => {
|
|
13640
|
-
const [percent, setPercent] =
|
|
13641
|
-
const [isMouseOver, setIsMouseOver] =
|
|
13642
|
-
const [isStoryboardReady, setIsStoryboardReady] =
|
|
13643
|
-
const storyboardElementRef =
|
|
13644
|
-
const [cursorPosition, setCursorPosition] =
|
|
13645
|
-
const backgroundUrl =
|
|
13646
|
-
() => thumbnailImageType === "square" &&
|
|
13104
|
+
const [percent, setPercent] = useState17(0);
|
|
13105
|
+
const [isMouseOver, setIsMouseOver] = useState17(false);
|
|
13106
|
+
const [isStoryboardReady, setIsStoryboardReady] = useState17(false);
|
|
13107
|
+
const storyboardElementRef = useRef16(null);
|
|
13108
|
+
const [cursorPosition, setCursorPosition] = useState17(null);
|
|
13109
|
+
const backgroundUrl = useMemo10(
|
|
13110
|
+
() => thumbnailImageType === "square" && isNotNil36(thumbnailUrl) ? thumbnailUrl : void 0,
|
|
13647
13111
|
[thumbnailImageType, thumbnailUrl]
|
|
13648
13112
|
);
|
|
13649
|
-
const isScrubbable =
|
|
13113
|
+
const isScrubbable = isNotNil36(storyboard);
|
|
13650
13114
|
const trackStoryboardLoadStatus = useCallback11(() => {
|
|
13651
13115
|
if (storyboardElementRef.current || !storyboard) {
|
|
13652
13116
|
return storyboardElementRef.current;
|
|
@@ -13675,7 +13139,7 @@ var Thumbnail = forwardRef28(
|
|
|
13675
13139
|
setIsMouseOver(false);
|
|
13676
13140
|
setCursorPosition(null);
|
|
13677
13141
|
}, [isScrubbable]);
|
|
13678
|
-
const shouldRenderStoryboard =
|
|
13142
|
+
const shouldRenderStoryboard = useMemo10(() => {
|
|
13679
13143
|
return Boolean(isScrubbable && isMouseOver && isStoryboardReady);
|
|
13680
13144
|
}, [isScrubbable, isMouseOver, isStoryboardReady]);
|
|
13681
13145
|
const renderStoryboard = useCallback11(() => {
|
|
@@ -13691,7 +13155,7 @@ var Thumbnail = forwardRef28(
|
|
|
13691
13155
|
} = storyboard;
|
|
13692
13156
|
const targetWidth = isString2(width) ? parseInt(width, 10) : Number(width);
|
|
13693
13157
|
const effectiveCursorPosition = isStoryboardReady ? cursorPosition : null;
|
|
13694
|
-
return /* @__PURE__ */
|
|
13158
|
+
return /* @__PURE__ */ jsx272(
|
|
13695
13159
|
ThumbnailStoryboardViewer,
|
|
13696
13160
|
{
|
|
13697
13161
|
cursorPosition: effectiveCursorPosition,
|
|
@@ -13710,8 +13174,8 @@ var Thumbnail = forwardRef28(
|
|
|
13710
13174
|
let thumbnailContent = null;
|
|
13711
13175
|
if (shouldRenderStoryboard) {
|
|
13712
13176
|
thumbnailContent = renderStoryboard();
|
|
13713
|
-
} else if (
|
|
13714
|
-
thumbnailContent = /* @__PURE__ */
|
|
13177
|
+
} else if (isNotNil36(thumbnailUrl)) {
|
|
13178
|
+
thumbnailContent = /* @__PURE__ */ jsx272(
|
|
13715
13179
|
ThumbnailImage,
|
|
13716
13180
|
{
|
|
13717
13181
|
thumbnailImageType,
|
|
@@ -13721,7 +13185,7 @@ var Thumbnail = forwardRef28(
|
|
|
13721
13185
|
} else {
|
|
13722
13186
|
thumbnailContent = null;
|
|
13723
13187
|
}
|
|
13724
|
-
return /* @__PURE__ */
|
|
13188
|
+
return /* @__PURE__ */ jsxs47(
|
|
13725
13189
|
StyledThumbnail,
|
|
13726
13190
|
{
|
|
13727
13191
|
ref,
|
|
@@ -13735,7 +13199,7 @@ var Thumbnail = forwardRef28(
|
|
|
13735
13199
|
onMouseOut: handleMouseOut,
|
|
13736
13200
|
role: "presentation",
|
|
13737
13201
|
children: [
|
|
13738
|
-
|
|
13202
|
+
isNotNil36(children) ? children : null,
|
|
13739
13203
|
thumbnailContent
|
|
13740
13204
|
]
|
|
13741
13205
|
}
|
|
@@ -13746,10 +13210,10 @@ Thumbnail.displayName = "Thumbnail";
|
|
|
13746
13210
|
|
|
13747
13211
|
// src/components/ThumbnailCollage/ThumbnailCollage.tsx
|
|
13748
13212
|
import React2 from "react";
|
|
13749
|
-
import
|
|
13213
|
+
import styled74 from "styled-components";
|
|
13750
13214
|
import { isNonEmptyArray } from "@wistia/type-guards";
|
|
13751
|
-
import { jsx as
|
|
13752
|
-
var StyledThumbnailCollage =
|
|
13215
|
+
import { jsx as jsx273 } from "react/jsx-runtime";
|
|
13216
|
+
var StyledThumbnailCollage = styled74.div`
|
|
13753
13217
|
display: grid;
|
|
13754
13218
|
gap: var(--wui-space-01);
|
|
13755
13219
|
width: 100%;
|
|
@@ -13831,7 +13295,7 @@ var ThumbnailCollage = ({
|
|
|
13831
13295
|
});
|
|
13832
13296
|
}) : [
|
|
13833
13297
|
// ThumbnailCollage will fallback to a Thumbnail with a gradient background if no children are provided
|
|
13834
|
-
/* @__PURE__ */
|
|
13298
|
+
/* @__PURE__ */ jsx273(
|
|
13835
13299
|
Thumbnail,
|
|
13836
13300
|
{
|
|
13837
13301
|
gradientBackground,
|
|
@@ -13840,7 +13304,7 @@ var ThumbnailCollage = ({
|
|
|
13840
13304
|
"fallback"
|
|
13841
13305
|
)
|
|
13842
13306
|
];
|
|
13843
|
-
return /* @__PURE__ */
|
|
13307
|
+
return /* @__PURE__ */ jsx273(
|
|
13844
13308
|
StyledThumbnailCollage,
|
|
13845
13309
|
{
|
|
13846
13310
|
$gradientBackground: gradientBackground,
|
|
@@ -13852,26 +13316,26 @@ var ThumbnailCollage = ({
|
|
|
13852
13316
|
};
|
|
13853
13317
|
|
|
13854
13318
|
// src/components/WistiaLogo/WistiaLogo.tsx
|
|
13855
|
-
import
|
|
13856
|
-
import { isNotNil as
|
|
13857
|
-
import { jsx as
|
|
13319
|
+
import styled75, { css as css41 } from "styled-components";
|
|
13320
|
+
import { isNotNil as isNotNil37 } from "@wistia/type-guards";
|
|
13321
|
+
import { jsx as jsx274, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
13858
13322
|
var renderBrandmark = (brandmarkColor, iconOnly) => {
|
|
13859
13323
|
if (iconOnly) {
|
|
13860
|
-
return /* @__PURE__ */
|
|
13324
|
+
return /* @__PURE__ */ jsx274(
|
|
13861
13325
|
"g",
|
|
13862
13326
|
{
|
|
13863
13327
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
13864
13328
|
fill: brandmarkColor,
|
|
13865
|
-
children: /* @__PURE__ */
|
|
13329
|
+
children: /* @__PURE__ */ jsx274("path", { d: "M16.09 17.1h-5.2c-1.58 0-3.08.68-4.11 1.87L.21 26.53c4.78.25 9.78.25 13.3.25 18.31 0 20.89-11.27 20.89-16.55-1.59 1.93-6.06 6.87-18.32 6.87ZM32.14 0c-.08.92-.59 4.69-11.31 4.69-8.72 0-12.24 0-20.83-.17l6.44 7.4a6.657 6.657 0 0 0 4.96 2.3c2.13.03 5.05.06 5.53.06 11.01 0 17.19-5.05 17.19-9.89 0-2.01-.67-3.44-1.97-4.4Z" })
|
|
13866
13330
|
}
|
|
13867
13331
|
);
|
|
13868
13332
|
}
|
|
13869
|
-
return /* @__PURE__ */
|
|
13333
|
+
return /* @__PURE__ */ jsx274(
|
|
13870
13334
|
"g",
|
|
13871
13335
|
{
|
|
13872
13336
|
"data-testid": "ui-wistia-logo-brandmark",
|
|
13873
13337
|
fill: brandmarkColor,
|
|
13874
|
-
children: /* @__PURE__ */
|
|
13338
|
+
children: /* @__PURE__ */ jsx274("path", { d: "M16.09 21.37h-5.2c-1.58 0-3.08.68-4.11 1.87L.21 30.8c4.78.25 9.78.25 13.3.25 18.31 0 20.89-11.27 20.89-16.55-1.59 1.93-6.06 6.87-18.32 6.87Zm16.05-17.1c-.08.92-.59 4.69-11.31 4.69-8.72 0-12.24 0-20.83-.17l6.44 7.4a6.657 6.657 0 0 0 4.96 2.3c2.13.03 5.05.06 5.53.06 11.01 0 17.19-5.05 17.19-9.89 0-2.01-.67-3.44-1.97-4.4Z" })
|
|
13875
13339
|
}
|
|
13876
13340
|
);
|
|
13877
13341
|
};
|
|
@@ -13879,12 +13343,12 @@ var renderLogotype = (logotypeColor, iconOnly) => {
|
|
|
13879
13343
|
if (iconOnly) {
|
|
13880
13344
|
return null;
|
|
13881
13345
|
}
|
|
13882
|
-
return /* @__PURE__ */
|
|
13346
|
+
return /* @__PURE__ */ jsx274(
|
|
13883
13347
|
"g",
|
|
13884
13348
|
{
|
|
13885
13349
|
"data-testid": "ui-wistia-logo-logotype",
|
|
13886
13350
|
fill: logotypeColor,
|
|
13887
|
-
children: /* @__PURE__ */
|
|
13351
|
+
children: /* @__PURE__ */ jsx274("path", { d: "M70.16 8.66v15.18c0 1.68-.35 3.09-1.05 4.23a6.612 6.612 0 0 1-2.85 2.54c-1.19.55-2.52.82-4.01.82s-2.8-.28-4.01-.85a6.655 6.655 0 0 1-3.11-2.96c-.08.15-.16.29-.24.42a6.552 6.552 0 0 1-2.87 2.54c-1.2.56-2.54.85-4.01.85s-2.8-.27-3.94-.82a6.214 6.214 0 0 1-2.71-2.52c-.67-1.14-1.01-2.56-1.02-4.25l-.22-15.18h7.34V22.3c0 .82.19 1.37.56 1.67.39.28.85.42 1.38.42s1.02-.15 1.45-.45c.43-.3.65-.85.65-1.65V8.65h7.3v13.64c0 .8.22 1.35.65 1.65.43.3.91.45 1.45.45s.99-.14 1.36-.42c.39-.3.58-.85.58-1.67V8.66h7.34Zm2.45 0v22.26h7.34V8.66h-7.34Zm5.67-1.87c.61-.3 1.08-.71 1.42-1.25.36-.55.53-1.19.53-1.94s-.18-1.34-.53-1.89A3.43 3.43 0 0 0 78.28.44c-.59-.3-1.25-.45-1.98-.45s-1.42.15-2.02.45c-.59.3-1.07.72-1.42 1.27-.36.55-.53 1.18-.53 1.89 0 1.1.38 1.97 1.13 2.63.76.65 1.71.98 2.85.98.73 0 1.39-.14 1.98-.42Zm8.86 1.96c-1.42.4-2.6 1.11-3.54 2.14-.93 1.02-1.4 2.4-1.4 4.12 0 1.11.17 2.09.51 2.94.36.85.82 1.62 1.38 2.34.22.28.55.65.98 1.11.37.4.64.72.8.96.18.24.27.47.27.69 0 .5-.4.87-1.2 1.09-.8.21-1.62.31-2.47.31-.1-.01-.22-.02-.33-.02l1.02 6.94c.42.07.92.11 1.51.11 1.9 0 3.6-.28 5.1-.85 1.5-.56 2.68-1.42 3.54-2.56.88-1.14 1.31-2.55 1.31-4.23 0-.68-.07-1.31-.22-1.87-.13-.58-.32-1.09-.56-1.54a6.64 6.64 0 0 0-.8-1.27c-.3-.37-.74-.82-1.34-1.36-.39-.33-.67-.59-.85-.8-.18-.22-.27-.45-.27-.67 0-.46.26-.79.78-.98.53-.19 1.17-.29 1.91-.29.25 0 .51.01.78.04l-.71-6.88a10.4 10.4 0 0 0-1.56-.11c-1.66 0-3.21.21-4.65.62Zm19.54 15.71c-.99 0-1.71-.23-2.14-.69-.42-.47-.62-1.18-.62-2.11v-6.57h4.21V8.66h-4.21V3.38l-7.34 1.85V24.1c0 2.45.47 4.29 1.4 5.52.95 1.22 2.45 1.83 4.49 1.83.95 0 1.86-.07 2.74-.22.88-.13 1.62-.34 2.25-.62l1.38-6.3c-.55.1-1.27.16-2.16.16Zm4.13-15.8v22.26h7.34V8.66h-7.34Zm5.67-1.87c.61-.3 1.08-.71 1.42-1.25.36-.55.53-1.19.53-1.94s-.18-1.34-.53-1.89a3.43 3.43 0 0 0-1.42-1.27c-.59-.3-1.25-.45-1.98-.45s-1.42.15-2.02.45c-.59.3-1.07.72-1.42 1.27-.36.55-.53 1.18-.53 1.89 0 1.1.38 1.97 1.14 2.63.76.65 1.71.98 2.85.98.73 0 1.39-.14 1.98-.42Zm27.51 1.87v22.26h-7.34v-2.28c-.41.43-.85.83-1.34 1.19-1.44 1.07-3.12 1.6-5.05 1.6s-3.61-.52-5.1-1.56c-1.48-1.05-2.63-2.47-3.45-4.25-.82-1.78-1.22-3.73-1.22-5.85s.41-4.07 1.22-5.83c.82-1.78 1.97-3.19 3.45-4.23 1.48-1.05 3.18-1.58 5.1-1.58s3.61.53 5.05 1.6c.48.36.93.75 1.34 1.19V8.66h7.34Zm-7.1 11.11c0-.8-.19-1.53-.56-2.18-.37-.67-.88-1.19-1.54-1.58-.64-.39-1.34-.58-2.09-.58s-1.45.19-2.09.58c-.64.39-1.15.91-1.54 1.58-.37.67-.56 1.39-.56 2.18s.19 1.51.56 2.18c.39.67.9 1.19 1.54 1.58.64.39 1.34.58 2.09.58s1.45-.19 2.09-.58c.65-.39 1.16-.91 1.54-1.56.37-.67.56-1.4.56-2.2Z" })
|
|
13888
13352
|
}
|
|
13889
13353
|
);
|
|
13890
13354
|
};
|
|
@@ -13894,7 +13358,7 @@ var computedViewBox = (iconOnly) => {
|
|
|
13894
13358
|
}
|
|
13895
13359
|
return "0 0 144 31.47";
|
|
13896
13360
|
};
|
|
13897
|
-
var WistiaLogoComponent =
|
|
13361
|
+
var WistiaLogoComponent = styled75.svg`
|
|
13898
13362
|
height: ${({ height }) => `${height}px`};
|
|
13899
13363
|
|
|
13900
13364
|
/* ensure it will always fit on mobile */
|
|
@@ -13910,12 +13374,12 @@ var WistiaLogoComponent = styled79.svg`
|
|
|
13910
13374
|
${({ $opticallyCentered, $iconOnly }) => {
|
|
13911
13375
|
if ($opticallyCentered) {
|
|
13912
13376
|
if ($iconOnly) {
|
|
13913
|
-
return
|
|
13377
|
+
return css41`
|
|
13914
13378
|
aspect-ratio: 1;
|
|
13915
13379
|
padding: 11.85% 3.12% 13.91%;
|
|
13916
13380
|
`;
|
|
13917
13381
|
}
|
|
13918
|
-
return
|
|
13382
|
+
return css41`
|
|
13919
13383
|
aspect-ratio: 127 / 32;
|
|
13920
13384
|
`;
|
|
13921
13385
|
}
|
|
@@ -13952,7 +13416,7 @@ var WistiaLogo = ({
|
|
|
13952
13416
|
};
|
|
13953
13417
|
const brandmarkColor = VARIANT_COLORS[variant].brandmark;
|
|
13954
13418
|
const logotypeColor = VARIANT_COLORS[variant].logotype;
|
|
13955
|
-
const Logo = /* @__PURE__ */
|
|
13419
|
+
const Logo = /* @__PURE__ */ jsxs48(
|
|
13956
13420
|
WistiaLogoComponent,
|
|
13957
13421
|
{
|
|
13958
13422
|
$hoverColor: hoverColor,
|
|
@@ -13965,16 +13429,174 @@ var WistiaLogo = ({
|
|
|
13965
13429
|
xmlns: "http://www.w3.org/2000/svg",
|
|
13966
13430
|
...props,
|
|
13967
13431
|
children: [
|
|
13968
|
-
/* @__PURE__ */
|
|
13969
|
-
|
|
13432
|
+
/* @__PURE__ */ jsx274("title", { children: title }),
|
|
13433
|
+
isNotNil37(description) ? /* @__PURE__ */ jsx274("desc", { children: description }) : null,
|
|
13970
13434
|
renderBrandmark(brandmarkColor, iconOnly),
|
|
13971
13435
|
renderLogotype(logotypeColor, iconOnly)
|
|
13972
13436
|
]
|
|
13973
13437
|
}
|
|
13974
13438
|
);
|
|
13975
|
-
return href !== void 0 ? /* @__PURE__ */
|
|
13439
|
+
return href !== void 0 ? /* @__PURE__ */ jsx274("a", { href, children: Logo }) : Logo;
|
|
13976
13440
|
};
|
|
13977
13441
|
WistiaLogo.displayName = "WistiaLogo";
|
|
13442
|
+
|
|
13443
|
+
// src/components/List/List.tsx
|
|
13444
|
+
import { isNotNil as isNotNil38 } from "@wistia/type-guards";
|
|
13445
|
+
import styled77, { css as css42 } from "styled-components";
|
|
13446
|
+
|
|
13447
|
+
// src/components/List/ListItem.tsx
|
|
13448
|
+
import styled76 from "styled-components";
|
|
13449
|
+
import { isNil as isNil16 } from "@wistia/type-guards";
|
|
13450
|
+
import { jsx as jsx275 } from "react/jsx-runtime";
|
|
13451
|
+
var ListItemComponent = styled76.li`
|
|
13452
|
+
margin-bottom: var(--wui-space-02);
|
|
13453
|
+
`;
|
|
13454
|
+
var ListItem = ({ children }) => {
|
|
13455
|
+
if (isNil16(children)) {
|
|
13456
|
+
return null;
|
|
13457
|
+
}
|
|
13458
|
+
return /* @__PURE__ */ jsx275(ListItemComponent, { children });
|
|
13459
|
+
};
|
|
13460
|
+
ListItem.displayName = "ListItem";
|
|
13461
|
+
|
|
13462
|
+
// src/components/List/List.tsx
|
|
13463
|
+
import { jsx as jsx276, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
13464
|
+
var spacesStyle = css42`
|
|
13465
|
+
overflow: hidden;
|
|
13466
|
+
padding-left: 0;
|
|
13467
|
+
vertical-align: bottom;
|
|
13468
|
+
|
|
13469
|
+
li {
|
|
13470
|
+
display: block;
|
|
13471
|
+
float: left;
|
|
13472
|
+
|
|
13473
|
+
&::after {
|
|
13474
|
+
content: ' ';
|
|
13475
|
+
padding-right: var(--wui-space-03);
|
|
13476
|
+
}
|
|
13477
|
+
|
|
13478
|
+
&:last-child {
|
|
13479
|
+
&::after {
|
|
13480
|
+
content: '' !important;
|
|
13481
|
+
padding-right: 0;
|
|
13482
|
+
}
|
|
13483
|
+
}
|
|
13484
|
+
}
|
|
13485
|
+
`;
|
|
13486
|
+
var commasStyle = css42`
|
|
13487
|
+
${spacesStyle};
|
|
13488
|
+
|
|
13489
|
+
li {
|
|
13490
|
+
&::after {
|
|
13491
|
+
content: ',' !important;
|
|
13492
|
+
padding-right: var(--wui-space-01);
|
|
13493
|
+
}
|
|
13494
|
+
}
|
|
13495
|
+
`;
|
|
13496
|
+
var slashesStyle = css42`
|
|
13497
|
+
${spacesStyle};
|
|
13498
|
+
|
|
13499
|
+
li {
|
|
13500
|
+
&::after {
|
|
13501
|
+
content: '/' !important;
|
|
13502
|
+
padding-left: var(--wui-space-01);
|
|
13503
|
+
padding-right: var(--wui-space-01);
|
|
13504
|
+
}
|
|
13505
|
+
}
|
|
13506
|
+
`;
|
|
13507
|
+
var breadcrumbsStyle = css42`
|
|
13508
|
+
${spacesStyle};
|
|
13509
|
+
|
|
13510
|
+
li {
|
|
13511
|
+
&::after {
|
|
13512
|
+
content: '>' !important;
|
|
13513
|
+
padding-left: var(--wui-space-01);
|
|
13514
|
+
padding-right: var(--wui-space-01);
|
|
13515
|
+
}
|
|
13516
|
+
}
|
|
13517
|
+
`;
|
|
13518
|
+
var unbulletedStyle = css42`
|
|
13519
|
+
list-style: none;
|
|
13520
|
+
padding-left: 0;
|
|
13521
|
+
`;
|
|
13522
|
+
var ListComponent = styled77.ul`
|
|
13523
|
+
list-style-position: outside;
|
|
13524
|
+
margin: 0 0 var(--wui-space-01);
|
|
13525
|
+
padding: 0 0 0 var(--wui-space-04);
|
|
13526
|
+
${({ variant }) => variant === "unbulleted" && unbulletedStyle};
|
|
13527
|
+
${({ variant }) => variant === "spaces" && spacesStyle};
|
|
13528
|
+
${({ variant }) => variant === "commas" && commasStyle};
|
|
13529
|
+
${({ variant }) => variant === "slashes" && slashesStyle};
|
|
13530
|
+
${({ variant }) => variant === "breadcrumbs" && breadcrumbsStyle};
|
|
13531
|
+
|
|
13532
|
+
> li:last-child {
|
|
13533
|
+
margin-bottom: 0;
|
|
13534
|
+
}
|
|
13535
|
+
|
|
13536
|
+
ul,
|
|
13537
|
+
ol {
|
|
13538
|
+
margin-top: var(--wui-space-01);
|
|
13539
|
+
}
|
|
13540
|
+
|
|
13541
|
+
/* nested lists should not have bottom margins because their container <li> will have one */
|
|
13542
|
+
li ul,
|
|
13543
|
+
li ol {
|
|
13544
|
+
margin-bottom: 0;
|
|
13545
|
+
}
|
|
13546
|
+
`;
|
|
13547
|
+
var renderListComponent = (listItems, variant, { ...otherProps }) => {
|
|
13548
|
+
const elementType = variant === "ordered" ? "ol" : "ul";
|
|
13549
|
+
return /* @__PURE__ */ jsx276(
|
|
13550
|
+
ListComponent,
|
|
13551
|
+
{
|
|
13552
|
+
as: elementType,
|
|
13553
|
+
variant,
|
|
13554
|
+
...otherProps,
|
|
13555
|
+
children: listItems
|
|
13556
|
+
}
|
|
13557
|
+
);
|
|
13558
|
+
};
|
|
13559
|
+
var renderListFromArray = (listItems, variant, otherProps) => {
|
|
13560
|
+
let itemCount = 0;
|
|
13561
|
+
const items = listItems.map((listItem, i) => {
|
|
13562
|
+
const item = listItem;
|
|
13563
|
+
const nextItem = listItems[i + 1];
|
|
13564
|
+
const key = `item-${itemCount += 1}`;
|
|
13565
|
+
if (Array.isArray(nextItem)) {
|
|
13566
|
+
return /* @__PURE__ */ jsxs49(ListItem, { children: [
|
|
13567
|
+
item,
|
|
13568
|
+
renderListFromArray(nextItem, variant, otherProps)
|
|
13569
|
+
] }, key);
|
|
13570
|
+
}
|
|
13571
|
+
if (Array.isArray(item)) {
|
|
13572
|
+
return null;
|
|
13573
|
+
}
|
|
13574
|
+
return /* @__PURE__ */ jsx276(ListItem, { children: item }, key);
|
|
13575
|
+
});
|
|
13576
|
+
return renderListComponent(items, variant, otherProps);
|
|
13577
|
+
};
|
|
13578
|
+
var List = ({
|
|
13579
|
+
children,
|
|
13580
|
+
items,
|
|
13581
|
+
variant,
|
|
13582
|
+
...otherProps
|
|
13583
|
+
}) => {
|
|
13584
|
+
const listVariant = variant ?? "bullets";
|
|
13585
|
+
if (isNotNil38(children)) {
|
|
13586
|
+
if (Array.isArray(children) && !children.length) {
|
|
13587
|
+
return null;
|
|
13588
|
+
}
|
|
13589
|
+
return renderListComponent(children, listVariant, otherProps);
|
|
13590
|
+
}
|
|
13591
|
+
if (isNotNil38(items)) {
|
|
13592
|
+
if (!items.length) {
|
|
13593
|
+
return null;
|
|
13594
|
+
}
|
|
13595
|
+
return renderListFromArray(items, listVariant, otherProps);
|
|
13596
|
+
}
|
|
13597
|
+
return null;
|
|
13598
|
+
};
|
|
13599
|
+
List.displayName = "List";
|
|
13978
13600
|
export {
|
|
13979
13601
|
ActionButton,
|
|
13980
13602
|
Avatar,
|
|
@@ -13994,7 +13616,6 @@ export {
|
|
|
13994
13616
|
CollapsibleContent,
|
|
13995
13617
|
CollapsibleTrigger,
|
|
13996
13618
|
ColorSchemeWrapper,
|
|
13997
|
-
Combobox2 as Combobox,
|
|
13998
13619
|
DataCard,
|
|
13999
13620
|
DataCardTrend,
|
|
14000
13621
|
DataCards,
|
|
@@ -14027,7 +13648,7 @@ export {
|
|
|
14027
13648
|
MenuRadioGroup,
|
|
14028
13649
|
Modal,
|
|
14029
13650
|
PersistentFileAmountLimitValidator,
|
|
14030
|
-
|
|
13651
|
+
Popover,
|
|
14031
13652
|
ProgressBar,
|
|
14032
13653
|
Radio,
|
|
14033
13654
|
RadioGroup,
|
|
@@ -14038,7 +13659,6 @@ export {
|
|
|
14038
13659
|
Select,
|
|
14039
13660
|
SelectOption,
|
|
14040
13661
|
SelectOptionGroup,
|
|
14041
|
-
Slider,
|
|
14042
13662
|
Stack,
|
|
14043
13663
|
SubMenu,
|
|
14044
13664
|
Switch,
|